pinctrl: mediatek: paris: Skip custom extra pin config dump for virtual GPIOs
authorChen-Yu Tsai <wenst@chromium.org>
Tue, 8 Mar 2022 10:09:51 +0000 (18:09 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Apr 2022 12:23:49 +0000 (14:23 +0200)
[ Upstream commit 1763933d377ecb05454f8d20e3c8922480db2ac0 ]

Virtual GPIOs do not have any hardware state associated with them. Any
attempt to read back hardware state for these pins result in error
codes.

Skip dumping extra pin config information for these virtual GPIOs.

Fixes: 184d8e13f9b1 ("pinctrl: mediatek: Add support for pin configuration dump via debugfs.")
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220308100956.2750295-7-wenst@chromium.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pinctrl/mediatek/pinctrl-paris.c

index 2133964dfd59ade22455c926bf9c4b8850496a6b..02e2a259edd39dfeba91b32be97e7a1747a5b27b 100644 (file)
@@ -580,6 +580,9 @@ ssize_t mtk_pctrl_show_one_pin(struct mtk_pinctrl *hw,
        if (gpio >= hw->soc->npins)
                return -EINVAL;
 
+       if (mtk_is_virt_gpio(hw, gpio))
+               return -EINVAL;
+
        desc = (const struct mtk_pin_desc *)&hw->soc->pins[gpio];
        pinmux = mtk_pctrl_get_pinmux(hw, gpio);
        if (pinmux >= hw->soc->nfuncs)