diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2015-12-04 15:02:32 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2015-12-04 15:02:32 +0000 |
commit | 08078df83dc2ec61e2272c2abf105d28ae44681c (patch) | |
tree | a7e8f92f9936aed540864f15a8ef1cceb45ec4bf | |
parent | ba8a44995fe321bfc57a61fdb2a82cabd7605e94 (diff) | |
download | upstream-08078df83dc2ec61e2272c2abf105d28ae44681c.tar.gz upstream-08078df83dc2ec61e2272c2abf105d28ae44681c.tar.bz2 upstream-08078df83dc2ec61e2272c2abf105d28ae44681c.zip |
board.d: add support for gpio_switch sections
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 47762
-rwxr-xr-x | package/base-files/files/bin/config_generate | 21 | ||||
-rwxr-xr-x | package/base-files/files/lib/functions/uci-defaults-new.sh | 15 |
2 files changed, 36 insertions, 0 deletions
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})" |