Re: [PATCH 2/4] pinctrl: samsung: Register pinctrl before GPIO

From: Krzysztof Kozlowski
Date: Wed Feb 15 2017 - 12:36:39 EST


On Mon, Feb 13, 2017 at 10:11:04AM +0000, Charles Keepax wrote:
> If we request a GPIO hog, then gpiochip_add_data will attempt to request
> some of its own GPIOs. The driver also uses gpiochip_generic_request
> which means that for any GPIO request to succeed the pinctrl needs to be
> registered. Currently however the driver registers the GPIO and then the
> pinctrl meaning all GPIO hog requests will fail, which then in turn causes
> the whole driver to fail probe. Fix this up by ensuring we register the
> pinctrl first.
>
> Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
> ---
> drivers/pinctrl/samsung/pinctrl-samsung.c | 32 +++++++++++++++----------------

I think the code makes sense altough the description describes
theoretical issue - we do not use GPIO hogs. Of course out of tree DTS
could use them... so maybe mention that this is not an existing case?

For the code itself:
Reviewed-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx>

Best regards,
Krzysztof


> 1 file changed, 16 insertions(+), 16 deletions(-)
>
> diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/samsung/pinctrl-samsung.c
> index d79eada..1134bc3 100644
> --- a/drivers/pinctrl/samsung/pinctrl-samsung.c
> +++ b/drivers/pinctrl/samsung/pinctrl-samsung.c
> @@ -893,6 +893,19 @@ static int samsung_pinctrl_register(struct platform_device *pdev,
> return 0;
> }
>