Jump to content

[FIX] Fix for black screen on AMD 7XXX cards!


IntelFanatic
 Share

122 posts in this topic

Recommended Posts

Hello guys, I had a problem with the 10.10.3 update and I looked my *** to fix it :cry:

Luckily I've found a fix for it :D !

The problem is in the new AMDRadeonX4000.kext.
The new values in 10.10.3 for "cail_properties" of AMDVerdeGraphicsAccelerator driver are:
<dict>
<key>CAIL_DisableDrmdmaPowerGating</key>
<integer>0</integer>
<key>CAIL_DisableDynamicGfxMGPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableGfxCGPowerGating</key>
<integer>0</integer>
<key>CAIL_DisableGmcPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableStaticGfxMGPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableUVDPowerGating</key>
<integer>0</integer>
<key>CAIL_DisableVCEPowerGating</key>
<integer>0</integer>
</dict>

and this is the fix! 

<dict>
<key>CAIL_DisableDrmdmaPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableDynamicGfxMGPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableGfxCGPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableGmcPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableStaticGfxMGPowerGating</key>
<integer>1</integer>
<key>CAIL_DisableUVDPowerGating</key>
<integer>0</integer>
<key>CAIL_DisableVCEPowerGating</key>
<integer>1</integer>
</dict>

After you have changed that clear kext cache and reboot!

Don't forget to Inject ATI!

Happy hacking everyone! :D

  • Like 2
Link to comment
Share on other sites

Add the credits: https://applelife.ru/threads/amd-hd7xx0-r7-r9-rx.36269/page-142

and: http://www.insanelymac.com/forum/topic/305533-os-x-10103-versão-final-disponivel/?p=2127158

 

Instead of editing your AMDRadeonX4000.kext, you can use this kext: http://cl.ly/ahYB

info.plist is the same info/changes and you don't have to edit AMDRadeonX4000 after an update.

 

Of course from Russia  :P

rsrsrsrs

 

Credits to igork and René: http://www.insanelymac.com/forum/topic/305533-os-x-10103-versão-final-disponivel/?p=2130722

  • Like 6
Link to comment
Share on other sites

Hello,

 

Just wondering if a Clover or a DSDT patch could solve the issue so we do not to worry about future OS X updates ?

 

Cheers :D

 

I'm using the Verde.kext (injector) in /EFI/CLOVER/kexts/10.10 from Allan's post #2

Did not touch AMDRadeonX4000.kext, so should be update proof.

  • Like 2
Link to comment
Share on other sites

  • 1 month later...

Try this DSDT. I injected GFX0 device + Fake ID & HDAU device so you should have HDMI audio enabled too if necessary.

 

You must remove info-plist kext patch for both AMD7000Controller & AMDRadeonX4000 and give it a try.

 

Otherwise, your config.plist looks OK for me so I don't understand why Clover fails to enable QE/CI. Could be due to Framebuffer and connectors patch :unsure:.

DSDT_patched.aml.zip

Link to comment
Share on other sites

I already have HDMI audio.. I have a question, from AMD7000Controller & AMDRadeonX4000 kext, or clover remove info-plist kext patch? You mean, i must back original amd7000controller and amdradeonx4000 kext?

 

 

Otherwise, your config.plist looks OK for me so I don't understand why Clover fails to enable QE/CI. Could be due to Framebuffer and connectors patch  :unsure:.

 Framebuffer is Dashimaki, i know that because is everything work on Mavericsk, but with Chameleon.

Link to comment
Share on other sites

Yes. You must use vanilla (original) kexts since this DSDT contains 0x68391002 fake ID.

 

If my edits are correct :unsure::hysterical:, you no longer need Clover or manual kext info-plist patching/editing. The DSDT will do the same job and will be update-proof too.

 

Don't forget to rebuild kernel cache otherwise you'll have previous kexts loaded on next boot.

 

That said, it reminds me that Clover must be booted once without cache when using info-plist patching. Once the system has been successfully booted, you have to rebuild kext cache in order to load the new "patched" kexts into the cache and boot again with it.

 

I don't know if it's still true but it could explain why Clover fails to apply on-the-fly info-plist patches.

Link to comment
Share on other sites

You should keep the one you're currently using, cause I'm not sure mine will work :D.

 

Just rename it DSDT2.aml for convenience and place it in EFI/EFI/Clover/ACPI/patched. On next boot, press O and go to DSDT Fix mask section and replace DSDT.aml by DSDT2.aml so in case of problem, you'll just have to reboot to load your current DSDT.

 

You could eventually do the same thing with config.plist (see here at the bottom) but I had some troubles with that method so I can't recommend it :P.

