Jump to content

DSDT editor and patcher


oldnapalm
 Share

999 posts in this topic

Recommended Posts

Untouched Vanilla DSDT (dsl)

 

dsdt.DFlash.zip

 

HDEF/ALC883

DTGP

EHCI

HID/CID

HPET

IRQs

LAN

LPC

REMOVED

RENAMED

RTC

SMBUS

SHUTDOWN

WAK

(PARM, 0x03, PARM)

 

Native Power Management and Restart fix use Chameleon RC5

 

add in boot.plist

 

<key>GeneratePStates</key>
<string>Yes</string>
<key>GenerateCStates</key>
<string>Yes</string>

Link to comment
Share on other sites

@MaLd0nK Thanks a lot bro

 

I will try this DSDT immediately.

 

I know this may sound dumb but please guide me here. I am supposed to remove NullCPUPower****.kext and then enable native Power Management?

 

One more thing, In my SMBIOS.plist, what mac model identifier should I use?

 

I have a C2D E7400 and Intel chipset mobo,, considering this combo iMac 9,1 or iMac10,1 looks closest but I read somewhere that these two are based on nVidia chipset. MacPro1,1 also looks a decent choice but I would love to know what you pro guys think.

 

Edit:

 

I am running the DSDT you had compiled for me (alongwith iMac9,1 smbios.plist). It works great except for audio. Audio seems to be a No-go. I am running Snow Leo 10.6.3 and I have tried using AppleHDA.kext from 10.6.2 and Legacy883.kext. It is not working.

 

Edit 2:

 

I also tried the perl script hack on AppleHDA.kext from 10.6.3, but still no sound. BTW the system profiler is showing the device as Intel High Definition Audio but the device ID shown is 0x1458A002, when it should be 0x808627d8 (I dont know if this is the cause, AFAIK system profiler is a lot more about cosmetics than functionality).

 

Edit 3: Tried the LegacyAlc883.kext attached with SL 10.6.0 and the DSDT provided by you.

 

Got following errors:

04/12/10 12:18:01 AM	kernel	Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit

04/12/10 12:18:01 AM	kernel	Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit

04/12/10 12:18:01 AM	kernel	Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit

04/12/10 12:18:01 AM	kernel	Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit

 

Link to LegacyAlc883.kext: http://rapidshare.com/files/434708659/LegacyALC883.kext.zip

 

Edit 4:

 

I decided to take a Linux codec dump and take a look into it.

http://rapidshare.com/files/434716344/codec-dump.txt

 

I am not a expert but is my codec-dump shows ALC887? This is really wierd as my Gigabyte motherboard specs page says ALC883

 

I tried quite a lot of Kexts and yet no result. Similar Sound assertion error. I guess I will wait till MaLd0n shows some light on the errors.

Link to comment
Share on other sites

Partial-off-topic: Anyone has ALC272 working? I did mod the DSDT for the HDEF device but can't get it to work...

Cheers in advance!

Also a request to please put some kind of version numbering on the DSDT Editor releases?!?

Link to comment
Share on other sites

@DFlash...

 

Have you tried this kext?

http://www.insanelymac.com/forum/index.php?showtopic=211676

Edit: link corrected.

 

 

@MacKonsti

 

Version number is in "about" dialog. Latest version is 0.5 (20101126).

 

About ALC272, only patching HDEF in DSDT isn't enough, you also need to patch the AppleHDA binary and Info.plist, or use a legacy kext (for plist only, binary patching is still needed).

Link to comment
Share on other sites

I am sorry bro, but this thread is about Ralink Usb network adapter, and I am struggling with my audio kextx.

How can it be of any help to me....

And yes, I have already tried booting with arch=i386, but of no help

Sorry, wrong link.

 

The correct link is

http://www.insanelymac.com/forum/index.php?showtopic=211676

Link to comment
Share on other sites

@MaLd0n

 

DSDT generated using P5Bdeluxe WIFI really perfect for my machine (look at signature) with snow 10.6.4 (sleep, reboot, shutdown), I have upgraded to 10.6.5 and now I have an annoying problem with sleep: PC go in sleep but the fans keep spinning and moreover PC does not awake and I have to switch off the PC with the power button.

 

