board.d: add support for gpio_switch sections
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 47762
This commit is contained in:
		| @@ -312,6 +312,24 @@ generate_led() { | |||||||
| 	json_select .. | 	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_init | ||||||
| json_load "$(cat ${CFG})" | json_load "$(cat ${CFG})" | ||||||
|  |  | ||||||
| @@ -326,6 +344,9 @@ for key in $keys; do generate_switch $key; done | |||||||
| json_get_keys keys rssimon | json_get_keys keys rssimon | ||||||
| for key in $keys; do generate_rssimon $key; done | 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 | json_get_keys keys led | ||||||
| for key in $keys; do generate_led $key; done | for key in $keys; do generate_led $key; done | ||||||
|  |  | ||||||
|   | |||||||
| @@ -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() { | board_config_update() { | ||||||
| 	json_init | 	json_init | ||||||
| 	[ -f ${CFG} ] && json_load "$(cat ${CFG})" | 	[ -f ${CFG} ] && json_load "$(cat ${CFG})" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Jo-Philipp Wich
					Jo-Philipp Wich