Help with virtualization and RMRR/IOMMU

I have a Supermicro X10SRH-CLN4F with an Intel E5-2640v3 and 128GB DDR4 registered memory. I am using XCP-ng as the hypervisor and have a VM with Home Assistant running. I am trying to pass through a PCI lane with a dedicated USB PCI card for a USB Z-wave controller. However, once I pass through the PCI lane I receive an error when trying to start the VM (this issue is detailed in the XCP-ng documentation here). I have also read the information from Red Hat and Kernel.org but still don’t understand the issue. I have ensured all required virtualization settings (VT-d, etc.) are enabled in the bios. Furthermore, I have a different Supermicro system (X10SLL-F) and can pass through the card just fine. That system uses unregistered memory though. Could registered/unregistered memory be the issue preventing me from passing through the PCI lane?

Can someone please help me better understand RMRR/IOMMU related to virtualization? Is there another setting I am missing? Are there any additional resources I can read or watch videos? Thank you in advance!

Since the device is USB you should be able to use the USB pass through option.

Did you check the BIOS on that machine to see if there was an update? Might help, might not. After that I haven’t done a lot of passthrough stuff beyond just the basic USB that Tom suggests and an old Quadro graphics card for a test.

I have done this and it works really well. Anyway to make it survive a reboot? Seems like every time the computer restarts I have to pass it through again. Thank you!

I was looking at the manual and there is an update and one more setting I can try to see if that helps. Hopefully that gets me what I need otherwise I’ll have to stick to the USB pass through. Thank you!