generic-poky/openembedded/packages/udev/udev-084/udevsynthesize.sh

52 lines
1011 B
Bash

#!/bin/sh -e
load_input_modules() {
for module in mousedev evdev joydev; do
modprobe -q $module || true
done
}
if [ ! -e /sys/class/mem/null/uevent ]; then # <= 2.6.14
/lib/udev/udevsynthesize
load_input_modules
exit 0
fi
# replace $IFS with something which is not likely to appear in a sysfs path,
# because some buggy drivers have spaces in their names
oldifs="$IFS"
IFS="|"
for file in /sys/bus/*/devices/*/uevent /sys/class/*/*/uevent \
/sys/block/*/uevent /sys/block/*/*/uevent; do
case "$file" in
*/device/uevent) ;; # skip followed device symlinks
*/\*/*) ;;
*/class/mem/*) # for /dev/null
first="$first${IFS}$file" ;;
*/block/md[0-9]*)
last="$last${IFS}$file" ;;
*)
default="$default${IFS}$file" ;;
esac
done
for file in $first${IFS}$default${IFS}$last; do
[ "$file" ] || continue
echo 'add' > "$file" || true
done
IFS="$oldifs"
case "$(uname -r)" in
2.6.1[0-5]|2.6.1[0-5][!0-9]*) # <= 2.6.15
load_input_modules
;;
esac
exit 0