|
@@ -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;
|