gpio_free() should not have the side effect of setting the line to input since this prevents the gpio command from being able to set a line as output.
Signed-off-by: Joe Hershberger <joe.hershber...@ni.com> Cc: Joe Hershberger <joe.hershber...@gmail.com> Cc: Sandeep Paulraj <s-paul...@ti.com> --- Changes for v2: Changes for v3: arch/arm/cpu/armv7/omap-common/gpio.c | 7 ------- board/logicpd/zoom2/debug_board.c | 1 - board/logicpd/zoom2/zoom2.c | 1 - board/overo/overo.c | 7 +------ board/ti/beagle/beagle.c | 6 ------ 5 files changed, 1 insertions(+), 21 deletions(-) diff --git a/arch/arm/cpu/armv7/omap-common/gpio.c b/arch/arm/cpu/armv7/omap-common/gpio.c index e62c6f4..75a02da 100644 --- a/arch/arm/cpu/armv7/omap-common/gpio.c +++ b/arch/arm/cpu/armv7/omap-common/gpio.c @@ -237,11 +237,4 @@ int gpio_request(int gpio, const char *label) */ void gpio_free(unsigned gpio) { - const struct gpio_bank *bank; - - if (check_gpio(gpio) < 0) - return; - bank = get_gpio_bank(gpio); - - _set_gpio_direction(bank, get_gpio_index(gpio), 1); } diff --git a/board/logicpd/zoom2/debug_board.c b/board/logicpd/zoom2/debug_board.c index 33aa600..071e7f9 100644 --- a/board/logicpd/zoom2/debug_board.c +++ b/board/logicpd/zoom2/debug_board.c @@ -40,7 +40,6 @@ static void zoom2_debug_board_detect (void) */ gpio_direction_input(158); val = gpio_get_value(158); - gpio_free(158); } if (!val) diff --git a/board/logicpd/zoom2/zoom2.c b/board/logicpd/zoom2/zoom2.c index 21964c2..be3083d 100644 --- a/board/logicpd/zoom2/zoom2.c +++ b/board/logicpd/zoom2/zoom2.c @@ -95,7 +95,6 @@ void zoom2_identify(void) gpio_direction_input(94); val = gpio_get_value(94); - gpio_free(94); if (val) revision = ZOOM2_REVISION_BETA; diff --git a/board/overo/overo.c b/board/overo/overo.c index 850dfee..bdbd7f3 100644 --- a/board/overo/overo.c +++ b/board/overo/overo.c @@ -118,10 +118,6 @@ int get_board_revision(void) revision = gpio_get_value(115) << 2 | gpio_get_value(113) << 1 | gpio_get_value(112); - - gpio_free(112); - gpio_free(113); - gpio_free(115); } else { printf("Error: unable to acquire board revision GPIOs\n"); revision = -1; @@ -153,8 +149,7 @@ int get_sdio2_config(void) sdio_direct = 0; } - gpio_free(130); - gpio_free(139); + gpio_direction_input(130); } else { printf("Error: unable to acquire sdio2 clk GPIOs\n"); sdio_direct = -1; diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index aa5047c..9482c5e 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -127,10 +127,6 @@ int get_board_revision(void) revision = gpio_get_value(173) << 2 | gpio_get_value(172) << 1 | gpio_get_value(171); - - gpio_free(171); - gpio_free(172); - gpio_free(173); } else { printf("Error: unable to acquire board revision GPIOs\n"); revision = -1; @@ -522,8 +518,6 @@ int do_userbutton(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) printf("NOT pressed.\n"); } - gpio_free(gpio); - return !button; } -- 1.6.0.2 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot