usb-xhci: enable packet queuing
qemu usb core has packet queues now, so flip lets the switch.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
usb: add tracepoint for usb packet state changes.
usb-ehci: sanity-check iso xfers
This patch adds a sanity check to itd processing to make sure theendpoint addressed by the guest is actually an iso endpoint. Alsoverify that usb drivers don't return USB_RET_ASYNC which is illegal foriso xfers.
usb-desc: fix user trigerrable segfaults (!config)
Check for dev->config being NULL in two places: USB_REQ_GET_CONFIGURATION and USB_REQ_GET_STATUS.
The behavior of USB_REQ_GET_STATUS is unspecified in the Default state,that corresponds to dev->config being NULL (it defaults to NULL and is...
usb-ccid: advertise SELF_POWERED
Before commit ed5a83ddd8c1d8ec7b1015315530cf29949e7c48 each deviceprovided it's own response to USB_REQ_GET_STATUS, but after it thatresponse was based on bmAttributes, which was errounously set forusb-ccid as 0xa0 and not 0xe0....
usb-uhci: add UHCIQueue
UHCIAsync structs (in-flight requests) grouped in UHCIQueue now.Each (active) usb endpoint gets its own UHCIQueue.
usb-uhci: process uhci_handle_td return code via switch.
Restruct the uhci_handle_td return code processing to make thecontrol flow more clear and the code more readable.
usb-uhci: implement packet queuing
When a usb device is busy processing a packet (and returnsUSB_RET_ASYNC), continue walking the transfer descriptor listand process them to fill the request queue.
usb-ehci: fix reset
Two reset fixes: * pick up s->usbcmd value after ehci_reset call to make sure it keeps the reset value and doesn't get rubbish filled in when val is written back to the mmio register array later on. * make sure the frame timer is zapped on reset....
usb-uhci: cleanup UHCIAsync allocation & initialization.
View revisions
Also available in: Atom