Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.

irobot2090

macrumors newbie
Nov 27, 2017
25
3
Does this method work or fixed the Mid 2012 MBP 15" non-Retina display?
I got the thin (green) line glitching (flashing and it's come and go) on the left side of my screen, tried switching graphic around and no help.
 

dosdude1

macrumors 68030
Feb 16, 2012
2,776
7,409
Does this method work or fixed the Mid 2012 MBP 15" non-Retina display?
I got the thin (green) line glitching (flashing and it's come and go) on the left side of my screen, tried switching graphic around and no help.
That's an issue with your screen, NOT your GPU or logic board.
 

nellj

macrumors newbie
Jan 8, 2019
2
1
I have been racking my brain with this for the past two days. I have tried numerous fixes for this issue using AppleMAcFinder method as well as MickeyN. I'm beginning to suspect something else is amiss rather than my dGPU. Even when these methods were done correctly, I was still experiencing artifacting, which leads me to believe mu iGPU is faulty as well? Here is a video link to my issue

This is a fresh install of Sierra on a late 2011 MPB 15". SMC/Nvram had been reset before the install. The only program I have installed is GSwitch. Any help would be appreciated.

EDIT: I decided to remove the R8911 resistor. What I did not do prior is tell EFI which GPU was going to be in use. I also lost the resistor. For whatever reason, I could not short the pads. On a wing and a prayer, I blindly entered single user mode and enabled iGPU (nvram fa4ce2d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00 then reboot) and viola!!! my screen came alive!!!
 
Last edited:
  • Like
Reactions: jdran

pshufd

macrumors G4
Oct 24, 2013
10,145
14,571
New Hampshire
Is there anything that can be done in this vein where there is no video? I try to boot up and there is no video and no chime. The LED light remains on for quite some time and then goes off. I assume that it's trying to boot and asking for a password and times out.
 

chipmunk23

macrumors newbie
Jun 11, 2008
12
1
Is there anything that can be done in this vein where there is no video? I try to boot up and there is no video and no chime. The LED light remains on for quite some time and then goes off. I assume that it's trying to boot and asking for a password and times out.
Rather than typing the commands in blind you can mount a CMIzapper Tiresias. That is a tiny board that will zap the ROM for you. Installation is easy and if there ever is a PRAM reset it will stick the gpu-power-prefs record back in.
http://www.cmizapper.com/products/tiresias-gpukiller.html
 

pastran

macrumors newbie
Nov 26, 2018
14
0
1 - With gpu-power-prefs Intel GPU and AMDRadeonX3000.kext (LoginHook) -> High Sierra in idle mode (only Active Monitor and Terminal open) -> after login screen wait 5 minutes.

Temperature - Istat Menu 5:
CPU Die Analog: 40º / 47º Celsius
GPU Die Analog: 0º / 5º Celsius


2 - Safari open with 3 Tabs -> one tab Youtube 1080p video -> gpu-power-prefs Intel GPU:

Temperature - Istat Menu 5:
CPU Die Analog: 61º Celsius
GPU Die Analog: 32º Celsius


It may be a problem on the EFI chip that does not save the configuration of the gpu-power-prefs Intel GPU.

Maybe a test with Firmware Password (EFI Password) - Page 85 - #2107
Before set password -> gpu-power-prefs Intel GPU.

Hi.
I apologize for the delay, and as always, thanks for the help!

Yesterday I received an SSD, with which, I decided to start a new installation from 0.
Chosen the S.O. Mojave (being the most recent and I had before)
I do the "csrutil disable" process but in my case, I do not have the AMD kext3000.
How can I get it? It does not work for me to raise / lower brightness, nor does it suspend the system.
I do not know what to do to be able to do the whole Kext process, recover those functions and not overheat.
Thank you again. a greeting!

PD: I attach my photos

in fact, I do not know why I now detect the screen as an external monitor, it had never happened
 

Attachments

  • 3.jpg
    3.jpg
    2.8 MB · Views: 446
  • 2.jpg
    2.jpg
    983.7 KB · Views: 222
  • 1.jpg
    1.jpg
    1.1 MB · Views: 373
Last edited:

AJDJ

macrumors newbie
Jan 12, 2019
2
1
Or try the simplest way - No needed ArchLinux - Only MacOS:

1 - Boot Single User (press Command + S) at boot (If you have MacOS installed on your hard drive).

2 - If you have a blank HD, then use the USB stick/Pendrive with the MacOS installer (El Capitan, Sierra or HighSierra).

2.1 - Press Option key at boot, Position the mouse on the MacOS installer icon.

2.2 - Press Command + S and keep holding these two keys.

2.3 - Click the MacOS installer icon -> continue holding the Command + S keys until you finish the MacOS installer Single User boot .

Enter these commands (change gpu-power-prefs to Intel GPU and boot verbose):

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

nvram boot-args="-v"

reboot


I did the MacOS Only method and it totally work!! Thank you very much for sharing this!!! I thought I had to buy a new MacBook but this seems to work great for me, however when I restart/ boot I have to re-do all the codes each time. is there a way to make this more permanent?
 

Spectrum

macrumors 68000
Mar 23, 2005
1,808
1,115
Never quite sure
I think that my Early 2011 15" MBPro GPU just finally died. :-(

I'd been trying to keep it only on iGPU mode, but stupidly had the dPGU on with 3D Google Maps. At some point the fans came on, the screen froze, and now it boots partly to an Apple logo with thin horizontal blue lines. Eventually screen goes black.

I've not had a chance to read any of this thread. Can anyone offer some possible things I can quickly try?
 

pastran

macrumors newbie
Nov 26, 2018
14
0
I did the MacOS Only method and it totally work!! Thank you very much for sharing this!!! I thought I had to buy a new MacBook but this seems to work great for me, however when I restart/ boot I have to re-do all the codes each time. is there a way to make this more permanent?

Create a script in a location that you remember.
then when you need to execute "cmd" + "s" you only need to execute the script, instead of writing all the text continuously.
Or use "Suspend" instead of "turn off"
there are more ways, at least I've seen some "Mod" in the forum, but mod Hardware for which you have to pay, and I do not know if they work properly at 100%.
I'm happy with the "scritp", I do not have to put it unless I turn off the computer.
I just started a new installation to avoid "overheating" and now I have problems with Kext :(
 

Spectrum

macrumors 68000
Mar 23, 2005
1,808
1,115
Never quite sure
Is this really all that is needed to do?

Or try the simplest way - No needed ArchLinux - Only MacOS:

1 - Boot Single User (press Command + S) at boot (If you have MacOS installed on your hard drive).

2 - If you have a blank HD, then use the USB stick/Pendrive with the MacOS installer (El Capitan, Sierra or HighSierra).

2.1 - Press Option key at boot, Position the mouse on the MacOS installer icon.

2.2 - Press Command + S and keep holding these two keys.

2.3 - Click the MacOS installer icon -> continue holding the Command + S keys until you finish the MacOS installer Single User boot .

Enter these commands (change gpu-power-prefs to Intel GPU and boot verbose):

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

nvram boot-args="-v"

reboot
 

Spectrum

macrumors 68000
Mar 23, 2005
1,808
1,115
Never quite sure
OK. Hoping for some advice: I used the commands above, and they worked great! However, reboot fails again.
I assume this is because i have not removed the AMD kexts.
I tried to do this, but SIP is enabled.
And I am unable to enter REcovery partition. (I don't think my computer has recovery partition. it is upgrade from SnowLeopard>ElCap>Sierra>HSierra).
I just tried booting into internet recovery (>30 minutes!), but ended up with a blue screen. I wonder if I need to try this again directly after the nvram settings? Or is there a quicker way to enter (or generate) a recovery partition?
Any help gratefully received!

Or is there an alternative to disable SIP? (and/or remove the kexts?)
 
Last edited:

nellj

macrumors newbie
Jan 8, 2019
2
1
OK. Hoping for some advice: I used the commands above, and they worked great! However, reboot fails again.
I assume this is because i have not removed the AMD kexts.
I tried to do this, but SIP is enabled.
And I am unable to enter REcovery partition. (I don't think my computer has recovery partition. it is upgrade from SnowLeopard>ElCap>Sierra>HSierra).
I just tried booting into internet recovery (>30 minutes!), but ended up with a blue screen. I wonder if I need to try this again directly after the nvram settings? Or is there a quicker way to enter (or generate) a recovery partition?
Any help gratefully received!

Or is there an alternative to disable SIP? (and/or remove the kexts?)

When I was on High Sierra, I found that you still can get in Recovery but it takes timing. Give it about 3secs after turning on the computer before holding R+S, if it fails try again. It's just tricky timing but you can do it. Honestly, I would recommend going back down to Sierra for this very reason.
 

Spectrum

macrumors 68000
Mar 23, 2005
1,808
1,115
Never quite sure
When I was on High Sierra, I found that you still can get in Recovery but it takes timing. Give it about 3secs after turning on the computer before holding R+S, if it fails try again. It's just tricky timing but you can do it. Honestly, I would recommend going back down to Sierra for this very reason.
Why hold R and S? And not just R?
I don’t think my drive has a recovery partition on it at all. In disk util, only one partition is shown.
Now that the nvram steps are working, I am tempted to make Sierra or HSierra install disk. Any one have links to the installers? Everything I did before we’re upgrades.
 

paz4753

macrumors newbie
Jan 13, 2019
1
1
If you don't have time to read my story (which also describes some interesting technical approaches) just scroll down this thread until a "100% WORKING SOLUTION" text

Discrete AMD GPU of my 2011 MacBook Pro 8,2 has finally failed because of the reasons mentioned here ( http://logicboardmac.blogspot.ru/ ) and there ( https://www.macrumors.com/2015/02/19/2011-macbook-pro-repair-program-apple/ ) . It has been working perfectly for 6 years under quite a high load, even tried SETI@HOME mining at background! So I was confident that my MBP is not affected by bad solder / bad soldering quality and didn't want to bring it to Apple for a free repair program - partially because couldn't find the time to pause my important software projects, partially because I was afraid that Apple might give me a less reliable logic board or refuse a free repair because of the several unrelated repairs that I did manually by myself earlier to save money: changed thermal paste a few times, replaced the internal battery 2 times, replaced a keyboard with broken buttons, etc. But it finally broke down last week: laptop's screen image became distorted, it refused to boot OS X (always freezing half-way), and - Apple free repair program has already ended! I know there are affordable solutions like $50 BGA resoldering at unofficial local repair shop and that its possible to get a new replacement HD 6750M chip from AliExpress for $35 or cheaper ( http://www.aliexpress.com/item/DC-2...0028-216-0810028-BGA-Chipset/32764872143.html or https://www.aliexpress.com/item/DC-2015-New-216-0810001-216-0810001-Graphic-Chipset/32718112928.html , because don't know if this is true - https://www.rossmanngroup.com/board...0604-replace-216-0810005-gpu-with-216-0810028 ) to guarantee a successful repair, so the total price of repair would be either $50 or $50+$35=$85 - less than $100 in any case. But I don't like investing money to the old computers, so I have thought - what if there is some hack to force MBP to use integrated graphics ALL THE TIME, even while booting ? And then started to explore the possible solutions...

===

First of all, it is possible to successfully boot a MBP to OS X while still using the failed GPU, after you remove the AMD drivers by booting in command line mode (CMD+S) and entering these commands:
1) fsck -fy (to check a disk)
2) mount -uw / (mount a root filesystem with read/write permissions)
3) sudo mkdir /AMD_Kexts/ (make a directory to store the AMD drivers in case you'll need them in future)
4) sudo mv /System/Library/Extensions/AMD*.* /AMD_Kexts/ (move the AMD drivers)
5) sudo rm -rf /System/Library/Caches/com.apple.kext.caches/ (remove the AMD drivers cache)
6) sudo mkdir /System/Library/Caches/com.apple.kext.caches/ (just in case OS X will be dumb and will not recreate this directory, I am creating it for OS X)
7) sudo touch /System/Library/Extensions/ (to update the timestamps so that new driver caches - without AMD drivers - will be definitely rebuilt)
8) sudo umount / (umount a partition to guarantee that your changes are flushed to it)
9) sudo reboot

