Jump to content
17 posts in this topic

Recommended Posts

Hi all,

 

I have an Asus P5KPL-AM SE mobo. Manual shows ALC662 audio chip but codec_dump show ALC887 model.

I tried all solutions but audio doesn't work.

I attach all my files, if you can help me I'll appreciate.

Below my HDEF on DSDT file. Legacy kext is inserted in /Extra/Extension

I have AppleHDA v10.6.7, patched with

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

Please don't tell me to use VoodooHDA, audio quality is very low.

Thanks in advance

 

My DSDT:

Device (HDEF)
           {
               Name (_ADR, 0x001B0000)
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x0A)
                       {
                           "built-in", 
                           Buffer (One)
                           {
                               0x01
                           }, 

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

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

                           "device-type", 
                           Buffer (0x0F)
                           {
                               "Realtek ALC887"
                           }, 

                           "PinConfigurations", 
                           Buffer (0x18)
                           {
                               /* 0000 */    0x10, 0x40, 0x01, 0x01, 0x30, 0x90, 0xA1, 0x01, 
                               /* 0008 */    0x40, 0x90, 0xA1, 0x01, 0x50, 0x30, 0x81, 0x01, 
                               /* 0010 */    0x20, 0x40, 0x21, 0x01, 0x60, 0xC0, 0x04, 0x40
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }

codec_dump_dec.txt

codec_dump.txt

svg.zip

svg_dec.zip

verbs.txt

verbitdebug.txt

PinConfig.txt

ALC887.kext.zip

Yes let the pin config in DSDT free and use in info plist:

01471c10 01471d40 01471e11 01471f01 01871c30 01871d90 01871ea0 01871f90 01971c40 01971d90 01971e81 01971f02 01a71c50 01a71d30 01a71e81 01a71f01 01b71c20 01b71d40 01b71e21 01b71f02

Yes let the pin config in DSDT free and use in info plist:

01471c10 01471d40 01471e11 01471f01 01871c30 01871d90 01871ea0 01871f90 01971c40 01971d90 01971e81 01971f02 01a71c50 01a71d30 01a71e81 01a71f01 01b71c20 01b71d40 01b71e21 01b71f02

 

It doesn't work :-(

 

Sum up the situation.

 

Manual indicates ALC662 chip but codec_dump shows ALC887.

I used either ALC887 vendorID /layoutID and ALC662 vendorID/layoutID in my legacy kext and DSDT file.

In one case I used perl command for ALC887, in the other one (after restored original AppleHDA 10.6.7) command perl for ALC662.

 

Below my current DSDT file (with your ConfigData) and my legacy.kext

Attached entire current DSDT.aml and ALC662.kext

Where is the trick?

Damn audio chip :-(

Help me please!

 

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
               }))
       {
           If (LEqual (Arg1, One))
           {
               If (LEqual (Arg2, Zero))
               {
                   Store (Buffer (One)
                       {
                           0x03
                       }, Arg4)
                   Return (One)
               }

               If (LEqual (Arg2, One))
               {
                   Return (One)
               }
           }
       }

       Store (Buffer (One)
           {
               0x00
           }, Arg4)
       Return (Zero)
   }

 

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

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

ALC662.kext.zip

DSDT.aml.zip

post-279248-1305725987_thumb.png

post-279248-1305726000_thumb.png

take also care of node ids:

intMic: 9 34 24

linein: 8 35 26

speaker: 20 12 2

hp: 27 38 37

 

and try with 10.6.2 apple.

 

try it with codec id 662 or 887 but keep the pinconfig and pathmap we told u

Here done it for u: http://cl.ly/0O1b012u1a1H2A2w0Q04

 

Maybe try first with 10.6.2 apple hda. When the 887 codec dosen't work u can try change all codec id to 662. Keep all other things also layout id can kept.

Here done it for u: http://cl.ly/0O1b012u1a1H2A2w0Q04

 

Maybe try first with 10.6.2 apple hda. When the 887 codec dosen't work u can try change all codec id to 662. Keep all other things also layout id can kept.

 

I did AppleHDA 10.6.2 rollback with [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url].

I copied your kext in /Extra/Extension. In your kext layoutID is set to 887, but in my DSDT is set to 662.

You also said to keep LayoutID, are you meant 887 or 662???

 

CodecID=VendorID?

 

EDIT:

Now, with your kext untouched and with LayoutID in DSDT set to 887 I see audio icon in system tray.

System Preferences show "Internal Speakers" like output device but audio doesn't work. If I connect a headphones (on front panel) this output change to "Headphones" but audio doesn't work.

 

It 'a step forward ;-)

 

Can I try to change LayoutID or Codec/VendorID?

try this new one http://cl.ly/0l2r2n0s1f351H0B0v1c

 

don't expect to much only small changes!!

 

Nothing changes.

Meanwhile can you explain me, please, how can I find this relations from my dump?!

 

intMic: 9 34 24

linein: 8 35 26

speaker: 20 12 2

hp: 27 38 37

  • 8 months later...

Hey all,

 

Try the latest BIOS Version (0702) and take a look at my Moded DSDT for this mobo. the perfect One for all versions of OSX, 10.5.x 10.6.x 10.6.8 & the Lion 10.7.x

 

i will update the topic soon (Today Maybe) i have more than 20 changes & fixes in my latest One, everythings works Great.

 

PS: just for your information, the latest version of this MotherBoard have an ALC887. and this is the real ref: ALC887 A7L0801 GA31C2

 

The Codec Dump and Verbs attached is not correct please try to upgrade your BIOS. or wait for me i will upload the corrected one for you.

×
×
  • Create New...