InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   Snow Leopard 10.6 (http://infinitemac.com/forumdisplay.php?f=87)
-   -   [GUIDE] ALC889a (with analog 5.1 surround) (http://infinitemac.com/showthread.php?t=3746)

mormegil 09-04-2009 02:17 PM

Your dsdt is fine. Don't touch it anymore. Make sure to change ALL LayoutIDs! Or just use the plists I made and you don't have to change anything.

Edit: I meant all LayoutID so long as they're 889 or 885. This confusion can be totally avoided to be honest if tmongkol hadn't messed up with layoutid's to make it look "good". It only changes the number in Sys Profile. Thats the number 12 you see btw.

Gurruwiwi 09-04-2009 02:21 PM

I tried that!

I just found out something.

In Snow's file he has

Code:

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id",
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            },

                            "PinConfigurations",
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

            Name (BUFA, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {3,4,5,6,7,9,10,11,12,14,15}
            })
            Name (BUFB, ResourceTemplate ()
            {
                IRQ (Level, ActiveLow, Shared, )
                    {}
            })
            CreateWordField (BUFB, One, IRQV)
            Device (LNKA)
            {
                Name (_HID, EisaId ("PNP0C0F"))
                Name (_UID, One)
                Method (_STA, 0, NotSerialized)
                {
                    And (PIRA, 0x80, Local0)
                    If (LEqual (Local0, 0x80))
                    {
                        Return (0x09)
                    }
                    Else
                    {
                        Return (0x0B)
                    }
                }

                Method (_PRS, 0, NotSerialized)
                {
                    Return (BUFA)
                }

                Method (_DIS, 0, NotSerialized)
                {
                    Or (PIRA, 0x80, PIRA)
                }

                Method (_CRS, 0, NotSerialized)
                {
                    And (PIRA, 0x0F, Local0)
                    ShiftLeft (One, Local0, IRQV)
                    Return (BUFB)
                }

                Method (_SRS, 1, NotSerialized)
                {
                    CreateWordField (Arg0, One, IRQ1)
                    FindSetRightBit (IRQ1, Local0)
                    Decrement (Local0)
                    Store (Local0, PIRA)
                }
            }

While I only have

Code:

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id",
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            },

                            "PinConfigurations",
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

I seem to be missing alot of code! And what about the first entry I seem to be missing too?

Are you sure mormegil?

mormegil 09-04-2009 02:33 PM

That's because those code were there originally in his stock dsdt while yours didn't. Just like mine.

Gurruwiwi 09-04-2009 02:35 PM

Ok, great thanks for the reply!

I'll give it another try. Without legacy again

Snow 09-04-2009 02:35 PM

I'm just letting Mormegil do his thang haha, he knows a lot more then me about this.

Question though Mormy, is my guide any help to others, since you mention my prepatched already has a lot of code. They just have to replace that section right? or does it differ from system to system?

@Gurru, replace the whole section m8. I don't know about the first missing section though. It might not work because there is no device ID.

Later bud

mormegil 09-04-2009 02:42 PM

If you can see the ports in SysProf and still no sound, then your configdata is correct but your pathmaps are not right. You might have a different variant of the same codec. Are you on a laptop? You sure your codec is 889a (885 address 3)?

mormegil 09-04-2009 02:47 PM

It's fine since you're showing before and after injecting the code. It just shows the important fact that dsdt is system specific and just blindly adding code into it will result in compilation errors etc.

Gurruwiwi 09-04-2009 02:48 PM

1 Attachment(s)
Yup, check it out.

First I'll try mormegil's compile with patched AppleHDA.

For learning sake, I tried to copy Snow's entry code, but I cant recompile no matter what

I am sure its a .dsl file, it outputs one error, says done, but no aml to be found. Lust be missing something... back to testing

off to try plist into vanilla HDA

Gurruwiwi 09-04-2009 03:05 PM

1 Attachment(s)
Yep, laptop here,

I did follow Snow's tutorial in the first page, if I patch vanilla AppleHDA, I loose system profiler devices.

Just tripled checked with google, and linux folk normally take no prisoners...

http://www.lapspecs.com/wiki/acer+aspire+6935g#sound

Sound

Sound Controller Realtek ALC889A High Definition Audio
Speakers 2 plus Subwoofer
Internal Microphone Yes
Headphone Port Yes
Microphone Port Yes
Line In Port Yes
S/PDIF In Port No
S/PDIF Out Port Yes, shared with headphone out