The degree of your inconvenience while doing these steps - strongly depends on how heavily a screen's image is distorted in your case. In my case it was even more difficult because the OS X partition became a "read-only" partition (because of too many emergency shutdowns I did while desperately trying to boot OS X with a failed GPU) so I had to remove a hard drive from MacBook Pro and (using a USB to SATA 2.5" adapter taken from my portable HDD) attached it to a computer with Linux, then followed these instructions:

https://superuser.com/questions/961401/mounting-hfs-partition-on-arch-linux (1st answer) - carefully executed a number of commands, calculated a sizelimit for my parition layout, and finally ran sudo mount -t hfsplus -o force,rw,sizelimit=YOURNUMBER /dev/sdb2 /mnt to mount this HFS+ partition to /mnt directory in read-write mode. Then I performed these "1)-7)" steps you see above, and also repaired a filesystem by running sudo fsck.hfsplus -f /dev/sdb2 before unmounting a partition with sudo umount /mnt and putting a hard drive back to MBP...

===

This gave me a MBP which could boot to OS X although STILL using a broken AMD GPU: so it screen's image is very distorted (could browse the Internet but quite inconvenient to read a text), Launchpad is super laggy, and you can't switch to Integrated GPU using gfxCardStatus because: without AMD drivers (which we had to remove to successfully boot to OS X) Macbook Pro thinks its' internal screen is External Display and gfxCardStatus tells it is impossible to switch because External Display is using AMD GPU. Somewhere I found a suggestion that it is possible to rebuild a gfxCardStatus from the source code - https://github.com/codykrieger/gfxCardStatus - with removed or commented out 156-166 lines in the ./gfxCardStatus/Classes/GSProcess.m to make it to ignore the external display:

// find out if an external monitor is forcing the discrete gpu on
CGDirectDisplayID displays[8];
CGDisplayCount displayCount = 0;
if (CGGetOnlineDisplayList(8, displays, &displayCount) == noErr) {
for (int i = 0; i < displayCount; i++) {
if ( ! CGDisplayIsBuiltin(displays))
[list addObject:[NSDictionary dictionaryWithObjectsAndKeys:
Str(@"External Display"), kTaskItemName,
@"", kTaskItemPID, nil]];
}
}


So I rebuilt a gfxCardStatus using the instructions from the last reply of this issue -
https://github.com/codykrieger/gfxCardStatus/issues/229
(also had to download a MacOSX10.11.sdk from here - https://github.com/phracker/MacOSX-SDKs/releases - unpack and copy it to XCode's /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk - because of the Apple's stupidity the latest XCode for El Capitan does not include SDK for El Capitan!) However, it still didn't work - gfxCardStatus only pretended that it has switched to Integrated GPU, while in reality OS X did not let it switch! Even after I edited ./gfxCardStatus/Classes/GSGPU.m file to enable the mysterious "Nuke it from orbit switching" option, it still couldn't switch...

===

Then I discovered this interesting repository - https://github.com/0xbb/gpu-switch - which is partially similar by its' source code to gfxCardStatus but also has the "Login Hooks" (install_hooks.sh) to "automate the switching process for login/logout". Sadly it didn't work for me... However, there is a very interesting gpu-switch text file right at the root of this repository, which describes the EFI variables!

https://github.com/0xbb/gpu-switch/blob/master/gpu-switch

After studying it and also reading this issue's comments - https://github.com/0xbb/gpu-switch/issues/11 - I became confident to try this solution, but found out that my MacBook Pro 2011 8,2 with OS X El Capitan 10.11.6 is in a VERY problematic situation:

1) rEFInd is not installed, and to install it - must disable SIP protection. But I cannot boot to Recovery mode (Command+Option+R) or to OS X Installation DVD/USB (hold Option), (to disable SIP), because they freeze while booting! - although I removed AMD kexts from my system, of course these recovery tools are using AMD kexts integrated to their design. Also cannot use Rootfool hack ( https://github.com/gdbinit/rootfool ) to disable SIP during runtime, because it works only at OS X version older than 10.11.4

2) Tried overheating my Macbook Pro on purpose (forcing CPU usage to 100% and putting it to a tightly closed bag) to force it to shutdown from overheating and then quickly reboot so that Integrated graphics will be enabled during the boot time - making it possible to boot to Recovery. But because of the wonderful high end thermal paste I have applied not so long ago - cannot overheat it even after waiting for a long time! At this point I thought that could either: a) remove AMD kexts from Installation media, or b) to connect MBP's hard drive to a Linux machine again and run a bunch of chmods to remove the SIP flags from the directories mentioned here ( http://apple.stackexchange.com/questions/193368/what-is-the-rootless-feature-in-el-capitan-really ) which could potentially make a system unbootable, or c) to try installing rEFInd to HFS+ partition directly from a Linux machine with root rights because it will bypass SIP --- but have not explored these options, although some of them might have worked...

