Jump to content

DSDT Patcher


fassl
 Share

752 posts in this topic

Recommended Posts

ac3bcn,

 

What mods (if any) are you making to AppleHDA.kext?

 

Thanks,

SMF

Hi SMF, I didn't patch the AppleHDA binary, just add PicConfigurtions, CODEC ID 10EC0885 and Layout ID 12(0x0C) in DSDT.aml, which is a codec supported in last AppleHAD.kext.

Then I used Layout and PathMaps from StickPin on HDAPlatformDriver (http://forum.insanelymac.com/index.php?showtopic=129058),

also added Codec Verbs to HDAContoller, and keep PreserveConfigurationsPin checked.

 

ABOUT CODEC VERBS: still making tests, I create Codec Verbs following The King's Guide, from Mandriva Linux 2009 Codec Dump(Posted),

then apllied some modificatios contrasting Codec Dump Verbs with the Default Configuration Chip from Realtek Specification DataSheet.

, the Nodes ID and Path Maps matched, the differences are in Default Association and Sequence( Still making tests).

I added Pin Configuration to DSDT, and tested differents config to correctly shown IN/OUT at System Profiler.

Then I apllied the DSDT Pin Results (Deafault Asociation and Sequence Tests) to Codec Verbs.

 

For Example:

Asociation parameter for the four line outs are the same "1", in Codec Dump and Datasheet , i've changed giving differents numbers to each one, then System Profiler correctly shown IN/OUTs, also i've changed some Device Types or Connection Types, all of this testing with DSDT.

About Sequence, I've to do more tests.

When I try to add a the third Ananlog Line Out to the PathMap, I lost all Inputs, get a lot assertion errors and 4 minutes to boot th System.

I think the problem is that a Real Mac has two Line Outs, and may be there is a limitation of the qauntity of Line Outs/In that AppleHDA can handle, I don't know, or may be I'm not correctly configuring PathMap and Layout.

 

I've got a lot of doubts.

I'll still making test and trying to learn.

Link to comment
Share on other sites

ac3bcn,

 

Thanks. I look forward to seeing what you come up with. One comment - your using the datasheet info to modify the codec verbs is interesting. Why do you think the codec dump is not giving the correct codec verbs?

 

SMF

Link to comment
Share on other sites

Hello

Anyone have any ideas on this one?

Toshiba Satellite X205-SLI6

 

I get over 200 errors and it obviously refuses to compile the hex code for this because of it.

 

Full dsdt.dsl attached too

 

Intel ACPI Component Architecture
AML Disassembler version 20061109 [May 16 2007]
Copyright (C) 2000 - 2006 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"

ubuntu@ubuntu:~$ iasl -ta dsdt.dsl
Maximum error count (200) exceeded
ASL Input:  dsdt.dsl - 8166 lines, 302129 bytes, 3502 keywords
Compilation complete. 201 Errors, 0 Warnings, 0 Remarks, 4 Optimizations

dsdt.dsl.txt

dsdt.dat.txt

(.txt appended to allow uploading to site)

 

 

Am I the only one that finds it strange that the references to the Operating Systems is like this

being labeled 2001, 2006

Store (0x07D0, OSYS)
		If (CondRefOf (_OSI, Local0))
		{
			If (_OSI ("Linux"))
			{
				Store (One, LINX)
				Store (Zero, ECDY)
			}

			If (_OSI ("Windows 2001"))
			{
				Store (0x07D1, OSYS)
			}

			If (_OSI ("Windows 2001 SP1"))
			{
				Store (0x07D1, OSYS)
			}

			If (_OSI ("Windows 2001 SP2"))
			{
				Store (0x07D2, OSYS)
			}

			If (_OSI ("Windows 2006"))
			{
				Store (0x07D6, OSYS)
			}
		}

 

 

Any help in fixing this would help greatly.

Link to comment
Share on other sites

Hi! Thanks a lot, DSDT patch helped me to get 2 cores working!

 

I have a question - does this fix deals with CPU issue, or it also intended (maybe in future?) to deal with graphic card problem? as I understand I'm not alone who have problem with video...

Link to comment
Share on other sites

Hello

Anyone have any ideas on this one?

Toshiba Satellite X205-SLI6

 

I get over 200 errors and it obviously refuses to compile the hex code for this because of it.

 

Full dsdt.dsl attached too

 

Any help in fixing this would help greatly.

 

 

I have clean a little your bios mess and added the Hpet and Rtc patch, need someone more skilled on dsdt to confirm these changes are safe.

Changed this:

 

DefinitionBlock ("dsdt.aml", "DSDT", 2, "TOSCPL", "CRESTLNE", 0x06040000)
{
   External (PDC1)
   External (PDC0)
   External (CFGD)
   [b]External (^CPU0._PPC)[/b]

 

Into this:

 

DefinitionBlock ("dsdt.aml", "DSDT", 2, "TOSCPL", "CRESTLNE", 0x06040000)
{
   External (PDC1)
   External (PDC0)
   External (CFGD)
   [b]External (CPU0._PPC)[/b]

 

And 190 errors went away, later i checked this:

 

Scope (_PR)
   {
       Processor (CPU0, 0x00, 0x00001010, 0x06) {}
       Processor (CPU1, 0x01, 0x00001010, 0x06) {}
       Method (RPPC, 0, NotSerialized)
       {
           If (LEqual (OSYS, 0x07D2))
           {
               If (And (CFGD, One))
               {
                   If (LGreater (^CPU0._PPC, Zero))
                   {
                       Subtract (^CPU0._PPC, One, ^CPU0._PPC)
                       PNOT ()
                       Add (^CPU0._PPC, One, ^CPU0._PPC)
                       PNOT ()
                   }
                   Else
                   {
                       Add (^CPU0._PPC, One, ^CPU0._PPC)
                       PNOT ()
                       Subtract (^CPU0._PPC, One, ^CPU0._PPC)
                       PNOT ()
                   }
               }
           }
       }
   }

 

But couldnt make it error free, so i cleaned some code, leaving it like this:

 

Scope (_PR)
   {
       Processor (CPU0, 0x00, 0x00001010, 0x06) {}
       Processor (CPU1, 0x01, 0x00001010, 0x06) {}
      }

 

and all errors went away.

 

If (_OSI ("Windows 2001 SP2"))

{

Store (0x07D2, OSYS)

 

This is the reference and seems is talking about a Windows Xp sp2 optimization i think....

 

 

You can try if you like the modded dsdt.aml, but i will prefer you wait till people confirm is safe.

Dsdt_aml_and_dsl.zip

Link to comment
Share on other sites

I´ve added plist for AppleHDAcontroller & AppleHDAPlatform to the stock AppleHda.kext , this way i have mic+speakers+spdif (lineout=internal speakers though) (no strings or injectors).

P35_DS4

 

Thanks roisoft.

 

I can confirm that this dsdt (HDEF part) and AppleHDA.kext is working on my GA-EP45-DS4 m/b with F8 bios (didn't work on F9, for some reason).

 

Same results as you apart from my windows are in English.

 

thanks again!!

 

AB

 

dsdt_fixed_f8mod1.txt

Link to comment
Share on other sites

Hi to all.

 

fassl:

 

I successfully made a Install of Leo 10.5.4 with Netkas EFI9 and the Patched DSDT. All is working as it sould, AppleIntelCPUPowerManagement (also 5-7 degrees hotter than without it); AppleRTC; AppleHPET; all loaded and no kernel panic. Update to 10.5.5 and no problem (just the sandbox init error that I forgot how to fix, but I'm gonna remerber soon)

Just a few things I notice...

 

Shutdown/restart work perfectly, sleep works too. But after the system comes back from sleep I can no longer restart/shutdown, after the system kill all processes theres no restart, the black screan remains. Also when it comes back from sleep the brightness is too strong, but after a quick change to another resolution and back or refresh rate it gets fixed so it's not a big problem.

 

Question: can the vanilla AppleHDA.kext with DSDT support the ADI1988b audio codec or just ACL88x ones?

 

Sorry for my english is not so good. Thanks

Link to comment
Share on other sites

When I try to add a the third Ananlog Line Out to the PathMap, I lost all Inputs, get a lot assertion errors and 4 minutes to boot th System.

I think the problem is that a Real Mac has two Line Outs, and may be there is a limitation of the qauntity of Line Outs/In that AppleHDA can handle, I don't know, or may be I'm not correctly configuring PathMap and Layout.

You can use instead HP or speaker :D

Try that, that's how I got 5.1 analog out, just change the name in verb :P

Link to comment
Share on other sites

Got the following error on my Acer Aspire One 150:

How can I fix it? :D

What should this look like, to make it work?

While (Local0)
			{
				Multiply (Local1, 0x04, Local2)
				CreateDWordField (BUF1, Local2, CAPB) # << Creating a named object in a While loop ^
				If (Arg1)
				{
					If (LEqual (Local1, Zero))
					{
						And (CAPB, 0xFFFFFFFC, CAPB)
					}
				}
				Else
				{
				}

				Increment (Local1)
				Decrement (Local0)
			}

Link to comment
Share on other sites

I have clean a little your bios mess and added the Hpet and Rtc patch, need someone more skilled on dsdt to confirm these changes are safe.

But couldnt make it error free, so i cleaned some code, leaving it like this:

and all errors went away.

You can try if you like the modded dsdt.aml, but i will prefer you wait till people confirm is safe.

Thanks for the quick work!

I did try it out but I don't know for sure if it is working.... my hostname in terminal says

Last login: Thu Nov 27 02:03:36 on console
ubuntu:~ ludacrisvp$

So I would assume that it is a result of making the files in Ubuntu and that it is working.

Link to comment
Share on other sites

Thanks roisoft.

 

I can confirm that this dsdt (HDEF part) and AppleHDA.kext is working on my GA-EP45-DS4 m/b with F8 bios (didn't work on F9, for some reason).

 

Same results as you apart from my windows are in English.

 

thanks again!!

 

AB

 

dsdt_fixed_f8mod1.txt

TO roisoft

Hi, i have an GA-EP35-DS3(no ...P) Rev 2.1 BIOS F3 , which has also an 889a Chip.

I used the dsdt changes and recompiled it - no errors - injection worked :) , which shows Systemprofiler screenshoot.

 

I also removed my HDAEnabler.KEXT and used your (within the .zip) AppleHDA.kext.

 

But the Audio Systempref shows no Audio Devive and i get some errors (using dmesg log).

Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 1653 goto Exit

Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 108 goto Exit

Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 1653 goto Exit

Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-157.1.24/AppleHDA/AppleHDADriver.cpp" at line 108 goto Exit

 

???

 

Thanks

 

EDIT: I GOT IT !!!!!

THANKS for roisoft zipped GA-pack for 889A !!!

to ALL

I removed my old (forgot it ) ALCINJECT.KEXT also , not only the HDAENBLAER.KEXT

Now all works.

I add an new screenshoot (first is working dsdt HDA patching, but with ALCINJECT not deleted, second ALC... removed)

 

So all HDA dsdt patchers should remove all other Sound Injectors (HDAENABLER + ALCINJECT)

 

I uploaded my GA-EP35-DS3-REV2_1_F3 , roisofts APPLEHDA.KEXT (not changed by me) , dsdt.aml (ready with HDA),

and Kext Install Helper (Tool to install .kexts for rights set OK!)

Bild_87.jpg

Bild_90.jpg

GA_EP35_DS3_REV2_1_F3.zip

Link to comment
Share on other sites

You can use instead HP or speaker :D

Try that, that's how I got 5.1 analog out, just change the name in verb :P

Thanks , I'll try tonight at home.

 

your using the datasheet info to modify the codec verbs is interesting. Why do you think the codec dump is not giving the correct codec verbs?:P

 

I don' think that Linux Dump was wrong, i just wanna have some more information to understand how it works.Now I have Vista Dump Codecs Verbs, so, I would like to compare the Linux Dump , with Vista Dump, with the Manufacturer Spec, just to learn and find the way to get every Output and Input working.

I think the solution, if its exists, it's in AppleHDA sources, not in Codec Verbs or PinConfiguration.

Link to comment
Share on other sites

Thanks , I'll try tonight at home.

..

Hi, ac3bcn, i dont know if i looked in your dsdt.txt also, but someone announces a

HDEF dsdt part for GA-EP35-DS3P which has 885 Device in ?! and some other things different to the roisoft uploaded one!!! (I made an complete GA-EP35, BIOS F3, 889A package with chameleon dsdt in my last post).

I would check if you perhaps use that - if you have also 899A, like me with GA-EP35-DS3 (without P)!!

Thats what someone has uploaded as GA-EP35-DS3P , for my Board (889A, GA-EP35-DS3) it would be wrong - im am sure !

Conent of that uploaded (885?!)

Device (HDEF)

{

..... same

.....

Method (_DSM, 4, NotSerialized)

{

Store (Package (0x08)

{

"codec-id",

Buffer (0x04)

{

0x85, 0x08, 0xec, 0x10

},

 

"layout-id",

Buffer (0x04)

{

 

0x0C, 0x00, 0x00, 0x00

},

 

"device-type",

Buffer (0x011)

{

"ALC885"

},

 

"PinConfigurations",

Buffer (0x28)

{

/* 0000 */ 0x10, 0x40, 0x01, 0x01, 0x64, 0x10, 0x01, 0x01,

/* 0008 */ 0x71, 0x60, 0x01, 0x01, 0x82, 0x20, 0x01, 0x01,

/* 0010 */ 0x30, 0x90, 0xA1, 0x01, 0x20, 0x90, 0xA1, 0x02,

/* 0018 */ 0x40, 0x30, 0x81, 0x01, 0x50, 0x40, 0x21, 0x02,

/* 0020 */ 0xF0, 0x71, 0x44, 0x01, 0x90, 0x71, 0x45, 0x11

}

 

}, Local0)

DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))

Return (Local0)

}

 

Method (DTGP, 5, NotSerialized)

{

If (LEqual (Arg0, Buffer (0x10)

{

/* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,

/* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B

}))

{

....same ...

}

 

Link to comment
Share on other sites

Thanks for the quick work!

I did try it out but I don't know for sure if it is working.... my hostname in terminal says

Last login: Thu Nov 27 02:03:36 on console
ubuntu:~ ludacrisvp$

So I would assume that it is a result of making the files in Ubuntu and that it is working.

 

Install appleintelcpupowermangement.kext

If the system loads, then is working.

Link to comment
Share on other sites

Just wanted to report success on my p35-ds4. Thanks Roisoft, your AppleHDA and DSDT.aml work great. All as should be. Just one question, your pack also contained a dsdt.dsl, does this also go into the root folder? Works the same with or without. And any luck yet on the USB issue regarding waking from deep sleep?

Link to comment
Share on other sites

slogician - what hardware do you have that got 2 cores working?

 

general question - has dsdt patcher enabled ANY hp laptop to run with 2 cores?

thanks

 

Ghoffman,

 

Your not alone with your fustration.

 

My opinion is avoid HP if you want a multicore "hackbook", unless it's on the HCL.

 

Could you post/pm your dsdt file to me, so thay i can compare it with my HP530 dsdt.

 

I'm working on a solution. (don't hold your breathe)

 

Thanks.

Link to comment
Share on other sites

Any help would be appreciated

 

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     1: ACPIurn (Local0)
Error    4095 -            ^ syntax error, unexpected PARSEOP_NAMESEG, expecting PARSEOP_DEFINITIONBLOCK

ASL Input:  ./dsdt_fixed.txt - 16492 lines, 593519 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)

Link to comment
Share on other sites

Ghoffman,

 

Your not alone with your fustration.

 

My opinion is avoid HP if you want a multicore "hackbook", unless it's on the HCL.

 

Could you post/pm your dsdt file to me, so thay i can compare it with my HP530 dsdt.

 

I'm working on a solution. (don't hold your breathe)

 

Thanks.

 

attached ıs a zıp of the dsl and aml fıles. what's interesting is that the dsl file will vary depending on how i boot up - meaning which smbios or booter i use. the attached dsl is from a linux dump - i'm thinkning that it's somehow 'cleaner'.

thanks for any insight

dsdtnc6320.zip

Link to comment
Share on other sites

Just wanted to report success on my p35-ds4. Thanks Roisoft, your AppleHDA and DSDT.aml work great. All as should be. Just one question, your pack also contained a dsdt.dsl, does this also go into the root folder? Works the same with or without. And any luck yet on the USB issue regarding waking from deep sleep?

No, the dsdt.dsl is sourcecode (we can look in and take parts out if needed). Its not for the chameleon / EFI V9 boot !

Only the dsdt.aml is ready and needed to put in /

Link to comment
Share on other sites

I have clean a little your bios mess and added the Hpet and Rtc patch, need someone more skilled on dsdt to confirm these changes are safe.

Changed this:

 

DefinitionBlock ("dsdt.aml", "DSDT", 2, "TOSCPL", "CRESTLNE", 0x06040000)
{
   External (PDC1)
   External (PDC0)
   External (CFGD)
   [b]External (^CPU0._PPC)[/b]

 

just change all ^CPU0._PPC into \_PR_.CPU0._PPC and it will compile fine without clearing unknown code. i copied that from another file found on the web.

Link to comment
Share on other sites

hello!

 

My schifACER won't love this patcher, so i've only dsdt.dsl.

 

i've tryed to take manually the dsdt hex from ioregdump.txt and patch forced to obtain the dsdt.aml but the response is: only dsdt.dsl

 

the ASL imput wrote: ./dsdt_fixed.txt - 8832 lines, 327754 bytes, 3822 keywords

Compilation complete. 1 Errors, 23 Warnings, 0 Remarks, 934 Optimizations

 

i've tryed this in my nb ACER 5720Z, which is formed by:

T2370, 3gb ram, X3100 intel, dell 1490 wifi (modified by me), lan 5787, hd 160gb.

 

this is my dsdt.dsl

dsdt.dsl.zip

Link to comment
Share on other sites

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

 

 

I sent u a pm. Do you use OpenHaltRestart with this patch? In other word is this kext needed?

Link to comment
Share on other sites

slogician - what hardware do you have that got 2 cores working?

 

general question - has dsdt patcher enabled ANY hp laptop to run with 2 cores?

thanks

 

Hi!

my system is Intel T3200 dual-core 2GHz, DDR 667 2Gb, intel 965G(or 960G - MacOS says it is 965, WinXP says it is 960) ICH8. if you need more details - you may look at spec: http://www.asus.com/products.aspx?modelmen...l3=723&l4=0

the only difference with spec on the site is that I have T3200 dual-core CPU.

 

if you need other information - welcome!

 

Hi, everybody!

 

I'm not quite sure my question is related directly to DSDT, but probably it is.

I have posted it in separate topic: GMA X3100 VERY strange fact, X3100 normal boot depends on CPU temperature

 

why I think it may be related? I guess in 2 cases (success boot and failure) MacOS get different info about hardware. maybe you can suggest a way to track this?

Link to comment
Share on other sites

 Share

×
×
  • Create New...