Link to comment
Share on other sites

I think your problem is here :

1:859  0:000  KextsToPatch: 6 requested
1:859  0:000  KextToPatch 0: AppleAHCIPort (Orange-Icon-Fix) Kext bin patch, data len: 8
1:859  0:000  KextToPatch 1: AMDRadeonX4000 (AMD 7730 Patch) Kext bin patch, data len: 5
1:859  0:000  KextToPatch 2: AMD7000Controller (AMD 7730 Patch) Kext bin patch, data len: 5
1:859  0:000  KextToPatch 3: AppleHDA (t1-10.9-10.11-AppleHDA/Realtek ALC888) Kext bin patch, data len: 4
1:859  0:000  KextToPatch 4: AppleHDA (t1-10.9-10.11-AppleHDA/Resources/xml>zml) Kext bin patch, data len: 6
1:859  0:000  KextToPatch 5: AppleSMC (Old-SMC-mode-Fix) Kext bin patch, data len: 10

As you can see, it's a binary patch request  for both AMD kexts. Should be info-plist patch request if I'm correct.

 

That said. It seems that the latest versions of Clover made info-plist patching feature ineffective. See this if you're able to read french. But basically, it says that :

 

"It is clear that things have been modified starting from 3111 version of Clover. Posts here at IM and at lifeapple.ru have been sent but they have simply been ignored, just as if developers didn't really care.

 

That's a pity because "on the fly kext info-plist patching" was very much part of Clover's appeal… Nevermind, I'll manually edit my kexts from now."

 

 

il est clair que les choses ont été modifiées dans les version après la 3111 de Clover... un post ici sur IM et un sur lifeapple.ru mais ils ont été simplement négligé, comme si les développeurs s'en fichaient.

moi je dis dommage... pour moi, le patch à la volé des Infos.plist était ce qui fesait tout le charme de Clover... tant pis, j'éditerai mes kexts manuellement

 

So if it's true (which is the case obviously), you'll have to do the same or make correct edits on your DSDT since I failed to make it work :hysterical:.

  • Like 1
Link to comment
Share on other sites

I made a quick test just to see and here what's my bootlog report :

0:204  0:000  KextToPatch 0: AMD7000Controller (AMD 7730 Patch) Info.plist patch[ERROR] bin2hex '0x68391002' syntax error
0:204  0:000  [ERROR] bin2hex '0x68371002' syntax error
0:204  0:000   - invalid Find/Replace data - skipping!

Same as mentionned in the topic I was talking about earlier…

Link to comment
Share on other sites

You can also try it on an easier way with Fake ID.

To use FakeID with Clover, you must have the following information in your config.plist.

 

ACPI > DSDT > Fixes > Fix_Display_0100=TRUE

Devices > FakeID > ATI=0xDeviceIDVendorID (for example 0x68391002)

Graphics > Inject > ATI=TRUE

 

 

FXc.png

DXc.png

GXc.png

 

 

Works great with my HD5450, HD5750 and HD6770.

  • Like 2
Link to comment
Share on other sites

I installed clover 3156, but again nothing. As if verde.kext not doing its job. OS X, see graphics like HD7700 series, but with 7 MB..

 

 

You made a confusion. Verde.kext isn't meant to enable QE/CI on OS X, it's meant to avoid scrambled glitchy screens appeared with 10.10.3 update. The simple fact that you can reach OS X desktop means that Verde.kext is actually doing his job ;).

  • Like 1
Link to comment
Share on other sites

You can also try it on an easier way with Fake ID.

To use FakeID with Clover, you must have the following information in your config.plist.

ACPI > DSDT > Fixes > Fix_Display_0100=TRUE

Devices > FakeID > ATI=0xDeviceIDVendorID (for example 0x68391002)

Graphics > Inject > ATI=TRUE

 

FXc.png

DXc.png

GXc.png

 

Works great with my HD5450, HD5750 and HD6770.

I already do that,and nothing changed. 7 mb memory of gpu..

You made a confusion. Verde.kext isn't meant to enable QE/CI on OS X, it's meant to avoid scrambled glitchy screens appeared with 10.10.3 update. The simple fact that you can reach OS X desktop means that Verde.kext is actually doing his job ;).

Yes, sorry. I can't enable QE/CI with clover. Only with manually put id in kext,and ati inject..
Link to comment
Share on other sites

I already do that,and nothing changed. 7 mb memory of gpu..

Yes, sorry. I can't enable QE/CI with clover. 

Can you show DarwinDumper report in this case? I am sure you made a mistake.

Link to comment
Share on other sites

 Share

×
×
  • Create New...