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

dwdrummer959

macrumors member
Feb 3, 2003
30
13
US
Thanks. Which files would be most helpful? Also, what exactly is private mode? I think this file, 1002.67df.from_ioreg_1.rom.decoded.txt, is relevant:

ATOM BIOS Rom:
SubsystemVendorID: 0x106b SubsystemID: 0x0206
IOBaseAddress: 0x0000
Filename: C944A1XT.014
BIOS Bootup Message:
ELLESMERE XTA A1 GDDR5 256Mx32 8GB 300e/300m

PCI ID: 1002:67df
Connector at index 0
Type [@offset 40684]: DisplayPort (10)
Encoder [@offset 40688]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 40812]: 0x90, OSX senseid: 0x1
Connector at index 1
Type [@offset 40694]: DisplayPort (10)
Encoder [@offset 40698]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 40839]: 0x91, OSX senseid: 0x2
Connector at index 2
Type [@offset 40704]: DisplayPort (10)
Encoder [@offset 40708]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 40866]: 0x92, OSX senseid: 0x3
Connector at index 3
Type [@offset 40714]: DisplayPort (10)
Encoder [@offset 40718]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 40893]: 0x93, OSX senseid: 0x4
Connector at index 4
Type [@offset 40724]: DisplayPort (10)
Encoder [@offset 40728]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 40920]: 0x94, OSX senseid: 0x5
Connector at index 5
Type [@offset 40734]: DisplayPort (10)
Encoder [@offset 40738]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 40947]: 0x95, OSX senseid: 0x6
 
  • Like
Reactions: Nick [D]vB

startergo

macrumors 603
Sep 20, 2018
5,022
2,283
Thanks. Which files would be most helpful? Also, what exactly is private mode? I think this file, 1002.67df.from_ioreg_1.rom.decoded.txt, is relevant:

ATOM BIOS Rom:
SubsystemVendorID: 0x106b SubsystemID: 0x0206
IOBaseAddress: 0x0000
Filename: C944A1XT.014
BIOS Bootup Message:
ELLESMERE XTA A1 GDDR5 256Mx32 8GB 300e/300m

PCI ID: 1002:67df
Connector at index 0
Type [@offset 40684]: DisplayPort (10)
Encoder [@offset 40688]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 40812]: 0x90, OSX senseid: 0x1
Connector at index 1
Type [@offset 40694]: DisplayPort (10)
Encoder [@offset 40698]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 40839]: 0x91, OSX senseid: 0x2
Connector at index 2
Type [@offset 40704]: DisplayPort (10)
Encoder [@offset 40708]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 40866]: 0x92, OSX senseid: 0x3
Connector at index 3
Type [@offset 40714]: DisplayPort (10)
Encoder [@offset 40718]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 40893]: 0x93, OSX senseid: 0x4
Connector at index 4
Type [@offset 40724]: DisplayPort (10)
Encoder [@offset 40728]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 40920]: 0x94, OSX senseid: 0x5
Connector at index 5
Type [@offset 40734]: DisplayPort (10)
Encoder [@offset 40738]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 40947]: 0x95, OSX senseid: 0x6
1589986071901.png
 

Nick [D]vB

macrumors regular
Jun 1, 2018
180
341
Yes, it should work as-is for compute or even eGPU gaming (with a performance hit), but no real benefit over a PC RX580 unless it's configured properly with working HDMI outputs, boot-screen etc. Testing as an eGPU is really going to complicate things, especially on a machine with switchable AMD graphics (that's what the Gmux relates to btw). Do you have access to a MacPro, Mini, or an older Macbook with Intel (only) or Nvidia graphics?

Sadly the vBIOS rom from that MP7,1 dump is also incomplete, (DarwinDumper always misses the end off the GOP section), but you can see from the decode that all the outputs are defined as DisplayPorts, which probably explains the HDMI problem. But I would also test on an older 1080p display / TV because it could be an HDMI 2.0 issue. Thankfully the MPX 580 outputs partially match several other frame-buffers (which we already have Apple GOPs for) so we could try loading those as a test, but injecting the correct device properties through OpenCore is probably best.

You can download that iMac OpenCore image from here, just restore it to a blank USB stick using BalenaEtcher, then show hidden files and extract the attached zips into the USB stick's folders. When you boot from the stick you might get HDMI output, but I have a feeling this UEFI GOP driver is going to try and link to the internal AMD dGPU instead of the MPX. You can also use this tool to dump the MPX vBIOS, but you'll have to open the Shell, then mount the USB stick, then make sure you select the MPX not the AMD dGPU, probably much easier to do it through the Windows GUI!

