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