Jump to content

DSDT Auto-Patcher


MaLd0n
 Share

5,756 posts in this topic

Recommended Posts

this app is amazing, ill work it when i get home tonight ;)

 

question; i have a p35-dq6. does it matter what version of the bios i have? and also, do i just put all the files from the EXTRAS.zip into my /Extra/Extensions folder? do i need anything else to get it working?

 

cheers

Link to comment
Share on other sites

this app is amazing, ill work it when i get home tonight ;)

 

question; i have a p35-dq6. does it matter what version of the bios i have? and also, do i just put all the files from the EXTRAS.zip into my /Extra/Extensions folder? do i need anything else to get it working?

 

cheers

 

any version of bios

 

Look it

dutchiee___.zip

 

you could send me an output ioreg?

ioreg -fl

Thanks :)

Link to comment
Share on other sites

New version, all patches in one package and option to patch an existing DSL or AML file.

Multi-platform version, tested on Mac OS, Linux and Windows.

Requires JRE to run.

IASL version: 20101013

 

smilegu.png

Link to comment
Share on other sites

Very nice mald0n, good job with all these "mobo packs".

 

Just a suggestion: adding a screenshot of the app window would help people to understand how it works before downloading it. =)

 

done

 

:)

Link to comment
Share on other sites

Can you add a about button

that state what version, and last edited, the writer, weblink.....etc

 

thank you.

 

BTW: can you ask El, to do this too for his program. Many Thanks

Link to comment
Share on other sites

I have been reading as fast as I am able and attempting to learn about DSDT patching. So far, I havent gotten out of the kiddy pool :)

 

My OS X system is a retail 10.6.0 upgraded to 10.6.4 running on an HP Pavilion model p6240f desktop system. As it says in my sig, the main board has an Intel Core2 Quad with 8Gb ram. windows 7 Premium is installed on the internal sata drive and OS X is installed on an external eSATA hardware Raid1 volume. The system runs the vanilla mach_kernel and currently has no DSDT file in /Extra.

 

I have used cpu-z under Win7 to learn about the system board and asciidump/acpixtract under Ubuntu 10.04 to get the native acpi tables. I don't know if anyone else in the community is using this same HP platform for OS X or not. So far, I haven't located anyone. I would like to get a correctly patched DSDT made for this system, but I really need help.

 

post-51049-1288656117_thumb.png post-51049-1288656130_thumb.png post-51049-1288656142_thumb.png

 

I am currently using chameleon 2 RC5 - not latest build.

 

My /Extra/Extensions.mkext is built using:

drw-r--r--@ 3 root  wheel  102 Sep 27 08:37 AppleIntelPIIXATA.kext
drw-r--r--  4 root  wheel  136 Oct 19 19:55 IOPCIFamily.kext
drw-r--r--@ 3 root  wheel  102 Sep 27 08:37 PlatformUUID.kext
drw-r--r--@ 3 root  wheel  102 Oct 10 13:17 VoodooHDA.kext
drw-r--r--@ 3 root  wheel  102 Oct 31 11:25 VoodooMonitor.kext
drw-r--r--@ 3 root  wheel  102 Oct 26 07:03 fakesmc.kext

 

I have three foreign kext in /S/L/E which were supplied by Logitech for my MarbelMouse (trackball)

drwxr-xr-x  3 root  wheel  102 May 18  2009 LogitechForceFeedback.kext
drwxr-xr-x  3 root  wheel  102 Oct 11 23:50 LogitechHIDDevices.kext
drwxr-xr-x  3 root  wheel  102 May 31 12:02 LogitechUnifying.kext

 

kextstat | grep LPC shows:

62	0 0xffffff7f8100d000 0x3000	 0x3000	 com.apple.driver.AppleLPC (1.4.12) <9 5 4 3>

 

If anyone can help me I would greatly appreciate it. If I failed to provide the correct information, just let me know what is needed.

 

ioreg.txt

HP_p6340f_asciiDump.zip

HP_p6340f_acpi.zip

