aboutsummaryrefslogtreecommitdiffstats
diff options
-rw-r--r--series1
-rw-r--r--usb/usb-fix-linker-errors-with-config_pm-n.patch90
2 files changed, 91 insertions, 0 deletions
diff --git a/series b/series
index f35ad89e4c7eee..5e88c3329e65c6 100644
--- a/series
+++ b/series
@@ -247,6 +247,7 @@ usb/usb-xhci-fix-compile-error-when-config_pm-n.patch
usb/usb-isp116x-hcd-use-resource_size-instead-of-defining-its-own-resource_len-macro.patch
usb/usb-isp1362-hcd-use-resource_size-instead-of-defining-its-own-resource_len-macro.patch
usb/usb-ohci-sh-use-resource_size-instead-of-defining-its-own-resource_len-macro.patch
+usb/usb-fix-linker-errors-with-config_pm-n.patch
# staging stuff for next is now in the staging-next tree on git.kernel.org
diff --git a/usb/usb-fix-linker-errors-with-config_pm-n.patch b/usb/usb-fix-linker-errors-with-config_pm-n.patch
new file mode 100644
index 00000000000000..3ebb7c83c5a30d
--- /dev/null
+++ b/usb/usb-fix-linker-errors-with-config_pm-n.patch
@@ -0,0 +1,90 @@
+From linux-next-owner@vger.kernel.org Fri Oct 15 15:39:05 2010
+Date: Fri, 15 Oct 2010 14:59:15 -0700
+From: Sarah Sharp <sarah.a.sharp@linux.intel.com>
+To: Greg KH <gregkh@suse.de>
+Cc: Randy Dunlap <randy.dunlap@oracle.com>,
+ Stephen Rothwell <sfr@canb.auug.org.au>,
+ Andiry Xu <andiry.xu@amd.com>,
+ Dong Nguyen <dong.nguyen@amd.com>,
+ Libin Yang <libin.yang@amd.com>
+Subject: usb: Fix linker errors with CONFIG_PM=n
+Message-ID: <20101015215915.GA25942@xanatos>
+Content-Disposition: inline
+
+Fix these linker errors when CONFIG_PM=n:
+
+ERROR: "xhci_bus_resume" [drivers/usb/host/xhci-hcd.ko] undefined!
+ERROR: "xhci_bus_suspend" [drivers/usb/host/xhci-hcd.ko] undefined!
+
+Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
+Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/host/xhci-hub.c | 7 +------
+ drivers/usb/host/xhci.c | 6 ------
+ drivers/usb/host/xhci.h | 14 ++++++++++++++
+ 3 files changed, 15 insertions(+), 12 deletions(-)
+
+--- a/drivers/usb/host/xhci-hub.c
++++ b/drivers/usb/host/xhci-hub.c
+@@ -742,9 +742,4 @@ int xhci_bus_resume(struct usb_hcd *hcd)
+ return 0;
+ }
+
+-#else
+-
+-#define xhci_bus_suspend NULL
+-#define xhci_bus_resume NULL
+-
+-#endif
++#endif /* CONFIG_PM */
+--- a/drivers/usb/host/xhci.c
++++ b/drivers/usb/host/xhci.c
+@@ -761,12 +761,6 @@ int xhci_resume(struct xhci_hcd *xhci, b
+ spin_unlock_irq(&xhci->lock);
+ return 0;
+ }
+-
+-#else
+-
+-#define xhci_suspend NULL
+-#define xhci_resume NULL
+-
+ #endif /* CONFIG_PM */
+
+ /*-------------------------------------------------------------------------*/
+--- a/drivers/usb/host/xhci.h
++++ b/drivers/usb/host/xhci.h
+@@ -1405,8 +1405,15 @@ int xhci_init(struct usb_hcd *hcd);
+ int xhci_run(struct usb_hcd *hcd);
+ void xhci_stop(struct usb_hcd *hcd);
+ void xhci_shutdown(struct usb_hcd *hcd);
++
++#ifdef CONFIG_PM
+ int xhci_suspend(struct xhci_hcd *xhci);
+ int xhci_resume(struct xhci_hcd *xhci, bool hibernated);
++#else
++#define xhci_suspend NULL
++#define xhci_resume NULL
++#endif
++
+ int xhci_get_frame(struct usb_hcd *hcd);
+ irqreturn_t xhci_irq(struct usb_hcd *hcd);
+ irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd);
+@@ -1481,8 +1488,15 @@ void xhci_ring_ep_doorbell(struct xhci_h
+ int xhci_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue, u16 wIndex,
+ char *buf, u16 wLength);
+ int xhci_hub_status_data(struct usb_hcd *hcd, char *buf);
++
++#ifdef CONFIG_PM
+ int xhci_bus_suspend(struct usb_hcd *hcd);
+ int xhci_bus_resume(struct usb_hcd *hcd);
++#else
++#define xhci_bus_suspend NULL
++#define xhci_bus_resume NULL
++#endif /* CONFIG_PM */
++
+ u32 xhci_port_state_to_neutral(u32 state);
+ int xhci_find_slot_id_by_port(struct xhci_hcd *xhci, u16 port);
+ void xhci_ring_device(struct xhci_hcd *xhci, int slot_id);