Contribute
Register

HP ZBOOK G5 17

Lots of scattered info in this thread: https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/post-27485731

But since I managed to fake my GPU and load my 4170 ROM from my modified Radeon-Deinit SSDT, it may work for you regardless of whether your card has the EEPROM or not. OSX loads it directly from the SSDT, ignoring the card's ROM.

On another note though, can you boot windows and get GPUZ from Techpowerup and see if your card has a ROM and if you can extract it. As having a clean unmodified 4170 MXM rom would be priceless.

The ROM I managed to find doesn't have all the memory speeds and it has some iMac UEFI stuff on it that may be messing with the Catalina boot.
My card came with a blank EEPROM, so I had to source it from other forums, and I can't extract my VROM from my bios as it appears to be encrypted.

There's another way to extract the VROM from the windows registry, but that only works if you haven't flashed your card and the ROM is downloaded straight from the BIOS to Windows, so in my case I can't do that anymore.


Maybe you can try that and get us both a working vanilla 4170 mxm VROM.
hey there! can you elaborate on how you managed to load the rom via SSDT? this is exactly what I'm trying to achieve on an iMac 12,2 with a eeprom-less wx 4170. Thanks!
 
hey there! can you elaborate on how you managed to load the rom via SSDT? this is exactly what I'm trying to achieve on an iMac 12,2 with a eeprom-less wx 4170. Thanks!
You can try to inject using SSDT similar to this one. May need to swap the rom for an imac compatible one. and also the fact that it may be loaded by ioreg doesn't necessarily mean the driver will load it from there. May work with High Sierra and at most Mojave, but the driver loads the rom directly from shadow ram or mxm card starting on Catalina.
 

Attachments

  • Radeon-ROM-SSDT.aml.zip
    44.5 KB · Views: 55
You can try to inject using SSDT similar to this one. May need to swap the rom for an imac compatible one. and also the fact that it may be loaded by ioreg doesn't necessarily mean the driver will load it from there. May work with High Sierra and at most Mojave, but the driver loads the rom directly from shadow ram or mxm card starting on Catalina.
I may give it a try. However it's sad that there does not seem to be a path for Big Sure and future OS to load the ROM via SSDT. Is that something that can be set via a property in the driver kext? Thanks for sharing anyway. Can you propose a tool to generate the hex codes?
 
I may give it a try. However it's sad that there does not seem to be a path for Big Sure and future OS to load the ROM via SSDT. Is that something that can be set via a property in the driver kext? Thanks for sharing anyway. Can you propose a tool to generate the hex codes?
Any tool to read hex files will work. 0xED is buggy but free and works.
Just open your imac rom, copy first 64kb and paste the hex stuff into the ssdt and recompile.
Will take a couple of minutes to compile.
 
Also your acpi path to GPU will most likely be different, so you need to use clover to grab your acpi tables, then open your dsdt and find your GFX0 device and use that path in the ssdt I uploaded above. Eg. \_SB.PCI0.PEGP.PEG0 or \_SB.PCI0.GFX0, etc...
 
Last edited:
Is this limited to 64kB? Have to look up the size, but it might be bigger. Also do you know if windows driver catches up this rom?
 
Rom is only 64kb, the rest is GOP rom and not needed.
Windows = no idea, most likely not, but Windows doesn't use the old rom anyways, it uses different drivers. Only device ID may be needed in windows.
 
So i have downloaded the hex editor but it pasts hex code like

55AA53E9AD0200000000000000

How do I get my rom file into a string representation required by maciasl, like

0x55,0xAA, ....

without coding a small program preferably...
 
Copy the HEX data to Notepad and save as ROM.txt then in terminal type: cat ROM.txt | sed 's/../&:/g; s/:$//' | sed 's/:/, 0x/g' >> Out.txt
Then open Out.txt and fix the first hex manually, copy and paste into MaciASL.
 
I found that macos has a hexdump commandline tool which produces the output as required with the correct command lind args. One question before testing this out: do i have to crop my rom file to 0x10000 bytes? Or can I embed the complete rom because it will only load the first 65535 bytes anyway?
 
Back
Top