mbox

[PULL,00/54] usb patch queue

Message ID 1346915575-12369-1-git-send-email-kraxel@redhat.com
State New
Headers show

Pull-request

git://git.kraxel.org/qemu usb.62

Message

Gerd Hoffmann Sept. 6, 2012, 7:12 a.m. UTC
Hi,

Here comes the usb patch queue with a bunch of new goodies accumulated
while qemu was in freeze for the 1.2 release:

 * ehci gets more tracepoints & improvements in the queuing code and
   minor bugfixes (the important fixes where a last minute 1.2 pull).
 * usbredir goes make use of the new queues in the usb core instead
   of managing its own.  Also a bunch of preparations for live
   migration support.
 * xhci gets a bunch of fixes and improvements: port handling fixes,
   fix & enable msi/msix support, support for multiple interrupters,
   support for iso transfers, tracing improvemnets, cleanups & fixes.
 * usb core got support for creating usb3 descriptors.
 * usb3 emulation is enabled for usb-storage, so when hooking up
   usb-storage to xhci it shows up as usb3 device in the guest.
 * Little fixes here and there.

cheers,
  Gerd

The following changes since commit 8db972cfa469b4e4afd9c65e54e796b83b5ce3a2:

  Update version for 1.2.0 (2012-09-05 07:50:01 -0500)

are available in the git repository at:
  git://git.kraxel.org/qemu usb.62

Gerd Hoffmann (28):
      ehci: check for EHCI_ASYNC_FINISHED first in ehci_free_packet
      ehci: trace guest bugs
      ehci: add doorbell trace events
      usb-audio: fix usb version
      xhci: rip out background transfer code
      xhci: drop buffering
      xhci: move device lookup into xhci_setup_packet
      xhci: implement mfindex
      xhci: iso xfer support
      xhci: trace cc codes in cleartext
      xhci: add trace_usb_xhci_ep_set_dequeue
      xhci: fix runtime write tracepoint
      xhci: update register layout
      xhci: update port handling
      usb3: superspeed descriptors
      usb3: superspeed endpoint companion
      usb3: bos decriptor
      usb-storage: usb3 support
      xhci: fix & cleanup msi.
      xhci: rework interrupt handling
      xhci: add msix support
      xhci: move register update into xhci_intr_raise
      xhci: add XHCIInterrupter
      xhci: prepare xhci_runtime_{read,write} for multiple interrupters
      xhci: pick target interrupter
      xhci: support multiple interrupters
      xhci: kill xhci_mem_{read,write} dispatcher functions
      xhci: allow bytewise capability register reads

Hans de Goede (25):
      usb: controllers do not need to check for babble themselves
      usb-core: Don't set packet state to complete on a nak
      usb-core: Add a usb_ep_find_packet_by_id() helper function
      usb-core: Allow the first packet of a pipelined ep to complete immediately
      Revert "ehci: don't flush cache on doorbell rings."
      ehci: Validate qh is not changed unexpectedly by the guest
      ehci: Update copyright headers to reflect recent work
      ehci: Properly cleanup packets on cancel
      ehci: Properly report completed but not yet processed packets to the guest
      ehci: Add some additional ehci_trace_guest_bug() calls
      ehci: Fix memory leak in handling of NAK-ed packets
      ehci: Handle USB_RET_PROCERR in ehci_fill_queue
      ehci: Correct a comment in fetchqtd packet processing
      usb-redir: Never return USB_RET_NAK for async handled packets
      usb-redir: Don't delay handling of open events to a bottom half
      usb-redir: Get rid of async-struct get member
      usb-redir: Get rid of local shadow copy of packet headers
      usb-redir: Get rid of unused async-struct dev member
      usb-redir: Move to core packet id and queue handling
      usb-redir: Return babble when getting more bulk data then requested
      usb-redir: Convert to new libusbredirparser 0.5 API
      usb-redir: Set ep max_packet_size if available
      usb-redir: Add a usbredir_reject_device helper function
      usb-redir: Ensure our peer has the necessary caps when redirecting to XHCI
      usb-redir: Enable pipelining for bulk endpoints

Samuel Thibault (1):
      Better name usb braille device

 configure            |    2 +-
 hw/usb.h             |    9 +
 hw/usb/core.c        |   23 +-
 hw/usb/desc.c        |  174 ++++++-
 hw/usb/desc.h        |   52 ++-
 hw/usb/dev-audio.c   |    2 +-
 hw/usb/dev-serial.c  |    2 +-
 hw/usb/dev-storage.c |   46 ++-
 hw/usb/hcd-ehci.c    |  180 ++++---
 hw/usb/hcd-uhci.c    |    5 -
 hw/usb/hcd-xhci.c    | 1432 ++++++++++++++++++++++++++------------------------
 hw/usb/redirect.c    |  477 ++++++++---------
 trace-events         |   12 +-
 13 files changed, 1376 insertions(+), 1040 deletions(-)