Copy (replace) Config.plist in EFI/OC/

Copy AMDGOP.efi to EFI/OC/Drivers/

Copy AMDVBFlash.efi to the root of the USB stick.



Good luck with it, let us know how it goes!

:cool:
 

Attachments

  • AMDGOP.zip
    56.6 KB · Views: 149
  • AMDVBFlash_293_efi.zip
    1,006.1 KB · Views: 138
  • config.plist.zip
    3.4 KB · Views: 122
Last edited:
  • Like
Reactions: Ausdauersportler

startergo

macrumors 603
Sep 20, 2018
5,022
2,283
Yes, it should work as-is for compute or even eGPU gaming (with a performance hit), but no real benefit over a PC RX580 unless it's configured properly with working HDMI outputs, boot-screen etc. Testing as an eGPU is really going to complicate things, especially on a machine with switchable AMD graphics (that's what the Gmux relates to btw). Do you have access to a MacPro, Mini, or an older Macbook with Intel (only) or Nvidia graphics?

Sadly the vBIOS rom from that MP7,1 dump is also incomplete, (DarwinDumper always misses the end off the GOP section), but you can see from the decode that all the outputs are defined as DisplayPorts, which probably explains the HDMI problem. But I would also test on an older 1080p display / TV because it could be an HDMI 2.0 issue. Thankfully the MPX 580 outputs partially match several other frame-buffers (which we already have Apple GOPs for) so we could try loading those as a test, but injecting the correct device properties through OpenCore is probably best.

You can download that iMac OpenCore image from here, just restore it to a blank USB stick using BalenaEtcher, then show hidden files and extract the attached zips into the USB stick's folders. When you boot from the stick you might get HDMI output, but I have a feeling this UEFI GOP driver is going to try and link to the internal AMD dGPU instead of the MPX. You can also use this tool to dump the MPX vBIOS, but you'll have to open the Shell, then mount the USB stick, then make sure you select the MPX not the AMD dGPU, probably much easier through the Windows GUI!

Copy (replace) Config.plist in EFI/OC/

Copy AMDGOP.efi to EFI/OC/Drivers/

Copy AMDVBFlash.efi to the root of the USB stick.



Good luck with it, let us know how it goes!

:cool:
Nick OC already provides boot screen. There is no need for drivers. Drivers are needed if OC is not used.
 

Nick [D]vB

macrumors regular
Jun 1, 2018
180
341
Yes, thanks to you and Vit for fixing that! Normally this AMDGOP.efi would be loaded from the vBIOS EEPROM on a standard PC card. The MPX Apple GOP is not being loaded, either because it's missing from the EEPROM or somehow incompatable with the MBP bootrom. First we are just testing if the MPX can use a standard UEFI GOP loaded by OpenCore - it's worth a try!
 
Last edited:

Nick [D]vB

macrumors regular
Jun 1, 2018
180
341
Cool, with the new firmware update I think the 2018 Mini shows boot-screen on AMD eGPUs now? That might actually complicate the OpenCore testing so I'd try it without the USB loader first. We really need that vBIOS dump to work out the best way to proceed. If the Apple GOP is loaded from the MPX you should see something like this in system profiler:

Graphics/Displays: AMD Radeon Pro 580X
Chipset Model: AMD Radeon Pro 580X
Type: GPU
Bus: PCIe
Slot: Slot-1
PCIe Lane Width: x16
VRAM (Total): 8 GB
Vendor: AMD (0x1002)
Device ID: 0x67df
Revision ID: 0x00c0
ROM Revision: 113-C9440C-171
VBIOS Version: 113-C944A1XT-014
EFI Driver Version: 01.01.183

Metal: Supported, feature set macOS GPUFamily2 v1
 

Nick [D]vB

macrumors regular
Jun 1, 2018
180
341
Great! Are you running Catalina on the Mini?

Which display outputs connected?
 
Last edited:

dwdrummer959

macrumors member
Feb 3, 2003
30
13
US
Saw some strange behavior I can't reproduce, but I took a screenshot so I don't think I hallucinated? I had the epgu connected and powered on and the mini recognized the MPX module but my monitor was still plugged in to the HDMI of the mini, yet somehow it seemed like the MPX was driving the display. To complicate matters I'm using screen sharing as I don't have a keyboard and mouse hooked up to the mini.
[automerge]1590029138[/automerge]
Running latest Catalina
[automerge]1590029460[/automerge]
I rebooted with everything plugged in, including the monitor connected to one of the HDMI outs of the MPX and system profiler is showing the ROM revision, VBIOS Version and EFI Driver Version, however, nothing is actually displayed on the screen I have hooked up.
 

