Blame
| 8ea826 | deseven | 2025-06-12 12:17:26 | 1 | # VM iGPU Passthrough |
| 68c497 | deseven | 2025-06-12 11:47:12 | 2 | |
| 3 | ### Setting Up |
|||
| afcbf7 | deseven | 2025-06-12 12:02:54 | 4 | This guide seems to work for Strix Halo: |
| 68c497 | deseven | 2025-06-12 11:47:12 | 5 | https://github.com/isc30/ryzen-gpu-passthrough-proxmox |
| 6 | ||||
| e786c9 | deseven | 2025-10-17 08:07:15 | 7 | There's also a guide from a Framework Desktop owner available here: |
| 8 | https://community.frame.work/t/anyone-using-proxmox-ve/74863/6?u=beralt |
|||
| 9 | ||||
| 10 | These are mostly tied to Proxmox (version 8 or higher), but should still be applicable to other distros with QEMU installed. |
|||
| afcbf7 | deseven | 2025-06-12 12:02:54 | 11 | |
| 0a93ab | deseven | 2025-06-12 13:01:13 | 12 | ### Configuration |
| 13 | ```bash |
|||
| 14 | # /etc/kernel/cmdline |
|||
| 15 | ... iommu=pt initcall_blacklist=sysfb_init |
|||
| 16 | ``` |
|||
| 17 | ||||
| 18 | ```bash |
|||
| 19 | # /etc/modules |
|||
| 20 | vfio |
|||
| 21 | vfio_iommu_type1 |
|||
| 22 | vfio_pci |
|||
| 23 | ``` |
|||
| 24 | ||||
| 25 | ```bash |
|||
| 26 | # /etc/modprobe.d/blacklist.conf |
|||
| 27 | blacklist radeon |
|||
| 28 | blacklist amdgpu |
|||
| 29 | blacklist snd_hda_intel |
|||
| 30 | ``` |
|||
| 31 | ||||
| 32 | ```bash |
|||
| 33 | # /etc/modprobe.d/vfio.conf |
|||
| 34 | options vfio-pci ids=1002:1586,1002:1640 disable_vga=1 |
|||
| 35 | ``` |
|||
| 36 | ||||
| 37 | ```bash |
|||
| 38 | # vm.conf for QEMU |
|||
| 42c50b | deseven | 2025-06-17 20:41:11 | 39 | machine: pc-q35-9.2+pve1,viommu=virtio |
| 40 | cpu: host |
|||
| 41 | # don't forget to replace the IDs if needed |
|||
| 0a93ab | deseven | 2025-06-12 13:01:13 | 42 | hostpci0: 0000:c6:00.0,pcie=1,romfile=vbios_8060s.bin,x-vga=1 |
| 43 | hostpci1: 0000:c6:00.1,pcie=1,romfile=AMDGopDriver.rom |
|||
| 44 | ``` |
|||
| 45 | ||||
| a2cb42 | deseven | 2025-06-20 12:07:25 | 46 | Proxmox VM: |
| e10072 | deseven | 2025-06-17 18:01:52 | 47 |  |
| 48 | ||||
| f5647d | deseven | 2025-09-28 19:26:14 | 49 | ### Windows VMs |
| afcbf7 | deseven | 2025-06-12 12:02:54 | 50 | - hardware IDs are `1002:1586` (iGPU) and `1002:1640` (audio) |
| f5647d | deseven | 2025-09-28 19:26:14 | 51 | - the 'reset bug' is here, I found no way to avoid it, so **you can passthrough the iGPU to a Windows guest only once per boot of the host** |
| 94b4e5 | deseven | 2025-08-11 15:28:17 | 52 | - don't bother with `vendor-reset` module and/or `RadeonResetBugFix` service, they are severely outdated and don't do anything in our case |
| 029502 | deseven | 2025-07-04 22:48:21 | 53 | - if your VM crashes during GPU driver install, switch the CPU type to something generic (`x86-64-v4` for example seems to work fine), install the driver, then return it back to `host` |
| 56c240 | deseven | 2025-07-04 22:54:19 | 54 | - if you see unknown PCI device (`1af4:1057`) in your Device Manager, install `viomem` driver manually from virtio drivers ISO |
| afcbf7 | deseven | 2025-06-12 12:02:54 | 55 | - set the fixed VRAM amount in the BIOS and never change it on the OS level, otherwise expect major slowdowns and crashes |
| 68c497 | deseven | 2025-06-12 11:47:12 | 56 | - [this issue](https://github.com/isc30/ryzen-gpu-passthrough-proxmox/issues/112) might be worth looking into |
| 57 | ||||
| f5647d | deseven | 2025-09-28 19:26:14 | 58 | ### Linux VMs |
| 59 | - the guide and configuration are valid for Linux too |
|||
| 60 | - Proxmox 9 seems to be a must to avoid the reset bug |
|||
| 61 | - use recent kernels (6.15+), if you see amdgpu driver errors during boot most likely your kernel is too old |
|||
| 62 | - just like with Windows, dynamic VRAM allocation seems to be very unstable, set the fixed amount in the BIOS |
|||
| 63 | ||||
| 68c497 | deseven | 2025-06-12 11:47:12 | 64 | ### Files |
| 8f8641 | deseven | 2025-06-12 13:16:45 | 65 | (taken from [[EVO-X2|Devices/GMKtec-EVO-X2]], BIOS version 1.04) |
| 1a9842 | deseven | 2025-06-12 11:48:50 | 66 | - [vbios_8060s.bin](./vbios_8060s.bin) |
| 67 | - [AMDGopDriver.rom](./AMDGopDriver.rom) |