summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chip/npcx/gpio.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/chip/npcx/gpio.c b/chip/npcx/gpio.c
index 690615729d..4127b79e30 100644
--- a/chip/npcx/gpio.c
+++ b/chip/npcx/gpio.c
@@ -354,10 +354,12 @@ int gpio_get_flags_by_mask(uint32_t port, uint32_t mask)
else
flags |= GPIO_INPUT;
- if (NPCX_PDIN(port) & mask)
- flags |= GPIO_HIGH;
- else
- flags |= GPIO_LOW;
+ if (flags & GPIO_OUTPUT) {
+ if (NPCX_PDOUT(port) & mask)
+ flags |= GPIO_HIGH;
+ else
+ flags |= GPIO_LOW;
+ }
if (NPCX_PTYPE(port) & mask)
flags |= GPIO_OPEN_DRAIN;