Solved Cant get R9 390 to change device ID

bbutlerau

New member
AMD OS X Member
Joined
Mar 13, 2021
Messages
9
I've tried to use the Dortania guide to spoof the Device ID to an R9 390x as described but it doesnt seem to be working


When I use this path the PCI GPP bridge gets changed not the r9 390 as the bridge is PCI0/GPP8


where as i read the GPU as PCI0/GPP8/GFX0



I use this GPU_SPOOF


but still no luck



Any thoughts?
 

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
In the Hackintool PCI list right click your GPU and select "Copy Device Path" and paste it here.
Should be something like this,

Code:
PciRoot(0x0)/Pci(0x3,0x1)/Pci(0x0,0x0)
 

bbutlerau

New member
AMD OS X Member
Joined
Mar 13, 2021
Messages
9
Hi Shaneee
here you go:
PciRoot(0x0)/Pci(0x3,0x1)/Pci(0x0,0x0)
 

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
Ok remove the SSDT you are using to try and fake the device ID and add this into your config.plist file.
 

Attachments

  • spoof.plist
    405 bytes · Views: 115

bbutlerau

New member
AMD OS X Member
Joined
Mar 13, 2021
Messages
9
Ok remove the SSDT you are using to try and fake the device ID and add this into your config.plist file.
Done, rebooted but still no change :(
I have moved the EFI off my USB now and added to my EFI partition. Is there a way to check if my change was used? do i need to clear nvram or anything?
 

Shaneee

The AMD Guy
Staff member
Administrator
Joined
Mar 13, 2020
Messages
2,142
Is the ID still reported as 67B1? If you've got Whatevergreen.kext disable it and test again.
 

bbutlerau

New member
AMD OS X Member
Joined
Mar 13, 2021
Messages
9
Yeah still reported as that. I'll disable whatever green and try again
 

bbutlerau

New member
AMD OS X Member
Joined
Mar 13, 2021
Messages
9
should i attach my config plist?
 

bbutlerau

New member
AMD OS X Member
Joined
Mar 13, 2021
Messages
9
Update though, in hackintosh the IOreg name is now PCI0@0/GPP8@3,1/display@0 rather than PCI0@0/GPP8@3,1/GFX0@0
 

bbutlerau

New member
AMD OS X Member
Joined
Mar 13, 2021
Messages
9
Success!!!
I found this forum:
Here
I added a SSDT to add the GFX0
then Shanees plist edit worked!
 

ufolouco

New member
AMD OS X Member
Joined
May 10, 2021
Messages
4
Success!!!
I found this forum:
Here
I added a SSDT to add the GFX0
then Shanees plist edit worked!
I've been trying to get my gpu to work for 7 days and nothing works. I'm using catalina, my gpu is r7 360 ID = 665F1002 I joined this forum that you mentioned but I didn't understand what the solution is.
 

Middleman

Active member
AMD OS X Member
Joined
Jan 29, 2021
Messages
723
I've been trying to get my gpu to work for 7 days and nothing works. I'm using catalina, my gpu is r7 360 ID = 665F1002 I joined this forum that you mentioned but I didn't understand what the solution is.
Right. I should mention first off this guide is more doable on High Sierra and Mojave because Catalina onwards it is a lot harder to edit your system files especially kexts you may want to change.

The first thing you need to do is follow this guide on Dortania to establish what your PCI ACPI path is and what the proper device ID is. You’ll need to get a copy of MaciASL also in order to read and compile the SSDT file.

You need a working copy of Windows also. Using Windows Device Manager you can go to your AMD card, click on Properties and find the device ID and location path.
Device ID could be something like 67B0:1002 (I’m using an example). The path is under Location Path. And in reduced format (deduced from removing the ACPI in brackets) will usually say something like SB.PCI0.GPP8.PEGP. This is your card’s PCI ACPI path. It tells your system where your card is in the ACPI power table.

So you need to change whatever is on that SSDT-GPU-SPOOF file to the deduced path above ie. SB.PCI0.GPP8.PEGP.
In addition you also need to rename the bytes of the device-id in the section of that SSDT-GPU-SPOOF.aml file. ie. B0 67 00 00. Once it’s done you compile the file and check if it has any errors. If it doesn’t you then save it in .aml format and drag it to your EFI/OC/ACPI folder and add it and then enable it under either Propertree or Opencore Configurator under the ACPI section. Make sure it is set at the middle to bottom of the list so doesn’t affect the loading of other more important ACPI files. That sets your file.

Next you set your AMD card’s device properties. Go to Device > Properties and find your AMD card’s IOReg value from the tree. Look under the values list and see if the device ID has been added. If not add it using reverse-byte-order ie.
Key: device-id
Value: B0670000
Type: Data

then save the config.plist and try to run (boot with it) Try it with Whatevergreen.kext enabled and/or disabled to see the difference.
That is how it is used.


Another thing to mention. According to the PCI list from the Dortania guide link your card is a Tobago Pro. As I know it doesn’t exist in any of the AMD Radeon kexts in /System/Library/Extensions ie. AMDRadeon4000X.kext you may have to edit the Info.plist of your AMD Radeon kexts in /S/L/E to add those into. You will need to copy a set of original AMD kext files to your desktop first before proceeding. The closest chipset will be Bonaire (665c) so you’ll have to use that ID instead or track those down those in the kexts that are close to it, then inject your card’s deviceid code into the corresponding lines in the AMD kext file. Then you reinstall the updated kext back into /S/L/E using a kext installer like Kext Wizard, reboot and try again.
 

ufolouco

New member
AMD OS X Member
Joined
May 10, 2021
Messages
4
Right. I should mention first off this guide is more doable on High Sierra and Mojave because Catalina onwards it is a lot harder to edit your system files especially kexts you may want to change.

The first thing you need to do is follow this guide on Dortania to establish what your PCI ACPI path is and what the proper device ID is. You’ll need to get a copy of MaciASL also in order to read and compile the SSDT file.


You need a working copy of Windows also. Using Windows Device Manager you can go to your AMD card, click on Properties and find the device ID and location path.
Device ID could be something like 67B0:1002 (I’m using an example). The path is under Location Path. And in reduced format (deduced from removing the ACPI in brackets) will usually say something like SB.PCI0.GPP8.PEGP. This is your card’s PCI ACPI path. It tells your system where your card is in the ACPI power table.

So you need to change whatever is on that SSDT-GPU-SPOOF file to the deduced path above ie. SB.PCI0.GPP8.PEGP.
In addition you also need to rename the bytes of the device-id in the section of that SSDT-GPU-SPOOF.aml file. ie. B0 67 00 00. Once it’s done you compile the file and check if it has any errors. If it doesn’t you then save it in .aml format and drag it to your EFI/OC/ACPI folder and add it and then enable it under either Propertree or Opencore Configurator under the ACPI section. Make sure it is set at the middle to bottom of the list so doesn’t affect the loading of other more important ACPI files. That sets your file.

Next you set your AMD card’s device properties. Go to Device > Properties and find your AMD card’s IOReg value from the tree. Look under the values list and see if the device ID has been added. If not add it using reverse-byte-order ie.
Key: device-id
Value: B0670000
Type: Data

then save the config.plist and try to run (boot with it) Try it with Whatevergreen.kext enabled and/or disabled to see the difference.
That is how it is used.


Another thing to mention. According to the PCI list from the Dortania guide link your card is a Tobago Pro. As I know it doesn’t exist in any of the AMD Radeon kexts in /System/Library/Extensions ie. AMDRadeon4000X.kext you may have to edit the Info.plist of your AMD Radeon kexts in /S/L/E to add those into. You will need to copy a set of original AMD kext files to your desktop first before proceeding. The closest chipset will be Bonaire (665c) so you’ll have to use that ID instead or track those down those in the kexts that are close to it, then inject your card’s deviceid code into the corresponding lines in the AMD kext file. Then you reinstall the updated kext back into /S/L/E using a kext installer like Kext Wizard, reboot and try again.
Hello, thank you very much for your help, I don't have much knowledge about hackintosh, I wanted to continue using the catalina, I can disable SIP to install the kext in S / L / E, but I intend to do that when I really managed to change the ID. see, the path of my video card is SB.PCI0.PC03 correct? When I make an SSDT-GPU-SPOOF.aml file and load it in config.plist the system starts normally, however when I open hackintools, oddly enough, a new device appears with the ID I modified, but it is not the device of the display. the video device is still 665f with the path SB.PCI0.PC03_GFX0. when i saw this, i modified my SSDT-GPU-SPOOF.aml to this new path, but without success. the device that had the ID 665C is gone. follow the prints and my EFI. Sorry for my English, because my native language is Portuguese. I am using a translator

EFI, prints, IOREG
 

Attachments

  • EFI.zip
    1.1 MB · Views: 7

Middleman

Active member
AMD OS X Member
Joined
Jan 29, 2021
Messages
723
Hello, thank you very much for your help, I don't have much knowledge about hackintosh, I wanted to continue using the catalina, I can disable SIP to install the kext in S / L / E, but I intend to do that when I really managed to change the ID. see, the path of my video card is SB.PCI0.PC03 correct? When I make an SSDT-GPU-SPOOF.aml file and load it in config.plist the system starts normally, however when I open hackintools, oddly enough, a new device appears with the ID I modified, but it is not the device of the display. the video device is still 665f with the path SB.PCI0.PC03_GFX0. when i saw this, i modified my SSDT-GPU-SPOOF.aml to this new path, but without success. the device that had the ID 665C is gone. follow the prints and my EFI. Sorry for my English, because my native language is Portuguese. I am using a translator

EFI, prints, IOREG
I see. If the new device appeared then that means the first patch worked! You're supposed to leave it alone. The whole idea is for the 665C to appear - because that's what is on the Apple AMD macOS drivers. You're going to have to recheck your Windows ACPI path to correct that one.
 

maclinux1960

New member
AMD OS X Member
Joined
Jun 23, 2020
Messages
29
Hello bbutlerau,

I tried what you made, but it didn't work.

Here is my spoof.aml to point at the GFX0 what I called SPOOF.dsl and compiled as SPOOF.aml and included to ACPI:

Code:
DefinitionBlock ("", "SSDT", 2, "DRTNIA", "AMDGPU", 0x00001000)
{
    External (_SB_.PCI0.PEG0, DeviceObj)

    Scope (\_SB.PCI0.PEG0)
    {
        Device (GFX0)
        {
            Name (_ADR, Zero)  // _ADR: Address
        }
    }
}

And here is the Path what is shown in Win10:

IMG_341.jpg

In Hackintool I get the PCI Path: PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0).

