[vfio-users] amd rx480 invalid rom contents

P. Pronk vfio at pronk.nl
Tue Jan 24 00:04:19 UTC 2017


Also for a ich6 sound device? Thought the msi interrupts was a 'pass 
through' setting when you use the hdmi audio device? Anyway, it's not 
listed in regedit in the PCI tree as the amd & virtio devices are so not 
sure what to do.

I have to set it to CD quality, any better or worse and the crackles get 
really bad


On 24/01/17 00:40, Scott wrote:
> Change the sample rate in Windows to DVD quality.. that made my sound 
> crackles go away.
>
> Also ensure msi Interrupts enabled.
>
> scott
>
> On Jan 23, 2017 6:24 PM, "P. Pronk" <vfio at pronk.nl 
> <mailto:vfio at pronk.nl>> wrote:
>
>
>     That would be interesting to see indeed. Actually I bought the
>     RX460 because first I wanted to use my old HD7850, but then my pc
>     didnt even want to boot (linux, didnt try windows). It just hanged
>     seconds after grub loading with a lot of those PCIe Bus Error's.
>     Then I tried a couple Nvidia NVS295's I had but I couldnt get them
>     to work properly (driver issues which caused mismatching colours).
>
>     Probably there is just something wrong with that MSI RX480, as it
>     gave those PCI-E Bus Error's also when it was the only GPU in my
>     system (while I was waiting for the RX460). But then again, it's
>     strange that the rom could be extracted correctly with GPU-Z under
>     Windows.
>
>     I did a Unique Heaven test and the results where not bad, ~1350
>     points and 53fps. But during some scenes it seemed the camera
>     movement slowed down and then sped up significantly a couple of
>     times. It didnt look like that was intentionaly but that said
>     there was no drop in fps. Will do some more tests tomorrow as I am
>     also not yet really happy with the sound quality (too much noise
>     sometimes).
>
>     Yes, I extracted the uefi bios from
>     edk2.git-ovmf-x64-0-20170120.b2426.gaa961de.noarch.rpm. See xml below.
>
>     Cheers, Pim
>     --------------------------
>     <domain type='kvm'
>     xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0
>     <http://libvirt.org/schemas/domain/qemu/1.0>'>
>       <name>win8</name>
>       <uuid>8a96e6b2-6396-4e84-ba3b-dedcb1e3d997</uuid>
>       <memory unit='KiB'>8388608</memory>
>       <currentMemory unit='KiB'>8388608</currentMemory>
>       <memoryBacking>
>         <hugepages/>
>       </memoryBacking>
>       <vcpu placement='static'>4</vcpu>
>       <cputune>
>         <vcpupin vcpu='0' cpuset='2'/>
>         <vcpupin vcpu='1' cpuset='3'/>
>         <vcpupin vcpu='2' cpuset='6'/>
>         <vcpupin vcpu='3' cpuset='7'/>
>       </cputune>
>       <numatune>
>         <memory mode='preferred' nodeset='0'/>
>       </numatune>
>       <os>
>         <type arch='x86_64' machine='pc-i440fx-xenial'>hvm</type>
>         <loader readonly='yes'
>     type='pflash'>/usr/share/ovmf/OVMF-win8.fd</loader>
>         <nvram>/var/lib/libvirt/qemu/nvram/win8_VARS.fd</nvram>
>         <bootmenu enable='no'/>
>       </os>
>       <features>
>         <acpi/>
>         <apic/>
>         <hyperv>
>           <relaxed state='on'/>
>           <vapic state='on'/>
>           <spinlocks state='on' retries='8191'/>
>         </hyperv>
>       </features>
>       <cpu mode='host-model'>
>         <model fallback='allow'/>
>         <topology sockets='1' cores='2' threads='2'/>
>       </cpu>
>       <clock offset='localtime'>
>         <timer name='rtc' tickpolicy='catchup'/>
>         <timer name='pit' tickpolicy='delay'/>
>         <timer name='hpet' present='no'/>
>         <timer name='hypervclock' present='yes'/>
>       </clock>
>       <on_poweroff>destroy</on_poweroff>
>       <on_reboot>restart</on_reboot>
>       <on_crash>restart</on_crash>
>       <pm>
>         <suspend-to-mem enabled='no'/>
>         <suspend-to-disk enabled='no'/>
>       </pm>
>       <devices>
>         <emulator>/usr/bin/kvm-spice</emulator>
>         <disk type='block' device='disk'>
>           <driver name='qemu' type='raw' cache='none' io='native'/>
>           <source
>     dev='/dev/disk/by-path/ip-192.168.1.2:3260-iscsi-iqn.2017-01.nl.serv:zpool.virtual-lun-0'/>
>           <target dev='sda' bus='scsi'/>
>           <boot order='1'/>
>           <address type='drive' controller='0' bus='0' target='0'
>     unit='0'/>
>         </disk>
>         <controller type='pci' index='0' model='pci-root'/>
>         <controller type='usb' index='0'>
>           <address type='pci' domain='0x0000' bus='0x00' slot='0x01'
>     function='0x2'/>
>         </controller>
>         <controller type='scsi' index='0' model='virtio-scsi'>
>           <driver queues='4'/>
>           <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
>     function='0x0'/>
>         </controller>
>         <interface type='bridge'>
>           <mac address='52:54:00:f4:37:6f'/>
>           <source bridge='br0'/>
>           <model type='virtio'/>
>           <address type='pci' domain='0x0000' bus='0x00' slot='0x03'
>     function='0x0'/>
>         </interface>
>         <sound model='ich6'>
>           <address type='pci' domain='0x0000' bus='0x00' slot='0x04'
>     function='0x0'/>
>         </sound>
>         <hostdev mode='subsystem' type='pci' managed='yes'>
>           <source>
>             <address domain='0x0000' bus='0x01' slot='0x00'
>     function='0x0'/>
>           </source>
>           <rom file='/var/lib/libvirt/roms/113-MSITV341MH.152.rom'/>
>           <address type='pci' domain='0x0000' bus='0x00' slot='0x05'
>     function='0x0'/>
>         </hostdev>
>         <hostdev mode='subsystem' type='pci' managed='yes'>
>           <source>
>             <address domain='0x0000' bus='0x01' slot='0x00'
>     function='0x1'/>
>           </source>
>           <address type='pci' domain='0x0000' bus='0x00' slot='0x0a'
>     function='0x0'/>
>         </hostdev>
>         <hostdev mode='subsystem' type='usb' managed='yes'>
>           <source>
>             <vendor id='0x0141'/>
>             <product id='0x2d55'/>
>           </source>
>         </hostdev>
>         <hostdev mode='subsystem' type='usb' managed='yes'>
>           <source>
>             <vendor id='0x0168'/>
>             <product id='0xc11d'/>
>           </source>
>         </hostdev>
>         <memballoon model='virtio'>
>           <address type='pci' domain='0x0000' bus='0x00' slot='0x08'
>     function='0x0'/>
>         </memballoon>
>       </devices>
>       <qemu:commandline>
>         <qemu:env name='QEMU_PA_SAMPLES' value='4096'/>
>         <qemu:env name='QEMU_AUDIO_DRV' value='pa'/>
>         <qemu:env name='QEMU_PA_SERVER'
>     value='/run/user/1000/pulse/native'/>
>       </qemu:commandline>
>     </domain>
>
>
>     On 23/01/17 22:51, Scott wrote:
>>     Hi
>>
>>     I downloaded a rom from the Internets.  There is a common site
>>     that has a library of them.  I have been meaning to try without
>>     the rom file too. Not sure it's necessary.
>>
>>     I think you have a tougher time because you have two AMD cards. 
>>     I am able to blacklist the AMD driver completely because my
>>     "other card" is Intel.
>>
>>     Are you using the uefi bios for your virtual machine?
>>
>>     scott
>>
>>     On Jan 23, 2017 9:37 AM, "P. Pronk" <vfio at pronk.nl
>>     <mailto:vfio at pronk.nl>> wrote:
>>
>>         On 2017-01-23 12:13, Manuel Ullmann wrote:
>>
>>             depending on the Polaris being a reference card
>>
>>         Thanks for your comments, but it seems the MSI Gaming X
>>         series is not a reference card (its factory overclocked).
>>
>>             So the vBios being bricked by the manufacturr should be
>>             also kept in mind.
>>
>>         I dont think this is the case here, as using GPU-Z under
>>         Windows shows a valid EFI rom. It seems a Linux issue only, I
>>         have submitted a case with MSI to see what they say.
>>
>>         On 23/01/17 02:46, Scott wrote:
>>
>>             Here is my xml in case it helps:
>>
>>         Thanks, if I add the rom (the one I saved using GPU-Z under
>>         Windows) my display turns on.
>>
>>         Unfortunately it didnt work then yet, as my dmesg was flooded
>>         with the following message:
>>         vfio-pci 0000:01:00.0: BAR 0: can't reserve [mem
>>         0xc0000000-0xcfffffff 64bit pref]
>>
>>         This was caused due grub loading vesafb for the RX480 as the
>>         graphical terminal was enabled. So in /etc/default/grub I had
>>         to add GRUB_GFXPAYLOAD_LINUX="text" and disable
>>         'GRUB_GFXMODE' (not sure about the last one as maybe thats
>>         implicit but it doesnt hurt either).
>>
>>         Unfortunately that does mean I cant use ddccontrol it seems,
>>         as that complains about missing a framebuffer driver.
>>         Therefore I've also asked Asus whether they plan to support
>>         choosing the primary vga slot like Gigabyte does and they
>>         said 'they will discuss this internally'.
>>         My Asus support agent actually had never heard of vfio before
>>         and repeatedly said that Asus only supports multiple GPU's
>>         when using SLI/Crossfire. So maybe if more people would
>>         contact their local Asus support agent and request this
>>         feature they are more willing to look at it? Who takes the
>>         hint? ;)
>>
>>         I had to install the driver twice as the first time the
>>         install failed, but at the moment the GPU appears to be
>>         working correctly. Now first on to sound before I do some 3D
>>         testing.
>>
>>         Kind rgds, Pim
>>
>>
>>             Best regards,
>>             Manuel
>>
>>                 Here is my xml in case it helps:
>>
>>                 <domain type='kvm'>
>>                 <name>dozer</name>
>>                 <uuid>989e9ee8-2e0a-asdf-asdf-00a41fdb1b31</uuid>
>>                 <title>dozer</title>
>>                 <memory unit='KiB'>8388608</memory>
>>                 <currentMemory unit='KiB'>8388608</currentMemory>
>>                 <memoryBacking>
>>                 <hugepages/>
>>                 </memoryBacking>
>>                 <vcpu placement='static'>4</vcpu>
>>                 <cputune>
>>                 <vcpupin vcpu='0' cpuset='4'/>
>>                 <vcpupin vcpu='1' cpuset='5'/>
>>                 <vcpupin vcpu='2' cpuset='6'/>
>>                 <vcpupin vcpu='3' cpuset='7'/>
>>                 </cputune>
>>                 <os>
>>                 <type arch='x86_64' machine='pc-i440fx-xenial'>hvm</type>
>>                 <loader readonly='yes'
>>                 type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader>
>>                 <nvram>/var/lib/libvirt/qemu/nvram/dozer_VARS.fd</nvram>
>>                 <boot dev='hd'/>
>>                 </os>
>>                 <features>
>>                 <acpi/>
>>                 <apic/>
>>                 <hyperv>
>>                 <relaxed state='on'/>
>>                 <vapic state='on'/>
>>                 <spinlocks state='on' retries='8191'/>
>>                 </hyperv>
>>                 </features>
>>                 <cpu mode='host-passthrough'>
>>                 <topology sockets='1' cores='4' threads='1'/>
>>                 </cpu>
>>                 <clock offset='localtime'>
>>                 <timer name='rtc' tickpolicy='catchup'/>
>>                 <timer name='pit' tickpolicy='delay'/>
>>                 <timer name='hpet' present='no'/>
>>                 <timer name='hypervclock' present='yes'/>
>>                 </clock>
>>                 <on_poweroff>destroy</on_poweroff>
>>                 <on_reboot>restart</on_reboot>
>>                 <on_crash>restart</on_crash>
>>                 <pm>
>>                 <suspend-to-mem enabled='no'/>
>>                 <suspend-to-disk enabled='no'/>
>>                 </pm>
>>                 <devices>
>>                 <emulator>/usr/bin/kvm-spice</emulator>
>>                 <disk type='file' device='disk'>
>>                 <driver name='qemu' type='qcow2'/>
>>                 <source file='/var/lib/libvirt/images/dozer.qcow2'/>
>>                 <target dev='sda' bus='scsi'/>
>>                 <address type='drive' controller='0' bus='0'
>>                 target='0' unit='0'/>
>>                 </disk>
>>                 <disk type='block' device='disk'>
>>                 <driver name='qemu' type='raw' cache='none' io='native'/>
>>                 <source dev='/dev/sdb1'/>
>>                 <target dev='sdb' bus='scsi'/>
>>                 <address type='drive' controller='0' bus='0'
>>                 target='0' unit='1'/>
>>                 </disk>
>>                 <controller type='usb' index='0' model='ich9-ehci1'>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x06'
>>                 function='0x7'/>
>>                 </controller>
>>                 <controller type='usb' index='0' model='ich9-uhci1'>
>>                 <master startport='0'/>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x06'
>>                 function='0x0' multifunction='on'/>
>>                 </controller>
>>                 <controller type='usb' index='0' model='ich9-uhci2'>
>>                 <master startport='2'/>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x06'
>>                 function='0x1'/>
>>                 </controller>
>>                 <controller type='usb' index='0' model='ich9-uhci3'>
>>                 <master startport='4'/>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x06'
>>                 function='0x2'/>
>>                 </controller>
>>                 <controller type='scsi' index='0' model='virtio-scsi'>
>>                 <driver queues='4'/>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x05'
>>                 function='0x0'/>
>>                 </controller>
>>                 <controller type='pci' index='0' model='pci-root'/>
>>                 <interface type='network'>
>>                 <mac address='52:54:00:bb:4f:3b'/>
>>                 <source network='default'/>
>>                 <model type='virtio'/>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x03'
>>                 function='0x0'/>
>>                 </interface>
>>                 <interface type='bridge'>
>>                 <mac address='52:54:00:de:52:c9'/>
>>                 <source bridge='br0'/>
>>                 <model type='virtio'/>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x09'
>>                 function='0x0'/>
>>                 </interface>
>>                 <hostdev mode='subsystem' type='pci' managed='yes'>
>>                 <source>
>>                 <address domain='0x0000' bus='0x01' slot='0x00'
>>                 function='0x0'/>
>>                 </source>
>>                 <rom
>>                 file='/var/lib/libvirt/roms/MSI.RX480.4096.160720.rom'/>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x02'
>>                 function='0x0'/>
>>                 </hostdev>
>>                 <hostdev mode='subsystem' type='pci' managed='yes'>
>>                 <source>
>>                 <address domain='0x0000' bus='0x01' slot='0x00'
>>                 function='0x1'/>
>>                 </source>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x04'
>>                 function='0x0'/>
>>                 </hostdev>
>>                 <hostdev mode='subsystem' type='usb' managed='yes'>
>>                 <source>
>>                 <vendor id='0x24f0'/>
>>                 <product id='0x0137'/>
>>                 </source>
>>                 </hostdev>
>>                 <hostdev mode='subsystem' type='usb' managed='yes'>
>>                 <source>
>>                 <vendor id='0x1532'/>
>>                 <product id='0x0016'/>
>>                 </source>
>>                 </hostdev>
>>                 <hostdev mode='subsystem' type='usb' managed='yes'>
>>                 <source>
>>                 <vendor id='0x045e'/>
>>                 <product id='0x070f'/>
>>                 </source>
>>                 </hostdev>
>>                 <memballoon model='virtio'>
>>                 <address type='pci' domain='0x0000' bus='0x00'
>>                 slot='0x08'
>>                 function='0x0'/>
>>                 </memballoon>
>>                 </devices>
>>                 </domain>
>>
>>                 On Sun, Jan 22, 2017 at 4:30 PM, P. Pronk
>>                 <vfio at pronk.nl <mailto:vfio at pronk.nl>> wrote:
>>
>>                     Thanks, that's good to know and I will try to
>>                 specify the rom.
>>
>>                     In the mean time, do you know which bios revision
>>                 your card has?
>>                     The other revision is
>>                 https://www.techpowerup.com/vgabios/185395/msi-rx480-8192-160719
>>                 <https://www.techpowerup.com/vgabios/185395/msi-rx480-8192-160719>
>>
>>                     So is it 113-MSITV341MH.151 or 113-MSITV341MH.152 ?
>>
>>                     Pim
>>
>>
>>
>>                     On 2017-01-22 20:46, Scott wrote:
>>
>>                     I have that msi rx480 card working with pass through.
>>
>>                         Note I had a much easier time using the uefi
>>                 bios. I am
>>                         currently
>>                         specifying a rom file in my XML for my video
>>                 card but I don't
>>                         think
>>                         that's entirely necessary.
>>
>>                         scott
>>
>>                         On Jan 22, 2017 12:47 PM, "P. Pronk"
>>                 <vfio at pronk.nl <mailto:vfio at pronk.nl>> wrote:
>>
>>                                 On Sun, 22 Jan 2017 11:55:57 +1100,
>>                 Luke Yelavich
>>                             wrote:
>>
>>                                         Who is the manufacturer of
>>                 both your AMD
>>                                 cards? So far as I
>>                                 understand
>>                                 things, its up to the manufacturer of
>>                 the card to
>>                                 provide the
>>                                 appropriate ROM
>>                                 to suit the configuration of the
>>                 card. Its likely that
>>                                 a ROM/BIOS
>>                                 update may
>>                                 fix your RX 480 card. Do both cards
>>                 work under a pure
>>                                 Windows
>>                                 environment?
>>
>>
>>                             That's a simple question but a difficult
>>                 answer to get a
>>                             pure
>>                             Windows environment working again ;)
>>
>>                             Anyway, I got the following results after
>>                 using GPU-Z
>>                             under Windows:
>>                             The RX480 is a MSI Gaming X 8G:
>>                 https://www.techpowerup.com/vgabios/187387/187387
>>                 <https://www.techpowerup.com/vgabios/187387/187387> [1]
>>                             and the RX460 is a XFX R460P4TFG5:
>>                 https://www.techpowerup.com/vgabios/189230/189230
>>                 <https://www.techpowerup.com/vgabios/189230/189230> [2]
>>
>>                             Cheers, Pim
>>
>>                            
>>                 _______________________________________________
>>                             vfio-users mailing list
>>                 vfio-users at redhat.com <mailto:vfio-users at redhat.com>
>>                 https://www.redhat.com/mailman/listinfo/vfio-users
>>                 <https://www.redhat.com/mailman/listinfo/vfio-users> [3]
>>
>>
>>                         Links:
>>                         ------
>>                         [1]
>>                 https://www.techpowerup.com/vgabios/187387/187387
>>                 <https://www.techpowerup.com/vgabios/187387/187387>
>>                         [2]
>>                 https://www.techpowerup.com/vgabios/189230/189230
>>                 <https://www.techpowerup.com/vgabios/189230/189230>
>>                         [3]
>>                 https://www.redhat.com/mailman/listinfo/vfio-users
>>                 <https://www.redhat.com/mailman/listinfo/vfio-users>
>>
>>
>>
>>                 _______________________________________________
>>                 vfio-users mailing list
>>                 vfio-users at redhat.com <mailto:vfio-users at redhat.com>
>>                 https://www.redhat.com/mailman/listinfo/vfio-users
>>                 <https://www.redhat.com/mailman/listinfo/vfio-users>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20170124/4e3cbbcf/attachment.htm>


More information about the vfio-users mailing list