Intel xhci: Ignore spurious successful event.
authorSarah Sharp <sarah.a.sharp@linux.intel.com>
Wed, 25 May 2011 17:43:56 +0000 (10:43 -0700)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Fri, 27 May 2011 19:08:13 +0000 (12:08 -0700)
commitad808333d8201d53075a11bc8dd83b81f3d68f0b
tree40f3a11f028175f61cce14088a0f93ebd68c4b60
parent69e848c2090aebba5698a1620604c7dccb448684
Intel xhci: Ignore spurious successful event.

The xHCI host controller in the Panther Point chipset sometimes produces
spurious events on the event ring.  If it receives a short packet, it
first puts a Transfer Event with a short transfer completion code on the
event ring.  Then it puts a Transfer Event with a successful completion
code on the ring for the same TD.  The xHCI driver correctly processes the
short transfer completion code, gives the URB back to the driver, and then
prints a warning in dmesg about the spurious event.  These warning
messages really fill up dmesg when an HD webcam is plugged into xHCI.

This spurious successful event behavior isn't technically disallowed by
the xHCI specification, so make the xHCI driver just ignore the spurious
completion event.

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
drivers/usb/host/xhci-pci.c
drivers/usb/host/xhci-ring.c
drivers/usb/host/xhci.h