Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Options for USB Passthrough

Featured Replies

Decided to sell my i9 MacBook Pro I use for work for a Unraid beast to replace my work Mac and my gaming PC. But I need a little help figuring out the best way to pass through USB controllers to best utilize what I have. (USB controller pass through is important as I'll have at least thing things that are commonly switched between the 2 main VMs pretty commonly (mic, keyboard, mouse)).

 

Parts for reference if it's relevant: https://pcpartpicker.com/list/RVnczY

 

I'm trying to figure out the best way to handle all this with the IOMMU groups I have. It's important to me to have Bluetooth on both devices, so I got a motherboard with Bluetooth and I have a Bluetooth PCIe card (see part list link above).

 

It appears as though all of the USB headers (two 2.0 and one 3.0) as well as all the USB ports on the motherboard except for two appear to be on the same controller in IOMMU group 15 (see below for groups).

 

The other two: a USB-C and a USB 3 close to the USB-C port are part of a different controller... either the one from Group 24 or 25, I am not sure which. The other one in Group 24/25 (which have the same ID to pass through to vfio-pci.ids, this is 1b21:2142) doesn't seem to do anything?

 

Anyway, so a couple questions:

 

Can you install Unraid on a partition on the hard drive and boot from there, as to free up a USB slot (so you could pass all your USB controllers to VMs)? I can't find anyone talking about it, but seems like a pretty simple solution.

 

The other question, is if you look at Group 15 that I mentioned, it doesn't have that "Reset" flag that Spaceinvader One talks about. How important is that? I can't find much info about that. Also, in Group 15, there's that Signal processing controller: Intel Corporation 200 Series PCH Thermal Subsystem. If I pass that IOMMU group through, then Unraid what have access to that. What is that, and is it important?

 

-------------------

 

IOMMU groups with vfio_iommu_type1.allow_unsafe_interrupts=1 pcie_acs_override=downstream,multifunction flags set (it doesn't really change anything meaningful in terms of discussion of USB controllers' groups):

IOMMU group 55
	64:0b.2 System peripheral [0880]: Intel Corporation Device [8086:204a] (rev 04)
IOMMU group 83
	b4:00.1 Audio device [0403]: NVIDIA Corporation GP104 High Definition Audio Controller [10de:10f0] (rev a1)
IOMMU group 17
	00:17.0 SATA controller [0106]: Intel Corporation 200 Series PCH SATA controller [AHCI mode] [8086:a282]
IOMMU group 45
	64:0a.0 System peripheral [0880]: Intel Corporation Device [8086:2040] (rev 04)
IOMMU group 73
	b2:05.0 System peripheral [0880]: Intel Corporation Device [8086:2034] (rev 04)
IOMMU group 35
	16:0f.0 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0f.1 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0f.2 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0f.3 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0f.4 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0f.5 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0f.6 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0f.7 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
IOMMU group 7
	00:04.6 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 63
	64:0c.6 System peripheral [0880]: Intel Corporation Device [8086:2046] (rev 04)
IOMMU group 25
[RESET]	02:00.0 USB controller [0c03]: ASMedia Technology Inc. ASM2142 USB 3.1 Host Controller [1b21:2142]
IOMMU group 53
	64:0b.0 System peripheral [0880]: Intel Corporation Device [8086:2048] (rev 04)
IOMMU group 81
[RESET]	b3:00.0 Network controller [0280]: Intel Corporation Wireless 8260 [8086:24f3] (rev 3a)
IOMMU group 15
	00:14.0 USB controller [0c03]: Intel Corporation 200 Series/Z370 Chipset Family USB 3.0 xHCI Controller [8086:a2af]
	00:14.2 Signal processing controller [1180]: Intel Corporation 200 Series PCH Thermal Subsystem [8086:a2b1]
IOMMU group 43
	64:08.0 System peripheral [0880]: Intel Corporation Device [8086:2066] (rev 04)
IOMMU group 71
	b2:00.0 PCI bridge [0604]: Intel Corporation Sky Lake-E PCI Express Root Port A [8086:2030] (rev 04)
IOMMU group 33
	16:0a.0 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:0a.1 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
IOMMU group 5
	00:04.4 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 61
	64:0c.4 System peripheral [0880]: Intel Corporation Device [8086:2044] (rev 04)
IOMMU group 23
[RESET]	00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (2) I219-V [8086:15b8]
IOMMU group 51
	64:0a.6 System peripheral [0880]: Intel Corporation Device [8086:2046] (rev 04)
IOMMU group 13
	00:08.1 Performance counters [1101]: Intel Corporation Sky Lake-E Ubox Registers [8086:2015] (rev 04)
IOMMU group 41
	64:05.2 System peripheral [0880]: Intel Corporation Sky Lake-E RAS Configuration Registers [8086:2035] (rev 04)
IOMMU group 31
	16:08.0 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:08.1 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:08.2 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:08.3 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:08.4 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:08.5 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:08.6 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:08.7 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
IOMMU group 3
	00:04.2 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 21
[RESET]	00:1d.0 PCI bridge [0604]: Intel Corporation 200 Series PCH PCI Express Root Port #9 [8086:a298] (rev f0)
IOMMU group 78
	b2:15.0 System peripheral [0880]: Intel Corporation Sky Lake-E M2PCI Registers [8086:2018] (rev 04)
IOMMU group 11
	00:05.4 PIC [0800]: Intel Corporation Device [8086:2026] (rev 04)
IOMMU group 68
	64:0d.3 System peripheral [0880]: Intel Corporation Device [8086:204b] (rev 04)
IOMMU group 1
	00:04.0 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 58
	64:0c.1 System peripheral [0880]: Intel Corporation Device [8086:2041] (rev 04)
IOMMU group 48
	64:0a.3 System peripheral [0880]: Intel Corporation Device [8086:2043] (rev 04)
IOMMU group 76
	b2:12.0 Performance counters [1101]: Intel Corporation Sky Lake-E M3KTI Registers [8086:204c] (rev 04)
IOMMU group 38
	16:1e.0 System peripheral [0880]: Intel Corporation Sky Lake-E PCU Registers [8086:2080] (rev 04)
	16:1e.1 System peripheral [0880]: Intel Corporation Sky Lake-E PCU Registers [8086:2081] (rev 04)
	16:1e.2 System peripheral [0880]: Intel Corporation Sky Lake-E PCU Registers [8086:2082] (rev 04)
	16:1e.3 System peripheral [0880]: Intel Corporation Sky Lake-E PCU Registers [8086:2083] (rev 04)
	16:1e.4 System peripheral [0880]: Intel Corporation Sky Lake-E PCU Registers [8086:2084] (rev 04)
	16:1e.5 System peripheral [0880]: Intel Corporation Sky Lake-E PCU Registers [8086:2085] (rev 04)
	16:1e.6 System peripheral [0880]: Intel Corporation Sky Lake-E PCU Registers [8086:2086] (rev 04)
IOMMU group 66
	64:0d.1 System peripheral [0880]: Intel Corporation Device [8086:2049] (rev 04)
IOMMU group 28
	16:05.0 System peripheral [0880]: Intel Corporation Device [8086:2034] (rev 04)
IOMMU group 56
	64:0b.3 System peripheral [0880]: Intel Corporation Device [8086:204b] (rev 04)
IOMMU group 18
[RESET]	00:1c.0 PCI bridge [0604]: Intel Corporation 200 Series PCH PCI Express Root Port #1 [8086:a290] (rev f0)
IOMMU group 46
	64:0a.1 System peripheral [0880]: Intel Corporation Device [8086:2041] (rev 04)
IOMMU group 74
	b2:05.2 System peripheral [0880]: Intel Corporation Sky Lake-E RAS Configuration Registers [8086:2035] (rev 04)
IOMMU group 36
	16:10.0 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:10.1 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
IOMMU group 8
	00:04.7 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 64
	64:0c.7 System peripheral [0880]: Intel Corporation Device [8086:2047] (rev 04)
IOMMU group 26
[RESET]	03:00.0 Network controller [0280]: Intel Corporation Wireless 8265 / 8275 [8086:24fd] (rev 78)
IOMMU group 54
	64:0b.1 System peripheral [0880]: Intel Corporation Device [8086:2049] (rev 04)
IOMMU group 82
[RESET]	b4:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP104 [GeForce GTX 1080] [10de:1b80] (rev a1)
IOMMU group 16
	00:16.0 Communication controller [0780]: Intel Corporation 200 Series PCH CSME HECI #1 [8086:a2ba]
IOMMU group 44
	64:09.0 System peripheral [0880]: Intel Corporation Device [8086:2066] (rev 04)
IOMMU group 72
	b2:03.0 PCI bridge [0604]: Intel Corporation Sky Lake-E PCI Express Root Port D [8086:2033] (rev 04)
IOMMU group 34
	16:0e.0 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0e.1 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0e.2 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0e.3 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0e.4 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0e.5 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0e.6 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
	16:0e.7 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208e] (rev 04)
