Hi, On Wed, Feb 24, 2016 at 06:45:36PM +0530, Laxman Dewangan wrote: > Use devm_pinctrl_register() for pin control registration. > > Signed-off-by: Laxman Dewangan <ldewangan@xxxxxxxxxx> > Cc: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> > Cc: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx> > --- > drivers/pinctrl/intel/pinctrl-cherryview.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c b/drivers/pinctrl/intel/pinctrl-cherryview.c > index 4251e07..1152b8a 100644 > --- a/drivers/pinctrl/intel/pinctrl-cherryview.c > +++ b/drivers/pinctrl/intel/pinctrl-cherryview.c > @@ -1526,7 +1526,8 @@ static int chv_pinctrl_probe(struct platform_device *pdev) > pctrl->pctldesc.pins = pctrl->community->pins; > pctrl->pctldesc.npins = pctrl->community->npins; > > - pctrl->pctldev = pinctrl_register(&pctrl->pctldesc, &pdev->dev, pctrl); > + pctrl->pctldev = devm_pinctrl_register(&pdev->dev, &pctrl->pctldesc, > + pctrl); > if (IS_ERR(pctrl->pctldev)) { > dev_err(&pdev->dev, "failed to register pinctrl driver\n"); > return PTR_ERR(pctrl->pctldev); You missed one pinctrl_unregister() call inside chv_pinctrl_probe(). Check right below this point where chv_gpio_probe() is called. > @@ -1548,7 +1549,6 @@ static int chv_pinctrl_remove(struct platform_device *pdev) > struct chv_pinctrl *pctrl = platform_get_drvdata(pdev); > > gpiochip_remove(&pctrl->chip); > - pinctrl_unregister(pctrl->pctldev); > > return 0; > } > -- > 2.1.4 Thanks, -- heikki -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html