Re: [RFC 2/2] usb: dwc3: Add Qualcomm DWC3 glue layer driver

From: Felipe Balbi
Date: Mon Aug 12 2013 - 14:25:21 EST


On Fri, Aug 09, 2013 at 07:09:18PM +0300, Ivan T. Ivanov wrote:
> Hi,
>
> On Fri, 2013-08-09 at 16:23 +0300, Felipe Balbi wrote:
> > Hi,
> >
> > On Tue, Aug 06, 2013 at 02:53:11PM +0300, Ivan T. Ivanov wrote:
> > > diff --git a/drivers/usb/dwc3/dwc3-msm.c b/drivers/usb/dwc3/dwc3-msm.c
> > > new file mode 100644
> > > index 0000000..e509abc
> > > --- /dev/null
> > > +++ b/drivers/usb/dwc3/dwc3-msm.c
> > > @@ -0,0 +1,175 @@
> > > +#undef CONFIG_REGULATOR
> >
> > why ??????
> >
>
> 1. This shows that driver is still not fully tested
> Regulators support is still missing in the MSM
> 2. Helps me to load driver successfully.

Then remove all the regulator-related code from this.

> > > + clk_prepare_enable(mdwc->core_clk);
> > > + clk_prepare_enable(mdwc->iface_clk);
> > > + clk_prepare_enable(mdwc->sleep_clk);
> > > + clk_prepare_enable(mdwc->utmi_clk);
> >
> > do you really need to enable your clocks here ? Why don't you enable
> > them on runtime_resume and disable on runtime_suspend ?
>
> I will like to make it working first and then will improve
> power management.

alright, makes sense.

> > > + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > > + tcsr = devm_ioremap_resource(&pdev->dev, res);
> > > + if (!tcsr) {
> > > + dev_dbg(&pdev->dev, "tcsr ioremap failed\n");
> >
> > no need to ioremap, also you're likely leaking clocks and regulators
> > enabled here.
> >
> > Make sure to have something like:
> >
> > if (!tcsr)
> > goto err_disable_clocks;
> >
> > /* TODO This has to be revised */\
> >
> > [...]
> >
>
> Sure.

just to make it clear, I meant to say that you don't need to print the
error message :-)

--
balbi

Attachment: signature.asc
Description: Digital signature