Hi, sorry for the delay On Mon, Jan 28, 2013 at 07:06:56PM +0530, Vivek Gautam wrote: > Hi Felipe, > > > On Mon, Jan 28, 2013 at 5:15 PM, Felipe Balbi <balbi@xxxxxx> wrote: > > On Mon, Jan 28, 2013 at 05:12:26PM +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. > >> > >> Note that this doesn't enable full runtime pm on the DWC3 device in > >> that the port isn't put into a lower power mode when not used. > >> However it does allow users of dwc3 (like dwc3-exynos) to do some > >> amount of runtime power management. > >> > >> Signed-off-by: Vivek Gautam <gautam.vivek@xxxxxxxxxxx> > >> Signed-off-by: Doug Anderson <dianders@xxxxxxxxxxxx> > >> --- > >> drivers/usb/dwc3/core.c | 4 +++- > >> 1 files changed, 3 insertions(+), 1 deletions(-) > >> > >> diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c > >> index 3a4004a..59c2494 100644 > >> --- a/drivers/usb/dwc3/core.c > >> +++ b/drivers/usb/dwc3/core.c > >> @@ -453,6 +453,7 @@ static int dwc3_probe(struct platform_device *pdev) > >> if (of_get_property(node, "tx-fifo-resize", NULL)) > >> dwc->needs_fifo_resize = true; > >> > >> + pm_runtime_set_active(dev); > > > > this usage of pm_runtime_set_active() actually makes me a bit scared. At > > least OMAP starts with the device switched off, so this will probably > > break OMAP at least. > > I am fine with dropping pm_runtime_set_active(), actually thought > to put device in active state so that as and when system finds it idle, > force into suspend state. > > I fact should i drop pm_runtime_set_active() calls from other places too > (xhci-plat, dwc3-exynos, and samsung-usb3 phy) and call get_sync() alongwith > enable() ? that's correct, make sure it works fine for you ;-) -- balbi
Attachment:
signature.asc
Description: Digital signature