Contribute
Register

macOS Sierra PB: Need testers for new AMD Radeon drivers!

Status
Not open for further replies.
Interesting :)

Taking on board the latest included AMD kexts seem to have an ID for RX560 - not surprising as the new iMacs use similar chips, does this mean they might work without a FakeID being input by Clover?

It's easy to get confused here - do all modern AMD GPUs give a black screen on boot until the OS is up and running even if they have included IDs in the AMD kexts?

If so, is this actually a Clover problem?

(as you know @zakklol , I seem drawn to these annoying problems! :) )

:crazy:


Real Macs use apple EFI initialization, clover and hackintosh or PC bios uses UEFI initialization mode which is what is said to be the problem. People have flashed their bios with EFI only and it works great as a dedicated card, but it won't boot into windows without UEFI. It's a strange conundrum.
 
Fake ID used to work in sierra 12.0-12.3 for most cards. Tried it lately? It's the first thing I do after an update, but fake ID for XFX RX 480 won't work. Clover has been updated to provide more Polaris 10 support and it is harder to escape the 67DF and fake it with 67EF. You need to add it manually or through a clover "find and replace" function which is like running iHex every time you boot.

Yes, I have tried it lately, it's how my system is currently setup, running 10.12.5. I don't have inject ATI enabled, just ATI fakeID of 0x67EF1002. My motherboard requires a few other DSDT patches for it to work (Add DTGP, FixDisplay, drop ATI DSM) but that's just this motherboard being quirky. Weren't the XFX cards one of the problematic ones anyways? I'm using a Sapphire.

None of this will matter in a few weeks anyways ;)
 
Real Macs use apple EFI initialization, clover and hackintosh or PC bios uses UEFI initialization mode which is what is said to be the problem. People have flashed their bios with EFI only and it works great as a dedicated card, but it won't boot into windows without UEFI. It's a strange conundrum.

Ah thanks. That sheds more light. Appreciated :)
 
Yes, I have tried it lately, it's how my system is currently setup, running 10.12.5. I don't have inject ATI enabled, just ATI fakeID of 0x67EF1002. My motherboard requires a few other DSDT patches for it to work (Add DTGP, FixDisplay, drop ATI DSM) but that's just this motherboard being quirky. Weren't the XFX cards one of the problematic ones anyways? I'm using a Sapphire.

None of this will matter in a few weeks anyways ;)

Not everyone is using Sapphire cards, so your special setup may not work, the kext mod method basically works with all cards, regardless.

XFX R9 and prior series cards had special bios that caused problems but the RX cards work well, mine has been running since September before the public release of Sierra.
 
If the kexts Info.plist has the PCIID for the card, it will work without fakeid. From what I hear High Sierra has quite a bit more Polaris ids in there, so it shouldn't require any kext editing or fake id injection.

They will still have the boot to black screen issue.

Given some of the experiences of the linux VFIO/graphics passthrough crowd, I'm less inclined to blame Clover and more inclined to just blame AMD. The cards really don't like being initialized twice it seems.

To be fair, that seemed to be more of Ubuntu vs Mint problem (yes, I am smiling while saying that). Ubuntu had the drivers early while the Mint distros took their time about getting things in order -- and the VM users complained loudly and bitterly about the problem since of course Windows had things working almost from the get-go. I saw the same issue of AMD RX card issues in Mint vs Ubuntu, all as a multi-boot setup with using Clover as the bootloader / startup drive chooser -- with the IGPU disabled. Mint had problems, Ubuntu ran fine. This issue was not Clover.
 
macOS 10.12.6 Public Beta Three (16G16b) is available. I found this in the S/L/E folder:

Screen Shot 2017-06-13 at 4.38.33 PM.jpg


So it is too early to say much regarding audio, etc.
 
I have no audio yet, but I am not discouraged about that yet as my config.plist was still set for the 9510 controller / 4100 kext with Berbice frame buffer as from before. The extensions manager says I have all of the new kexts loaded but only the 9510 controller. So I will have to wait and see if the 9515 or 9520 controller can be 'forced' to load instead by using one of their frame buffers (of course the Acre Frame buffer is back with the return of the 9500 controller). Nor have I tried Inject-ATI = false to see what that does.

