Hi, Here comes the current usb patch queue. It brings some bugfixes. It also revamps the usb packet workflow to move the whole thing to a event-based workflow. xhci emulation needs this, and we also might be able to use this with the other host adapters to reduce emulation cpu overhead, although it is much harder there due to the way the hardware is designed ...
All patches have been on the list for review. Some of them needed some adaptions to the QOM changes while rebasing, otherwise they are almost unmodified though. please pull, Gerd The following changes since commit 57c83dacfe179bf061b8fa79d9553ebabe4d2ff4: make: Remove duplicate use of GLIB_CFLAGS (2012-02-09 20:44:38 +0400) are available in the git repository at: git://git.kraxel.org/qemu usb.38 Gerd Hoffmann (26): usb-uhci: implement bandwidth management usb: kill USB_MSG_{ATTACH,DETACH} usb: kill USB_MSG_RESET usb: kill usb_send_msg usb: add usb_find_device() usb-hub: implement find_device usb: handle dev == NULL in usb_handle_packet() usb-uhci: switch to usb_find_device() usb-ehci: switch to usb_find_device() usb-ohci: switch to usb_find_device() usb-musb: switch to usb_find_device() usb-xhci: switch to usb_find_device() usb: kill handle_packet callback usb: fold usb_generic_handle_packet into usb_handle_packet usb: USBPacket: add status, rename owner -> ep usb: add USBEndpoint->{nr,pid} usb: Set USBEndpoint in usb_packet_setup(). usb: maintain async packet list per endpoint usb: pass USBEndpoint to usb_wakeup usb: add USBBusOps->wakeup_endpoint xhci: signal low- and fullspeed support xhci: add trb type name lookup support. xhci: stop on errors xhci: kill port arg from xhci_setup_packet xhci: remote wakeup support xhci: handle USB_RET_NAK Hans de Goede (2): usb-ehci: Clear the portstatus powner bit on device disconnect usb-redir: Add the posibility to filter out certain devices from redirecion configure | 2 +- hw/usb-audio.c | 5 +- hw/usb-bt.c | 5 +- hw/usb-bus.c | 14 ++-- hw/usb-ccid.c | 7 +- hw/usb-ehci.c | 93 ++++++++++----------- hw/usb-hid.c | 7 +- hw/usb-hub.c | 72 ++++++---------- hw/usb-msd.c | 3 +- hw/usb-musb.c | 18 ++-- hw/usb-net.c | 7 +- hw/usb-ohci.c | 81 +++++++++--------- hw/usb-serial.c | 4 +- hw/usb-uhci.c | 93 ++++++++++----------- hw/usb-wacom.c | 3 +- hw/usb-xhci.c | 248 ++++++++++++++++++++++++++++++++++++++++++++++-------- hw/usb.c | 240 +++++++++++++++++++++++++++++++++++------------------ hw/usb.h | 56 ++++++++----- usb-bsd.c | 3 +- usb-linux.c | 45 +++++----- usb-redir.c | 118 +++++++++++++++++++++++--- 21 files changed, 726 insertions(+), 398 deletions(-)