I did some more tests to my RX 460 (Sapphire OC):
First I thought about what I mentioned in my previous comments that the card is booting when installing macOS Sierra 10.12, but after installing it will fail to boot. What I understood that the card is booting to idle mood as @
Gigamaxx mentioned so in a kernel way of talking:
1) From the installation USB, I opened terminal and fired up:
# ioreg | grep AMD
Found that: AMD9500Controller.kext, AMDFramebuffer.kext and AMDSupport.kext loaded.
so now in my rig I have no IntelG or a second PCIe slot to put a helper card alternatively to IntelG so all the mentioned methods above will not fit in my rig.
so I thought about a kind off tricky idea to see if it will work or not without the need of any IntelG or alternative, so the tricks:
From win 10
1) Installed
HFS paragon filesystem app.
2) Backed the kext's Up and Removed: AMD9500Controller.kext, AMDFramebuffer.kext and AMDRadeonX4000.kext
3) Removed and Cleared the caches from /S/L/Caches/com.apple.kext.caches.
4) Restart, Then macOS sierra 10.12 booted with 5mb video card.
From macOS Sierra 10.12:
1) I installed all the kext again to the /S/L/E, Except AMDRadeonX4000.kext.
2) Rebooted
3) macOS booted with AMD R9 xxx 2048 MB (Boom )
4) Opened the terminal and fired up:
# ioreg | grep AMD
| | | | +-o AMD9500Controller <class AMD9500Controller, id 0x1000002e2, registered, matched, active, busy 0 (0 ms), retain 5>
| | | | +-o ATY,AMD,RadeonFramebuffer@0 <class AtiFbStub, id 0x1000002fe, registered, matched, active, busy 0 (5 ms), retain 8>
| | | | | +-o AMDFramebufferVIB <class AMDFramebuffer, id 0x100000301, registered, matched, active, busy 0 (4 ms), retain 16>
| | | | | +-o AMDNDRVService <class AtiAppServices, id 0x100000317, registered, matched, active, busy 0 (0 ms), retain 6>
| | | | +-o ATY,AMD,RadeonFramebuffer@1 <class AtiFbStub, id 0x1000002ff, registered, matched, active, busy 0 (0 ms), retain 8>
| | | | | +-o AMDFramebufferVIB <class AMDFramebuffer, id 0x100000307, registered, matched, active, busy 0 (0 ms), retain 14>
| | | | | +-o AMDNDRVService <class AtiAppServices, id 0x10000031d, registered, matched, active, busy 0 (0 ms), retain 6>
| | | | +-o ATY,AMD,RadeonFramebuffer@2 <class AtiFbStub, id 0x100000300, registered, matched, active, busy 0 (0 ms), retain 8>
| | | | | +-o AMDFramebufferVIB <class AMDFramebuffer, id 0x10000030d, registered, matched, active, busy 0 (0 ms), retain 14>
| | | | | +-o AMDNDRVService <class AtiAppServices, id 0x10000031f, registered, matched, active, busy 0 (0 ms), retain 6>
| | | | +-o AMDSupport <class AMDSupport, id 0x1000002e3, registered, matched, active, busy 0 (0 ms), retain 5>
5) Installed AMDRadeonX4000
6) In terminal:
#kextload /System/Library/Extensions/AMDRadeonX4000.kext
7) still in terminal :
#kextstat | grep AMD
Results:
com.apple.kext.AMDSupport
com.apple.kext.AMD9500Controller
com.apple.kext.AMDFramebuffer
com.apple.kext.AMDRadeonX4000
7) Thought about monitoring SystemInformation:
Before: The card has no metal supported field
Ater: The card has metal supported field
I updated to 10.12.1:
Did all of this again but instead of AMDRadeonX4000 I was playing with AMDRadeonX4100 with the same steps and Terminal results:
#ioreg | grep AMD
| | | | +-o AMD9500Controller <class AMD9500Controller, id 0x1000002d4, registered, matched, active, busy 0 (0 ms), retain 5>
| | | | +-o ATY,AMD,RadeonFramebuffer@0 <class AtiFbStub, id 0x1000002f9, registered, matched, active, busy 0 (6 ms), retain 8>
| | | | | +-o AMDFramebufferVIB <class AMDFramebuffer, id 0x1000002fc, registered, matched, active, busy 0 (5 ms), retain 17>
| | | | | +-o AMDNDRVService <class AtiAppServices, id 0x10000032c, registered, matched, active, busy 0 (0 ms), retain 6>
| | | | +-o ATY,AMD,RadeonFramebuffer@1 <class AtiFbStub, id 0x1000002fa, registered, matched, active, busy 0 (0 ms), retain 8>
| | | | | +-o AMDFramebufferVIB <class AMDFramebuffer, id 0x100000302, registered, matched, active, busy 0 (0 ms), retain 14>
| | | | | +-o AMDNDRVService <class AtiAppServices, id 0x100000332, registered, matched, active, busy 0 (0 ms), retain 6>
| | | | +-o ATY,AMD,RadeonFramebuffer@2 <class AtiFbStub, id 0x1000002fb, registered, matched, active, busy 0 (0 ms), retain 8>
| | | | | +-o AMDFramebufferVIB <class AMDFramebuffer, id 0x100000308, registered, matched, active, busy 0 (0 ms), retain 14>
| | | | | +-o AMDNDRVService <class AtiAppServices, id 0x100000334, registered, matched, active, busy 0 (0 ms), retain 6>
| | | | +-o AMDSupport <class AMDSupport, id 0x1000002d5, registered, matched, active, busy 0 (0 ms), retain 5>
| | | |
+-o AMDRadeonX4100_AMDBaffinGraphicsAccelerator <class AMDRadeonX4100_AMDBaffinGraphicsAccelerator, id 0x100000483, registered, matched, active, busy 0 (0 ms), retain 20>
| | | | +-o AMDRadeonX4100_AMDAccelDevice <class AMDRadeonX4100_AMDAccelDevice, id 0x100000484, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelSharedUserClient <class AMDRadeonX4100_AMDAccelSharedUserClient, id 0x100000485, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelDevice <class AMDRadeonX4100_AMDAccelDevice, id 0x10000048c, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelSharedUserClient <class AMDRadeonX4100_AMDAccelSharedUserClient, id 0x10000048d, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelDevice <class AMDRadeonX4100_AMDAccelDevice, id 0x100000498, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelSharedUserClient <class AMDRadeonX4100_AMDAccelSharedUserClient, id 0x100000499, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelDevice <class AMDRadeonX4100_AMDAccelDevice, id 0x1000004b2, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelSharedUserClient <class AMDRadeonX4100_AMDAccelSharedUserClient, id 0x1000004b3, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelDevice <class AMDRadeonX4100_AMDAccelDevice, id 0x1000004b9, !registered, !matched, active, busy 0, retain 6>
| | | | +-o AMDRadeonX4100_AMDAccelSharedUserClient <class AMDRadeonX4100_AMDAccelSharedUserClient, id 0x1000004ba, !registered, !matched, active, busy 0, retain 6>
# kextstat | grep AMD
94 2 0xffffff7f824e5000 0x14c000 0x14c000 com.apple.kext.AMDSupport (1.4.6) F44047C9-7E55-3B22-AB72-FC07B8E812ED <93 78 12 11 7 5 4 3 1>
95 0 0xffffff7f82679000 0x784000 0x784000 com.apple.kext.AMD9500Controller (1.4.6) 6C3CF6BC-D66D-3361-811F-195A5A91F99C <94 78 12 11 5 4 3 1>
106 0 0xffffff7f82640000 0x25000 0x25000 com.apple.kext.AMDFramebuffer (1.4.6) 4CAE0594-133E-31E6-8F7A-DA3A935DCC03 <94 78 12 11 7 5 4 3 1>
117 0 0xffffff7f83001000 0x830000 0x830000 com.apple.kext.AMDRadeonX4100 (1.4.6) 8E0F9CC6-2006-39C4-9AAB-09EB9094FD79 <116 98 78 12 7 5 4 3 1>
I am happy with the results as i started from 0 to at least getting the card booting then at last a baffin result. but now All of this steps did not put the card in acceleration.
so @
Fl0r!an @Gigamaxx or @who is kindly interested
Does it mean that the card need to be running under fakeId (not natively support under its ID) to get acceleration by following this method . /or this method will never get the card to accelerate because I load the kext after booting not in early kernel state and of course without restarting and without IGP.
what will happen if one of the successfully running RX 460 card in this topic tried this method ? will it get acceleration ? without the need of any helper card ?