From ac9bed4bc074d881d3d9ebe8f316dccff397723a Mon Sep 17 00:00:00 2001
From: Jo-Philipp Wich <jow@openwrt.org>
Date: Thu, 3 Dec 2015 22:27:02 +0000
Subject: [PATCH] base-files: board.d: support timer leds

Add ucidef_set_led_timer() and handling for it to config_generate.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47731
---
 package/base-files/files/bin/config_generate  | 10 ++++++++++
 .../files/lib/functions/uci-defaults-new.sh   | 20 +++++++++++++++++++
 2 files changed, 30 insertions(+)

diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate
index 7e0e2acd3b..264f7d3ed1 100755
--- a/package/base-files/files/bin/config_generate
+++ b/package/base-files/files/bin/config_generate
@@ -236,6 +236,16 @@ generate_led() {
 				set system.$cfg.port_mask='$port_mask'
 			EOF
 		;;
+
+		timer)
+			local delayon delayoff
+			json_get_vars delayon delayoff
+			uci -q batch <<-EOF
+				set system.$cfg.trigger='timer'
+				set system.$cfg.delayon='$delayon'
+				set system.$cfg.delayoff='$delayoff'
+			EOF
+		;;
 	esac
 
 	json_select ..
diff --git a/package/base-files/files/lib/functions/uci-defaults-new.sh b/package/base-files/files/lib/functions/uci-defaults-new.sh
index 37978a839a..9fa3fa204e 100755
--- a/package/base-files/files/lib/functions/uci-defaults-new.sh
+++ b/package/base-files/files/lib/functions/uci-defaults-new.sh
@@ -422,6 +422,26 @@ ucidef_set_led_ide() {
 	json_select ..
 }
 
+ucidef_set_led_timer() {
+	local cfg="led_$1"
+	local name="$2"
+	local sysfs="$3"
+	local delayon="$4"
+	local delayoff="$5"
+
+	json_select_object led
+
+	json_select_object "$1"
+	json_add_string type timer
+	json_add_string name "$name"
+	json_add_string sysfs "$sysfs"
+	json_add_int delayon "$delayon"
+	json_add_int delayoff "$delayoff"
+	json_select ..
+
+	json_select ..
+}
+
 ucidef_set_led_rssi() {
 	local cfg="led_$1"
 	local name="$2"
-- 
GitLab