Attached the perfetct dsdt for 10.6.4 generated by the wonderful "DSDT patcher"

 

Any idea for 10.6.5??

dsdt10.6.4.txt

Link to comment
Share on other sites

 

Well I tried the kexts over there. Of no use in SL, same sound assertion errors. Interesting though I installed Leopard 10.5.6, and used the kexts (for leopard) provided in the link (1st post of that thread) and I had no sound. Then I tried to patch the vanilla apple hda driver with Taruga's AppleHDA patcher with codec-dump I have posted and it came up with a message, unsupported Realtek codec ALC887 :P !!

 

Since when I have ALC887?? My mobo-specs page (link in my last post) says I have ALC883.

 

Damn, I am hell confused :) Somebody please help me out.

 

EDIT: Took a dump from another linux distro (dreamlinux), it is the same. I still dont get how are the cocdec-dumps saying I have ALC887 ?

Link to comment
Share on other sites

Have you tried with ALC887 (ALC888B)?

 

There are some legacy kexts here, as well as the DSDT patch

http://www.mediafire.com/?jomygylxukj

 

From

http://www.insanelymac.com/forum/index.php?showtopic=140941

 

 

Thanks a lot oldnapalm!!!, You have been quite a stellar support in this expedition. Today I finally opened my HTPC and actuallly checked the codec chipset used. It is ALC888B (Gigabyte should update information about 2.4 revision). So basically my linux dump was absolutely correct. I have used a few methods and have modified the DSDT to ALC888B. Now I am still looking for a working AppleHDA.kext and Legacy888B in the threads you suggested.

 

I think I am on the right way. I will keep you updated with all my improvements.

Link to comment
Share on other sites

