> -----Original Message----- > From: Alan Stern [mailto:stern@xxxxxxxxxxxxxxxxxxx] > Sent: Thursday, August 20, 2015 7:40 PM > To: Mehresh Ramneek-B31383 <ramneek.mehresh@xxxxxxxxxxxxx> > Cc: linux-kernel@xxxxxxxxxxxxxxx; balbi@xxxxxx; > gregkh@xxxxxxxxxxxxxxxxxxx; linux-usb@xxxxxxxxxxxxxxx; Li Yang-Leo-R58472 > <LeoLi@xxxxxxxxxxxxx> > Subject: RE: [PATCH 3/8][v3]usb:fsl:otg: Add support to add/remove usb > host driver > > On Thu, 20 Aug 2015, Ramneek Mehresh wrote: > > > > > --- a/drivers/usb/host/ehci-fsl.h > > > > +++ b/drivers/usb/host/ehci-fsl.h > > > > @@ -63,4 +63,22 @@ > > > > #define UTMI_PHY_EN (1<<9) > > > > #define ULPI_PHY_CLK_SEL (1<<10) > > > > #define PHY_CLK_VALID (1<<17) > > > > + > > > > +struct ehci_fsl { > > > > +#ifdef CONFIG_PM > > > > + /* Saved USB PHY settings, need to restore after deep sleep. */ > > > > + u32 usb_ctrl; > > > > +#endif > > > > > > Do you need this #ifdef? > > > > > Yes, this is required for deep-sleep support...we need to save/restore > controller > > registers during deep-sleep when usb controller power is shut-off. Don't > need this > > during normal usb operation...saving/restoring usb controller registers in > non deep-sleep > > scenario will add unnecessary delays > > What I meant was, can you keep the "u32 usb_ctrl;" line but get rid of > the "#ifdef CONFIG_PM" and "#endif" lines? > > Alan Stern I do understand that. However, USB suspend/resume functionality work in context of PM. Only in this context, we need to save/restore usb controller register for deep-sleep functionality. If you see usage of this in ehci-fsl.c file, it's used in ehci_fsl_drv_suspend() under CONFIG_PM to save USB CNTL register. If I remove CONFIG_PM from struct ehci_fsl{}, I'll need to change the entire driver also to make suspend and resume functionalities compile by default. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html