So my "DeviceProperties/
Add/
PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) Dictionary
device-id data 3D680000
model string R7 250X (the card what shoud by used to spoof)

But when I start, I get this message:

Code:
RadeonSensors mio_base=0xf7e00000

RadeonSensors (pci1): found ATI Radeon ID: 0x683d, ATOM Bios: 6613HB.15.49.0.17.ASB2
RadeonSensors (pci1): using device-id to resolve temperature sensor type
RadeonSensors (pci1): adding southern Islands thermal sensor
RadeonSensors (pci1): started


AGDCC unauthorized client 'perfpowerservice' (IOService:/AppleACPIPlatFormExpert/PCI0@0/PEG0@1/IOPP/GFX0@0/AMD7000ControllerWrangler)
AGDCC unauthorized client 'perfpowerservice' (IOService:/AppleACPIPlatFormExpert/PCI0@0/AppleACPIPCI/PEG0@/IOPP/HDAU@0,1/AMD7000ControllerWrangler)
AGDCC unauthorized client 'perfpowerservice' (IOService:/AppleACPIPlatFormExpert/PCI0@0/PEG0@1/IOPP/GFX0@0/AtiDeviceControl)
AGDCC unauthorized client 'perfpowerservice' (IOService:/AppleACPIPlatFormExpert/PCI0@0/PEG0@1/IOPP/GFX0@0/AtiDeviceControl/AppleGraphicsDevicePolicy/ACDPClientControl)

After about 1 Minute the PC reboots

What did I wrong?

Regards from Germany

PS: I try to get my new ASUS AMD R7 240 to get running
 
Top Bottom
  AdBlock Detected
Sure, ad-blocking software does a great job at blocking ads, but it also blocks some useful and important features of our website. For the best possible site experience please take a moment to disable your AdBlocker.