Paste Description for firmware.agent
Este es el archivo necesario para hacer andar, entre otras cosas, las placas inalámbricas con chipset PrismGT.
firmware.agent
- #!/bin/sh
- #
- # Firmware-specific hotplug policy agent.
- #
- # Kernel firmware hotplug params include:
- #
- # ACTION=%s [add or remove]
- # DEVPATH=%s [in 2.5 kernels, /sys/$DEVPATH]
- # FIRMWARE=%s
- #
- # HISTORY:
- #
- # 24-Jul-2003 Initial version of “new” hotplug agent.
- #
- # $Id: firmware.agent,v 1.3 2004/03/14 15:52:56 ukai Exp $
- #
- cd /etc/hotplug
- . ./hotplug.functions
- load() {
- echo 1 > $SYSFS/$DEVPATH/loading
- cat “$1″ > $SYSFS/$DEVPATH/data
- echo 0 > $SYSFS/$DEVPATH/loading
- exit
- }
- # DEBUG=yes export DEBUG
- # directories with the firmware files
- FIRMWARE_DIRS=”/lib/hotplug/firmware /usr/local/lib/hotplug/firmware /usr/lib/hotplug/firmware”
- # mountpoint of sysfs
- SYSFS=$(sed -n ’s/^.* \([^ ]*\) sysfs .*$/\1/p’ /proc/mounts | sed -e ‘2,$d’)
- # use /proc for 2.4 kernels
- if [ “$SYSFS” = “” ]; then
- SYSFS=/proc
- fi
- VERSION=$(uname -r)
- #
- # What to do with this firmware hotplug event?
- #
- case “$ACTION” in
- add)
- counter=5
- while [ ! -e $SYSFS/$DEVPATH/loading -a $counter -gt 0 ]; do
- sleep 1
- counter=$(($counter - 1))
- done
- if [ $counter -eq 0 ]; then
- mesg “$SYSFS/$DEVPATH/ does not exist”
- exit 1
- fi
- for DIR in $FIRMWARE_DIRS; do
- if [ -e “$DIR/$FIRMWARE-$VERSION” ]; then
- load “$DIR/$FIRMWARE-$VERSION”
- elif [ -e “$DIR/$FIRMWARE” ]; then
- load “$DIR/$FIRMWARE”
- fi
- done
- # the firmware was not found
- echo -1 > $SYSFS/$DEVPATH/loading
- ;;
- remove)
- ;;
- *)
- mesg “Firmware ‘$ACTION’ event not supported”
- exit 1
- ;;
- esac