Contribute
Register

[GUIDE] Getting R9 290/390 (non-X) to work on Sierra (10.12) AND High Sierra (10.13)

Status
Not open for further replies.
P.S to get dual screen working on this card as is, start the hackintosh up with just Hdmi plugged in, it'll look fuzzy for a bit then kick in, when at desktop, plug in Display port monitor, it will sync.
 
Build:
CPU: Intel Haswell i5-4670
Mobo: ASUS H81M-E
GPU: XFX 390 8GB
macOS High Sierra 10.13.5 (17F77)

I think I've tried everything related to my XFX card that was mentioned before, even by @SithToast and @slead, but I don't seem to be getting anywhere. I have this as my Baladi patch, which specifies DP as port 1, HDMI as port 2, DVI-D as port 3 and DVI-D as port 4, but the GPU doesn't initialise at all:
Code:
00 04 00 00  04 03 00 00  00 01 03 00  00 00 00 00  12 04 01 01  00 00 00 00
00 08 00 00  00 02 00 00  00 01 01 00  00 00 00 00  22 05 02 03  00 00 00 00
04 00 00 00  14 02 00 00  00 01 02 00  00 00 00 00  11 02 03 04  00 00 00 00
04 00 00 00  14 02 00 00  00 01 04 00  00 00 00 00  10 00 04 06  00 00 00 00
00 04 00 00  04 03 00 00  00 01 05 00  00 00 00 00  21 00 05 05  00 00 00 00
00 04 00 00  04 03 00 00  00 01 06 00  00 00 00 00  20 01 06 06  00 00 00 00

If I LoadVBios using the Sapphire card ROM as @SithToast suggested, I can get the card to initialise (black screen on HDMI display), but then it gets stuck at "IOConsoleUsers: gIOScreenLockState 3" on boot (about 80% through).

I'm kind of at a loss here, and wondered if any of you had the secret sauce to get it working. I've attached my clover config, but it's basically just got the FakeID in of the card, and has the FB set to Baladi.

Any advice, let me hear it! cheers.
 

Attachments

  • config.plist
    7.5 KB · Views: 351
In order to make work my R9 290, I've modified the following kexts:
- AMD8000Controller.kext (twice, as said in this guide);
- AMDRadeonX4000.kext (as said in this guide);
- AMDRadeonX4000HWServices.kext (adding GPU id, 0x67B11002, in the right place, but now I can't verify exactly the line where I've added it).

I've installed whatevergreen, lilu and all required kexts. Now all works natively, WITHOUT any clover inject and setting external GPU (R9 290) as primary in the BIOS, so screen is visible during boot. Displayed name in system info is "Radeon 8xxx" (or something similar), but GPU acceleration works without any problem. I hope this can help.
 
Does anybody know if this
In order to make work my R9 290, I've modified the following kexts:
- AMD8000Controller.kext (twice, as said in this guide);
- AMDRadeonX4000.kext (as said in this guide);
- AMDRadeonX4000HWServices.kext (adding GPU id, 0x67B11002, in the right place, but now I can't verify exactly the line where I've added it).

I've installed whatevergreen, lilu and all required kexts. Now all works natively, WITHOUT any clover inject and setting external GPU (R9 290) as primary in the BIOS, so screen is visible during boot. Displayed name in system info is "Radeon 8xxx" (or something similar), but GPU acceleration works without any problem. I hope this can help.

needs to be done again if upgrading to 10.13.6? I'm on 10.13.5 right now
 
Yes. You have to do these steps for all updates that overwrite video kexts (almost all).
Ok, thanks. A friend told me new deinit option in clover conrigurator should help more in the future to get these gpus to work without touching kexts... do you have any link to get some info for that?
 
Ok, thanks. A friend told me new deinit option in clover conrigurator should help more in the future to get these gpus to work without touching kexts... do you have any link to get some info for that?

Honestly, no. But I think editing official kexts is the better way to get these GPUs to work. Touching clover, you "force" the recognition and there is the possibility that you will lose some features. For example, if you inject our GPU through clover (injectATI), system will see two monitor linked (one native, one forced through clover) and this could be a problem in some cases. So, the best way (if it works, obviously), it's to modify system kexts and getting native support (IMHO).
 
Honestly, no. But I think editing official kexts is the better way to get these GPUs to work. Touching clover, you "force" the recognition and there is the possibility that you will lose some features. For example, if you inject our GPU through clover (injectATI), system will see two monitor linked (one native, one forced through clover) and this could be a problem in some cases. So, the best way (if it works, obviously), it's to modify system kexts and getting native support (IMHO).
I see. Well explained. Grazie ;)
 
Hi all :)
I've tried patching my kexts to get my R9 290 working on Mojave. However, I seem to get "Kext signature validation error code -67030" despite me having SIP disabled. I also tried this on HS on a separate install but get the same error :/ Any clues? I've done this before on Sierra in the same way so I don't see why it's changed upwards.

7lvvpWo.jpg
 
Hi all :)
I've tried patching my kexts to get my R9 290 working on Mojave. However, I seem to get "Kext signature validation error code -67030" despite me having SIP disabled. I also tried this on HS on a separate install but get the same error :/ Any clues? I've done this before on Sierra in the same way so I don't see why it's changed upwards.

7lvvpWo.jpg

I've only modified the 3 kexts I wrote some posts above following the procedure in the 1st post (so, using those terminal commands, but without touching clover and BIOS settings), and my 290 works perfectly on Mojave (yesterday I reinstalled all the OS, and GPU works fine). Why don't you try?
 
Status
Not open for further replies.
Back
Top