]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/usb/host/ehci-hub.c
Merge branch 'blk-end-request' of git://git.kernel.dk/linux-2.6-block
[karo-tx-linux.git] / drivers / usb / host / ehci-hub.c
index 71aeca019e880075368393c7c7f0d75dd3118cae..735db4aec831cc2302a761801f51eccc25efdeb7 100644 (file)
@@ -199,6 +199,10 @@ static int ehci_bus_resume (struct usb_hcd *hcd)
        if (time_before (jiffies, ehci->next_statechange))
                msleep(5);
        spin_lock_irq (&ehci->lock);
+       if (!test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags)) {
+               spin_unlock_irq(&ehci->lock);
+               return -ESHUTDOWN;
+       }
 
        /* Ideally and we've got a real resume here, and no port's power
         * was lost.  (For PCI, that means Vaux was maintained.)  But we
@@ -447,7 +451,7 @@ ehci_hub_status_data (struct usb_hcd *hcd, char *buf)
 
        /* Some boards (mostly VIA?) report bogus overcurrent indications,
         * causing massive log spam unless we completely ignore them.  It
-        * may be relevant that VIA VT8235 controlers, where PORT_POWER is
+        * may be relevant that VIA VT8235 controllers, where PORT_POWER is
         * always set, seem to clear PORT_OCC and PORT_CSC when writing to
         * PORT_POWER; that's surprising, but maybe within-spec.
         */