aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/core/hcd-pci.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/usb/core/hcd-pci.c b/drivers/usb/core/hcd-pci.c
index 1cf2d1e79a5c..7e2d5271b0c9 100644
--- a/drivers/usb/core/hcd-pci.c
+++ b/drivers/usb/core/hcd-pci.c
@@ -292,6 +292,14 @@ void usb_hcd_pci_remove(struct pci_dev *dev)
292 if (!hcd) 292 if (!hcd)
293 return; 293 return;
294 294
295 /* Fake an interrupt request in order to give the driver a chance
296 * to test whether the controller hardware has been removed (e.g.,
297 * cardbus physical eject).
298 */
299 local_irq_disable();
300 usb_hcd_irq(0, hcd);
301 local_irq_enable();
302
295 usb_remove_hcd(hcd); 303 usb_remove_hcd(hcd);
296 if (hcd->driver->flags & HCD_MEMORY) { 304 if (hcd->driver->flags & HCD_MEMORY) {
297 iounmap(hcd->regs); 305 iounmap(hcd->regs);