Link to comment
Share on other sites

@BladeRunner,

Just a point of start, and please sorry for my english. I changed (into HP_p6340f_acpi folder) DSDT.dat to DSDT.aml (just renamed), then opened with DSDTSE 1.4.3 (please sorry is my prefer editor), then save it to dsdt.dsl... which is your base file for modifications now (you can work from this file)... just needed to fix a couple of hexadecimal arguments errors (length = max - min + 1) for do it compilable (search "error" w/o quotes in dsdt.dsl), now is free of compilation errors, just have some warnings (not important). Therefore, from this point you need to apply it all fixes-hacks. I hope this helps. Good Luck.

HP_p6340f_acpi_DSDT_fixed.zip

Link to comment
Share on other sites

I need to get around to doing a stable 10.6 install on my Xeon motherboard (supermicro x7dwa-n) soon, would this patcher be of any use? I only did the RTC patch on my existing DSDT because I needed that to get things working under 10.6.1, and got that as far as 10.6.2. I was using a USB key to do my EFI emu loader (cham/pc-efi, so that I could toggle between 10.5.x & 10.6.x easily by choosing the drive) and it had uhci/ehci issues so I went back to just my 'main' 10.5.8 install some time ago. Given there's only a handful of other Xeon users here I've not seen a lot of info but it would be nice to move up so I can use my GTX285 for some quartz composer playingk (since my imac & both macbook pros are slow in comparison.)

Link to comment
Share on other sites

@BladeRunner,

Just a point of start, and please sorry for my english. I changed (into HP_p6340f_acpi folder) DSDT.dat to DSDT.aml (just renamed), then opened with DSDTSE 1.4.3 (please sorry is my prefer editor), then save it to dsdt.dsl... which is your base file for modifications now (you can work from this file)... just needed to fix a couple of hexadecimal arguments errors (length = max - min + 1) for do it compilable (search "error" w/o quotes in dsdt.dsl), now is free of compilation errors, just have some warnings (not important). Therefore, from this point you need to apply it all fixes-hacks. I hope this helps. Good Luck.

 

Thanks for the reply. I got a copy of the latest DSDTSE and now have a base DSDT.aml with no errors or warnings. Next is to begin adding the DSDT hacks.

Link to comment
Share on other sites

Thanks for the reply. I got a copy of the latest DSDTSE and now have a base DSDT.aml with no errors or warnings. Next is to begin adding the DSDT hacks.

 

Hi BladeRunner

Look it

 

Let me know whether it is working or not.

 

i forgot to ask, before i try a clean install cause my current rig is bricked, are those kexts in the zip for 10.6.4 and are they 64bit compatible or no?

 

cheers

32/64

 

Thank you

Why should not want the test results?

 

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

GA P35-DQ6 BIOS F9

E6300 2.8@ 3.5

DDR2 PC6400 2GX2

8600GTS 256M

 

Chameleon2 RC5 rev.629

Snow leopard 10.6.5 IOH568

 

test.jpg

 

?????

Link to comment
Share on other sites

Hi BladeRunner

Look it

 

Let me know whether it is working or not.

 

I tested by booting without a dsdt.aml and then ran the auto_patcher you made for me. As far as I can tell, it did not work. The dsdt.aml file I found on the desktop still had the cpu aliases, HPET irq entries were still there and no DTGP method could be found. I don't know what to check for the other patches.

 

Java -version provides:

farpoint:~ lrh$ java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04-307-10M3261)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03-307, mixed mode)

 

Don't know if that makes a difference or not.

Link to comment
Share on other sites

Is it possible to insert ( i mean ) to patch the P5k Premium - and copy the dsdt patch to the bios directly ?

 

I've just used the MMTools to insert the Slic 2.1 and replace some optionroms ... everything looks very very cool. but i would like to also patch the dsdt directly ...

 

As posted in Portuguese here:

 

http://www.insanelymac.com/forum/index.php...75368&st=20

Link to comment
Share on other sites

I tested by booting without a dsdt.aml and then ran the auto_patcher you made for me. As far as I can tell, it did not work. The dsdt.aml file I found on the desktop still had the cpu aliases, HPET irq entries were still there and no DTGP method could be found. I don't know what to check for the other patches.

 

Java -version provides:

farpoint:~ lrh$ java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04-307-10M3261)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03-307, mixed mode)

 

Don't know if that makes a difference or not.

 

Please try with this, I made a mistake in the previous patcher, there was an invalid character that caused the patch not being applied completely

 

 

 

Is it possible to insert ( i mean ) to patch the P5k Premium - and copy the dsdt patch to the bios directly ?

 

I've just used the MMTools to insert the Slic 2.1 and replace some optionroms ... everything looks very very cool. but i would like to also patch the dsdt directly ...

 

As posted in Portuguese here:

 

http://www.insanelymac.com/forum/index.php...75368&st=20

respondido lá

 

:)

Link to comment
Share on other sites

Please try with this, I made a mistake in the previous patcher, there was an invalid character that caused the patch not being applied completely

 

OK! This one worked. Same test method - boot without dsdt - run patcher - open with DSDTSE and compile. I noticed zero errors, comments aqnd warnings. The optimizations had dropped from 66 to 59. The cpu aliases were gone. DTGP was installed, etc...

 

I see now that sleep works and it appears to wake from seep ok. Still testing other stuff, but a great step forward.

 

Now, If I can just fix some of the things that got me started on this trail in the first place.

 

For example, the System Profiler lists only the nVidia graphics card as a PCI card but, there are three other PCIe cards in the system.

 

Edit: I just tested and found that now, I can run without the patched IOPCIFamily.kext I had been using. Previously, my trackball & keyboard would not function without it. One less legacy kext to keep :rolleyes:

 

Second Update: I did some additional testing and found that with this patched dsdt I don't need the Logitech kext I had been using to make my USB connected trackball & keyboard work. I removed them and rebuilt the kext cache. Even fewer modified/legacy kext to support. :P

drwxr-xr-x  3 root  wheel  102 May 18  2009 LogitechForceFeedback.kext
drwxr-xr-x  3 root  wheel  102 Oct 11 23:50 LogitechHIDDevices.kext
drwxr-xr-x  3 root  wheel  102 May 31 12:02 LogitechUnifying.kext

Link to comment
Share on other sites

Example

 

into device name_adr Zero parent_adr 0x001E0000 remove_entry;
into device name_adr 0x001E0000 insert
begin
Device (LAN0)\n
{\n
   Name (_ADR, Zero)\n
   Method (_DSM, 4, NotSerialized)\n
   {\n
       Store (Package (0x08)\n
           {\n
               "AAPL,slot-name", \n
               Buffer ()\n
               {\n
                   "Slot-2"\n
               }, \n
               "model", \n
               Buffer ()\n
               {\n
                   "Realtek RTL8169/8110 Gigabit Ethernet"\n
               }, \n
               "built-in", \n
               Buffer ()\n
               {\n
                   0x00\n
               }, \n
               "device_type", \n
               Buffer ()\n
               {\n
                   "Ethernet Controller"\n
               }\n
           }, Local0)\n
       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
       Return (Local0)\n
   }\n
 }
end

 

Device (LAN0)
               {
                   Name (_ADR, Zero)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x08)
                           {
                               "AAPL,slot-name", 
                               Buffer (0x07)
                               {
                                   "Slot-2"
                               }, 

                               "model", 
                               Buffer (0x26)
                               {
                                   "Realtek RTL8169/8110 Gigabit Ethernet"
                               }, 

                               "built-in", 
                               Buffer (One)
                               {
                                   0x00
                               }, 

                               "device_type", 
                               Buffer (0x14)
                               {
                                   "Ethernet Controller"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }
           }

 

 

MaLd0n_2010_11_03___s_15.56.17.png

MaLd0n_2010_11_03___s_16.01.56.png

Link to comment
Share on other sites

Look it

