[openwrt/openwrt] bcm27xx: base-files: diag: improve LEDs behaviour
LEDE Commits
lede-commits at lists.infradead.org
Wed Jul 3 12:03:13 PDT 2024
noltari pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/37636a8752ecdc0ab399c3f38979c6cfb5576bc6
commit 37636a8752ecdc0ab399c3f38979c6cfb5576bc6
Author: Álvaro Fernández Rojas <noltari at gmail.com>
AuthorDate: Wed Jul 3 20:56:56 2024 +0200
bcm27xx: base-files: diag: improve LEDs behaviour
As reported in https://github.com/openwrt/openwrt/issues/15834 using the PWR
LED for indicating diag status is confusing since this is usually used for
power supply failures on RPi devices.
This commit uses ACT LED for diag status and restores it to mmc activity.
Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
---
target/linux/bcm27xx/base-files/etc/diag.sh | 26 +++++++++++++++++++-------
1 file changed, 19 insertions(+), 7 deletions(-)
diff --git a/target/linux/bcm27xx/base-files/etc/diag.sh b/target/linux/bcm27xx/base-files/etc/diag.sh
index 601448fbe3..c0c8e7f2cf 100644
--- a/target/linux/bcm27xx/base-files/etc/diag.sh
+++ b/target/linux/bcm27xx/base-files/etc/diag.sh
@@ -5,11 +5,23 @@
. /lib/functions.sh
. /lib/functions/leds.sh
+status_led_restore_trigger() {
+ local led_lc=$(echo "$status_led" | awk '{print tolower($0)}')
+ local led_path="/proc/device-tree/leds/led-$led_lc"
+ local led_trigger
+
+ [ -d "$led_path" ] && \
+ led_trigger=$(cat "$led_path/linux,default-trigger" 2>/dev/null)
+
+ [ -n "$led_trigger" ] && \
+ led_set_attr $status_led "trigger" "$led_trigger"
+}
+
set_state() {
- if [ -d "/sys/class/leds/PWR" ]; then
- status_led="PWR"
- else
+ if [ -d "/sys/class/leds/ACT" ]; then
status_led="ACT"
+ else
+ return
fi
case "$1" in
@@ -22,11 +34,11 @@ set_state() {
preinit_regular)
status_led_blink_preinit_regular
;;
- upgrade)
- status_led_blink_preinit_regular
- ;;
+ upgrade)
+ status_led_blink_preinit_regular
+ ;;
done)
- status_led_on
+ status_led_restore_trigger
;;
esac
}
More information about the lede-commits
mailing list