IOMMU group 6
	00:04.5 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 62
	64:0c.5 System peripheral [0880]: Intel Corporation Device [8086:2045] (rev 04)
IOMMU group 24
[RESET]	01:00.0 USB controller [0c03]: ASMedia Technology Inc. ASM2142 USB 3.1 Host Controller [1b21:2142]
IOMMU group 52
	64:0a.7 System peripheral [0880]: Intel Corporation Device [8086:2047] (rev 04)
IOMMU group 80
	b2:17.0 System peripheral [0880]: Intel Corporation Sky Lake-E M2PCI Registers [8086:2018] (rev 04)
IOMMU group 14
	00:08.2 System peripheral [0880]: Intel Corporation Sky Lake-E Ubox Registers [8086:2016] (rev 04)
IOMMU group 42
	64:05.4 PIC [0800]: Intel Corporation Device [8086:2036] (rev 04)
IOMMU group 70
[RESET]	65:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6450 / 7450/8450/8490 OEM / R5 230/235/235X OEM] [1002:a...
IOMMU group 32
	16:09.0 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:09.1 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:09.2 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:09.3 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:09.4 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:09.5 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:09.6 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
	16:09.7 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:208d] (rev 04)
IOMMU group 4
	00:04.3 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 60
	64:0c.3 System peripheral [0880]: Intel Corporation Device [8086:2043] (rev 04)
