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.
After some Googling, the error appears to be in the permissions of the .kext files and they need to be "rebuilt". Unfortunately further Googling has lead me to the conclusion that the Terminal commands used to repair kexts in the past have been removed from Sierra...

I'm at a loss for what to try next. I suppose I might be able to get the three 1.4.8 kexts to load by simply adding them to the Extensions folder as you two have done, but then there's no way to load the X3000 kext after I've logged in.

I guess I can only tell you what I did...

Originally I had moved the AMD (1.51)*.kexts to a folder called AMD_kexts, and did the EFI thing...

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

After learning that there are three Kexts that have to be replaced with earlier versions:

I pulled them off an old Sierra install USB... Which gave me 1.44 versions After disabling SIP, I booted into Recovery, and copied them to the /System/Library/Extensions... With the following commands given to me by nsgr:

Copy AMD kexts (1.44) from pendrive to hard disk - use TAB key to autocomplete name directory/folder:

cp -v -r /Volumes/OS\ X\ Base\ System/System/Library/Extensions/AMDSupport.kext /Volumes/Macintosh\ HD/System/Library/Extensions/

cp -v -r /Volumes/OS\ X\ Base\ System/System/Library/Extensions/AMDFramebuffer.kext /Volumes/Macintosh\ HD/System/Library/Extensions/

cp -v -r /Volumes/OS\ X\ Base\ System/System/Library/Extensions/AMD6000Controller.kext /Volumes/Macintosh\ HD/System/Library/Extensions/

On reboot, Selecting Apple/About this Mac/System Report/Software/Extensions showed the 1.44 versions were now recognized and loaded.

Now the next step was to load the X3000 (v1.51) kext...

No need for single or recovery boot here... Just run Terminal as usual...

After login, load AMDRadeonX3000.kext - in Terminal:

Remember, AMDRadeonX3000.kext moved to /DisableExtensions directory.

cd /DisableExtensions

sudo kextload AMDRadeonX3000.kext

Note: These were nsgr's instructions. My disabled AMD (1.51) Kexts were in a folder called AMD_Kexts, so the above two lines where changed to

cd /AMD_kexts


sudo kextload AMDRadeonX3000.kext


As soon as I did this, temperatures plummeted...


 
Do you know which version of Sierra was on the USB stick?

I'm afraid this method probably won't work for me either with the dependency error in my 1.4.8 kexts.


I guess I can only tell you what I did...

Originally I had moved the AMD (1.51)*.kexts to a folder called AMD_kexts, and did the EFI thing...

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

After learning that there are three Kexts that have to be replaced with earlier versions:

I pulled them off an old Sierra install USB... Which gave me 1.44 versions After disabling SIP, I booted into Recovery, and copied them to the /System/Library/Extensions... With the following commands given to me by nsgr:

Copy AMD kexts (1.44) from pendrive to hard disk - use TAB key to autocomplete name directory/folder:

cp -v -r /Volumes/OS\ X\ Base\ System/System/Library/Extensions/AMDSupport.kext /Volumes/Macintosh\ HD/System/Library/Extensions/

cp -v -r /Volumes/OS\ X\ Base\ System/System/Library/Extensions/AMDFramebuffer.kext /Volumes/Macintosh\ HD/System/Library/Extensions/

cp -v -r /Volumes/OS\ X\ Base\ System/System/Library/Extensions/AMD6000Controller.kext /Volumes/Macintosh\ HD/System/Library/Extensions/

On reboot, Selecting Apple/About this Mac/System Report/Software/Extensions showed the 1.44 versions were now recognized and loaded.

Now the next step was to load the X3000 (v1.51) kext...

No need for single or recovery boot here... Just run Terminal as usual...

After login, load AMDRadeonX3000.kext - in Terminal:

Remember, AMDRadeonX3000.kext moved to /DisableExtensions directory.

cd /DisableExtensions

sudo kextload AMDRadeonX3000.kext

Note: These were nsgr's instructions. My disabled AMD (1.51) Kexts were in a folder called AMD_Kexts, so the above two lines where changed to

cd /AMD_kexts

sudo kextload AMDRadeonX3000.kext


As soon as I did this, temperatures plummeted...


 
No, unfortunately all of the 1.4.8 kexts which I extracted from 10.12.2 have the same dependency error when I run kextutil, not only the AMDRadeonX3000 1.4.8 kext.

Your most likely option would be to enter the Recovery Mode (Command + R) graphical interface.

Then locate the loaded AMD kexts. Do not mount any partition to locate only the AMD kexts on the partitions mounted by Recovery Mode.

You can copy the kextstat command from Sierra 10.12.5 installed on the hard disk to a pendrive and try to use it in Recovery Mode.

Kextstat would show which version of the AMD kexts used in Recovery Mode.

In Sierra 10.12.5 installed on hard disk -> Finder -> Go -> Go to Folder -> /usr/sbin/ -> copy kextstat to pendrive.

1 - Enter Recovery Mode graphical (Command + R)

2 - Utilities -> Terminal

3 - Check if kexts AMD are loaded (show AMD6000Controller, AMDSupport and AMDFramebuffer)

ioreg | grep AMD


4 - Show kexts AMD loaded? Yes, then locate kexts AMD.

find / -name AMDSupport.kext

find / -name AMDFramebuffer.kext

find / -name AMD6000Controller.kext

It is usually in /System/Library/Extensions - Recovery Mode graphical (OS X Base System).


5 - Copy kexts AMD6000Controller.kext, AMDSupport.kext and AMDFramebuffer.kext to hard disk or pendrive.

Example:
AMD kexts found in /System/Library/Extensions

Pendrive mounted with disk util in /Volumes/pendrive-temp

cp -v -r /System/Library/Extensions/AMDSupport.kext /Volumes/pendrive-temp

cp -v -r /System/Library/Extensions/AMDFramebuffer.kext /Volumes/pendrive-temp

cp -v -r /System/Library/Extensions/AMD6000Controller.kext /Volumes/pendrive-temp


6 - Remember, SIP disable.

csrutil disable


7 - If you copied the command kextstat to the pendrive, you can execute it by the pendrive.

To run commands outside the system folders, you must enter " ./ " before the command.

Example kextstat located on the pendrive in /Volumes/pendrive-temp :

cd /Volumes/pendrive-temp

Use chmod +x to transform kextstat in excecutable.

chmod +x kextstat

Run kextstat -> show version kexts AMD

./kextstat | grep AMD


8 - Go to " / "

cd /


9 - Restart the system

reboot


10 - Enter Mac OS Sierra 10.12.5, after login graphical, copy (Finder) kexts AMD to folder. Example folder kexts-amd-recovey-mode


11 - Try load kexts AMD:

cd /kexts-amd-recovey-mode

sudo kextload AMDSupport.kext

sudo kextload AMDFramebuffer.kext

sudo kextload AMD6000Controller.kext


12 - Loaded OK? Yes, then load AMDRadeonX3000.kext (1.5.1).

cd /folder-with-AMDRadeonX3000.kext

sudo kextload AMDRadeonX3000.kext


13 - Verify temperature with Istat Menu

14 - If AMDSupport.kext, AMDFramebuffer.kext, AMD6000Controller.kext loaded OK, then copy to /System/Library/Extensions to load at boot time. - SIP disable to unlock folder /System and allowing you to place files inside.

15 - AMDRadeonX3000.kext (1.5.1) put outside /System/Library/Extensions and always load manual mode.

16 - Everything is OK? Enable SIP.

Recovery Mode (Command + R)

csrutil enable
 
Last edited:
In step 3, the only AMD Kext that shows up of the three we're looking for is the AMD6000Controller.

AMD6000Controller <class AMD6000Controller, id 0x10000053e, registered, matched, active, busy 0 (o ms, retain 5>

The other ones which show up in the list are AMDLegacySupport, AMDLegacyFramebuffer, AMDLegacyStub, and AMDLegacyAppServices.

Should I use the legacy ones?

I also didn't manage to run kextstat from my USB stick in Recovery Mode, but i checked the version.plist after logging in to Sierra again and AMD6000Controller, AMDLegacySupport, and AMDLegacyFramebuffer are all on version 1.50.


Your most likely option would be to enter the Recovery Mode (Command + R) graphical interface.

Then locate the loaded AMD kexts. Do not mount any partition to locate only the AMD kexts on the partitions mounted by Recovery Mode.

You can copy the kextstat command from Sierra 10.12.5 installed on the hard disk to a pendrive and try to use it in Recovery Mode.

Kextstat would show which version of the AMD kexts used in Recovery Mode.

In Sierra 10.12.5 installed on hard disk -> Finder -> Go -> Go to Folder -> /usr/sbin/ -> copy kextstat to pendrive.

1 - Enter Recovery Mode graphical (Command + R)

2 - Utilities -> Terminal

3 - Check if kexts AMD are loaded (show AMD6000Controller, AMDSupport and AMDFramebuffer)

ioreg | grep AMD


4 - Show kexts AMD loaded? Yes, then locate kexts AMD.

find / -name AMDSupport.kext

find / -name AMDFramebuffer.kext

find / -name AMD6000Controller.kext

It is usually in /System/Library/Extensions - Recovery Mode graphical (OS X Base System).


5 - Copy kexts AMD6000Controller.kext, AMDSupport.kext and AMDFramebuffer.kext to hard disk or pendrive.

Example:
AMD kexts found in /System/Library/Extensions

Pendrive mounted with disk util in /Volumes/pendrive-temp

cp -v -r /System/Library/Extensions/AMDSupport.kext /Volumes/pendrive-temp

cp -v -r /System/Library/Extensions/AMDFramebuffer.kext /Volumes/pendrive-temp

cp -v -r /System/Library/Extensions/AMD6000Controller.kext /Volumes/pendrive-temp


6 - Remember, SIP disable.

csrutil disable


7 - If you copied the command kextstat to the pendrive, you can execute it by the pendrive.

To run commands outside the system folders, you must enter " ./ " before the command.

Example kextstat located on the pendrive in /Volumes/pendrive-temp :

cd /Volumes/pendrive-temp

Use chmod +x to transform kextstat in excecutable.

chmod +x kextstat

Run kextstat -> show version kexts AMD

./kextstat | grep AMD


8 - Go to " / "

cd /


9 - Restart the system

reboot


10 - Enter Mac OS Sierra 10.12.5, after login graphical, copy (Finder) kexts AMD to folder. Example folder kexts-amd-recovey-mode


11 - Try load kexts AMD:

cd /kexts-amd-recovey-mode

sudo kextload AMDSupport.kext

sudo kextload AMDFramebuffer.kext

sudo kextload AMD6000Controller.kext


12 - Loaded OK? Yes, then load AMDRadeonX3000.kext (1.5.1).

cd /folder-with-AMDRadeonX3000.kext

sudo kextload AMDRadeonX3000.kext


13 - Verify temperature with Istat Menu

14 - If AMDSupport.kext, AMDFramebuffer.kext, AMD6000Controller.kext loaded OK, then copy to /System/Library/Extensions to load at boot time. - SIP disable to unlock folder /System and allowing you to place files inside.

15 - AMDRadeonX3000.kext (1.5.1) put outside /System/Library/Extensions and always load manual mode.

16 - Everything is OK? Enable SIP.

Recovery Mode (Command + R)

csrutil enable
 
Last edited:
Do you know which version of Sierra was on the USB stick?

I'm afraid this method probably won't work for me either with the dependency error in my 1.4.8 kexts.

Well I'm not sure, but using "get info" on the Install MacOS Sierra app, It reports version 10.12.0.49 with a creation date of Sept 13, 2016, so I imagine it was the initial version when Sierra came out.
 
I hesitate to go through all this and then still having to load a kext at every boot. How bad is a warmer MPB? The battery doesn't last as long as before, but it doesn't overheat when working, it just gets a little warmer.

The whole thing with other (newer) versions of the kexts makes me wonder if the update to 10.12.5 caused the AMD videocard to break. Before the update I had no problems, it started shortly after the update.
 
I hear you Bonaire.

I like the freedom to use my MBP on battery. Having to manually load a kext at boot time is a nuisance, but I seldom reboot. I use safe sleep mode, ie. just close the lid, and contents of RAM are saved to the hard disk and RAM is left powered to permit quick recovery. The AMDRadeonX3000 kext stays installed. Opening the lid immediately restores the system.

It's not system temperature that appeals to me, but the significant reduction of current draw on the battery. This increases battery life from 2.5 hours to 5 hours on my system with browser and mail running.
 
For me at least the temperature increase is very significant. My idle temperature as soon as I open the lid is currently 45-50C. At about 10% CPU load my temperature is between 60-65C. This is maybe one or two tabs open browsing Reddit / reading emails.

While watching YouTube videos (15% CPU load) my machine rests between 70-80C but after some time, after about one or two 50 minute shows on Netflix, the temperature can rise up to 90-95C (15% CPU usage) and the fans get very loud.

I've also noticed that in extreme cases, if I have about 6-8 tabs open, have Discord running in the background and have Transmission running my battery will actually drain very slowly despite being plugged in.


I hesitate to go through all this and then still having to load a kext at every boot. How bad is a warmer MPB? The battery doesn't last as long as before, but it doesn't overheat when working, it just gets a little warmer.

The whole thing with other (newer) versions of the kexts makes me wonder if the update to 10.12.5 caused the AMD videocard to break. Before the update I had no problems, it started shortly after the update.
 
Last edited:
For me at least the temperature increase is very significant. My idle temperature as soon as I open the lid is currently 45-50C. At about 10% CPU load my temperature is between 60-65C. This is maybe one or two tabs open browsing Reddit / reading emails.

While watching YouTube videos (15% CPU load) my machine rests between 70-80C but after some time, after about one or two 50 minute shows on Netflix, the temperature can rise up to 90-95C (% CPU usage) and the fans get very loud.

I've also noticed that in extreme cases, if I have about 6-8 tabs open, have Discord running in the background and have Transmission running my battery will actually drain very slowly despite being plugged in.

I've been running for about a half hour now this morning reading mail and catching up on the news. My GPU is showing 33c and the CPU is showing 39c. Istat reports I have 4 hours and 44 minutes left on this battery charge, and System Report /Power indicates the system is drawing 1048 ma from the battery (versus 2272 ma before the kext thermal discovery by nsgr.)

Worth it? You bet!
 
Argh, that sounds incredible man. At this point I've even resorted to trying to figure out if running on Ubuntu Mate could potentially resolve my temperature issues (since I might be unable to find usable kexts).

I would love to be able to use it as an actual laptop again because right now having it on my body would only make things much worse.

I've been running for about a half hour now this morning reading mail and catching up on the news. My GPU is showing 33c and the CPU is showing 39c. Istat reports I have 4 hours and 44 minutes left on this battery charge, and System Report /Power indicates the system is drawing 1048 ma from the battery (versus 2272 ma before the kext thermal discovery by nsgr.)

Worth it? You bet!
 
In step 3, the only AMD Kext that shows up of the three we're looking for is the AMD6000Controller.



The other ones which show up in the list are AMDLegacySupport, AMDLegacyFramebuffer, AMDLegacyStub, and AMDLegacyAppServices.

Should I use the legacy ones?

I also didn't manage to run kextstat from my USB stick in Recovery Mode, but i checked the version.plist after logging in to Sierra again and AMD6000Controller, AMDLegacySupport, and AMDLegacyFramebuffer are all on version 1.50.

Yes, AMD6000Controller.kext - AMDLegacySupport.kext - AMDLegacyFramebuffer.kext - You can use.

Sometimes I've seen the Legacy kexts loaded on Mac OS Sierra 10.12.3 installed on the hard disk with kextstat.

Did you look at the /System/Library/Extensions folder to see if you had the other AMD kexsts (Recovery Mode)?


List files and directories on Recovery Mode:

ls /System/Library/Extensions/ | grep AMD

But do a test before loading these kexts manually. Do not place in the /System/Library/Extensions (Sierra installed on hard disk) - before making manual loading test.


There is a sequence to load the AMD kexts.

1 - Load AMDLegacySupport.kext or AMDLegacyFramebuffer.kext first. These two kexts have to be loaded before the AMD6000Controller.kext. Once I tried loading the kext AMD before and received an error message.

sudo kextload AMDLegacySupport.kext

sudo kextload AMDLegacyFramebuffer.kext


2 - Load AMD6000Controller.kext.

sudo kextload AMD6000Controller.kext


3 - Load AMDRadeonX3000.kext

sudo kextload AMDRadeonX3000.kext


You can also test the installer over the Internet (load OS X Base System from Internet - Apple Server website) - And see if the version of the AMD kexts is earlier than 1.5.0 (your kexts AMD Recovery Mode):

From Apple:
Or use Option-Command-R or Shift-Option-Command-R to start up from macOS Recovery over the Internet.

https://support.apple.com/en-gb/HT201255
 
Last edited:
Yes, the regular (non legacy) kexts for Framebuffer and Support were also in there, I move them to my thumb stick too even though they weren't loaded. Those are also version 1.5.0, just like the Legacy kexts.

I just tried to load the AMDLegacySupport and AMDSupport.kext which I pulled from recovery mode and unfortunately I got the same error message as before...


Yes, AMD6000Controller.kext - AMDLegacySupport.kext - AMDLegacyFramebuffer.kext - You can use.

Sometimes I've seen the Legacy kexts loaded on Mac OS Sierra 10.12.3 installed on the hard disk with kextstat.

Did you look at the /System/Library/Extensions folder to see if you had the other AMD kexsts (Recovery Mode)?


List files and directories on Recovery Mode:

ls /System/Library/Extensions/ | grep AMD

But do a test before loading these kexts manually. Do not place in the /System/Library/Extensions (Sierra installed on hard disk) - before making manual loading test.


There is a sequence to load the AMD kexts.

1 - Load AMDLegacySupport.kext or AMDLegacyFramebuffer.kext first. These two kexts have to be loaded before the AMD6000Controller.kext. Once I tried loading the kext AMD before and received an error message.

sudo kextload AMDLegacySupport.kext

sudo kextload AMDLegacyFramebuffer.kext


2 - Load AMD6000Controller.kext.

sudo kextload AMD6000Controller.kext


3 - Load AMDRadeonX3000.kext

sudo kextload AMDRadeonX3000.kext


You can also test the installer over the Internet (load OS X Base System from Internet - Apple Server website):

From Apple:
Or use Option-Command-R or Shift-Option-Command-R to start up from macOS Recovery over the Internet. And see if the version of the AMD kexts is earlier than 1.5.0 (your kexts AMD Recovery Mode).

https://support.apple.com/en-gb/HT201255
 
Yes, the regular (non legacy) kexts for Framebuffer and Support were also in there, I move them to my thumb stick too even though they weren't loaded. Those are also version 1.5.0, just like the Legacy kexts.

I just tried to load the AMDLegacySupport and AMDSupport.kext which I pulled from recovery mode and unfortunately I got the same error message as before...

This is weird. I can load the kexts 1.4.8 (Sierra 10.12.3 pendrive installer) on Sierra 10.12.5 which originally had kexts 1.5.1.

Do a test by loading the AMD kexts 1.5.1 manually.

These AMD kexts are the ones you moved by the AppleMacFinder / FGuarani method.

Now it will not be possible to display an error since it is the kexts that were installed on the hard disk.

cd /DisableExtensions

sudo kextload AMDSupport.kext

sudo kextload AMDFramebuffer.kext

sudo kextload AMD6000Controller.kext

sudo kextload AMDRadeonX3000.kext


Check the stability of the system.

Gfxcardstatus Steve Schow -> Integrated Only

Check the temperature with the Istat Menu.
 
Last edited:
The 1.5.1 AMDSupport.kext loaded perfectly but then for AMDFramebuffer.kext and AMD6000Controller.kext I got an error message.

"AMDFramebuffer.kext failed to load - (libkern/kext) dependency resolution failure" and the same for AMD6000Controller.kext .

Same error for 1.5.1 Legacy AMDFramebuffer.kext. Legacy AMDSupport.kext loads fine.

This is weird. I can load the kexts 1.4.8 (installer pendrive Sierra 10.12.3) into Sierra 10.12.5 with kexts 1.5.1 that were installed on the hard disk.

Do a test by loading the AMD kexts 1.5.1 manually.

These AMD kexts are the ones you moved by the AppleMacFinder / FGuarani method.

Now it will not be possible to display an error since it is the kexts that were installed on the hard disk.

cd /DisableExtensions

sudo kextload AMDSupport.kext

sudo kextload AMDFramebuffer.kext

sudo kextload AMD6000Controller.kext

sudo kextload AMDRadeonX3000.kext


Check the stability of the system.

Gfxcardstatus Steve Schow -> Integrated Only

Check the temperature with the Istat Menu.
 
Last edited:
The 1.5.1 AMDSupport.kext loaded perfectly but then for AMDFramebuffer.kext and AMD6000Controller.kext I got an error message.

"AMDFramebuffer.kext failed to load - (libkern/kext) dependency resolution failure" and the same for AMD6000Controller.kext .

My ioreg

ioreg | grep AMD

+-o AMD6000Controller <class AMD6000Controller, id 0x1000003cd, registered, matched, active, busy 0 (0 ms), retain 5>

- - - - - - o ATIFramebufferNI <class AMDFramebuffer, id 0x1000003ec, registered, matched, active, busy 0 (6 ms), retain 16>

.
.
.

+-o AMDSupport <class AMDSupport, id 0x1000003ce, registered, matched, active, busy 0 (0 ms), retain 5>



AMD6000Controller (1.5.1) depends / load AMDFramebuffer (1.5.1) .

AMDSupport
no show dependency.

Try to load the AMD6000Controller.kext (1.5.1) before the AMDFramebuffer.kext (1.5.1).
[doublepost=1499115372][/doublepost]You can use kextlibs to know which kext AMD it requires.


cd /DisableExtensions

kextlibs AMDFramebuffer.kext

For all architectures:

com.apple.iokit.IOGraphicsFamily = 515.3

com.apple.kext.AMDSupport = 1.4.8

com.apple.kpi.iokit = 16.6

com.apple.kpi.libkern = 16.6

com.apple.kpi.mach = 16.6

For x86_64:
15 symbols not found in any library kext.


kextlibs AMD6000Controller.kext

For all architectures:

com.apple.iokit.IOPCIFamily = 2.9

com.apple.kext.AMDSupport = 1.4.8

com.apple.kpi.iokit = 16.6

com.apple.kpi.libkern = 16.6

com.apple.kpi.mach = 16.6


For x86_64:

294 symbols not found in any library kext.
 
I get the same error message, even when the AMD6000Controller.kext is the first thing I try to load.

AMDFramebuffer.kext

For all architectures:
com.apple.iokit.IOGraphicsFamily = 515.3
com.apple.kpi.iokit = 16.6
com.apple.kpi.libkern = 16.6
com.apple.kpi.mach = 16.6

For x86_64:
219 symbols not found in any library kext.


AMD6000Controller.kext

For all architectures:
com.apple.iokit.IOPCIFamily = 2.9
com.apple.kpi.iokit = 16.6
com.apple.kpi.libkern = 16.6
com.apple.kpi.mach = 16.6

For x86_64:
314 symbols not found in any library kext.



My ioreg

ioreg | grep AMD

+-o AMD6000Controller <class AMD6000Controller, id 0x1000003cd, registered, matched, active, busy 0 (0 ms), retain 5>

- - - - - - o ATIFramebufferNI <class AMDFramebuffer, id 0x1000003ec, registered, matched, active, busy 0 (6 ms), retain 16>

.
.
.

+-o AMDSupport <class AMDSupport, id 0x1000003ce, registered, matched, active, busy 0 (0 ms), retain 5>



AMD6000Controller (1.5.1) depends / load AMDFramebuffer (1.5.1) .

AMDSupport
no show dependency.

Try to load the AMD6000Controller.kext (1.5.1) before the AMDFramebuffer.kext (1.5.1).
[doublepost=1499115372][/doublepost]You can use kextlibs to know which kext AMD it requires.


cd /DisableExtensions

kextlibs AMDFramebuffer.kext

For all architectures:

com.apple.iokit.IOGraphicsFamily = 515.3

com.apple.kext.AMDSupport = 1.4.8

com.apple.kpi.iokit = 16.6

com.apple.kpi.libkern = 16.6

com.apple.kpi.mach = 16.6

For x86_64:
15 symbols not found in any library kext.


kextlibs AMD6000Controller.kext

For all architectures:

com.apple.iokit.IOPCIFamily = 2.9

com.apple.kext.AMDSupport = 1.4.8

com.apple.kpi.iokit = 16.6

com.apple.kpi.libkern = 16.6

com.apple.kpi.mach = 16.6


For x86_64:

294 symbols not found in any library kext.
 
Last edited:
I get the same error message, even when the AMD6000Controller.kext is the first thing I try to load.

AMDFramebuffer.kext

For all architectures:
com.apple.iokit.IOGraphicsFamily = 515.3
com.apple.kpi.iokit = 16.6
com.apple.kpi.libkern = 16.6
com.apple.kpi.mach = 16.6

For x86_64:
219 symbols not found in any library kext.


AMD6000Controller.kext

For all architectures:
com.apple.iokit.IOPCIFamily = 2.9
com.apple.kpi.iokit = 16.6
com.apple.kpi.libkern = 16.6
com.apple.kpi.mach = 16.6

For x86_64:
314 symbols not found in any library kext.

Very strange. These kexts 1.5.1 were already installed on your system.

Try kextutil with alternative repository option.

Example kexts AMD 1.5.1 in /DisableExtensions


cd /DisableExtensions

kextutil -r /DisableExtensions AMD6000Controller.kext


https://developer.apple.com/legacy/...arwin/Reference/ManPages/man8/kextutil.8.html
 
Okay, I ran sudo kexutil -r /AMD_Kexts AMD6000Controller.kext / AMDFramebuffer.kext & AMDSupport.kext followed by sudo kextload AMDRadeon x3000.kext

kextstat shows that AMDLegacySupport 1.5.1, AMD600Controller 1.5.1 , AMDRadeonX3000 1.5.1 , AMDSupport 1.5.1 & AMDFramebuffer 1.5.1 are all loaded. I'm not sure when the LegacySupport kext loaded because I didn't do that but whatever.

Thermals weren't affected by any of this.


Very strange. These kexts 1.5.1 were already installed on your system.

Try kextutil with alternative repository option.

Example kexts AMD 1.5.1 in /DisableExtensions


cd /DisableExtensions

kextutil -r /DisableExtensions AMD6000Controller.kext


https://developer.apple.com/legacy/...arwin/Reference/ManPages/man8/kextutil.8.html
 
Okay, I ran sudo kexutil -r /AMD_Kexts AMD6000Controller.kext / AMDFramebuffer.kext & AMDSupport.kext followed by sudo kextload AMDRadeon x3000.kext

kextstat shows that AMDLegacySupport 1.5.1, AMD600Controller 1.5.1 , AMDRadeonX3000 1.5.1 , AMDSupport 1.5.1 & AMDFramebuffer 1.5.1 are all loaded. I'm not sure when the LegacySupport kext loaded because I didn't do that but whatever.

Thermals weren't affected by any of this.

Even the Macbook Pro idle?

Close all programs, Chrome, Firefox, or whatever and watch the temperature (Istat Menu).

What is the model of your Intel video card?
 
Yup, 100% idle in iStat I'm sitting at 53C steady.

Intel HD graphics 3000 512 MB.

What is your Macbook Pro model?

Example:

About this Mac -> System Report -> Hardware -> Model Identifier: MacBookPro8,2

About this Mac -> System Report -> Graphics / Displays -> AMD Radeon HD 6750M:

Vendor: ATI (0x1002)

Device ID: 0x6741



Terminal:

ioreg -l | grep board-id

"board-id" = <"Mac-94245A3940C91C80">

When you load kext, then AppleGraphicsControl.kext and AppleGraphicsPowerManagement.kext

When you load the AMD kexts, then the AppleGraphicsControl.kext and AppleGraphicsPowerManagement.kext are loaded with the PowerState settings of your AMD video card.
 
Last edited:
MacBookPro8,3

AMD Radeon HD 6770M ( I did notice that after loading the kexts it simply said 6xxx)
Vendor: ATI(0x1002)
Device ID: 0x6740

"board-id" = <"Mac-942459F5819B171B">




What is your Macbook Pro model?

Example:

About this Mac -> System Report -> Hardware -> Model Identifier: MacBookPro8,2

About this Mac -> System Report -> Graphics / Displays -> AMD Radeon HD 6750M:

Vendor: ATI (0x1002)

Device ID: 0x6741



Terminal:

ioreg -l | grep board-id

"board-id" = <"Mac-94245A3940C91C80">
 
MacBookPro8,3

AMD Radeon HD 6770M ( I did notice that after loading the kexts it simply said 6xxx)
Vendor: ATI(0x1002)
Device ID: 0x6740

"board-id" = <"Mac-942459F5819B171B">

I think your Macbook Pro does not use AMDRadeonX3000.kext.

I have to look at the Apple kexts above to see what the kext would be for your Macbook Pro model.
 
Hi Apple Mac Finder. I must say : Thank you very much!! After trying over 10 suggestion on the internet, Finally only this solution that could save my mac.

For your info, I am the participant of apple recall program in 2015. After that, My mac was fine for 2 years But however, the discrete gpu problem comes again in 2017 :( So I tried your tips and magically my mac working again.

But, I wanna ask some question : My mac is working now, but not all of your step is done.

After success with create a new one file of "cpu-power-prefs", then I type this command,
chattr +i "/sys/firmware/efi/efivars/gpu-power-prefs-fa4ce28d-b62f-4c99-9cc3-6815686e30f9"
it says chattr : not found. So I skip this command. after that, reboot command also not working. So I force shutdown the mac. In booting menu, I choose boot normally using OS X and my OS X working again.

1. Is there any problem if I skip the chattr command?
2. What step that should I do after this. Should I Installing the gpu switch apps?
3. In the setting > energy saver, there's mode "automatic graphics switching". How to turn off this mode without change to discrete graphics.

Sorry for silly question, I am just a laggard people that blank about coding.
thank you
 
Ah, okay. Thanks for taking the time, I'm curious to hear about your findings.

__________
Edit: hmm but it just occurred to me, the AMDRadeonX3000.kext was loaded in recovery mode.

Reading through some hackintosh forums, could it be that my 6770M device ID is missing from the kexts or something?

When the kexts were loaded my GPU showed up simply as a 6xxx.
__________

I think your Macbook Pro does not use AMDRadeonX3000.kext.

I have to look at the Apple kexts above to see what the kext would be for your Macbook Pro model.
 
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.