Jump to content

DSDT Patcher


fassl
 Share

752 posts in this topic

Recommended Posts

I have bios and DSDT_Patcher1.0.1e. How i can patch my bios ??

I have windows.

You dont need to "patch" whole BIOS - dsdt patch patches only a special part (ACPI) of the bios by an on the fly patch by an bootloader supports dsdt patching.

So if you have OSX86 installed but need dsdt patched you only need to run the dsdt pacther above and need no windows nor

an BIOS file!

 

The other dsdt patcher (running under win) is an other thing - it can also modify an bios file for real flashing it !

BUT: If something is wrong with that win patcher - you board may get unusable at all ! Some eary birds of that win-dsdt-patcher did have flashed their boards to dead already!!!

Thats NOT happen with this dsdt patching method.

Link to comment
Share on other sites

BUT: If something is wrong with that win patcher - you board may get unusable at all ! Some eary birds of that win-dsdt-patcher did have flashed their boards to dead already!!!

Thats NOT happen with this dsdt patching method.

 

You also have the option of creating the DSDT.aml to use with that other program used it for both my machines here works great doing that.

Link to comment
Share on other sites

You also have the option of creating the DSDT.aml to use with that other program used it for both my machines here works great doing that.

 

Yes i know and it think thats (using that win app as an dsdt.aml creator) the best solution.

I dont know why people risk an bios flash if they could use onthefly dsdt patch with chameleon (or PCEFIV9).

Link to comment
Share on other sites

Yes i know and it think thats (using that win app as an dsdt.aml creator) the best solution.

I dont know why people risk an bios flash if they could use onthefly dsdt patch with chameleon (or PCEFIV9).

 

Yeah tell me about it I can't see no sense in it either the DSDT method works great and if you get the chameleonsm you don't need any patched SMBIOS or enabler for it either, I'm down to the AHCI plist fix for my machines everything else is vanilla.

Link to comment
Share on other sites

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

 

10.5.6 upgrade panics at 52% forcing me to power off. Then the system panics on boot. Using Stage XNU 9.4.0 kernel.

 

Using version e :

 

$ ./DSDT\ Patcher

 

DSDT Patcher 1.0.1e -- report Bugs to superfassl@gmail.com

enclose "DSDT Patcher/Debug/USER.tar"

 

 

Press any key to continue...

 

 

 

Getting the DSDT through ioreg...

 

 

 

Decompiling the DSDT...

 

Intel ACPI Component Architecture

AML Disassembler version 20080926 [Oct 4 2008]

Copyright © 2000 - 2008 Intel Corporation

Supports ACPI Specification Revision 3.0a

 

Loading Acpi table from file ./dsdt.dat

Acpi table [DSDT] successfully installed and loaded

Pass 1 parse of [DSDT]

Pass 2 parse of [DSDT]

Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)

................................................................................

................................................................................

................................................................................

......................................................................

Parsing completed

Disassembly completed, written to "./dsdt.dsl"

 

 

 

 

Done, now start the Patching!

 

Patching RTC...

 

RTC Device found : Device (RTC)

No IRQ found in RTC Device, should be fine

Patching HPET...

 

HPET Device found : Device (HPET)

IRQ's written to HPET

HPET patched

Which OS to emulate? [0=Darwin,1=WinXP, 2=WinVista]

0

Fixing various Issues...

 

Done

 

 

 

 

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 © 2000 - 2008 Intel Corporation

Supports ACPI Specification Revision 3.0a

 

./dsdt_fixed.txt 390: Method (_WAK, 1, NotSerialized)

Warning 1080 - ^ Reserved method must return a value (_WAK)

 

./dsdt_fixed.txt 858: Method (_WED, 1, NotSerialized)

Warning 1087 - ^ Not all control paths return a value (_WED)

 

./dsdt_fixed.txt 858: Method (_WED, 1, NotSerialized)

Warning 1080 - ^ Reserved method must return a value (_WED)

 

