flAked Posted June 11, 2011 Share Posted June 11, 2011 This work is based on DSDT for Asus P8P67-M PRO by DHP. Those who followed along are aware that discussions were always very technical and specific, without a clear followthrough. This thread aims to condense our findings and be a supplement to the thread by DHP. First of all, here are the ACPI tables for the P8P67 (B3 stepping): Method I: Full support via single SSDT (only with RevoBoot) Shortly! Method II: Lightweight ACPI tables (universal, but not updated anymore) dsdt_rev2.dsl.zipssdt_pr_minimal_stripped_rev6.dsl.zipssdt_usb_rev2.dsl.zip Factory tables (for reference) P8P67_factory_1608.zip Tools SpeedStepper MSRDumper aml2struct (by MasterChief) 0. Prerequisites Method I Up until now the main focus was geared toward a heavily optimized and streamlined DSDT / SSDT. Many questions emerged if those edits are usable on other boards as well and if there be an auto-patcher for all the fixes. Well, there is a reason why this guide / knowledge base was holding back and that is because of recent developments in RevoBoot. It is now possible to get the same results with automatic injection and a very small SSDT to get device names & sleep correctly set up. That is why the downloads are split in two methods, the second and old method won't be updated in the future and this guide will mainly focus on method I from now on. Method II There is a clear distinction between enabling devices in your DSDT, the actual IOKit drivers that match those devices and your UEFI settings. You could optimize this DSDT by removing the devices you are not using, but you would also limit your options at a later time. This DSDT was developed with all onboard devices turned on. You are however free to disable any device in UEFI and the appropriate IOKit drivers won't get loaded. Support for PS2 and COM ports are stripped out. This guide assumes that you already have a running system, using one of the several installation guides. Testing and refining this setup was done using RevoBoot. 1. UEFI settings This is pretty straight forward, for the basic setup set SATA to AHCI, disable the serial port and choose the onboard devices you want to use. In the CPU configuration menu we want to enable all C-State reports, as well as SpeedStep and Turbo Mode. Disable Internal PPL overvoltage to resolve sleep/wake issues. Leave CPU Ratio at Auto for the time being, overclocking will be covered separately. 2. Patching CFG Lock C-State configuration is set via a Model Specific Register (MSR 0xE2), unfortunately for Asus P67 users this MSR will be locked after UEFI finishes and can't be changed afterwards. Apple hardware or more precise EFI is not engaging this CFG Lock. This results in a kernel panic when loading the system without NullCPUPowerManagement.kext (NullCPU) because AppleIntelCPUPowerManagement.kext (AICPUPM) is writing to MSR 0xE2 which is read-only at this point, triggering a General Protection Fault (GPF). We have two options to resolve this issue: a) patch AICPUPM's write operations to 0xE2 Download SpeedStepper for SnowLeopard, currently only version 142.6.0 is supported. Open Terminal.app: sudo bash cd /System/Library/Extensions/AppleIntelCPUPowerManagement.kext/Contents/MacOS cp AppleIntelCPUPowerManagement AppleIntelCPUPowerManagement_bkp /path/to/speedstepper AppleIntelCPUPowerManagement The patcher should confirm that every offset was found and patched. Then remove NullCPU and rebuild kextcache. You should now be able to boot the system without NullCPU. This is considered a temporary fix, because SpeedStepper needs to be updated for every new version of AICPUPM. A much more solid solution lies in . patch the CFG Lock in UEFI itself By removing the CFG Lock at the time of UEFI configuration we can solve the issue once and for all. Until the next UEFI update that is. Asus is currently working on several UEFI updates to iron out critical bugs, most likely we will see a couple of updates in the near future. Modding the specific UEFI module is not for the faint of heart and a lot of checking and double-checking needs to be done before flashing a custom made UEFI mod. Until we have a stable release considered lasting several month, I won't release a modded UEFI. The effort is not worth while at the moment, if the next UEFI is around the corner. Once the patching is automated it might change. But for now, patching AICPUPM is much safer and less nerve-recking. 3. Configuring RevoBoot 4. SSDT_PR 5. Static ACPI table injection 6. Stepper programs 7. SMBIOS fix 8. Overclocking A. Modifying the DSDT for other board variants very much wip, more to come later... this is far from finished, I just wanted to post my current versions up front, because the original thread is a bit convoluted now and it's hard to find the files. If you have any questions about the general process, wait until I finished the main sections, thanks. 2 Link to comment Share on other sites More sharing options...
Regi Yassin Posted June 11, 2011 Share Posted June 11, 2011 can be used for another p8p67 mobos? p8p67 pro or deluxe? 1 Link to comment Share on other sites More sharing options...
flAked Posted June 11, 2011 Author Share Posted June 11, 2011 can be used for another p8p67 mobos?p8p67 pro or deluxe? No, this is custom made for the P8P67 only. There will be a brief section about how to modify it for your board, but it requires some deep knowledge of DSDT editing and how ACPI tables work. Link to comment Share on other sites More sharing options...
peebee01 Posted June 12, 2011 Share Posted June 12, 2011 flAked Looking forward to learn from this thread. I got Speedstep working based on your speedstepper tool but without the use of a DSDT, which is probably the reason my machine is not able to wake up from sleep. Does sleep/wakeup work fully on your setup? Thanks for sharing your knowledge on this topic Link to comment Share on other sites More sharing options...
flAked Posted June 12, 2011 Author Share Posted June 12, 2011 Does sleep/wakeup work fully on your setup? Yes. If you transition to RevoBoot, DeepSleep (hibernation) is not currently supported, however. Link to comment Share on other sites More sharing options...
mrmojorisin17 Posted June 12, 2011 Share Posted June 12, 2011 Great work man, people who have P8P67 board have to feel lucky Link to comment Share on other sites More sharing options...
flAked Posted June 12, 2011 Author Share Posted June 12, 2011 Great work man, people who have P8P67 board have to feel lucky Thanks! Well, besides the DSDT the explanations are of course valid for other P67 boards as well Link to comment Share on other sites More sharing options...
mrmojorisin17 Posted June 12, 2011 Share Posted June 12, 2011 Is a pleasure to read your posts Link to comment Share on other sites More sharing options...
bogdanw Posted June 16, 2011 Share Posted June 16, 2011 Must have done something wrong SpeedStepper v1.0 - (c) flAked 2011 for AICPUPM v142.6.0 Searching for wrmsr #0: 34a46 -> found bytes. -> patched. Searching for wrmsr #1: 34d3e -> found bytes. -> patched. Searching for wrmsr #2: 34d5f -> found bytes. -> patched. Searching for wrmsr #3: 34f03 -> found bytes. -> patched. Searching for wrmsr #4: 34fa2 -> found bytes. -> patched. Searching for wrmsr #5: 35f27 -> found bytes. -> patched. Searching for wrmsr #6: 3617c -> found bytes. -> patched. Searching for wrmsr #7: 361ce -> found bytes. -> patched. Searching for wrmsr #8: 3d61a -> ERR: bytes not found! Searching for wrmsr #9: 3d677 -> ERR: bytes not found! Searching for wrmsr #0: 948e -> ERR: bytes not found! Searching for wrmsr #1: 98c1 -> ERR: bytes not found! Searching for wrmsr #2: 997e -> ERR: bytes not found! Searching for wrmsr #3: 99eb -> ERR: bytes not found! Searching for wrmsr #4: 9aae -> ERR: bytes not found! Searching for wrmsr #5: a958 -> ERR: bytes not found! Searching for wrmsr #6: abff -> ERR: bytes not found! Searching for wrmsr #7: ac96 -> ERR: bytes not found! Searching for wrmsr #8: 11d0e -> ERR: bytes not found! Searching for wrmsr #9: 11dc2 -> ERR: bytes not found! Sorry, didn't find all wrmsr, your kernel might crash. And one more thing, using dsdt_rev2 Unknown AHCI Standard Controller: Vendor: Unknown Product: AHCI Standard Controller Link Speed: 6 Gigabit Negotiated Link Speed: 6 Gigabit Description: AHCI Version 1.30 Supported same as not using a dsdt file. With a dsdt created in Windows by DSDT Auto-Patcher Intel 6 Series Chipset: Vendor: Intel Product: 6 Series Chipset Link Speed: 6 Gigabit Negotiated Link Speed: 6 Gigabit Description: AHCI Version 1.30 Supported Link to comment Share on other sites More sharing options...
mrmojorisin17 Posted June 17, 2011 Share Posted June 17, 2011 What version of AICPUPM.kext are you trying to patch? 142.6.0? To get the cosmetic Intel Chipset 6 showed in System Profiler you have to add this on your FakeSMC's Info.plist or use an EFI String that inject the same code: <key>Intel6SeriesAHCI</key> <dict> <key>CFBundleIdentifier</key> <string>com.apple.driver.AppleAHCIPort</string> <key>Chipset Name</key> <string>6 Series Chipset</string> <key>IOClass</key> <string>AppleAHCI</string> <key>IONameMatch</key> <array> [color="#0000FF"] <string>pci8086,1c02</string>[/color] </array> <key>IOProbeScore</key> <integer>2000</integer> <key>IOProviderClass</key> <string>IOPCIDevice</string> <key>Vendor Name</key> <string>Intel</string> </dict> Link to comment Share on other sites More sharing options...
bogdanw Posted June 17, 2011 Share Posted June 17, 2011 <key>CFBundleShortVersionString</key> <string>142.4.1</string> <key>CFBundleVersion</key> <string>142.4.1</string> <key>ProjectName</key> <string>AppleIntelCPUPowerManagement</string> <key>SourceVersion</key> <string>1420401</string> as for the Intel Chipset 6 I'm not interested in cosmetics but in functionality. By now I'm not sure that the sata connection is working properly. I'll test in Lion as I plan to upgrade soon. Thanks for the tips ! : Link to comment Share on other sites More sharing options...
mrmojorisin17 Posted June 17, 2011 Share Posted June 17, 2011 If your chipset don't work you should get a Still Waiting For Root Device. Link to comment Share on other sites More sharing options...
bogdanw Posted June 18, 2011 Share Posted June 18, 2011 Actually I'm worried about this messages 6/19/11 12:23:23 AM kernel SATA WARNING: Enable auto-activate failed. 6/19/11 1:25:58 AM kernel SATA WARNING: Enable Drive PHY PM failed. The second one being more often and displayed at shutdown. Link to comment Share on other sites More sharing options...
octopus_new Posted June 23, 2011 Share Posted June 23, 2011 I have tried Revoboot, but still no luck . I think SSDT_PR has been added properly, but only got 4 PState. If I use Chameleon and no dsdt or any other table, I can get 7 PState. both above situation can not get MAX turbo ratio. My Processor is 2600k, if I put Turbo Ratio to AUTO in bios, the Max PState is 37, I think it should be 38, right?? Jun 23 15:20:32 GeekmatoMac-Pro kernel[0]: MSRDumper PStatesReached: 16 26 30 34 35 36 37 Could anybody share a setting.h file for me? Thanks very much! Link to comment Share on other sites More sharing options...
wh000penator Posted June 27, 2011 Share Posted June 27, 2011 Thanx alot for your hard work! iam very confused, because i am not able 2 extract the SSDT_CPUPm for my i5-2300 CPU no chance in windows, in linux and also not on my hackintosh i get only the other 3 ssdt files; SSDT_AMI_CST.aml SSDT_AMI_IST.aml SSDT_AMICPU_PROC.aml please can u help me? thanx again nice greetings from vienna! Asus P8P67 (B3) - BIOS 1608 / Intel i5-2300 / 8GB Corsair / Asus GTS240 512 / SL 10.6.8 / Lion DP4 send_me.zip Link to comment Share on other sites More sharing options...
flAked Posted June 28, 2011 Author Share Posted June 28, 2011 I am told that the gparted live cd includes acpidump and acpixtract which should give you the complete ACPI tables. RevoBoot includes a automatic SSDT_PR generation now, so that should be easier. I will have some time later this week to write up the new method. Stay tuned. Link to comment Share on other sites More sharing options...
ateam Posted July 3, 2011 Share Posted July 3, 2011 Hey Can you help me make a dsdt for my mb its an asus p8h67m-le autodsdt doesn't have the h series and I know enough not to try one that matches. Link to comment Share on other sites More sharing options...
dudedudedude Posted July 3, 2011 Share Posted July 3, 2011 Guide coming, sorry I am an idiot when it comes to these kind of things and need the guidance Dude Link to comment Share on other sites More sharing options...
NurkJon Posted July 6, 2011 Share Posted July 6, 2011 I've got a new computer (P8P67 with 16GB ram, 2600k and HD 6870) and would like to hackint0sh it soon, originally I was just planning on going the normal Chameleon route or something like that however this seems very interesting. Are you planning on finishing your guide soon? I'd very much like to have a fully working system with everything working including overclocking and sleep. If I'd install OSX now with Chameleon bootload could I then at a later point upgrade to use your method when your guide is done or will I have to do a full whipe? Link to comment Share on other sites More sharing options...
dudedudedude Posted July 7, 2011 Share Posted July 7, 2011 Go ahead and use chameleon but put it and the Extra folder (including extensions, com.apple.boot.plist, and the extensions.mkext) on a USB drive and boot from there. That will allow the hard drive instal to be 100% vanilla. I am so looking forward to the guide though, revoboot/revobuilder looks sweet. I've got a new computer (P8P67 with 16GB ram, 2600k and HD 6870) and would like to hackint0sh it soon, originally I was just planning on going the normal Chameleon route or something like that however this seems very interesting. Are you planning on finishing your guide soon? I'd very much like to have a fully working system with everything working including overclocking and sleep. If I'd install OSX now with Chameleon bootload could I then at a later point upgrade to use your method when your guide is done or will I have to do a full whipe? Link to comment Share on other sites More sharing options...
NurkJon Posted July 7, 2011 Share Posted July 7, 2011 Go ahead and use chameleon but put it and the Extra folder (including extensions, com.apple.boot.plist, and the extensions.mkext) on a USB drive and boot from there. That will allow the hard drive instal to be 100% vanilla. I am so looking forward to the guide though, revoboot/revobuilder looks sweet. How much space will this require? I'd partition my SSD as I like to have everything on there. Link to comment Share on other sites More sharing options...
dudedudedude Posted July 7, 2011 Share Posted July 7, 2011 Hoe much space will this require? I'd partition my SSD as I like to have everything on there. Dont Want to wander off topic on this thread, PM with the details of your system. Link to comment Share on other sites More sharing options...
tom.humphrey Posted July 15, 2011 Share Posted July 15, 2011 Am looking forward to the revoboot guide coming out. do we know when yet? Link to comment Share on other sites More sharing options...
flAked Posted July 25, 2011 Author Share Posted July 25, 2011 Am looking forward to the revoboot guide coming out. do we know when yet? I was on vacation, will continue the guide this week. Link to comment Share on other sites More sharing options...
NurkJon Posted July 30, 2011 Share Posted July 30, 2011 I was on vacation, will continue the guide this week. Awesome, looking forward to it. Link to comment Share on other sites More sharing options...
Recommended Posts