apm821xx: convert to dt based diag LED script
Please note that users with a Netgear WNDR4700
will need to update the device-tree partition
manually.
For instructions, please refere to commit 49856a4bb5
("apm821xx: make it possible to update the dtb partition on the WNDR4700")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This commit is contained in:
parent
da6fdce365
commit
6ad56fb34c
5 changed files with 52 additions and 34 deletions
|
@ -3,40 +3,42 @@
|
||||||
. /lib/functions.sh
|
. /lib/functions.sh
|
||||||
. /lib/functions/leds.sh
|
. /lib/functions/leds.sh
|
||||||
|
|
||||||
get_status_led() {
|
boot="$(get_dt_led boot)"
|
||||||
local board=$(board_name)
|
failsafe="$(get_dt_led failsafe)"
|
||||||
|
running="$(get_dt_led running)"
|
||||||
case $board in
|
upgrade="$(get_dt_led upgrade)"
|
||||||
mbl|\
|
|
||||||
mr24|\
|
|
||||||
mx60|\
|
|
||||||
wndr4700)
|
|
||||||
status_led="$board:green:power"
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
set_state() {
|
set_state() {
|
||||||
get_status_led
|
status_led="$boot"
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
preinit)
|
|
||||||
status_led_blink_preinit
|
|
||||||
;;
|
|
||||||
|
|
||||||
failsafe)
|
|
||||||
status_led_blink_failsafe
|
|
||||||
;;
|
|
||||||
|
|
||||||
preinit_regular)
|
preinit_regular)
|
||||||
status_led_blink_preinit_regular
|
status_led_blink_preinit_regular
|
||||||
;;
|
;;
|
||||||
|
preinit)
|
||||||
|
status_led_blink_preinit
|
||||||
|
;;
|
||||||
|
failsafe)
|
||||||
|
status_led_off
|
||||||
|
[ -n "$running" ] && {
|
||||||
|
status_led="$running"
|
||||||
|
status_led_off
|
||||||
|
}
|
||||||
|
status_led="$failsafe"
|
||||||
|
status_led_blink_failsafe
|
||||||
|
;;
|
||||||
|
upgrade)
|
||||||
|
[ -n "$running" ] && {
|
||||||
|
status_led="$upgrade"
|
||||||
|
status_led_blink_preinit_regular
|
||||||
|
}
|
||||||
|
;;
|
||||||
done)
|
done)
|
||||||
|
status_led_off
|
||||||
|
[ -n "$running" ] && {
|
||||||
|
status_led="$running"
|
||||||
status_led_on
|
status_led_on
|
||||||
|
}
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,10 @@
|
||||||
|
|
||||||
aliases {
|
aliases {
|
||||||
serial0 = &UART1;
|
serial0 = &UART1;
|
||||||
|
led-boot = &status;
|
||||||
|
led-failsafe = &failsafe;
|
||||||
|
led-running = &status;
|
||||||
|
led-upgrade = &status;
|
||||||
};
|
};
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
|
@ -91,12 +95,12 @@
|
||||||
gpio-leds {
|
gpio-leds {
|
||||||
compatible = "gpio-leds";
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
power-green {
|
status: power-green {
|
||||||
label = "mr24:green:power";
|
label = "mr24:green:power";
|
||||||
gpios = <&GPIO0 18 GPIO_ACTIVE_LOW>;
|
gpios = <&GPIO0 18 GPIO_ACTIVE_LOW>;
|
||||||
};
|
};
|
||||||
|
|
||||||
power-orange {
|
failsafe: power-orange {
|
||||||
label = "mr24:orange:power";
|
label = "mr24:orange:power";
|
||||||
gpios = <&GPIO0 19 GPIO_ACTIVE_LOW>;
|
gpios = <&GPIO0 19 GPIO_ACTIVE_LOW>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -20,6 +20,10 @@
|
||||||
|
|
||||||
aliases {
|
aliases {
|
||||||
serial0 = &UART1;
|
serial0 = &UART1;
|
||||||
|
led-boot = &status;
|
||||||
|
led-failsafe = &failsafe;
|
||||||
|
led-running = &status;
|
||||||
|
led-upgrade = &status;
|
||||||
};
|
};
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
|
@ -120,12 +124,12 @@
|
||||||
gpio-leds {
|
gpio-leds {
|
||||||
compatible = "gpio-leds";
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
power-green {
|
status: power-green {
|
||||||
label = "mx60:green:power";
|
label = "mx60:green:power";
|
||||||
gpios = <&GPIO0 18 GPIO_ACTIVE_LOW>;
|
gpios = <&GPIO0 18 GPIO_ACTIVE_LOW>;
|
||||||
};
|
};
|
||||||
|
|
||||||
power-orange {
|
failsafe: power-orange {
|
||||||
label = "mx60:orange:power";
|
label = "mx60:orange:power";
|
||||||
gpios = <&GPIO0 19 GPIO_ACTIVE_LOW>;
|
gpios = <&GPIO0 19 GPIO_ACTIVE_LOW>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -14,6 +14,10 @@
|
||||||
|
|
||||||
aliases {
|
aliases {
|
||||||
serial0 = &UART0;
|
serial0 = &UART0;
|
||||||
|
led-boot = &status;
|
||||||
|
led-failsafe = &status;
|
||||||
|
led-running = &status;
|
||||||
|
led-upgrade = &status;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -113,13 +117,13 @@
|
||||||
gpio-leds {
|
gpio-leds {
|
||||||
compatible = "gpio-leds";
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
power-red {
|
failsafe: power-red {
|
||||||
label = "mbl:red:power";
|
label = "mbl:red:power";
|
||||||
gpios = <&GPIO1 4 GPIO_ACTIVE_HIGH>;
|
gpios = <&GPIO1 4 GPIO_ACTIVE_HIGH>;
|
||||||
linux,default-trigger = "panic";
|
linux,default-trigger = "panic";
|
||||||
};
|
};
|
||||||
|
|
||||||
power-green {
|
status: power-green {
|
||||||
label = "mbl:green:power";
|
label = "mbl:green:power";
|
||||||
gpios = <&GPIO1 5 GPIO_ACTIVE_HIGH>;
|
gpios = <&GPIO1 5 GPIO_ACTIVE_HIGH>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -19,6 +19,10 @@
|
||||||
|
|
||||||
aliases {
|
aliases {
|
||||||
serial0 = &UART0;
|
serial0 = &UART0;
|
||||||
|
led-boot = &status;
|
||||||
|
led-failsafe = &failsafe;
|
||||||
|
led-running = &status;
|
||||||
|
led-upgrade = &status;
|
||||||
};
|
};
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
|
@ -348,12 +352,12 @@
|
||||||
|
|
||||||
gpio-leds {
|
gpio-leds {
|
||||||
compatible = "gpio-leds";
|
compatible = "gpio-leds";
|
||||||
power-green {
|
status: power-green {
|
||||||
label = "wndr4700:green:power";
|
label = "wndr4700:green:power";
|
||||||
gpios = <&GPIO0 8 GPIO_ACTIVE_HIGH>;
|
gpios = <&GPIO0 8 GPIO_ACTIVE_HIGH>;
|
||||||
};
|
};
|
||||||
|
|
||||||
power-orange {
|
failsafe: power-orange {
|
||||||
label = "wndr4700:orange:power";
|
label = "wndr4700:orange:power";
|
||||||
gpios = <&GPIO0 9 GPIO_ACTIVE_LOW>;
|
gpios = <&GPIO0 9 GPIO_ACTIVE_LOW>;
|
||||||
linux,default-trigger = "panic";
|
linux,default-trigger = "panic";
|
||||||
|
|
Loading…
Reference in a new issue