I wished there were karma point in this forum, you guys certainly deserve it!

mormegil 09-04-2009 03:23 PM

1 Attachment(s)
Think I know what's wrong. Just checked the plists I made for Snow and the legacy kexts. Turns out they are for different codecs! Both are 889a but the former is address 3 and the latter is address 2. You need to be certain first which of the two is yours. I've made 2 sets now.

SL 889a 1.7.4 AppleHDA plists:

Gurruwiwi 09-04-2009 03:52 PM

1 Attachment(s)
Dudes!

Just found out more relevant info.

Check this out...

patched with address 3, no verbose message, system profiler looses ports.

patched with address 2, assertion "0" errors in boot, sys profiler shows 1 digital port

Then I saw that the plist mormegil provided had different icons. One is plain white, the other has image. I open the ones that have image with text edit, select save as, name in info.plist and UNCHECK the box that says "If no extension is provided name .txt"

Now this makes a blanc icon plist. I checked, and before it was not .txt, but icon different.

Re-patch address 3 plists, repair, reboot, first boot KP with AppleHDA dependancies, second boot assertion "0", no sound but system profiler does show all ports! This is the first non-vanilla kext that does this! Well done.

Still no sound, but one step closer!!

mormegil 09-04-2009 04:18 PM

Since you're on a lappy, the only way to properly write your own plists is to create your own codec dump in linux or find one on the internet. Try searching acer laptop forums for example.

The thing is, all the codec dumps we've been using are those for desktop models. Which means 4 analog outs, 2 analog ins at the back and possibly digital ins/outs too. Plus internal ports for connecting to the front connector. Your laptop definitely do not have all these ports and so your layout/pathmaps might be different. So which set is showing all ports correctly in Sys Prof?

Gurruwiwi 09-04-2009 04:25 PM

What if a port shares 2 connection?

I'll look for my codec dump.

UPDATE: I found this, possible codec dump. The susbsytem is 0x10250146 which maches what my system profiler Device ID number.

its for the same chip, and from a close acer model to mine. Is this the sort of thing you need? never seen a codec dump before. I'll keep searching for my exact dump, it must be around.

Tried posting code, too long. here is the link.

http://74.125.39.104/search?q=cache:...e&ct=clnk&cd=1

Gurruwiwi 09-04-2009 04:43 PM

Ok, I think this might do it.

A codec dump for acer 6920g -
00:1b.0 0403: 8086:284b (rev 03)

and has the same DeviceID / sybsystem as me.

Mormegil, up for some more of your black magic? :cool:

And if you show me how, I'll be glad to take it from there... but this one HAS to work damn it ! The specs are almost identical to my model !!

mormegil 09-04-2009 04:53 PM

If you're certain it matches yours, just go through King's guide. He'll guide you step by step. You will understand things more clearly by reading it.

Gurruwiwi 09-04-2009 05:05 PM

1 Attachment(s)
forgot to upload dump...

I'm at work now, so I'll only be able to try later on.

mormegil 09-04-2009 06:21 PM

Ahh! You have a true 889 codec as opposed to the fake 889 (renamed 885). All the above plists are useless for you then. Also, your pinconfig are different as I expected and you might have to hex edit your binary.

Gurruwiwi 09-04-2009 08:47 PM

So... what should I attempt next?

mormegil 09-04-2009 08:56 PM

1 Attachment(s)
Try this out

SL 1.7.4 AppleHDA.kext for acer 6920g alc889:

Gurruwiwi 09-04-2009 09:23 PM

1 Attachment(s)
Back to no Audio devices listed.

So far, only vanilla AppleHDA and patched with the first two plist you did for Snow (which I guess are the one he updated the first post with) wake up the ports...

isnt this just frustrating :-/

mormegil 09-04-2009 09:47 PM

Sorry. Nothing much I can do if I don't have your actual codec dump. Will be much easier if we put the guessing out of the picture.

Gurruwiwi 09-04-2009 10:54 PM

aaaarggg...

tried dumping with voodoohdahelper..

got "dylib" error, which I know I fixed before, fixed it again, ran the dump again, no dylib errors but still

error: IORegistryEntryGetPath returned 0x10000003

I cant find my wifiway linux distro anywhere, so back to google for now...