IOMMU group 22
	00:1f.0 ISA bridge [0601]: Intel Corporation X299 Chipset LPC/eSPI Controller [8086:a2d2]
	00:1f.2 Memory controller [0580]: Intel Corporation 200 Series/Z370 Chipset Family Power Management Controller [8086:a2a1]
	00:1f.3 Audio device [0403]: Intel Corporation 200 Series PCH HD Audio [8086:a2f0]
	00:1f.4 SMBus [0c05]: Intel Corporation 200 Series/Z370 Chipset Family SMBus Controller [8086:a2a3]
IOMMU group 50
	64:0a.5 System peripheral [0880]: Intel Corporation Device [8086:2045] (rev 04)
IOMMU group 79
	b2:16.0 System peripheral [0880]: Intel Corporation Sky Lake-E M2PCI Registers [8086:2018] (rev 04)
	b2:16.4 System peripheral [0880]: Intel Corporation Sky Lake-E M2PCI Registers [8086:2018] (rev 04)
IOMMU group 12
	00:08.0 System peripheral [0880]: Intel Corporation Sky Lake-E Ubox Registers [8086:2014] (rev 04)
IOMMU group 40
	64:05.0 System peripheral [0880]: Intel Corporation Device [8086:2034] (rev 04)
IOMMU group 69
[RESET]	65:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Caicos PRO [Radeon HD 7450] [1002:677b]
IOMMU group 30
	16:05.4 PIC [0800]: Intel Corporation Device [8086:2036] (rev 04)
IOMMU group 2
	00:04.1 System peripheral [0880]: Intel Corporation Sky Lake-E CBDMA Registers [8086:2021] (rev 04)
IOMMU group 59
	64:0c.2 System peripheral [0880]: Intel Corporation Device [8086:2042] (rev 04)
IOMMU group 20
[RESET]	00:1c.5 PCI bridge [0604]: Intel Corporation 200 Series PCH PCI Express Root Port #6 [8086:a295] (rev f0)
IOMMU group 49
	64:0a.4 System peripheral [0880]: Intel Corporation Device [8086:2044] (rev 04)
IOMMU group 77
	b2:12.1 Performance counters [1101]: Intel Corporation Sky Lake-E M3KTI Registers [8086:204d] (rev 04)
	b2:12.2 System peripheral [0880]: Intel Corporation Sky Lake-E M3KTI Registers [8086:204e] (rev 04)
IOMMU group 10
	00:05.2 System peripheral [0880]: Intel Corporation Device [8086:2025] (rev 04)
IOMMU group 39
	64:00.0 PCI bridge [0604]: Intel Corporation Sky Lake-E PCI Express Root Port A [8086:2030] (rev 04)
