[Spice-devel] RFC: usb redirection plan
kraxel at redhat.com
Mon Nov 29 09:26:25 PST 2010
> Step 4:
> Look into getting usb-2.0 support into qemu
Have you looked at xHCI + usb 3.0?
I think it would be a good idea to do that to make sure the redirection
protocol can handle usb3 just fine. In a few years usb3 will be
everythere, and when designing something now we should make sure it
works nicely with usb3.
I had a brief look at the xHCI specs. It looks pretty nice from a
emulation point of view. It is fully event driven design. It does more
in hardware than UHCI+EHCI (it has to to reach the speeds without
keeping the cpu 100% busy ;) IIRC the guest can just hand a ring buffer
to the xHCI for iso xfers, no need to fiddle with usb packets manually.
This is nice as it probably allows a quite efficient emulation. I
think it is good for usb redirection too. Also xHCI handles all usb
devices, so the UHCI/EHCI split for USB 1.1/2.0 devices which is quite
nasty to emulate isn't there.
Jumping from USB 1.1 straight to USB 3.0 looks quite attractive from a
emulation point of view, only problem with that is guest support, we
can't (yet) expect guests to handle usb3 out-of-the-box. Also the qemu
usb subsystem needs some work to handle usb3 nicely.
More information about the Spice-devel