./dsdt_fixed.txt 1148: Method (WMCA, 3, NotSerialized)

Warning 1087 - ^ Not all control paths return a value (WMCA)

 

./dsdt_fixed.txt 1250: Method (WMCB, 3, NotSerialized)

Warning 1087 - ^ Not all control paths return a value (WMCB)

 

./dsdt_fixed.txt 1299: Method (WMCE, 3, NotSerialized)

Warning 1087 - ^ Not all control paths return a value (WMCE)

 

./dsdt_fixed.txt 3367: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3390: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3417: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3423: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3429: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3795: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3807: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3814: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

./dsdt_fixed.txt 3828: Field (RAM, AnyAcc, Lock, Preserve)

Error 4075 - ^ Host Operation Region requires ByteAcc access

 

ASL Input: ./dsdt_fixed.txt - 5293 lines, 180354 bytes, 2142 keywords

Compilation complete. 9 Errors, 6 Warnings, 0 Remarks, 31 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)

 

----

 

Cannot patch DSDT. Don't know if it is needed. But in spite of PCEFIv9 + Chameleon 1.0.12, I cannot get hibernate (deep sleep) working.

 

Acer Travelmate 2420. iDeneb 1.3 10.5.5

Link to comment
Share on other sites

@fassl Brother ... add the gma950 fix to the dsdt patcher :D

 

+1

I too wanna see a patcher (even if a different version) that adds the new GMA950 code. It will help so many people.

Link to comment
Share on other sites

Hello,

 

I have a GA Ep45 DS4P

 

I was not able to load the AppleIntelCPUPowerManagement.kext until I used the -newHPET argument. The kext loaded, I added a disabler kext and installed 10.5.6 from my utility partition.

 

The result is that I loose my ethernet connection (via a Trendnet PCI card)

 

I can't get the system to identify the connection until I remove DSDT.aml from root and re boot.

 

Does this suggest that I did not correctly patch DSDT?

 

Does it suggest that I am an idiot and missed a step along the way?

 

Many thanks for all the hard work.

Link to comment
Share on other sites

I need help with the patcher.

I am running a Rampage II Extreme with a i7 920 chip.

The only way I can install iPC osx86 I need to disable HT and set cores to 1.

I was told that after the install is done that I can run the patcher and then enable all cores and turn on HT.

Is this true?

 

Second problem.

When I run the patcher it does not create the .aml file.

Does anyone know why.

 

Thanks

JN

Link to comment
Share on other sites

Im using the DSDT Patcher along with Chameleon (PCEFI V9), in three diferents machines

 

One desktop / 2 laptops.

 

All is working good although I will like to understand HOW can I insert the clamshell (for laptop) capability on the DSDT, per coments of Superhai on his forum:

 

Superhai wrote:

The DSDT mod in chameleon can be modified to give a better result.

 

But I searched on this and others forums about for the necessary modifications, I came with empty results.

Link to comment
Share on other sites

Another nice thing to add in your laptop DSDT: (Under _SB)

 

		Device (PNLF)
	{
		Name (_HID, EisaId ("APP0002"))
		Name (_CID, "backlight")
		Name (_UID, 0x0A)
		Name (_STA, 0x0B)
	}

 

Might help you in loading the backlight control

 

I have laptop Samsung R560 with backlight control problem!

I try insert this block into my DSDT.aml!

Not work! :P

But structure of my DSDT are different:

DSDT.aml.zip

Where my error?

 

Can anybody help me?

Link to comment
Share on other sites

  • 2 weeks later...

I would like to thank Fassl and all the others who help developing this method...

I have Successfully DSDTeed my GA-EP45t-DS3 running on 10.5.6, Using the patcher and the know how from this thread. I had to fix the WAK return and I have also replaced the AZAL with HDEF and applied my pin configurations for my Audio to work with out the HDA enabler and the Audio string for EFI.

 

I wonder if there is a way of editing the Model Name and such in the DSDT ? my model name still shows as GA-EP45t-DS3

