Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save chingsun/1ef34ff50f1152037d46cd282a646528 to your computer and use it in GitHub Desktop.

Select an option

Save chingsun/1ef34ff50f1152037d46cd282a646528 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

Enter Recovery Mode (text mode)

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 (might need to use /sbin/fsck if you get fsck command not found)

fsck -fy

Mount a root filesystem with read/write permissions (might need to 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 are creating it for OS X

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

to update the timestamps so that new driver caches - without AMD drivers - will be definitely rebuilt

sudo touch /System/Library/Extensions/

Unmount a partition to guarantee that your changes are flushed to it (might need to use /sbin/umount if you get umount command not found and might say resource busy, ignore it and go 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.

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)

Command + R + S

Enable SIP again

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

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