Contribute
Register

Quick Guide to Generate a SSDT for CPU Power Management

Certain plists in X86PlatformPlugin are HWP enabled.

Note: Just because HWP is a hardware controlled CPU PM mechanism, does not mean it cannot be tweaked/adjusted by software.
Yeah, the latest Mac mini smbios I am using have hwp enabled. My question is that do EIST and hwp get along? Which takes the charge or has the say of which frequency cpu needs to stay in?
 
Yeah, the latest Mac mini smbios I am using have hwp enabled. My question is that do EIST and hwp get along? Which takes the charge or has the say of which frequency cpu needs to stay in?

HWP (aka SpeedShift) is essentially hardware controlled SpeedStep.

If you're interested in how software can control HWP, you should read the documentation (programmers guide) provided by Intel.
 
HWP (aka SpeedShift) is essentially hardware controlled SpeedStep.

If you're interested in how software can control HWP, you should read the documentation (programmers guide) provided by Intel.
Got it. Btw, the fakesmc companion kext for reporting cpu voltage is not working properly for me(your fork). It shows 0.6v most of the time. Are there any methods tweaking it or reporting bug etc? My board is Asus prime A z370.
 
Last edited:
Btw, the fakesmc companion kext for reporting cpu voltage is not working properly for me(your fork)

If you're referring to FakeSMC_LPCSensors.kext, you'll need to look into creating a profile for it or fixing the code.
I don't have your hardware, nor do I actually use any of the sensor kexts.
 
If you're referring to FakeSMC_LPCSensors.kext, you'll need to look into creating a profile for it or fixing the code.
I don't have your hardware, nor do I actually use any of the sensor kexts.
Are there any tutorials for creating the profile? Btw, I turned off speed step and C states in UEFI. OSX still manages to cool my CPU frequency down. Is that fine?
 
Are there any tutorials for creating the profile?

No. You must refer to existing examples in the plist and read the source code for further details.
Btw, I turned off speed step and C states in UEFI. OSX still manages to cool my CPU frequency down. Is that fine?

Some BIOS settings are probably ignored when running macOS.
 
Do the clover settings look okay for SSDT for USB and Power?

I left the Hackintosh encoding videos all night and the CPU frequency is dropping down to 1.9GHz after encoding

I also tried overclocking by changing the multiplier to 46 and changing the voltage to 1.275. On restart the computer would freeze at 0% of the apple progress bar and then throw a kernel panic (screenshot below)

XMP is enabled in bios to give me 2666MHz ram.

Code:
Last login: Sun Dec  2 12:45:09 on console
SunnysHckintosh:~ sunnyjhooty$ sudo -s
bash-3.2# chown -R 0:0 ~/Desktop/AppleIntelInfo.kext
bash-3.2# chmod -R 755 ~/Desktop/AppleIntelInfo.kext
bash-3.2# kextload ~/Desktop/AppleIntelInfo.kext
bash-3.2# cat /tmp/AppleIntelInfo.dat

AppleIntelInfo.kext v1.2 Copyright © 2012-2015 Pike R. Alpha. All rights reserved

Settings:
------------------------------------
logMSRs............................: 1
logIGPU............................: 1
logIntelRegs.......................: 1
logCStates.........................: 1
logIPGStyle........................: 1
InitialTSC.........................: 0x2c1dad45f3e
MWAIT C-States.....................: 1319200