The 9515 Controller seems to be close the the 9510 controller in that it is geared toward the RX 460 line of cards... I have to take off for now, but I did find this in the 9520 Controller info:

<string>AMD9520Controller</string>
<key>IOPCIMatch</key>
<string>0x67E01002 0x67EF1002 0x67FF1002 0x67C01002 0x67DF1002</string>

It looks like the RX470 / RX 480 cards (and some RX 5nn cards) are going to be fully supported in 10.12.6 (though I do not know yet how far that goes, whether or not you will need a named frame buffer.
 
RX480/580 @ 10.12.6 Public Beta 3 (16G16b):
Screen Shot 2017-06-14 at 00.22.13.png Screen Shot 2017-06-14 at 00.26.22.png
Only FB and Model name injected, without patches. Still need iGPU or helper card.
Screen Shot 2017-06-14 at 00.49.37.png
And Now for Something Completely Different :)

AMD9500Controller — Acre, Dayman, Guariba, Huallaga
0x67E01002 0x67EF1002 0x67FF1002 0x67C01002 0x67DF1002

AMD9510Controller — Berbice
0x67EF1002

AMD9515Controller — Longavi, Mazaruni
0x67EF1002

AMD9520Controller — Caroni, Elqui, Florin
0x67E01002 0x67EF1002 0x67FF1002 0x67C01002 0x67DF1002

AMDRadeonX4100_AMDBaffinGraphicsAccelerator
0x67E01002 0x67FF1002 0x67EF1002

AMDRadeonX4150_AMDBaffinGraphicsAccelerator
0x67E01002 0x67FF1002 0x67EF1002

AMDRadeonX4200_AMDBaffinGraphicsAccelerator
0x67EF1002 0x67FF1002

AMDRadeonX4200_AMDEllesmereGraphicsAccelerator
0x67DF1002 0x67C01002
 
Well, getting into the 9515 Controller may be tricky...
Start here:
Code:
 (From the 9510 Controller)
Berbice (5) @ 0x107110
LVDS, DP, DP, DP, DP
020000000001000039050108000000002001010100000000
000400000001000000010243000000001000020200000000
000400000403000000010313000000002103030300000000
000400000403000000010453000000001102040400000000
000400000403000000010533000000001204050500000000

Code:
 (From the 9515 Controller)
Longavi (5) @ 0x1072d0
LVDS, DP, DP, DP, DP
020000000001000039050108000000002001010100000000
000400000001000000010243000000001000020200000000
000400000403000000010313000000002103030300000000
000400000403000000010453000000001102040400000000
000400000403000000010533000000001204050500000000

Mazaruni (5) @ 0x107120
LVDS, DP, DP, DP, DP
020000000001000039050108000000002001010100000000
000400000001000000010243000000001000020200000000
000400000403000000010313000000002103030300000000
000400000403000000010453000000001102040400000000
000400000403000000010533000000001204050500000000

All listings are from using Fl0r!an's frame buffer dumping script found toward the front of this thread. You may notice the similarities between these. I modified Mork's RX 460 9510 Controller / Berbice frame buffer patch to run with the 9515 Controller / Mazaruni and things worked. Sort of. Instead of loading the Mazaruni frame buffer as I specified in the Clover config.plist, the Longavi frame buffer was loaded and used. I guess since there is no distinction between the two other than location, it may be that Clover is loading things in from back to front order and found the Longavi match code first.

p.s. No sound yet, but the frame buffer is stable. Any ideas on how to get to the Mazaruni frame buffer? Also, why would one need two exact same frame buffers but with different names? Lots of cards? Eight possible external monitors is a lot to drive along with the built in LCD displays...

Edit: According to IOReg, using the 9515 Controller with Longavi frame buffer uses the 4200 kext instead of the 4100.

Edit: Using Inject-ATI = false along with no frame buffer name and no patches defaults to using the old 9500 Controller / with the 4200 kext and the generic frame buffer. This works well, but alas and alackaday, no sound. Hmm.
 
Last edited:
Status
Not open for further replies.
Back
Top