summaryrefslogtreecommitdiff
path: root/drivers/pinctrl/renesas/pinctrl.c
diff options
context:
space:
mode:
authorWolfram Sang <wsa+renesas@sang-engineering.com>2021-12-10 14:32:26 +0300
committerGeert Uytterhoeven <geert+renesas@glider.be>2022-01-24 11:59:42 +0300
commit9ca70f4202eab573ca9e427dd5ec08ae9c945bcb (patch)
tree4e8841ba4d9fa7184e357ee14dc4f033d4e26797 /drivers/pinctrl/renesas/pinctrl.c
parente783362eb54cd99b2cac8b3a9aeac942e6f6ac07 (diff)
downloadlinux-9ca70f4202eab573ca9e427dd5ec08ae9c945bcb.tar.xz
pinctrl: renesas: rcar: Do not enforce GPIO if already muxed
For Renesas PFCs not setting .strict, we can snoop GPIOs which are already muxed to some other function. To actually make use of that, we shouldn't mux them back to GPIO if they have been already muxed to something. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Link: https://lore.kernel.org/r/20211210113226.40111-1-wsa+renesas@sang-engineering.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Diffstat (limited to 'drivers/pinctrl/renesas/pinctrl.c')
-rw-r--r--drivers/pinctrl/renesas/pinctrl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pinctrl/renesas/pinctrl.c b/drivers/pinctrl/renesas/pinctrl.c
index 96b9de974246..401e64725032 100644
--- a/drivers/pinctrl/renesas/pinctrl.c
+++ b/drivers/pinctrl/renesas/pinctrl.c
@@ -397,7 +397,7 @@ static int sh_pfc_gpio_request_enable(struct pinctrl_dev *pctldev,
spin_lock_irqsave(&pfc->lock, flags);
- if (!pfc->gpio) {
+ if (!pfc->gpio && !cfg->mux_mark) {
/* If GPIOs are handled externally the pin mux type needs to be
* set to GPIO here.
*/