Model Specific Regiters
------------------------------------
MSR_CORE_THREAD_COUNT......(0x35)  : 0x40008
MSR_PLATFORM_INFO..........(0xCE)  : 0x80838F1012800
MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x8000
MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x0
IA32_MPERF.................(0xE7)  : 0xAC2A7D08B4
IA32_APERF.................(0xE8)  : 0x9EC070A0C5
MSR_FLEX_RATIO.............(0x194) : 0xE0000
MSR_IA32_PERF_STATUS.......(0x198) : 0x25FC00002800
MSR_IA32_PERF_CONTROL......(0x199) : 0x2A00
IA32_CLOCK_MODULATION......(0x19A) : 0x0
IA32_THERM_STATUS..........(0x19C) : 0x88490000
IA32_MISC_ENABLES..........(0x1A0) : 0x850089
MSR_MISC_PWR_MGMT..........(0x1AA) : 0x1CC1
MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x2828282A
IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x1
MSR_POWER_CTL..............(0x1FC) : 0x3C005F
MSR_RAPL_POWER_UNIT........(0x606) : 0xA0E03
MSR_PKG_POWER_LIMIT........(0x610) : 0x42FFD0001AEA82
MSR_PKG_ENERGY_STATUS......(0x611) : 0x9B83A96
MSR_PKG_POWER_INFO.........(0x614) : 0x2F8
MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x0
MSR_PP0_POWER_LIMIT........(0x638) : 0x0
MSR_PP0_ENERGY_STATUS......(0x639) : 0x5CC999B
MSR_PP0_POLICY.............(0x63a) : 0x0
MSR_PKGC6_IRTL.............(0x60b) : 0x0
MSR_PKGC7_IRTL.............(0x60c) : 0x0
MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x0
MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
IA32_TSC_DEADLINE..........(0x6E0) : 0x2C1DE89EB36
PCH device.................: 0xA1458086

