[OpenWrt-Devel] [PATCH 08/12] lantiq: use default leds defined in DTS

Mathias Kresin openwrt at kresin.me
Wed Dec 23 11:29:15 EST 2015


Remove all now double defined leds from the led board file. Use pppoe
as default for all broadband connections, since it's the default in
OpenWrt now.

Rename the the wifi leds to make sure, the not applicable default
values get overwritten.

Signed-off-by: Mathias Kresin <openwrt at kresin.me>
---
 target/linux/lantiq/base-files/etc/board.d/01_leds | 27 ++++++----------------
 .../lantiq/base-files/lib/functions/lantiq.sh      | 16 +++++++++++++
 2 files changed, 23 insertions(+), 20 deletions(-)

diff --git a/target/linux/lantiq/base-files/etc/board.d/01_leds b/target/linux/lantiq/base-files/etc/board.d/01_leds
index 9d57cf3..7a25b6d 100755
--- a/target/linux/lantiq/base-files/etc/board.d/01_leds
+++ b/target/linux/lantiq/base-files/etc/board.d/01_leds
@@ -9,10 +9,10 @@
 
 board_config_update
 
-[ -e "/sys/class/leds/wifi" ] && ucidef_set_led_wlan "wifi" "wifi" "wifi" "phy0tpt"
-[ -e "/sys/class/leds/usb" ] && ucidef_set_led_usbdev "usb" "usb" "usb" "1-1"
-[ -e "/sys/class/leds/usb2" ] && ucidef_set_led_usbdev "usb2" "usb2" "usb2" "2-1"
-[ -e "/sys/class/leds/internet" ] && ucidef_set_led_netdev "internet" "internet" "internet" "pppoe-wan"
+[ -n "$(lantiq_is_dt_led_chosen wifi)" ] && ucidef_set_led_wlan "wifi" "wifi" "$(lantiq_get_dt_led_chosen wifi)" "phy0tpt"
+[ -n "$(lantiq_is_dt_led_chosen usb)" ] && ucidef_set_led_usbdev "usb" "usb" "$(lantiq_get_dt_led_chosen usb)" "1-1"
+[ -n "$(lantiq_is_dt_led_chosen usb2)" ] && ucidef_set_led_usbdev "usb2" "usb2" "$(lantiq_get_dt_led_chosen usb2)" "2-1"
+[ -n "$(lantiq_is_dt_led_chosen internet)" ] && ucidef_set_led_netdev "internet" "internet" "$(lantiq_get_dt_led_chosen internet)" "pppoe-wan"
 
 board=$(lantiq_board_name)
 
@@ -22,19 +22,12 @@ VG3503J)
 	;;
 BTHOMEHUBV2B)
 	ucidef_set_led_default "power" "power" "soc:blue:power" "1"
-#	ucidef_set_led_wlan "wifi" "wifi" "soc:blue:wireless" "phy0radio"
-	ucidef_set_led_wlan "wifi" "wifi" "soc:blue:wireless" "phy0tpt"
-	ucidef_set_led_netdev "internet" "internet" "soc:blue:broadband" "pppoa-wan"
 	;;
 BTHOMEHUBV3A)
 	ucidef_set_led_default "power" "power" "soc:blue:power" "1"
-	ucidef_set_led_wlan "wifi" "wifi" "soc:blue:wireless" "phy0tpt"
-	ucidef_set_led_netdev "internet" "internet" "soc:blue:broadband" "pppoa-wan"
 	;;
 BTHOMEHUBV5A)
 	ucidef_set_led_default "power" "power" "soc:blue:power" "1"
-	ucidef_set_led_wlan "wifi" "wifi" "soc:blue:wireless" "phy0tpt"
-	ucidef_set_led_netdev "internet" "internet" "soc:blue:broadband" "pppoa-wan"
 	ucidef_set_led_default "dimmed" "dimmed" "dimmed" "0"
 	;;
 VGV7510KW22)
@@ -42,33 +35,27 @@ VGV7510KW22)
 	ucidef_set_led_default "power2" "power2" "power2" "0"
 	ucidef_set_led_wlan "wifi" "wifi" "wifi" "phy0radio"
 	ucidef_set_led_netdev "dsl" "dsl" "dsl" "nas0"
-	ucidef_set_led_netdev "internet_green" "internet_green" "internet_green" "pppoe-wan"
 	;;
 VGV7519)
 	ucidef_set_led_default "power" "power" "power" "0"
 	ucidef_set_led_default "power2" "power2" "power2" "1"
-	ucidef_set_led_wlan "wireless_yellow" "wireless_yellow" "wireless_yellow" "phy0radio"
-	ucidef_set_led_netdev "internet_yellow" "internet_yellow" "internet_yellow" "nas0"
-	ucidef_set_led_netdev "broadband_yellow" "broadband_yellow" "broadband_yellow" "pppoe-wan"
+	ucidef_set_led_wlan "wifi" "wifi" "wireless_yellow" "phy0radio"
+	ucidef_set_led_netdev "broadband_yellow" "broadband_yellow" "broadband_yellow" "nas0"
 	;;
 P2812HNUF*)
 	ucidef_set_led_default "power" "power" "power" "0"
 	ucidef_set_led_default "power2" "power2" "power2" "1"
-	ucidef_set_led_wlan "wireless_green" "wireless_green" "wireless_green" "phy0radio"
+	ucidef_set_led_wlan "wifi" "wifi" "wireless_green" "phy0radio"
 	ucidef_set_led_netdev "dsl" "dsl" "dsl" "nas0"
-	ucidef_set_led_netdev "internet_green" "internet_green" "internet_green" "pppoe-wan"
 	;;
 ARV7519RW22)
 	ucidef_set_led_default "power" "power" "power" "1"
-	ucidef_set_led_netdev "internet_green" "internet_green" "internet_green" "pppoe-wan"
 	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"
-        ucidef_set_led_wlan "wifi" "wifi" "soc:green:wireless" "phy0tpt"
         ucidef_set_led_netdev "dsl" "dsl" "soc:green:dsl" "nas0"
-        ucidef_set_led_netdev "online" "online" "soc:green:online" "pppoe-wan"
         ;;
 *)
 	;;
diff --git a/target/linux/lantiq/base-files/lib/functions/lantiq.sh b/target/linux/lantiq/base-files/lib/functions/lantiq.sh
index 88da794..845c43d 100644
--- a/target/linux/lantiq/base-files/lib/functions/lantiq.sh
+++ b/target/linux/lantiq/base-files/lib/functions/lantiq.sh
@@ -27,3 +27,19 @@ lantiq_board_name() {
 
 	echo "$name"
 }
+
+lantiq_is_dt_led_chosen() {
+	[ -f "/sys/firmware/devicetree/base/chosen/leds/$1" ] && echo "true"
+}
+
+lantiq_get_dt_led_chosen() {
+	local label
+	local nodepath
+    local basepath="/sys/firmware/devicetree/base"
+    local chosenpath="$basepath/chosen/leds/$1"
+
+	[ -f "$chosenpath" ] && nodepath=$(cat "$chosenpath")
+	[ -n "$nodepath" ] && label=$(cat "$basepath$nodepath/label")
+
+	echo "$label"
+}
-- 
1.9.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list