aboutsummaryrefslogtreecommitdiff
path: root/drivers/usb/core/hcd.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-02-14 14:48:15 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-02-14 14:48:15 -0800
commit887aa58e482dbf6d35d24cfa7b3315c8f5543339 (patch)
treeb72ffb8b5cb63f433afb59e7af4da0b92b9a2c86 /drivers/usb/core/hcd.c
parentb7bc5925a9aafae970c3db1f118c97a7d503114e (diff)
parent68d07f64b8a11a852d48d1b05b724c3e20c0d94b (diff)
Merge tag 'for-usb-linus-2012-02-14' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-linus
xHCI bug fix for broken BIOS on some Intel systems. Happy Valentine's Day! Your present is a working xHCI driver under some Intel systems with buggy BIOSes that don't provide a legacy PCI IRQ line for the USB 3.0 host. Please queue for 3.3 and stable to share the love!
Diffstat (limited to 'drivers/usb/core/hcd.c')
-rw-r--r--drivers/usb/core/hcd.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
index eb19cba34ac..e1282328fc2 100644
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@ -2447,8 +2447,10 @@ int usb_add_hcd(struct usb_hcd *hcd,
&& device_can_wakeup(&hcd->self.root_hub->dev))
dev_dbg(hcd->self.controller, "supports USB remote wakeup\n");
- /* enable irqs just before we start the controller */
- if (usb_hcd_is_primary_hcd(hcd)) {
+ /* enable irqs just before we start the controller,
+ * if the BIOS provides legacy PCI irqs.
+ */
+ if (usb_hcd_is_primary_hcd(hcd) && irqnum) {
retval = usb_hcd_request_irqs(hcd, irqnum, irqflags);
if (retval)
goto err_request_irq;