If this can be edited... wouldn't it help using the vanilla AppleSMBIOS.kext reporting correctly without resolvers or enablers?

 

one other question, Can we also get rid of the EFI strings or injectors for other devices as Graphics or ethernet ect..?

 

thnx

Link to comment
Share on other sites

I would like to thank Fassl and all the others who help developing this method...

I have Successfully DSDTeed my GA-EP45t-DS3 running on 10.5.6, Using the patcher and the know how from this thread. I had to fix the WAK return and I have also replaced the AZAL with HDEF and applied my pin configurations for my Audio to work with out the HDA enabler and the Audio string for EFI.

 

I wonder if there is a way of editing the Model Name and such in the DSDT ? my model name still shows as GA-EP45t-DS3

If this can be edited... wouldn't it help using the vanilla AppleSMBIOS.kext reporting correctly without resolvers or enablers?

 

one other question, Can we also get rid of the EFI strings or injectors for other devices as Graphics or ethernet ect..?

 

thnx

 

You may want to check the threads below for an alternative way to create the DSDT for your string questions and the chameleonsm file copied to /boot to take care of the model number among other settings.

 

 

http://forum.insanelymac.com/index.php?sho...=142434&hl=

 

http://forum.insanelymac.com/index.php?sho...=137112&hl=

Link to comment
Share on other sites

Im afraid after reading all this i still cant get my head around DSDT. Can somebody please explain to me what patching dsdt means to osx86? also why do people do it? what does it eliminate the need of? i know this is a complete n00b question but for some reason i cant figure it out. Can anyone help me?

 

thanks alot

flash.

Link to comment
Share on other sites

Im afraid after reading all this i still cant get my head around DSDT. Can somebody please explain to me what patching dsdt means to osx86? also why do people do it? what does it eliminate the need of? i know this is a complete n00b question but for some reason i cant figure it out. Can anyone help me?

 

thanks alot

flash.

 

My understanding of the idea is this. All BIOS's contain tables of the devices that are present in your computer and available for use by an OS which uses the information contained in these tables to initialize the devices using these settings. Now with OS X the BIOS cannot be read because it use a EFI firmware chip which is roughly equivalent to a BIOS for the same purpose what we are doing with the DSDT is injecting the values/capabilities of our devices into OS X's device tree at boot so it will know what devices we have and what they can do. Using this method allows you to not have to patch/disable/remove .kext such as the AppleIntelCPUManagement.kext which causes kernel panics on a Hack due to the mainly broken ACPI in most BIOS's then some have problems with Multi-CPU due to broken HPET implementation so the DSDT can fix these and many others like the graphics and sound fix in the other method I linked to.

 

thnx MacUser2525

 

appreciated

 

Your welcome.

Link to comment
Share on other sites

OK wicked! i think i understand now. SO with the dsdt patcher, do we need to do much manual editing of the dsdt or does the patcher try to take care of the devices it injects?

 

This patcher here tries to do it automatically for what it does the other I linked to gives the choice of which fixes to include plus will modify your BIOS for install onto the machine I don't bother with that part of it the DSDT.aml works fine for my needs.

Link to comment
Share on other sites

So, the DSDT patch will modify my BIOS??? Or just something on the HDD with Leopard installation. I have also Windows installed, so I want to have my motherboard´s bios without any touches from Leopard :lol:

Thanks for explanation

 

The DSDT patcher described here just takes what your motherboard reports, fixes certain specific problems, and recompiles it into a form that one of the EFI bootloaders can handle. It works too. :D

Link to comment
Share on other sites

So, the DSDT patch will modify my BIOS??? Or just something on the HDD with Leopard installation. I have also Windows installed, so I want to have my motherboard´s bios without any touches from Leopard :)

 

 

Thanks for explanation

 

You can just use the DSDT.aml file the program will generate for you it works fine doing that so no need to install the patched BIOS it creates as well.

Link to comment
Share on other sites

 Share

×
×
  • Create New...