[OpenWrt-Devel] [PATCH v2 3/4] uci: add support for speed mask to switch config init scripts

Michal michal.cieslakiewicz at wp.pl
Sat Feb 13 07:19:01 EST 2016


From: Michal Cieslakiewicz <michal.cieslakiewicz at wp.pl>

This patch adds extra parameter to switch LED trigger initialization
functions.  New functionality maintains backward compatibility, so
calling functions without setting new speed_mask parameter works
as expected.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz at wp.pl>
---
 Changes:
 * dropped unnecessary checks for uci and json (thanks to Jo-Philipp Wich)

 package/base-files/files/bin/config_generate           | 5 +++--
 package/base-files/files/etc/init.d/led                | 5 ++++-
 package/base-files/files/lib/functions/uci-defaults.sh | 2 ++
 3 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate
index 92eb14b..03c4da1 100755
--- a/package/base-files/files/bin/config_generate
+++ b/package/base-files/files/bin/config_generate
@@ -296,10 +296,11 @@ generate_led() {
 		;;
 
 		switch)
-			local port_mask
-			json_get_vars port_mask
+			local port_mask speed_mask
+			json_get_vars port_mask speed_mask
 			uci -q batch <<-EOF
 				set system.$cfg.port_mask='$port_mask'
+				set system.$cfg.speed_mask='$speed_mask'
 			EOF
 		;;
 
diff --git a/package/base-files/files/etc/init.d/led b/package/base-files/files/etc/init.d/led
index 84cd028..d1521a9 100755
--- a/package/base-files/files/etc/init.d/led
+++ b/package/base-files/files/etc/init.d/led
@@ -88,11 +88,14 @@ load_led() {
 			;;
 
 		switch[0-9]*)
-			local port_mask
+			local port_mask speed_mask
 
 			config_get port_mask $1 port_mask
 			[ -n "$port_mask" ] && \
 				echo $port_mask > /sys/class/leds/${sysfs}/port_mask
+			config_get speed_mask $1 speed_mask
+			[ -n "$speed_mask" ] && \
+				echo $speed_mask > /sys/class/leds/${sysfs}/speed_mask
 			;;
 		esac
 	}
diff --git a/package/base-files/files/lib/functions/uci-defaults.sh b/package/base-files/files/lib/functions/uci-defaults.sh
index de3f180..8f199d2 100755
--- a/package/base-files/files/lib/functions/uci-defaults.sh
+++ b/package/base-files/files/lib/functions/uci-defaults.sh
@@ -410,6 +410,7 @@ ucidef_set_led_switch() {
 	local sysfs="$3"
 	local trigger="$4"
 	local port_mask="$5"
+	local speed_mask="$6"
 
 	json_select_object led
 
@@ -419,6 +420,7 @@ ucidef_set_led_switch() {
 	json_add_string sysfs "$sysfs"
 	json_add_string trigger "$trigger"
 	json_add_string port_mask "$port_mask"
+	json_add_string speed_mask "$speed_mask"
 	json_select ..
 
 	json_select ..
-- 
2.6.4
_______________________________________________
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