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.

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
@nsgr I have disassembled the muxing binary in macOS (10.13.5). A negative value indeed shows that message. Since it worked in my case, I thought it was just disabling the muxer. Note that I tried this on macOS 10.13.5 (a lot changed in macOS 10.13.4 w.r.t GPUs). Maybe that could be the difference.
 

nsgr

macrumors 6502
May 22, 2017
317
117
@nsgr I have disassembled the muxing binary in macOS (10.13.5). A negative value indeed shows that message. Since it worked in my case, I thought it was just disabling the muxer. Note that I tried this on macOS 10.13.5 (a lot changed in macOS 10.13.4 w.r.t GPUs). Maybe that could be the difference.

HighSierra 10.13.4 has put a lot of new information. When I turn on MacbookPro several information appears that are on the EFI chip.

Sierra and HighSierra have inside AppleMuxControl and AppleMuxControl2:

FeatureMask%d.%d.%d [%d.%d.%d]%x.%x.%xgMux-versionIOUserClientCrossEndianCompatibleAGC: booted to IG, policy disabled!!

AGC:: %s, HW version=%s, flags:%x, features:%x, policy: %x


In El Capitan there is no such line above AGC: booted to IG, policy disabled!! - but El Capitan 10.11.6 freeze Macbook pro with AMDRadeonX3000.kext inside /System/Library/Extensions.


It looks like something was disabled in Sierra 10.12.1 and HighSierra 10.13.

In Sierra 10.12 / 10.12.0 I was able to go through AMDRadeonX3000.kext with gpu-power-prefs for Intel. AMDRadeonX3000.kext inside /System/Library/Extensions.

In Sierra 10.12.1 this is no longer possible - freeze Macbook Pro.

no agc in boot-args or agc=0 or agc=9 -> power off AMD GPU after manual kextload AMDRadeonX3000.kext

agc=1, agc=2, ... , agc=8 -> AMD GPU stay power on after manual kextload AMDRadeonX3000.kext


I do not know if this agc in boot-args is connected with the hwPState that is inside:

/System/Library/Extensions/AppleGraphicsPowerManagement.kext/Contents/Info.plist -> IOKitPersonalities -> AGPM -> Machines -> MacBookPro8,2 -> Vendor1002Device6741 -> QSC -> hwPState
 
Last edited:

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
HighSierra 10.13.4 has put a lot of new information. When I turn on MacbookPro several information appears that are on the EFI chip.

Sierra and HighSierra have inside AppleMuxControl and AppleMuxControl2:

FeatureMask%d.%d.%d [%d.%d.%d]%x.%x.%xgMux-versionIOUserClientCrossEndianCompatibleAGC: booted to IG, policy disabled!!

AGC:: %s, HW version=%s, flags:%x, features:%x, policy: %x


In El Capitan there is no such line above AGC: booted to IG, policy disabled!! - but El Capitan 10.11.6 freeze Macbook pro with AMDRadeonX3000.kext inside /System/Library/Extensions.


It looks like something was disabled in Sierra 10.12.1 and HighSierra 10.13.

In Sierra 10.12 / 10.12.0 I was able to go through AMDRadeonX3000.kext with gpu-power-prefs for Intel. AMDRadeonX3000.kext inside /System/Library/Extensions.

In Sierra 10.12.1 this is no longer possible - freeze Macbook Pro.

no agc in boot-args or agc=0 or agc=9 -> power off AMD GPU after manual kextload AMDRadeonX3000.kext

agc=1, agc=2, ... , agc=8 -> AMD GPU power on after manual kextload AMDRadeonX3000.kext

When I attempted to use agc=0 along with the power-prefs settings (no kexts moved) - the next boot did not use iGPU. With agc=-1, it remained consistent. Weird to see it works for NVIDIA but not AMD. Hmm, that line which mentions the flags - these are the agc=* arg value if I recall right. Perhaps El Capitan does not parse agc arg? Also do agc=(0-9) matter? In the disassembler, the comparison I noticed was whether it's < 0 or not (10.13.5).
[doublepost=1530214139][/doublepost]
I do not know if this agc in boot-args is connected with the hwPState that is inside:

