ruthan Posted March 25, 2020 Share Posted March 25, 2020 (edited) Hello, i wonder if someone managed to get working old Ati videocards pass through with KVM? Im using Qemu 4.2. I managed to get working almost other else Win98 ready 3D videocards PCI/PCI-e videocards from Nvidia, Matrox, 3dfx on GB Z170 MB with PCI slot but i never was successful with ATI PCI/PCIE-e ones. I have tried so far (card name - problem ) : ATI Mach 64 PCI - videocard - machine start segfault ATI Rage XL PCI - videocard - machine start segfault ATI X700 PCI-E - videocard - machine started, completely broken picture from boot.. and only on Analog D-SUB output, DVI is dead ATI X800 XL PCI-E - videocard - machine started, completely broken picture from boot.. and only on Analog D-SUB output, DVI is dead I also wonder is someone able to download these cards vbios roms, from some Linux or Windows tool.. i tried some Linux rom parser utility for Linux from Proxmox site (its working fine for old Nvidia cards) and GPU-Z on modern Windows 7, but i want lucky. Edited March 25, 2020 by ruthan Quote Link to comment
TechAsa Posted July 3, 2020 Share Posted July 3, 2020 How did you get these old vga cards working? I've been trying for days to get a 3dfx voodoo3 pci card to pass through to a VM and all i get is device is busy errors. pcie gpu devices will pass through and allow the vm to start. PCI devices will not for some reason. im using a pci slot on an x58 motherboard with a x5660 xeon cpu. iommu etc are all enabled. ive tried stubbing the pci devices. i feel like it should be more straight forward than this. error: internal error: qemu unexpectedly closed the monitor: 2020-07-03T23:40:34.689526Z qemu-system-x86_64: -device vfio-pci,host=0000:0b:01.0,id=hostdev0,x-vga=on,bus=pci.0,addr=0x3,romfile=/boot/ROMS/3k07sg.rom: vfio 0000:0b:01.0: Failed to set up TRIGGER eventfd signaling for interrupt INTX-0: VFIO_DEVICE_SET_IRQS failure: Device or resource busy Quote Link to comment
ruthan Posted July 4, 2020 Author Share Posted July 4, 2020 For it not needed nothing special, i passed it through by same way as PCI-E devices. Device is busy - could mean that card is still used by main OS, check if is really using vfio kernel driver by: lspci -knv Otherwise im using simple passthrough line: -device vfio-pci,host=04:01.0,x-vga=on For me rom bios file is not needed. I suppose that you are emulation i440 chipset, not q35. Here is list which card i made working and which not: https://www.win-raid.com/t6017f53-Windows-SE-on-Modern-Hardware-5.html#msg105633 I would say that there is not good explanation why some cards are not working in some situations, there have to be some bugs. Otherwise nGlide si working quite nice even on Win 98x so cant can 3dfx stuff on Nvidia cards too, its working well. Quote Link to comment
TechAsa Posted July 4, 2020 Share Posted July 4, 2020 (edited) when you say -device vfio-pci,host=04:01.0,x-vga=on, do you mean in the VM XML? mine is listed like this <hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x0b' slot='0x01' function='0x0'/> </source> <rom file='/boot/ROMS/3k07sg.rom'/> or are you talking about in the syslinux.config ammend? under the file Flash/syslinux/syslinux.cfg configured as follows. label Unraid OS menu default kernel /bzimage append vfio-pci.ids=121a:0005 vfio_iommu_type1.allow_unsafe_interrupts=1 pcie_acs_override=downstream,multifunction initrd=/bzroot these are really the only pointers ive found so far to get anything working. yet none address the error i'm getting. i did try adding this script echo 0 >/sys/class/vtconsole/vtcon0/bind echo 0 >/sys/class/vtconsole/vtcon1/bind echo efi-framebuffer.0 >/sys/bus/platform/drivers/efi-framebuffer/unbind but it did nothing... as for the iommu group it looks like this IOMMU group 15:[8086:244e] 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90) [121a:0005] 0b:01.0 VGA compatible controller: 3Dfx Interactive, Inc. Voodoo 3 (rev 01) Edited July 4, 2020 by TechAsa Quote Link to comment
ruthan Posted July 4, 2020 Author Share Posted July 4, 2020 I dont use Unraid or Virt manager right now, but i just native Qemu on Linux, i find out that its more universal and easier to debug. Its line from sh Qemu starting script. If is something working with Unraid its should work on Linux +QEMU and vice versa in 99% of cases.. Only main difference is syntax - sh script vs xml file. This is good place to start with Qemu on Linux: https://heiko-sieger.info/running-windows-10-on-linux-using-kvm-with-vga-passthrough/ 1 Quote Link to comment
Recommended Posts
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.