On Thu, Nov 06, 2014 at 06:21:42PM +0100, Romain Perier wrote: > Hi Kever, > > > 2014-11-06 2:30 GMT+01:00 Kever Yang <kever.yang@xxxxxxxxxxxxxx>: > > > > +static int _dwc2_hcd_suspend(struct usb_hcd *hcd) > > +{ > > + struct dwc2_hsotg *hsotg = dwc2_hcd_to_hsotg(hcd); > > + u32 hprt0; > > + > > + if (!((hsotg->op_state == OTG_STATE_B_HOST) || > > + (hsotg->op_state == OTG_STATE_A_HOST))) > > + return 0; > > + > > + if (hsotg->lx_state != DWC2_L0) > > + return 0; > > + > > + hprt0 = dwc2_read_hprt0(hsotg); > > + if (hprt0 & HPRT0_CONNSTS) > > + dwc2_port_suspend(hsotg, 1); > > + > > + return 0; > > +} > > + > > +static int _dwc2_hcd_resume(struct usb_hcd *hcd) > > +{ > > + struct dwc2_hsotg *hsotg = dwc2_hcd_to_hsotg(hcd); > > + u32 hprt0; > > + > > + if (!((hsotg->op_state == OTG_STATE_B_HOST) || > > + (hsotg->op_state == OTG_STATE_A_HOST))) > > + return 0; > > + > > + if (hsotg->lx_state != DWC2_L2) > > + return 0; > > + > > + hprt0 = dwc2_read_hprt0(hsotg); > > + if ((hprt0 & HPRT0_CONNSTS) && (hprt0 & HPRT0_SUSP)) > > + dwc2_port_resume(hsotg); > > + > > + return 0; > > +} > > Could you also define these functions under #ifdef CONFIG_PM ? please don't. I'm actually considering ripping all ifdefs from all these drivers and also stop using SIMPLE_DEV_PM_OPS or any of its friends. There's really nobody today would would build a kernel with CONFIG_PM. -- balbi
Attachment:
signature.asc
Description: Digital signature