@@ -27,39 +27,21 @@ board_config_update
board=$(lantiq_board_name)
case "$board" in
-BTHOMEHUBV2B)
- ucidef_set_led_default "power" "power" "soc:blue:power" "1"
- ;;
-BTHOMEHUBV3A)
- ucidef_set_led_default "power" "power" "soc:blue:power" "1"
- ;;
BTHOMEHUBV5A)
- ucidef_set_led_default "power" "power" "soc:blue:power" "1"
ucidef_set_led_default "dimmed" "dimmed" "dimmed" "0"
;;
VGV7510KW22)
- ucidef_set_led_default "power" "power" "power" "1"
- ucidef_set_led_default "power2" "power2" "power2" "0"
ucidef_set_led_wlan "wifi" "wifi" "wifi" "phy0radio"
;;
VGV7519)
- ucidef_set_led_default "power" "power" "power" "0"
- ucidef_set_led_default "power2" "power2" "power2" "1"
ucidef_set_led_wlan "wifi" "wifi" "wireless_yellow" "phy0radio"
;;
P2812HNUF*)
- ucidef_set_led_default "power" "power" "power" "0"
- ucidef_set_led_default "power2" "power2" "power2" "1"
ucidef_set_led_wlan "wifi" "wifi" "wireless_green" "phy0radio"
;;
ARV7519RW22)
- ucidef_set_led_default "power" "power" "power" "1"
ucidef_set_led_netdev "lan" "lan" "lan" "eth0.1"
;;
-ARV8539PW22)
- ucidef_set_led_default "power" "power" "soc:green:power" "1"
- ucidef_set_led_default "power2" "power2" "soc:red:power" "0"
- ;;
*)
;;
esac
@@ -1,54 +1,34 @@
#!/bin/sh
-# Copyright (C) 2012-2013 OpenWrt.org
+# Copyright (C) 2010-2015 OpenWrt.org
. /lib/functions/leds.sh
. /lib/functions/lantiq.sh
-power="$(lantiq_get_dt_led_chosen power)"
-power1="$(lantiq_get_dt_led_chosen power1)"
-power2="$(lantiq_get_dt_led_chosen power2)"
-
-status_led="$power"
+boot="$(lantiq_get_dt_led_chosen boot)"
+failsafe="$(lantiq_get_dt_led_chosen failsafe)"
+running="$(lantiq_get_dt_led_chosen running)"
set_state() {
+ status_led="$boot"
+
case "$1" in
preinit)
- if [ -n "$power2" ]; then
- status_led_on
- status_led="$power2"
- status_led_blink_preinit
- status_led="$power"
- else
- status_led_blink_preinit
- fi
+ status_led_blink_preinit
;;
failsafe)
- if [ -n "$power2" ]; then
- led_off "$power2"
- status_led_blink_failsafe
- elif [ -n "$power1" ]; then
- status_led_off
- status_led="$power1"
- status_led_blink_failsafe
- status_led="$power"
- else
- status_led_blink_failsafe
- fi
+ status_led_off
+ status_led="$failsafe"
+ status_led_blink_failsafe
;;
preinit_regular)
- if [ -n "$power2" ]; then
- status_led_on
- status_led="$power2"
- status_led_blink_preinit_regular
- status_led="$power"
- else
- status_led_blink_preinit_regular
- fi
+ status_led_blink_preinit_regular
;;
done)
- status_led_on
- led_off "$power1"
- led_off "$power2"
+ status_led_off
+ [ -n "$running" ] & {
+ status_led="$running"
+ status_led_on
+ }
;;
esac
}
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
dsl = &adsl;
internet = &internet;
- power = &power;
- power2 = &power2;
usb = &usb;
usb2 = &usb2;
wifi = &wifi;
@@ -152,6 +154,7 @@
power: power {
label = "power";
gpios = <&gpios 21 0>;
+ default-state = "keep";
};
power2: power2 {
label = "power2";
@@ -5,9 +5,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power;
+ running = &power;
+
dsl = &dsl;
internet = &online;
- power = &power;
usb = &usb;
wifi = &wifi;
};
@@ -147,6 +150,7 @@
power: power {
label = "power";
gpios = <&gpio 3 0>;
+ default-state = "keep";
};
dsl: dsl {
label = "dsl";
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
dsl = &dsl;
internet = &online;
- power = &power;
- power2 = &power2;
usb = &usb;
wifi = &wifi;
};
@@ -130,6 +132,7 @@
power: power {
label = "power";
gpios = <&gpio 2 1>;
+ default-state = "keep";
};
power2: power2 {
label = "power2";
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power_blue;
+ failsafe = &power_red;
+ running = &power_blue;
+
dsl = &adsl;
internet = &internet;
- power = &power;
- power2 = &power2;
usb = &usb;
wifi = &wifi;
};
@@ -149,9 +151,10 @@
gpio-leds {
compatible = "gpio-leds";
- power: power {
+ power_blue: power {
label = "power";
gpios = <&gpio 3 1>;
+ default-state = "keep";
};
adsl: adsl {
label = "adsl";
@@ -161,7 +164,7 @@
label = "internet";
gpios = <&gpio 5 1>;
};
- power2: power2 {
+ power_red: power2 {
label = "power2";
gpios = <&gpio 6 1>;
};
@@ -7,10 +7,12 @@
chosen {
leds {
+ /* we dont have a power led, lets use the online led */
+ boot = &online;
+ failsafe = &online;
+
dsl = &dsl;
internet = &online;
- /* we dont have a power led, lets use the online led */
- power = &online;
wifi = &wifi;
};
};
@@ -155,8 +157,7 @@
gpios = <&gpio 8 1>;
};
online: online {
- /*label = "online"; - we dont have a power led, lets use this one */
- label = "power";
+ label = "online";
gpios = <&gpio 9 1>;
};
};
@@ -9,8 +9,11 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power0;
+ failsafe = &power1;
+ running = &power0;
+
internet = &dsl;
- power1 = &power1;
usb = &usb;
wifi = &wifi;
};
@@ -162,9 +165,10 @@
gpio-leds {
compatible = "gpio-leds";
- power0 {
+ power0: power0 {
label = "power0";
gpios = <&gpio 3 1>;
+ default-state = "keep";
};
dsl: dsl {
label = "dsl";
@@ -9,8 +9,11 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power;
+ running = &power;
+
internet = &internet;
- power = &power;
wifi = &wlan;
};
};
@@ -164,6 +167,7 @@
power: power {
label = "power";
gpios = <&gpio 2 1>;
+ default-state = "keep";
};
internet: internet {
label = "internet";
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
dsl = &dsl;
internet = &online;
- power = &power;
- power2 = &power2;
usb = &usb;
wifi = &wifi;
};
@@ -170,6 +172,7 @@
power: power {
label = "power";
gpios = <&gpio 2 1>;
+ default-state = "keep";
};
dsl: dsl {
label = "dsl";
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
dsl = &dsl;
internet = &online;
- power = &power;
- power2 = &power2;
wifi = &wifi;
};
};
@@ -147,7 +149,7 @@
power: power {
label = "power";
gpios = <&gpio 2 1>;
- default-state = "off";
+ default-state = "keep";
};
power2: power2 {
label = "power2";
@@ -3,14 +3,17 @@
/include/ "vr9.dtsi"
/ {
- model = "ARV7519RW22 - Astoria Networks ARV7519RW22-A-LT";
+ model = "ARV7519RW22 - Orange Livebox 2.1";
chosen {
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power_green;
+ failsafe = &power_green;
+ running = &power_green;
+
internet = &internet_green;
- power = &power_green;
};
};
@@ -213,7 +216,7 @@
power_green: power_green {
label = "power";
gpios = <&gpio 14 1>;
- default-state = "on";
+ default-state = "keep";
};
alarm_blue {
label = "alarm";
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power1;
+ running = &power;
+
dsl = &power;
internet = &online;
- power = &power;
- power1 = &power1;
wifi = &wifi;
};
};
@@ -125,6 +127,7 @@
power: power {
label = "power";
gpios = <&gpio 3 1>;
+ default-state = "keep";
};
power1: power1 {
label = "power1";
@@ -9,9 +9,11 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power1;
+ running = &power;
+
internet = &internet;
- power = &power;
- power1 = &power1;
wifi = &wifi;
};
};
@@ -9,9 +9,11 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power1;
+ running = &power;
+
internet = &internet;
- power = &power;
- power1 = &power1;
wifi = &wifi;
};
};
@@ -7,9 +7,12 @@
chosen {
leds {
+ boot = &power_green;
+ failsafe = &power_red;
+ running = &power_green;
+
dsl = &dsl_green;
internet = &online_green;
- power = &power_green;
wifi = &wireless_green;
};
};
@@ -146,8 +149,9 @@
power_green: power-green {
label = "power";
gpios = <&gpio 24 1>;
+ default-state = "keep";
};
- power-red {
+ power_red: power-red {
label = "soc:red:power";
gpios = <&gpio 4 1>;
};
@@ -9,6 +9,10 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power_orange;
+ failsafe = &power_red;
+ running = &power_blue;
+
internet = &broadband_blue;
wifi = &wireless_blue;
};
@@ -267,19 +271,19 @@
gpios = <&stp0 12 0>;
};
- power-red {
+ power_red: power-red {
label = "soc:red:power";
gpios = <&stp0 13 0>;
};
- power-orange {
+ power_orange: power-orange {
label = "soc:orange:power";
gpios = <&stp0 14 0>;
+ default-state = "keep";
};
- power-blue {
+ power_blue: power-blue {
label = "soc:blue:power";
gpios = <&stp0 15 0>;
};
};
-
};
@@ -9,6 +9,10 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power_orange;
+ failsafe = &power_red;
+ running = &power_blue;
+
internet = &broadband_blue;
wifi = &wireless_blue;
};
@@ -197,19 +201,19 @@
gpios = <&gpio 12 1>;
};
- power-red {
+ power_red: power-red {
label = "soc:red:power";
gpios = <&gpio 14 1>;
};
- power-orange {
+ power_orange: power-orange {
label = "soc:orange:power";
gpios = <&gpio 5 1>;
+ default-state = "keep";
};
- ppower-blue {
+ power_blue: power-blue {
label = "soc:blue:power";
gpios = <&gpio 1 1>;
};
};
-
};
@@ -9,6 +9,10 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power_green;
+ failsafe = &power_red;
+ running = &power_blue;
+
internet = &broadband_blue;
wifi = &wireless_blue;
};
@@ -245,6 +249,7 @@
gpio-leds {
compatible = "gpio-leds";
+ /* broadband-* is a single RGB led */
broadband-red {
label = "soc:red:broadband";
gpios = <&gpio 0 1>;
@@ -258,6 +263,7 @@
gpios = <&gpio 8 1>;
};
+ /* wireless-* is a single RGB led */
wireless-red {
label = "soc:red:wireless";
gpios = <&gpio 9 1>;
@@ -271,15 +277,17 @@
gpios = <&gpio 11 1>;
};
- power-red {
+ /* power-* is a single RGB led */
+ power_red: power-red {
label = "soc:red:power";
gpios = <&gpio 12 1>;
};
- power-green {
+ power_green: power-green {
label = "soc:green:power";
gpios = <&gpio 14 1>;
+ default-state = "keep";
};
- power-blue {
+ power_blue: power-blue {
label = "soc:blue:power";
gpios = <&gpio 15 1>;
};
@@ -9,9 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power;
+ running = &power;
+
dsl = &dsl;
internet = &online;
- power = &power;
};
};
@@ -137,7 +140,7 @@
power: power {
label = "power";
gpios = <&gpio 13 1>;
- default-state = "on";
+ default-state = "keep";
};
};
};
@@ -5,10 +5,12 @@
bootargs-append = "root= console=ttyLTQ0,115200";
leds {
+ boot = &power_green;
+ failsafe = &power_red;
+ running = &power_green;
+
dsl = &dsl;
internet = &internet;
- power = &power;
- power2 = &power2;
usb = &usb;
wifi = &wifi;
};
@@ -171,11 +173,12 @@
label = "usb";
gpios = <&gpio 22 1>;
};
- power: power {
+ power_green: power {
label = "power";
gpios = <&gpio 34 1>;
+ default-state = "keep";
};
- power2: power2 {
+ power_red: power2 {
label = "power2";
gpios = <&gpio 39 1>;
};
@@ -5,7 +5,10 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
- power = &power;
+ boot = &power;
+ failsafe = &power;
+ running = &power;
+
usb = &usb1;
usb2 = &usb2;
};
@@ -302,7 +305,7 @@
power: power {
label = "power";
gpios = <&stp 9 0>;
- default-state = "on";
+ default-state = "keep";
};
warning {
label = "warning";
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 ubi.mtd=1,512 root=/dev/mtdblock9";
leds {
+ boot = &power_green;
+ failsafe = &power_red;
+ running = &power_green;
+
dsl = &dsl;
internet = &info_green;
- power = &power;
- power2 = &power2;
wifi = &wifi;
};
};
@@ -243,11 +245,12 @@
gpio-leds {
compatible = "gpio-leds";
- power: power {
+ power_green: power {
label = "power";
gpios = <&gpio 32 1>;
+ default-state = "keep";
};
- power2: power2 {
+ power_red: power2 {
label = "power2";
gpios = <&gpio 33 1>;
};
@@ -9,9 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power;
+ running = &power;
+
dsl = &power;
internet = &online;
- power = &power;
wifi = &wlan;
};
};
@@ -120,6 +123,7 @@
power: power {
label = "power";
gpios = <&gpio 44 1>;
+ default-state = "keep";
};
voice {
label = "voice";
@@ -9,8 +9,10 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power_red;
+ failsafe = &power_red;
+
internet = &internet;
- power2 = &power2;
usb = &usb;
wifi = &wifi;
};
@@ -117,14 +119,13 @@
gpio-leds {
compatible = "gpio-leds";
- power2: power2 {
+ power_red: power2 {
label = "power2";
gpios = <&stp 4 0>;
};
internet: internet {
label = "internet";
gpios = <&stp 2 1>;
- default-state = "off";
};
internet2 {
label = "internet2";
@@ -9,9 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power_green;
+ failsafe = &power_green;
+ running = &power_green;
+
dsl = &dsl;
internet = &online;
- power = &power;
usb = &usb;
wifi = &wifi;
};
@@ -93,10 +96,10 @@
gpio-leds {
compatible = "gpio-leds";
- power: power {
+ power_green: power {
label = "power";
gpios = <&gpio 19 1>;
- default-state = "on";
+ default-state = "keep";
};
online: online {
label = "online";
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
dsl = &dsl;
internet = &online;
- power = &power;
- power2 = &power2;
wifi = &wifi;
};
};
@@ -146,7 +148,7 @@
power: power {
label = "power";
gpios = <&stp 11 1>;
- default-state = "on";
+ default-state = "keep";
};
power2: power2 {
label = "power2";
@@ -5,10 +5,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power2;
+ failsafe = &power;
+ running = &power2;
+
dsl = &dsl;
internet = &internet_green;
- power = &power;
- power2 = &power2;
usb = &usb1;
usb2 = &usb2;
wifi = &wireless_green;
@@ -304,6 +306,7 @@
power2: power2 { /* green */
label = "power2";
gpios = <&stp 23 1>;
+ default-state = "keep";
};
usb1: usb1 { /* green */
label = "usb1";
@@ -5,10 +5,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ /* the power led can't be controlled, use the wps led instead */
+ boot = &wps;
+ failsafe = &wps;
+
dsl = &dsl;
internet = &internet;
- /* the power led can't be controlled, use the wps led instead */
- power = &wps;
usb = &usb0;
usb2 = &usb2;
};
@@ -7,9 +7,11 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
internet = &dsl;
- power = &power;
- power2 = &power2;
};
};
@@ -165,6 +167,7 @@
power: power {
label = "power";
gpios = <&gpio 28 1>;
+ default-state = "keep";
};
};
};
@@ -7,10 +7,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
dsl = &dsl;
internet = &internet_green;
- power = &power;
- power2 = &power2;
wifi = &wifi;
};
};
@@ -234,6 +236,7 @@
power: power {
label = "power"; /* green */
gpios = <&gpio 14 1>;
+ default-state = "keep";
};
info_green {
@@ -8,10 +8,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power2;
+ failsafe = &power;
+ running = &power2;
+
dsl = &broadband_yellow;
internet = &internet_yellow;
- power = &power;
- power2 = &power2;
wifi = &wireless_yellow;
};
};
@@ -318,11 +320,11 @@
power2: power2 { /* yellow */
label = "power2";
gpios = <&stp 14 1>;
+ default-state = "keep";
};
power: power { /* red */
label = "power";
gpios = <&stp 15 1>;
- default-state = "on";
};
};
};
@@ -9,10 +9,12 @@
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
leds {
+ boot = &power;
+ failsafe = &power2;
+ running = &power;
+
dsl = &dsl;
internet = &online;
- power = &power;
- power2 = &power2;
usb = &usb;
wifi = &wifi;
};
@@ -139,6 +141,7 @@
power: power {
label = "power";
gpios = <&gpio 1 1>;
+ default-state = "keep";
};
power2: power2 {
label = "power2";
The BTHOMEHUBV5A has a RGB power led, where every colour is perfect to indicate the current boot state. This patch adds support for such cases. The existing led sequences should be the same as before. Boards which are using a led different from power (like TDW89x0) are changed to switch of the led after boot Signed-off-by: Mathias Kresin <openwrt@kresin.me> --- target/linux/lantiq/base-files/etc/board.d/01_leds | 18 -------- target/linux/lantiq/base-files/etc/diag.sh | 52 +++++++--------------- target/linux/lantiq/dts/ARV4510PW.dts | 7 ++- target/linux/lantiq/dts/ARV4518PWR01.dtsi | 6 ++- target/linux/lantiq/dts/ARV4519PW.dts | 7 ++- target/linux/lantiq/dts/ARV4520PW.dts | 11 +++-- target/linux/lantiq/dts/ARV4525PW.dts | 9 ++-- target/linux/lantiq/dts/ARV452CQW.dts | 8 +++- target/linux/lantiq/dts/ARV7510PW22.dts | 6 ++- target/linux/lantiq/dts/ARV7518PW.dts | 7 ++- target/linux/lantiq/dts/ARV7519PW.dts | 8 ++-- target/linux/lantiq/dts/ARV7519RW22.dts | 9 ++-- target/linux/lantiq/dts/ARV7525PW.dts | 7 ++- target/linux/lantiq/dts/ARV752DPW.dts | 6 ++- target/linux/lantiq/dts/ARV752DPW22.dts | 6 ++- target/linux/lantiq/dts/ARV8539PW22.dts | 8 +++- target/linux/lantiq/dts/BTHOMEHUBV2B.dts | 12 +++-- target/linux/lantiq/dts/BTHOMEHUBV3A.dts | 12 +++-- target/linux/lantiq/dts/BTHOMEHUBV5A.dts | 14 ++++-- target/linux/lantiq/dts/DGN1000B.dts | 7 ++- target/linux/lantiq/dts/DGN3500.dtsi | 11 +++-- target/linux/lantiq/dts/EASY80920.dtsi | 7 ++- target/linux/lantiq/dts/FRITZ3370.dts | 11 +++-- target/linux/lantiq/dts/FRITZ7320.dts | 6 ++- target/linux/lantiq/dts/GR7000.dts | 7 +-- target/linux/lantiq/dts/H201L.dts | 9 ++-- target/linux/lantiq/dts/P2601HNFX.dts | 8 ++-- target/linux/lantiq/dts/P2812HNUFX.dtsi | 7 ++- target/linux/lantiq/dts/TDW89X0.dtsi | 6 ++- target/linux/lantiq/dts/VG3503J.dtsi | 7 ++- target/linux/lantiq/dts/VGV7510KW22.dtsi | 7 ++- target/linux/lantiq/dts/VGV7519.dtsi | 8 ++-- target/linux/lantiq/dts/WBMR.dts | 7 ++- 33 files changed, 189 insertions(+), 132 deletions(-)