Contribute
Register

SSDT generation script (Ivybridge PM)

Status
Not open for further replies.
I am in the same boat as the two guys above me. Been trying for days to get a working SSDT that gives me more than 4 states.

My system is as follows:

- Gigabyte Z77X-UD5H Rev 1.0 (using BIOS F16 mod11)
- Intel i7 3770k at default clock speed - 3.50GHz with Turbo up to 3.90Ghz
- Clover Bootloader booting in UEFI

I am using pikerAlpha's SSDT generation script and have tried several argument combinations and SMBios combinations.

If I use -w 3 argument when running the script, I can achieve P-States 16/37/38/39
If I use anything other than -w 3, all I get is is P-State 8 (800mhz).

I have tried all of the iMac SMBios's, MacPro3,1 (although this tends to idle at 3.70GHz rather than 1.60GHz). I tried Macmini but it fails to boot to the desktop, the screen just eventually switches off.

I am nearing the end of my efforts in trying to get it working. Any advice welcome.
 
Update:

So finally I got it work. It was not easy for the first time, but I understood the read me file and this is what I used for the script: "-p 'i5 3570K' -turbo 4200 -x 1"

Now I have checked drop OEM, xcpi -1, ncpi=0x3000 and drop tables typed in and unchecked generateP,C states.
Now I have 6 states AICPUPMI: CPU P-States [ 16 25 29 34 38 42 ] with imac13,2 and even with macmini6,2.

Am I done? Is this enough for proper PM?

Thanks
 
Something has clearly changed with Yosemite and power management. My SSDT was working fine with clover and Mavericks giving me ~10 states. Now I only get 16 37 38 39 with my 3770k. I've redone the SSDT and I'm sure it's on par, especially because it was working before. Has anyone documented what's different now? I can't really find all that many people even noticing this. Maybe the ivy's are too far gone for most to care now.

edit, to other's with the 3770k or similary ivy chips, try running the script with:

ssdtPRGen.sh -c 1 -d 3 -w 2 -x 1

then enable the new bootflag "-xcpm" (no quotes) in arguments

In bios set turbo "enable" and set turbo boost values by there actual numerical value not "Auto". disable C6/C7 and C1E

make sure all state generation in clover is off.

This seems to have gotten me better steps, at least more of them in the 20's.
 
Something has clearly changed with Yosemite and power management. My SSDT was working fine with clover and Mavericks giving me ~10 states. Now I only get 16 37 38 39 with my 3770k. I've redone the SSDT and I'm sure it's on par, especially because it was working before. Has anyone documented what's different now? I can't really find all that many people even noticing this. Maybe the ivy's are too far gone for most to care now.

edit, to other's with the 3770k or similary ivy chips, try running the script with:

ssdtPRGen.sh -c 1 -d 3 -w 2 -x 1

then enable the new bootflag "-xcpm" (no quotes) in arguments

In bios set turbo "enable" and set turbo boost values by there actual numerical value not "Auto". disable C6/C7 and C1E

make sure all state generation in clover is off.

This seems to have gotten me better steps, at least more of them in the 20's.

Try to generate SSDT with
Code:
./ssdtPRGen.sh -w 3
I had similar issue. Here.
 
alright, thanks I'll play around with that, stupid question for you though, what are you monitoring that with in terminal? I've only known the kext method -kextloading / unloading msrdumper...
No stupid question, don't worry. Install the attached kext, reboot and run this command in terminal
Code:
cat /var/log/system.log | grep "AICPUPMI:"

All credits to PikerAlpha
 

Attachments

  • AppleIntelCPUPowerManagementInfo.kext.zip
    14.3 KB · Views: 141
Something has clearly changed with Yosemite and power management. My SSDT was working fine with clover and Mavericks giving me ~10 states. Now I only get 16 37 38 39 with my 3770k.

I think this too, my i7-3970 don't slow down like in Mavericks (same settings) now 3.6 to 4.2Ghz but i don't remember mavericks values.
the script don't work any more (It seems that MacPro6,1 not supported by Sandy Bridge)

BUT : When in render 3D images, my cpu warms far less than before (Still got a 22313 GeekBench score)
 
Hello

Can anyone assist me in making an SSDT for my system (see sig/profile)

i7 2600 (non K)

PHP:
sudo ./ssdtPRGen.sh

This incorrectly identifies my SMBIOS as imac 13,2 when it is infact 12,2

Also there is a warning:

'CPU type may be set improperly (0x0703 instead of 0x0603)

Error: board ID is not supported by SandyBridge - check SMB IOS date / use the -C option


Please advise

Thanks
 
I was trying to overclock my CPU Xeon E5 1650v2 and used SSDT generation script. Now HWmonitor shows me weird numbers like 4.6GHz and I have only 2p states 12 and 36 when it used to be 12 and 35. Please take a look and tell what can I do to fix it. I am afraid that is not working properly right now.



