From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Paul Zimmerman To: "balbi@ti.com" CC: Huang Rui , Alan Stern , Bjorn Helgaas , Greg Kroah-Hartman , Heikki Krogerus , Jason Chang , "Vincent Wan" , Tony Li , "linux-usb@vger.kernel.org" , "linux-pci@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH v3 01/19] usb: dwc3: enable hibernation if to be supported Date: Tue, 28 Oct 2014 19:15:29 +0000 Message-ID: References: <1414497280-3126-1-git-send-email-ray.huang@amd.com> <1414497280-3126-2-git-send-email-ray.huang@amd.com> <20141028185059.GE25735@saruman> <20141028190122.GF25735@saruman> In-Reply-To: <20141028190122.GF25735@saruman> Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: > From: Felipe Balbi [mailto:balbi@ti.com] > Sent: Tuesday, October 28, 2014 12:01 PM > > On Tue, Oct 28, 2014 at 06:55:50PM +0000, Paul Zimmerman wrote: > > > From: Felipe Balbi [mailto:balbi@ti.com] > > > Sent: Tuesday, October 28, 2014 11:51 AM > > > > > > On Tue, Oct 28, 2014 at 06:47:08PM +0000, Paul Zimmerman wrote: > > > > > From: Huang Rui [mailto:ray.huang@amd.com] > > > > > Sent: Tuesday, October 28, 2014 4:54 AM > > > > > > > > > > It enables hibernation if the function is set in coreConsultant. > > > > > > > > > > Suggested-by: Felipe Balbi > > > > > Signed-off-by: Huang Rui > > > > > --- > > > > > drivers/usb/dwc3/core.c | 1 + > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c > > > > > index fa396fc..bf77509 100644 > > > > > --- a/drivers/usb/dwc3/core.c > > > > > +++ b/drivers/usb/dwc3/core.c > > > > > @@ -449,6 +449,7 @@ static int dwc3_core_init(struct dwc3 *dwc) > > > > > case DWC3_GHWPARAMS1_EN_PWROPT_HIB: > > > > > /* enable hibernation here */ > > > > > dwc->nr_scratch = DWC3_GHWPARAMS4_HIBER_SCRATCHBUFS(hwparams4); > > > > > + reg |= DWC3_GCTL_GBLHIBERNATIONEN; > > > > > break; > > > > > default: > > > > > dev_dbg(dwc->dev, "No power optimization available\n"); > > > > > > > > What effect does this have when the controller is in device mode? I > > > > expect it will start generating DWC3_DEVICE_EVENT_HIBER_REQ interrupt > > > > events when this register bit is set. So the dev_WARN_ONCE in > > > > dwc3_gadget_interrupt() will start firing, I think. > > > > > > Ok, so this *has* to wait for proper hibernation support ? > > > > Ah, never mind. Since the hibernation event is not enabled in the > > DEVTEN register, the controller shouldn't generate that event after > > all. So I think it should be OK. Sorry for the noise. > > do you think it's still nice to have a comment here ? Maybe something along the lines of "enabling this bit so that host-mode hibernation will work, device-mode hibernation is not implemented yet"? -- Paul