Why wont voodoo work for me ?

EDIT: Hey ! I found a cool little app that assists in extracting and patching DSDT, containing LOADS of fixes... check it out

http://www.osx86.es/?p=610

english below spanish section

mormegil 09-04-2009 11:08 PM

Try this:

AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist/IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault/10/ConfigData

Change ALL the first HEX value to 3. For example 21871C40 to 31871C40.

If that doesnt work, try 0. For example 21871C40 to 01871C40.

Gurruwiwi 09-04-2009 11:26 PM

1 Attachment(s)
I certainly will !!

But I just tried that app and copied in the HDEF fix, and for the first time EVER I managed to compile a DSDT.aml, zero errors !! (first mpart exactly like you did, second with the missing code that Snow has and I dont that I "complained" about before")

Look what turned up.

Let me just reboot back with vanilla then Voodoo...

Gurruwiwi 09-04-2009 11:49 PM

1 Attachment(s)
New dsdt with both your address 2 and 3 patch bring back "your dsdt" mappings, except audio ID read 889 not 12.

What do you say, keep trying this new dsdt or the one you made?

going to attempt your latest suggestions on your address 2 patched kext...

Gurruwiwi 09-04-2009 11:57 PM

Mormegil, sorry, got confused. trying to follow your path... after info.plist, I open with text edit and only find

Code:

<key>CFBundleVersion</key>
        <string>1.7.4a1</string>
        <key>IOKitPersonalities</key>
        <dict>
                <key>HDA Platform Resource</key>
                <dict>
                        <key>CFBundleIdentifier</key>
                        <string>com.apple.driver.AppleHDAPlatformDriver</string>
                        <key>CommonPeripheralDSP</key>
                        <array>
                                <dict>

Slighty confused, because I cannot find the rest you mention

mormegil 09-05-2009 12:47 AM

Sorry. I've fixed the path. And use my dsdt pls. The one you created is useless. I know it shows up all nice in Sys Prof but you're basically telling it what to show on the screen. I doubt you really have all that ports on your laptop. Showing up in Sound Preferences is all that matters.

ps. that dsdt app is bloody awesome!

vladrxpx 09-05-2009 02:50 AM

thnx for the guide !!

one question..
I've made a mistake and installed VoodooHDA kext.. sound wokrs..but, microphone doesn't.. being its a beta version of the kext..

is there a way to delete this kext, and do it all over again? (setting up audio) and how do i remove already installed kext ?

thnx !

Gurruwiwi 09-05-2009 06:23 AM

Delete the kext from folder, then go to spotlight and write "disk utility", choose system drive and click Repair Permissions.

CyCLoBoT 09-05-2009 08:30 AM

I followed the steps on Page 1 but I noticed that I have more sound coming out of one speaker than the other. I only have 2 speakers an a subwoofer. Does that sound normal or am I doing something wrong with getting the ALC889a to work?

Gurruwiwi 09-05-2009 06:59 PM

Morm,

Tried both with 3 and 0... just to double check, mind taking a look if I did it right?

back no audio devices listed is system profiler.

because your path still confuses me (yep, read your PM). You seen, inside the plist, ther is no "/HDAConfigDefault/10/ConfigData"

take a look... I went and changed all hex to start with zero in this one, all the way to the bottom.

I noticed some had minus signs before them, this one doesnt becaus I just did it to show you, I replaced S/L/E with vanilla so I had to do it again quick to show you

This is the "0" one

Code:

string>????</string>
        <key>CFBundleVersion</key>
        <string>1.7.4a1</string>
        <key>IOKitPersonalities</key>
        <dict>
                <key>HDA Hardware Config Resource</key>
                <dict>
                        <key>CFBundleIdentifier</key>
                        <string>com.apple.driver.AppleHDAHardwareConfigDriver</string>
                        <key>HDAConfigDefault</key>
                        <array>
                                <dict>
                                        <key>AFGLowPowerState</key>
                                        <data>
                                        AwAAAA==
                                        </data>
                                        <key>CodecID</key>
                                        <integer>083904133</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AYccQAGHHXABhx4hAYcfAQGnHDABpx0BAace
                                        EwGnH5ABlxwQAZcdMQGXHoEBlx8BAVccUAFX
                                        HUEBVx4BAVcfAQH3HCAB9x3hAfcexQH3HwEB
                                        5xxgAecd4QHnHkUB5x8BAUcc8AFHHQABRx4A
                                        AUcfQAFnHPABZx0AAWceAAFnH0ABdxzwAXcd
                                        AAF3HgABdx9AAbcc8AG3HQABtx4AAbcfQAHH
                                        HPABxx0AAcceAAHHH0AB1xzwAdcdAAHXHgAB
                                        1x9A
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>0</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>0206496384</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        ALccQAC3HXAAtx4hALcfAQDHHDAAxx0BAMce
                                        EwDHH5AA9xwQAPcdMAD3HoEA9x8BAKccUACn
                                        HUAApx4BAKcfAQEXHCABFx3gARcexQEXHwEB
                                        BxxgAQcd4AEHHkUBBx8BANccDwDXHQAA1x4A
                                        ANcfQADnHA8A5x0AAOceAADnH0ABVxwPAVcd
                                        AAFXHgABVx9AAbccDwG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>0</integer>
                                </dict>
                                <dict>
                                        <key>Codec</key>
                                        <string>Cirrus Logic CS4206</string>
                                        <key>CodecID</key>
                                        <integer>069697542</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        ABcgAAAXIQAAFyJrABcjEACXHFAAlx1wAJce
                                        IQCXHwEApxxBAKcdYQCnHhAApx+QALccQAC3
                                        HWEAtx4QALcfkADHHCAAxx0BAMcegQDHH5EA
                                        1xwQANcdAQDXHqAA1x+QAOcc8ADnHQAA5x4A
                                        AOcfQAD3HDAA9x0BAPcexQD3HwEBBxxgAQcd
                                        AQEHHkUBBx8BAScc8AEnHQABJx4AAScfQAFX
                                        HPABVx0AAVceAAFXH0A=
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>0</integer>
                                </dict>
                                <dict>
                                        <key>Codec</key>
                                        <string>Wolfson WM8800</string>
                                        <key>CodecID</key>
                                        <integer>051708928</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        ABcgAAAXIQAAFyIAABcjAAEXHFABFx1AARce
                                        KwEXHwEBJxxAAScdAQEnHhABJx+QATccQQE3
                                        HQEBNx4QATcfkADXHBAA1x0BANceoADXH5AA
                                        xxwgAMcdMADHHosAxx8BAPccYAD3HeAA9x5L
                                        APcfAQEHHDABBx3gAQceywEHHwEA5xzwAOcd
                                        AADnHgAA5x9AAWcc8AFnHQABZx4AAWcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>0</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
                                        oAC3H5AAxxxAAMcdAQDHHhAAxx+QANcc8ADX
                                        HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
                                        9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
                                        AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>2</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
                                        oAC3H5AAxxxAAMcdAQDHHhAAxx+QANccQQDX
                                        HQEA1x4QANcfkADnHPAA5x0AAOceAADnH0AA
                                        9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
                                        AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>4</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccQACnHUAApx4rAKcfAQC3HBAAtx0BALce
                                        oAC3H5AAxxwwAMcdAQDHHhAAxx+QANcc8ADX
                                        HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
                                        9xwgAPcdMAD3HosA9x8BAQccUAEHHeABBx5L
                                        AQcfAQEXHPABFx0AARceAAEXH0ABVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>6</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccQACnHUAApx4rAKcfAQC3HBAAtx0BALce
                                        oAC3H5AAxxwwAMcdAQDHHhAAxx+QANcc8ADX
                                        HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
                                        9xwgAPcdMAD3HosA9x8BAQccUAEHHeABBx5L
                                        AQcfAQEXHPABFx0AARceAAEXH0ABVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>7</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>-0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccQACnHUAApx4rAKcfAQC3HPAAtx0AALce
                                        AAC3H0AAxxwwAMcdAQDHHhAAxx+QANcc8ADX
                                        HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
                                        9xwQAPcdMAD3HosA9x8BAQccUAEHHeABBx5L
                                        AQcfAQEXHCABFx3gARceywEXHwEBVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>8</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>-0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
                                        oAC3H5AAxxxAAMcdAQDHHhAAxx+QANccQQDX
                                        HQEA1x4QANcfkADnHPAA5x0AAOceAADnH0AA
                                        9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
                                        AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>10</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>083904133</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AZcdMAH3HeE=
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>12</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>-0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
                                        oAC3H5AAxxxAAMcdAQDHHhAAxx+QANcc8ADX
                                        HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
                                        9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
                                        AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>14</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>-0088470912</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AKccUACnHUAApx4rAKcfAQC3HBAAtx0BALce
                                        oAC3H5AAxxxAAMcdAQDHHhAAxx+QANcc8ADX
                                        HQAA1x4AANcfQADnHPAA5x0AAOceAADnH0AA
                                        9xwgAPcdMAD3HosA9x8BAQccYAEHHeABBx5L
                                        AQcfAQEXHDABFx3gARceywEXHwEBVxzwAVcd
                                        AAFXHgABVx9AAbcc8AG3HQABtx4AAbcfQA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>15</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>083904133</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AUcc8AFHHQABRx4AAUcfQAFXHDABVx1AAVce
                                        AAFXHwEBZxzwAWcdAAFnHgABZx9AAXcc8AF3
                                        HQABdx4AAXcfQAGHHBABhx1AAYceIAGHHwEB
                                        lxwgAZcdMAGXHoABlx8BAaccUAGnHQEBpx4Q
                                        AacfkAG3HPABtx0AAbceAAG3H0ABxxzwAccd
                                        AAHHHgABxx9AAdcc8AHXHQAB1x4AAdcfQAHn
                                        HHAB5x3gAeceRQHnHwEB9xxgAfcd4AH3HsUB
                                        9x8B
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>36</integer>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>083904133</integer>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>63</integer>
                                        <key>MikeyAFGLowPowerState</key>
                                        <data>
                                        AQAAAA==
                                        </data>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>083904133</integer>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>64</integer>
                                        <key>MikeyAFGLowPowerState</key>
                                        <data>
                                        AQAAAA==
                                        </data>
                                </dict>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>069697542</integer>
                                        <key>ConfigData</key>
                                        <data>
                                        AMcdMA==
                                        </data>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>77</integer>
                                </dict>
                                <dict>
                                        <key>AFGLowPowerState</key>
                                        <data>
                                        AwAAAA==
                                        </data>
                                        <key>CodecID</key>
                                        <integer>069697542</integer>
                                        <key>FuncGroup</key>
                                        <integer>1</integer>
                                        <key>LayoutID</key>
                                        <integer>06392</integer>
                                </dict>
                        </array>
                        <key>IOClass</key>
                        <string>AppleHDAHardwareConfigDriver</string>
                        <key>IOMatchCategory</key>
                        <string>AppleHDAHardwareConfigDriver</string>
                        <key>IOProviderClass</key>
                        <string>AppleHDAHardwareConfigDriverLoader</string>
                        <key>PostConstructionInitialization</key>
                        <array>
                                <dict>
                                        <key>CodecID</key>
                                        <integer>083904133</integer>
                                        <key>Layouts</key>
                                        <array>
                                                <integer>36</integer>
                                                <integer>38</integer>
                                                <integer>52</integer>
                                                <integer>53</integer>
                                        </array>
                                        <key>widgets</key>
                                        <array>
                                                <dict>
                                                        <key>MicAttributes</key>
                                                        <integer>28</integer>
                                                        <key>MicInfo</key>
                                                        <string>Sampled on rising edge</string>
                                                        <key>NodeID</key>
                                                        <integer>39</integer>
                                                        <key>PinConfigDefault</key>
                                                        <integer>2426405136</integer>
                                                </dict>
                                        </array>
                                </dict>
                                <dict>
                                        <key>Codec</key>
                                        <string>Cirrus Logic CS4206</string>
                                        <key>CodecID</key>
                                        <integer>069697542</integer>
                                        <key>Layouts</key>
                                        <array>
                                                <integer>0</integer>
                                        </array>
                                        <key>widgets</key>
                                        <array>
                                                <dict>
                                                        <key>NodeID</key>
                                                        <integer>22</integer>
                                                        <key>PinConfigDefault</key>
                                                        <integer>2073742064</integer>
                                                </dict>
                                        </array>
                                </dict>
                                <dict>
                                        <key>Codec</key>
                                        <string>Wolfson WM8800</string>
                                        <key>CodecID</key>
                                        <integer>051708928</integer>
                                        <key>Layouts</key>
                                        <array>
                                                <integer>67</integer>
                                                <integer>73</integer>
                                        </array>
                                        <key>widgets</key>
                                        <array>
                                                <dict>
                                                        <key>MicInfo</key>
                                                        <string>WM8800 External Microphone Virtual Pin Complex</string>
                                                        <key>NodeID</key>
                                                        <integer>24</integer>
                                                        <key>PinConfigDefault</key>
                                                        <integer>08020848</integer>
                                                </dict>
                                        </array>
                                </dict>
                        </array>
                </dict>
        </dict>
        <key>OSBundleCompatibleVersion</key>
        <string>1.0.0d1</string>


megavolkan 09-05-2009 07:29 PM

Thanks for the guide, i have sound output now but input doesn't work. I can use my mic on leopard on the same input jack (red one) but on snow leo i've tried all ports on the board. None have worked.

My board is GA EP45-DQ6

Is there anyone have a solution for this?

mormegil 09-05-2009 09:33 PM

Quote:

<dict>
<key>CodecID</key>
<integer>083904133</integer>
<key>ConfigData</key>
<data>
AZcdMAH3HeE=
</data>
<key>FuncGroup</key>
<integer>1</integer>
<key>LayoutID</key>
<integer>12</integer>
</dict>
You only need to change this part since your layoutid in dsdt is set to 12. All other layouts can be deleted if you want to. Do it to the patched kext I made! Not the vanilla.

And change ConfigData, not CodecID. Use PlistEditPro to edit plists. ConfigData should be in the form 21871C40 21871D90 .... Not "AZcdMAH3HeE=" like you see above.

Gurruwiwi 09-05-2009 10:26 PM

AAAAAH !!

Got it !! Plist editor is a MUST ! thanks for the tip! Rebooting with "0" them "3"... be right back

Gurruwiwi 09-05-2009 10:48 PM

Sooooooooo close...
 
1 Attachment(s)
MORM !! :)

