Use the "low" and "high" values to configure the GPIO as an output with that initial value. It ensures that the gpio doesn't have a unwanted value during the time the direction is set to ouput and the actual value is applied.
We don't need to take care of the GPIO polarity for now, since our exported GPIOs are always active low. Cc: Lars Kruse <li...@sumpfralle.de> Signed-off-by: Mathias Kresin <d...@kresin.me> --- package/base-files/Makefile | 2 +- package/base-files/files/etc/init.d/gpio_switch | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 728d787..d0c9d6b 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -12,7 +12,7 @@ include $(INCLUDE_DIR)/version.mk include $(INCLUDE_DIR)/feeds.mk PKG_NAME:=base-files -PKG_RELEASE:=179 +PKG_RELEASE:=180 PKG_FLAGS:=nonshared PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/ diff --git a/package/base-files/files/etc/init.d/gpio_switch b/package/base-files/files/etc/init.d/gpio_switch index 5a62be9..b67950a 100755 --- a/package/base-files/files/etc/init.d/gpio_switch +++ b/package/base-files/files/etc/init.d/gpio_switch @@ -22,10 +22,9 @@ load_gpio_switch() echo "$gpio_pin" >/sys/class/gpio/export # we need to wait a bit until the GPIO appears [ -d "$gpio_path" ] || sleep 1 - echo out >"$gpio_path/direction" } - # write 0 or 1 to the "value" field - { [ "$value" = "0" ] && echo "0" || echo "1"; } >"$gpio_path/value" + # set the pin to output with high or low pin value + { [ "$value" = "0" ] && echo "high" || echo "low"; } >"$gpio_path/direction" } service_triggers() -- 2.7.4 _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev