[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[vfio-users] Trying to pass through USB controller.



Hi all,

I have three USB controllers on my mainboard, GigaByte GA-X99-UD4 Revision 1.0 (http://www.gigabyte.com/products/product-page.aspx?pid=5123#ov):

# lspci -nn | grep USB
00:14.0 USB controller [0c03]: Intel Corporation C610/X99 series chipset USB xHCI Host Controller [8086:8d
31] (rev 05)
00:1a.0 USB controller [0c03]: Intel Corporation C610/X99 series chipset USB Enhanced Host Controller #2 [
8086:8d2d] (rev 05)
00:1d.0 USB controller [0c03]: Intel Corporation C610/X99 series chipset USB Enhanced Host Controller #1 [
8086:8d26] (rev 05)

I boot via UEFI directly with no grub, so I have the kernel command line compiled in the kernel to reserve the USB controller via VFIO to pass through to the guest:

root=/dev/sda3 init=/usr/lib/systemd/systemd vfio-pci.ids=10de:13c2,10de:0fbb,8086:8d26,8086:8d2d radeon.dpm=0 quiet

This is my test with two controllers passed through.

I tried passing one controller through first. However, a USB thumbdrive test in every single USB port always showed it under 3.0 root hub. 
# lsusb
Bus 002 Device 002: ID 045b:0210 Hitachi, Ltd 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 045b:0209 Hitachi, Ltd 
Bus 001 Device 010: ID 0781:5406 SanDisk Corp. Cruzer Micro U3
Bus 001 Device 003: ID 045e:07a5 Microsoft Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

I know for a fact that the controllers are reserved for VFIO because the lsusb output use to show three "Linux Foundation 2.0 root hub", but only one now. When one controller was reserved, there were two showing. Also, those controllers do appear in the guest.

Also, the main board has support for two sets of two front USB 2.0 ports (two 9-pin header connectors). I have a both of those headers filled, so every singe controller should have a port on the board. However, every port always ends up under the tree of the "Linux Foundation 3.0 root hub".

In the UEFI Bios, there is a setting for xHCI handoff enable/disable and another HCI one (I forget the first letter). I tried every combination of enable and disable for these two and still no change.

How can I pass through the USB ports to the guest so that the items plugged into the ports appear to the guest?

Thanks,
Jon

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]