Contribute
Register

Quick Guide to Generate a SSDT for CPU Power Management

Joined
Jun 9, 2013
Messages
10,781
Motherboard
Gigabyte GA-H77N-WIFI
CPU
i7-3770
Graphics
HD 4000
Mac
  1. MacBook
  2. Mac mini
Mobile Phone
  1. Android
I tried 13,2 and got the same result in terminal. Do I just keep trying lower and lower system definitions until I get a different response from that terminal command? How low can I go with iMac or Mac Pro in order to keep Sierra?

What exactly is the problem?
 
Joined
Oct 27, 2011
Messages
234
Motherboard
Dell Precision T3600
CPU
Intel Xeon(R) CPU E5-1620 @3.6 GHz
Graphics
NVIDIA*GeForce*GT*710*2GB
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. iOS
Problem is 2 parts:

Part 1:(probably causing the second part of the problem) When I enter step 4 of OP guide, terminal says it doesn't like my sys def for my board:
bash-3.2# sudo ~/ssdtPRGen.sh



ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl

v6.6 Copyright (c) 2013 by † Jeroen

v15.6 Copyright (c) 2013-2016 by Pike R. Alpha

-----------------------------------------------------------

Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <


gDataPath: /Volumes/Data/TOA/Library/ssdtPRGen/Data

System information: Mac OS X 10.12 (16A323)

Brandstring 'Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz'


Scope (\_PR_) {222 bytes} with ACPI Processor declarations found in the DSDT (ACPI 1.0 compliant)

Generating ssdt.dsl for a 'iMac14,2' with board-id [Mac-27ADBB7B4CEE8E61]

Sandy Bridge Core i5-2400 processor [0x206A7] setup [0x0603]

With a maximum TDP of 95 Watt, as specified by Intel

Number logical CPU's: 4 (Core Frequency: 3100 MHz)

Number of Turbo States: 3 (3200-3400 MHz)

Number of P-States: 19 (1600-3400 MHz)

Injected C-States for CPU0 (C1,C3,C6,C7)


Error: board-id [Mac-27ADBB7B4CEE8E61] not supported by Sandy Bridge – check SMBIOS data / use the -c option


Do you want to continue (y/n)? n


Part 2:
I continued with the OP guide, despite getting a weird message here, and found and copied over the ssmt.aml file. Then I receive the the previous quoted terminal response (4 posts up) when I try to verify: "/Volumes/Data/TOA/Desktop/AppleIntelInfo.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8)." This means I can't check functionality of ssdt.aml per the OP guide.
 
Joined
Jun 9, 2013
Messages
10,781
Motherboard
Gigabyte GA-H77N-WIFI
CPU
i7-3770
Graphics
HD 4000
Mac
  1. MacBook
  2. Mac mini
Mobile Phone
  1. Android
Problem is 2 parts:

Part 1:(probably causing the second part of the problem) When I enter step 4 of OP guide, terminal says it doesn't like my sys def for my board:
bash-3.2# sudo ~/ssdtPRGen.sh



ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl

v6.6 Copyright (c) 2013 by † Jeroen

v15.6 Copyright (c) 2013-2016 by Pike R. Alpha

-----------------------------------------------------------

Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <


gDataPath: /Volumes/Data/TOA/Library/ssdtPRGen/Data

System information: Mac OS X 10.12 (16A323)

Brandstring 'Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz'


Scope (\_PR_) {222 bytes} with ACPI Processor declarations found in the DSDT (ACPI 1.0 compliant)

Generating ssdt.dsl for a 'iMac14,2' with board-id [Mac-27ADBB7B4CEE8E61]

Sandy Bridge Core i5-2400 processor [0x206A7] setup [0x0603]

With a maximum TDP of 95 Watt, as specified by Intel

Number logical CPU's: 4 (Core Frequency: 3100 MHz)

Number of Turbo States: 3 (3200-3400 MHz)

Number of P-States: 19 (1600-3400 MHz)

Injected C-States for CPU0 (C1,C3,C6,C7)