3) Wanted to boot a Linux LiveCD to edit the EFI variables from there, but no matter what I did: tried booting straight without GRUB option modifications, tried editing GRUB boot options (with "e" key) to add nomodeset / remove quiet splash / or both in every combination , or like suggested in this article ( https://wiki.archlinux.org/index.php/MacBookPro8,1/8,2/8,3_(2011) ) also add i915.modeset=0 radeon.modeset=0 or radeon.modeset=0 i915.modeset=1 i915.lvds_channel_mode=2 ; and then pressed Fn+F10 or Shift+Ctrl+Fn+F10 to boot with these options: but the Linux boot process always failed at different boot stages, no matter what popular user-friendly Linux distribution or what version of it I am trying: tried many releases of Ubuntu / Lubuntu / Fedora , even the old "AMD64 Mac" and "Alternate AMD64 Mac" images, but they always failed - either at the very beginning of boot process (black screen, or a black screen with a blinking or stuck _ character at the left upper corner) or failed at the very end of it - right before it is supposed to show a graphical desktop environment...

Later, totoe_84 wrote that he was able to boot Ubuntu in graphical mode using the following setup for GRUB:
  • To disable the AMD graphics card I added the following lines after set gfxpayload=keep
outb 0x728 1
outb 0x710 2
outb 0x740 2
outb 0x750 0
  • Next I added the following after quiet splash
    i915.lvds_channel_mode=2 i915.modeset=1 i915.lvds_use_ssc=0
(based on https://ubuntuforums.org/showthread.php?t=2157775 )

===

Then I remembered that there are not-mainstream Linux distributions for advanced users, which have a LiveCD without any graphical interface: you are dropped to a pure console and you are supposed to install the system along with only those graphical interfaces and software packages / groups of packages which you explicitly select. For example: Arch Linux (https://www.archlinux.org/) and Gentoo Linux (https://gentoo.org/) . Because their LiveCD does not have a graphical interface, they could be booted without a problem to a pure Linux console and there you could edit the EFI variables ! So here is a...

===
=== 100% WORKING SOLUTION
===
=== Force your MBP to ALWAYS use Intel integrated GPU (EFI variable fix)
===
=== to make it great again ! ;)
===


1) Create the Arch Linux LiveCD/LiveUSB :

You need a working computer for that and a spare CD/DVD/USB drive. After downloading archlinux-2017.03.01-dual.iso (see the links below) you have to check the integrity of the .ISO file to see if it is not corrupted (avoid I/O error, printf: not found, chattr: not found, etc). After checking the integrity of archlinux-2017.03.01-dual.iso and everything is OK, then you can generate an ArchLinux boot disk.

archlinux-2017.03.01-dual.iso

MD5:
1d25235e7cebe45f93452fbc05a0fb66 archlinux-2017.03.01-dual.iso

SHA1
f426866ca632a35a3eeae8e4080cff25ec8da614 archlinux-2017.03.01-dual.iso

Official website ArchLinux (only Torrent) - See MD5 and SHA1 hash numbers:

https://www.archlinux.org/releng/releases/2017.03.01/

The MD5 and SHA1 of the official ArchLinux website are the same as the mirrors Virtapi.org and Belnet.be. The archlinux-2017.03.01-dual.iso on Virtapi.org and Belnet.be are legitimate.

Virtapi.org:

http://archive.virtapi.org/iso/2017.03.01/

http://archive.virtapi.org/iso/2017.03.01/archlinux-2017.03.01-dual.iso

http://archive.virtapi.org/iso/2017.03.01/md5sums.txt

http://archive.virtapi.org/iso/2017.03.01/sha1sums.txt

Belnet:

http://ftp.belnet.be/pub/archlinux.org/iso/2017.03.01/

http://ftp.belnet.be/pub/archlinux.org/iso/2017.03.01/archlinux-2017.03.01-dual.iso

http://ftp.belnet.be/pub/archlinux.org/iso/2017.03.01/md5sums.txt

http://ftp.belnet.be/pub/archlinux.org/iso/2017.03.01/sha1sums.txt

Check for archlinux-2017.03.01-dual.iso integrity (Mac OS):

Boot in Safe Mode (press SHIFT key at boot) -> no freeze Mac OS -> El Capitan or Sierra.

HighSierra maybe freeze at boot time (Safe Mode). There were changes in the HighSierra in relation to the AMD kexts loaded during the Safe Mode. More tests are needed.

File downloaded -> /Users/Your_User/Downloads/archlinux-2017.03.01-dual.iso

Finder -> Applications -> Utilities -> Terminal:

MD5:
Code:
cd Downloads/

md5 archlinux-2017.03.01-dual.iso
MD5 (archlinux-2017.03.01-dual.iso) = 1d25235e7cebe45f93452fbc05a0fb66

SHA1:
Code:
cd Downloads/

shasum archlinux-2017.03.01-dual.iso
f426866ca632a35a3eeae8e4080cff25ec8da614  archlinux-2017.03.01-dual.iso

Or try the simplest way - No needed ArchLinux - Only MacOS:

1 - Boot Single User (press Command + S) at boot (If you have MacOS installed on your hard drive).

2 - If you have a blank HD, then use the USB stick/Pendrive with the MacOS installer (El Capitan, Sierra or HighSierra).

2.1 - Press Option key at boot, Position the mouse on the MacOS installer icon.

2.2 - Press Command + S and keep holding these two keys.

2.3 - Click the MacOS installer icon -> continue holding the Command + S keys until you finish the MacOS installer Single User boot .

Enter these commands (change gpu-power-prefs to Intel GPU and boot verbose):

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

nvram boot-args="-v"

reboot

If you've chosen the Arch Linux route, please continue reading:

Then you could either simply burn this ISO to CD/DVD (which later could be either inserted to MBP's SuperDrive or External DVD Drive connected to MBP by two USB cables) or create a bootable USB: use the great detailed instructions from this page, https://wiki.archlinux.org/index.php/USB_flash_installation_media

2) Boot to it: insert this CD/DVD/USB to Macbook Pro, hold Option key while booting, choose "EFI boot" (that is your bootable installation media), press "e" key to edit the GRUB options of the Arch Linux archiso x86_64 UEFI CD menu entry while it is selected at the main screen, add nomodeset to the end of this line and press Enter. If everything is done correctly, you will find yourself at the Linux console!

3) Edit EFI vars: looks like efivarfs filesystem is mounted by default! So you can already cd /sys/firmware/efi/efivars and ls to explore this directory and see if there is a "gpu-power-prefs-..." variable (where ... is UUID of this variable). If there is such a variable, its better to remove it with rm. In my case the efivarfs has been mounted by default with read/write permissions, but if you are getting the "operation not permitted" message while attempting to rm, it means that in your case efivarfs has been mounted as read-only and you need to remount it with read-write permissions and try again (credits to totoe_84 for this valuable addition) :
*) cd /
*) umount /sys/firmware/efi/efivars/
*) mount -t efivarfs rw /sys/firmware/efi/efivars/
*) cd /sys/firmware/efi/efivars/

