InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   10.X (http://infinitemac.com/forumdisplay.php?f=36)
-   -   [Help] ALC888 on SL using DSDT+LegacyHDA (http://infinitemac.com/showthread.php?t=4524)

Andrew180 10-25-2009 05:52 PM

[Help] ALC888 on SL using DSDT+LegacyHDA
 
Hi people! I'm trying to make my ALC888 audio work using patched DSDT and LegacyHDA.kext in /Extra/Extensions. I followed How_to_patch_DSDT_with_LAN_and_HDEF_functions_incl uding_LegacyHDA.zip from this thread but i'm not able to compile my DSDT:
Code:

Intel ACPI Component Architecture
ASL Optimizing Compiler version 20090903 [Oct  2 2009]
Copyright (C) 2000 - 2009 Intel Corporation
Supports ACPI Specification Revision 4.0

/Users/Andrew/Desktop/DSDT.dsl  463:                CreateDWordField (BUF0, \_SB.PCI0._CRS._Y00._MIN, TCMM)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y00._MIN)

/Users/Andrew/Desktop/DSDT.dsl  464:                CreateDWordField (BUF0, \_SB.PCI0._CRS._Y00._LEN, TOMM)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y00._LEN)

/Users/Andrew/Desktop/DSDT.dsl  477:                    LNKA,
Error    4063 -                        Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  485:                    LNKA,
Error    4063 -                        Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  517:                    LNKA,
Error    4063 -                        Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  549:                    LNKA,
Error    4063 -                        Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  589:                    LNKA,
Error    4063 -                        Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  798:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  920:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  1010:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  1100:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  1190:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  1312:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  1401:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  1425:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  1449:                        LNKA,
Error    4063 -                            Object does not exist ^  (LNKA)

/Users/Andrew/Desktop/DSDT.dsl  2267:                        CreateByteField (BUF0, \_SB.PCI0.PX40.FDC0._CRS._Y01._MIN, IOLO)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y01._MIN)

/Users/Andrew/Desktop/DSDT.dsl  2269:                        CreateByteField (BUF0, \_SB.PCI0.PX40.FDC0._CRS._Y01._MAX, IORL)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y01._MAX)

/Users/Andrew/Desktop/DSDT.dsl  2367:                        CreateByteField (BUF1, \_SB.PCI0.PX40.UAR1._CRS._Y02._MIN, IOLO)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y02._MIN)

/Users/Andrew/Desktop/DSDT.dsl  2369:                        CreateByteField (BUF1, \_SB.PCI0.PX40.UAR1._CRS._Y02._MAX, IORL)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y02._MAX)

/Users/Andrew/Desktop/DSDT.dsl  2371:                        CreateWordField (BUF1, \_SB.PCI0.PX40.UAR1._CRS._Y03._INT, IRQW)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y03._INT)

/Users/Andrew/Desktop/DSDT.dsl  2540:                        CreateByteField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y04._MIN, IOLO)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y04._MIN)

/Users/Andrew/Desktop/DSDT.dsl  2542:                        CreateByteField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y04._MAX, IORL)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y04._MAX)

/Users/Andrew/Desktop/DSDT.dsl  2544:                        CreateByteField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y04._LEN, IOLE)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y04._LEN)

/Users/Andrew/Desktop/DSDT.dsl  2545:                        CreateWordField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y05._INT, IRQW)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y05._INT)

/Users/Andrew/Desktop/DSDT.dsl  2693:                        CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y06._MIN, IOLO)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y06._MIN)

/Users/Andrew/Desktop/DSDT.dsl  2695:                        CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y06._MAX, IORL)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y06._MAX)

/Users/Andrew/Desktop/DSDT.dsl  2697:                        CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y06._LEN, IOLE)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y06._LEN)

/Users/Andrew/Desktop/DSDT.dsl  2698:                        CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y07._MIN, IOEL)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y07._MIN)

/Users/Andrew/Desktop/DSDT.dsl  2700:                        CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y07._MAX, IOML)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y07._MAX)

/Users/Andrew/Desktop/DSDT.dsl  2702:                        CreateWordField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y08._INT, IRQW)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y08._INT)

/Users/Andrew/Desktop/DSDT.dsl  2703:                        CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y09._DMA, DMAC)
Optimize 6057 -                                                                                    NamePath optimized ^  (_Y09._DMA)

