Browse Source

base-files: add support for speed mask to switch config init scripts

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 <[email protected]>

SVN-Revision: 48776
Felix Fietkau 10 năm trước cách đây
mục cha
commit
285d9e364e

+ 3 - 2
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
 		;;
 

+ 4 - 1
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
 	}

+ 2 - 0
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 ..