Jump to content
m.gbt

[GUIDE] Fix [AGPM controller: unknown platform] on-the-fly

Recommended Posts

This error message occurs because OS X searched your DSDT for a graphics device with a specific name and couldn't find it. This specific name is defined by the SMBIOS you use. Some will use GFX0, others will use IGPU.

?

At the boot, Clover will try to automatically detect the best SMBIOS for your computer based on its specifications, so, I'll assume you don't need to change your SMBIOS. The solution in this case is a simple rename of the graphics device in the DSDT.

?

However, you don't need to manually edit the DSDT for that. Instead, you may find easier to use Clover's on-the-fly DSDT patching feature.

?

1. How to find out which graphics device name to use

Open?/System/Library/Extensions/AppleGraphicsPowerManagement.kext/Contents/Info.plist and search for your product-name (e.g. MacBookPro8,1). If you don't know your product-name, because Clover automatically found an SMBIOS for you, you can discover by running in the terminal:

ioreg -l | grep product-name

Still using MacBookPro8,1 as an example, you'll see something like:

				<key>MacBookPro8,1</key>
				<dict>
					<key>IGPU</key>
					<dict>
						<key>Heuristic</key>
						...

That means the MacBookPro8,1 SMBIOS requires the name IGPU. If you didn't find your product-name in the Info.plist e.g. MacBookAir6,2 then you'll have to search for your board-id. You can discover your board-id by running in the terminal:

ioreg -l | grep board-id

Let's say you got?Mac-7DF21CB3ED6977E5, you'll find something like this in the mentioned Info.plist:

				<key>Mac-7DF21CB3ED6977E5</key>
				<dict>
					<key>IGPU</key>
					...

So, this board-id requires the name IGPU.

?

2. How to discover my current graphics device name

Open your DSDT (you can simply open MaciASL and it will extract your current system DSDT) and search for:

Name (_ADR, 0x00020000)

The parent device of this line is your graphics device. In my case:

        Device (GFX0)
        {
            Name (_ADR, 0x00020000)
            ...

My graphics device is named GFX0.

Note: if you can't find this line on your DSDT, it must be in one of your SSDTs. Using MaciASL, enter File > New from ACPI > SSDT-6 (for example). If you didn't drop your SSDTs, there will be many of them. I recommend to start looking at the higher order ones, they are more likely to be related to the graphics.

?

3. How to patch it

Now you could directly replace GFX0 by IGPU (using the examples above) in your DSDT, but if you're not willing to make modifications to it, you can use Clover for a simple patch like this. You would do it by adding the following DSDT patch to the ACPI section of?config.plist:

	<key>ACPI</key>
	<dict>
		<key>DSDT</key>
		<dict>
			<key>Name</key>
			<string>DSDT.aml</string>
			<key>Patches</key>
			<array>
				<dict>
					<key>Comment</key>
					<string>Rename GFX0 to IGPU</string>
					<key>Find</key>
					<data>
					R0ZYMA==
					</data>
					<key>Replace</key>
					<data>
					SUdQVQ==
					</data>
				</dict>
			</array>
          	...

Be careful: don't simply add this whole snippet to your config.plist as it may already contain an ACPI section, or an ACPI/DSDT section, or even an ACPI/DSDT/Patches section. Add to it only the missing lines, which will usually be the inner?<dict></dict> block.

?

Those very weird names you found in the snippet above like R0ZYMA== and SUdQVQ== are the base64 representations of the strings GFX0 and IGPU respectively. If you want to encode different names for some reason, you can use Base64 Encode?or the App Store's Base64Anywhere app.

Edited by m.gbt
updated to the new forums formatting

Share this post


Link to post
Share on other sites

Hm, if I try to replace all GFX0 to IGPU using Clover, it does not replace the "Device (GFX0)" entry, but all other entries. A bug in the search/replace algorithm?

Share this post


Link to post
Share on other sites

:)

?

Pardon pour mon mauvais Anglais (google traduction) , j'ai le problème avec AMD CPU (FX 8350 et Athlon 5350 APU (HD 6670/HD6850/HD7950) ?avec ce message AGPM inconnu sur Mavericks et Yosemite DP1/DP2 , je me posais la question si cela améliorerait les performances graphiques (fonctionnement correct également) ou c'est tout simplement cosmétique ?

?

si c'est le cas (amélioration perf graphiques) , le tutoriel n'est pas très clair pour moi , serait possible de l'avoir en Français ??

?

Merci :)

?

?

:)

?
Sorry for my bad English (google translation), I have the problem with AMD CPU (Athlon FX 8350 and 5350 APU (HD 6670 / HD6850 / HD7950) with this message AGPM unknown Mavericks on Yosemite and DP1 / DP2, I was wondering issue if it would improve the graphics performance (correct operation also) or is it just cosmetic??
?
if this is the case (improved graphics perf), the tutorial is not very clear to me, would be possible to have it in French??
?
thank you :)
?
look vidéo ?opengl = bad :( ? (HD 4670 / A 5350)

Sans titre.mp4.zip

Edited by gils83

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.