IOMMU group 67
	64:0d.2 System peripheral [0880]: Intel Corporation Device [8086:204a] (rev 04)
IOMMU group 29
	16:05.2 System peripheral [0880]: Intel Corporation Sky Lake-E RAS Configuration Registers [8086:2035] (rev 04)
IOMMU group 0
	00:00.0 Host bridge [0600]: Intel Corporation Sky Lake-E DMI3 Registers [8086:2020] (rev 04)
IOMMU group 57
	64:0c.0 System peripheral [0880]: Intel Corporation Device [8086:2040] (rev 04)
IOMMU group 19
[RESET]	00:1c.2 PCI bridge [0604]: Intel Corporation 200 Series PCH PCI Express Root Port #3 [8086:a292] (rev f0)
IOMMU group 47
	64:0a.2 System peripheral [0880]: Intel Corporation Device [8086:2042] (rev 04)
IOMMU group 75
	b2:05.4 PIC [0800]: Intel Corporation Device [8086:2036] (rev 04)
IOMMU group 37
	16:1d.0 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:2054] (rev 04)
	16:1d.1 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:2055] (rev 04)
	16:1d.2 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:2056] (rev 04)
	16:1d.3 System peripheral [0880]: Intel Corporation Sky Lake-E CHA Registers [8086:2057] (rev 04)
IOMMU group 9
	00:05.0 System peripheral [0880]: Intel Corporation Sky Lake-E MM/Vt-d Configuration Registers [8086:2024] (rev 04)
IOMMU group 65
	64:0d.0 System peripheral [0880]: Intel Corporation Device [8086:2048] (rev 04)
IOMMU group 27
[RESET]	04:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981 [144d:a808]

USB devices:

Bus 1 --> 0000:00:14.0 (IOMMU group 15)
Bus 001 Device 003: ID 8087:0a2b Intel Corp.
Bus 001 Device 002: ID 174c:2074 ASMedia Technology Inc. ASM1074 High-Speed hub
Bus 001 Device 005: ID 8087:0a2b Intel Corp.
Bus 001 Device 004: ID 0781:5575 SanDisk Corp. Cruzer Glide
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 2 --> 0000:00:14.0 (IOMMU group 15)
Bus 002 Device 002: ID 174c:3074 ASMedia Technology Inc. ASM1074 SuperSpeed hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Bus 3 --> 0000:01:00.0 (IOMMU group 24)
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 4 --> 0000:01:00.0 (IOMMU group 24)
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Bus 5 --> 0000:02:00.0 (IOMMU group 25)
Bus 005 Device 005: ID 046d:c332 Logitech, Inc. G502 Proteus Spectrum Optical Mouse
Bus 005 Device 006: ID 24f0:0141
Bus 005 Device 004: ID 2109:2812 VIA Labs, Inc. VL812 Hub
Bus 005 Device 003: ID 045e:02ea Microsoft Corp. Xbox One S Controller
Bus 005 Device 002: ID 2109:2812 VIA Labs, Inc. VL812 Hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 6 --> 0000:02:00.0 (IOMMU group 25)
Bus 006 Device 003: ID 2109:0812 VIA Labs, Inc. VL812 Hub
Bus 006 Device 002: ID 2109:0812 VIA Labs, Inc. VL812 Hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

 

It's not possible to install unraid on a hard drive. You have to use the USB drive as the license is tied to it. 

 

If a device doesn't support reset, it might be that you need to reboot unraid to get the device to work again if you shutdown or reboot the vm using it. 

  • Author

Thanks for the response saarg. I haven't yet purchased a license (still on the trial), so I'm not sure how that works. How does it know to tie it to the USB that you can't use a hard drive?

 

Also, when you say it might not work, does that mean it still might? Something I'd just need to test?

 

And any clues what the signal thing is for?

  • Community Expert
10 minutes ago, CWSpear said:

Thanks for the response saarg. I haven't yet purchased a license (still on the trial), so I'm not sure how that works. How does it know to tie it to the USB that you can't use a hard drive?

The license is tied to the GUID of the USB drive, and it needs to be present while Unraid is running.     Unraid is loaded into RAM at boot so using a USB drive does not cause performance issues.   While Unraid is running the USB drive is only used to store configuration information.

  • Author

@itimpi yeah, it wasn't about performance or anything, it was about being able to pass another USB controller to a VM.

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.