add missing script for usb detection
authorEric Bénard <eric@eukrea.com>
Sat, 30 Oct 2010 00:35:50 +0000 (02:35 +0200)
committerEric Bénard <eric@eukrea.com>
Sat, 30 Oct 2010 00:36:48 +0000 (02:36 +0200)
this script is missing in commit cd7c9542bad478df9df733a6639ab3b6ef41ef72

Signed-off-by: Eric Bénard <eric@eukrea.com>
recipes/busybox/files/usb.sh [new file with mode: 0644]

diff --git a/recipes/busybox/files/usb.sh b/recipes/busybox/files/usb.sh
new file mode 100644 (file)
index 0000000..9faf141
--- /dev/null
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+case "$ACTION" in
+  add|"")
+    for uevent in /sys/class/usb_device/usbdev?.*/*/uevent; do
+      . $uevent
+      if [ ! -e /dev/bus/usb/$BUSNUM/$DEVNUM ]; then
+        mkdir -p /dev/bus/usb/$BUSNUM
+        mknod /dev/bus/usb/$BUSNUM/$DEVNUM c 189 $MINOR
+      fi
+    done
+    ;;
+  remove)
+    for device in /dev/bus/usb/*/*; do
+      REMOVED=1
+      dev=`basename $device`
+      bus=`basename $(dirname $device)`
+      for uevent in /sys/class/usb_device/usbdev?.*/*/uevent; do
+        . $uevent
+        echo $dev $DEVNUM $bus $BUSNUM >> /tmp/rem.txt
+        if [ $dev -eq $DEVNUM ] && [ $bus -eq $BUSNUM ]; then
+          REMOVED=0
+          break;
+        fi
+      done
+      if [ $REMOVED -eq 1 ]; then
+        rm /dev/bus/usb/$bus/$dev
+        if [ -z $(ls /dev/bus/usb/$bus/) ]; then
+          rmdir /dev/bus/usb/$bus/
+        fi
+      fi
+    done
+    ;;
+esac
+-- 
+1.6.3.3
+