"3" did nothing but...

"0" DID !!! (weird, but...)

During verbose boot it trigger double the errors assertion"0"

I have different port mapping in sys profiler (my system spec precisely!) , but I now have options in system preferences and audio icon displays there is sound!!!

One unknown mapped output

But there isnt any sound looool !! nothing... I'm x32 now, will try 64, then boot into linux to try to get dump.

You ROCK !

Gurruwiwi 09-05-2009 11:01 PM

:-& F*CK man...

I just rebooted into x64, nothing, back to normal port mapping, no sound.

So I wanted to aggregate device (never done it, wanted to try and see), so I reboot into x32

GONE ! nothing, just like before... nothing in system preferences...

What is going on?

:(

mormegil 09-05-2009 11:12 PM

Ah finally it worked :) I had to manually do your ConfigData from scratch using the codec dump you linked. Glad I did everything right. All ports properly mapped and all.

Booting into x64 has nothing to do with dsdt or applehda.

and btw, the unknown output might be your HDMI audio :)

Gurruwiwi 09-05-2009 11:23 PM

1 Attachment(s)
Right, but I have NO SOUND !

Plus, I went into a linux live CD, got the dumps, reboot x32 and now the mapping is again different showing only digital out, and again nothing in system prefenrences.

anyways, here is the dump.

