Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

tsialex

Contributor
Jun 13, 2016
13,454
13,601
Hi Syncretic, how would I go about flashing a 6800XT on a cMP? I read through your post several times, which is why I have this question:

How would I get to macOS if I had an RX-6800XT plugged into my cMP? Since I would not be able to boot with it installed, would I need to have 2 GPUs connected at the same time? Does the cMP even support/allow for multiple GPUs? I have never tried this, so I am unsure if it works.

I am thinking: Boot into OpenCore & Big Sur using my RX-580, but also having the 6800XT connected, so that I can flash it? Or would I just boot into Windows and perform the flash, as @lancemcv1 mentioned above? but still, with both GPUs connected so that I could get to OpenCore and inside Windows

Any advice on that would be greatly appreciated.

Many Thanks!
Your idea is not possible, with a NAVI2x GPU installed your Mac Pro will not even complete POST (will not boot anything), with or without an additional GPU installed. Confirmed this myself with 6800XT and 6600XT, @Macschrauber also tested it before me.

Again, it's not possible to flash the NAVI2x GPU with the MacPro5,1, only will work with a MacPro7,1. You have to use a UEFI PC to flash the GPU or a external SPI flash programmer, if you don't have access to a PC (you will probably have to disassemble the GPU to do it).
 

prefuse07

Suspended
Jan 27, 2020
895
1,073
San Francisco, CA
Your idea is not possible, with a NAVI2x GPU installed your Mac Pro will not even complete POST (will not boot anything), with or without an additional GPU installed. Confirmed this myself with 6800XT and 6600XT, @Macschrauber also tested it before me.

Then how was this possible?

Is he using the already SPI flashed 6800XT in there? I'm assuming yes...

Again, it's not possible to flash the NAVI2x GPU with the MacPro5,1, only will work with a MacPro7,1. You have to use a UEFI PC to flash the GPU or a external SPI flash programmer, if you don't have access to a PC (you will probably have to disassemble the GPU to do it).

That's what I was thinking, and that's fine. As long as it IS possible to flash it and then install it back into the cMP, I am ok with that.
 
Last edited:

tsialex

Contributor
Jun 13, 2016
13,454
13,601
Then how was this possible?

Is he using the already SPI flashed 6800XT in there?



That's what I was thinking, and that's fine. As long as it IS possible to flash it and then install it back into the cMP, I am ok with that.
It's not the person that flashed via external SPI flash programmer?

Anyway, a NAVI2x GPU with unpatched firmware will not let the Mac Pro complete POST/boot anything when installed in a MacPro5,1. This is known and multiple people confirmed it for around a year already.
 
  • Like
Reactions: Ashok.Vardhan

startergo

macrumors 603
Sep 20, 2018
5,021
2,283
As a continuation of my previous post I have updated the python file path per unix convention so that the updater could work in Mac OS:
Code:
mbp114@mbp114 GOP_Updater_v1.9.6.5.k_mod_v0.4.9 % python3 /Users/mbp114/Downloads/GOP_Updater_v1.9.6.5.k_mod_v0.4.9/GOPupd.py /Users/mbp114/Downloads/GOP_Updater_v1.9.6.5.k_mod_v0.4.9/AMD.RX6900XT.16384.201104.rom  gop_upd
---------------------------------------------------------------

***************************************************************
***                Processing with Python...                ***
***************************************************************

GOP is not present!!!

EFI ROM is not last image!

Do you want to update GOP to latest available? Y for yes or N for no: Y

  Warning! Your VBIOS ID 1002-73BF doesn't exist in latest available GOP!


Do you still want to update GOP? Y for yes or any key for checking the ID in older 1.57.0.0.0 GOP: Y

  There are other ROM images in this binary! Please report it!

  Fixing ID for EFI image. No checksum correction is needed.

  Removing unnecessary end padding.

  Data after ROM and not part of EFI! Please report it!

  Unable to recover extra data at the same offset 0x14200! Please report it!


File "AMD.RX6900XT.16384.201104_updGOP.rom" with updated GOP 1.69.0.15.50 was written!
So it looks like:

1. The GOP is not present in the vbios (same as on the old NVIDIA vbioses which were not working by default in OpenCore, but were working after upgrading the vbios through this application)
2. "Your VBIOS ID 1002-73BF doesn't exist in latest available GOP!", which means that the database was not included in the latest GOP.

Someone may test the corrected image of the reference AMD 6900XT card attached to see if it is working in Opencore.
I also attached the corrected GOPupd.py to work under Mac OS.
 

Attachments

  • AMD.RX6900XT.16384.201104_updGOP.rom.zip
    447.4 KB · Views: 469
  • GOPupd.py.zip
    30.9 KB · Views: 473

prefuse07

