I use a Radeon RX 7900 GRE on Arch Linux. I have configured all the PCIe passthrough and successfully bound the GPU to a Docker Windows virtual machine.
I then installed the Adrenalin drivers, which seemed successful as the display adapter had changed in Device Manager (please refer to the screenshot below). However, when I tried to start the Adrenalin GUI, it always failed with this message:
The version of AMD Software that you have launched is not
compatible with your currently installed AMD graphics driver.
For information on how to resolve this, please go to:
https://www.amd.com/en/support/kb/faq/pa-300
I have checked with AMD Software Compatibility Tool according to https://www.amd.com/en/support/kb/faq/pa-300 but it could not find any problem (please refer to the screenshot below). Doing a clean driver installation with Display Driver Uninstaller also did not work.
Please provide any additional details or error messages to further assist in troubleshooting this issue.
For the RX 7900 series, using Proxmox, I had good success with PCIE passthrough last time I attempted it. Here are my personal notes. Perhaps you can try the ROMBAR=0 or Docker VM equivalent workaround in your case.
------------------------------------
AMD has long supported virtualisation of graphics cards... adopting industry standards such as SR-IOV with its MxGPU series of graphics cards, enabling public cloud gaming and compute partners
While our drivers were written and optimized for passing enterprise and server-class GPUs to virtual machines, they can often also function with consumer Radeon cards. This is a bit nuanced as consumer cards are not officially supported for virtualization or tested on a regular basis for PCIE passthrough.
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on intel_iommu=on iommu=pt"
Add the following to: /etc/modprobe.d/vfio.conf
softdep amdgpu pre: vfio-pci # Graphics
softdep snd-hda-intel pre: vfio-pci # HDMI Audio
softdep xhci-pci pre: vfio-pci # Usb-C
softdep i2c-designware-pci pre: vfio-pci # Usb-C
Update the initramfs and Proxmox boot config (automatically does Grub or SystemD) to save these changes
update-initramfs -k all -u
proxmox-boot-tool refresh
args: -cpu 'host,hv_vendor_id=AMDKVMAMD,kvm=off'
cpu: host,hidden=1
Full Proxmox VM configuration file example (100.conf):
affinity: 1-5,7-11
args: -cpu 'host,hv_vendor_id=AMDKVMAMD,kvm=off'
bios: ovmf
boot: order=scsi0;ide2
cores: 10
cpu: host,hidden=1
efidisk0: local-lvm:vm-100-disk-0,efitype=4m,pre-enrolled-keys=1,size=4M
hostpci0: 0000:03:00,pcie=1,rombar=0,x-vga=1
ide2: none,media=cdrom
machine: q35
memory: 12000
meta: creation-qemu=8.1.5,ctime=1708978360
name: win
net0: e1000=BC:24:11:59:8C:D3,bridge=vmbr0,firewall=1
numa: 0
ostype: l26
scsi0: local-lvm:vm-100-disk-1,backup=0,discard=on,iothread=1,size=100G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=a4acc156-baaf-4705-9bcc-2347fda113d6
sockets: 1
vga: std
vmgenid: 2c881a54-40d3-4525-aaa3-0dd8ee5f1227
https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF
https://pve.proxmox.com/wiki/Qemu/KVM_Virtual_Machines
We are working on enabling more use-cases for our Radeon cards on virtual machines and Linux, stay tuned for future updates and thanks for your support.