On Wed, Jul 17, 2013 at 7:31 AM, Sonic Zhang <sonic....@gmail.com> wrote:
I'd like Stephen and Axel to have a look at this as well... > From: Sonic Zhang <sonic.zh...@analog.com> > > in pinmux_disable_setting after current device fails to request > the same pins. > > Signed-off-by: Sonic Zhang <sonic.zh...@analog.com> I don't quite understand the patch. Can you provide more context? > diff --git a/drivers/pinctrl/pinmux.c b/drivers/pinctrl/pinmux.c > index 88cc509..9ebcf3b 100644 > --- a/drivers/pinctrl/pinmux.c > +++ b/drivers/pinctrl/pinmux.c > @@ -482,13 +482,14 @@ void pinmux_disable_setting(struct pinctrl_setting > const *setting) > pins[i]); > continue; > } > + /* And release the pins */ > + if (desc->mux_usecount && > + !strcmp(desc->mux_owner, setting->dev_name)) > + pin_free(pctldev, pins[i], NULL); > + > desc->mux_setting = NULL; > } > > - /* And release the pins */ > - for (i = 0; i < num_pins; i++) > - pin_free(pctldev, pins[i], NULL); > - For pinmux_disable_setting() to inspect desc->mux_usecount seems assymetric. This is something pin_free() should do, shouldn't it? Should not this codepath be kept and a change made inside pin_free() for the check above instead? Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/