You can use DSDT edited by Maldon, just replace ALC883 by ALC887 in device HDEF (2 places, in red)

            Device (HDEF)
           {
               Name (_ADR, 0x001B0000)
               Method (_PRW, 0, NotSerialized)
               {
                   Return (Package (0x02)
                   {
                       0x05, 
                       0x05
                   })
               }
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x08)
                       {
                           "codec-id", 
                           Buffer (0x04)
                           {
                               [color="#FF0000"]0x87[/color], 0x08, 0xEC, 0x10
                           }, 
                           "layout-id", 
                           Buffer (0x04)
                           {
                               0x0C, 0x00, 0x00, 0x00
                           }, 
                           "device-type", 
                           Buffer (0x0F)
                           {
                               "Realtek [color="#FF0000"]ALC887[/color]"
                           }, 
                           "PinConfigurations", 
                           Buffer (One)
                           {
                               0x00
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

For AppleHDA just patch the original one with this command

sudo perl -pi -e 's|\x85\x08\xec\x10|\x87\x08\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

Link to comment
Share on other sites

Thanks for your prompt reply again.

 

I tried just now as you suggested and received following sound assertion errors:

 

05/12/10 12:07:56 AM kernel Sound assertion "0 == pciVendorProductID" failed in "/SourceCache/AppleHDA/AppleHDA-184.4.3/AppleHDAController/AppleHDAController.cpp" at line 3226 goto Exit

 

05/12/10 12:07:56 AM kernel Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-184.4.3/AppleHDA/AppleHDADriver.cpp" at line 1666 goto Exit

 

05/12/10 12:07:56 AM kernel Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-184.4.3/AppleHDA/AppleHDADriver.cpp" at line 203 goto Exit

 

I have a feeling this has something to with Some sort of id or something. I am attaching my IORegistryExplorer dump here: http://depositfiles.com/files/c9i1g3l9z

 

Also I downloaded the vanilla AppleHDA.kext from http://www.insanelymac.com/forum/index.php?showtopic=140941 and patched it, as I am unable to find my own 10.6.3 Vanilla AppleHDA (because of too much messing with kexts). Anyways if you get your hands on Vanilla AppleHDA.kext from 10.6.3 , it would be great. I will try downloading the updater though so that I can get back vanilla kext.

Link to comment
Share on other sites

The legacy kexts that I am using right now are here: http://www.mediafire.com/?jomygylxukj

 

BTW in search of vanilla AppleHDA I have upgraded to 10.6.5

 

I have used the patch as well. Now I will take a reboot and report back

 

Edit 1: Same sort of assertion errors. I used the red legacy kext out the package. I also have got vanilla AppleHDA 10.6.2, I am installing that at this moment. I am going to try the orange legacy kext now.

 

Edit2: The orange one gave me two sound assertion errors again related to pciVendorProductID , I think I will have to a bit of research on this error as well. Also this kext amazingly gave me volume control, but in return had put the processor in an infinte loop setting the volume level at 1. Finally am right now in safe mode to take care of the kext. Also after this I will sleep a little. (Whole day spent staring, need some rest nw). I will keep you updated oldnapalm

Link to comment
Share on other sites

Compare your codec dump with GA-ALC888B-10 from the legacy package, maybe yours isn't exactly the same

Codec: Realtek ALC887

Address: 2

Vendor Id: 0x10ec0887

Subsystem Id: 0x1458a002

Revision Id: 0x100202


 

Did you patch dsdt.aml?

 

Edit: I just looked at your ioreg dump, looks like DSDT is ok. Also looked at your codec dump from post #604, looks like it's a bit different from the one used to make those legacy kexts, I think you have to fix ConfigData.

 

Try this

GigabyteALC888b6Ch.kext.zip

It's a quick try using verbit. This topic has detailed info on how to do it manually

http://www.projectosx.com/forum/index.php?showtopic=465

Link to comment
Share on other sites

Compare your codec dump with GA-ALC888B-10 from the legacy package, maybe yours isn't exactly the same

Codec: Realtek ALC887

Address: 2

Vendor Id: 0x10ec0887

Subsystem Id: 0x1458a002

Revision Id: 0x100202


 

Did you patch dsdt.aml?

 

Edit: I just looked at your ioreg dump, looks like DSDT is ok. Also looked at your codec dump from post #604, looks like it's a bit different from the one used to make those legacy kexts, I think you have to fix ConfigData.

 

Try this

GigabyteALC888b6Ch.kext.zip

It's a quick try using verbit. This topic has detailed info on how to do it manually

http://www.projectosx.com/forum/index.php?showtopic=465

 

WoW!!! Thanks a ton oldnapalm. You have made my day. It works!!!! I have Speaker-out (rear green jack) and Head-phone out (front green jack) & Mic-in (Rear Pink port) working fine. Atleast now I have audio.

 

Though, I still have insertion errors & the Line-out (Rear Blue Port) is not working & not recognised.. I think I will have to tailor this Legacy kext further and will have to catch-up with TheKing's guide for that. Also as you said I will compare the codec-dumps and accordingly make amendments in the legacy kext.

Also if you can give me an initial guidance of what exactly you did that made this legacy kext different from the I had tried earlier would be great.

 

Again Thanks once again bro :(

Link to comment
Share on other sites

No problem. I used the VerbIt tool from the guide (Chapter III-a) and replaced ConfigData (2 occurrences) in the legacy kext by Modified Verbs. You surely need a fine tuning to get it working 100%.

 

MysticWizard pointed me how to fix the pciVendorProductID sound assertion failure, I didn't try it yet but he confirmed it works

http://www.insanelymac.com/forum/index.php...t&p=1592145

Link to comment
Share on other sites

Thanks for the tip again bro, I will be applying the solution and updating here soon.

 

In the mean time, can you check and confirm if the following code block would enable native Intel Speedstepping for Core2Duo E7400? I have taken this from http://www.ridgel1ne.com/OSX86/DSDT_Downloads.html there is a DSDT posted for E7400

 

    Scope (_PR)
    {
        Processor (CPU0, 0x00, 0x00000410, 0x06)
        {
            Method (_PSS, 0, NotSerialized)
            {
                Return (Package (0x10)
                {
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x4A25, 
                        Zero
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x0A24, 
                        One
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x4922, 
                        0x02
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x0920, 
                        0x03
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x481F, 
                        0x04
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x081D, 
                        0x05
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x471B, 
                        0x06
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x071A, 
                        0x07
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x4618, 
                        0x08
                    }, 
                    Package (0x06)
                    {
                        Zero, 
                        Zero, 
                        0x10, 
                        0x10, 
                        0x0616, 
                        0x09
                    }
                })
            }
            Method (_CST, 0, NotSerialized)
            {
                Return (Package (0x03)
                {
                    0x02, 
                    Package (0x04)
                    {
                        ResourceTemplate ()
                        {
                            Register (FFixedHW, 
                                0x01,               // Bit Width
                                0x02,               // Bit Offset
                                0x0000000000000000, // Address
                                ,)
                        }, 
                        One, 
                        One, 
                        0x03E8
                    }, 
                    Package (0x04)
                    {
                        ResourceTemplate ()
                        {
                            Register (SystemIO, 
                                0x08,               // Bit Width
                                0x00,               // Bit Offset
                                0x0000000000000414, // Address
                                ,)
                        }, 
                        0x02, 
                        One, 
                        0x01F4
                    }
                })
            }
        }
        Processor (CPU1, 0x01, 0x00000410, 0x06)
        {
        }
        Processor (CPU2, 0x02, 0x00000410, 0x06)
        {
        }
        Processor (CPU3, 0x03, 0x00000410, 0x06)
        {
        }
    }

 

My current DSDT is http://rapidshare.com/files/435104154/DSDT.aml

This is the same as DSDT as MaLd0n had provided + ALC888B + PEGP

 

EDIT: I was reading the bit of information provided here http://tonymacx86.blogspot.com/2009/12/adv...tel-native.html

 

Again E-series Core2Duo are used in iMac10,1 which have nVidia9400 Chipset, so I guess I can't use the SMBIOS.plist hack which is also mentioned there.

Link to comment
Share on other sites

I have applied pciVendorProductID fix (used 0x808627D8). Thanks again oldnapalm, but it only reduced the pciVendorProductID error from 2 to 1 (I am ok with it). Fixed Completely!!

 

All in all now I have 3 errors with working sound

 

 06/12/10 2:36:22 AM	kernel	Sound assertion "0 == fPathControls" failed in "/SourceCache/AppleHDA
/AppleHDA-179.1.4/AppleHDA/AppleHDAPath.cpp" at line 1228 goto Exit

06/12/10 2:36:22 AM	kernel	Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-179.1.4/AppleHDA/AppleHDAPath.cpp" at line 1149 goto Exit

06/12/10 2:36:22 AM	kernel	Sound assertion "0 != pathSet->getWidgetAmplifierGainRange ( &zeroValue, &minValue, &maxValue, &minDB, &maxDB, kPATH_CONTROL_SPATIAL_CHANNELID_Master ) " failed in "/SourceCache/AppleHDA/AppleHDA-179.1.4/AppleHDA/AppleHDAEngine.cpp" at line 329 goto handler

 

As for checking the code, I will put it in my DSDT and see if it works after disabling chameleon induced native stepping through cpu-i and report back

 

Edit: PStateChanger keeps on crashing when I click on info tab and show nothing PState tab.

CPU-i works fine in 32-bit mode and shows the 10 P-States. Its really nice to see the CPU multiplier changes occuring :censored2: . I also checked the P-States Control ID (VID+FID), they match. So far so good but the main difference between the two codes (one I posted and the one you have linked) is that the methods ie

 

Method (_PSS, 0, NotSerialized)

Method (_PSD, 0, NotSerialized)

Method (_CST, 0, NotSerialized)

 

have been used for each Scope(_PR.CPUx), x=core no., in your link whereas in the one I posted its not. I tested the Code with my DSDT works perfectly well !!

 

BTW you are using the Chameleon induced native stepping or DSDT induced?

Link to comment
Share on other sites

So this code is not necessary in other CPUs? Or different _CST in the second CPU?

Method (_PSS, 0, NotSerialized)
{
   Return (^^CPU0._PSS ())
}

Method (_PSD, 0, NotSerialized)
{
   Return (^^CPU0._PSD ())
}

Method (_CST, 0, NotSerialized)
{
   Return (^^CPU1._CST ())
}

 

About audio, you can try using other legacy as base for yours, instead of the 6Ch.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...