Re: [PATCH] pinctrl: ingenic: Fix group & function error checking

From: Linus Walleij
Date: Wed Aug 29 2018 - 07:44:34 EST


On Sat, Aug 25, 2018 at 7:54 PM Paul Burton <paul.burton@xxxxxxxx> wrote:

> Commit a203728ac6bb ("pinctrl: core: Return selector to the pinctrl
> driver") and commit f913cfce4ee4 ("pinctrl: pinmux: Return selector to
> the pinctrl driver") modified the return values of
> pinctrl_generic_add_group() and pinmux_generic_add_function()
> respectively, but did so without updating their callers. This broke the
> pinctrl-ingenic driver, which treats non-zero return values from these
> functions as errors & fails to probe. For example on a MIPS Ci20:
>
> pinctrl-ingenic 10010000.pin-controller: Failed to register group uart0-hwflow
> pinctrl-ingenic: probe of 10010000.pin-controller failed with error 1
>
> Without the pinctrl driver probed, other drivers go on to fail to probe
> too & the system is unusable.
>
> Fix this by modifying the error checks to treat only negative values as
> errors, matching the commits that introduced the breakage & similar
> changes made to other drivers.
>
> Signed-off-by: Paul Burton <paul.burton@xxxxxxxx>
> Fixes: a203728ac6bb ("pinctrl: core: Return selector to the pinctrl driver")
> Fixes: f913cfce4ee4 ("pinctrl: pinmux: Return selector to the pinctrl driver")
> Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
> Cc: Paul Cercueil <paul@xxxxxxxxxxxxxxx>
> Cc: Tony Lindgren <tony@xxxxxxxxxxx>
> Cc: linux-gpio@xxxxxxxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx

Patch applied for fixes.

Yours,
Linus Walleij