EHCI: always clear the STS_FLR status bit
authorAlan Stern <stern@rowland.harvard.edu>
Wed, 18 Apr 2012 15:33:00 +0000 (11:33 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 11 May 2012 12:14:02 +0000 (13:14 +0100)
commit03668ebf38dcb0add8c2e55f1c6f02dcd4f16494
tree1f4b45f884b10013d04d4fb1426fa6c73fb8c514
parent1c09b62a4c42d7049e433458859f1c4e61467693
EHCI: always clear the STS_FLR status bit

commit 2fbe2bf1fd37f9d99950bd8d8093623cf22cf08b upstream.

This patch (as1544) fixes a problem affecting some EHCI controllers.
They can generate interrupts whenever the STS_FLR status bit is turned
on, even though that bit is masked out in the Interrupt Enable
register.

Since the driver doesn't use STS_FLR anyway, the patch changes the
interrupt routine to clear that bit whenever it is set, rather than
leaving it alone.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Reported-and-tested-by: Tomoya MORINAGA <tomoya.rohm@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/usb/host/ehci-hcd.c