diff options
author | Gerd Hoffmann | 2012-11-30 16:02:11 +0100 |
---|---|---|
committer | Gerd Hoffmann | 2013-04-16 12:04:09 +0200 |
commit | 2b2325ff6491224a42e1fec99b1c39fbc521c95c (patch) | |
tree | 995a7707b94bee56d11fc3a2f526ffe936a922c9 /trace-events | |
parent | xhci: fix address device (diff) | |
download | qemu-2b2325ff6491224a42e1fec99b1c39fbc521c95c.tar.gz qemu-2b2325ff6491224a42e1fec99b1c39fbc521c95c.tar.xz qemu-2b2325ff6491224a42e1fec99b1c39fbc521c95c.zip |
use libusb for usb-host
Reimplement usb-host on top of libusb.
Reasons to do this:
(1) Largely rewritten from scratch, nice opportunity to kill historical
cruft.
(2) Offload usbfs handling to libusb.
(3) Have a single portable code base instead of bsd + linux variants.
(4) Bring usb-host support to any platform supported by libusbx.
For now this goes side-by-side to the existing code. That is only to
simplify regression testing though, at the end of the day I want remove
the old code and support libusb exclusively. Merge early in 1.5 cycle,
remove the old code after 1.5 release or something like this.
Thanks to qdev the old and new code can coexist nicely on linux. Just
use "-device usb-host-linux" to use the old linux driver instead of the
libusb one (which takes over the "usb-host" name).
The bsd driver isn't qdev'ified so it isn't that easy for bsd.
I didn't bother making it runtime switchable, so you have to rebuild
qemu with --disable-libusb to get back the old code.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'trace-events')
-rw-r--r-- | trace-events | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/trace-events b/trace-events index 54b7d9082d..bf6bd85458 100644 --- a/trace-events +++ b/trace-events @@ -425,11 +425,15 @@ usb_host_open_success(int bus, int addr) "dev %d:%d" usb_host_open_failure(int bus, int addr) "dev %d:%d" usb_host_disconnect(int bus, int addr) "dev %d:%d" usb_host_close(int bus, int addr) "dev %d:%d" +usb_host_attach_kernel(int bus, int addr, int interface) "dev %d:%d, if %d" +usb_host_detach_kernel(int bus, int addr, int interface) "dev %d:%d, if %d" usb_host_set_address(int bus, int addr, int config) "dev %d:%d, address %d" usb_host_set_config(int bus, int addr, int config) "dev %d:%d, config %d" usb_host_set_interface(int bus, int addr, int interface, int alt) "dev %d:%d, interface %d, alt %d" usb_host_claim_interfaces(int bus, int addr, int config, int nif) "dev %d:%d, config %d, nif %d" +usb_host_claim_interface(int bus, int addr, int config, int interface) "dev %d:%d, config %d, if %d" usb_host_release_interfaces(int bus, int addr) "dev %d:%d" +usb_host_release_interface(int bus, int addr, int interface) "dev %d:%d, if %d" usb_host_req_control(int bus, int addr, void *p, int req, int value, int index) "dev %d:%d, packet %p, req 0x%x, value %d, index %d" usb_host_req_data(int bus, int addr, void *p, int in, int ep, int size) "dev %d:%d, packet %p, in %d, ep %d, size %d" usb_host_req_complete(int bus, int addr, void *p, int status, int length) "dev %d:%d, packet %p, status %d, length %d" |