/Users/Andrew/Desktop/DSDT.dsl  3091:            Name (NATA, Package (0x01)
Optimize 6033 -              Integer optimized to single-byte AML opcode ^  (One)

/Users/Andrew/Desktop/DSDT.dsl  3918:                Buffer (0x01)
Optimize 6033 -      Integer optimized to single-byte AML opcode ^  (One)

/Users/Andrew/Desktop/DSDT.dsl  3918:                Buffer (0x01)
Optimize 6033 -      Integer optimized to single-byte AML opcode ^  (One)

/Users/Andrew/Desktop/DSDT.dsl  3951:                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Error    4063 -                        Object does not exist ^  (DTGP)

/Users/Andrew/Desktop/DSDT.dsl  3975:                    Return (BUFA)
Error    4063 -                                Object does not exist ^  (BUFA)

/Users/Andrew/Desktop/DSDT.dsl  3986:                    ShiftLeft (One, Local0, IRQV)
Error    4063 -                                                Object does not exist ^  (IRQV)

/Users/Andrew/Desktop/DSDT.dsl  3987:                    Return (BUFB)
Error    4063 -                                Object does not exist ^  (BUFB)

/Users/Andrew/Desktop/DSDT.dsl  4018:                    Return (BUFA)
Error    4063 -                                Object does not exist ^  (BUFA)

/Users/Andrew/Desktop/DSDT.dsl  4029:                    ShiftLeft (One, Local0, IRQV)
Error    4063 -                                                Object does not exist ^  (IRQV)

/Users/Andrew/Desktop/DSDT.dsl  4030:                    Return (BUFB)
Error    4063 -                                Object does not exist ^  (BUFB)

/Users/Andrew/Desktop/DSDT.dsl  4061:                    Return (BUFA)
Error    4063 -                                Object does not exist ^  (BUFA)

/Users/Andrew/Desktop/DSDT.dsl  4072:                    ShiftLeft (One, Local0, IRQV)
Error    4063 -                                                Object does not exist ^  (IRQV)

/Users/Andrew/Desktop/DSDT.dsl  4073:                    Return (BUFB)
Error    4063 -                                Object does not exist ^  (BUFB)

/Users/Andrew/Desktop/DSDT.dsl  4104:                    Return (BUFA)
Error    4063 -                                Object does not exist ^  (BUFA)

/Users/Andrew/Desktop/DSDT.dsl  4115:                    ShiftLeft (One, Local0, IRQV)
Error    4063 -                                                Object does not exist ^  (IRQV)

/Users/Andrew/Desktop/DSDT.dsl  4116:                    Return (BUFB)
Error    4063 -                                Object does not exist ^  (BUFB)

/Users/Andrew/Desktop/DSDT.dsl  4147:                    Return (BUFA)
Error    4063 -                                Object does not exist ^  (BUFA)

/Users/Andrew/Desktop/DSDT.dsl  4158:                    ShiftLeft (One, Local0, IRQV)
Error    4063 -                                                Object does not exist ^  (IRQV)

/Users/Andrew/Desktop/DSDT.dsl  4159:                    Return (BUFB)
Error    4063 -                                Object does not exist ^  (BUFB)

/Users/Andrew/Desktop/DSDT.dsl  4190:                    Return (BUFA)
Error    4063 -                                Object does not exist ^  (BUFA)

/Users/Andrew/Desktop/DSDT.dsl  4201:                    ShiftLeft (One, Local0, IRQV)
Error    4063 -                                                Object does not exist ^  (IRQV)

/Users/Andrew/Desktop/DSDT.dsl  4202:                    Return (BUFB)
Error    4063 -                                Object does not exist ^  (BUFB)

/Users/Andrew/Desktop/DSDT.dsl  4233:                    Return (BUFA)
Error    4063 -                                Object does not exist ^  (BUFA)

/Users/Andrew/Desktop/DSDT.dsl  4244:                    ShiftLeft (One, Local0, IRQV)
Error    4063 -                                                Object does not exist ^  (IRQV)

/Users/Andrew/Desktop/DSDT.dsl  4245:                    Return (BUFB)
Error    4063 -                                Object does not exist ^  (BUFB)

/Users/Andrew/Desktop/DSDT.dsl  4331:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0A._BAS, ACMM)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0A._BAS)

/Users/Andrew/Desktop/DSDT.dsl  4332:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0A._LEN, ASSM)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0A._LEN)

/Users/Andrew/Desktop/DSDT.dsl  4333:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0B._BAS, RMA1)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0B._BAS)

/Users/Andrew/Desktop/DSDT.dsl  4334:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0B._LEN, RSS1)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0B._LEN)

/Users/Andrew/Desktop/DSDT.dsl  4335:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0C._BAS, RMA2)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0C._BAS)

/Users/Andrew/Desktop/DSDT.dsl  4336:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0C._LEN, RSS2)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0C._LEN)

/Users/Andrew/Desktop/DSDT.dsl  4337:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0D._BAS, RMA3)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0D._BAS)