If your screen is so distorted that it is difficult to see the letters, just start typing the rm gpu-power-pre and then press TAB key for autocompletion. In my case there were not such a EFI variable, only "gpu-active-..." and maybe somehow related "gfx-saved-config-restore-status-..." . Then I looked again at that gpu-switch text file (mentioned above, https://github.com/0xbb/gpu-switch/blob/master/gpu-switch),
and entered THESE COMMANDS:

*) chattr -i "/sys/firmware/efi/efivars/" <----- skip this command

Actually a gpu-switch script had "${sysfs_efi_vars}/${efi_gpu}" but I didnt have a "gpu-power-prefs-..." variable - so, partially by mistake, I didn't add that efi_gpu suffix and entered this incomplete path accidentally

*)
printf "\x07\x00\x00\x00\x01\x00\x00\x00" > /sys/firmware/efi/efivars/gpu-power-prefs-fa4ce28d-b62f-4c99-9cc3-6815686e30f9

Did not have a EFI "gpu-power-prefs-" variable so I thought that it will be OK to create a new one with a random UUID - in this case, taken directly from a gpu-switch script

*) chattr +i "/sys/firmware/efi/efivars/gpu-power-prefs-fa4ce28d-b62f-4c99-9cc3-6815686e30f9"

http://www.tecmint.com/chattr-command-examples/ - chattr (Change Attribute) is a command line Linux utility that is used to set/unset certain attributes to a file in Linux system to secure accidental deletion or modification of important files and folders, even though you are logged in as a root user.
...
Syntax of chattr ---> chattr [operator] [flags] [filename]
...
A file is set with ‘i‘ attribute (+i as you see in this command) ---> cannot be modified (immutable). Means no renaming, no symbolic link creation, no execution, no writable, only superuser can unset the attribute.
...
Operator
  1. + : Adds the attribute to the existing attribute of the files.
  2. : Removes the attribute to the existing attribute of the files.
  3. = : Keep the existing attributes that the files have.
