System Specs
AMD Ryzen 9 3900x
AMD Vega 56 (host)
AMD Rx580 (guest)
MSI Mag B550 Tomahawk
Pop OS 20.04 with 5.8.1 Kernel and the ACSO patch for better IOMMU groupings
IOMMU is enabled in the bios, and I have enabled IOMMU in the systemd boot
Here are my current boot parameters
systemd.show_status=false splash amd_iommu=on iommu=pt pcie_acs_override=downstream,multifunction vfio-pci.ids=1002:67df,1002:aaf0
Where 1002:67df and 1002:aaf0 are my guest gpu IDs
A snippet of my IOMMU groups
IOMMU Group 24 20:09.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Device [1022:43ea]
IOMMU Group 25 21:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] [1002:67df] (rev e7)
IOMMU Group 26 21:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590] [1002:aaf0]
IOMMU Group 27 23:00.0 Network controller [0280]: Intel Corporation Wi-Fi 6 AX200 [8086:2723] (rev 1a)`
I have confirmed that the vfio driver is being loaded onto the guest GPU with the lspci -vnn
command
21:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] [1002:67df] (rev e7) (prog-if 00 [VGA controller]) Subsystem: XFX Pine Group Inc. Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] [1682:c580] Flags: fast devsel, IRQ 34 Memory at d0000000 (64-bit, prefetchable) [size=256M] Memory at e0000000 (64-bit, prefetchable) [size=2M] I/O ports at e000 [size=256] Memory at fc800000 (32-bit, non-prefetchable) [size=256K] Expansion ROM at fc840000 [disabled] [size=128K] Capabilities: <access denied> Kernel driver in use: vfio-pci Kernel modules: amdgpu
21:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590] [1002:aaf0] Subsystem: XFX Pine Group Inc. Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590] [1682:aaf0] Flags: fast devsel, IRQ 42 Memory at fc860000 (64-bit, non-prefetchable) [size=16K] Capabilities: <access denied> Kernel driver in use: vfio-pci Kernel modules: snd_hda_intel
From here I have been making temporary windows 10 VMs to test the GPU output but I have not been successful. I can get the Windows VM installed and working fine with the emulated video card but as soon as I try to pass through the 580 all I get is a black screen.
I started with the Q35 chipset and UEFI OCMF_CODE.fd bios but have also tried the i440FX chipset and legacy bios.
When I attempt to pass through my GPU I’d also remove the Display Spice, Sound ich9, Serial 1, Channel spice, and Video QXL if that makes a difference.
I am just out of ideas and am not making any progress so I was hoping someone here would be able to help me.