/System/Library/Extensions/AppleGraphicsPowerManagement.kext/Contents/Info.plist -> IOKitPersonalities -> AGPM -> Machines -> MacBookPro8,2 -> Vendor1002Device6741 -> QSC -> hwPState
Hmm.. never thought about that. If it is, then AGPM should be parsing boot args and extracting agc value too. I quickly disassembled AGPM (tho on 10.14 - don't think that has changed much). Doesn't show any signs of parsing agc boot arg, though it does have its own set of boot args (qsc, agpm, etc.).
[doublepost=1530214572][/doublepost]Also sudo pmset -a force gpuswitch 0 does not work on Mojave.
[doublepost=1530214786][/doublepost]I also disassembled some AMD kexts - Instead of moving kexts, all AMD acceleration can be disabled by boot arg -amd_no_dgpu_accel based on what I'm seeing. Cannot test myself as I do not own a machine with AMD GPU.
 
Last edited:

nsgr

macrumors 6502
May 22, 2017
317
117
When I attempted to use agc=0 along with the power-prefs settings (no kexts moved) - the next boot did not use iGPU. With agc=-1, it remained consistent. Weird to see it works for NVIDIA but not AMD. Hmm, that line which mentions the flags - these are the agc=* arg value if I recall right. Perhaps El Capitan does not parse agc arg? Also do agc=(0-9) matter? In the disassembler, the comparison I noticed was whether it's < 0 or not (10.13.5).
[doublepost=1530214139][/doublepost]
Hmm.. never thought about that. If it is, then AGPM should be parsing boot args and extracting agc value too. I quickly disassembled AGPM (tho on 10.14 - don't think that has changed much). Doesn't show any signs of parsing agc boot arg, though it does have its own set of boot args (qsc, agpm, etc.).


Yes, changing the value of agc -> changes the value of the flags and the features. El Capitan show this changes. Sierra and HighSierra not show this changes after add this line AGC: booted to IG, policy disabled!!

AGC:: %s, HW version=%s, flags:%x, features:%x, policy: %x


AMDRadeonX3000.kext -> power off AMD GPU.

no agc or agc=0 or agc=9 or agc=10, agc=11, etc -> AMDRadeonX3000.kext -> power off AMD GPU

agc=1, agc=2, ... , agc=8 -> AMD GPU stay power on after kextload AMDRadeonX3000.kext


It may be related the max-power-state=8 or just a coincidence ->
AppleGraphicsPowerManagement.kext/Contents/Info.plist

qscOnTime -> frequency levels of the AMD GPU.



In Macbook Pro 2011 -> Sierra 10.12.0 -> agc = 0 -> gpu-power-prefs to Intel -> normal boot with no freeze -> main gpu -> Intel.

boot-args have agc=0, 1, etc, - agdp=board-id (example agdp=Mac-F60DEB81FF30ACF6 ) - agdc=? (
AGDCDiagnose -a).

https://pikeralpha.wordpress.com/2016/10/11/black-screen-tip-of-the-day/

/System/Library/Extensions/AppleGraphicsControl.kext/Contents/MacOS/AGDCDiagnose -a


Which program do you use (disassembler)?
 

Attachments

  • AppleGraphicsPowerManagement.kext-Info.plist.jpg
    AppleGraphicsPowerManagement.kext-Info.plist.jpg
    177.4 KB · Views: 271

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
Yes, changing the value of agc -> changes the value of the flags and the features. El Capitan show this changes. Sierra and HighSierra not show this changes after add this line AGC: booted to IG, policy disabled!!

AGC:: %s, HW version=%s, flags:%x, features:%x, policy: %x


AMDRadeonX3000.kext -> power off AMD GPU.

no agc or agc=0 or agc=9 or agc=10, agc=11, etc -> AMDRadeonX3000.kext -> power off AMD GPU

agc=1, agc=2, ... , agc=8 -> AMD GPU stay power on after kextload AMDRadeonX3000.kext


It may be related the max-power-state=8 or just a coincidence ->
AppleGraphicsPowerManagement.kext/Contents/Info.plist

qscOnTime -> frequency levels of the AMD GPU.



In Macbook Pro 2011 -> Sierra 10.12.0 -> agc = 0 -> gpu-power-prefs to Intel -> normal boot with no freeze -> main gpu -> Intel.

boot-args have agc=0, 1, etc, - agdp=board-id (example agdp=Mac-F60DEB81FF30ACF6 ) - agdc=? (
AGDCDiagnose -a).

https://pikeralpha.wordpress.com/2016/10/11/black-screen-tip-of-the-day/

/System/Library/Extensions/AppleGraphicsControl.kext/Contents/MacOS/AGDCDiagnose -a


Which program do you use (disassembler)?

Oh, that agdp arg is quite intriguing. I use Hopper (trial) for disassembly. Pretty convenient and easy to look up labels, symbols, etc.
 

nsgr

macrumors 6502
May 22, 2017
317
117
When I attempted to use agc=0 along with the power-prefs settings (no kexts moved) - the next boot did not use iGPU. With agc=-1, it remained consistent. Weird to see it works for NVIDIA but not AMD. Hmm, that line which mentions the flags - these are the agc=* arg value if I recall right. Perhaps El Capitan does not parse agc arg? Also do agc=(0-9) matter? In the disassembler, the comparison I noticed was whether it's < 0 or not (10.13.5).
[doublepost=1530214139][/doublepost]
Hmm.. never thought about that. If it is, then AGPM should be parsing boot args and extracting agc value too. I quickly disassembled AGPM (tho on 10.14 - don't think that has changed much). Doesn't show any signs of parsing agc boot arg, though it does have its own set of boot args (qsc, agpm, etc.).
[doublepost=1530214572][/doublepost]Also sudo pmset -a force gpuswitch 0 does not work on Mojave.
[doublepost=1530214786][/doublepost]I also disassembled some AMD kexts - Instead of moving kexts, all AMD acceleration can be disabled by boot arg -amd_no_dgpu_accel based on what I'm seeing. Cannot test myself as I do not own a machine with AMD GPU.


New information! :)

Is that the right way? I'm going to do a reboot now to test.

boot-args="-v -amd_no_dgpu_accel"
 

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
New information! :)

Is that the right way? I'm going to do a reboot now to test.

boot-args="-v -amd_no_dgpu_accel"
Looks right. Ensure mux is set to iGPU using you power prefs command.
[doublepost=1530217854][/doublepost]Worked as intended here. He was trying to intentionally disable internal screen.
[doublepost=1530218481][/doublepost]It didn't look like AGDC itself tries to parse any boot-args. Other nvram values - harder to look for.
 

nsgr

macrumors 6502
May 22, 2017
317
117
Looks right. Ensure mux is set to iGPU using you power prefs command.
[doublepost=1530217854][/doublepost]Worked as intended here. He was trying to intentionally disable internal screen.
[doublepost=1530218481][/doublepost]It didn't look like AGDC itself tries to parse any boot-args. Other nvram values - harder to look for.

Unfortunately it did not work.

MacbookPro 2011 freeze with AMDRadeonX3000.kext inside /System/Library/Extensions .

boot-args="-v -amd_no_dgpu_accel"


Is there any configuration file to let edit and selected permanent -> System Preferences -> Energy Saver -> Automatic Graphics Switching? It is always disabled in my case.

System Preferences -> Energy Saver -> Disable Automatic Graphics Switching -> AGDCDiagnose -a -> System is in Dynamic mode: Better Performance Mode set, using Integrated.

System Preferences -> Energy Saver -> Enable Automatic Graphics Switching -> AGDCDiagnose -a -> System is in Dynamic mode: Better Battery Mode set, using Integrated.


Update:

My AMD GPU -> failure -> always boot with gpu-power-prefs to Intel.
 

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
Unfortunately it did not work.

MacbookPro 2011 freeze with AMDRadeonX3000.kext inside /System/Library/Extensions .

boot-args="-v -amd_no_dgpu_accel"


Is there any configuration file to let edit and selected permanent -> System Preferences -> Energy Saver -> Automatic Graphics Switching? It is always disabled in my case.

System Preferences -> Energy Saver -> Disable Automatic Graphics Switching -> AGDCDiagnose -a -> System is in Dynamic mode: Better Performance Mode set, using Integrated.

System Preferences -> Energy Saver -> Enable Automatic Graphics Switching -> AGDCDiagnose -a -> System is in Dynamic mode: Better Battery Mode set, using Integrated.


Update:

My AMD GPU -> failure -> always boot with gpu-power-prefs to Intel.
The automatic graphics switching setting can be disabled by fixing mux with agc=-1. Does your update mean it worked? Sorry it seemed a little unclear. In any case, on the eGPU.io forum, @goalque was able to set the mux, disable AMD GPU using boot arg, and boot. So I guess a card that has actually failed doesn't work.
 

nsgr

macrumors 6502
May 22, 2017
317
117
The automatic graphics switching setting can be disabled by fixing mux with agc=-1. Does your update mean it worked? Sorry it seemed a little unclear. In any case, on the eGPU.io forum, @goalque was able to set the mux, disable AMD GPU using boot arg, and boot. So I guess a card that has actually failed doesn't work.

agc=-1 -> did not work -> freeze MacbookPro 2011.

Yes, if the AMD GPU is in failure, then there is one more problem.


Update:

I downloaded Hopper. More hours of study.

There must be a technical manual explaining the agc boot-args. An Apple technician put this option in 2015.

https://discussions.apple.com/thread/7295722
 
Last edited:

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
agc=-1 -> did not work -> freeze MacbookPro 2011.

Yes, if the AMD GPU is in failure, then there is one more problem.


Update:

I downloaded Hopper. More hours of study.

There must be a technical manual explaining the agc boot-args. An Apple technician put this option in 2015.

https://discussions.apple.com/thread/7295722
Hopper + your capable hands = I think it'll be awesome to see what you come up with!

If there's a manual, sure isn't public. Nothing like an evening of reverse-engineering.
 

funkwizard

macrumors newbie
Jun 28, 2018
14
1
I have a MBP early 2011 built with AMD Radeon and Intel chip.The problem is my MBP is powering on when I press the power button and there is no display only black screen and the keys are lifted,the fans are spinning.I tried resetting the SMC,NVRAM and done safe mode,used to start the Mac in single user mode nothing is working.Has the AMD chip completely failed what should be done?
 

damien_mattei

macrumors newbie
Jun 22, 2018
17
0
the difficulty will be that you have black screen, trying to boot from a linux debian 8.0 (does not use AMD) could be difficult because you cannot see what you type to select the drive.
Also booting in target disk mode https://support.apple.com/en-us/HT201462 is perheaps giving you access to your system disk...

the goal is to get access to the disk and remove the AMD*kext as described at the first page of this thread.

If nothing above works i would remove the hard drive , connect it to another Mac (or PC with Linux installed) and remove the AMD*kext files
,finally recconect it to the faulty AMD GPU logic board.
I'm almost sure this will works.
 

nsgr

macrumors 6502
May 22, 2017
317
117
Hopper + your capable hands = I think it'll be awesome to see what you come up with!

If there's a manual, sure isn't public. Nothing like an evening of reverse-engineering.

boot-args="-v -amd_no_dgpu_accel"

Only AMDRadeonX4000.kext and AMDRadeonX5000.kext .


Code:
grep -iRl "amd_no_dgpu_accel" /System/Library/Extensions/

/System/Library/Extensions/AMDRadeonX4000.kext/Contents/MacOS/AMDRadeonX4000
/System/Library/Extensions/AMDRadeonX5000.kext/Contents/MacOS/AMDRadeonX5000

You can also only view or extract the strings in an executable file.

You have to use the "strings" command. This command is part of the XCode Command Line Tools.
If you do not have it installed, type strings in the Terminal and a window will appear to install the XCode Command Line Tools.


View Strings:

Code:
strings /System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/AppleMuxControl.kext/Contents/MacOS/AppleMuxControl
AGCEventSource
3.18.52
AppleMuxControl
No access to ACPI!!
ConfigMap
Default
board-id
NumberFramebuffers0
NumberFramebuffers1
...


Extract strings to text file:

Code:
strings /System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/AppleMuxControl.kext/Contents/MacOS/AppleMuxControl >> /Users/YourUser/Documents/AppleMuxControl-strings.txt
 

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
boot-args="-v -amd_no_dgpu_accel"

Only AMDRadeonX4000.kext and AMDRadeonX5000.kext .


Code:
grep -iRl "amd_no_dgpu_accel" /System/Library/Extensions/

/System/Library/Extensions/AMDRadeonX4000.kext/Contents/MacOS/AMDRadeonX4000
/System/Library/Extensions/AMDRadeonX5000.kext/Contents/MacOS/AMDRadeonX5000

You can also only view or extract the strings in an executable file.

You have to use the "strings" command. This command is part of the XCode Command Line Tools.
If you do not have it installed, type strings in the Terminal and a window will appear to install the XCode Command Line Tools.


View Strings:

Code:
strings /System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/AppleMuxControl.kext/Contents/MacOS/AppleMuxControl
AGCEventSource
3.18.52
AppleMuxControl
No access to ACPI!!
ConfigMap
Default
board-id
NumberFramebuffers0
NumberFramebuffers1
...


Extract strings to text file:

Code:
strings /System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/AppleMuxControl.kext/Contents/MacOS/AppleMuxControl >> /Users/YourUser/Documents/AppleMuxContro-strings.txt
Ahh so that was it. Hopper has strings section - tho usually it may not be enough to find what arg values are possible (for ex. agc values). Tracking the offset where the boot-arg's parsed value is stored typically helps. Nice find. I was on Mojave when I discovered the amd arg, and that doesn't have RadeonX3000 haha.. Doesn't look like X3000 parses any boot args at first glance.
 

nsgr

macrumors 6502
May 22, 2017
317
117
I have a MBP early 2011 built with AMD Radeon and Intel chip.The problem is my MBP is powering on when I press the power button and there is no display only black screen and the keys are lifted,the fans are spinning.I tried resetting the SMC,NVRAM and done safe mode,used to start the Mac in single user mode nothing is working.Has the AMD chip completely failed what should be done?

Try Hard Reset SMC.

0 - Unplug power cable MagSafe.

1 - Open your Macbook Pro.

2 - Only disconnect battery power cable.

3 - Press Power Button and hold for 30 seconds. Release Power Button and repeat -> Press Power Button and hold for 30 seconds.

When pressing the power button with the MagSafe unplugged and the battery cable unplugged, then the Macbook Pro will try to start but it has no power source -> will then do the "Hard Reset of the SMC".


In this video he does not press the power button. But do the procedure by pressing the power button for 30 seconds with the battery cable off.
This is the procedure for PC Notebook to clean up any problem configurations in BIOS Setup.


Macbook pro FIX - disconnect battery connector when theres no power or dim orange light

[doublepost=1530296384][/doublepost]
Ahh so that was it. Hopper has strings section - tho usually it may not be enough to find what arg values are possible (for ex. agc values). Tracking the offset where the boot-arg's parsed value is stored typically helps. Nice find. I was on Mojave when I discovered the amd arg, and that doesn't have RadeonX3000 haha.. Doesn't look like X3000 parses any boot args at first glance.

I've seen people writing that "maybe" the final version of Mojave is not compatible with Macbook Pro 2011.

Not having the AMDRadeonX3000.kext is already indicative that Apple will prevent from installing Mojave in Macbook Pro 2011. :-(

Hopper gives me only 30 minutes in the Trial version. In the middle of work I have to stop everything and close the Hopper. :-(
 

mac_4eva

macrumors member
Jun 15, 2016
57
43
Seattle, WA, USA
Try Hard Reset SMC.

0 - Unplug power cable MagSafe.

1 - Open your Macbook Pro.

2 - Only disconnect battery power cable.

3 - Press Power Button and hold for 30 seconds. Release Power Button and repeat -> Press Power Button and hold for 30 seconds.

When pressing the power button with the MagSafe unplugged and the battery cable unplugged, then the Macbook Pro will try to start but it has no power source -> will then do the "Hard Reset of the SMC".


In this video he does not press the power button. But do the procedure by pressing the power button for 30 seconds with the battery cable off.
This is the procedure for PC Notebook to clean up any problem configurations in BIOS Setup.


Macbook pro FIX - disconnect battery connector when theres no power or dim orange light

[doublepost=1530296384][/doublepost]

I've seen people writing that "maybe" the final version of Mojave is not compatible with Macbook Pro 2011.

Not having the AMDRadeonX3000.kext is already indicative that Apple will prevent from installing Mojave in Macbook Pro 2011. :-(

Hopper gives me only 30 minutes in the Trial version. In the middle of work I have to stop everything and close the Hopper. :-(
Yea, that 30min limit is annoying. Sadly it’s a bit too expensive to purchase. No doubt it’s amazing though.
 

funkwizard

macrumors newbie
Jun 28, 2018
14
1
Try Hard Reset SMC.

0 - Unplug power cable MagSafe.

1 - Open your Macbook Pro.

2 - Only disconnect battery power cable.

3 - Press Power Button and hold for 30 seconds. Release Power Button and repeat -> Press Power Button and hold for 30 seconds.

When pressing the power button with the MagSafe unplugged and the battery cable unplugged, then the Macbook Pro will try to start but it has no power source -> will then do the "Hard Reset of the SMC".


In this video he does not press the power button. But do the procedure by pressing the power button for 30 seconds with the battery cable off.
This is the procedure for PC Notebook to clean up any problem configurations in BIOS Setup.


Macbook pro FIX - disconnect battery connector when theres no power or dim orange light

[doublepost=1530296384][/doublepost]

It didn't work still my MBP boots in Black screen with startup chime sound,keyboard light and spinning fans but no display only black.Any other solution bro which might work you think?
 

cschneer

macrumors newbie
Jul 1, 2018
1
0
Hey guys,

I apologize in advance, because i'm certain that this fix has been detailed many times and also updated for High Sierra, however, after going through about 10 pages of comments, I still haven't found a solution. I am a little new to OSX administration and I am FIGHTING with a client's computer. Any help will be greatly appreciated

I have tried the original 100% GPU fix. And I get stuck at this part.

After booting to ArchLinux I try to perform the following to delete the GPU-Power-Prefs
*) cd /
*) umount /sys/firmware/efi/efivars/
*) mount -t efivarfs rw /sys/firmware/efi/efivars/
*) cd /sys/firmware/efi/efivars/

It won't let me delete the file.

The instructions then go on to say that if you still cannot delete this file, to use the chattr command to make the file immutable.

Welllll.... I'm sure you guys can guess where i'm going with this, chattr is not found as a command.

I can get the mac to boot with the following, but I need to redo these steps every reboot or the computer will not load.

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

nvram boot-args="-v"

reboot

Please help me guys, i'm banging my head against the wall over here.
 

apple_eater

macrumors newbie
Feb 12, 2018
3
1
Hi all -- when implementing the original archlinux solution posted by appplemacfinder (for an early-2011 15" macbook pro with AMD gpu running Mavericks), are the changes/fixes implemented at the software level within MacOS or are they saved in the hardware somewhere or is it some combination of the two?

Basically, I'm wondering what to do if you've already implemented the archlinux solution and then try boot from a new external hard drive preloaded with High Sierra; would you would need to run through all or just part of one of the solutions presented elsewhere in the forum, and which solution would be the correct one to follow? Any help or insight would be greatly appreciated!!!
 
Last edited:

mightymacman

macrumors member
Jul 26, 2017
39
11
San Luis Obispo, CA
No booting into linux for this work-a-round to be successful:

15" or 17” 2011 MacBook Pro, with Dual GPU Issue. 07.06.2018

I have found and tested a successful work-a-round, for 2011 MacBook Pros with the known Dual Graphics Processor Unit failure problem. This procedure if successfully implemented forces the “Integrated Only GPU” into operation, and does not allow the “Discrete GPU” to function. The “Discrete GPU” is what has or will fail. It also turns off the GPU automatic switching capability.



SIP must be disabled before making the changes noted below.
(SIP stands for System Integrity Protection (SIP) protects files, directories, and processes at the root level from being modified.) 

 To disable SIP, Boot into the Recovery Drive. 

How to boot into the Recovery Drive?!? 
Hold down Command-R key combinations on the keyboard immediately after pressing the power button to turn on the MBP, or immediately after the MBP begins to restart. 
Launch Terminal from the upper menu bar. 
Key in: csrutil disable; reboot <return>
. The Computer Reboots normally. For the “Work-a-round” to consistently work, 
SIP needs to remain inactive.

Items you may need to accomplish the work-a-round:
Your non functioning 2011 17” or 15” MacBook Pro.
A functioning Macintosh Computer with FireWire 800, and/or ThunderBolt ports.
(Depending on your mix of computers) A Male to Male FireWire 800 Cable, or
a Male to Male ThunderBolt Cable. Or a USB to SATA Cable/USB Adapter. (For HD/SSD Removal/Usage)

01 On a working Mac, Go here: https://aploader.com/mac/apps/gfxcardstatus/2.1 and download version 2.1. Nothing higher. Higher versions will not function as intended for this work-a-round. I've tried them. Alternately you may download it from my DropBox site here: (Click on the DOWNLOAD Button.
 https://www.dropbox.com/s/qb5q89if0xlreoo/gfxCardStatus-2.1.zip?dl=0

NOTE: gfxCardStatus 2.1.zip will D/L to your Downloads Folder, unless you redirect it.

02 About the SSD/HD in the errant 2011 MBP. Either remove it from the MBP, and USB it to another working 2011 MacBook Pro. and boot, Or, with the SSD/HD still in side the errant 2011 MBP connect it to a working 2011 MBP via FireWire or Thunderbolt. You can connect to an iMac, MacPro or other Mac Desktop as well. If booting via FireWire or Thunderbolt, you will boot the MBP while holding down the T key first. This makes the HD/SSD in your MBP act like an external HD/SSD. You'll have access to the drive through the booted Mac.

03 Boot into the SSD/HD that was taken from the errant 2011 MBP.

04 Install gfxCardStatus 2.1 into the bootable SSD/HD that was taken from errant 2011 MBP.
Now, configure the gfxCardStatus App. You may have to reboot into the SSD/HD again before you can configure the app.

05 Go to the upper menu bar to the stylized i. Click it open. Come down to it's Preferences. 


Next: click on General, then check mark the 1st, 3rd, & 4th items only. Uncheck 2nd item if checked.
Next: click on Advanced, Now, check mark the 1st & 2nd items.
Where it says On Battery: Select Integrated 
Where it says Plugged In: Select Integrated
Now the screen has two check marked items, one grayed out, one not. 
This is as it should be.



06 Reboot into the SSD/HD that was taken from errant 2011.
Next: Verify the gfxCardStatus app settings. 
Go to the stylized i in the upper menu bar, click on it, and see that it points to the "integrated only" option. If it does, mission accomplished.

 If booting into/through a desktop Mac, (not a MBP), the gfx app will show you an error because the desktop Mac does not have the dual GPU.


07 Shut down the computer and/or eject the USB SSD/HD drive. 

Put SSD/HD drive back into the original 2011 MBP. and button it up, if it was removed in an earlier step..

08 Boot the MBP. It may still show a failed jumbled display screen. 

To overcome this if it happens, reboot the computer two or three times quickly. 
I successfully did this by pressing the COMMAND-CONTROL-Power Button 3 times. The goal is to interrupt the boot process 3 times quickly. That is, press and hold each button, first COMMAND (and hold), CONTROL (and hold) and Power Button, then release all three buttons at the same time.

On the 4th time, allow the MBP to boot normally. The display may start to look normal, but flick or show other oddities. However by the time the process ends, you should be at your desktop (Assuming you don't have to stop at a log in screen.) The MBP might reboot again on it’s own, as part of this process. If it does, its okay.

09 Finally, go to System Preferences ---> Startup Disk and make sure your SSD/HD is in fact selected. Reboot one more time.

10 The MBP should boot normally, with no screen anomalies.

This work-a-round has lasted through an upgrade from Mac OS Sierra to High Sierra (10.12 to 10.13) in the authors personal 2011•17” MBP… I have also followed this process on a friends 2011•17" MBP, and a customer's 2011•15" MBP.

I recommend you clone your newly created drive, so you have a good working SSD/HD back up ... just in case. Carbon Copy Cloner is excellent for this job.
 

funkwizard

macrumors newbie
Jun 28, 2018
14
1
How to connect my MBP early 2011 built with complete black screen on turning on to a PC with Linux (Ubuntu) installed on it and remove the *kexts file.I think my amd GPU chip has failed completely.I have a mini display port to HDMI adapter and a HDMI cable.
And one more thing can I install Ubuntu Linux on a 2.5 " internal hard disk(spare one) and boot the Mac from the hard drive with Linux installed and remove the *kexts files.
 
Last edited:

Oleg-Sentia

macrumors newbie
Jun 9, 2018
12
2
Burgas, Bulgaria

zeromeg

macrumors newbie
Jul 7, 2018
2
0
Followed the set of three steps from page 22.

Only thing I had to change was HD -> Macintosh HD (Did the cd as two commands)

That said, I just did this and my experience has been that my computer works until it has been on for awhile and I go to do something where it must jump to the other video card.

Mine is an early 2011 17" with the AMD Radeon HD 6750M so seems like what had been discussed here. These instructions were rather easy other than the cd not working due to the "HD". I can see the move was made and the file does exist.

Is there a way to actually know/see what it is doing when it comes to the video situation? Other than waiting to see if my problem doesn't reoccur?

GBDO's method has too many extra steps which most people won't need to do. It'd probably be better to go back to recommending people do part 3.1 of Fguarini's updated instructions, I have no idea why people continue rewriting existing instructions in more complicated ways.

Here is the least complicated method which I have used time and time again while testing out Kext combinations, re-installing OS X, updating OS X and restoring from Time Machine backups. It's a combination of nsgr's method for modifying the NVRAM without using Arch Linux and Fguarini's method for moving Kexts without having to disable SIP.
 

Sergio Alcala

macrumors newbie
Jul 7, 2018
3
0
How can I reverse this action?

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.