This chattr command is supposed to lock a file to make it accessible only by "superuser" - and so that, while booting, your EFI will have no chance to screw up your gpu-power-prefs-... variable under any circumstances

*) cd /

Could not unmount efivars if you are inside this directory, so change to the root directory

*) umount /sys/firmware/efi/efivars/

Guarantees that your EFI variables are flushed to efivarfs filesystem, please unmount it safely before rebooting)

*) reboot

===> IF YOU DID EVERYTHING CORRECTLY, MOST LIKELY THAT YOUR MACBOOK PRO IS NOW USING INTEGRATED GRAPHICS WHILE BOOTING, AFTER BOOTING, AND IS WORKING GREAT AGAIN ! ;)

In the future maybe you could need to re-apply this solution if you would have to reset your PRAM / NVRAM / SMC because of some other problems, so remember this solution somewhere... Funny thing: now you can't switch to Discrete GPU even using gfxCardStatus, it is forever stuck at Integrated

I spent two working days to discover this solution, and really hope that it will work flawlessly for every MBP owner with a broken discrete GPU. Good luck!

=== NEWS ! YOU COULD ALSO FOLLOW THESE GUIDES FOR THE EXTRA IMPROVEMENTS : ===

Follow the MikeyN Guide - page 35 - #875 - to move the AMDRadeonX3000.kext from the /System/Library/Extensions directory and do not freeze Macbook Pro (at 75% progress bar or "IOConsoleUsers: gIOScreenLockState 3" message).

Rename old AMDRadeonX3000.kext and move new AMDRadeonX3000.kext after update - Page 57 - #1425

Shutdown or Restart Macbook Pro - avoid black screen freeze - Update 2 - Page 57 - #1425