Intel Register Data
------------------------------------
CPU_VGACNTRL...............: 0xBB645896
IS_ELSE(devid)
DCC........................: 0x72a01cc5 ()
CHDECMISC..................: 0x05c5699d (none, ch2 enh enabled, ch1 enh enabled, ch0 enh enabled, flex disabled, ep present)
C0DRB0.....................: 0x72a01cc5 (0x1cc5)
C0DRB1.....................: 0x57f472a0 (0x72a0)
C0DRB2.....................: 0x32dc57f4 (0x57f4)
C0DRB3.....................: 0xf35632dc (0x32dc)
C1DRB0.....................: 0x25c71697 (0x1697)
C1DRB1.....................: 0x42e725c7 (0x25c7)
C1DRB2.....................: 0xd5c042e7 (0x42e7)
C1DRB3.....................: 0x64bed5c0 (0xd5c0)
C0DRA01....................: 0x58a1f356 (0xf356)
C0DRA23....................: 0x932958a1 (0x58a1)
C1DRA01....................: 0x65ce64be (0x64be)
C1DRA23....................: 0x717c65ce (0x65ce)
PGETBL_CTL.................: 0x26787728
VCLK_DIVISOR_VGA0..........: 0xc597a54b (n = 23, m1 = 37, m2 = 11)
VCLK_DIVISOR_VGA1..........: 0xe739d2d1 (n = 57, m1 = 18, m2 = 17)
VCLK_POST_DIV..............: 0x6583215f (vga0 p1 = 33, p2 = 2, vga1 p1 = 2, p2 = 2)
DPLL_TEST..................: 0x23c546f9 (, DPLLA N bypassed, DPLLB M bypassed)
CACHE_MODE_0...............: 0x7f0c3e91
D_STATE....................: 0xe8176f7f
DSPCLK_GATE_D..............: 0x11d9c9a6 (clock gates disabled: VRHUNIT DPCUNIT TVRUNIT TVCUNIT TVEUNIT DVSUNIT DPRUNIT DPFUNIT DPBMUNIT DPOUNIT DPUNIT VRUNIT OVFUNIT OVCUNIT OVUUNIT)
RENCLK_GATE_D1.............: 0xa70c5d8e
RENCLK_GATE_D2.............: 0x305c4987
SDVOB......................: 0xdb204563 (enabled, pipe B, stall disabled, not detected)
SDVOC......................: 0x83edb57e (enabled, pipe A, stall disabled, detected, gang mode)
SDVOUDI....................: 0xcba13232
DSPARB.....................: 0xfa36cd2f
FW_BLC.....................: 0x68c0ee29
FW_BLC2....................: 0x18fa1498
FW_BLC_SELF................: 0x6ac4ec29
DSPFW1.....................: 0x38fba552
DSPFW2.....................: 0x1482e811
DSPFW3.....................: 0x02feff77
ADPA.......................: 0xb66024de (enabled, transcoder A, +hsync, +vsync)
LVDS.......................: 0xbb4c1dee (enabled, pipe A, 24 bit, 2 channels)
DVOA.......................: 0xa1f9a586 (enabled, pipe A, TV stall, -hsync, -vsync)
DVOB.......................: 0xdb204563 (enabled, pipe B, stall, -hsync, -vsync)
DVOC.......................: 0x83edb57e (enabled, pipe A, no stall, +hsync, +vsync)
DVOA_SRCDIM................: 0x680cb831
DVOB_SRCDIM................: 0x21d5bb3e
DVOC_SRCDIM................: 0x7a27aa29
BLC_PWM_CTL................: 0x2c72c92c
BLC_PWM_CTL2...............: 0x63659380
PP_CONTROL.................: 0xf46051d3 (power target: on)
PP_STATUS..................: 0x65c09077 (off, ready, sequencing off)
PP_ON_DELAYS...............: 0x0d8fc0af
PP_OFF_DELAYS..............: 0x6b7d95f6
PP_DIVISOR.................: 0x0d359a7b
PFIT_CONTROL...............: 0x0cf33c1c
PFIT_PGM_RATIOS............: 0x07b13254
PORT_HOTPLUG_EN............: 0x3ea0a377
PORT_HOTPLUG_STAT..........: 0x06cec6b5
DSPACNTR...................: 0x820a2f84 (enabled)
DSPASTRIDE.................: 0x878a84b2 (-2020965198 bytes)
DSPAPOS....................: 0x8b8cd69d (54941, 35724)
DSPASIZE...................: 0x9f9f8748 (34633, 40864)
DSPABASE...................: 0x021c65ec
DSPASURF...................: 0xaf1e808d
DSPATILEOFF................: 0x93d6f3dd
PIPEACONF..................: 0x7da2e808 (disabled, double-wide, pf-id-dbl, rotate 270, 8bpc)
PIPEASRC...................: 0x5545a0b4 (21830, 41141)
PIPEASTAT..................: 0x10d00553 (status: CRC_DONE_ENABLE DPST_EVENT_ENABLE LBLC_EVENT_ENABLE EFIELD_INT_ENABLE DLINE_COMPARE_STATUS LBLC_EVENT_STATUS EFIELD_INT_STATUS VBLANK_INT_STATUS OREG_UPDATE_STATUS)
PIPEA_GMCH_DATA_M..........: 0xfd3b4e90
PIPEA_GMCH_DATA_N..........: 0x78d7f220
PIPEA_DP_LINK_M............: 0x5982ccc7
PIPEA_DP_LINK_N............: 0xdc089b6c
CURSOR_A_BASE..............: 0xe1a63fca
CURSOR_A_CONTROL...........: 0x651a809e
CURSOR_A_POSITION..........: 0x80c2233e
FPA0.......................: 0xa1c18387 (n = 1, m1 = 3, m2 = 7)
FPA1.......................: 0x8ae50ec9 (n = 37, m1 = 14, m2 = 9)
DPLL_A.....................: 0x472d7a86 (disabled, dvo, VGA, unknown clock, DAC/serial mode, p1 = 1, p2 = 5)
DPLL_A_MD..................: 0x676d7e87
HTOTAL_A...................: 0x5c22ec04 (60421 active, 23587 total)
HBLANK_A...................: 0xe4f2255f (9568 start, 58611 end)
HSYNC_A....................: 0xf4abe115 (57622 start, 62636 end)
VTOTAL_A...................: 0xd10374b2 (29875 active, 53508 total)
VBLANK_A...................: 0x2fee5c2a (23595 start, 12271 end)
VSYNC_A....................: 0x8d4feec7 (61128 start, 36176 end)
BCLRPAT_A..................: 0x53e5b232
VSYNCSHIFT_A...............: 0xd02d259d
DSPBCNTR...................: 0xda6076d0 (enabled)
DSPBSTRIDE.................: 0x137ab355 (326808405 bytes)
DSPBPOS....................: 0xfa29c9ee (51694, 64041)
DSPBSIZE...................: 0xb1e3f731 (63282, 45540)
DSPBBASE...................: 0xf8bd51d3
DSPBSURF...................: 0x2b4a1df5
DSPBTILEOFF................: 0x3b0a017e
PIPEBCONF..................: 0x1aac4770 (disabled, single-wide, pf-id-dbl, rotate 90, 12bpc)
PIPEBSRC...................: 0x05aadcb2 (1451, 56499)
PIPEBSTAT..................: 0xd90acdfe (status: FIFO_UNDERRUN CRC_DONE_ENABLE GMBUS_EVENT_ENABLE DLINE_COMPARE_ENABLE VBLANK_INT_ENABLE GMBUS_INT_STATUS DLINE_COMPARE_STATUS DPST_EVENT_STATUS LBLC_EVENT_STATUS OFIELD_INT_STATUS EFIELD_INT_STATUS SVBLANK_PIPEB_GMCH_DATA_M..........: 0x0cf73cdc
PIPEB_GMCH_DATA_N..........: 0x564c426a
PIPEB_DP_LINK_M............: 0x03542eda
PIPEB_DP_LINK_N............: 0xc5be4027
CURSOR_B_BASE..............: 0x04eadd15
CURSOR_B_CONTROL...........: 0xb8861b01
CURSOR_B_POSITION..........: 0x2404ba69
FPB0.......................: 0xa0428384 (n = 2, m1 = 3, m2 = 4)
FPB1.......................: 0xabac0e88 (n = 44, m1 = 14, m2 = 8)
DPLL_B.....................: 0x65436117 (disabled, dvo, VGA, spread spectrum clock, DAC/serial mode, p1 = 1, p2 = 5, using FPx1!)
DPLL_B_MD..................: 0x46c3691f
HTOTAL_B...................: 0x313c58c4 (22725 active, 12605 total)
HBLANK_B...................: 0x5aeab22f (45616 start, 23275 end)
HSYNC_B....................: 0x6798dfd7 (57304 start, 26521 end)
VTOTAL_B...................: 0x182946fb (18172 active, 6186 total)
VBLANK_B...................: 0x92797e02 (32259 start, 37498 end)
VSYNC_B....................: 0xf97bd88d (55438 start, 63868 end)
BCLRPAT_B..................: 0x4ebac156
VSYNCSHIFT_B...............: 0x1e565570
VCLK_DIVISOR_VGA0..........: 0xc597a54b
VCLK_DIVISOR_VGA1..........: 0xe739d2d1
VCLK_POST_DIV..............: 0x6583215f
VGACNTRL...................: 0xabbee8d8 (disabled)
TV_CTL.....................: 0x2708fd6b
TV_DAC.....................: 0xdc25731e
TV_CSC_Y...................: 0x2e55edf5
TV_CSC_Y2..................: 0x0025378b
TV_CSC_U...................: 0xf8189ded
TV_CSC_U2..................: 0xa8e70186
TV_CSC_V...................: 0x5670e26b
TV_CSC_V2..................: 0x54e41ea3
TV_CLR_KNOBS...............: 0x125dc5ec
TV_CLR_LEVEL...............: 0xee66f24b
TV_H_CTL_1.................: 0x08f58420
TV_H_CTL_2.................: 0x9c6da9af
TV_H_CTL_3.................: 0x93a525f8
TV_V_CTL_1.................: 0xcbd2c1cb
TV_V_CTL_2.................: 0x8379b623
TV_V_CTL_3.................: 0xfe5c55b4
TV_V_CTL_4.................: 0x0286835c
TV_V_CTL_5.................: 0x503c17c4
TV_V_CTL_6.................: 0xa39a52ae
TV_V_CTL_7.................: 0x8414fe0d
TV_SC_CTL_1................: 0xd920983c
TV_SC_CTL_2................: 0x46b1563e
TV_SC_CTL_3................: 0x777a547e
TV_WIN_POS.................: 0x9103137a
TV_WIN_SIZE................: 0x9f5df0bb
TV_FILTER_CTL_1............: 0x957df951
TV_FILTER_CTL_2............: 0x3d4a25b6
TV_FILTER_CTL_3............: 0x5197e11d
TV_CC_CONTROL..............: 0xc0be2060
TV_CC_DATA.................: 0x0e559035
TV_H_LUMA_0................: 0xcfe865c0
TV_H_LUMA_59...............: 0xcfaa6c33
TV_H_CHROMA_0..............: 0xa2f156e1
TV_H_CHROMA_59.............: 0x534d7b9a
FBC_CFB_BASE...............: 0xd5c30be9
FBC_LL_BASE................: 0xadab65fc
FBC_CONTROL................: 0x94c20be1
FBC_COMMAND................: 0xaeab67fc
FBC_STATUS.................: 0xb5c20be1
FBC_CONTROL2...............: 0xafaa65fd
FBC_FENCE_OFF..............: 0x2a656d95
FBC_MOD_NUM................: 0xb5460b79
MI_MODE....................: 0x68f39359
MI_ARB_STATE...............: 0x5b9f1680
MI_RDRET_STATE.............: 0x4ee77f89
ECOSKPD....................: 0x32806a72
DP_B.......................: 0x16eec51d
DPB_AUX_CH_CTL.............: 0xafc4f331
DPB_AUX_CH_DATA1...........: 0x36db8d0e
DPB_AUX_CH_DATA2...........: 0xedd8d9e1
DPB_AUX_CH_DATA3...........: 0xc4bf791e
DPB_AUX_CH_DATA4...........: 0xfa641368
DPB_AUX_CH_DATA5...........: 0xcf037eba
DP_C.......................: 0x89aed5e0
DPC_AUX_CH_CTL.............: 0x652afcd5
DPC_AUX_CH_DATA1...........: 0x79c58518
DPC_AUX_CH_DATA2...........: 0x259f101d
DPC_AUX_CH_DATA3...........: 0x01bdb914
DPC_AUX_CH_DATA4...........: 0x03f7f371
DPC_AUX_CH_DATA5...........: 0x5dbc8c45
DP_D.......................: 0xee95fa35
DPD_AUX_CH_CTL.............: 0x5b09f2d3
DPD_AUX_CH_DATA1...........: 0xb4be1277
DPD_AUX_CH_DATA2...........: 0xa2d6d04f
DPD_AUX_CH_DATA3...........: 0x1facf40a
DPD_AUX_CH_DATA4...........: 0x311363cf
DPD_AUX_CH_DATA5...........: 0x8590285f
AUD_CONFIG.................: 0xc030c511
AUD_HDMIW_STATUS...........: 0x317c6a03
AUD_CONV_CHCNT.............: 0x860d9d18
VIDEO_DIP_CTL..............: 0xfdb6cd5e
AUD_PINW_CNTR..............: 0x9b453cca
AUD_CNTL_ST................: 0x0154c983
AUD_PIN_CAP................: 0x282721b0
AUD_PINW_CAP...............: 0x2920457a
AUD_PINW_UNSOLRESP.........: 0xd040d5a1
AUD_OUT_DIG_CNVT...........: 0xb685f105
AUD_OUT_CWCAP..............: 0xe68d302a
AUD_GRP_CAP................: 0x86465a90
FENCE  0...................: 0x455c340c (disabled)
FENCE  1...................: 0xf35743de (disabled)
FENCE  2...................: 0x5150142c (disabled)
FENCE  3...................: 0xb3734492 (disabled)
FENCE  4...................: 0x05383438 (disabled)
FENCE  5...................: 0xb36342fa (disabled)
FENCE  6...................: 0x1479712c (disabled)
FENCE  7...................: 0x127307aa (disabled)
FENCE  8...................: 0xfd6dca2c (disabled)
FENCE  9...................: 0x87cf4693 (enabled, X tiled, 1024 pitch, 0x07c00000 - 0x0bc00000 (65536kb))
FENCE  10..................: 0xff510a39 (enabled, X tiled, 4096 pitch, 0x0f500000 - 0x0f900000 (4096kb))
FENCE  11..................: 0x0fcb66d3 (enabled, X tiled, 16384 pitch, 0x0fc00000 - 0x13c00000 (65536kb))
FENCE  12..................: 0xfd494809 (enabled, X tiled,  512 pitch, 0x0d400000 - 0x0d500000 (1024kb))
FENCE  13..................: 0x07db4687 (enabled, X tiled,  512 pitch, 0x07d00000 - 0x0bd00000 (65536kb))
FENCE  14..................: 0xfb695ae8 (disabled)
FENCE  15..................: 0x07d166c6 (disabled)
FENCE START 0..............: 0xfd6dca2c ()
FENCE END 0................: 0x87cf4693 ()
FENCE START 1..............: 0xff510a39 ()
FENCE END 1................: 0x0fcb66d3 ()
FENCE START 2..............: 0xfd494809 ()
FENCE END 2................: 0x07db4687 ()
FENCE START 3..............: 0xfb695ae8 ()
FENCE END 3................: 0x07d166c6 ()
FENCE START 4..............: 0xff6948eb ()
FENCE END 4................: 0x05db44b7 ()
FENCE START 5..............: 0xefe97860 ()
FENCE END 5................: 0x85d35c82 ()
FENCE START 6..............: 0xef585849 ()
FENCE END 6................: 0x95fb54a6 ()
FENCE START 7..............: 0xee483961 ()
FENCE END 7................: 0x34e855a7 ()
FENCE START 8..............: 0x3f9debad ()
FENCE END 8................: 0xec45b5de ()
FENCE START 9..............: 0x3fb9a8a1 ()
FENCE END 9................: 0xec4395db ()
FENCE START 10.............: 0xbfa86ba1 ()
FENCE END 10...............: 0x7c4175db ()
FENCE START 11.............: 0xbebd6aa1 ()
FENCE END 11...............: 0xef0134db ()
FENCE START 12.............: 0xba912a81 ()
FENCE END 12...............: 0x694139da ()
FENCE START 13.............: 0xbaf9a8e9 ()
FENCE END 13...............: 0x6941315b ()
FENCE START 14.............: 0x7a312e81 ()
FENCE END 14...............: 0x296338fa ()
FENCE START 15.............: 0x9ad92ec1 ()
FENCE END 15...............: 0x292170bb ()
INST_PM....................: 0x68bcee3b
p1 out of range
pipe A dot 80952 n 1 m1 3 m2 7 p1 1 p2 14
p1 out of range
fp select out of range
pipe B dot 155000 n 2 m1 3 m2 4 p1 1 p2 5

CPU Ratio Info:
------------------------------------
CPU Low Frequency Mode.............: 800 MHz
CPU Maximum non-Turbo Frequency....: 4000 MHz
CPU Maximum Turbo Frequency........: 4200 MHz

IGPU Info:
------------------------------------
IGPU Current Frequency.............:    0 MHz
IGPU Minimum Frequency.............:  350 MHz
IGPU Maximum Non-Turbo Frequency...:  350 MHz
IGPU Maximum Turbo Frequency.......: 1150 MHz
IGPU Maximum limit.................: 3000 MHz

CPU P-States [ 37 (40) ] iGPU P-States [ ]
CPU C6-Cores [ 1 3 5 6 7 ]
CPU P-States [ 24 37 (40) ] iGPU P-States [ ]
CPU C6-Cores [ 1 2 3 5 6 7 ]
CPU P-States [ (8) 24 27 37 40 ] iGPU P-States [ ]
CPU C6-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ (8) 24 27 28 37 40 ] iGPU P-States [ ]
CPU P-States [ (8) 24 26 27 28 37 40 ] iGPU P-States [ ]
CPU P-States [ 8 24 26 27 28 33 37 (40) ] iGPU P-States [ ]
bash-3.2#
 

Attachments

  • Screen Shot 2018-12-02 at 12.48.05 PM.png
    Screen Shot 2018-12-02 at 12.48.05 PM.png
    1.6 MB · Views: 266
  • EFI.zip
    17.2 MB · Views: 150
  • Screen Shot 2018-12-02 at 12.51.57 PM.png
    Screen Shot 2018-12-02 at 12.51.57 PM.png
    277.4 KB · Views: 269
  • Screen Shot 2018-12-02 at 12.55.07 PM.png
    Screen Shot 2018-12-02 at 12.55.07 PM.png
    455.8 KB · Views: 257
What should I do for i7-8700k? I don't have such string in config.plist/ACPI/SSDT/Generate/PluginType=true.
 
What should I do for i7-8700k? I don't have such string in config.plist/ACPI/SSDT/Generate/PluginType=true.

If that particular key/path does not exist in your config.plist, add it.
 
Back
Top