RTX 5070 Ti passthrough on Proxmox VE 9.2 (AM5, B650)

Tested 2026-10-17 · updated 2026-10-17

My daily desktop is a VM. The RTX 5070 Ti, the USB controller and a games NVMe all go straight into it from the Proxmox host. This is that setup, pasted off the running box. When a BIOS or driver update changes something, this page gets a new date.

Tested on

PartValue
BoardGigabyte B650 AORUS ELITE AX V2, BIOS F41 (2026-05-21)
CPUAMD Ryzen 9 7950X3D, 16C/32T
GPUNVIDIA GeForce RTX 5070 Ti, PCI IDs 10de:2c05 (GPU) and 10de:22e9 (audio)
HostProxmox VE 9.2.20, kernel 7.0.14-19-pve, ZFS root
GuestUbuntu 26.04.1 LTS, kernel 7.0.0-38-generic, nvidia-driver-595-open 595.99.02
Display3440x1440 at 164.9 Hz VRR (DisplayPort) plus 2560x1440 at 143.9 Hz (HDMI), both off the 5070 Ti

BIOS F41 broke it, one setting fixed it

After updating this board from F33 to F41, the VM would not start. The host log said:

vfio 0000:01:00.0: Firmware has requested this device have a 1:1 IOMMU mapping, rejecting configuring the device without a 1:1 mapping

The fix is in the BIOS, under Settings → AMD CBS → NBIO Common Options:

SettingSet to
IOMMUEnabled (not Auto; Enabled is what reveals the next option)
Kernel DMA Protection IndicatorDisabled
Pre-boot DMA ProtectionEnabled (left as is)

After saving, the boot log held zero "1:1" lines and the VM started with the GPU, the USB controller and an NVMe drive all passed through. The same fix is reported on Gigabyte X870E boards with newer AGESA [2][3].

Tip: systemctl reboot --firmware-setup on the host boots straight into the BIOS, no key timing.

Host setup

The commands follow the Proxmox admin guide, PCI(e) Passthrough section [1]. Run them in the node shell.

1. Load the VFIO modules

printf "vfio\nvfio_iommu_type1\nvfio_pci\n" > /etc/modules-load.d/vfio.conf

2. Find the card's IDs

lspci -nn | grep -i nvidia

Two lines come back, the GPU and its HDMI audio. Note both [10de:xxxx] IDs and the bus address (here 01:00).

3. Reserve the card for VMs

echo "options vfio-pci ids=10de:2c05,10de:22e9" > /etc/modprobe.d/vfio.conf
printf "blacklist nouveau\nblacklist nvidiafb\n" > /etc/modprobe.d/blacklist-nouveau.conf
update-initramfs -u -k all
reboot

Swap in your own IDs from step 2. This host needed no extra kernel parameters: /proc/cmdline is the Proxmox default (quiet, ZFS root), with no iommu=pt and no nomodeset.

4. Check it took

lspci -nnk -s 01:00
cat /proc/cmdline

Both functions must show Kernel driver in use: vfio-pci.

The VM

The passthrough lines from qm config on the running VM:

bios: ovmf
machine: q35
cpu: host
efidisk0: local-zfs:vm-210-disk-0,efitype=4m,pre-enrolled-keys=0,size=1M
hostpci0: 0000:01:00,pcie=1
vga: virtio

Shell equivalent, VM 100 and the card at 01:00:

qm set 100 -hostpci0 0000:01:00,pcie=1

Guest driver

RTX 50 (Blackwell) cards are supported only by NVIDIA's open kernel modules [4], so on Ubuntu pick the -open package:

sudo apt update
sudo ubuntu-drivers list
sudo apt install -y nvidia-driver-595-open
sudo reboot
nvidia-smi

Known snags

SymptomWhat fixed it
1:1 IOMMU mapping after a BIOS updateThe BIOS setting above.
Could not open /dev/vfio/NN: Device or resource busy on startSeen right after a qm shutdown. Nothing held the device seconds later; a second qm start worked seen here.
Host or installer boots to a black screenAdd nomodeset to the kernel line (installer: press e on the boot entry). This host did not need it after install.
Guest hangs at boot with Primary GPU onPrimary GPU off, vga: virtio seen here.

Sources

  1. Proxmox VE admin guide: PCI(e) Passthrough
  2. Proxmox forum: VFIO, firmware has requested a 1:1 IOMMU mapping
  3. Level1Techs: Gigabyte X870E (AGESA 1.2.2) passthrough fails with the 1:1 mapping error
  4. NVIDIA: transition to open-source GPU kernel modules