USB: Don't resume root hub if the controller is suspended
authorAlan Stern <stern@rowland.harvard.edu>
Thu, 21 Jun 2007 20:25:35 +0000 (16:25 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 12 Jul 2007 23:34:39 +0000 (16:34 -0700)
commitcfa59dab27d1b282886e7772a8f9548236883892
treeaaf71c0fb69d5133bfc71451d6541f1b49494dbb
parente7e6da9eb189dfa221e3bf9c21d58f02adc8983c
USB: Don't resume root hub if the controller is suspended

Root hubs can't be resumed if their parent controller device is still
suspended.  This patch (as925) adds a check for that condition in
hcd_bus_resume() and prevents it from being treated as a fatal
controller failure.

ehci-hcd is updated to add the corresponding test.  Unnecessary
debugging messages are removed from uhci-hcd and dummy-hcd.  The
error return code from dummy-hcd is changed to -ESHUTDOWN, the same as
the others.  ohci-hcd doesn't need any changes.

Suspend handling in the non-PCI host drivers is somewhat hit-and-miss.
This patch shouldn't have any effect on them.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/core/hcd.c
drivers/usb/gadget/dummy_hcd.c
drivers/usb/host/ehci-hub.c
drivers/usb/host/uhci-hcd.c