From: Andrew Morton With CONFIG_PM=n: drivers/built-in.o(.text+0x2a69c): In function `ohci_hub_control': drivers/usb/host/ohci-hub.c:539: undefined reference to `.usb_hcd_resume_root_hub' drivers/built-in.o(.text+0x2b920): In function `ohci_irq': drivers/usb/host/ohci-hcd.c:726: undefined reference to `.usb_hcd_resume_root_hub' (doh, first version was missing `inline' in the stubs) Cc: Greg KH Cc: David Brownell Signed-off-by: Andrew Morton --- drivers/usb/core/hcd.h | 15 ++++++++++++--- 1 files changed, 12 insertions(+), 3 deletions(-) diff -puN drivers/usb/core/hcd.h~gregkh-usb-usb-pm-03-fix drivers/usb/core/hcd.h --- 25/drivers/usb/core/hcd.h~gregkh-usb-usb-pm-03-fix 2005-10-24 05:57:15.000000000 -0600 +++ 25-akpm/drivers/usb/core/hcd.h 2005-10-24 06:03:21.000000000 -0600 @@ -351,9 +351,6 @@ extern long usb_calc_bus_time (int speed extern struct usb_bus *usb_alloc_bus (struct usb_operations *); -extern void usb_hcd_suspend_root_hub (struct usb_hcd *hcd); -extern void usb_hcd_resume_root_hub (struct usb_hcd *hcd); - extern void usb_set_device_state(struct usb_device *udev, enum usb_device_state new_state); @@ -376,9 +373,21 @@ extern int usb_find_interface_driver (st #define usb_endpoint_out(ep_dir) (!((ep_dir) & USB_DIR_IN)) #ifdef CONFIG_PM +extern void usb_hcd_suspend_root_hub (struct usb_hcd *hcd); +extern void usb_hcd_resume_root_hub (struct usb_hcd *hcd); extern int hcd_bus_suspend (struct usb_bus *bus); extern int hcd_bus_resume (struct usb_bus *bus); #else +static inline void usb_hcd_suspend_root_hub(struct usb_hcd *hcd) +{ + return; +} + +static inline void usb_hcd_resume_root_hub(struct usb_hcd *hcd) +{ + return; +} + static inline int hcd_bus_suspend(struct usb_bus *bus) { return 0; _