diff options
author | Dmitry Tunin <hanipouspilot@gmail.com> | 2018-08-14 08:54:38 +0300 |
---|---|---|
committer | Mathias Kresin <dev@kresin.me> | 2018-08-15 07:42:36 +0200 |
commit | 7a873974f7fd04b4d5563df2b7ed91e9be3b38b7 (patch) | |
tree | 2ab97e225602043b226fa09d68dc35cf6f8338bb | |
parent | 37af596593b0e84d0a076ab8f173066e3d7bc810 (diff) | |
download | mtk-20170518-7a873974f7fd04b4d5563df2b7ed91e9be3b38b7.zip mtk-20170518-7a873974f7fd04b4d5563df2b7ed91e9be3b38b7.tar.gz mtk-20170518-7a873974f7fd04b4d5563df2b7ed91e9be3b38b7.tar.bz2 |
ath79: add support for indicating the boot state using multiple leds
Use diag.sh version used for apm821xx, ipq40xx and ipq806x, which
supports different leds for the different boot states.
The existing led sequences should be the same as before.
Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
[reword commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
33 files changed, 157 insertions, 37 deletions
diff --git a/target/linux/ath79/base-files/etc/diag.sh b/target/linux/ath79/base-files/etc/diag.sh index 5a21006..a3a7047 100644..100755 --- a/target/linux/ath79/base-files/etc/diag.sh +++ b/target/linux/ath79/base-files/etc/diag.sh @@ -2,21 +2,46 @@ . /lib/functions/leds.sh -status_led="$(get_dt_led status)" +boot="$(get_dt_led boot)" +failsafe="$(get_dt_led failsafe)" +running="$(get_dt_led running)" +upgrade="$(get_dt_led upgrade)" + +get_status_led() { + status_led="$boot" +} set_state() { + status_led="$boot" + case "$1" in preinit) status_led_blink_preinit ;; failsafe) + status_led_off + [ -n "$running" ] && { + status_led="$running" + status_led_off + } + status_led="$failsafe" status_led_blink_failsafe ;; preinit_regular) status_led_blink_preinit_regular ;; + upgrade) + [ -n "$running" ] && { + status_led="$upgrade" + status_led_blink_preinit_regular + } + ;; done) - status_led_on + status_led_off + [ -n "$running" ] && { + status_led="$running" + status_led_on + } ;; esac } diff --git a/target/linux/ath79/dts/ar7161_dlink_dir-825-b1.dts b/target/linux/ath79/dts/ar7161_dlink_dir-825-b1.dts index 489f4a4..c439d4f 100644 --- a/target/linux/ath79/dts/ar7161_dlink_dir-825-b1.dts +++ b/target/linux/ath79/dts/ar7161_dlink_dir-825-b1.dts @@ -11,7 +11,10 @@ model = "D-Link DIR825B1"; aliases { - led-status = &orange_power; + led-boot = &orange_power; + led-failsafe = &orange_power; + led-running = &orange_power; + led-upgrade = &orange_power; }; chosen { diff --git a/target/linux/ath79/dts/ar7161_netgear_wndr3700.dtsi b/target/linux/ath79/dts/ar7161_netgear_wndr3700.dtsi index ef9984c..f584945 100644 --- a/target/linux/ath79/dts/ar7161_netgear_wndr3700.dtsi +++ b/target/linux/ath79/dts/ar7161_netgear_wndr3700.dtsi @@ -8,7 +8,10 @@ / { aliases { - led-status = &power_green; + led-boot = &power_green; + led-failsafe = &power_green; + led-running = &power_green; + led-upgrade = &power_green; }; chosen { diff --git a/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi b/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi index 8ee4148..f481157 100644 --- a/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi +++ b/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi @@ -11,7 +11,10 @@ model = "Netgear WNR612 V2"; aliases { - led-status = &led_power; + led-boot = &power; + led-failsafe = &power; + led-running = &power; + led-upgrade = &power; }; gpio-keys-polled { @@ -28,7 +31,7 @@ gpio-leds { compatible = "gpio-leds"; - led_power: power { + power: power { label = "netgear:green:power"; gpios = <&gpio 11 GPIO_ACTIVE_LOW>; }; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi b/target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi index 80623d5..788d265 100644 --- a/target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi @@ -7,7 +7,10 @@ / { aliases { - led-status = &led_system; + led-boot = &led_system; + led-failsafe = &led_system; + led-running = &led_system; + led-upgrade = &led_system; }; gpio-keys-polled { diff --git a/target/linux/ath79/dts/ar7241_tplink.dtsi b/target/linux/ath79/dts/ar7241_tplink.dtsi index ef24879..4078ced 100644 --- a/target/linux/ath79/dts/ar7241_tplink.dtsi +++ b/target/linux/ath79/dts/ar7241_tplink.dtsi @@ -7,7 +7,10 @@ / { aliases { - led-status = &led_system; + led-boot = &led_system; + led-failsafe = &led_system; + led-running = &led_system; + led-upgrade = &led_system; }; gpio-keys-polled { diff --git a/target/linux/ath79/dts/ar7241_ubnt_unifi.dts b/target/linux/ath79/dts/ar7241_ubnt_unifi.dts index ddddba2..2cb0250 100644 --- a/target/linux/ath79/dts/ar7241_ubnt_unifi.dts +++ b/target/linux/ath79/dts/ar7241_ubnt_unifi.dts @@ -11,7 +11,10 @@ model = "Ubiquiti UniFi AP"; aliases { - led-status = &dome_green; + led-boot = &dome_green; + led-failsafe = &dome_green; + led-running = &dome_green; + led-upgrade = &dome_green; }; extosc: ref { diff --git a/target/linux/ath79/dts/ar7242_avm_fritz300e.dts b/target/linux/ath79/dts/ar7242_avm_fritz300e.dts index db4bcc6..0a14266 100644 --- a/target/linux/ath79/dts/ar7242_avm_fritz300e.dts +++ b/target/linux/ath79/dts/ar7242_avm_fritz300e.dts @@ -11,7 +11,10 @@ model = "AVM FRITZ!WLAN Repeater 300E"; aliases { - led-status = &power; + led-boot = &power; + led-failsafe = &power; + led-running = &power; + led-upgrade = &power; }; gpio-keys { diff --git a/target/linux/ath79/dts/ar7242_tplink_tl-wr2543-v1.dts b/target/linux/ath79/dts/ar7242_tplink_tl-wr2543-v1.dts index 0cd9026..e899e02 100644 --- a/target/linux/ath79/dts/ar7242_tplink_tl-wr2543-v1.dts +++ b/target/linux/ath79/dts/ar7242_tplink_tl-wr2543-v1.dts @@ -11,7 +11,10 @@ model = "TP-LINK TL-WR2543N/ND"; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; chosen { diff --git a/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts b/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts index b97b57f..5c6cb63 100644 --- a/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts +++ b/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts @@ -11,7 +11,10 @@ model = "TP-Link TL-WR1043ND Version 1"; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; extosc: ref { diff --git a/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts b/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts index 9928a80..f3927cc 100644 --- a/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts +++ b/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts @@ -11,7 +11,10 @@ model = "TP-Link TL-WR941N/ND v2/v3"; aliases { - led-status = &led_system; + led-boot = &led_system; + led-failsafe = &led_system; + led-running = &led_system; + led-upgrade = &led_system; }; keys { diff --git a/target/linux/ath79/dts/ar9330_glinet_ar150.dts b/target/linux/ath79/dts/ar9330_glinet_ar150.dts index 3b8f7a2..34240f4 100644 --- a/target/linux/ath79/dts/ar9330_glinet_ar150.dts +++ b/target/linux/ath79/dts/ar9330_glinet_ar150.dts @@ -12,7 +12,9 @@ aliases { serial0 = &uart; - led-status = &wlan; + led-boot = &wlan; + led-failsafe = &wlan; + led-upgrade = &wlan; }; leds { diff --git a/target/linux/ath79/dts/ar9331_embeddedwireless_dorin.dts b/target/linux/ath79/dts/ar9331_embeddedwireless_dorin.dts index 0332ec2..dcd7f33 100644 --- a/target/linux/ath79/dts/ar9331_embeddedwireless_dorin.dts +++ b/target/linux/ath79/dts/ar9331_embeddedwireless_dorin.dts @@ -11,7 +11,10 @@ compatible = "embeddedwireless,dorin", "qca,ar9331"; aliases { - led-status = &status; + led-boot = &status; + led-failsafe = &status; + led-running = &status; + led-upgrade = &status; serial0 = &uart; }; diff --git a/target/linux/ath79/dts/ar9331_pisen_wmm003n.dts b/target/linux/ath79/dts/ar9331_pisen_wmm003n.dts index 223eaa2..d44ce67 100644 --- a/target/linux/ath79/dts/ar9331_pisen_wmm003n.dts +++ b/target/linux/ath79/dts/ar9331_pisen_wmm003n.dts @@ -12,7 +12,10 @@ aliases { serial0 = &uart; - led-status = &led_system; + led-boot = &led_system; + led-failsafe = &led_system; + led-running = &led_system; + led-upgrade = &led_system; }; gpio-keys-polled { diff --git a/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts b/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts index 3045d22..5f7519e 100644 --- a/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts +++ b/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts @@ -12,7 +12,10 @@ aliases { serial0 = &uart; - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; leds { diff --git a/target/linux/ath79/dts/ar9331_tplink_tl-wr703n_tl-mr10u.dtsi b/target/linux/ath79/dts/ar9331_tplink_tl-wr703n_tl-mr10u.dtsi index e061cbe..213a965 100644 --- a/target/linux/ath79/dts/ar9331_tplink_tl-wr703n_tl-mr10u.dtsi +++ b/target/linux/ath79/dts/ar9331_tplink_tl-wr703n_tl-mr10u.dtsi @@ -9,7 +9,10 @@ / { aliases { serial0 = &uart; - led-status = &led_system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; gpio-keys-polled { @@ -27,7 +30,7 @@ gpio-leds { compatible = "gpio-leds"; - led_system: system { + system: system { label = "tl-wr703n:blue:system"; gpios = <&gpio 27 GPIO_ACTIVE_LOW>; }; diff --git a/target/linux/ath79/dts/ar9331_tplink_tl-wr741nd-v4.dtsi b/target/linux/ath79/dts/ar9331_tplink_tl-wr741nd-v4.dtsi index 770ab56..f28e56b 100644 --- a/target/linux/ath79/dts/ar9331_tplink_tl-wr741nd-v4.dtsi +++ b/target/linux/ath79/dts/ar9331_tplink_tl-wr741nd-v4.dtsi @@ -12,7 +12,10 @@ aliases { serial0 = &uart; - led-status = &led_system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; gpio-keys-polled { @@ -64,7 +67,7 @@ gpios = <&gpio 1 GPIO_ACTIVE_HIGH>; }; - led_system: system { + system: system { label = "tp-link:green:system"; gpios = <&gpio 27 GPIO_ACTIVE_HIGH>; }; diff --git a/target/linux/ath79/dts/ar9341_pcs_cr3000.dts b/target/linux/ath79/dts/ar9341_pcs_cr3000.dts index dace6c3..3a7903e 100644 --- a/target/linux/ath79/dts/ar9341_pcs_cr3000.dts +++ b/target/linux/ath79/dts/ar9341_pcs_cr3000.dts @@ -12,7 +12,10 @@ aliases { serial0 = &uart; - led-status = &status; + led-boot = &status; + led-failsafe = &status; + led-running = &status; + led-upgrade = &status; }; keys { diff --git a/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts b/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts index 903044e..206619e 100644 --- a/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts +++ b/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts @@ -15,7 +15,10 @@ }; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; leds { diff --git a/target/linux/ath79/dts/ar9344_pcs_cap324.dts b/target/linux/ath79/dts/ar9344_pcs_cap324.dts index ada28d6..bc146bb 100644 --- a/target/linux/ath79/dts/ar9344_pcs_cap324.dts +++ b/target/linux/ath79/dts/ar9344_pcs_cap324.dts @@ -12,7 +12,10 @@ aliases { serial0 = &uart; - led-status = &status; + led-boot = &status; + led-failsafe = &status; + led-running = &status; + led-upgrade = &status; }; keys { diff --git a/target/linux/ath79/dts/ar9344_pcs_cr5000.dts b/target/linux/ath79/dts/ar9344_pcs_cr5000.dts index 7c9103c..869322a 100644 --- a/target/linux/ath79/dts/ar9344_pcs_cr5000.dts +++ b/target/linux/ath79/dts/ar9344_pcs_cr5000.dts @@ -12,7 +12,10 @@ aliases { serial0 = &uart; - led-status = &status; + led-boot = &status; + led-failsafe = &status; + led-running = &status; + led-upgrade = &status; }; keys { diff --git a/target/linux/ath79/dts/ar9344_tplink_tl-wdr4300.dtsi b/target/linux/ath79/dts/ar9344_tplink_tl-wdr4300.dtsi index d2c88fc..268df47 100644 --- a/target/linux/ath79/dts/ar9344_tplink_tl-wdr4300.dtsi +++ b/target/linux/ath79/dts/ar9344_tplink_tl-wdr4300.dtsi @@ -10,7 +10,10 @@ compatible = "tplink,tl-wdr4300"; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; leds { diff --git a/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v11.dts b/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v11.dts index 7d1cce2..d73eae4 100644 --- a/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v11.dts +++ b/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v11.dts @@ -11,7 +11,10 @@ model = "TP-Link TL-WR841N/ND Version 11"; aliases { - led-status = &system_led; + led-boot = &system_led; + led-failsafe = &system_led; + led-running = &system_led; + led-upgrade = &system_led; }; }; diff --git a/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v9.dts b/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v9.dts index c2c9a9d..ac069ee 100644 --- a/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v9.dts +++ b/target/linux/ath79/dts/qca9533_tplink_tl-wr841-v9.dts @@ -11,6 +11,9 @@ model = "TP-Link TL-WR841N/ND Version 9"; aliases { - led-status = &qss_led; + led-boot = &qss_led; + led-failsafe = &qss_led; + led-running = &qss_led; + led-upgrade = &qss_led; }; }; diff --git a/target/linux/ath79/dts/qca9557_iodata_wn-ac1600dgr2.dts b/target/linux/ath79/dts/qca9557_iodata_wn-ac1600dgr2.dts index 54b5349..67db0ee 100644 --- a/target/linux/ath79/dts/qca9557_iodata_wn-ac1600dgr2.dts +++ b/target/linux/ath79/dts/qca9557_iodata_wn-ac1600dgr2.dts @@ -11,7 +11,10 @@ model = "I-O DATA WN-AC1600DGR2"; aliases { - led-status = &power; + led-boot = &power; + led-failsafe = &power; + led-running = &power; + led-upgrade = &power; }; chosen { diff --git a/target/linux/ath79/dts/qca9558_buffalo_bhr-4grv2.dts b/target/linux/ath79/dts/qca9558_buffalo_bhr-4grv2.dts index 25c673a..e2611e5 100644 --- a/target/linux/ath79/dts/qca9558_buffalo_bhr-4grv2.dts +++ b/target/linux/ath79/dts/qca9558_buffalo_bhr-4grv2.dts @@ -11,7 +11,10 @@ model = "Buffalo BHR-4GRV2"; aliases { - led-status = &power; + led-boot = &power; + led-failsafe = &power; + led-running = &power; + led-upgrade = &power; }; chosen { diff --git a/target/linux/ath79/dts/qca9558_ocedo_koala.dts b/target/linux/ath79/dts/qca9558_ocedo_koala.dts index 6020e46..748eec8 100644 --- a/target/linux/ath79/dts/qca9558_ocedo_koala.dts +++ b/target/linux/ath79/dts/qca9558_ocedo_koala.dts @@ -15,7 +15,10 @@ }; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; leds { diff --git a/target/linux/ath79/dts/qca9558_tplink_archer-c7.dtsi b/target/linux/ath79/dts/qca9558_tplink_archer-c7.dtsi index d6fb29e..1d6e9a0 100644 --- a/target/linux/ath79/dts/qca9558_tplink_archer-c7.dtsi +++ b/target/linux/ath79/dts/qca9558_tplink_archer-c7.dtsi @@ -12,7 +12,10 @@ }; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; gpio_leds: leds { diff --git a/target/linux/ath79/dts/qca9558_tplink_tl-wdr4900-v2.dts b/target/linux/ath79/dts/qca9558_tplink_tl-wdr4900-v2.dts index 412cf2b..4a3cda5 100644 --- a/target/linux/ath79/dts/qca9558_tplink_tl-wdr4900-v2.dts +++ b/target/linux/ath79/dts/qca9558_tplink_tl-wdr4900-v2.dts @@ -15,7 +15,10 @@ }; aliases { - led-status = &led_system; + led-boot = &led_system; + led-failsafe = &led_system; + led-running = &led_system; + led-upgrade = &led_system; }; gpio_leds: leds { diff --git a/target/linux/ath79/dts/qca9558_tplink_tl-wr1043nd.dtsi b/target/linux/ath79/dts/qca9558_tplink_tl-wr1043nd.dtsi index fb08f86..c91d3cc 100644 --- a/target/linux/ath79/dts/qca9558_tplink_tl-wr1043nd.dtsi +++ b/target/linux/ath79/dts/qca9558_tplink_tl-wr1043nd.dtsi @@ -12,7 +12,10 @@ }; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; leds { diff --git a/target/linux/ath79/dts/qca9563_phicomm_k2t.dts b/target/linux/ath79/dts/qca9563_phicomm_k2t.dts index ca6d4ec..e99a1af 100644 --- a/target/linux/ath79/dts/qca9563_phicomm_k2t.dts +++ b/target/linux/ath79/dts/qca9563_phicomm_k2t.dts @@ -11,7 +11,10 @@ compatible = "phicomm,k2t"; aliases { - led-status = &status_red; + led-boot = &status_red; + led-failsafe = &status_red; + led-running = &status_red; + led-upgrade = &status_red; }; chosen { diff --git a/target/linux/ath79/dts/qca9563_tplink_re450-v2.dts b/target/linux/ath79/dts/qca9563_tplink_re450-v2.dts index 852f1c9..c2e2910 100644 --- a/target/linux/ath79/dts/qca9563_tplink_re450-v2.dts +++ b/target/linux/ath79/dts/qca9563_tplink_re450-v2.dts @@ -15,7 +15,10 @@ }; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; mdio-gpio0 = &mdio2; }; diff --git a/target/linux/ath79/dts/qca9563_tplink_tl-wr1043n.dtsi b/target/linux/ath79/dts/qca9563_tplink_tl-wr1043n.dtsi index 056fe4e..3f6d48a 100644 --- a/target/linux/ath79/dts/qca9563_tplink_tl-wr1043n.dtsi +++ b/target/linux/ath79/dts/qca9563_tplink_tl-wr1043n.dtsi @@ -12,7 +12,10 @@ }; aliases { - led-status = &system; + led-boot = &system; + led-failsafe = &system; + led-running = &system; + led-upgrade = &system; }; gpio_leds: leds { |