diff options
Diffstat (limited to 'target/linux/orion/base-files/etc/hotplug.d')
-rw-r--r-- | target/linux/orion/base-files/etc/hotplug.d/usb/10-usb | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/target/linux/orion/base-files/etc/hotplug.d/usb/10-usb b/target/linux/orion/base-files/etc/hotplug.d/usb/10-usb new file mode 100644 index 0000000000..5572daede1 --- /dev/null +++ b/target/linux/orion/base-files/etc/hotplug.d/usb/10-usb @@ -0,0 +1,54 @@ +#!/bin/sh +# +# Copyright (C) 2009-2010 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +usb_led='' +usb_device='' + +led_set_attr() { + [ -f "/sys/class/leds/$1/$2" ] && echo "$3" > "/sys/class/leds/$1/$2" +} + +usb_led_set_timer() { + led_set_attr "${usb_led}" 'trigger' 'timer' + led_set_attr "${usb_led}" 'delay_on' "$1" + led_set_attr "${usb_led}" 'delay_off' "$2" +} + +usb_led_on() { + led_set_attr "${usb_led}" 'trigger' 'none' + led_set_attr "${usb_led}" 'brightness' 255 +} + +usb_led_off() { + led_set_attr "${usb_led}" 'trigger' 'none' + led_set_attr "${usb_led}" 'brightness' 0 +} + +get_usb_led() { + local hardware=`sed -n /Hardware/s/.*:.//p /proc/cpuinfo` + + case "${hardware}" in + 'Linksys WRT350N v2') + usb_led='wrt350nv2:green:usb' + usb_device='1-1:1.0' + ;; + esac; +} + +get_usb_led + +case "${ACTION}" in + add) + # update LEDs + [ "${usb_device}" = "${DEVICENAME}" ] && usb_led_on + ;; + remove) + # update LEDs + [ "${usb_device}" = "${DEVICENAME}" ] && usb_led_off + ;; +esac |