]> git.karo-electronics.de Git - karo-tx-linux.git/commit
USB: EHCI: add software retry for transaction errors
authorAlan Stern <stern@rowland.harvard.edu>
Thu, 26 Mar 2009 18:25:05 +0000 (18:25 +0000)
committerChris Wright <chrisw@sous-sol.org>
Thu, 2 Apr 2009 20:55:15 +0000 (13:55 -0700)
commit39f8c8a3ef3864bb8ed42c5d2159d6a9b0f0b36c
tree1a389f7fd855b6f0b2e01e87f83c97fb616a3fdd
parentce2a2dc25260683d83a895bf11a2667aaac84feb
USB: EHCI: add software retry for transaction errors

upstream commit: a2c2706e1043c17139c2dafd171c4a5cf008ef7e

This patch (as1204) adds a software retry mechanism to ehci-hcd.  It
gets invoked when the driver encounters transaction errors on an
asynchronous endpoint.  On many systems, hardware deficiencies cause
such errors to occur if one device is unplugged while the host is
communicating with another device.  With the patch, the failed
transactions are retried and generally succeed the second or third
time through.

This is based on code originally written by Koichiro Saito.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested by: Koichiro Saito <Saito.Koichiro@adniss.jp>
CC: David Brownell <david-b@pacbell.net>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
drivers/usb/host/ehci-q.c
drivers/usb/host/ehci.h