Last login: Mon Jan 26 21:13:07 on ttys000
Alexs-Mac-Pro:~ xojiostou$ /Users/xojiostou/ssdtPRGen.command ; exit;



ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl
v6.6 Copyright (c) 2013 by † Jeroen
v15.6 Copyright (c) 2013-2015 by Pike R. Alpha
-----------------------------------------------------------
Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <


gDataPath: /Users/xojiostou/Library/ssdtPRGen/Data
System information: Mac OS X 10.10.1 (14B25)
Brandstring 'Intel(R) Xeon(R) CPU E5-1650 v2 @ 3.50GHz'


Scope (_SB_) {23608 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]
Ivy Bridge Core E5-1650 v2 processor [0x306E4] setup [0x0a01]
With a maximum TDP of 130 Watt, as specified by Intel
Number logical CPU's: 12 (Core Frequency: 3500 MHz)
Number of Turbo States: 4 (3600-3900 MHz)
Number of P-States: 28 (1200-3900 MHz)
Injected C-States for C000 (C1,C3,C6)
Injected C-States for C001 (C1,C3,C6)
Warning: 'system-type' may be set improperly (1 instead of 3)


Intel ACPI Component Architecture
ASL Optimizing Compiler version 20140926-64 [Nov 6 2014]
Copyright (c) 2000 - 2014 Intel Corporation


ASL Input: /Users/xojiostou/Library/ssdtPRGen/ssdt.dsl - 366 lines, 10810 bytes, 96 keywords
AML Output: /Users/xojiostou/Library/ssdtPRGen/ssdt.aml - 2585 bytes, 40 named objects, 56 executable opcodes


Compilation complete. 0 Errors, 0 Warnings, 0 Remarks, 0 Optimizations


Do you want to copy /Users/xojiostou/Library/ssdtPRGen/ssdt.aml to /Extra/ssdt.aml? (y/n)? y
Creating temporarily mount point: /Volumes/EFI
Password:
Mounting EFI partition...
mount_hfs: Resource busy
umount: /Volumes/EFI: not currently mounted
Do you want to open ssdt.dsl (y/n)? y
logout


[Process completed]





and here is ssdt.dsl:







/*
* Intel ACPI Component Architecture
* AML Disassembler version 20140210-00 [Feb 10 2014]
* Copyright (c) 2000 - 2014 Intel Corporation
*
* Original Table Header:
* Signature "SSDT"
* Length 0x0000036A (874)
* Revision 0x01
* Checksum 0x00
* OEM ID "APPLE "
* OEM Table ID "CpuPm"
* OEM Revision 0x00015600 (87552)
* Compiler ID "INTL"
* Compiler Version 0x20140210 (538182160)
*/


