Skip to content

Commit

Permalink
[PATCH] usb/core/hcd-pci.c: don't free_irq() on suspend
Browse files Browse the repository at this point in the history
the free_irq() in USB suspend breaks resume on some setups where USB
(ohci/ehci) shares the interrupt with an other device.

Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Daniel Ritz authored and Linus Torvalds committed Sep 30, 2005
1 parent 1294b11 commit 03cdc0c
Showing 1 changed file with 0 additions and 9 deletions.
9 changes: 0 additions & 9 deletions drivers/usb/core/hcd-pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,6 @@ int usb_hcd_pci_suspend (struct pci_dev *dev, pm_message_t message)
case HC_STATE_SUSPENDED:
/* no DMA or IRQs except when HC is active */
if (dev->current_state == PCI_D0) {
free_irq (hcd->irq, hcd);
pci_save_state (dev);
pci_disable_device (dev);
}
Expand Down Expand Up @@ -374,14 +373,6 @@ int usb_hcd_pci_resume (struct pci_dev *dev)

hcd->state = HC_STATE_RESUMING;
hcd->saw_irq = 0;
retval = request_irq (dev->irq, usb_hcd_irq, SA_SHIRQ,
hcd->irq_descr, hcd);
if (retval < 0) {
dev_err (hcd->self.controller,
"can't restore IRQ after resume!\n");
usb_hc_died (hcd);
return retval;
}

retval = hcd->driver->resume (hcd);
if (!HC_IS_RUNNING (hcd->state)) {
Expand Down

0 comments on commit 03cdc0c

Please sign in to comment.