Jump to content

Need help to spoof device-id for RX550 GPU


Dmitry R
 Share

15 posts in this topic

Recommended Posts

Hi guys, some times ago I tried to spoof device-id of my RX550 gpu and found here SSDT (attached) that worked great for me. The GFX0 was sitting here:

PciRoot(0x1)/Pci(0x1C,0x0)/Pci(0x0,0x0)

Now I had to change my motherboard and my GFX0 moved here:

PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0)

in win10 I see this:
 

PCIROOT(0)#PCI(1C00)#PCI(0000)

ACPI(_SB_)#ACPI(PCI0)#ACPI(SE0_)#ACPI(S00_)

hackintool gives me this:
 

IOService:/AppleACPIPlatformExpert/PCI0/AppleACPIPCI/SE0@1C/IOPP/GFX0@0

PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0)

gfxutil gives me this:

04:00.0 1002:699f /PCI0/SE0@1C/GFX0@0 = PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0)

 

and in this location I can't spoof device-id neither with this SSDT nor with OC config/DeviceProperties/Add 

 

Any help would be very much appreciated

origin ACPI dump.zip SSDT-550-SPOOF.aml.zip

Link to comment
Share on other sites

i can't make you advice inside your method of work.

If you will use Clover then it automatically calculate the address of the card and injected there the Fake Device ID

Config.plist->Graphics->Inject->ATI=true

Config.plist->Devices->FakeID->ATI=0x67df1002

If any doubts show your preboot.log obtained by F2. As well show your config.plist to exclude your misprints.

Don't use Whatevergreen.

Link to comment
Share on other sites

Thanks for the advice. Clover worked for me exactly this way up to Big Sur, however it didn't boot Ventura. I switched to OC just because there was no problem to boot Ventura with OC while in Clover I can't get through the boot process. My problem of device-id renaming relates to OC and not to Clover. I've just tried to boot my Ventura with the latest Clover with the same quircks that make possible to boot the system via OC. Still have the same problem. Can't get through (attached). I also tried several more Clover config options without any success. Both clover and oc configs are attached. My system is a virtual machine under proxmox (qemu).

 

Screenshot_20231231_123753.png

config-oc.plist config-clover.plist

Link to comment
Share on other sites

Apply this patch on correct PciRoot

Quote

<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>
                <dict>
                    <key>device-id</key>
                    <data>/2c=</data>
                </dict>

 

Link to comment
Share on other sites

I also never had a success booting macOS in QEMU.

What is mean quirks if boot in artificial environment?

What to do with processor MSR which QEMU didn't set?

0:108  0:000  got cores from CPUID_1 = 2 -- really?
0:108  0:000   TSC/CCC Information Leaf:
-- some zero values --
0:108  0:000    numerator     : 0
0:108  0:000    denominator   : 0
0:108  0:000  FSBFrequency = 100 MHz, DMI FSBFrequency = 0 MHz, Corrected FSBFrequency = 100 MHz
0:108  0:000  MaxDiv/MinDiv: 0.0/0
0:108  0:000  Turbo: 0/0/0/0
0:108  0:000  PCI (00|00:01.00) : 1234 1111 class=030000 -- it is graphics card???
-- some frequences --
24:900  0:000  Finally: ExternalClock=6241MHz BusSpeed=24960276kHz CPUFreq=2496MHz PIS: hw.busfrequency=24964000000Hz

How did you propose macOS kernel will work with such busfrequency? 

Link to comment
Share on other sites

2 hours ago, MaLd0n said:

Apply this patch on correct PciRoot

 

I applied this patch with and without some cosmetics like device name. In ioreg GFX0 now has proper device-id (see ioreg) however, injection is somewhat incomplete, as the gpu doesn't work and there are traces of old device-id 0x699f in GFX0 at least in "compatible" property.

iMac Pro.zip

Link to comment
Share on other sites

58 minutes ago, Slice said:

I also never had a success booting macOS in QEMU.

What is mean quirks if boot in artificial environment?

What to do with processor MSR which QEMU didn't set?

0:108  0:000  got cores from CPUID_1 = 2 -- really?
0:108  0:000   TSC/CCC Information Leaf:
-- some zero values --
0:108  0:000    numerator     : 0
0:108  0:000    denominator   : 0
0:108  0:000  FSBFrequency = 100 MHz, DMI FSBFrequency = 0 MHz, Corrected FSBFrequency = 100 MHz
0:108  0:000  MaxDiv/MinDiv: 0.0/0
0:108  0:000  Turbo: 0/0/0/0
0:108  0:000  PCI (00|00:01.00) : 1234 1111 class=030000 -- it is graphics card???
-- some frequences --
24:900  0:000  Finally: ExternalClock=6241MHz BusSpeed=24960276kHz CPUFreq=2496MHz PIS: hw.busfrequency=24964000000Hz

How did you propose macOS kernel will work with such busfrequency? 

I don't know how to answer these questions, however it is fact, that I have for my hardware a clover config that can boot macos vm up to Big Sur version and oc config that boots macos vm up to Sonoma. There is some tuning required inside qemu vm configuration, but not much and many others use this way as with a modern hardware it is easier and quicker to get a working system with almost all features available.

Edited by Dmitry R
  • Like 1
Link to comment
Share on other sites

38 minutes ago, Slice said:

Now I know a macOS is possible in QEMU. Thanks!

Nothing to thank me for. This is not my merit at all 😀 Many people have spent time and efforts selecting parameters that allow macos to run in qemu while I just brought this news to you. Thank you for the Clover. It served me faithfully for a long time. It would be great if I could continue to use it, but it's not clear how to configure it to get past the initial boot stage.

BTW,  Happy New Year!

Link to comment
Share on other sites

  • 2 weeks later...
 Share

×
×
  • Create New...