KernelXCPM=true is to be used only if you need it.
If you can get CPU PM working with SSDT.aml and KernelXCPM=false, that is what you should use.
<string>AppleLPC</string>
<key>IONameMatch</key>
<array>
<string>pci8086,2811</string>
<string>pci8086,2815</string>
<string>pci8086,27b9</string>
<string>pci8086,27bd</string>
<string>pci8086,2670</string>
<string>pci8086,8119</string>
<string>pci8086,2916</string>
<string>pci8086,3a18</string>
<string>pci8086,3b00</string>
<string>pci8086,3b01</string>
<string>pci8086,3b02</string>
<string>pci8086,3b09</string>
<string>pci8086,1e44</string>
<string>pci10de,aac</string>
<string>pci10de,aae</string>
<string>pci10de,aaf</string>
<string>pci10de,d80</string>
<string>pci10de,d81</string>
<string>pci10de,d82</string>
<string>pci10de,d83</string>
</array>
CPU PM yes. IGPU/headless, no native IGPU PMDoes guide apply when IGPU is used headless
Thanks RehabMan, finally I have it working as it should with good idle frequency @1.6GHz and the similar wattage as in Windows10 - with SSDT.aml and KernelXCPM=false (from what I understand - I should leave KernelPm=true and PluginType=false when using SSDT.aml ?) and other thing that bothers me is LPC. AppleLPC.kext loads only when I check "AddDTGP" and "FakeLPC" fixes, but in IOReg it seems as it loads some old ICH10 controller. My mobo has Q77 Chipset and it's ID is 1e47 and AppleLPC loads as 3a18, which is an old one. How should I deal with it ?
Also - when I try to verify everything as the guide says, at the point of XCPM in Console/Search - I have no results.
EDIT:
I've just checked contents of AppleLPC.kext (from 10.14.2) and that's all that's sitting there:
Code:<string>AppleLPC</string> <key>IONameMatch</key> <array> <string>pci8086,2811</string> <string>pci8086,2815</string> <string>pci8086,27b9</string> <string>pci8086,27bd</string> <string>pci8086,2670</string> <string>pci8086,8119</string> <string>pci8086,2916</string> <string>pci8086,3a18</string> <string>pci8086,3b00</string> <string>pci8086,3b01</string> <string>pci8086,3b02</string> <string>pci8086,3b09</string> <string>pci8086,1e44</string> <string>pci10de,aac</string> <string>pci10de,aae</string> <string>pci10de,aaf</string> <string>pci10de,d80</string> <string>pci10de,d81</string> <string>pci10de,d82</string> <string>pci10de,d83</string> </array>
And for the XPCM verification in Console/Search - from what I understood - it 's more Haswell matter than Ivy Bridge, so I should not be bothered ?
I have removed FakeCPUID and PM still not working. Attached new debug files, thanks!Do you need the FakeCPUID?
You should inject a fake device-id for LPC that is one of these:
View attachment 371262
You mean, like that ?
No.
Becuase AppleLPC.kext Info.plist matches on IOName, LPC injection is done by injecting "compatible". (good idea to also inject device-id).
Ok, got it. It changed nothing in my opinion in the whole system stability and performance, but it's good to know something new. Weird thing for me is that, when I enter the closest LPC id to my specs (closest to Q77 is Z77's id 1e44) - it still loads only 3a18 (old ICH10), when I enter some "mobile chipset" id like 1e55 (QM77) or 1e56 (QS77) - it loads correctly as it suppose to load. I don't think my configuration and chipset is mobile in any way Also, haven't found any real Mac on Q77 chipset....
EDIT: Changed to closest "non-mobile" LPC id from the list - 8c44 Intel: Z87 LPC Controller - the result is a little lower cpu temps in idle.