From b5d3ba64e01aace8a64006b3393a69eaabffcb00 Mon Sep 17 00:00:00 2001 From: Ouss4 Date: Tue, 1 Sep 2020 16:09:10 +0100 Subject: [PATCH] arch/xtensa/src/esp32/esp32_gpio.c: Enable input mode only when configuring an input. --- arch/xtensa/src/esp32/esp32_gpio.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/xtensa/src/esp32/esp32_gpio.c b/arch/xtensa/src/esp32/esp32_gpio.c index cb994cc2efb..14b7454b893 100644 --- a/arch/xtensa/src/esp32/esp32_gpio.c +++ b/arch/xtensa/src/esp32/esp32_gpio.c @@ -172,6 +172,10 @@ int esp32_configgpio(int pin, gpio_pinattr_t attr) if ((attr & INPUT) != 0) { + /* Enable input mode in the IO_MUX. */ + + func |= FUN_IE; + if (pin < 32) { putreg32((1ul << pin), GPIO_ENABLE_W1TC_REG); @@ -209,10 +213,6 @@ int esp32_configgpio(int pin, gpio_pinattr_t attr) func |= (uint32_t)(2ul << FUN_DRV_S); - /* Input enable... Required for output as well? */ - - func |= FUN_IE; - pinmode = (attr & PINMODE_MASK); if (pinmode == INPUT || pinmode == OUTPUT) {