2005-11-07 09:12:51 +08:00
|
|
|
#!/bin/sh
|
2006-06-27 08:36:13 +08:00
|
|
|
# Copyright (C) 2006 OpenWrt.org
|
2006-04-05 10:09:22 +08:00
|
|
|
|
2007-03-31 08:59:49 +08:00
|
|
|
export HOTPLUG_TYPE="$1"
|
|
|
|
|
2006-04-05 10:09:22 +08:00
|
|
|
# bypass the normal hotplug path for firmware loading
|
|
|
|
# would otherwise cause problems with drivers like bcm43xx
|
2009-10-03 19:28:02 +08:00
|
|
|
[ -d /sys/firmware -a "firmware" = "$HOTPLUG_TYPE" -a "add" = "$ACTION" ] && {
|
2006-01-05 09:20:44 +08:00
|
|
|
[ -f "/lib/firmware/$FIRMWARE" ] && {
|
|
|
|
echo 1 > "/sys$DEVPATH/loading"
|
2009-12-09 04:04:38 +08:00
|
|
|
dd if="/lib/firmware/$FIRMWARE" of="/sys$DEVPATH/data" bs=64k
|
2006-01-05 09:20:44 +08:00
|
|
|
echo 0 > "/sys$DEVPATH/loading"
|
|
|
|
}
|
|
|
|
exit 0
|
|
|
|
}
|
|
|
|
|
2005-11-07 10:18:59 +08:00
|
|
|
. /etc/functions.sh
|
|
|
|
|
2005-11-07 09:12:51 +08:00
|
|
|
PATH=/bin:/sbin:/usr/bin:/usr/sbin
|
|
|
|
LOGNAME=root
|
|
|
|
USER=root
|
|
|
|
export PATH LOGNAME USER
|
|
|
|
|
|
|
|
[ \! -z "$1" -a -d /etc/hotplug.d/$1 ] && {
|
|
|
|
for script in $(ls /etc/hotplug.d/$1/* 2>&-); do (
|
|
|
|
[ -f $script ] && . $script
|
|
|
|
); done
|
|
|
|
}
|