Suspended
Jan 27, 2020
895
1,073
San Francisco, CA
Anyway, a NAVI2x GPU with unpatched firmware will not let the Mac Pro complete POST/boot anything when installed in a MacPro5,1. This is known and multiple people confirmed it for around a year already.

Yes, this much I know.

So as you said earlier, and what Syncretic said -- for anyone else reading. The only way to get a 6k series AMD card to work on the cMP is to either:
1. Use a hardware flasher,
2. or flash the ROM on a PC running Windows (or a Mac Pro 7,1), and then introduce the flashed card into the cMP.
 
  • Like
Reactions: Ashok.Vardhan

Norbert Mikołajczyk

macrumors 6502
May 26, 2016
346
171
Yes, this much I know.

So as you said earlier, and what Syncretic said -- for anyone else reading. The only way to get a 6k series AMD card to work on the cMP is to either:
1. Use a hardware flasher,
2. or flash the ROM on a PC running Windows (or a Mac Pro 7,1), and then introduce the flashed card into the cMP.
If I have egpu enclosure and mbp I could flash it under the macos, right?
 

mattspace

macrumors 68040
Jun 5, 2013
3,344
2,975
Australia
That's a good question and I asked myself the same.
I mean, I'm not super-familiar with OpenCore, but I had formed the impression that pre-boot display was a solved problem for all GPUs, or is that a separate module / feature from the "just getting it to boot at all" aspect?

  • 6X00 GPU required Big Sur or later.
  • OpenCore: Allows Mac to Boot / Run post-Mojave.
  • OpenCore: Allows boot screens for non EFI GPUs.
  • @Syncretic & @startergo (?) Patch function: Modifies the 6X00 to operate in 4,1/5,1.
So is the MVC(E) firmware just bypassing the need to use OpenCore's boot screen function, while seemingly doing the same job as Syncretic's patch to make the card work at all? Or are there still patched installs of Big Sur that will work, without requiring OpenCore that the MVC(E) version would support?
 

Syncretic

macrumors 6502
Apr 22, 2019
311
1,533
Forgive me a bit of cluelessness, but if OpenCore is necessary to run a MacOS version which supports that card, and OpenCore provides provides pre-boot functionality, what is the MVC(E) "bootscreen" mod actually doing?

By design, the Mac Pro EFI BootROM uses UGA (an older standard) for screen output. Mac-compatible cards provide UGA, which lets you see the native boot picker and the early boot screens (before MacOS loads). Without a UGA-compatible card (i.e. with non-Mac/PC cards), you'll see a black screen until something loads a driver that can speak to your video card - that's typically either OpenCore or MacOS itself. OpenCore loads early enough that the native screens aren't really necessary. As I understand it (I've never looked at an MVC card), MVC patches their cards to include UGA support, so you can use the native boot picker and see the boot screens immediately, without the need for OpenCore. (And, in the case of the RX6x00 cards, they've presumably fixed the same AMD bug that my patch fixes.)

Very cool! I am a bit confused on the flashing process though. Do you dump your GPUs rom in windows then bring it over to Mac OS and run the terminal program, then bring the new rom back into Windows to Flash the GPU?

Unfortunately, yes. As @tsialex correctly points out, you can't boot a cMP with an unpatched RX6x00 card in it; the card's initialization code contains a bug that prevents booting (fixing that is the whole point of my patch!). So, if you're using software flashing, you'll need to do that on a non-Mac PC.

To simplify things, I've attached a Windows version of the FixRX6x00 patcher program. It's still a command-line program (no GUI), same instructions as the MacOS version in my previous post. At least this way, there's less shuffling back and forth between systems.

As a continuation of my previous post I have updated the python file path per unix convention so that the updater could work in Mac OS:
Code:
mbp114@mbp114 GOP_Updater_v1.9.6.5.k_mod_v0.4.9 % python3 /Users/mbp114/Downloads/GOP_Updater_v1.9.6.5.k_mod_v0.4.9/GOPupd.py /Users/mbp114/Downloads/GOP_Updater_v1.9.6.5.k_mod_v0.4.9/AMD.RX6900XT.16384.201104.rom  gop_upd
---------------------------------------------------------------

***************************************************************
***                Processing with Python...                ***
***************************************************************

GOP is not present!!!

EFI ROM is not last image!

Do you want to update GOP to latest available? Y for yes or N for no: Y

  Warning! Your VBIOS ID 1002-73BF doesn't exist in latest available GOP!


Do you still want to update GOP? Y for yes or any key for checking the ID in older 1.57.0.0.0 GOP: Y

  There are other ROM images in this binary! Please report it!

  Fixing ID for EFI image. No checksum correction is needed.

  Removing unnecessary end padding.

  Data after ROM and not part of EFI! Please report it!

  Unable to recover extra data at the same offset 0x14200! Please report it!


File "AMD.RX6900XT.16384.201104_updGOP.rom" with updated GOP 1.69.0.15.50 was written!
So it looks like:

1. The GOP is not present in the vbios (same as on the old NVIDIA vbioses which were not working by default in OpenCore, but were working after upgrading the vbios through this application)
2. "Your VBIOS ID 1002-73BF doesn't exist in latest available GOP!", which means that the database was not included in the latest GOP.

Someone may test the corrected image of the reference AMD 6900XT card attached to see if it is working in Opencore.
I also attached the corrected GOPupd.py to work under Mac OS.

Your Python script has a problem. It complains about the EFI ROM not being the last image, but that's not a requirement for EFI option ROMs. In this case, the x86_64 EFI code appears before the ARM64 EFI code - but in the output from your script, the ARM64 code gets removed. Also, while I don't have an RX6900XT to test with, I can state that GOP is most definitely provided by the card's original ROM.

Yes, this much I know.

So as you said earlier, and what Syncretic said -- for anyone else reading. The only way to get a 6k series AMD card to work on the cMP is to either:
1. Use a hardware flasher,
2. or flash the ROM on a PC running Windows (or a Mac Pro 7,1), and then introduce the flashed card into the cMP.

Correct. As I said in my original post, @caingraywood was using a hardware flasher (I think he said it was an RT809F). I don't know his methodology - he may have been flashing in situ, or he may have been physically replacing the chips. In any case, he wasn't using software flashing. Since a cMP can't even POST with an unpatched RX6x00 card, it's necessary to flash it using either a PC (Windows/Linux) or a hardware flasher (or, I suppose, a MP7,1?).

To help simplify things, I pulled all of the RX6600/6600XT/6800/6800XT/6900XT ROMs from TechPowerup, patched them, and have attached them to this post. However, be advised that patching the ROM that came with your particular card will almost always be the better choice. Use the attached ROM images at your own risk. If you choose to use one of the attached ROM images, verify that the make/model and version number matches your card.
 

Attachments

  • FixRX6x00ROM_012.zip
    113.2 KB · Views: 2,709
  • All6900Patched.zip
    9.4 MB · Views: 925
  • All6800Patched.zip
    11.9 MB · Views: 1,000
  • All6600Patched.zip
    9.7 MB · Views: 1,454

startergo

macrumors 603
Sep 20, 2018
5,021
2,283
state that GOP is most definitely provided by the card's original ROM
That is probably correct. To my knowledge this statement in the script may indicate that something is broken in the GOP not necessarily that it is completely missing. I am not the creator of the script and will probably report it so the database can be updated to prevent removal of the ARM code. I will also try contacting AMD and ask them to provide patched vbios. Thanks for the great work! Netkas ( aka MVC) has done his own commercial solution and their team has done a lot of testing to ensure everything is working. In the past I had some issues with the MVC cards and OpenCore namely in the APFS driver conflict between OpenCore and MVC ROM. Hopefully this has been fixed.
 
Last edited:
  • Like
Reactions: Ashok.Vardhan

Spacedust

macrumors 65816
May 24, 2009
1,005
160
OpenCore and MVC cards works just fine. Also please note such unlocked cards without full EFI will either not always boot or will be boot with some crazy PCIe values like PCI 2.0 x2 despite macOS always showing x16.
 

startergo

macrumors 603
Sep 20, 2018
5,021
2,283
OpenCore and MVC cards works just fine
Good to know. Let me bring to your attention if you are not aware what problem I had with my RX-580 MVC flashed card. I have 2 identical cards, one with MVC vbios and the other one with the original OEM vbios. Booting Opencore or Refindplus (they share the same boot code) with the MVC card would hide all APFS partitions in the OC or RP boot screen. Only the HFS+ partitions and Windows were displayed. I masked the issue by loading APFS.efi with RefindPlus. @Dayo is aware because we did the testing with that card together. The OEM vbios on the other hand worked fine with OC or RP.
 

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
I remember that as a puzzling one. It wasn't actually to do with RP or OC specifically but that the GPU OptionROM was apparently uninstalling APFS for some reason.

The GPU OptionROM is run by the firmware as part of the hardware initialisation process BEFORE any boot loader starts. So basically, the firmware loaded APFS drivers on MP51 as usual, ran the MVC Card OptionROM which seemed to remove the APFS drivers so that when the firmware later ran a boot loader such as RP or OC or AnyOther, APFS volumes were absent as there was no driver present to allow dealing with such.

The GPU worked with APFS when RP and OC (would have been the same for any other) did not interrupt the process which suggests it was reinstalling the APFS drivers at some point.

It is conceivable that the GPU EFI was set up to uninstall APFS drivers (Not sure why this might be needed) do some initialisation steps and then later, most likely just before showing the Apple Picker, reinstall APFS drivers. If the MVC Apple Picker display step is not run however, such as when using tools such as RP or OC or AnyOther, then APFS drivers would be missing in those tools and they would therefore not display APFS volumes, being unable to interact with such. Just speculation but possible.

Initially, the workaround was to specifically install an APFS driver in RP as stated and this was later superseded once APFS Jumpstart was incorporated into RP. APFS Jumpstart automatically loads APFS drivers from available MacOS installations so there was no need to manually add such any longer.

MyBootMgr documentation still advises against MVC Flashed GPUs following that experience and at least one or two others:

000-MVC.png

Maybe specific to your GPU run only or a particular version of their OptionROM that was later changed?
 
Last edited:

Spacedust

macrumors 65816
May 24, 2009
1,005
160
Are you using genuine MVC card or some stolen RX580 rom? The stolen ones got issues because it's not made for such specific model of the card. Example just for Pulse RX580 8 GB there are at least 16 different roms.

For Big Sur 11.2.3 and Monterey 12.2.1 usage with flashed cards there is no need to use OpenCore at all unless someones needs Wi-Fi/Bluetooth under Monterey and updates.
 

startergo

macrumors 603
Sep 20, 2018
5,021
2,283
Are you using genuine MVC card or some stolen RX580 rom? The stolen ones got issues because it's not made for such specific model of the card. Example just for Pulse RX580 8 GB there are at least 16 different roms.
Genuine made by Dave.
 

Spacedust

macrumors 65816
May 24, 2009
1,005
160
I run UEFI Windows both 8.1 and 10 together with High Sierra/Mojave/Catalina/Big Sur and Monterey and never had any issues inside NVRAM.

I've checked the problematic rom and it wasn't made by us (we've never had such card) so must be somewhere from the US guys ;)
 

paul_bace

macrumors member
May 10, 2021
61
14
Toronto
Only ever flashed a GPU for the old 2011 iMacs before. The package came with a Linux distro that required SSH access and a bunch of terminal codes. I now have a PC (super old Dell that I’ve installed windows 10 on).

Is it possible to do this on any PC? If so, I’ll pick up a used 6600xt asap and test this out. They’re going for $500 CDN right now (used), which is about the same price as the RX 580 used (how..I don’t know). Benchmarks are saying that’s a 80% performance bump, for basically no money.

If all goes well I’ll get a 6800 16gb and try, as that will likely do me fine for a while.
 
Last edited:

prefuse07

Suspended
Jan 27, 2020
895
1,073
San Francisco, CA
Only ever flashed a GPU for the old 2011 iMacs before. The package came with a Linux distro that required SSH access and a bunch of terminal codes. I now have a PC (super old Dell that I’ve installed windows 10 on).

Is it possible to do this on any PC? If so, I’ll pick up a used 6600xt asap and test this out. They’re going for $500 CDN right now (used), which is about the same price as the RX 580 used (how..I don’t know). Benchmarks are saying that’s a 80% performance bump, for basically no money.

If all goes well I’ll get a 6800 16gb and try, as that will likely do me fine for a while.

Just remember that for the 6600 to work, you need to be running macOS 12.1 or later
 
  • Like
Reactions: Ashok.Vardhan

Norbert Mikołajczyk

macrumors 6502
May 26, 2016
346
171
Hi guys,

any success with fixing and flashing firmware? Any success stories? :)
i know it’s hard to get one of this cards but maybe there is someone who did this?
 

fancyIX

macrumors newbie
Mar 19, 2020
2
8
Hi guys,

any success with fixing and flashing firmware? Any success stories? :)
i know it’s hard to get one of this cards but maybe there is someone who did this?
Just tried on Sapphire Nitro+ 6600XT. It works great with Montery 12.1.
 

Attachments

  • Screen Shot 2022-04-27 at 10.04.00 PM.png
    Screen Shot 2022-04-27 at 10.04.00 PM.png
    79.4 KB · Views: 528
  • Screen Shot 2022-04-27 at 10.09.13 PM.png
    Screen Shot 2022-04-27 at 10.09.13 PM.png
    118.3 KB · Views: 513
  • Screen Shot 2022-04-27 at 10.05.17 PM.png
    Screen Shot 2022-04-27 at 10.05.17 PM.png
    131.5 KB · Views: 535

EvilMonk

macrumors 6502
Aug 28, 2006
330
64
Montreal, Canada
So does that mean we can use the same 6800 XT as eGPU in Mac Pro cMP and 6,1? Sorry I’m just on a project of building an eGPU I’m gonna be able to use with my Mac Pro 2012, 2013, my MBP 2013 and MBA 2018! Thanks for the help guys!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.