Attachments

  • MPX Mini.png
    MPX Mini.png
    568.9 KB · Views: 204
Last edited:
  • Like
Reactions: Nick [D]vB

Nick [D]vB

macrumors regular
Jun 1, 2018
180
341
So the Apple GOP is loading from the MPX card.

I would keep screen-sharing on so you can see what's happening.

Shutdown and connect the display only to the MPX HDMI,

then power on and do an NVRAM reset, then hold Option,

Do you see the boot-picker?
 

Nick [D]vB

macrumors regular
Jun 1, 2018
180
341
No probs, at least we made some progress! I'll have to think about how to get the display detected, I was really hoping that once the EFI loaded the HDMI ports would magically start working... Using OpenCore to spoof the MacPro 7,1 might help? I'd expect we'll have to work around some eGPU weirdness, and if you can test with another screen I'd try that first. Getting Windows of some kind working means we can get that vBIOS dumped and use more tools for testing. Catch you later then.
 
Last edited:

joevt

macrumors 604
Jun 21, 2012
6,968
4,262
Cool, with the new firmware update I think the 2018 Mini shows boot-screen on AMD eGPUs now?
I have a MacMini 2018 with one display connected to a Sapphire RX 580 eGPU. I don't get a boot screen (running 10.15.4).
 

Ludacrisvp

macrumors 6502a
May 14, 2008
797
363
Ludacrisvp recently used the MP6,1 CoreEG2 to enable boot-screen on his 2009 xserve with a WX4150 MXM card and the ROM I made for the 2010 / 11 iMacs. Not sure if he cross-flashed it to MP first, but there's no reason to think this would not work on a real MP5,1. I guess you could use an MXM card in an adapter but the ones with display outputs are crazy expensive.
I’m still using a modified xserve 3,1 rom. I may crossflash it soon as I picked up a pair of X5680s for my super micro X8DT6 “G5” hack setup so I’ll have a pair of L5640s to use to swap into the xserve (not sure on if I should delid or use washer spacers yet).
 
  • Like
Reactions: Nick [D]vB

startergo

macrumors 603
Sep 20, 2018
5,022
2,283
No probs, at least we made some progress! I'll have to think about how to get the display detected, I was really hoping that once the EFI loaded the HDMI ports would magically start working... Using OpenCore to spoof the MacPro 7,1 might help? I'd expect we'll have to work around some eGPU weirdness, and if you can test with another screen I'd try that first. Getting Windows of some kind working means we can get that vBIOS dumped and use more tools for testing. Catch you later then.
It may need edid injection to output to the screen.
 

dwdrummer959

macrumors member
Feb 3, 2003
30
13
US
Doing a cold boot with the eGPU/MPX connected results in the system hanging at the Apple logo (plugged in via the HDMI port on the mini. MPX HDMI ports result in nothing) However, doing a restart (warm boot?) results in the MPX module being recognized with the additional properties showing up in system profiler (ROM revision, VBIOS Version and EFI Driver Version) but still no output from the HDMI ports of the MPX card.

Going to disable SIP and run DarwinDumper
 

Nick [D]vB

macrumors regular
Jun 1, 2018
180
341
Hey, sorry for the slow reply, something came up yesterday. Any progress? Did you try another screen or doing the NVRAM reset to get the boot-selector up? Are you sure it's really hanging, how far does the loader bar get? The display output can freeze but loading continue so I'd give it a minute and then try and connect with screen sharing. Make sure you perform the Darwin dump after the extra properties have been detected, the whole thing would be useful, but to start we really just need the IOreg and vbios dumped from windows.

It may need edid injection to output to the screen.
Yes, that's on the list! Another good reason to get windows loaded because the Radeon Pro driver has EDID injection built in and it seems to work better than most other software injection methods, we might also need to use RWEverything.
 
  • Like
Reactions: MaximumChungus

MaximumChungus

macrumors newbie
May 25, 2021
1
0
Nick, I have one of these running on Windows.

I've been poking at it in my free time with limited success, but no display yet.

Anyways, if you can talk me through it I'm happy to pull anything helpful I can. Do you just need what I'd get pulling the bios using GPU-Z?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.