Statistics
| Branch: | Revision:

root / hw / usb @ 6efa6d50

Name Size
Makefile.objs 534 Bytes
bus.c 15.8 kB
core.c 20.9 kB
desc.c 22.5 kB
desc.h 7.9 kB
dev-audio.c 23 kB
dev-bluetooth.c 16.7 kB
dev-hid.c 20.2 kB
dev-hub.c 17 kB
dev-network.c 43.3 kB
dev-serial.c 17.5 kB
dev-smartcard-reader.c 41.8 kB
dev-storage.c 20.2 kB
dev-uas.c 21.6 kB
dev-wacom.c 10 kB
hcd-ehci.c 81.6 kB
hcd-musb.c 43.9 kB
hcd-ohci.c 54.2 kB
hcd-uhci.c 38 kB
hcd-xhci.c 88.7 kB
host-bsd.c 17.7 kB
host-linux.c 56.5 kB
host-stub.c 1.9 kB
libhw.c 2.3 kB
redirect.c 60.2 kB

Latest revisions

# Date Author Comment
0ebfb144 10/25/2012 03:38 pm Gerd Hoffmann

xhci: fix usb name in caps

Used to be "UTB" not "USB".

Signed-off-by: Gerd Hoffmann <>

91062ae0 10/25/2012 03:37 pm Gerd Hoffmann

xhci: make number of interrupters and slots configurable

Add properties to tweak the numbers of available interrupters and slots.

Signed-off-by: Gerd Hoffmann <>

e099ad4b 10/25/2012 03:35 pm Gerd Hoffmann

xhci: allow disabling interrupters

For secondary interrupters this is explicitly allowed in the specs.
For the primary interrupter behavior is undefined, lets be friendly
and allow disabling too.

Signed-off-by: Gerd Hoffmann <>

3f973ee8 10/25/2012 03:35 pm Gerd Hoffmann

xhci: flush endpoint context unconditinally

Not updating the endpoint context in case the state didn't change is
wrong. Other context fields might have changed, for example the
dequeue pointer in response to a CR_SET_TR_DEQUEUE command.

Signed-off-by: Gerd Hoffmann <>

79a8af35 10/25/2012 03:35 pm Gerd Hoffmann

xhci: fix function name in error message

Signed-off-by: Gerd Hoffmann <>

420ca987 10/25/2012 10:08 am Hans de Goede

uhci: When the guest marks a pending td non-active, cancel the queue

Signed-off-by: Hans de Goede <>
Signed-off-by: Gerd Hoffmann <>

3905097e 10/25/2012 10:08 am Hans de Goede

uhci: Always mark a queue valid when we encounter it

Before this patch we would not mark a queue valid when its head was a
non-active td. This causes us to misbehave in the following scenario:

1) queue with multiple input transfers queued
2) We hit some latency issue, causing qemu to get behind processing frames...

8928c9c4 10/25/2012 10:08 am Hans de Goede

uhci: Retry to fill the queue while waiting for td completion

If the guest is using multiple transfers to try and keep the usb bus busy /
used at maximum efficiency, currently we would see / do the following:

1) submit transfer 1 to the device
2) submit transfer 2 to the device...

6fe30910 10/25/2012 10:08 am Hans de Goede

uhci: Use only one queue for ctrl endpoints

ctrl endpoints use different pids for different phases of a control
transfer, this patch makes us use only one queue for a ctrl ep, rather
then 3.

Signed-off-by: Hans de Goede <>
Signed-off-by: Gerd Hoffmann <>

8c75a899 10/25/2012 10:08 am Hans de Goede

uhci: Detect guest td re-use

A td can be reused by the guest in a different queue, before we notice
the original queue has been unlinked. So search for tds by addr only, detect
guest td reuse, and cancel the original queue, this is necessary to keep our
packet ids unique....

View revisions

Also available in: Atom