[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130403081704.GF25837@arwen.pp.htv.fi>
Date: Wed, 3 Apr 2013 11:17:04 +0300
From: Felipe Balbi <balbi@...com>
To: Vivek Gautam <gautamvivek1987@...il.com>
CC: <balbi@...com>, Vivek Gautam <gautam.vivek@...sung.com>,
<linux-usb@...r.kernel.org>, <linux-samsung-soc@...r.kernel.org>,
<linux-omap@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<gregkh@...uxfoundation.org>, <stern@...land.harvard.edu>,
<sarah.a.sharp@...ux.intel.com>, <rob.herring@...xeda.com>,
<kgene.kim@...sung.com>, <kishon@...com>, <dianders@...omium.org>,
<t.figa@...sung.com>, <p.paneri@...sung.com>
Subject: Re: [PATCH v3 02/11] USB: dwc3: Adjust runtime pm to allow
autosuspend
Hi,
On Wed, Apr 03, 2013 at 11:35:43AM +0530, Vivek Gautam wrote:
> >> The current code in the dwc3 probe effectively disables runtime pm
> >> from ever working because it calls a get() that was never put() until
> >> device removal. Change the runtime pm code to match the standard
> >> formula and allow runtime pm to function.
> >>
> >> Signed-off-by: Vivek Gautam <gautam.vivek@...sung.com>
> >> CC: Doug Anderson <dianders@...omium.org>
> >> ---
> >> drivers/usb/dwc3/core.c | 8 +++++++-
> >> 1 files changed, 7 insertions(+), 1 deletions(-)
> >>
> >> diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
> >> index e2325ad..3a6993c 100644
> >> --- a/drivers/usb/dwc3/core.c
> >> +++ b/drivers/usb/dwc3/core.c
> >> @@ -491,6 +491,11 @@ static int dwc3_probe(struct platform_device *pdev)
> >>
> >> dwc->needs_fifo_resize = of_property_read_bool(node, "tx-fifo-resize");
> >>
> >> + /* Setting device state as 'suspended' initially,
> >
> > wrong comment style.
> Yea :-( will fix this.
>
> >
> >> + * to make sure we know device state prior to
> >> + * pm_runtime_enable
> >> + */
> >> + pm_runtime_set_suspended(dev);
> >
> > didn't Alan mention this should be done at the Bus level ? In that case,
> > shouldn't you have call pm_runtime_set_active/suspended() based on
> > DT's status=okay or status=disabled ? Or something similar ?
>
> True, we should be doing this at bus level. But he did also mention to
> let pm core
> know of the state of the device before enabling the runtime pm. Right ?
> Moreover immediately after pm_runtime_enable(), we do pm_runtime_get_sync()
> so that device comes to active state.
> I am possibly missing things out here, not able to grab this whole
> picture completely :-(
>
> Wouldn't DT's status=disabled actually be disabling the device as a whole ?
> So, how much will runtime power management on the device be affecting ?
indeed, maybe we can keep it like this, but it would be nice to have OF
core handle this for us based on whatever data.
--
balbi
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists