OHCI: Allow broken controllers to auto-stop
authorAlan Stern <stern@rowland.harvard.edu>
Wed, 3 Sep 2008 20:38:32 +0000 (16:38 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 17 Oct 2008 21:40:54 +0000 (14:40 -0700)
commit4a511bc3f5829bc18428bcf11c25417a79d09396
treed2512a4e4cdf680f297e0af8be6566f9f95fdfb7
parent8bfa24727087d7252f9ecfb5fea2dfc92d797fbd
OHCI: Allow broken controllers to auto-stop

This patch (as1134) attempts to improve the way we handle OHCI
controllers with broken Root Hub Status Change interrupt support.  In
these controllers the RHSC interrupt bit essentially never turns off,
making RHSC interrupts useless -- they have to remain permanently
disabled.

Such controllers should still be allowed to turn off their root hubs
when no devices are attached.  Polling for new connections can
continue while the root hub is suspended.  The patch implements this
feature.  (It won't have much effect unless CONFIG_PM is enabled and
CONFIG_USB_SUSPEND is disabled, but since the overhead is very small
we may as well do it.)

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/ohci-hub.c