DefinitionBlock ("ssdt.aml", "SSDT", 1, "APPLE ", "CpuPm", 0x00015600)
{
External (\_SB_.C000, DeviceObj)
External (\_SB_.C001, DeviceObj)
External (\_SB_.C002, DeviceObj)
External (\_SB_.C003, DeviceObj)
External (\_SB_.C004, DeviceObj)
External (\_SB_.C005, DeviceObj)
External (\_SB_.C006, DeviceObj)
External (\_SB_.C007, DeviceObj)
External (\_SB_.C008, DeviceObj)
External (\_SB_.C009, DeviceObj)
External (\_SB_.C00A, DeviceObj)
External (\_SB_.C00B, DeviceObj)


Scope (\_SB_.C000)
{
Method (_INI, 0, NotSerialized)
{
Store ("ssdtPRGen version....: 15.6 / Mac OS X 10.10.1 (14B25)", Debug)
Store ("target processor.....: E5-1650 v2", Debug)
Store ("running processor....: Intel(R) Xeon(R) CPU E5-1650 v2 @ 3.50GHz", Debug)
Store ("baseFrequency........: 1200", Debug)
Store ("frequency............: 3500", Debug)
Store ("busFrequency.........: 100", Debug)
Store ("logicalCPUs..........: 12", Debug)
Store ("maximum TDP..........: 130", Debug)
Store ("packageLength........: 28", Debug)
Store ("turboStates..........: 4", Debug)
Store ("maxTurboFrequency....: 3900", Debug)
Store ("IvyWorkArounds.......: 3", Debug)
Store ("machdep.xcpm.mode....: 0", Debug)
}


Name (APLF, 0x04)
Name (APSN, 0x05)
Name (APSS, Package (0x21)
{
/* Workaround for the Ivy Bridge PM 'bug' */
Package (0x06) { 0x0F3D, 0x01FBD0, 0x0A, 0x0A, 0x2800, 0x2800 },
/* High Frequency Modes (turbo) */
Package (0x06) { 0x0F3C, 0x01FBD0, 0x0A, 0x0A, 0x2700, 0x2700 },
Package (0x06) { 0x0ED8, 0x01FBD0, 0x0A, 0x0A, 0x2600, 0x2600 },
Package (0x06) { 0x0E74, 0x01FBD0, 0x0A, 0x0A, 0x2500, 0x2500 },
Package (0x06) { 0x0E10, 0x01FBD0, 0x0A, 0x0A, 0x2400, 0x2400 },
/* High Frequency Modes (non-turbo) */
Package (0x06) { 0x0DAC, 0x01FBD0, 0x0A, 0x0A, 0x2300, 0x2300 },
Package (0x06) { 0x0D48, 0x01E7B6, 0x0A, 0x0A, 0x2200, 0x2200 },
Package (0x06) { 0x0CE4, 0x01D3F9, 0x0A, 0x0A, 0x2100, 0x2100 },
Package (0x06) { 0x0C80, 0x01C097, 0x0A, 0x0A, 0x2000, 0x2000 },
Package (0x06) { 0x0C1C, 0x01AD90, 0x0A, 0x0A, 0x1F00, 0x1F00 },
Package (0x06) { 0x0BB8, 0x019AE2, 0x0A, 0x0A, 0x1E00, 0x1E00 },
Package (0x06) { 0x0B54, 0x01888F, 0x0A, 0x0A, 0x1D00, 0x1D00 },
Package (0x06) { 0x0AF0, 0x017693, 0x0A, 0x0A, 0x1C00, 0x1C00 },
Package (0x06) { 0x0A8C, 0x0164EF, 0x0A, 0x0A, 0x1B00, 0x1B00 },
Package (0x06) { 0x0A28, 0x0153A2, 0x0A, 0x0A, 0x1A00, 0x1A00 },
Package (0x06) { 0x09C4, 0x0142AC, 0x0A, 0x0A, 0x1900, 0x1900 },
Package (0x06) { 0x0960, 0x01320C, 0x0A, 0x0A, 0x1800, 0x1800 },
Package (0x06) { 0x08FC, 0x0121C0, 0x0A, 0x0A, 0x1700, 0x1700 },
Package (0x06) { 0x0898, 0x0111C8, 0x0A, 0x0A, 0x1600, 0x1600 },
Package (0x06) { 0x0834, 0x010224, 0x0A, 0x0A, 0x1500, 0x1500 },
Package (0x06) { 0x07D0, 0x00F2D2, 0x0A, 0x0A, 0x1400, 0x1400 },
Package (0x06) { 0x076C, 0x00E3D3, 0x0A, 0x0A, 0x1300, 0x1300 },
Package (0x06) { 0x0708, 0x00D525, 0x0A, 0x0A, 0x1200, 0x1200 },
Package (0x06) { 0x06A4, 0x00C6C7, 0x0A, 0x0A, 0x1100, 0x1100 },
Package (0x06) { 0x0640, 0x00B8B9, 0x0A, 0x0A, 0x1000, 0x1000 },
Package (0x06) { 0x05DC, 0x00AAFB, 0x0A, 0x0A, 0x0F00, 0x0F00 },
Package (0x06) { 0x0578, 0x009D8B, 0x0A, 0x0A, 0x0E00, 0x0E00 },
Package (0x06) { 0x0514, 0x009068, 0x0A, 0x0A, 0x0D00, 0x0D00 },
/* Low Frequency Mode */
Package (0x06) { 0x04B0, 0x008393, 0x0A, 0x0A, 0x0C00, 0x0C00 },
Package (0x06) { 0x044C, Zero, 0x0A, 0x0A, 0x0B00, 0x0B00 },
Package (0x06) { 0x03E8, Zero, 0x0A, 0x0A, 0x0A00, 0x0A00 },
Package (0x06) { 0x0384, Zero, 0x0A, 0x0A, 0x0900, 0x0900 },
Package (0x06) { 0x0320, Zero, 0x0A, 0x0A, 0x0800, 0x0800 }


Edit: solved! all works now.
 
I'm writing from my hackintosh.

I just overclocked it so that the turbo goes up to 4.5ghz. after overclock I lost my generated c and p states and was not able to boot up correctly. After I booted my c and p states were 16 and 34. I tried to regenerate my c and p states but I got this message,

"Warning: 'cpu-type' may be set improperly (0x0703 instead of 0x0603)

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

I do not understand what exactly this means.

So I then used chameleon wizard to fix up my smbios and changed it from 3,1 to 13,2 and added all the clock speeds and memory names and all of that including the random serial number. Hoping that would fix the problem but it did not and now I still get that same warning and error message. What am I doing wrong and how can I fix it?
 
Status
Not open for further replies.
Back
Top