Re: [PATCH] usb: chipidea: msm: Use device-managed registration API

From: Peter Chen
Date: Wed Aug 28 2019 - 23:39:50 EST


On 19-08-28 19:42:32, Chuhong Yuan wrote:
> On Wed, Aug 28, 2019 at 11:24 AM Peter Chen <peter.chen@xxxxxxx> wrote:
> >
> > On 19-07-23 11:02:07, Chuhong Yuan wrote:
> > > Use devm_reset_controller_register to get rid
> > > of manual unregistration.
> > >
> > > Signed-off-by: Chuhong Yuan <hslester96@xxxxxxxxx>
> > > ---
> > > drivers/usb/chipidea/ci_hdrc_msm.c | 4 +---
> > > 1 file changed, 1 insertion(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c b/drivers/usb/chipidea/ci_hdrc_msm.c
> > > index bb4645a8ca46..067542e84aea 100644
> > > --- a/drivers/usb/chipidea/ci_hdrc_msm.c
> > > +++ b/drivers/usb/chipidea/ci_hdrc_msm.c
> > > @@ -216,7 +216,7 @@ static int ci_hdrc_msm_probe(struct platform_device *pdev)
> > > ci->rcdev.ops = &ci_hdrc_msm_reset_ops;
> > > ci->rcdev.of_node = pdev->dev.of_node;
> > > ci->rcdev.nr_resets = 2;
> > > - ret = reset_controller_register(&ci->rcdev);
> > > + ret = devm_reset_controller_register(&pdev->dev, &ci->rcdev);
> > > if (ret)
> > > return ret;
> > >
> > > @@ -272,7 +272,6 @@ static int ci_hdrc_msm_probe(struct platform_device *pdev)
> > > err_iface:
> > > clk_disable_unprepare(ci->core_clk);
> > > err_fs:
> > > - reset_controller_unregister(&ci->rcdev);
> >
> > It is devm API, why the unregister needs to be called at
> > fail path?
> >
>
> I am not very clear about your problem...
> After using devm_reset_controller_register(), I have removed
> reset_controller_unregister() calls
> in this patch.
>

Sorry, my fault.

Your patch is ok, but try to clean up the label "err_fs" since
it is not needed.

Peter

> > Peter
> >
> > > return ret;
> > > }
> > >
> > > @@ -284,7 +283,6 @@ static int ci_hdrc_msm_remove(struct platform_device *pdev)
> > > ci_hdrc_remove_device(ci->ci);
> > > clk_disable_unprepare(ci->iface_clk);
> > > clk_disable_unprepare(ci->core_clk);
> > > - reset_controller_unregister(&ci->rcdev);
> > >
> > > return 0;
> > > }
> > > --
> > > 2.20.1
> > >