September 28, 2025Sep 28 I installed an NVIDIA NVS 300 video card in my Dell T440. I know it is old - don't need any performance or GPU, just a basic HDMI video output that can be used with a Windows 11 VM. I didn't want to use my last PCIe x16 slot, so I found a video card with a PCIe X1 interface.I found from prior experience that passing through the Matrox video that is on the T440 motherboard to the Windows 11 VM crashes Unraid when the VM tries to restart. Apparently the passthrough doesn't share nicely with the T440 BIOS and/or Unraid's boot console.Now I have the NVS 300 installed.It is recognized by Unraid, and I have bound it to VFIO at boot:I have passed it through to the Windows 11 VM as a multifunction device with this XML:<hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x17' slot='0x0' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x06' slot='0x1' function='0x0' multifunction='on'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x17' slot='0x0' function='0x1'/> </source> <address type='pci' domain='0x0000' bus='0x06' slot='0x1' function='0x1'/> </hostdev>The Windows 11 VM boots and recognizes the NVS300 in Device Manager.But it has "problems" - Error code 43.Searching on Gemini on this error, it recommended "spoofing" the hypervisor with the following XML code which I added to the VM's configuration, modifying the <features> section like this: <features> <acpi/> <apic/> <hyperv mode='custom'> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> <vpindex state='on'/> <synic state='on'/> <stimer state='on'/> <vendor_id state='on' value='1234567890ab'/> </hyperv> <kvm> <hidden state='on'/> </kvm> </features>With that change I still have the same error.Gemini now recommends adding a VBIOS ROM.I was able to read the ROM using GPU-Z and now have a file GT218.rom.The recommendation is to add a tag to the <hostdev> block like this:(apologies for image - for some reason text Paste has stopped working...)I have not tried this yet. I'm going to be working on other things for a few days, so I wanted to get the input from experts here in the meantime before proceeding. Edited September 28, 2025Sep 28 by timg11
October 4, 2025Oct 4 Author I have continued to work on this problem, and I'm apparently at the end of the line for suggestions from Gemini.Adding the ROM (VBIOS Passthrough) did not help.The VBIOS I read from the NVS300 using GPU-Z did not work.I downloaded 3 other BIOS files and tried them:https://www.techpowerup.com/vgabios/216753/216753 VGA BIOS Collection GT218 NVIDIA GT218 NVIDIA GT218 1024 MB BIOS216753.rom10/04/2025 02:51 PM 64,000 216753.rom https://www.techpowerup.com/vgabios/145002/145002 VGA BIOS Collection GT 218 NVIDIA GT 218 NVIDIA GT 218 1024 MB BIOS145002.rom10/04/2025 02:53 PM 64,000 145002.rom https://www.techpowerup.com/vgabios/169757/169757 VGA BIOS Collection gt218 NVIDIA gt218 NVIDIA gt218 512 MB BIOS169757.rom10/04/2025 02:55 PM 61,440 169757.romSince these were not the full size of the ROM, I padded them to 65536 bytes using dddd if=/dev/zero bs=1 count=1536 >> GT218_1GB_A.romI ended up withroot@T440:/mnt/user/isos/vbios# ls -ltotal 256-rwxrw-rw- 1 root root 65536 Oct 4 14:45 GT218.rom*-rwxrw-rw- 1 root root 65536 Oct 4 15:09 GT218_512MB_145.rom*-rwxrw-rw- 1 root root 65536 Oct 4 15:06 GT218_512MB_169.rom*-rwxrw-rw- 1 root root 65536 Oct 4 15:09 GT218_512MB_216.rom*root@T440:/mnt/user/isos/vbios#I tested each of these, editing the XML while the VM was shut down. None worked - always error 43.Gemini suggested adding these lines to the <hostdev> for the NVS300: <qemu:arg value='-set-device'/> <qemu:arg value='pci-assign,id=hostdev1,x-vga=on'/>I didn't notice until later, but the VM system removed these lines silently. Later when I noticed, Gemini said to add them a different way, but that failed due to QEMU errors. Gemini also tried adding these to the <hyperv> block <ioapic state='on'/> <-- NEW FIX LINE 1 <msrs state='on'/> <-- NEW FIX LINE 2That failed with "VM creation error unsupported configuration: unsupported HyperV Enlightenment feature: ioapic" when saving the XMLI removed the ioapic, and it still failed with " VM creation error : unsupported configuration: unsupported HyperV Enlightenment feature: msrs "Then it tried a "Host Bridge Fix" <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ich9-rom'/> </qemu:commandline>When starting the VM, this caused this error: "Execution error -- internal error: process exited while connecting to monitor: 2025-10-04T20:50:45.374359Z qemu-system-x86_64: -device ich9-rom: 'ich9-rom' is not a valid device model name "Then Gemini suggested . Add the ROM Bar Flag. modifying the rom line like this: <rom file='/mnt/user/isos/vbios/GT218_512MB_145.rom' bar='off'/>Didn't work =- still error 43.At this point Gemini said to remove the previously added x-vga=on lines.They were gone. Gemini said that libvert will remove things it doesn't understand.So we tried doing it a different way: <qemu:commandline> <qemu:arg value='-set-device'/> <qemu:arg value='pci-assign,id=hostdev1,x-vga=on'/> </qemu:commandline></domain>That resulted in this error when starting the VM: " Execution error -- internal error: process exited while connecting to monitor: qemu-system-x86_64: -set-device: invalid option "Gemini is out of options. I asked if there are any changes in Unraid 7.1.4 since 7.0.1 that might improve QEMU in this case. It said "The release notes do not explicitly confirm that the underlying QEMU or libvirt packages have been updated to support the specific features that failed"Does anyone have any further suggestions on how to get this to work?I've attached the transcript of my multi-day session with Gemini I am trying to make an NVIDIA NVS300 video card available to Windows in a VM running in Unraid 7.docx , as well as my XML for the VM. XML-2025-10-04f.xml Edited October 4, 2025Oct 4 by timg11
October 6, 2025Oct 6 Community Expert Try using Claude instead of Gemini, it's free but it's limited per few hours. Claude is more powerful when it comes to coding, he can suggest you betters bast scripts/XMLSorry I can't help other than suggesting another AI.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.