Error: board-id [Mac-27ADBB7B4CEE8E61] not supported by Sandy Bridge – check SMBIOS data / use the -c option


Do you want to continue (y/n)? n


Part 2:
I continued with the OP guide, despite getting a weird message here, and found and copied over the ssmt.aml file. Then I receive the the previous quoted terminal response (4 posts up) when I try to verify: "/Volumes/Data/TOA/Desktop/AppleIntelInfo.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8)." This means I can't check functionality of ssdt.aml per the OP guide.

You're using wrong system Defintion. Use iMac 12,2 if you're using 10.11 or older. If you're using 10.12 then use iMac 13,2.
 
Joined
Oct 27, 2011
Messages
234
Motherboard
Dell Precision T3600
CPU
Intel Xeon(R) CPU E5-1620 @3.6 GHz
Graphics
NVIDIA*GeForce*GT*710*2GB
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. iOS
I'm on Sierra already, so it's either 13,2 or 14,2 that I've tried but they each give me the above problems.
 
Joined
Aug 29, 2016
Messages
15
Motherboard
GA-Z170X-UD5-TH
CPU
i7-6700k
Graphics
QUADRO K4200 4GB
Mac
  1. iMac
  2. MacBook
  3. Mac mini
Mobile Phone
  1. iOS
I tried to generate the SSDt for my i7-6700k with ssdtPRGen.sh but i have noticed that after the generation my CPU was always at max speed (from HWMonitor software)

instead if i delete the SSDT file the CPU works great, also overclockd to 4.4 Ghz, and in HWMonitor the CPU speed my vary from 1000 Mhz to 4400 Mhz.

I set up a iMac 17.1 model in clover

Why?
 
Joined
Feb 8, 2012
Messages
57
Motherboard
GA-Z77-DS3H
CPU
i7 3700K
Graphics
Radeon 6870 2GB
Mac
  1. MacBook Pro
Classic Mac
Mobile Phone
  1. Android
Running into the same problem on Sierra with a iMac 14,2 (6770K, ASUS ROG HERO III)...
Getting both:
Warning: 'cpu-type' may be set improperly (0x0705 instead of 0x0905)

and:
Error: board-id [Mac-27ADBB7B4CEE8E61] not supported by Skylake – check SMBIOS data / use the -target option


I am overclocked to 4.6GHz
 
Last edited:
Joined
Sep 23, 2016
Messages
28
Motherboard
Gigabyte Z390 Designare
CPU
i9 9900k
Graphics
Radeon VII, 5700XT
Mac
  1. iMac
  2. MacBook Air
  3. MacBook Pro
  4. Mac mini
  5. Mac Pro
Mobile Phone
  1. iOS
Hi, please take a look

I noticed that my i5 4440 Haswell can start operating at maximum frequency for a long time beeing idle:
i5440.png

So I followed the guide and got my SSDT.aml (I got SSDT.aml-1,2,3,4 but I copy only SSDT.aml to
/Volumes/EFI/EFI/CLOVER/ACPI/patched/)

Here is the test, after patching, please tell me is it ok?
At first sight it became better, but frequency can jump high from time to time without any reason:

after.png

I did not add anything in config.plist after adding SSDT — should I?

Code:
Settings:
------------------------------------
logMSRs............................: 1
logIGPU............................: 0
logIntelRegs.......................: 1
logCStates.........................: 1
logIPGStyle........................: 1
InitialTSC.........................: 0x2a9e1132b80
MWAIT C-States.....................: 270624

