]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blame - src/initscripts/init.d/leds
leds: Use correct RED interface even when RED_DEV is set.
[people/teissler/ipfire-2.x.git] / src / initscripts / init.d / leds
CommitLineData
d81baab2
MT
1#!/bin/sh
2########################################################################
3# Begin $rc_base/init.d/leds
4#
5# Description : Script to setup leds at boot.
6#
7########################################################################
8
9. /etc/sysconfig/rc
10. ${rc_functions}
11
56885462
AF
12if [ -e /etc/init.d/leds.user ]; then
13 /etc/init.d/leds.user $*
d1cc6eaa
AF
14 exit ${?}
15fi
16
d81baab2
MT
17# Load ethernet settings
18eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
19
0e37b552
MT
20case "${RED_TYPE}" in
21 PPPOE)
22 RED_DEV="ppp0"
23 ;;
24esac
d81baab2 25
d1cc6eaa
AF
26# setup_netdev_trigger LED DEVICE MODE
27setup_netdev_trigger ()
28{
29 if [ -d "/sys/class/leds/$1" ]; then
30 modprobe -q ledtrig-netdev 2>&1 > /dev/null
31 echo "netdev" > /sys/class/leds/$1/trigger
32 echo "$2" > /sys/class/leds/$1/device_name
33 echo "$3 $4" > /sys/class/leds/$1/mode
34 fi
35}
d81baab2 36
d1cc6eaa
AF
37# setup_netdev_trigger LED
38setup_heartbeat_trigger ()
39{
40 if [ -d "/sys/class/leds/$1" ]; then
41 modprobe -q ledtrig-heartbeat 2>&1 > /dev/null
42 echo "heartbeat" > /sys/class/leds/$1/trigger
43 fi
d81baab2
MT
44}
45
d1cc6eaa
AF
46# disable_led_trigger LED
47disable_led_trigger ()
48{
49 if [ -d "/sys/class/leds/$1" ]; then
50 echo "none" > /sys/class/leds/$1/trigger
51 echo "0" > /sys/class/leds/$1/brightness
52 fi
d81baab2
MT
53}
54
d10a7de1
AF
55# enable LED
56enable_led ()
57{
58 if [ -d "/sys/class/leds/$1" ]; then
59 echo "1" > /sys/class/leds/$1/brightness
60 fi
61}
62
d1cc6eaa
AF
63case "${1}" in
64 start)
65 # Alix LED start
670d5144 66 setup_heartbeat_trigger alix:1
d1cc6eaa
AF
67 setup_netdev_trigger alix:2 ${RED_DEV} rx
68 setup_netdev_trigger alix:3 ${RED_DEV} tx
d81baab2 69
fff24766
AF
70 # Apu LED start
71 setup_heartbeat_trigger apu:1
72 setup_netdev_trigger apu:2 ${RED_DEV} rx
73 setup_netdev_trigger apu:3 ${RED_DEV} tx
74
d10a7de1
AF
75 # Geos LED start
76 setup_heartbeat_trigger geos:1
77 setup_netdev_trigger geos:2 ${RED_DEV} rx
78 setup_netdev_trigger geos:3 ${RED_DEV} tx
79
d1cc6eaa
AF
80 # Dreamplug
81 setup_netdev_trigger dreamplug:green:wlan ${GREEN_DEV} tx rx
82 setup_netdev_trigger dreamplug:blue:wlanap ${BLUE_DEV} tx rx
83 setup_netdev_trigger dreamplug:blue:bluetooth ${RED_DEV} tx rx
d81baab2 84
d1cc6eaa
AF
85 # Iomega iConnect start
86 setup_heartbeat_trigger iconnect:blue:otb
87 setup_netdev_trigger iconnect:blue:power ${RED_DEV} rx
88 setup_netdev_trigger iconnect:red:power ${RED_DEV} tx
89 setup_netdev_trigger iconnect:blue:usb_2 ${GREEN_DEV} tx rx
90 setup_netdev_trigger iconnect:blue:usb_3 ${BLUE_DEV} tx rx
91 setup_netdev_trigger iconnect:blue:usb_4 ${ORANGE_DEV} tx rx
d81baab2 92
d1cc6eaa
AF
93 # ICY Box LED start
94 setup_netdev_trigger nas6210:red:power ${RED_DEV} tx rx
95 setup_netdev_trigger nas6210:red:usb_copy ${GREEN_DEV} tx rx
96
97 exit 0
98 ;;
99
100 stop)
101 # Alix LED stop
670d5144 102 disable_led_trigger alix:1
d10a7de1 103 enable_led alix:1
d1cc6eaa
AF
104 disable_led_trigger alix:2
105 disable_led_trigger alix:3
106
fff24766
AF
107 # Apu LED stop
108 disable_led_trigger apu:1
109 enable_led apu:1
110 disable_led_trigger apu:2
111 disable_led_trigger apu:3
112
d10a7de1
AF
113 # Geos LED stop
114 disable_led_trigger geos:1
115 enable_led geos:1
116 disable_led_trigger geos:2
117 disable_led_trigger geos:3
118
d1cc6eaa
AF
119 # Dreamplug
120 disable_led_trigger dreamplug:green:wlan
121 disable_led_trigger dreamplug:blue:wlanap
122 disable_led_trigger dreamplug:blue:bluetooth
123
124 # Iomega iConnect stop (heartbeat will leave on)
125 disable_led_trigger iconnect:blue:power
126 disable_led_trigger iconnect:red:power
127 disable_led_trigger iconnect:blue:usb_2
128 disable_led_trigger iconnect:blue:usb_3
129 disable_led_trigger iconnect:blue:usb_4
130
131 # ICY Box LED stop
132 disable_led_trigger nas6210:red:power
133 disable_led_trigger nas6210:red:usb_copy
d81baab2 134
cbaab6dc 135 exit 0
d1cc6eaa 136 ;;
d81baab2
MT
137
138 *)
139 echo "Usage: ${0} {start|stop}"
140 exit 1
d1cc6eaa 141 ;;
d81baab2
MT
142esac
143
144# End $rc_base/init.d/leds