Comments

Aurelien Jarno Sept. 10, 2012, 1:23 p.m. UTC | #1
On Thu, Sep 06, 2012 at 09:12:01AM +0200, Gerd Hoffmann wrote:
>   Hi,
> 
> Here comes the usb patch queue with a bunch of new goodies accumulated
> while qemu was in freeze for the 1.2 release:
> 
>  * ehci gets more tracepoints & improvements in the queuing code and
>    minor bugfixes (the important fixes where a last minute 1.2 pull).
>  * usbredir goes make use of the new queues in the usb core instead
>    of managing its own.  Also a bunch of preparations for live
>    migration support.
>  * xhci gets a bunch of fixes and improvements: port handling fixes,
>    fix & enable msi/msix support, support for multiple interrupters,
>    support for iso transfers, tracing improvemnets, cleanups & fixes.
>  * usb core got support for creating usb3 descriptors.
>  * usb3 emulation is enabled for usb-storage, so when hooking up
>    usb-storage to xhci it shows up as usb3 device in the guest.
>  * Little fixes here and there.
> 
> cheers,
>   Gerd
> 
> The following changes since commit 8db972cfa469b4e4afd9c65e54e796b83b5ce3a2:
> 
>   Update version for 1.2.0 (2012-09-05 07:50:01 -0500)
> 
> are available in the git repository at:
>   git://git.kraxel.org/qemu usb.62
> 
> Gerd Hoffmann (28):
>       ehci: check for EHCI_ASYNC_FINISHED first in ehci_free_packet
>       ehci: trace guest bugs
>       ehci: add doorbell trace events
>       usb-audio: fix usb version
>       xhci: rip out background transfer code
>       xhci: drop buffering
>       xhci: move device lookup into xhci_setup_packet
>       xhci: implement mfindex
>       xhci: iso xfer support
>       xhci: trace cc codes in cleartext
>       xhci: add trace_usb_xhci_ep_set_dequeue
>       xhci: fix runtime write tracepoint
>       xhci: update register layout
>       xhci: update port handling
>       usb3: superspeed descriptors
>       usb3: superspeed endpoint companion
>       usb3: bos decriptor
>       usb-storage: usb3 support
>       xhci: fix & cleanup msi.
>       xhci: rework interrupt handling
>       xhci: add msix support
>       xhci: move register update into xhci_intr_raise
>       xhci: add XHCIInterrupter
>       xhci: prepare xhci_runtime_{read,write} for multiple interrupters
>       xhci: pick target interrupter
>       xhci: support multiple interrupters
>       xhci: kill xhci_mem_{read,write} dispatcher functions
>       xhci: allow bytewise capability register reads
> 
> Hans de Goede (25):
>       usb: controllers do not need to check for babble themselves
>       usb-core: Don't set packet state to complete on a nak
>       usb-core: Add a usb_ep_find_packet_by_id() helper function
>       usb-core: Allow the first packet of a pipelined ep to complete immediately
>       Revert "ehci: don't flush cache on doorbell rings."
>       ehci: Validate qh is not changed unexpectedly by the guest
>       ehci: Update copyright headers to reflect recent work
>       ehci: Properly cleanup packets on cancel
>       ehci: Properly report completed but not yet processed packets to the guest
>       ehci: Add some additional ehci_trace_guest_bug() calls
>       ehci: Fix memory leak in handling of NAK-ed packets
>       ehci: Handle USB_RET_PROCERR in ehci_fill_queue
>       ehci: Correct a comment in fetchqtd packet processing
>       usb-redir: Never return USB_RET_NAK for async handled packets
>       usb-redir: Don't delay handling of open events to a bottom half
>       usb-redir: Get rid of async-struct get member
>       usb-redir: Get rid of local shadow copy of packet headers
>       usb-redir: Get rid of unused async-struct dev member
>       usb-redir: Move to core packet id and queue handling
>       usb-redir: Return babble when getting more bulk data then requested
>       usb-redir: Convert to new libusbredirparser 0.5 API
>       usb-redir: Set ep max_packet_size if available
>       usb-redir: Add a usbredir_reject_device helper function
>       usb-redir: Ensure our peer has the necessary caps when redirecting to XHCI
>       usb-redir: Enable pipelining for bulk endpoints
> 
> Samuel Thibault (1):
>       Better name usb braille device
> 
>  configure            |    2 +-
>  hw/usb.h             |    9 +
>  hw/usb/core.c        |   23 +-
>  hw/usb/desc.c        |  174 ++++++-
>  hw/usb/desc.h        |   52 ++-
>  hw/usb/dev-audio.c   |    2 +-
>  hw/usb/dev-serial.c  |    2 +-
>  hw/usb/dev-storage.c |   46 ++-
>  hw/usb/hcd-ehci.c    |  180 ++++---
>  hw/usb/hcd-uhci.c    |    5 -
>  hw/usb/hcd-xhci.c    | 1432 ++++++++++++++++++++++++++------------------------
>  hw/usb/redirect.c    |  477 ++++++++---------
>  trace-events         |   12 +-
>  13 files changed, 1376 insertions(+), 1040 deletions(-)
> 

