0e65e6133b537d048033da4b828f1caca29ab91c
[openwrt.git] / target / linux / lantiq / base-files / etc / diag.sh
1 #!/bin/sh
2 # Copyright (C) 2012-2013 OpenWrt.org
3
4 . /lib/functions/leds.sh
5 . /lib/functions/lantiq.sh
6
7 power="$(lantiq_get_dt_led_chosen power)"
8 power1="$(lantiq_get_dt_led_chosen power1)"
9 power2="$(lantiq_get_dt_led_chosen power2)"
10
11 status_led="$power"
12
13 set_state() {
14         case "$1" in
15         preinit)
16                 if [ -n "$power2" ]; then
17                         status_led_on
18                         status_led="$power2"
19                         status_led_blink_preinit
20                         status_led="$power"
21                 else
22                         status_led_blink_preinit
23                 fi
24                 ;;
25         failsafe)
26                 if [ -n "$power2" ]; then
27                         led_off "$power2"
28                         status_led_blink_failsafe
29                 elif [ -n "$power1" ]; then
30                         status_led_off
31                         status_led="$power1"
32                         status_led_blink_failsafe
33                         status_led="$power"
34                 else
35                         status_led_blink_failsafe
36                 fi
37                 ;;
38         preinit_regular)
39                 if [ -n "$power2" ]; then
40                         status_led_on
41                         status_led="$power2"
42                         status_led_blink_preinit_regular
43                         status_led="$power"
44                 else
45                         status_led_blink_preinit_regular
46                 fi
47                 ;;
48         done)
49                 status_led_on
50                 led_off "$power1"
51                 led_off "$power2"
52                 ;;
53         esac
54 }