Hector Martin
62c6ae04cf
xhci: Initial xHCI implementation
...
Based on the implementation from Hector Martin <hector@marcansoft.com>
Hectors's implementation completely sidestepped the qemu usb system and
used libusb directly for usb device pass through. So I've ripped out
the libusb bits (or left them in disabled, as reference for further
coding) and hooked up the qemu subsystem instead. That work is not
complete yet though, partly due to limitations of the qemu usb
subsystem. Nevertheless I think it is better to continue development
in-tree, especially as the qemu usb bits need a bunch of improvements
too for decent usb 3.0 support.
Current state:
- usb-storage emulation should work ok.
- Devices which need constant polling (HID emulation like usb-tablet)
are known to not work.
- ISO xfers are not implemented yet.
- superspeed ports are not implemented yet.
- usb pass-through is completely untested so far.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-01-17 09:44:32 +01:00
..
2012-01-06 12:50:44 -06:00
2011-12-20 15:44:30 -06:00
2012-01-04 13:41:42 +00:00
2011-11-07 10:57:37 -06:00
2011-10-28 19:25:51 +02:00
2011-12-06 09:56:41 +00:00
2011-10-06 09:48:07 +02:00
2011-10-06 09:48:07 +02:00
2011-12-20 15:44:31 -06:00
2011-12-20 15:44:30 -06:00
2011-10-08 08:49:09 -07:00
2011-12-20 15:44:30 -06:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-12-12 10:26:31 +00:00
2012-01-04 13:41:42 +00:00
2012-01-04 13:41:42 +00:00
2011-12-12 10:26:31 +00:00
2011-10-16 11:11:55 +00:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:41:42 +00:00
2011-09-04 17:46:50 +03:00
2012-01-04 13:34:48 +02:00
2011-12-20 15:44:31 -06:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-12-06 09:56:41 +00:00
2011-09-03 10:45:59 +00:00
2011-12-12 17:06:22 -06:00
2011-11-28 16:20:53 -06:00
2011-12-19 09:12:25 -06:00
2011-10-17 15:59:18 +02:00
2011-12-15 09:20:47 -06:00
2011-10-16 11:11:55 +00:00
2011-11-28 15:38:45 +02:00
2011-12-20 15:44:31 -06:00
2011-10-06 09:48:07 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 02:48:14 +01:00
2011-10-17 15:59:18 +02:00
2011-11-04 14:23:58 +01:00
2011-12-05 08:44:33 -06:00
2011-12-06 09:59:05 +00:00
2012-01-04 13:34:48 +02:00
2011-12-06 09:56:41 +00:00
2011-12-12 11:16:50 -06:00
2011-11-28 15:38:45 +02:00
2011-12-14 07:59:21 -06:00
2012-01-10 18:40:09 +01:00
2011-11-28 15:38:45 +02:00
2011-12-14 11:09:38 +00:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2012-01-12 13:54:17 +01:00
2012-01-12 13:54:17 +01:00
2012-01-12 13:54:17 +01:00
2011-12-06 09:56:41 +00:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-10-16 11:11:55 +00:00
2011-12-06 09:59:05 +00:00
2011-12-20 15:44:30 -06:00
2011-09-04 17:46:51 +03:00
2011-12-14 11:08:20 +00:00
2011-12-14 11:08:20 +00:00
2011-12-20 14:14:07 +02:00
2011-12-20 14:14:07 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-10-05 09:19:05 +01:00
2011-10-02 16:14:02 +02:00
2011-12-20 15:44:31 -06:00
2011-12-06 09:56:41 +00:00
2011-12-14 11:09:12 +00:00
2011-10-25 19:15:20 +04:00
2011-10-06 09:48:07 +02:00
2011-09-10 14:49:51 +00:00
2011-09-03 10:45:59 +00:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-10-28 19:25:51 +02:00
2011-12-20 15:44:30 -06:00
2011-12-20 15:44:30 -06:00
2011-12-20 15:44:30 -06:00
2012-01-10 18:40:01 +01:00
2011-11-02 07:51:58 -05:00
2011-10-25 19:15:20 +04:00
2011-11-28 15:38:45 +02:00
2011-10-16 11:10:48 +00:00
2011-09-23 11:51:05 -05:00
2011-09-23 11:51:05 -05:00
2011-12-20 15:44:31 -06:00
2011-12-20 15:44:30 -06:00
2012-01-04 13:34:48 +02:00
2011-12-06 09:59:05 +00:00
2011-09-15 16:39:32 -03:00
2011-12-06 09:56:41 +00:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-10-16 11:11:55 +00:00
2011-10-16 11:11:55 +00:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-12-14 11:08:23 +00:00
2011-12-14 11:08:23 +00:00
2011-12-20 14:14:07 +02:00
2011-11-19 11:23:42 +00:00
2011-12-12 11:16:52 -06:00
2011-12-20 15:44:30 -06:00
2011-10-21 18:14:29 +02:00
2011-10-21 18:14:29 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-12-20 15:44:30 -06:00
2011-12-20 15:44:30 -06:00
2011-11-28 15:38:42 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:42 +02:00
2011-11-28 15:38:42 +02:00
2011-11-28 15:38:42 +02:00
2011-11-28 15:38:42 +02:00
2011-10-16 11:11:55 +00:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-10-03 12:44:22 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-12-20 14:14:07 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2012-01-07 18:16:24 +01:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-11-24 18:31:59 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-21 15:05:59 -06:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-11-14 03:19:18 +01:00
2011-10-11 15:57:10 +02:00
2011-09-19 21:22:29 +03:00
2011-11-28 15:38:39 +02:00
2011-12-20 15:44:30 -06:00
2012-01-04 10:06:25 -06:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:41 +02:00
2011-11-28 15:40:49 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:41:42 +00:00
2011-11-28 15:40:49 +02:00
2011-11-28 15:40:49 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:40:49 +02:00
2011-12-20 14:14:07 +02:00
2011-11-28 15:40:49 +02:00
2011-11-28 15:38:41 +02:00
2011-11-28 15:40:49 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:40:49 +02:00
2011-11-28 15:40:49 +02:00
2011-11-28 15:40:49 +02:00
2012-01-04 13:41:42 +00:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-10-09 13:11:50 +02:00
2011-10-02 16:14:02 +02:00
2012-01-04 13:34:48 +02:00
2011-11-24 18:31:54 +02:00
2011-12-20 15:44:31 -06:00
2012-01-04 13:34:48 +02:00
2011-12-20 15:44:31 -06:00
2011-10-23 14:05:46 +00:00
2011-09-04 17:46:50 +03:00
2011-11-24 18:32:03 +02:00
2012-01-17 09:44:32 +01:00
2011-09-20 17:46:12 +03:00
2011-09-21 14:32:20 +02:00
2012-01-04 02:48:14 +01:00
2011-12-06 09:56:41 +00:00
2012-01-04 13:34:48 +02:00
2011-11-21 15:05:59 -06:00
2011-12-06 09:56:41 +00:00
2011-09-25 14:58:37 +03:00
2011-11-01 16:52:09 -05:00
2011-11-01 16:52:09 -05:00
2011-11-01 16:52:09 -05:00
2011-12-20 15:44:31 -06:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-12-20 15:44:30 -06:00
2011-12-20 15:44:30 -06:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-12-14 11:08:23 +00:00
2011-12-14 11:08:23 +00:00
2011-12-14 11:08:23 +00:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 10:32:16 +00:00
2012-01-04 10:31:56 +00:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-11-24 18:32:03 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-10-02 16:14:02 +02:00
2011-10-09 13:11:50 +02:00
2011-10-02 16:14:02 +02:00
2011-10-02 16:14:02 +02:00
2011-10-06 09:48:09 +02:00
2011-10-06 09:48:07 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-12-06 09:56:41 +00:00
2011-10-06 09:48:09 +02:00
2012-01-04 13:34:48 +02:00
2011-12-19 13:36:27 -06:00
2012-01-03 15:48:20 +01:00
2011-11-24 18:32:03 +02:00
2011-11-01 16:52:05 -05:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-24 18:31:58 +02:00
2011-12-20 14:14:07 +02:00
2011-11-24 18:31:59 +02:00
2011-11-24 18:31:58 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-11-24 18:31:59 +02:00
2011-12-19 10:27:34 -06:00
2011-12-19 10:27:34 -06:00
2011-12-19 16:39:16 -06:00
2011-12-19 16:39:16 -06:00
2011-09-07 09:20:09 +02:00
2011-12-02 10:50:56 +00:00
2012-01-04 13:34:48 +02:00
2011-11-01 12:11:53 +01:00
2012-01-04 13:34:48 +02:00
2011-11-24 18:31:59 +02:00
2011-12-12 10:26:31 +00:00
2012-01-04 13:34:48 +02:00
2011-12-14 07:59:21 -06:00
2012-01-04 02:48:14 +01:00
2012-01-04 02:48:14 +01:00
2012-01-04 13:34:48 +02:00
2011-12-20 15:44:31 -06:00
2011-11-28 15:38:45 +02:00
2011-11-22 10:33:30 +01:00
2011-11-18 13:57:16 +01:00
2012-01-06 15:07:00 +00:00
2012-01-06 15:07:00 +00:00
2011-11-22 10:33:30 +01:00
2011-12-21 05:04:21 +01:00
2011-10-02 16:14:02 +02:00
2011-12-06 09:56:41 +00:00
2011-11-24 18:32:03 +02:00
2011-11-24 18:32:03 +02:00
2011-11-24 18:32:03 +02:00
2011-12-19 13:36:27 -06:00
2011-11-24 18:32:03 +02:00
2011-11-24 18:32:03 +02:00
2011-11-24 18:32:03 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2012-01-07 21:29:26 +01:00
2011-09-03 10:45:59 +00:00
2011-09-03 10:45:59 +00:00
2011-12-06 09:56:41 +00:00
2011-09-21 11:14:42 +03:00
2011-10-06 09:48:04 +02:00
2012-01-03 15:49:11 +01:00
2011-12-05 21:38:50 +01:00
2011-10-31 04:53:01 +01:00
2011-10-06 09:48:09 +02:00
2012-01-03 15:49:12 +01:00
2012-01-03 15:49:12 +01:00
2011-10-28 19:25:51 +02:00
2012-01-03 15:49:12 +01:00
2012-01-07 22:01:57 +01:00
2012-01-03 15:49:11 +01:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-09-03 10:45:59 +00:00
2011-12-14 11:09:12 +00:00
2011-10-28 19:25:51 +02:00
2011-11-28 15:38:45 +02:00
2011-12-16 10:04:05 +00:00
2012-01-04 13:34:48 +02:00
2011-10-17 15:59:18 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2011-10-16 11:11:55 +00:00
2012-01-04 13:34:48 +02:00
2012-01-03 14:39:05 -06:00
2011-12-20 14:14:06 +02:00
2011-12-06 09:59:05 +00:00
2012-01-04 13:34:48 +02:00
2011-11-11 12:49:53 -06:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2012-01-13 10:25:44 +01:00
2012-01-13 10:25:44 +01:00
2012-01-06 15:07:00 +00:00
2012-01-13 10:25:44 +01:00
2012-01-13 10:25:44 +01:00
2012-01-13 10:25:44 +01:00
2011-12-12 11:16:52 -06:00
2012-01-13 10:25:44 +01:00
2012-01-13 10:25:44 +01:00
2012-01-13 10:25:44 +01:00
2011-09-07 09:58:27 +02:00
2012-01-13 10:25:44 +01:00
2012-01-06 12:36:14 +01:00
2012-01-13 10:25:44 +01:00
2011-12-12 11:16:52 -06:00
2012-01-13 10:25:44 +01:00
2012-01-17 09:44:32 +01:00
2011-10-13 12:58:51 +02:00
2012-01-13 10:25:44 +01:00
2011-11-28 15:38:45 +02:00
2012-01-04 13:34:48 +02:00
2012-01-04 13:34:48 +02:00
2011-10-11 15:57:10 +02:00
2011-10-11 15:57:10 +02:00
2011-12-15 09:20:49 -06:00
2012-01-12 10:03:28 -06:00
2012-01-09 14:01:39 +02:00
2012-01-03 19:19:28 +02:00
2012-01-04 13:34:48 +02:00
2012-01-03 19:19:28 +02:00
2011-09-03 10:45:59 +00:00
2012-01-06 15:07:00 +00:00
2011-09-03 10:45:59 +00:00
2011-12-21 15:00:29 -06:00
2011-09-03 10:45:59 +00:00
2011-12-09 11:25:22 +00:00
2011-12-04 22:35:28 +05:30
2011-12-30 11:10:10 +05:30
2011-09-03 10:45:59 +00:00
2011-11-28 11:36:28 -06:00
2011-11-28 11:36:28 -06:00
2011-12-06 09:59:05 +00:00
2012-01-04 13:34:48 +02:00
2011-12-15 09:20:49 -06:00
2011-12-20 15:44:30 -06:00
2011-12-20 15:44:30 -06:00
2011-10-04 11:02:57 -03:00
2011-12-06 09:56:41 +00:00
2012-01-10 18:47:06 +01:00
2011-09-09 13:13:16 +00:00
2011-09-09 13:13:16 +00:00
2011-09-09 13:13:16 +00:00
2011-12-05 14:51:34 +01:00
2011-09-21 10:49:16 +01:00
2011-12-05 14:56:06 +01:00
2011-12-20 14:14:08 +02:00
2011-09-09 13:13:16 +00:00
2011-10-06 09:48:02 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-28 15:38:45 +02:00
2011-11-02 05:05:52 +04:00
2012-01-04 13:34:48 +02:00
2011-10-16 11:11:55 +00:00
2012-01-04 13:34:48 +02:00
2011-10-02 16:14:02 +02:00
2011-11-28 15:38:45 +02:00