[PATCH] memory: omap-gpmc: fix wait pin validation
From: B. Niedermayr
Date: Fri Dec 09 2022 - 07:32:10 EST
From: Benedikt Niedermayr <benedikt.niedermayr@xxxxxxxxxxx>
This bug has been introduced after switching from -1 to UINT_MAX
for GPMC_WAITPIN_INVALID.
The bug leads to an error when the optional gpmc,wait-pin
dt-property is not used:
...
gpmc_cs_program_settings: invalid wait-pin (-1)
...
Signed-off-by: Benedikt Niedermayr <benedikt.niedermayr@xxxxxxxxxxx>
Fixes: 8dd7e4af5853 ("memory: omap-gpmc: fix coverity issue "Control flow issues"")
Cc: Rob Herring <robh+dt@xxxxxxxxxx>
---
drivers/memory/omap-gpmc.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
index 57d9f91fe89b..d78f73db37c8 100644
--- a/drivers/memory/omap-gpmc.c
+++ b/drivers/memory/omap-gpmc.c
@@ -1918,7 +1918,8 @@ int gpmc_cs_program_settings(int cs, struct gpmc_settings *p)
}
}
- if (p->wait_pin > gpmc_nr_waitpins) {
+ if (p->wait_pin != GPMC_WAITPIN_INVALID &&
+ p->wait_pin > gpmc_nr_waitpins) {
pr_err("%s: invalid wait-pin (%d)\n", __func__, p->wait_pin);
return -EINVAL;
}
--
2.25.1