]> xenbits.xensource.com Git - qemu-xen-unstable.git/commit
usb-ehci: Fix cerr tracking
authorHans de Goede <hdegoede@redhat.com>
Fri, 2 Mar 2012 20:27:15 +0000 (21:27 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Wed, 7 Mar 2012 11:28:03 +0000 (12:28 +0100)
commitdd54cfe0bcf30d1f3a34e9c397f619d423fe0c5b
treeb7d27fbaf6599a5307822e0c44f081056967103a
parent2763cbc751c494dd2f58f902ad80a8048f9cfd7b
usb-ehci: Fix cerr tracking

cerr should only be decremented on errors which cause XactErr to be set, and
when that happens the failing transaction should be retried until cerr reaches
0 and only then should USBSTS_ERRINT be set (and inactive cleared and
USBSTS_INT set if requested).

Since we don't have any hardware level errors (and in case of redirection
the real hardware has already retried), re-trying makes no sense, so
immediately set cerr to 0 on errors which set XactErr.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
hw/usb-ehci.c