From: Jo-Philipp Wich Date: Fri, 4 Dec 2015 15:02:32 +0000 (+0000) Subject: board.d: add support for gpio_switch sections X-Git-Tag: reboot~1299 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=08078df83dc2ec61e2272c2abf105d28ae44681c;p=openwrt%2Fstaging%2Fxback.git board.d: add support for gpio_switch sections Signed-off-by: Jo-Philipp Wich SVN-Revision: 47762 --- diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate index 49784ebfae..9218788b5e 100755 --- a/package/base-files/files/bin/config_generate +++ b/package/base-files/files/bin/config_generate @@ -312,6 +312,24 @@ generate_led() { json_select .. } +generate_gpioswitch() { + local cfg="$1" + + json_select gpioswitch + json_select "$cfg" + local name pin default + json_get_vars name pin default + uci -q batch <<-EOF + delete system.$cfg + set system.$cfg='gpio_switch' + set system.$cfg.name='$name' + set system.$cfg.gpio_pin='$pin' + set system.$cfg.default='$default' + EOF + json_select .. + json_select .. +} + json_init json_load "$(cat ${CFG})" @@ -326,6 +344,9 @@ for key in $keys; do generate_switch $key; done json_get_keys keys rssimon for key in $keys; do generate_rssimon $key; done +json_get_keys keys gpioswitch +for key in $keys; do generate_gpioswitch $key; done + json_get_keys keys led for key in $keys; do generate_led $key; done 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 61aa6e168e..de3f180cbb 100755 --- a/package/base-files/files/lib/functions/uci-defaults-new.sh +++ b/package/base-files/files/lib/functions/uci-defaults-new.sh @@ -540,6 +540,21 @@ ucidef_set_rssimon() { } +ucidef_add_gpio_switch() { + local cfg="$1" + local name="$2" + local pin="$3" + local default="${4:-0}" + + json_select_object gpioswitch + json_select_object "$cfg" + json_add_string name "$name" + json_add_int pin "$pin" + json_add_int default "$default" + json_select .. + json_select .. +} + board_config_update() { json_init [ -f ${CFG} ] && json_load "$(cat ${CFG})"