used

Code:

cat /proc/asound/card0/codec#2 > ~/Desktop/code_dump2.txt
because codec 1 brought back only

Code:

Codec: LSI ID 1040
Address: 1
Vendor Id: 0x11c11040
Subsystem Id: 0x10250146
Revision Id: 0x100200
Modem Function Group: 0x1


mormegil 09-05-2009 11:33 PM

You've got it once. I take it the problem is solved. Just retrace your steps.

That's only the hdmi portion btw. Try codec0.

Gurruwiwi 09-05-2009 11:41 PM

Man, I did nothing except normal reboot ...

I go get the codecs

ajacocks 09-06-2009 08:28 AM

2 Attachment(s)
Just like others here, I'm trying to fix a silent 10.6 machine. My machine is a Clevo M570RU-U, with an ICH8M, and a Realtek 883 codec. I've been through TheKing's procedure to create a patched AppleHDA.kext, adapted to Snow Leopard with the excellent information in this thread. The machine runs 10.6 32bit, since I need functional VMware Fusion.

I tried the easy solution of VoodooHDA.kext, but that does nothing for me, and 'voodoohelper -dump' returns the 'error: IORegistryEntryGetPath returned 0x10000003' error that indicates that Voodoo HDA found no devices functional.

My issue is that I don't see any audio devices, in System Profiler, and, of course, there are no input or output devices available under System Preferences/Sound. This machine never ran 10.5, so I don't have exiting functional codecs to work from.

