pinctrl: armada-37xx: Checks for errors in gpio_request_enable callback
Now when all MPP pins are properly defined and every MPP pin has GPIO function, always checks for errors in armada_37xx_gpio_request_enable() function when calling armada_37xx_pmx_set_by_name(). Function armada_37xx_pmx_set_by_name() should not return "not supported" error anymore for any GPIO pin when requesting GPIO mode. Fixes: 87466ccd9401 ("pinctrl: armada-37xx: Add pin controller support for Armada 37xx") Signed-off-by: Pali Rohár <pali@kernel.org> Link: https://lore.kernel.org/r/20220805122202.23174-3-pali@kernel.org Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
2fa9933d68
commit
6b262b32fa
@ -500,11 +500,15 @@ static int armada_37xx_gpio_request_enable(struct pinctrl_dev *pctldev,
|
||||
struct armada_37xx_pinctrl *info = pinctrl_dev_get_drvdata(pctldev);
|
||||
struct armada_37xx_pin_group *group;
|
||||
int grp = 0;
|
||||
int ret;
|
||||
|
||||
dev_dbg(info->dev, "requesting gpio %d\n", offset);
|
||||
|
||||
while ((group = armada_37xx_find_next_grp_by_pin(info, offset, &grp)))
|
||||
armada_37xx_pmx_set_by_name(pctldev, "gpio", group);
|
||||
while ((group = armada_37xx_find_next_grp_by_pin(info, offset, &grp))) {
|
||||
ret = armada_37xx_pmx_set_by_name(pctldev, "gpio", group);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user