Model Specific Regiters
------------------------------------
MSR_CORE_THREAD_COUNT......(0x35)  : 0x40004
MSR_PLATFORM_INFO..........(0xCE)  : 0x80838F3011F00
MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x1E000402
MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x1814
IA32_MPERF.................(0xE7)  : 0x1A0B5D79F0C
IA32_APERF.................(0xE8)  : 0x1A35E3369BF
MSR_FLEX_RATIO.............(0x194) : 0x0
MSR_IA32_PERF_STATUS.......(0x198) : 0x1F3900001F00
MSR_IA32_PERF_CONTROL......(0x199) : 0x2100
IA32_CLOCK_MODULATION......(0x19A) : 0x0
IA32_THERM_STATUS..........(0x19C) : 0x882C0000
IA32_MISC_ENABLES..........(0x1A0) : 0x850089
MSR_MISC_PWR_MGMT..........(0x1AA) : 0x1
MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x21212121
IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x1
MSR_POWER_CTL..............(0x1FC) : 0x4005F
MSR_RAPL_POWER_UNIT........(0x606) : 0xA0E03
MSR_PKG_POWER_LIMIT........(0x610) : 0xFFD00000EA82
MSR_PKG_ENERGY_STATUS......(0x611) : 0x220C7B88
MSR_PKG_POWER_INFO.........(0x614) : 0x2A0
MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x1F40
MSR_PP0_POWER_LIMIT........(0x638) : 0xFFD0
MSR_PP0_ENERGY_STATUS......(0x639) : 0x182BCC38
MSR_PP0_POLICY.............(0x63a) : 0x0
MSR_CONFIG_TDP_NOMINAL.....(0x648) : 0x1F
MSR_CONFIG_TDP_LEVEL1......(0x649) : 0x0
MSR_CONFIG_TDP_LEVEL2......(0x64a) : 0x0
MSR_CONFIG_TDP_CONTROL.....(0x64b) : 0x80000000
MSR_TURBO_ACTIVATION_RATIO.(0x64c) : 0x0
MSR_PKGC3_IRTL.............(0x60a) : 0x8842
MSR_PKGC6_IRTL.............(0x60b) : 0x8873
MSR_PKGC7_IRTL.............(0x60c) : 0x8891
MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x807FB7E95D
MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0
MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
IA32_TSC_DEADLINE..........(0x6E0) : 0x2A9E417D333

CPU Ratio Info:
------------------------------------
CPU Low Frequency Mode.............: 800 MHz
CPU Maximum non-Turbo Frequency....: 3100 MHz
CPU Maximum Turbo Frequency........: 3300 MHz
CPU P-States [ (31) ]
CPU C3-Cores [ 0 2 ]
CPU C6-Cores [ 0 2 3 ]
CPU C7-Cores [ 0 1 2 ]
CPU C3-Cores [ 0 1 2 3 ]
CPU C6-Cores [ 0 1 2 3 ]
CPU C7-Cores [ 0 1 2 3 ]
 
Joined
Jul 27, 2014
Messages
115
Motherboard
Intel S2600CP2
CPU
2x E5-2650L v1
Graphics
RX570
Mac
  1. MacBook Pro
  2. Mac mini
Mobile Phone
  1. Android
  2. iOS
any ideas on how to generate SSDT for older CPUs (e.g. LGA1366 ones)? Thanks
 
Joined
May 22, 2011
Messages
1,046
Motherboard
ASUS TUF Z390 Plus Gaming
CPU
i9-9900K
Graphics
UHD 630
Mac
  1. iMac
Mobile Phone
  1. iOS
Piker Alpha's ssdtPRGen script will generate a SSDT you can use to achieve the maximum amount of power states for your desktop CPU. Please note that desktop power management is not mandatory.

Requirements:
Working internet connection

How to Generate a SSDT for Power Management

1. Configure system with appropriate SMBIOS for your CPU using Clover Configurator

2. Open Terminal and download Piker Alpha's ssdtPRGen.sh

Code:
curl -o ~/ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/master/ssdtPRGen.sh

3. That will download ssdtPRGen.sh to your user directory. The next step is to change the file mode (+x) with:

Code:
chmod +x ~/ssdtPRGen.sh

4. For default SSDT generation, type:

Code:
sudo ~/ssdtPRGen.sh

5. Type n, n

6. Open Finder and in menubar choose Go/Go to Folder...

7. Type ~/Library/ssdtPRGen/

8. Mount EFI using EFI Mounter v3

9. Copy SSDT.aml to /Volumes/EFI/EFI/CLOVER/ACPI/patched/