I am attaching the source for my dsdt.aml, and all the items that were necessary to follow TheKing's document, and the resultant Info.plist files. I'm also attaching the codec dumps. Last, I'm attaching a screen capture from my System Profiler, Audio section.

If anyone has time, and is willing to take a look, it would be greatly appreciated.

Thanks!

Snow 09-06-2009 09:39 AM

Hi m8,

As the guide suggests this is for 889a and even then some people have issues with that codec so for the moment I cannot help you with that.
As for VM I use Parallels 5 in Snow Leopard 64bit running Windows 7 64bit without issues (except maybe Aero interface enabling/disabling whenever it feels liek it)
I have encoded 2 vids with ConvertXtoDVD (the reason I need a VM) and the output was perfect.

I'll take a peek at your file but cannot promise anything (noob at this)

Parallels 5 in Snow Leopard 64bit running Windows 7 64bit

http://i27.tinypic.com/90u445.png

mormegil 09-06-2009 01:21 PM

Quote:

Originally Posted by Gurruwiwi (Post 33716)
Man, I did nothing except normal reboot ...

I go get the codecs

The prob might be with codec address (the leading hex that I asked you to change). One time it works with 3 and next it works with 0. Try this:

Quote:

/* Sample */
"ConfigData",
Buffer (0xA0)
{
/* 0000 */ 0x21, 0x87, 0x1c, 0x40, 0x21, 0x87, 0x1d, 0x90,
/* 0008 */ 0x21, 0x87, 0x1e, 0xA1, 0x21, 0x87, 0x1f, 0x01,
/* 0010 */ 0x21, 0x97, 0x1c, 0x50, 0x21, 0x97, 0x1d, 0x90,
/* 0018 */ 0x21, 0x97, 0x1e, 0xA1, 0x21, 0x97, 0x1f, 0x02,
/* 0020 */ 0x21, 0xa7, 0x1c, 0x60, 0x21, 0xa7, 0x1d, 0x30,
/* 0028 */ 0x21, 0xa7, 0x1e, 0x81, 0x21, 0xa7, 0x1f, 0x01,
/* 0030 */ 0x21, 0xb7, 0x1c, 0x70, 0x21, 0xb7, 0x1d, 0x40,
/* 0038 */ 0x21, 0xb7, 0x1e, 0x21, 0x21, 0xb7, 0x1f, 0x02,
/* 0040 */ 0x21, 0x47, 0x1c, 0x10, 0x21, 0x47, 0x1d, 0x40,
/* 0048 */ 0x21, 0x47, 0x1e, 0x11, 0x21, 0x47, 0x1f, 0x01,
/* 0050 */ 0x21, 0x57, 0x1c, 0x20, 0x21, 0x57, 0x1d, 0x10,
/* 0058 */ 0x21, 0x57, 0x1e, 0x01, 0x21, 0x57, 0x1f, 0x01,
/* 0060 */ 0x21, 0x67, 0x1c, 0x30, 0x21, 0x67, 0x1d, 0x60,
/* 0068 */ 0x21, 0x67, 0x1e, 0x01, 0x21, 0x67, 0x1f, 0x01,
/* 0070 */ 0x21, 0x77, 0x1c, 0x80, 0x21, 0x77, 0x1d, 0x20,
/* 0078 */ 0x21, 0x77, 0x1e, 0x01, 0x21, 0x77, 0x1f, 0x01,
/* 0080 */ 0x21, 0xe7, 0x1c, 0x90, 0x21, 0xe7, 0x1d, 0x61,
/* 0088 */ 0x21, 0xe7, 0x1e, 0x4b, 0x21, 0xe7, 0x1f, 0x01,
/* 0090 */ 0x21, 0xf7, 0x1c, 0xa0, 0x21, 0xf7, 0x1d, 0x01,
/* 0098 */ 0x21, 0xf7, 0x1e, 0xcb, 0x21, 0xf7, 0x1f, 0x01
},
Insert it in your dsdt above "layout-id". It's for my codec (alc888). You'll have to convert your "ConfigData" in plist into it. Just separate them into bytes and add "0x" in front.

