summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/busybox/files/mdev/usbdev')
-rw-r--r--sys-apps/busybox/files/mdev/usbdev62
1 files changed, 0 insertions, 62 deletions
diff --git a/sys-apps/busybox/files/mdev/usbdev b/sys-apps/busybox/files/mdev/usbdev
deleted file mode 100644
index ea5b9155..00000000
--- a/sys-apps/busybox/files/mdev/usbdev
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/bin/sh
-
-# script is buggy; until patched just do exit 0
-#exit 0
-
-# add zeros to device or bus
-add_zeros () {
- case "$(echo $1 | wc -L)" in
- 1) echo "00$1" ;;
- 2) echo "0$1" ;;
- *) echo "$1"
- esac
- exit 0
-}
-
-
-# bus and device dirs in /sys
-USB_PATH=$(echo $MDEV | sed -e 's/usbdev\([0-9]\).[0-9]/usb\1/')
-USB_PATH=$(find /sys/devices -type d -name "$USB_PATH")
-USB_DEV_DIR=$(echo $MDEV | sed -e 's/usbdev\([0-9]\).\([0-9]\)/\1-\2/')
-
-# dir names in /dev
-BUS=$(add_zeros $(echo $MDEV | sed -e 's/^usbdev\([0-9]\).[0-9]/\1/'))
-USB_DEV=$(add_zeros $(echo $MDEV | sed -e 's/^usbdev[0-9].\([0-9]\)/\1/'))
-
-
-# try to load the proper driver for usb devices
-case "$ACTION" in
- add|"")
- # load usb bus driver
- for i in $USB_PATH/*/modalias ; do
- modprobe `cat $i` 2>/dev/null
- done
- # load usb device driver if existent
- if [ -d $USB_PATH/$USB_DEV_DIR ]; then
- for i in $USB_PATH/$USB_DEV_DIR/*/modalias ; do
- modprobe `cat $i` 2>/dev/null
- done
- fi
- # move usb device file
- mkdir -p bus/usb/$BUS
- mv $MDEV bus/usb/$BUS/$USB_DEV
- ;;
- remove)
- # unload device driver, if device dir is existent
- if [ -d $USB_PATH/$USB_DEV_DIR ]; then
- for i in $USB_PATH/$USB_DEV_DIR/*/modalias ; do
- modprobe -r `cat $i` 2>/dev/null
- done
- fi
- # unload usb bus driver. Does this make sense?
- # what happens, if two usb devices are plugged in
- # and one is removed?
- for i in $USB_PATH/*/modalias ; do
- modprobe -r `cat $i` 2>/dev/null
- done
- # remove device file and possible empty dirs
- rm -f bus/usb/$BUS/$USB_DEV
- rmdir bus/usb/$BUS/ 2>/dev/null
- rmdir bus/usb/ 2>/dev/null
- rmdir bus/ 2>/dev/null
-esac