#!/bin/sh ######################################################################## # Begin $rc_base/init.d/leds # # Description : Script to setup leds at boot. # ######################################################################## . /etc/sysconfig/rc . ${rc_functions} if [ -e /etc/init.d/leds.user ]; then /etc/init.d/leds.user $* exit ${?} fi # Load ethernet settings eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings) case "${RED_TYPE}" in PPPOE) RED_DEV="ppp0" ;; esac # setup_netdev_trigger LED DEVICE MODE setup_netdev_trigger () { if [ -d "/sys/class/leds/$1" ]; then modprobe -q ledtrig-netdev 2>&1 > /dev/null echo "netdev" > /sys/class/leds/$1/trigger echo "$2" > /sys/class/leds/$1/device_name if [ -e "/sys/class/leds/$1/mode" ]; then echo "$3 $4" > /sys/class/leds/$1/mode else if [ -f "/sys/class/leds/$1/$3" ]; then echo 1 > /sys/class/leds/$1/$3 fi if [ -f "/sys/class/leds/$1/$4" ]; then echo 1 > /sys/class/leds/$1/$4 fi if [ -f "/sys/class/leds/$1/$5" ]; then echo 1 > /sys/class/leds/$1/$5 fi fi fi } # setup_netdev_trigger LED setup_heartbeat_trigger () { if [ -d "/sys/class/leds/$1" ]; then modprobe -q ledtrig-heartbeat 2>&1 > /dev/null echo "heartbeat" > /sys/class/leds/$1/trigger fi } # disable_led_trigger LED disable_led_trigger () { if [ -d "/sys/class/leds/$1" ]; then echo "none" > /sys/class/leds/$1/trigger echo "0" > /sys/class/leds/$1/brightness fi } # enable LED enable_led () { if [ -d "/sys/class/leds/$1" ]; then echo "1" > /sys/class/leds/$1/brightness fi } #Handle new APU ACPI Leds introduced on APU2 with bios 4.10.0.0 if [ -e /sys/class/leds/apu:green:1 ]; then APULED="apu:green:"; else if [ -e /sys/class/leds/apu1:green:led1 ]; then APULED="apu1:green:led"; else if [ -e /sys/class/leds/apu2:green:led1 ]; then APULED="apu2:green:led"; else if [ -e /sys/class/leds/apu3:green:led1 ]; then APULED="apu3:green:led"; else if [ -e /sys/class/leds/apu4:green:led1 ]; then APULED="apu4:green:led"; else if [ -e /sys/class/leds/apu5:green:led1 ]; then APULED="apu5:green:led"; else APULED="apu:"; fi fi fi fi fi fi case "${1}" in start) # Alix LED start setup_heartbeat_trigger alix:1 setup_netdev_trigger alix:2 ${RED_DEV} rx setup_netdev_trigger alix:3 ${RED_DEV} tx # Apu LED start setup_heartbeat_trigger ${APULED}1 setup_netdev_trigger ${APULED}2 ${RED_DEV} rx setup_netdev_trigger ${APULED}3 ${RED_DEV} tx # Geos LED start setup_heartbeat_trigger geos:1 setup_netdev_trigger geos:2 ${RED_DEV} rx setup_netdev_trigger geos:3 ${RED_DEV} tx # Mirabox start setup_heartbeat_trigger mirabox:green:pwr setup_netdev_trigger mirabox:green:stat ${GREEN_DEV} tx rx setup_netdev_trigger mirabox:blue:stat ${BLUE_DEV} tx rx # Nanopi R1 start setup_heartbeat_trigger nanopi-r1:red:status setup_netdev_trigger nanopi-r1:green:wan ${RED_DEV} tx rx setup_netdev_trigger nanopi-r1:green:lan ${GREEN_DEV} tx rx # Nanopi R2S start setup_heartbeat_trigger nanopi-r2s:red:sys setup_netdev_trigger nanopi-r2s:green:wan ${RED_DEV} tx rx setup_netdev_trigger nanopi-r2s:green:lan ${GREEN_DEV} tx rx # Nanopi R4S start setup_heartbeat_trigger nanopi-r4s:green:sys setup_netdev_trigger nanopi-r4s:green:wan ${RED_DEV} tx rx setup_netdev_trigger nanopi-r4s:green:lan ${GREEN_DEV} tx rx exit 0 ;; stop) # Alix LED stop disable_led_trigger alix:1 enable_led alix:1 disable_led_trigger alix:2 disable_led_trigger alix:3 # Apu LED stop disable_led_trigger ${APULED}1 enable_led ${APULED}1 disable_led_trigger ${APULED}2 disable_led_trigger ${APULED}3 # Geos LED stop disable_led_trigger geos:1 enable_led geos:1 disable_led_trigger geos:2 disable_led_trigger geos:3 # Mirabox stop disable_led_trigger mirabox:green:pwr enable_led mirabox:green:pwr disable_led_trigger mirabox:green:stat disable_led_trigger mirabox:blue:stat # Nanopi R1 stop disable_led_trigger nanopi-r1:red:status enable_led nanopi-r1:red:status disable_led_trigger nanopi-r1:green:wan disable_led_trigger nanopi-r1:green:lan # Nanopi R2S stop disable_led_trigger nanopi-r2s:red:sys enable_led nanopi-r2s:red:sys disable_led_trigger nanopi-r2s:green:wan disable_led_trigger nanopi-r2s:green:lan # Nanopi R4S stop disable_led_trigger nanopi-r4s:green:sys enable_led nanopi-r4s:green:sys disable_led_trigger nanopi-r4s:green:wan disable_led_trigger nanopi-r4s:green:lan exit 0 ;; *) echo "Usage: ${0} {start|stop}" exit 1 ;; esac # End $rc_base/init.d/leds