AMD iGPU passthrough won't work

something like this is what you want to see on the host when you run
dmesg | grep amdgpu

[ 5.084765] amdgpu 0000:06:00.0: enabling device (0006 -> 0007)
[ 5.087448] amdgpu 0000:06:00.0: amdgpu: Fetched VBIOS from VFCT
[ 5.087458] amdgpu: ATOM BIOS: 113-CEZANNE-017

ATOM BIOS: *****

And then other signs like that the driver is properly loaded in the lspci -k output

Only then it is a good time to embark on trying to pass it through
Right, I’ll do a fresh install later, I’m gonna back up my samba vm and then reinstall and I’ll be in touch
 
My write-up on iGPU passthrough for Ryzen 5700U. Should apply to your 5800H as well. Been playing Halo Infinite the past 3 weeks with iGPU passthrough working great. Tested on Ryzen 5700U and 7735HS. The github repo link has everything you need, as well as the correct instructions for configuration. The repo doesn't have the 5800H VBIOS so you'll need to use the instructions for vbios.c to extract the VBIOS yourself.

https://forum.proxmox.com/threads/amd-ryzen-5700u-7735hs-igpu-passthrough-windows-11.142811/
 
Last edited:
  • Like
Reactions: leesteken
I think I have blacklisted the amdgpu driver, I’ve not been able to get hold of a vbios for my motherboard. As i tried saving one in gpu-z and it said it not found. But is there any advice u can give on how to get it working.

See my post above this reply. The github repo link has a vbios.c file that you can use to extract the VBIOS for your Ryzen iGPU.
 
something like this is what you want to see on the host when you run
dmesg | grep amdgpu

[ 5.084765] amdgpu 0000:06:00.0: enabling device (0006 -> 0007)
[ 5.087448] amdgpu 0000:06:00.0: amdgpu: Fetched VBIOS from VFCT
[ 5.087458] amdgpu: ATOM BIOS: 113-CEZANNE-017

ATOM BIOS: *****

And then other signs like that the driver is properly loaded in the lspci -k output

Only then it is a good time to embark on trying to pass it through

@diversity are u still around???, here's my output of dmesg | grep amdgpu after a fresh install:
 

Attachments

  • Screenshot_20240412_001143.png
    Screenshot_20240412_001143.png
    242.7 KB · Views: 22
@diversity are u still around???, here's my output of dmesg | grep amdgpu after a fresh install:

From the github instructions...

Make sure you've performed steps 1 through 4 first to ensure the kernel loads the vfio modules.

5. Load the vfio-pci driver before the original one. This prevents the host from using the GPU and allows for virtualization. These are the default AMD + Sound drivers, but you can find the ones your system is using by running lspci -nnk and checking the "Kernel driver in Use" section.

Code:
echo "softdep radeon pre: vfio-pci" >> /etc/modprobe.d/vfio.conf
echo "softdep amdgpu pre: vfio-pci" >> /etc/modprobe.d/vfio.conf
echo "softdep snd_hda_intel pre: vfio-pci" >> /etc/modprobe.d/vfio.conf

6. Refresh the kernel modules and restart:

Code:
update-initramfs -u -k all
shutdown -r now

7. After the restart, validate that the Kernel driver in Use for these PCI devices is vfio-pci now, with:

Code:
lspci -nnk


This is an example of what my /etc/modprobe.d/vfio.conf looks like. The first line of your vfio.conf will probably be different based on how your computer detects hardware devices.

Code:
options vfio-pci ids=1002:1681,1002:1640
softdep radeon pre: vfio-pci
softdep amdgpu pre: vfio-pci
softdep snd_hda_intel pre: vfio-pci
 
Last edited:
From the github instructions...

Make sure you've performed steps 1 through 4 first to ensure the kernel loads the vfio modules.

5. Load the vfio-pci driver before the original one. This prevents the host from using the GPU and allows for virtualization. These are the default AMD + Sound drivers, but you can find the ones your system is using by running lspci -nnk and checking the "Kernel driver in Use" section.

Code:
echo "softdep radeon pre: vfio-pci" >> /etc/modprobe.d/vfio.conf
echo "softdep amdgpu pre: vfio-pci" >> /etc/modprobe.d/vfio.conf
echo "softdep snd_hda_intel pre: vfio-pci" >> /etc/modprobe.d/vfio.conf

6. Refresh the kernel modules and restart:

Code:
update-initramfs -u -k all
shutdown -r now

7. After the restart, validate that the Kernel driver in Use for these PCI devices is vfio-pci now, with:

Code:
lspci -nnk


This is an example of what my /etc/modprobe.d/vfio.conf looks like. The first line of your vfio.conf will probably be different based on how your computer detects hardware devices.

Code:
options vfio-pci ids=1002:1681,1002:1640
softdep radeon pre: vfio-pci
softdep amdgpu pre: vfio-pci
softdep snd_hda_intel pre: vfio-pci
@jeenam I followed that GitHub tutorial before and it didn’t work

@diversity are you still around
 
Last edited:
@jeenam I followed that GitHub tutorial before and it didn’t work

@diversity are you still around

The dmesg output shows the amdgpu driver i
I just uploaded the correct ROM file. You can find it on github here.

There are instructions on the github page that I linked with a small program called vbios.c that will extract the VBIOS. All that's needed is the build-essential package from the apt repo to compile. Same result. Much less work.
 
Last edited:
Will this work with Docker? I just picked up an AceMagic that has the AMD Ryzen 7 5800U. I'm planning on using OPNsense along with a Plex server or Jellyfin server (ideally i can try one or the other not trying to run both at the same time) and want to use the iGPU for transcoding. However, I'm not sure if it would be better to run them in Docker containers or as VMs, and what the best way to get the iGPU to them would be. Has anyone done something like this? Is it possible to split the IGPU?

The guide at https://github.com/isc30/ryzen-7000-series-proxmox should help make the iGPU available, but I'm not sure of the best approach to get it working with Docker or a VM. Any thoughts or advice would be sincerly aprecciated.
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!