]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blame - src/initscripts/init.d/leds
Merge remote-tracking branch 'alfh/feature_firewalllog_first_last' into next
[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
d1cc6eaa
AF
20if [ "${RED_DEV}" == "" ]; then
21 RED_DEV=ppp0
22fi
d81baab2 23
d1cc6eaa
AF
24# setup_netdev_trigger LED DEVICE MODE
25setup_netdev_trigger ()
26{
27 if [ -d "/sys/class/leds/$1" ]; then
28 modprobe -q ledtrig-netdev 2>&1 > /dev/null
29 echo "netdev" > /sys/class/leds/$1/trigger
30 echo "$2" > /sys/class/leds/$1/device_name
31 echo "$3 $4" > /sys/class/leds/$1/mode
32 fi
33}
d81baab2 34
d1cc6eaa
AF
35# setup_netdev_trigger LED
36setup_heartbeat_trigger ()
37{
38 if [ -d "/sys/class/leds/$1" ]; then
39 modprobe -q ledtrig-heartbeat 2>&1 > /dev/null
40 echo "heartbeat" > /sys/class/leds/$1/trigger
41 fi
d81baab2
MT
42}
43
d1cc6eaa
AF
44# disable_led_trigger LED
45disable_led_trigger ()
46{
47 if [ -d "/sys/class/leds/$1" ]; then
48 echo "none" > /sys/class/leds/$1/trigger
49 echo "0" > /sys/class/leds/$1/brightness
50 fi
d81baab2
MT
51}
52
d10a7de1
AF
53# enable LED
54enable_led ()
55{
56 if [ -d "/sys/class/leds/$1" ]; then
57 echo "1" > /sys/class/leds/$1/brightness
58 fi
59}
60
d1cc6eaa
AF
61case "${1}" in
62 start)
63 # Alix LED start
670d5144 64 setup_heartbeat_trigger alix:1
d1cc6eaa
AF
65 setup_netdev_trigger alix:2 ${RED_DEV} rx
66 setup_netdev_trigger alix:3 ${RED_DEV} tx
d81baab2 67
d10a7de1
AF
68 # Geos LED start
69 setup_heartbeat_trigger geos:1
70 setup_netdev_trigger geos:2 ${RED_DEV} rx
71 setup_netdev_trigger geos:3 ${RED_DEV} tx
72
d1cc6eaa
AF
73 # Dreamplug
74 setup_netdev_trigger dreamplug:green:wlan ${GREEN_DEV} tx rx
75 setup_netdev_trigger dreamplug:blue:wlanap ${BLUE_DEV} tx rx
76 setup_netdev_trigger dreamplug:blue:bluetooth ${RED_DEV} tx rx
d81baab2 77
d1cc6eaa
AF
78 # Iomega iConnect start
79 setup_heartbeat_trigger iconnect:blue:otb
80 setup_netdev_trigger iconnect:blue:power ${RED_DEV} rx
81 setup_netdev_trigger iconnect:red:power ${RED_DEV} tx
82 setup_netdev_trigger iconnect:blue:usb_2 ${GREEN_DEV} tx rx
83 setup_netdev_trigger iconnect:blue:usb_3 ${BLUE_DEV} tx rx
84 setup_netdev_trigger iconnect:blue:usb_4 ${ORANGE_DEV} tx rx
d81baab2 85
d1cc6eaa
AF
86 # ICY Box LED start
87 setup_netdev_trigger nas6210:red:power ${RED_DEV} tx rx
88 setup_netdev_trigger nas6210:red:usb_copy ${GREEN_DEV} tx rx
89
90 exit 0
91 ;;
92
93 stop)
94 # Alix LED stop
670d5144 95 disable_led_trigger alix:1
d10a7de1 96 enable_led alix:1
d1cc6eaa
AF
97 disable_led_trigger alix:2
98 disable_led_trigger alix:3
99
d10a7de1
AF
100 # Geos LED stop
101 disable_led_trigger geos:1
102 enable_led geos:1
103 disable_led_trigger geos:2
104 disable_led_trigger geos:3
105
d1cc6eaa
AF
106 # Dreamplug
107 disable_led_trigger dreamplug:green:wlan
108 disable_led_trigger dreamplug:blue:wlanap
109 disable_led_trigger dreamplug:blue:bluetooth
110
111 # Iomega iConnect stop (heartbeat will leave on)
112 disable_led_trigger iconnect:blue:power
113 disable_led_trigger iconnect:red:power
114 disable_led_trigger iconnect:blue:usb_2
115 disable_led_trigger iconnect:blue:usb_3
116 disable_led_trigger iconnect:blue:usb_4
117
118 # ICY Box LED stop
119 disable_led_trigger nas6210:red:power
120 disable_led_trigger nas6210:red:usb_copy
d81baab2 121
cbaab6dc 122 exit 0
d1cc6eaa 123 ;;
d81baab2
MT
124
125 *)
126 echo "Usage: ${0} {start|stop}"
127 exit 1
d1cc6eaa 128 ;;
d81baab2
MT
129esac
130
131# End $rc_base/init.d/leds