NOTE: The Power Management SSDT should always be SSDT.aml. If you have an SSDT.aml there already, rename it SSDT-1.aml, etc...

10. Reboot


How to Test Power Management

1. Download and compile AppleIntelInfo.kext using XCode. Or download here: View attachment 160106.

2. Drag AppleIntelInfo.kext to desktop

3. Open Terminal

4. Type:

Code:
sudo -s

5. Type:

Code:
chown -R 0:0 ~/Desktop/AppleIntelInfo.kext

6. Type:

Code:
chmod -R 755 ~/Desktop/AppleIntelInfo.kext

7. Type:

Code:
kextload ~/Desktop/AppleIntelInfo.kext

8. Type:

Code:
cat /tmp/AppleIntelInfo.dat

The amount of power states will then show in the Terminal window.

References:
http://www.tonymacx86.com/mavericks...vericks-native-cpu-igpu-power-management.html
http://www.tonymacx86.com/el-capita...01-guide-native-power-management-laptops.html
https://github.com/Piker-Alpha/ssdtPRGen.sh
https://github.com/Piker-Alpha/AppleIntelInfo

Before the ask I read whole 18 pages and some people getting same error like me but no-one answer for this error. did you know why this happening?

My SMBIOS is;
iMac 17,1
Board-ID: Mac-65CE76090165799A

Code:
gDataPath: /Users/muratozgul/Library/ssdtPRGen/Data
System information: Mac OS X 10.12 (16A323)
Brandstring 'Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz'

Error: Unknown processor model ...
       Visit http://ark.intel.com to gather the required data:
       Processor Number
       TDP
       Low Frequency Mode (use AppleIntelInfo.kext)
       Base Frequency
       Max Turbo Frequency
       Cores
       Threads
Aborting ...
Done.
 
Joined
Mar 18, 2011
Messages
11
Motherboard
Asus Rampage IV Extreme
CPU
i7-3930k
Graphics
GTX 580 3 gigs
Mac
  1. Mac Pro
Classic Mac
Mobile Phone
  1. iOS
Hello,

When I run the "sudo ~/ssdtPRGen.sh" command I get the bellow error.
Does anyone have any solutions to this?
My rig:
Asus Rampage IV Rampage Extreme (x79) i7 3930k
64 gigs of memory

My system information:

Model Name: Mac Pro
Model Identifier: MacPro6,1
Processor Name: 6-Core Intel Xeon E5
Processor Speed: 3.2 GHz
Number of Processors: 1
Total Number of Cores: 6
L2 Cache (per Core): 256 KB
L3 Cache: 12 MB
Memory: 64 GB
Processor Interconnect Speed: 400 MT/s
Boot ROM Version: MP61.0116.B16
SMC Version (system): 2.20f18
Serial Number (system): F5KL4FKQF693
Serial Number (processor tray): C02140302D5DMT31M
Hardware UUID: 80CEFA6D-CB5B-D911-8D43-3085A998266F

-----------
When I run the "sudo ~/ssdtPRGen.sh" command I get the bellow error.

gDataPath: /Users/tinroof/Library/ssdtPRGen/Data
System information: Mac OS X 10.11.6 (15G31)
Brandstring 'Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz'
Scope (_SB_) {4276 bytes} with ACPI Processor declarations found in the DSDT (ACPI 1.0 compliant)
Generating ssdt.dsl for a 'MacPro6,1' with board-id [Mac-F60DEB81FF30ACF6]
Sandy Bridge Core i7-3930K processor [0x206D7] setup [0x0a01]
With a maximum TDP of 130 Watt, as specified by Intel
Number logical CPU's: 12 (Core Frequency: 3200 MHz)
Number of Turbo States: 6 (3300-3800 MHz)
Number of P-States: 27 (1200-3800 MHz)
Injected C-States for C000 (C1,C3,C6,C7)
Error: board-id [Mac-F60DEB81FF30ACF6] not supported by Sandy Bridge – check SMBIOS data / use the -c option
 
Top