Close the Lid - Sleep - Waking - Page 43 #1066 - Page 50 #1243
[doublepost=1547376799][/doublepost]Just one word WOW! Have had this problem since I bought this MacBook Pro in 2011. Replaced the board in late 2012 paid $700 Canadian. All was ok until 5 days ago went to Apple Center only to hear trash your PC we cannot do anything anymore. UNTIL I started reading this did everything and finally got started except the refresh rate was terrible did the MacPro dGPU disabler followed the instructions and man I can only say YOU GUYS ARE GREAT! Can only say thank all of you for your great efforts! Superb!
 
  • Like
Reactions: Laisen

AJDJ

macrumors newbie
Jan 12, 2019
2
1
I think I finally got this fully working!! here's my check list.

- I can now restart my mac without having to type in the disable gpu code each time
- I made the login hook thing so my mac should be controlling temp correctly (I also have SMC fan control that I keep an eye on)
- I made the disable gpu short cut thingy, I called mine "go.sh" so If I have to I can boot with Cmd+S then type sh /go.sh (then reboot)


Is there any other super amazing stuff I should/ could do? this form is 92 pages long I'm trying to read it all but its confusing and long.

for anyone new to this; page #35 (scroll to the bottom) has a guide that was very helpful to me, check it out)
 
Last edited:
  • Like
Reactions: Spectrum

Spectrum

macrumors 68000
Mar 23, 2005
1,808
1,115
Never quite sure
Thanks again everyone! I think mine is fixed now. After booting from single user mode and applying the nvram patch, I downloaded a High Sierra Installer and made a small bootable partition. I then restarted in single user, reapplied the patch, then rebooted directly from single user holding down Option, then selected the Installer as boot drive. Once loaded, I could access terminal tool and disable SIP. Then I went back, rebooted in single user and applied all the patches.

There is one piece of the puzzle I'm still not clear on.

I followed the advice of user MikeyN Force 2011 MacBook Pro 8,2 with failed AMD GPU to ALWAYS use Intel integrated GPU (EFI variable fix)
and created a LoginHook to reload the AMD3000X kext after login, but I'm not sure if this is necessary or not. (Or even advisable?) Does this now mean that applications can invoke the dGPU - leading to a failure? Is it better to not reload the AMD3000X kext after boot?

Regardless, the system appears stable, and I can now reboot if needed too! Cheers! What an amazing solution and community! :)
 

pastran

macrumors newbie
Nov 26, 2018
14
0
I think I finally got this fully working!! here's my check list.

- I can now restart my mac without having to type in the disable gpu code each time
- I made the login hook thing so my mac should be controlling temp correctly (I also have SMC fan control that I keep an eye on)
- I made the disable gpu short cut thingy, I called mine "go.sh" so If I have to I can boot with Cmd+S then type sh /go.sh (then reboot)


Is there any other super amazing stuff I should/ could do? this form is 92 pages long I'm trying to read it all but its confusing and long.

for anyone new to this; page #35 (scroll to the bottom) has a guide that was very helpful to me, check it out)

You load the AMDRadeonX3000.Kext at boot for get low temperature? or it's not works?
In High Sierra without x3000.kext 1 video youtube, My temp is arround 67-70ºC in CPU.
In Mojave i get similar Temps or more!
with x3000.kext i can cooldown?
Thanks a lot!
 

tony359

macrumors member
Oct 23, 2018
89
22
Yes, loading the kext after system has booted up will instruct the system on how to power manage the gpu

Check mikeyN’s guide, I believe it’s post 875 on this thread.
 

Spectrum

macrumors 68000
Mar 23, 2005
1,808
1,115
Never quite sure
Yes, loading the kext after system has booted up will instruct the system on how to power manage the gpu

Check mikeyN’s guide, I believe it’s post 875 on this thread.
Does this mean that the dGPU can now be activated though? (if requested by a game for example?)
i.e. one of the things we are trying to avoid happening.
 

fredrain

macrumors newbie
Jan 15, 2019
7
1
Los Angeles
Hi slapple,

1) This purely software fix is at EFI BIOS level. In theory it should work with ANY operating system in existence, that is:
*) compatible with Macbook Pro hardware (x86_64 aka AMD64 CPU architecture - https://en.wikipedia.org/wiki/X86-64 )
*) compatible with MBP's version of EFI firmware (ancient OS without EFI support will not work straight out of the box, although there should be a way to launch them in some compatibility mode, also some weird OS could be incompatible with Apple's version of EFI)

