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

Jonathan Scruggs j.scruggs at gmail.com
Tue Feb 23 12:46:15 UTC 2016


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20160223/166a92ec/attachment.htm>


More information about the vfio-users mailing list