> -----Original Message----- > From: Sarah Sharp [mailto:sarah.a.sharp@xxxxxxxxxxxxxxx] > Sent: Tuesday, May 22, 2012 12:06 AM > To: Greg Kroah-Hartman > Cc: linux-usb@xxxxxxxxxxxxxxx; Stephen Rothwell; Chen Peter-B29397 > Subject: [PATCH 2/4] USB: Fix core compile with CONFIG_USB_SUSPEND=n > > When CONFIG_PM=n, make sure that the usb_[unlocked_][en/dis]able_lpm > declarations are visible in include/linux/usb.h, and exported from > drivers/usb/core/hub.c. > > Before this patch, if CONFIG_USB_SUSPEND was turned off, it would cause > build errors: > > drivers/usb/core/hub.c: In function 'usb_disable_lpm': > drivers/usb/core/hub.c:3394:2: error: implicit declaration of function > 'usb_enable_lpm' [-Werror=implicit-function-declaration] > drivers/usb/core/hub.c: At top level: > drivers/usb/core/hub.c:3424:6: warning: conflicting types for > 'usb_enable_lpm' [enabled by default] > drivers/usb/core/hub.c:3394:2: note: previous implicit declaration of > 'usb_enable_lpm' was here > drivers/usb/core/driver.c: In function 'usb_probe_interface': > drivers/usb/core/driver.c:339:2: error: implicit declaration of function > 'usb_unlocked_disable_lpm' [-Werror=implicit-function-declaration] > drivers/usb/core/driver.c:364:3: error: implicit declaration of function > 'usb_unlocked_enable_lpm' [-Werror=implicit-function-declaration] > drivers/usb/core/message.c: In function 'usb_set_interface': > drivers/usb/core/message.c:1314:2: error: implicit declaration of > function 'usb_disable_lpm' [-Werror=implicit-function-declaration] > drivers/usb/core/message.c:1323:3: error: implicit declaration of > function 'usb_enable_lpm' [-Werror=implicit-function-declaration] > drivers/usb/core/message.c:1368:2: error: implicit declaration of > function 'usb_unlocked_enable_lpm' [-Werror=implicit-function-declaration] > > Signed-off-by: Sarah Sharp <sarah.a.sharp@xxxxxxxxxxxxxxx> > Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > Reported-by: Chen Peter-B29397 <B29397@xxxxxxxxxxxxx> Tested-by: Chen Peter-B29397 <B29397@xxxxxxxxxxxxx> > --- > drivers/usb/core/hub.c | 4 ++++ > include/linux/usb.h | 12 ++++++------ > 2 files changed, 10 insertions(+), 6 deletions(-) > > diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c > index fcc244e..04fb834 100644 > --- a/drivers/usb/core/hub.c > +++ b/drivers/usb/core/hub.c > @@ -3472,15 +3472,19 @@ int usb_disable_lpm(struct usb_device *udev) > { > return 0; > } > +EXPORT_SYMBOL_GPL(usb_disable_lpm); > > void usb_enable_lpm(struct usb_device *udev) { } > +EXPORT_SYMBOL_GPL(usb_enable_lpm); > > int usb_unlocked_disable_lpm(struct usb_device *udev) > { > return 0; > } > +EXPORT_SYMBOL_GPL(usb_unlocked_disable_lpm); > > void usb_unlocked_enable_lpm(struct usb_device *udev) { } > +EXPORT_SYMBOL_GPL(usb_unlocked_enable_lpm); > #endif > > > diff --git a/include/linux/usb.h b/include/linux/usb.h > index c19297a..dea39dc 100644 > --- a/include/linux/usb.h > +++ b/include/linux/usb.h > @@ -592,12 +592,6 @@ extern void usb_autopm_put_interface_async(struct > usb_interface *intf); > extern void usb_autopm_get_interface_no_resume(struct usb_interface > *intf); > extern void usb_autopm_put_interface_no_suspend(struct usb_interface > *intf); > > -extern int usb_disable_lpm(struct usb_device *udev); > -extern void usb_enable_lpm(struct usb_device *udev); > -/* Same as above, but these functions lock/unlock the bandwidth_mutex. > */ > -extern int usb_unlocked_disable_lpm(struct usb_device *udev); > -extern void usb_unlocked_enable_lpm(struct usb_device *udev); > - > static inline void usb_mark_last_busy(struct usb_device *udev) > { > pm_runtime_mark_last_busy(&udev->dev); > @@ -629,6 +623,12 @@ static inline void usb_mark_last_busy(struct > usb_device *udev) > { } > #endif > > +extern int usb_disable_lpm(struct usb_device *udev); > +extern void usb_enable_lpm(struct usb_device *udev); > +/* Same as above, but these functions lock/unlock the bandwidth_mutex. > */ > +extern int usb_unlocked_disable_lpm(struct usb_device *udev); > +extern void usb_unlocked_enable_lpm(struct usb_device *udev); > + > /*---------------------------------------------------------------------- > ---*/ > > /* for drivers using iso endpoints */ > -- > 1.7.9 > -- 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