diff options
| author | Yulin Lu <luyulin@eswincomputing.com> | 2026-07-28 15:29:06 +0800 |
|---|---|---|
| committer | Linus Walleij <linusw@kernel.org> | 2026-08-03 09:42:39 +0200 |
| commit | f9af1329b98a478f4bba605ec6db429ef0e38d54 (patch) | |
| tree | 8f78cd6e5a885744a0c5d39e6aff9785d74b4944 | |
| parent | 04b3818c3bbc3f68b6e856f87dca752af2cc34ee (diff) | |
| download | linux-f9af1329b98a478f4bba605ec6db429ef0e38d54.tar.gz linux-f9af1329b98a478f4bba605ec6db429ef0e38d54.zip | |
pinctrl: eswin: Fix Handling of PIN_CONFIG_PERSIST_STATE
The EIC7700 pinctrl driver does not handle PIN_CONFIG_PERSIST_STATE
specifically, and returns -EOPNOTSUPP from the default case.
Since all pins on the EIC7700 SoC are persistent over suspend, the
correct behaviour is to accept this parameter and return success.
Add an explicit case for PIN_CONFIG_PERSIST_STATE that returns 0 to
prevent errors when this parameter is set.
Signed-off-by: Yulin Lu <luyulin@eswincomputing.com>
Fixes: 5b797bcc00ef ("pinctrl: eswin: Add EIC7700 pinctrl driver")
Signed-off-by: Linus Walleij <linusw@kernel.org>
| -rw-r--r-- | drivers/pinctrl/pinctrl-eic7700.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/pinctrl/pinctrl-eic7700.c b/drivers/pinctrl/pinctrl-eic7700.c index ffcd0ec5c2dc..1e72931feca5 100644 --- a/drivers/pinctrl/pinctrl-eic7700.c +++ b/drivers/pinctrl/pinctrl-eic7700.c @@ -423,6 +423,9 @@ static int eic7700_pin_config_set(struct pinctrl_dev *pctldev, unsigned int pin, else value &= ~EIC7700_ST; break; + /* All pins are persistent over suspend */ + case PIN_CONFIG_PERSIST_STATE: + return 0; default: return -EOPNOTSUPP; } |
