fassl Posted October 29, 2008 Share Posted October 29, 2008 UPDATE: Guys it looks like final 10.5.6 AppleRTC.kext doesnt panic without DSDT patch, so you probably wont need it. It paniced on new macbook and some beta 10.5.6 update though. Also look up this thread: Chameleon with DSDT override function @All complaining about hotter CPU's with AppleIntelCPUPowerManagement: Guys there is no need to have this kext loaded all the time, if you get hotter CPU, just remove that kext and everything is ok. Why I added this to patcher is just for security reasons on update, since i still see many people without an Disabler.kext and they just blindly update and then complain about a kernel panic during the update process. So this is just to be more secure on updating. Update: Version 1.0.1e -added OSI emulation by mackerintel -added Mute fix by mackerintel thx for this DSDT_Patcher1.0.1e.zip Most things needed to be fixed for Darwin the patcher fixes now. There may be still issues in your DSDT but since one DSDT looks very different than another this is needed to be done manually. So i think its time to release the source (yeah i know the code looks ugly but it does its job) DSDT_Patcher_Source.zip --------------- VAIO Users: pls try this patcher, i saw some Variable issues in LCD Device of VAIO DSDT, the patcher fixes this issues, maybe that will solve Internal LCD Diplay issue with QE/CI enabled. Maybe also more work is needed but actually i think we can solve your Problems in DSDT. Somebody correct me if i'm wrong. So please come here and test, thank you. I also invite more people to mess around with DSDT and come here with their findings Update: I made some different DSDT's but haven't yet found how to get QE/CI working on the internal display, seems more things needs to be done... Look up this thread by vaag, he got it working on his DELL, maybe you can find solution. http://forum.insanelymac.com/index.php?sho...=135184&hl= --------------- Also, if the compiling goes wrong, it doesnt always mean the patching went wrong, some manufactorers just ship crappy DSDT's in the BIOS. You can force to compile it even if there are errors: /PATH/TO/DSDT\ Pachter -f -------Original Post----------- Hey there, i thought it might be better to start a new Thread for this. As you may already heard you will have Problems with the upcoming (10.5.6) Apple Update if your DSDT is messed up, and it is for sure . Good thing is, mackerintel added DSDT override function to Chameleon: http://forum.insanelymac.com/index.php?showtopic=132757 What does that mean? Well you can put a modified compiled DSDT in the Root of your Booting partition, and it will try to attach this, very good for people who are afraid of flashing their BIOS. I made a little Tool that will patch your DSDT and will (well should) let you allow to use the upcoming (10.5.6) AppleRTC.kext and AppleIntelCPUPowerManagement.kext (no disabler needed anymore) which will otherwise panic. Pls report back if it works or not, and what is working and what not, so this tool can grow. Readme is included in the Zip file. greetz P.S. I will release the source when its done And i like to thank all Chameleon/OSX Developers, especially zef, kabyl, modbin for helping all the time, keep up the good work! ---------Old Versions----------- Version 1.0.1d -fixed another search Routine issue -added -newHPET arg, for people still suffering "Package 0 didn't get a HPET" after patching. so you guys drag the Patcher in the Terminal and write -newHPET -Patcher uses now a bash script for obtaining the DSDT since GetDSDT didn't worked for some people. -contains _T_ Variable issues fix which caused non-compiling by mackerintel -contains "Method local variable is not initialized (Local0)" fix -contains CPU Aliases fix -contains RTC fix for upcoming AppleRTC.kext -contains HPET fix for AppleIntelCPUPowerManagement.kext DSDT_Patcher1.0.1d.zip Version 1.0.1c2 -Patcher uses now a bash script for obtaining the DSDT since GetDSDT didn't worked for some people. -fixed CPU Aliases patching (all what pointed to the removed Alias has to be patched as well) -added _T_ Variable issues fix which caused non-compiling by mackerintel -contains "Method local variable is not initialized (Local0)" fix -contains CPU Aliases fix -contains RTC fix for upcoming AppleRTC.kext -contains HPET fix for AppleIntelCPUPowerManagement.kext DSDT_Patcher1.0.1c2.zip Fixed DSDT.X issue DSDT_Patcher1.0.1c.zip Version 1.0.1b -fixed a patching routine issue which caused non-compiling dsdt -added "Method local variable is not initialized (Local0)" fix -contains CPU Aliases fix -contains RTC fix for upcoming AppleRTC.kext -contains HPET fix for AppleIntelCPUPowerManagement.kext DSDT_Patcher1.0.1b.zip Version 1.0.1a -fixed CPU Aliases fix -contains RTC fix for upcoming AppleRTC.kext -contains HPET fix for AppleIntelCPUPowerManagement.kext DSDT_Patcher1.0.1a.zip Version 1.0.1 -added CPU Aliases fix -added some device name fix -contains RTC fix for upcoming AppleRTC.kext -conatins HPET fix for AppleIntelCPUPowerManagement.kext DSDT_Patcher1.0.1.zip DSDT_Patcher.zip 1 Link to comment Share on other sites More sharing options...
spanakorizo Posted October 29, 2008 Share Posted October 29, 2008 can u explain why i should try it? i have no problems so far but i can't stop trying new stuff can't understand this thing with DSDT Link to comment Share on other sites More sharing options...
fassl Posted October 29, 2008 Author Share Posted October 29, 2008 i have no problems so far Yeah so far... but in 10.5.6 there will be a new AppleRTC.kext which will panic if you haven't your RTC Device patched in your DSDT. Other than the AppleIntelCPUPowerManagement.kext you cant just delete it. So better to fix your DSDT now, than having Problems later greetz Link to comment Share on other sites More sharing options...
spanakorizo Posted October 29, 2008 Share Posted October 29, 2008 ok i got it i'll try and post results Link to comment Share on other sites More sharing options...
Alundra Posted October 29, 2008 Share Posted October 29, 2008 You can use AppleRTC.kext from 10.5.5 but DSDT is the right way. Even my AZAL sound device I´ve managed to change it to HDEF with it. So, I´m glad for the work of the Chameleon, DSDT guys as well as DSDT Patcher Link to comment Share on other sites More sharing options...
FavleX Posted October 29, 2008 Share Posted October 29, 2008 thanks I'm trying to understand a bit more on DSDT , reading around on this very forum but.. What will change in future on ours osx86 with dsdt patcher possibility ? I mean , we can update 10.5.6 , and will be improvements in other areas , like ACPI for example ? Link to comment Share on other sites More sharing options...
mackerintel Posted October 29, 2008 Share Posted October 29, 2008 thanks I'm trying to understand a bit more on DSDT , reading around on this very forum but.. What will change in future on ours osx86 with dsdt patcher possibility ? I mean , we can update 10.5.6 , and will be improvements in other areas , like ACPI for example ? DSDT is a part of ACPI. Actually DSDT tells OS how to interract with the hardware (simplified way of telling it). OSX has an incomplete ACPI implementation which supports only a subset of DSDT. By replacing DSDT we can declare essentially the same interface but in the way that OSX understands. This potentially can solve nearly any ACPI-related problem (except if OSX bypasses ACPI). Other usage case is emulating by the means of DSDT features or hardware components not present on your system. But this is limited to devices that use ACPI. @all: does anybody know if binary protection uses ACPI? If so implementing binary protection emulator in DSDT would be a way to have a completely untouched OSX. Link to comment Share on other sites More sharing options...
FavleX Posted October 29, 2008 Share Posted October 29, 2008 DSDT is a part of ACPI. Actually DSDT tells OS how to interract with the hardware (simplified way of telling it). OSX has an incomplete ACPI implementation which supports only a subset of DSDT. By replacing DSDT we can declare essentially the same interface but in the way that OSX understands. This potentially can solve nearly any ACPI-related problem (except if OSX bypasses ACPI). Other usage case is emulating by the means of DSDT features or hardware components not present on your system. But this is limited to devices that use ACPI. @all: does anybody know if binary protection uses ACPI? If so implementing binary protection emulator in DSDT would be a way to have a completely untouched OSX. Thanks Indeed for ur awesome job mackerintel, In the meantime I understood how this "small" change , will make big improvement on osx86 , especially on a big unified bootloader So I stay tuned and ready to test. Tomorrow I try it on a DS4 Mboard Link to comment Share on other sites More sharing options...
anibalin Posted October 29, 2008 Share Posted October 29, 2008 @mackerintel: thanks for the explanation. As FavleX was wondering and searching about DSDT to understand more. Thanks again. Link to comment Share on other sites More sharing options...
fassl Posted October 29, 2008 Author Share Posted October 29, 2008 Well, emulating devices, i added for instance an SMC device to my DSDT, doesnt really do anything, but i have now SMC device in the IOReg: | +-o SMC <class IOACPIPlatformDevice, registered, matched, active, busy 0, retain 8> | | +-o SMCMotionSensor <class SMCMotionSensor, !registered, !matched, active, busy 0, retain 4> | | "CFBundleIdentifier" = "com.apple.driver.SMCMotionSensor" | | "IOUserClientClass" = "SMCMotionSensorClient" | | "IOClass" = "SMCMotionSensor" greetz Link to comment Share on other sites More sharing options...
FavleX Posted October 29, 2008 Share Posted October 29, 2008 Well, emulating devices, i added for instance an SMC device to my DSDT, doesnt really do anything, but i have now SMC device in the IOReg: | +-o SMC <class IOACPIPlatformDevice, registered, matched, active, busy 0, retain 8> | | +-o SMCMotionSensor <class SMCMotionSensor, !registered, !matched, active, busy 0, retain 4> | | "CFBundleIdentifier" = "com.apple.driver.SMCMotionSensor" | | "IOUserClientClass" = "SMCMotionSensorClient" | | "IOClass" = "SMCMotionSensor" greetz ..mmhh, probably I say an "idiot one" but I'm trying to enlight myself sorry in advance .. If one day the last update release from apple , requests a SMC Sensor, I can go ahead with updating just emulating it? Is this the meaning ? Link to comment Share on other sites More sharing options...
mackerintel Posted October 29, 2008 Share Posted October 29, 2008 Well, emulating devices, i added for instance an SMC device to my DSDT, doesnt really do anything, but i have now SMC device in the IOReg: | +-o SMC <class IOACPIPlatformDevice, registered, matched, active, busy 0, retain 8> | | +-o SMCMotionSensor <class SMCMotionSensor, !registered, !matched, active, busy 0, retain 4> | | "CFBundleIdentifier" = "com.apple.driver.SMCMotionSensor" | | "IOUserClientClass" = "SMCMotionSensorClient" | | "IOClass" = "SMCMotionSensor" greetz Very nice fassl. Way to go. @all: emulating SMC could enable the full-feature usage of unpatched PowerManagementBundle and sleep with vanilla kernels Link to comment Share on other sites More sharing options...
fassl Posted October 29, 2008 Author Share Posted October 29, 2008 Very nice fassl. Way to go.@all: emulating SMC could enable the full-feature usage of unpatched PowerManagementBundle and sleep with vanilla kernels Sleep, well fixing the _WAK Device in DSDT could enable sleep, some _WAK Devices need this at the end: Return(Package(0x02){0x00, 0x00}) thx to realityiswhere for pointing that out. Link to comment Share on other sites More sharing options...
BlackCH Posted October 29, 2008 Share Posted October 29, 2008 doesnt get to compile dsdt.aml even with '-f' flag... We are done patching, press any key to try to compile the fixed DSDT Intel ACPI Component Architecture ASL Optimizing Compiler version 20080926 [Oct 4 2008] Copyright (C) 2000 - 2008 Intel Corporation Supports ACPI Specification Revision 3.0a ./dsdt_fixed.txt 1: ACPI (Local2) Error 4095 - ^ syntax error, unexpected PARSEOP_NAMESEG, expecting PARSEOP_DEFINITIONBLOCK ASL Input: ./dsdt_fixed.txt - 16271 lines, 586089 bytes, 0 keywords AML Output: (null) - 0 bytes, 0 named objects, 0 executable opcodes Compilation complete. 1 Errors, 0 Warnings, 0 Remarks, 0 Optimizations Compiling done, if it worked, you have now a patched DSDT in dsdt.aml If the compiling went wrong, you could force to build it with ./DSDT\ Patcher -f (try this DSDT at your own risk) HP-6720s:DSDT_Patcher1.0.1 dlow$ Is there a way to patch it manually (and compile it)? Link to comment Share on other sites More sharing options...
fassl Posted October 29, 2008 Author Share Posted October 29, 2008 Sure, patch Debug/dsdt_fixed.txt then run ./iasl -ta dsdt_fixed.txt Link to comment Share on other sites More sharing options...
BlackCH Posted October 30, 2008 Share Posted October 30, 2008 Sure, patch Debug/dsdt_fixed.txt then run ./iasl -ta dsdt_fixed.txt I ended up with a dsdt.hex file. Can I make the .aml file out of the hex? Link to comment Share on other sites More sharing options...
pasi Posted October 30, 2008 Share Posted October 30, 2008 I ended up with a dsdt.hex file. Can I make the .aml file out of the hex? @BlackCH Can you post your dsdt.dsl. I am interesting to see how you manage both core to work. I have hp 530 and for now is no chance to run both core. Thare is no aliaces problem and processors in dsdt table are described in diferent way then in other comps thanks Link to comment Share on other sites More sharing options...
BlackCH Posted October 30, 2008 Share Posted October 30, 2008 I ended up with a dsdt.hex file. Can I make the .aml file out of the hex? Nevermind, the file was actually empty. my dsdt.dsl wont compile (not even unmodified!). I tryed ./iasl -sa which gave me a .asm file but empty as well... so I will try to do it on linux to see if I get to it. @BlackCHCan you post your dsdt.dsl. I am interesting to see how you manage both core to work. I have hp 530 and for now is no chance to run both core. Thare is no aliaces problem and processors in dsdt table are described in diferent way then in other comps thanks Dual core was working out of the box. Im just trying to get RTC/HPET fixed.... But here is my (untouched) dsdt file if you want to have a look. Maybe you could help me dsdt.dsl_HP6720s.zip 1 Link to comment Share on other sites More sharing options...
mackerintel Posted October 30, 2008 Share Posted October 30, 2008 Nevermind, the file was actually empty. my dsdt.dsl wont compile (not even unmodified!). I tryed ./iasl -sa which gave me a .asm file but empty as well...so I will try to do it on linux to see if I get to it. Dual core was working out of the box. Im just trying to get RTC/HPET fixed.... But here is my (untouched) dsdt file if you want to have a look. Maybe you could help me Your dump seems to be uncomplete and/or incorrectly disassembled. Try using latest iasl and look if you have SSDT Link to comment Share on other sites More sharing options...
SticMAC™ Posted October 30, 2008 Share Posted October 30, 2008 ASUS P5B-Deluxe.. Done mine, copied it over to the root with the new "boot", removed IntelCPUPMDisabler.kext and everything seems fine! What is the function of the "dsdt_acpi12.diff" that comes with the "boot" file and where should it go!? How can one see, test to see if it works or is the fact that I could remove IntelCPUPMDisabler.kext enough proof!? SticMAN Link to comment Share on other sites More sharing options...
fassl Posted October 30, 2008 Author Share Posted October 30, 2008 ASUS P5B-Deluxe..Done mine, copied it over to the root with the new "boot", removed IntelCPUPMDisabler.kext and everything seems fine! What is the function of the "dsdt_acpi12.diff" that comes with the "boot" file and where should it go!? How can one see, test to see if it works or is the fact that I could remove IntelCPUPMDisabler.kext enough proof!? SticMAN As soon as your AppleIntelCPUPowerManagement.kext gets initialised without panic, the HPET patch worked. greetz Link to comment Share on other sites More sharing options...
Morphius Faydal Posted October 30, 2008 Share Posted October 30, 2008 I have iATKOS v4.1i updated to 10.5.5 via Software Update. Do I need this/how do I check if I need this? Link to comment Share on other sites More sharing options...
fassl Posted October 30, 2008 Author Share Posted October 30, 2008 Run the patcher, when it says: "Found IRQ in RTC Device -> removed", yeah then you need this to be able to update to 10.5.6 when its there. greetz Link to comment Share on other sites More sharing options...
Morphius Faydal Posted October 30, 2008 Share Posted October 30, 2008 The readme says: You need to install the Chameleon Bootloader with DSDT override from: http://forum.insanelymac.com/index.php?showtopic=132757# for this, use the newest version. How do I check if I'm using the Chameleon bootloader? I don't think I selected when I installed iATKOS, but I'm not 100% on that... I may be using the Darwin bootloader. Link to comment Share on other sites More sharing options...
fassl Posted October 30, 2008 Author Share Posted October 30, 2008 Chameleon is a modified Darwin bootloader, pretty all new distros come with Chameleon bootloader as default. Look up your Root on your OSX Partition, if there is a file called boot you should have chameleon installed. greetz Link to comment Share on other sites More sharing options...
Recommended Posts