You are not logged in.
I want to passthrough an USB controller from my Intel Z490 system to a VM, but this does not seem to be possible. I have attached USB devices to all external ports on the board with the following result:
$ for usb_ctrl in /sys/bus/pci/devices/*/usb*; do pci_path=${usb_ctrl%/*}; iommu_group=$(readlink $pci_path/iommu_group); echo "Bus $(cat $usb_ctrl/busnum) --> ${pci_path##*/} (IOMMU group ${iommu_group##*/})"; lsusb -s ${usb_ctrl#*/usb}:; echo; done
Bus 1 --> 0000:00:14.0 (IOMMU group 3)
Bus 001 Device 014: ID 054c:0268 Sony Corp. Batoh Device / PlayStation 3 Controller
Bus 001 Device 043: ID 0951:1607 Kingston Technology DataTraveler 100
Bus 001 Device 003: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 013: ID 046d:c53f Logitech, Inc. USB Receiver
Bus 001 Device 049: ID 0951:1600 Kingston Technology DataTraveler II Pen Drive
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 2 --> 0000:00:14.0 (IOMMU group 3)
Bus 002 Device 002: ID 05e3:0617 Genesys Logic, Inc. USB3.0 Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
cat: '/sys/bus/pci/devices/0000:03:00.0/usbc_pd_fw/busnum': Not a directory
Bus --> 0000:03:00.0 (IOMMU group 1)
$
Is my conclusion right that the Intel chipset only has one USB controller which is serving all USB ports?
So no USB controller passthrough is possible?
I have no idea what is going on with Bus 0000:03:00.0 / IOMMU group 1, because I can't find a port that is connecting to this Bus.
Resetting is also not possible, even if there would be a available controller:
$ for iommu_group in $(find /sys/kernel/iommu_groups/ -maxdepth 1 -mindepth 1 -type d);do echo "IOMMU group $(basename "$iommu_group")"; for device in $(\ls -1 "$iommu_group"/devices/); do if [[ -e "$iommu_group"/devices/"$device"/reset ]]; then echo -n "[RESET]"; fi; echo -n $'\t';lspci -nns "$device"; done; done
IOMMU group 3
00:14.0 USB controller [0c03]: Intel Corporation Comet Lake USB 3.1 xHCI Host Controller [8086:06ed]
00:14.2 RAM memory [0500]: Intel Corporation Comet Lake PCH Shared SRAM [8086:06ef]
IOMMU group 1
00:01.0 PCI bridge [0604]: Intel Corporation 6th-9th Gen Core Processor PCIe Controller (x16) [8086:1901] (rev 05)
[RESET] 01:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 XL Upstream Port of PCI Express Switch [1002:1478] (rev c1)
[RESET] 02:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 XL Downstream Port of PCI Express Switch [1002:1479]
[RESET] 03:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] [1002:731f] (rev c1)
03:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 HDMI Audio [1002:ab38]
What can I do. is there a workaround or another option?
I have a mITX board, so a USB extension card is not possible.
Offline