Quote:

Example: 21871c40 -> 0x21, 0x87, 0x1c, 0x40
Also
Quote:

Buffer (0xA0)
needs to be changed. Mine has a total of 160 bytes if you count above. So 160 (decimal) = A0 (hex)

Lastly
Quote:

Method (_DSM, 4, NotSerialized)
{
Store (Package (0x08)
Increase the size "0x08" if you're getting compile error.

What this does is hopefully set your codec address in dsdt so it stays fixed. Try codec address 0 thru 3 and report back.

mormegil 09-06-2009 01:39 PM

@: ajacocks

Why are your kexts empty?

Your codec 10ec0883 is not natively supported. You'll have to patch the AppleHDA binary. You want to replace a supported codec such as 10ec0885 (alc885,889a).

So open up the AppleHDA binary in AppleHDA.kext/Contents/MacOS with hex edit.

Search for "8508ec10" (byte-flip of "10ec0885") and replace with "8308ec10" (byte-flip of "10ec0883").
There should be 4 instances in the SL kext.

Gurruwiwi 09-06-2009 02:31 PM

1 Attachment(s)
Holy sh...

Ok, off to work on that right now!

EDIT: LOL.. morm, I just booted into SL to start editing DSDT again, did nothing at all except pop in the SL HDD, no sound, but audio is fully mapped, and present in system preferences, active audio icon in taskbar !!

Tried playing around with agg.devices... no sound. Seems the built in audio's master volume is completely down and greyed out.

Going to try to edit that hex in, hope I do it right...

mormegil 09-06-2009 03:00 PM

If they are in sound pref then there should be sound! Have you tried plugging a headphone or mic to test? Internal speakers might be too soft to hear.

edit: My master volume in aggregate device is also greyed out for every port. Doesn't really matter.

Gurruwiwi 09-06-2009 03:07 PM

Quick question. Do I just copy the one you pasted into my dsdt then modify ConfigData to match it, or the other way around?

ajacocks 09-06-2009 03:08 PM

1 Attachment(s)
mormegil,

Ahhh...thanks for filling me in, about the codec. Is there nothing else that needs doing, to patch the codec, other than changing the identifier from 10ec0885 to 10ec0883? That seems very simple. I'll give that a shot, though, and see what happens.

EDIT: No luck with the edited codec, either. I think something's wrong with my DSDT.aml, though, since the System Profiler still shows no device information, as in that picture that I uploaded. Do you see anything that I missed?

My kexts aren't really empty, I just left out everything but the Info.plist files, to save space in the upload. I have uploaded my entire AppleHDA.kext file, attached to this post. How do my changes look? I used layout 12, as the guide suggested.

Thanks!

mormegil 09-06-2009 03:46 PM

@ Gurruwiwi

Doesn't matter. As long as it appears as above but with your configdata instead.

@ ajacocks

You seem to be doing fine with King's guide. I see all the required files in your attached package.
Once you're done patching the binary, you'll have to fix the plists. Your codec id in decimal should be changed to 283904131.
Your dsdt is fine. All it does is inject your audio. As long as you see an audio device in Sys Profiler it's all good.

Edit: I just saw the pic u uploaded. It's supposed to be that way if you haven't got the working plists.

Gurruwiwi 09-06-2009 03:56 PM

Morm, while I was waiting I ran a small test. I think it can be useful for others to know, to not judge a KP on its own.

I cyclically rebooted in verbose, changing nothing. There is a sort of a pattern.

First reboot from "mapped - sound- but no audio heard" status


- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- 1x set of "Assertion "0"" errors during boot - no mapping
- 1x set of "Assertion "0"" errors during boot - no mapping
- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 1x set of "Assertion "0"" errors during boot - no mapping
- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- KP
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound
- 1x set of "Assertion "0"" errors during boot - no mapping
- 2x set of "Assertion "0"" errors during boot - mapping - audio shown - no sound

Seems something is being re-set... could it be a similar CMOS reset bug?

Going to try the DSDT and ConfigData, just waiting for your input as it looks like a hell of a lot of work...

EDIT: You posted while I was typing. Going to try it now.

Forgot to mention. When audio is mapped, I tried plugging in headphones and microfphone. Mic does nothing, but headphone makes system profiler hang. It does seem to try switching devices, but nothing happens. Beach ball spins round, OS stops responding, have to force quit profiler, but it struggles to do it. Once removed it manages to force quit, and OS response is back