This doesn't build:

| hw/usb/hcd-xhci.c: In function ‘xhci_fire_ctl_transfer’:
| hw/usb/hcd-xhci.c:1508:14: error: variable ‘wLength’ set but not used [-Werror=unused-but-set-variable]
Gerd Hoffmann Sept. 10, 2012, 1:37 p.m. UTC | #2
Hi,

> | hw/usb/hcd-xhci.c: In function ‘xhci_fire_ctl_transfer’:
> | hw/usb/hcd-xhci.c:1508:14: error: variable ‘wLength’ set but not used [-Werror=unused-but-set-variable]

Pushed updated branch usb.63 (same as usb.62 + one incremental fix).

cheers,
  Gerd
Andreas Färber Sept. 10, 2012, 3:08 p.m. UTC | #3
Am 10.09.2012 15:37, schrieb Gerd Hoffmann:
>   Hi,
> 
>> | hw/usb/hcd-xhci.c: In function ‘xhci_fire_ctl_transfer’:
>> | hw/usb/hcd-xhci.c:1508:14: error: variable ‘wLength’ set but not used [-Werror=unused-but-set-variable]
> 
> Pushed updated branch usb.63 (same as usb.62 + one incremental fix).

Can't you squash that for bisectability?

Andreas
Anthony Liguori Sept. 10, 2012, 5:49 p.m. UTC | #4
Andreas Färber <afaerber@suse.de> writes:

> Am 10.09.2012 15:37, schrieb Gerd Hoffmann:
>>   Hi,
>> 
>>> | hw/usb/hcd-xhci.c: In function ‘xhci_fire_ctl_transfer’:
>>> | hw/usb/hcd-xhci.c:1508:14: error: variable ‘wLength’ set but not used [-Werror=unused-but-set-variable]
>> 
>> Pushed updated branch usb.63 (same as usb.62 + one incremental fix).
>
> Can't you squash that for bisectability?

Yes, please do.

Regards,

Anthony Liguori

>
> Andreas
>
> -- 
> SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
> GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
Gerd Hoffmann Sept. 11, 2012, 5:46 a.m. UTC | #5
On 09/10/12 19:49, Anthony Liguori wrote:
> Andreas Färber <afaerber@suse.de> writes:
> 
>> Am 10.09.2012 15:37, schrieb Gerd Hoffmann:
>>>   Hi,
>>>
>>>> | hw/usb/hcd-xhci.c: In function ‘xhci_fire_ctl_transfer’:
>>>> | hw/usb/hcd-xhci.c:1508:14: error: variable ‘wLength’ set but not used [-Werror=unused-but-set-variable]
>>>
>>> Pushed updated branch usb.63 (same as usb.62 + one incremental fix).
>>
>> Can't you squash that for bisectability?
> 
> Yes, please do.

Squashed & rebased to master.
Pushed to git://git.kraxel.org/qemu usb.64

cheers,
  Gerd
Aurelien Jarno Sept. 11, 2012, 5:22 p.m. UTC | #6
On Tue, Sep 11, 2012 at 07:46:13AM +0200, Gerd Hoffmann wrote:
> On 09/10/12 19:49, Anthony Liguori wrote:
> > Andreas Färber <afaerber@suse.de> writes:
> > 
> >> Am 10.09.2012 15:37, schrieb Gerd Hoffmann:
> >>>   Hi,
> >>>
> >>>> | hw/usb/hcd-xhci.c: In function ‘xhci_fire_ctl_transfer’:
> >>>> | hw/usb/hcd-xhci.c:1508:14: error: variable ‘wLength’ set but not used [-Werror=unused-but-set-variable]
> >>>
> >>> Pushed updated branch usb.63 (same as usb.62 + one incremental fix).
> >>
> >> Can't you squash that for bisectability?
> > 
> > Yes, please do.
> 
> Squashed & rebased to master.
> Pushed to git://git.kraxel.org/qemu usb.64
> 

Pulled.