Skip to content

Instantly share code, notes, and snippets.

@cdleon
Last active June 3, 2024 16:56
Show Gist options
  • Save cdleon/ae1542279598fe80f527400cc354a956 to your computer and use it in GitHub Desktop.
Save cdleon/ae1542279598fe80f527400cc354a956 to your computer and use it in GitHub Desktop.
Macbook Pro 2011 GPU Defect fix macOS Sierra and High Sierra

Works for macOS Sierra and High Sierra

Taken from 2011 Macbook Pro Graphics Card FIX 100% WORKING!!!

EDIT This method works! But there is an improved version for better thermal management and brightness keys functionality. See improved version -> https://gist.github.com/cdleon/d1eff7246a25193304284ecec40445b0

Enter Recovery Mode (text mode)

if you are on high sierra 10.13.6+ you might need to use Command + r instead

Boot up holding down Command + r + s

Disable SIP

SIP locks System folder so cannot move kexts to another folder. SIP (csrutil) only enabled or disabled on Recovery Mode.

csrutil disable

Restart the system

reboot

Enter Single User mode

boot up holding down the CMD and S keys

Check a disk

use /sbin/fsck if you get fsck command not found

fsck -fy

Mount a root filesystem with read/write permissions

use /sbin/mount if you get mount command not found

mount -uw /

Make a directory to store the AMD drivers in case you'll need them in future

sudo mkdir /AMD_Kexts/

Move the AMD drivers

sudo mv /System/Library/Extensions/AMD*.* /AMD_Kexts/

Remove the AMD drivers cache

sudo rm -rf /System/Library/Caches/com.apple.kext.caches/

Just in case OS X will be dumb and will not recreate this directory, we create it again

sudo mkdir /System/Library/Caches/com.apple.kext.caches/

Update the timestamps so that new driver caches - without AMD drivers - will be rebuilt

sudo touch /System/Library/Extensions/

Unmount a partition to guarantee that your changes are flushed to it. Use /sbin/umount if you get umount command not found. It might say resource busy, ignore that and proceed to next step)

sudo umount /

Reboot

sudo reboot

Before enabling SIP again, try the normal boot without pressing any key. The Mac OS will rebuild the kernel cache and restart. See if the system starts normally. If it does, still keep going through the remaining steps.

You might encounter that you are still using discrete GPU but computer works (if you are using gfx it might say can't change to discrete while external display is connected), keep going until last step and this will be resolved

Enable SIP again by restarting the system and entering Recovery Mode (text mode)

if you are on high sierra 10.13.6+ you might need to use Command + r instead

Command + r + s

Enable SIP

csrutil enable

Restart the system

reboot

Open Terminal (Finder -> Applications -> Utilities -> Terminal (copy and paste):

sudo nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00

Restart the system

sudo shutdown -r now

You might need to do this again after macOS system updates Brightness keys might not work use app like brightness-slider to handle that

@jeepeegit
Copy link

Please, can anyone kindly help me? I had successfully gone through these steps for the disabling of the defective card and everything was fine until yesterday I gave in to one of those insisting messages for updates from Apple, without realizing the consequences it could bring. Now my computer is no longer getting past the boot. I ran all the commands again but the fix seems to not be working anymore. The computer enters a boot hang loop and I can't find the way to work around it. After trying to understand what it could be, I stumbled upon this, which is clearly my case, but have no idea on how to proceed. "After any system update the folder /System/Library/Extensions has to be checked for the offending kext. Its presence there will lead to e.g. a boot hang on Yosemite and Sierra, an overheating boot-loop in High Sierra."

Can anyone help me on this? Thanks in advance!

jup. Look @ OpenCore Legacy Patcher You can evan run montery on a 2011. It's not fast but it runs :-) https://dortania.github.io/OpenCore-Legacy-Patcher/MODELS.html

@MoldyOldie
Copy link

MoldyOldie commented Feb 14, 2024

Strongly recommend against upgrading past your model’s maximum Apple recommended OS. While it can sometimes be done, it’s fraught with potential issues. Given you need help with your current problem, I wouldn’t even consider it. Besides, you want to resolve your current issue, not add additional problems.

Try following the instructions on Apple’s webpage:
https://support.apple.com/en-us/HT204904#:~:text=Command%2DR%3A%20When%20you%20press,is%20compatible%20with%20your%20Mac.

If you’re able to enter recovery mode, that’s your best option. You want to first try reinstalling your OS without wiping your drive. If you can’t get into recovery, try the options for reloading your OS. If given the choice, don’t wipe your disk. If you’re unable to resolve your problem without first wiping the disk, that’s your final option. Hopefully you have backups to restore your user data. But if you have no backups, and desperately need the data on your computer, all of this is potentially risky. Instead, remove the drive and put it into a USB case. Try to extract the data from the drive that way, using a second Mac, rather than trying to fix your boot issue.

P.S. It’s possible you might be able to extract your user data using a second Mac via Target Disc Mode, if you have access to one. If you borrow/buy a newer Mac, and target disc mode won’t work, remove the hard drive from the old one, and put it into a USB case. Then extract the data you need that way. Note: Using target disc mode requires cables and pricey adapters you likely don’t own, and probably won’t use again.

Good Luck!

@jeepeegit
Copy link

jeepeegit commented Feb 14, 2024

You can use OpenCore Legacy Patcher also for installing the latest yosemite for MB 2011 and it will solve the GDI problem by switching it off. so there is no fraught. And it would behoove Apple if they provided a program so that turning that GID on and off would be simple for everyone.

@MoldyOldie
Copy link

You can use OpenCore Legacy Patcher also for installing the latest yosemite for MB 2011 and it will solve the GDI problem by switching it off. so there is no fraught. And it would behoove Apple if they provided a program so that turning that GID on and off would be simple for everyone.

Unless you have tested this procedure on the specific hardware in question, and are willing to support any issues encountered by the user, you shouldn’t be suggesting it. Especially to someone who isn’t technically advanced, as is the case here. You yourself stated it didn’t run well when you did this. For basic users who aren’t highly technical, it’s irresponsible to suggest going beyond the OS version Apple officially supports, or recommending other technical modifications to the OS. I doubt the user here has any idea what “OpenCore Legacy Patcher” is, let alone what to do with it.

I could try doing this myself, but I also have almost 50 years of experience working with computer systems. I know what precautions to take, so that if anything goes wrong, I have the knowledge and tools to get my system working again.

(I won’t be making any further replies to subsequent comments regarding this. So, if your ego insists you “put me in my place”, feel free to do so. I couldn’t care less.)

@jeepeegit
Copy link

Everyone is allowed to have an opinion of course :-) I think Ale337-s can decide for himself what he wants and can do.
Have a nice day.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment