Contribute
Register

macOS Native CPU/IGPU Power Management

@RehabMan



So, I was able to follow up until step 5, when I became confused. If I understand correctly, since I have no current PM SSDT. I was to skip to step 6, which I did. I downloaded SSDT-XCPM.aml and moved it to Clover/ACPI/Patched. Then I used Xcode to edit Item 0 under ACPI/DSDT using the values in the patch listed.

I restarted, and did not have the the Generate PluginType option under ACPI/SSDT. Am I supposed to add that manually in Xcode? Sorry, I lost the flick at step 5. Problem reporting files attached, along with my AppleIntelInfo.kext output and the screenshot from Intel Power Gadget (if needed).

No need for both SSDT-XCPM.aml and config.plist/ACPI/SSDT/Generate/PluginType=true.
Each solution does the same thing, conflicts with each other, therefore the solutions are mutually exclusive.
Generate/PluginType=true works in more cases and is easy to apply.
Implement only one method.

Note: Your debug files show CPU PM working (X86PlatformPlugin is loaded on CPU0). It is working due to SSDT-XCPM.aml. If you want to step there and not explore Generate/PluginType=true, you may.
 
This is the difference in my P-states:
(Generated SSDT vs PluginType)
What's better?
View attachment 323678

Not possible to tell exactly what you're doing without problem reporting files for each scenario.
The pstates observed will not differ due to method of plugin-type injection.
Pstates observed differs only due to SMBIOS choice and length of time monitoring (with AppleIntelInfo.kext), and variety of tasks performed while monitoring.
 
No need for both SSDT-XCPM.aml and config.plist/ACPI/SSDT/Generate/PluginType=true.
Each solution does the same thing, conflicts with each other, therefore the solutions are mutually exclusive.
Generate/PluginType=true works in more cases and is easy to apply.
Implement only one method.

Note: Your debug files show CPU PM working (X86PlatformPlugin is loaded on CPU0). It is working due to SSDT-XCPM.aml. If you want to step there and not explore Generate/PluginType=true, you may.

Thank you. So, if I wanted to go the plugintype route, I would simply add that text in the correct place in Xcode, delete the .aml file, and theoretically be done?
 
Thank you. So, if I wanted to go the plugintype route, I would simply add that text in the correct place in Xcode, delete the .aml file, and theoretically be done?

Yes.

Note: Both methods inject "plugin-type"=1 via ACPI (_DSM method) on the first Processor object.
 
Yes.

Note: Both methods inject "plugin-type"=1 via ACPI (_DSM method) on the first Processor object.

LOL! Thank you. My mind couldn’t accept that it could be that simple. Sometimes I’m my own worst enemy.
 
IGPU disabled, useless

CPU PM working.

Toleda, thank you. I deleted the IGPU patch. Decided since CPU PM is working, I'll leave well enough alone. Much obliged.
 
Hi all,

a quick question:
why are my CPU under the name PR0 in IOReg and not under CPU?
I have the PluginType checkbox in Clover.
 

Attachments

  • Screen Shot 2018-04-11 at 11.19.47.png
    Screen Shot 2018-04-11 at 11.19.47.png
    48 KB · Views: 108
  • Screen Shot 2018-04-11 at 11.20.58.png
    Screen Shot 2018-04-11 at 11.20.58.png
    52.2 KB · Views: 131
  • config.plist
    24.7 KB · Views: 198
Hi all,

a quick question:
why are my CPU under the name PR0 in IOReg and not under CPU?
I have the PluginType checkbox in Clover.

Because your DSDT uses PRxx instead of CPUx for the Processor objects.
Such names are an arbitrary choice.
 
Because your DSDT uses PRxx instead of CPUx for the Processor objects.
Such names are an arbitrary choice.

thanks a lot!
for some cosmetic reasons I'd prefer them under cpu.
should I extract and edit DSDT to fix the "issue"?
 
Back
Top