/Users/Andrew/Desktop/DSDT.dsl  4338:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0D._LEN, RSS3)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0D._LEN)

/Users/Andrew/Desktop/DSDT.dsl  4339:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0E._BAS, RMA4)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0E._BAS)

/Users/Andrew/Desktop/DSDT.dsl  4340:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0E._LEN, RSS4)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0E._LEN)

/Users/Andrew/Desktop/DSDT.dsl  4341:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0F._BAS, ERMA)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0F._BAS)

/Users/Andrew/Desktop/DSDT.dsl  4342:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y0F._LEN, ERMS)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y0F._LEN)

/Users/Andrew/Desktop/DSDT.dsl  4343:                CreateDWordField (BUF0, \_SB.MEM._CRS._Y10._LEN, EXTM)
Optimize 6057 -                                                                  NamePath optimized ^  (_Y10._LEN)


Elapsed time for major events


Miscellaneous compile statistics

      7135 : Parse nodes
      1439 : Namespace searches
        523 : Named objects
        144 : Control methods
        596 : Memory Allocations
    1429025 : Total allocated memory
          0 : Constant subtrees folded

ASL Input:  /Users/Andrew/Desktop/DSDT.dsl - 4474 lines, 146608 bytes, 1583 keywords
Compilation complete. 36 Errors, 0 Warnings, 0 Remarks, 34 Optimizations

I have this in my DSDT.dsl:

Code:

Device (HDEF)
            {
        Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0A)
                        {

                "built-in",
                Buffer (0x01)
                {
                0x01
                },

                            "codec-id",
                            Buffer (0x04)
                            {
                                0x88, 0x08, 0xEC, 0x10   
                            },

                            "layout-id",
                            Buffer (0x04)
                            {
                                0x78, 0x03, 0x00, 0x00 
                            },

                            "device-type",
                            Buffer (0x10)
                            {
                                "Realtek ALC888"   
                            },

                            "PinConfigurations",
                            Buffer (0x28)
                            {
                                /* 0000 */    0x10, 0x90, 0xA1, 0x01, 0x20, 0x90, 0xA1, 0x02,
                                /* 0008 */    0x80, 0x30, 0x81, 0x01, 0x90, 0x40, 0x21, 0x02,
                                /* 0010 */    0x30, 0x40, 0x11, 0x01, 0x40, 0x40, 0x01, 0x01,
                                /* 0018 */    0x50, 0x60, 0x01, 0x01, 0x60, 0x20, 0x01, 0x01,
                                /* 0020 */    0x70, 0x61, 0x4B, 0x01, 0xA0, 0x01, 0xCB, 0x01
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

With DSDT patched using Koalala's patcher (selected ALC888-2) i'm getting this info:
http://i37.tinypic.com/2a66lpe.jpg

So maybe DSDT patched using Koalala's patcher is better way to go, at least i can see my card but with no pins...

chaoswith 10-26-2009 03:43 AM

Solved this problem
 
use the voodoohda.kext

Andrew180 10-26-2009 07:19 AM

Quote:

Originally Posted by chaoswith (Post 38222)
use the voodoohda.kext

Yes, VoodooHDA works for me but with sleep bug. Also patched AppleHDA+HDAEnabler works for me with 5.1 and no sleep bug, so perfectly. But i want to minimize the number of kexts i had to use...I really wanna make this DSDT thing work.

thorazine74 10-26-2009 10:49 AM

It looks like your DSDT is missing some info regarding PCI interrupts (LNKA) you would probably have to add that sections to the DSDT but I'm not sure if that posible or easy, I'm not very skilled with DSDT.
Have you considered just using HDAEnabler or an EFI String to inject the same values needed for a LegacyHDA, the layout-id and the pin configurations if needed? It should be straight, much easier than fixing your messed up DSDT code...

Andrew180 10-26-2009 02:06 PM

Quote:

Originally Posted by thorazine74 (Post 38234)
It looks like your DSDT is missing some info regarding PCI interrupts (LNKA) you would probably have to add that sections to the DSDT but I'm not sure if that posible or easy, I'm not very skilled with DSDT.
Have you considered just using HDAEnabler or an EFI String to inject the same values needed for a LegacyHDA, the layout-id and the pin configurations if needed? It should be straight, much easier than fixing your messed up DSDT code...

Thanks for reply, but when i'm trying to add efi strings it gives me this error:
http://i34.tinypic.com/2rfc6c3.jpg
Of course i restored my original Device (AZAL) before doing this...

But i think that with that koalala's dsdt i'm not too far away from success because i can really see my audio and i can see true hardware id of my audio, so it just have to be finished some way i think...