From 0bcb0081cce1eb97724b418132b6fc68459afef0 Mon Sep 17 00:00:00 2001 From: Jose Alberto Meza Date: Thu, 4 Mar 2021 10:34:49 -0800 Subject: [PATCH] drivers: gpio: mchp: Add support for GPIO disconnected flag Currently, if GPIO_DISCONNECTED flag is used pin remains as input, this causes some additional power to be drain which is undesired. Signed-off-by: Jose Alberto Meza --- drivers/gpio/gpio_mchp_xec.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/gpio/gpio_mchp_xec.c b/drivers/gpio/gpio_mchp_xec.c index 40a1091b2fa..acf6b859151 100644 --- a/drivers/gpio/gpio_mchp_xec.c +++ b/drivers/gpio/gpio_mchp_xec.c @@ -133,6 +133,13 @@ static int gpio_xec_configure(const struct device *dev, mask = MCHP_GPIO_CTRL_DIR_MASK; pcr1 = MCHP_GPIO_CTRL_DIR_OUTPUT; *current_pcr1 = (*current_pcr1 & ~mask) | pcr1; + } else if ((flags & GPIO_INPUT) != 0U) { + /* Already configured */ + } else { + /* GPIO disconnected */ + mask |= MCHP_GPIO_CTRL_PWRG_MASK; + pcr1 |= MCHP_GPIO_CTRL_PWRG_OFF; + *current_pcr1 = (*current_pcr1 & ~mask) | pcr1; } return 0;