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 <jose.a.meza.arellano@intel.com>
This commit is contained in:
Jose Alberto Meza 2021-03-04 10:34:49 -08:00 committed by Anas Nashif
commit 0bcb0081cc

View file

@ -133,6 +133,13 @@ static int gpio_xec_configure(const struct device *dev,
mask = MCHP_GPIO_CTRL_DIR_MASK; mask = MCHP_GPIO_CTRL_DIR_MASK;
pcr1 = MCHP_GPIO_CTRL_DIR_OUTPUT; pcr1 = MCHP_GPIO_CTRL_DIR_OUTPUT;
*current_pcr1 = (*current_pcr1 & ~mask) | pcr1; *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; return 0;