Babiloe.zip

Extra and DSDT

 

into method label DTGP remove_entry;
into definitionblock code_regex . insert
begin
Method (DTGP, 5, NotSerialized)\n
{\n
   If (LEqual (Arg0, Buffer (0x10)\n
           {\n
               /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, \n
               /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B\n
           }))\n
   {\n
       If (LEqual (Arg1, One))\n
       {\n
           If (LEqual (Arg2, Zero))\n
           {\n
               Store (Buffer (One)\n
                   {\n
                       0x03\n
                   }, Arg4)\n
               Return (One)\n
           }\n
           If (LEqual (Arg2, One))\n
           {\n
               Return (One)\n
           }\n
       }\n
   }\n
   Store (Buffer (One)\n
       {\n
           0x00\n
       }, Arg4)\n
   Return (Zero)\n
}
end;
into_all scope label _PR code_regex Alias\s\([^\n]+\n removeall_matched;
into_all scope label \_PR code_regex Alias\s\([^\n]+\n removeall_matched;
into method label _DSM parent_adr 0x001D0007 remove_entry;
into device name_adr 0x001D0007 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x04)\n
{\n
"AAPL,clock-id",\n
Buffer (One)\n
{\n
0x01\n
},\n
"device_type",\n
Buffer (0x05)\n
{\n
"EHCI"\n
}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
into method label _DSM parent_adr 0x001A0007 remove_entry;
into device name_adr 0x001A0007 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x04)\n
{\n
"AAPL,clock-id",\n
Buffer (One)\n
{\n
0x02\n
},\n
"device_type",\n
Buffer (0x05)\n
{\n
"EHCI"\n
}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
into device label PWRB code_regex (Name\s\()_HID(\,\sEisaId\s\(\"PNP0C0C\"\)\)) replace_matched begin %1_CID%2 end;
into device name_hid PNP0000 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0100 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0B00 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0103 code_regex_not IRQNoFlags code_regex Name\s\(([^,]+),\sResourceTemplate\s\(\)\n\s+\{((?:.|\n)*)\}\) replace_matched
begin
Name (%1, ResourceTemplate ()\n
                   {\n
                       IRQNoFlags ()\n
                           {0}\n
                       IRQNoFlags ()\n
                           {8}\n
%2
})
end;
into method label _DSM parent_adr 0x001F0000 remove_entry;
into device name_adr 0x001F0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0xb9, 0x27, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
into device name_adr 0x001F0003 parent_label PCI0 remove_entry;
into device label PCI0 insert
begin
Device (SBUS)\n
{\n
   Name (_ADR, 0x001F0003)\n
   Device (BUS0)\n
   {\n
       Name (_CID, "smbus")\n
       Name (_ADR, Zero)\n
       Device (DVL0)\n
       {\n
           Name (_ADR, 0x57)\n
           Name (_CID, "diagsvault")\n
       }\n
   }\n
   Method (_DSM, 4, NotSerialized)\n
   {\n
       Store (Package (0x02)\n
           {\n
               "device-id", \n
               Buffer (0x04)\n
               {\n
                   0x30, 0x3A, 0x00, 0x00\n
               }\n
           }, Local0)\n
       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
       Return (Local0)\n
   }\n
}
end;
into_all all code_regex (Acquire\s\(MUTE,\s0x)....\)
replace_matched
begin
%1FFFF)
end;
into device label PIC set_label begin IPIC end;
into device label TMR set_label begin TIMR end;
into device label RTC0 set_label begin RTC end;
into device label IDE1 set_label begin SATA end;
into_all all code_regex TMR replaceall_matched begin TIMR end;
into_all all code_regex RTC0 replaceall_matched begin RTC end;
into device label SPKR remove_entry;
into device label FDC remove_entry;
into device label FDC0 remove_entry;
into device label LPT1 remove_entry;
into device label LPTE remove_entry;
into device label UAR1 remove_entry;
into device label UAR2 remove_entry;
into device label ECP1 remove_entry;
into device label MEM remove_entry;
into device label ^^RMEM remove_entry;
into all code_regex Notify\s\(\\_SB.PCI0.PX40.UAR1,\s0x02\) remove_matched;
into all code_regex Notify\s\(\\_SB.PCI0.LPCB.UAR1,\s0x02\) remove_matched;
into all code_regex Notify\s\(\\_SB.PCI0.PX40.UAR2,\s0x02\) remove_matched;
into all code_regex Notify\s\(\\_SB.PCI0.LPCB.UAR2,\s0x02\) remove_matched;
into method label _PTS code_regex_not If\s\(LEqual\s\(Arg0,\s0x05\)\) code_regex ^((?:.|\n)*)$ replace_matched
begin
       If (LEqual (Arg0, 0x05)) {}\n
       Else\n
       {\n
%1
       }
end

 

you need a clean installation

or

Remove what does not need

including Extensions.mkext

 

Tested for several days:

Result:

1. The fakesmc.kext on babiloe.zip cannot fix permission correctly using pfix 3.0, removed and changed with all new fakesmc form mozojodo.

2. The paragon ntfs and norton antivirus cant work, i don't know because of the dsdt.aml, the 64bit kernel since my 4gb upgrade, or the 10.6.4 upgrade.

3. Shutdown properly now without OpenHaltRestart.kext ! Congrat!

4. I need graphicsenabler yes for my geforce 8600gt, add to com.boot...

5. Upgrading HDAaudio mpkg, looks fine now. Where this kext installed anyway? not on extra now...

6. Attansic L2 looks having trouble, [ ithink because of 64 bit kernel, not happen in 2gb last year]

7. The main problem now is: After sleep, the process wake success but there is no live signs on the monitor..

Hmm.....do i need sleepenabler.kext 10.6.4 ?

Link to comment
Share on other sites

7. The main problem now is: After sleep, the process wake success but there is no live signs on the monitor..

Hmm.....do i need sleepenabler.kext 10.6.4 ?

 

Nops

S3 is enabled in bios?

 

look at the energy saver

mald0n20100923s164347.png

 

I have a similar problem

the computer wakes up but I have no image

with my old monitor(DVI)

worked

not with the new(VGA :thumbsup_anim: )

I use the second port on the GPU

Bingo

Link to comment
Share on other sites

MaLd0n,

 

I have not tested the Asus Rampage yet. I have to dig that Desktop out soon.

 

I have this HP a6040n with an Asus OEM Mobo. Its P5LP-LE written on the MB. (Asus P5LD2-VM DH Retail board equivalent).

 

From my notes over 3 years ago I see that I wrote down that the audio is a realtek ALC888 chipset.

 

http://h10010.www1.hp.com/wwpc/ca/en/ho/WF...2-80128077.html

 

 

It is a 945G/ICH7 chipset but I am not using the internal graphics. I have a gigabyte 8400GS 512MB Graphics card in the PCI-E slot. GOing back and forth with the 7300 PNY graphics card and Gigabyte graphics card.

 

 

I did edit my own DSDT from scratch but for some reason the RTC still causes the cmos to reset? I removed IRQ and changed 02 to 04.

 

It does not wake from sleep. <<< See Edited post

 

Very odd CPU Scope. Address is all 0s.

 

LPC I got working

 

Could you have a look and a possible patch?

 

If you want to have a look at my edited DSDT I can include it next time.

 

A lot of the DSDT script is very similar to Gigabyte DSDTs or its seems to be?

 

I have included unmodified DSDT, IOREG, KEXTSTAT of LPC. LSPCI

 

4_files.zip

 

 

EDITED:

 

SLeep/Wake is working. I had a Nvidia 7300 Graphics card and I don't think they work well in SL? I replaced back with the Gigabyte 8400GS.

 

 

So just cmos reset, audio and ethernet , smbus and removal of the devices not needed. I could follow some of your patches to see what is removed and changed but if you want to add this board to your growing list I have attached files above.

 

Thanks

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...