Contribute
Register

[Guide] Native Power Management for Laptops

I replaced the username manually to cover my real name :)

I believe it now works as I verified with Intel Power Gadget and IO explorer. Thanks again!
 
Your mistake is using _DSM->XDSM patch in config.plist/ACPI/DSDT/Patches with static patch.
This will rename not only OEM _DSM methods, but also _DSM methods you add with patches such as "Haswell LPC".
And that's why your "compatible" property is not being injected... it is in an XDSM method instead of _DSM.

What would you suggest? To remove the hotpatch? It was enabled by default on the plist from your repo, so I left it. I wasn't able to find much info on it.
 
Hey,
since you've helped me once I think you can do it twice.
Recently I've upgraded to high Sierra. Everything is working fine, USB, Backlight, Cameras and so on. The only struggle is the native PM. Without the generated ssdt or the xcpm method, everything is working fine. The cpu will lower the frequency and will stay at 800 Mhz in idle and will clock up but I won't have iGPU PM. When I put the created ssdt in my clover folder, the cpu will stay in x20 state most of the time even though there is nothing that uses the cpu. The same with the XCPM method, the cpu will stay at x20 most of the time and will drop to 1,9 ghz.
You might have a look on my ioreg and my dsdt/ssdt and can help me. Ive already tried various other smbios and everything but nothing helped.

Code:
Niklass-MacBook-Air:~ niggi$ kextstat|grep -y acpiplat

   15    2 0xffffff7f8265e000 0xa5000    0xa5000    com.apple.driver.AppleACPIPlatform (6.1) 642EF8D6-8F86-3F92-B450-FDC9BAE4F3DD <14 12 11 7 6 5 4 3 1>

Niklass-MacBook-Air:~ niggi$ kextstat|grep -y appleintelcpu

Niklass-MacBook-Air:~ niggi$ kextstat|grep -y applelpc

  107    0 0xffffff7f8271f000 0x3000     0x3000     com.apple.driver.AppleLPC (3.1) 7C24E741-BD4A-3917-83AC-E956A03ADC20 <106 12 5 4 3>

Niklass-MacBook-Air:~ niggi$ kextstat|grep -y applehda
 

Attachments

  • CLOVER 2.zip
    3.9 MB · Views: 72
  • ioreg.zip
    538.7 KB · Views: 66
Hey,
since you've helped me once I think you can do it twice.
Recently I've upgraded to high Sierra. Everything is working fine, USB, Backlight, Cameras and so on. The only struggle is the native PM. Without the generated ssdt or the xcpm method, everything is working fine. The cpu will lower the frequency and will stay at 800 Mhz in idle and will clock up but I won't have iGPU PM. When I put the created ssdt in my clover folder, the cpu will stay in x20 state most of the time even though there is nothing that uses the cpu. The same with the XCPM method, the cpu will stay at x20 most of the time and will drop to 1,9 ghz.
You might have a look on my ioreg and my dsdt/ssdt and can help me. Ive already tried various other smbios and everything but nothing helped.

Code:
Niklass-MacBook-Air:~ niggi$ kextstat|grep -y acpiplat

   15    2 0xffffff7f8265e000 0xa5000    0xa5000    com.apple.driver.AppleACPIPlatform (6.1) 642EF8D6-8F86-3F92-B450-FDC9BAE4F3DD <14 12 11 7 6 5 4 3 1>

Niklass-MacBook-Air:~ niggi$ kextstat|grep -y appleintelcpu

Niklass-MacBook-Air:~ niggi$ kextstat|grep -y applelpc

  107    0 0xffffff7f8271f000 0x3000     0x3000     com.apple.driver.AppleLPC (3.1) 7C24E741-BD4A-3917-83AC-E956A03ADC20 <106 12 5 4 3>

Niklass-MacBook-Air:~ niggi$ kextstat|grep -y applehda

No need for ssdtPRgen.sh generated SSDT.aml.
You only need SSDT-PluginType1.aml.
Consider different SMBIOS.

Your ACPI/origin files are too old. You forgot to press F4.
Read FAQ, "Problem Reporting" again. Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
 
Hey Rehabman,
ive played around with the freqvector script from Pikeralapha and hit the jackpot. The 3rd or forth 4th entry did the trick and now everything seems to work fine. All P-States are present in the AppleIntelInfo.kext and also the iGPU PM is working like a charm. I will try it with the PluginType1.aml and hope that it will work the same way as the ssdt works. As always, thanks for the help of yours, even though I got it working with dumb luck. If I will have problems with the other version I will come back :D.
Best regards
bLiNd
 
Thanks for the guide RehabMan!

You can also enable HWP for other SMBIOS by creating a patched resources injector for X86PlatformPlugin.kext (or by patching the kext itself). But that is a subject for another day.

Is there a related instruction set for using HWP and with iMac18,3 SMBIOS?
 
Thanks for the guide RehabMan!

You can also enable HWP for other SMBIOS by creating a patched resources injector for X86PlatformPlugin.kext (or by patching the kext itself). But that is a subject for another day.

Is there a related instruction set for using HWP and with iMac18,3 SMBIOS?

iMac18,3 would not be a typical choice for laptops.
I suspect iMac18,3 is also not enabled for HWP, so it would require patching X86PlatformPlugin.kext or creating an injector kext.
 
iMac18,3 would not be a typical choice for laptops.
I suspect iMac18,3 is also not enabled for HWP, so it would require patching X86PlatformPlugin.kext or creating an injector kext.

For native power management on desktop using iMac18,3 would you suggest just PluginType=1 to enable X86PlatformPlugin? Is there anything else that needs to be done for optimal performance?
 
For native power management on desktop using iMac18,3 would you suggest just PluginType=1 to enable X86PlatformPlugin?

Yes.

Is there anything else that needs to be done for optimal performance?

Nothing else necessary.
 
Back
Top