Actually this EFI variables fix could bring a great benefit to those MBP 2011 users who would like to dual boot their OS X with Linux: because of Apple's highly specific method of connecting two GPUs in this machine, sometimes it was difficult to setup even the popular Linux distributions. Don't blame AMD, it was the first Apple's laptop with AMD in dual graphics so probably Apple didn't have the time to develop a good dual graphics implementation. With dual graphics disabled, now it should be much easier to setup any Linux, just have not tested it yet...

2) Even without this EFI variable fix it should be somehow possible to switch to Intel GPU in Windows, if both GPUs are visible to Windows through PCI (if EFI does not cut out the PCI access to it for operating systems running under BootCamp), although it could require some messing with the drivers. Also I completely agree with ah- : It is possible to keep several OS (including Windows) on a Mac without any Bootcamp, just using a rEFInd - http://www.rodsbooks.com/refind/

BTW why not run Windows in a virtual machine? For example: several years ago I made some benchmarks of native OS X performance vs Windows inside a Parallels Desktop, and while the graphic performance hit was somewhere around 35%, the CPU performance was just about 2% slower. Right now the difference should be much smaller, because "several years" is a big time for any software to improve, especially for a popular virtualization software. If you don't like to pay or to pirate, try some freeware virtualization tools like VirtualBox and QEMU. Maybe even Wine could be suitable for your needs
[doublepost=1547573204][/doublepost]2011 17" MBP Pro, 8,3. My all time fav Mac laptop ever, nothing beats the 17" screen! Unf the fixes suggested here on this page - simply dont last. Maybe 3-5 days, then I see a flash of lite on screen, or my Mac simply wont reboot to the normal login screen. Too bad because I paid $$$ for this top of the line laptop, that when it works, works great. If any others have suggestions on how to create a ROBUST fix, would love to hear from you!
 

tony359

macrumors member
Oct 23, 2018
89
22
If you still have artefacts even when using the mod, without updating or reinstalling, then you may have a problem elsewhere? You can check if your discrete GPU is being used or not via terminal, it's in one of the previous posts.
 

Spectrum

macrumors 68000
Mar 23, 2005
1,808
1,115
Never quite sure
[doublepost=1547573204][/doublepost]2011 17" MBP Pro, 8,3. My all time fav Mac laptop ever, nothing beats the 17" screen! Unf the fixes suggested here on this page - simply dont last. Maybe 3-5 days, then I see a flash of lite on screen, or my Mac simply wont reboot to the normal login screen. Too bad because I paid $$$ for this top of the line laptop, that when it works, works great. If any others have suggestions on how to create a ROBUST fix, would love to hear from you!
I followed these instructions (below) and it seems very stable. I am hugely thankful and very impressed!

https://forums.macrumors.com/thread...fi-variable-fix.2037591/page-35#post-24956091
 

GrandDanois

macrumors newbie
Jan 15, 2019
1
0
Denmark
Is there anything that can be done in this vein where there is no video? I try to boot up and there is no video and no chime. The LED light remains on for quite some time and then goes off. I assume that it's trying to boot and asking for a password and times out.
I had the same problem. Found a recommendation to reset the SMC. Had never heard of it, but basically it means that you should disconnect the battery and reboot. When I did that, my machine actually came back to life with no problems at all. I have nevertheless run the no-Archlinux fix, and I'm now browsing these pages to find out whether I have actually disabled the dGPU. In gfxCardStatus, I can still choose the discrete but so can PeytonPlaysMC in this video (at 14.55):
Can anybody chime in here?
 

Whitepants

macrumors newbie
Jan 16, 2019
1
0
THANK YOU!! THANK YOU!! THANK YOU!!!

This part of your solution worked for me and I CANNOT THANK YOU ENOUGH!!!!!

I love this Macbook Pro and a new one just is not in my budget. You saved me and my sanity!!!

Quick Question though -- will I still be able to do video recording on this, via iMovie? My kid has a project due and it's a video! Will need to be able to record some things and create a video.

THANK YOU AGAIN!!!



===
=== 100% WORKING SOLUTION
===
=== Force your MBP to ALWAYS use Intel integrated GPU (EFI variable fix)
===
=== to make it great again ! ;)
===



Or try the simplest way - No needed ArchLinux - Only MacOS:

1 - Boot Single User (press Command + S) at boot (If you have MacOS installed on your hard drive).

2 - If you have a blank HD, then use the USB stick/Pendrive with the MacOS installer (El Capitan, Sierra or HighSierra).

2.1 - Press Option key at boot, Position the mouse on the MacOS installer icon.

2.2 - Press Command + S and keep holding these two keys.

2.3 - Click the MacOS installer icon -> continue holding the Command + S keys until you finish the MacOS installer Single User boot .

Enter these commands (change gpu-power-prefs to Intel GPU and boot verbose):

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

nvram boot-args="-v"

reboot
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.