Jump to content

GigaByte GA-X48-DQ6 with ALC889A (ALC885) on SL


lordbaco
 Share

18 posts in this topic

Recommended Posts

GigaByte GA-X48-DQ6 on Snow Leopard (32 and 64-bits)

=>How to get "Sound" out of ALC889A (ALC885)

(without doing anything on /System/Library/Extensions)

 

Prerequisites

  • Buy a Mac OS X Server 10.6 Snow Leopard from Apple Store
  • Install the CD using this Install Doc
  • Install Chameleon 2.0 RC1 (Not RC2 nor RC3)
  • Replace /boot with netkas PC EFI 10.1
  • Use netkas FakeSMC in /Extra/Extensions/fakesmc.kext
  • Remove IOAudioFamily.kext, OSvKernDSPLib.kext, dsmos.kext, AppleSMBIOS.kext from /Extra/Extensions
  • Remove out of /Extra/Extensions *ALL* sound related kexts
    like VoodooHDA.kext, AppleHDA.kext, HDAEnabler.kext, LegacyHDA.kext, LegacyAppleHDAHardwareConfigDriver.kext, LegacyHDAPlatformDriver.kext, all *HDA*.kext, all *Audio*.kext, etc.
  • Make sure that you use the original AppleHDA.kext from Snow Leopard (174.1.1) in /System/Library/Extensions/AppleHDA.kext
  • Configure the BIOS to boot using AHCI instead of IDE

  • GigaByte GA-X48-DQ6 with ALC889A (ALC885)
    -- I cannot help you much for other motherboards.
    You need to find yourself the correct layout-id, codec-id, PinConfigurations
    and corresponding LayoutID, CodecID, ConfigData

Setup

  1. Install /dsdt.dsl from dsdt.dsl.zip
  2. Install /dsdt.aml from dsdt.aml.zip
  3. Install /Extra/Extensions/LegacyHDA.kext from LegacyHDA.kext.zip
  4. Execute this on a shell sudo chown -R root:wheel /Extra/Extensions
  5. Execute this on a shell sudo chmod -R go-w /Extra/Extensions
  6. Execute this on a shell sudo kextcache -v 1 -t -l -m /Extra/Extensions.mkext /Extra/Extensions

Reboot and it's done.

 

If doesn't work you can also clean the System Caches

  1. Execute this on a shell sudo rm -fr /Library/Caches/*
  2. Execute this on a shell sudo rm -fr /System/Library/Caches/*
  3. Execute this on a shell sudo kextcache -v 1 -t -l -m /System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext /System/Library/Extensions

If still doesn't work try to use my Extra folder within GA_X48_DQ6.zip

and you can fix the permissions using clean_cache.sh

 

If you have other motherboard or this post doesn't help and you still want and need sound on SL

I recommend to buy one of the following:

  • Terratec Aureon DUAL USB include Micro + Line Out / S/SDIF (But no DTS passthrough)
  • Premium Notebook Headset includes USB Sound Card with Line Out + Micro
  • Any USB Sound Card with the mention "No Drivers Required" and "MacOS 10.x" (usualy 10.2 or better)
    -- Don't take for now M-Audio who require a driver for MacOS and
    is not compatible with SL (support coming soon)

Good Luck

 

P.S. Please give me some feedback so I can make this How-To better

 

post-339668-1252919891_thumb.png post-339668-1252919911_thumb.png post-339668-1252921694_thumb.png

 

Even if the sound works you will get the following in dmesg:

Sound assertion "0 != result" failed in "..." at line 3206 goto handler
Sound assertion "0 != widget->setUnsolicited ( true )" failed in "..." at line 890 goto handler
Sound assertion "0 != result" failed in "..." at line 3206 goto handler
Sound assertion "0 != widget->setUnsolicited ( true )" failed in "..." at line 890 goto handler
Sound assertion "0 != result" failed in "..." at line 3206 goto handler
Sound assertion "0 != widget->setUnsolicited ( true )" failed in "..." at line 890 goto handler
Sound assertion "0 != result" failed in "..." at line 3206 goto handler
Sound assertion "0 != widget->setUnsolicited ( true )" failed in "..." at line 890 goto handler
Sound assertion "0 != result" failed in "..." at line 3206 goto handler
Sound assertion "0 != widget->setUnsolicited ( true )" failed in "..." at line 890 goto handler
Sound assertion "0 != result" failed in "..." at line 3206 goto handler
Sound assertion "0 != widget->setUnsolicited ( true )" failed in "..." at line 890 goto handler

 

Technical Details:

 

dsdt.dsl

        Method (_L0D, 0, NotSerialized)
       {
           Notify (\_SB.PCI0.USBE, 0x02)
           Notify (\_SB.PCI0.USE2, 0x02)
           Notify (\_SB.PWRB, 0x02)
[b]            Notify (\_SB.PCI0.HDEF, 0x02)
[/b]            Notify (\_SB.PCI0.IGBE, 0x02)
       }

...

           }

[b]            Device (HDEF)
           {
               Name (_ADR, 0x001B0000)
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x0E)
                       {
                           "codec-id", 
                           Buffer (0x04)
                           {
                               0x85, 0x08, 0xEC, 0x10
                           }, 

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

                           "APPL,slot-name", 
                           Buffer (0x09)
                           {
                               "Built-in"
                           }, 

                           "device-type", 
                           Buffer (0x06)
                           {
                               "Audio"
                           }, 

                           "name", 
                           Buffer (0x21)
                           {
                               "High Definition Audio Controller"
                           }, 

                           "model", 
                           Buffer (0x1F)
                           {
                               "Realtek ALC889a HDA Controler"
                           }, 

                           "PinConfigurations", 
                           Buffer (0x30)
                           {
                               /* 0000 */    0x40, 0x01, 0x13, 0x90, 0x41, 0x40, 0x01, 0x01, 
                               /* 0008 */    0x0F, 0x00, 0x00, 0x40, 0x0F, 0x00, 0x00, 0x40, 
                               /* 0010 */    0x10, 0x01, 0xA0, 0x90, 0x11, 0x01, 0xA0, 0x90, 
                               /* 0018 */    0x20, 0x30, 0x81, 0x01, 0x50, 0x70, 0x21, 0x01, 
                               /* 0020 */    0xF0, 0x01, 0x33, 0x59, 0x01, 0xE6, 0x05, 0x40, 
                               /* 0028 */    0x60, 0xE0, 0x45, 0x01, 0x30, 0xE0, 0xC5, 0x01
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

[/b]            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, )
                   {}
           })

...

 

LegacyHDA.kext/Contents/Info.plist

...
                       HDAConfigDefault                                
                                       CodecID
                                       [b]283904133[/b]
                                       ConfigData
                                       [b]QAETkEFAAQEPAABADwAAQBABoJARAaCQIDCBAVBwIQHwATNZAeY
FQGDgRQEw4MUB[/b]
                                       FuncGroup
                                       1
                                       LayoutID
                                       [b]12[/b]
...
                       AppleHDAPlatformDriverLoader
                       Layouts                                
                                       LayoutID
                                       [b]12[/b]
                                       PathMapRef
                                                       CodecID
                                                               [b]283904133[/b]
...
               HDA Hardware Config Resource
                       CFBundleIdentifier
                       com.apple.driver.AppleHDAHardwareConfigDriver
                       HDAConfigDefault
                                       CodecID
                                       [b]283904133[/b]
                                       ConfigData
             [b]QAETkEFAAQEPAABADwAAQBABoJARAaCQIDCBAVBwIQHwATNZAeY
FQGDgRQEw4MUB[/b]
                                       FuncGroup
                                       1
                                       LayoutID
                                       [b]12[/b]                          
...

 

codec-id is for ALC889a (ALC885)

0x85, 0x08, 0xEC, 0x10 (DSDT) is the byte flip of 0x10EC0885 and is equal to 283904133 (Info.plist)

 

layout-id

0x0C, 0x00, 0x00, 0x00 (DSDT) is the byte flip of 0x0000000C and is equal to 12 (Info.plist)

PinConfigurations in the same order

(DSDT)

/* 0000 */ 0x40, 0x01, 0x13, 0x90, 0x41, 0x40, 0x01, 0x01,

/* 0008 */ 0x0F, 0x00, 0x00, 0x40, 0x0F, 0x00, 0x00, 0x40,

/* 0010 */ 0x10, 0x01, 0xA0, 0x90, 0x11, 0x01, 0xA0, 0x90,

/* 0018 */ 0x20, 0x30, 0x81, 0x01, 0x50, 0x70, 0x21, 0x01,

/* 0020 */ 0xF0, 0x01, 0x33, 0x59, 0x01, 0xE6, 0x05, 0x40,

/* 0028 */ 0x60, 0xE0, 0x45, 0x01, 0x30, 0xE0, 0xC5, 0x01

is equal to

(Info.plist)

QAETkEFAAQEPAABADwAAQBABoJARAaCQIDCBAVBwIQHwATNZAeY

FQGDgRQEw4MUB

 

Enjoy EFI-X Free PC !

 

Help! Help! We're being held prisoner in a system software factory!

 

Credits

http://www.insanelymac.com/forum/lofiversi...hp/t140941.html

http://blog.staticanime.net/2009/08/21/dsd...-msi-wind-u100/

http://www.infinitemac.com/f57/guide-how-t...hda-to-sl-t3981

http://www.infinitemac.com/f57/guide-alc88...746/page14.html

Link to comment
Share on other sites

Still no sound... No available devices in SysPref...

Screenshot from SysProf attached.

 

and sound assertion errors on startup

 

dmesg:

Sound assertion "0 != setupHostInterface()" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDAController/AppleHDAController.cpp" at line 255 goto Exit1

Sound assertion "0 != setupHostInterface()" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDAController/AppleHDAController.cpp" at line 255 goto Exit1

Link to comment
Share on other sites

Can you give me the ouput of ioreg or IOSelect something under HDEF section ?

Did you remove all *HDA* and Voodo from /Extra/Extensions and put LegacyHDA instead ?

You can also rebuild the cache of Extensions in System/Library and remove /Library/Cache see other posts about cleanup those caches

Link to comment
Share on other sites

Here is my DSDT HDEF section:

Device (HDEF)
           {
              	Name (_ADR, 0x00140002)
               OperationRegion (PCI, PCI_Config, 0x00, 0x0100)
               Field (PCI, AnyAcc, NoLock, Preserve)
               {
                           Offset (0x42), 
                   DNSP,   1, 
                   DNSO,   1, 
                   ENSR,   1
               }

               Name (_PRW, Package (0x02)
               {
                   0x1B, 
                   0x04
               })
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x08)
                       {
                           "codec-id", 
                           Buffer (0x04)
                           {
                               0x85, 0x08, 0xEC, 0x10
                           }, 

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

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

                           "PinConfigurations", 
                           Buffer (0x30)
                           {
                               /* 0000 */    0x10, 0x40, 0x11, 0x01, 0x12, 0x20, 0x01, 0x01, 
                               /* 0008 */    0x11, 0x60, 0x01, 0x01, 0x14, 0x10, 0x01, 0x01, 
                               /* 0010 */    0x30, 0x99, 0xA1, 0x01, 0x3F, 0x90, 0xA1, 0x02, 
                               /* 0018 */    0x31, 0x31, 0x81, 0x01, 0x1F, 0x40, 0x21, 0x02, 
                               /* 0020 */    0x32, 0x01, 0x33, 0x99, 0x00, 0x01, 0x00, 0x40, 
                               /* 0028 */    0x60, 0x01, 0x45, 0x81, 0x00, 0x01, 0x00, 0x40
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

 

System Profiler:

picture1vx.png

 

System Prefs:

screenshot20090911at412.png

 

ioreg dump:

http://www.mediafire.com/?sharekey=d219da5...04e75f6e8ebb871

 

IORegExpl Screenshot:

screenshot20090911at418.png

 

Can you give me the ouput of ioreg or IOSelect something under HDEF section ?

Did you remove all *HDA* and Voodo from /Extra/Extensions and put LegacyHDA instead ?

You can also rebuild the cache of Extensions in System/Library and remove /Library/Cache see other posts about cleanup those caches

 

All sound related kexts were removed out of /E/E, /S/L/E untouched, cache cleaned...

Link to comment
Share on other sites

Hi mate

thank you for your tuturial but i still have a question

 

 

i install chameleon 2 rc 3 on an usb stick and use it for booting.

 

will it work if i copy the files "dsdt.dsl" and "dsdt.aml" on usb sticks root or must they be on she snow leopard install HDD

?

Link to comment
Share on other sites

Thank you for your response.

i will try v2 rc1 and 10.1

 

were can i find this site ?

 

edit: if i try to install chameleon 2 rc 1 (under snow leo), i yust get an error

 

What is the error ? (try to boot using -x32 -v or -x32 -s)

 

For Chamelon RC1 search on the web you will find it

the same for netkas PC EFI 10.1 /boot.

 

N.B. Chamelon RC1 doesn't work unless you replace /boot

(hidden sudo chflag nohidden /boot then hidden ...)

 

http://www.teknojunkie.com/2009/09/downloads/

This give you almost everything you need..

the rest is within my .zip files

Link to comment
Share on other sites

Device (HDEF)
           {
              	Name (_ADR, 0x00140002)
               OperationRegion (PCI, PCI_Config, 0x00, 0x0100)
               Field (PCI, AnyAcc, NoLock, Preserve)
               {
                           Offset (0x42), 
                   DNSP,   1, 
                   DNSO,   1, 
                   ENSR,   1
               }

               Name (_PRW, Package (0x02)
               {
                   0x1B, 
                   0x04
               })
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x08)
                       {
                           "codec-id", 
                           Buffer (0x04)
                           {
                               0x85, 0x08, 0xEC, 0x10
                           }, 

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

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

                           "PinConfigurations", 
                           Buffer (0x30)
                           {
                               /* 0000 */    0x10, 0x40, 0x11, 0x01, 0x12, 0x20, 0x01, 0x01, 
                               /* 0008 */    0x11, 0x60, 0x01, 0x01, 0x14, 0x10, 0x01, 0x01, 
                               /* 0010 */    0x30, 0x99, 0xA1, 0x01, 0x3F, 0x90, 0xA1, 0x02, 
                               /* 0018 */    0x31, 0x31, 0x81, 0x01, 0x1F, 0x40, 0x21, 0x02, 
                               /* 0020 */    0x32, 0x01, 0x33, 0x99, 0x00, 0x01, 0x00, 0x40, 
                               /* 0028 */    0x60, 0x01, 0x45, 0x81, 0x00, 0x01, 0x00, 0x40
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

 

System Profiler:

picture1vx.png

 

System Prefs:

screenshot20090911at412.png

 

ioreg dump:

http://www.mediafire.com/?sharekey=d219da5...04e75f6e8ebb871

 

IORegExpl Screenshot:

screenshot20090911at418.png

 

 

 

All sound related kexts were removed out of /E/E, /S/L/E untouched, cache cleaned...

 

The same thing, did not work for me =(

When using 10.1 netkas boot always get KP...

Link to comment
Share on other sites

The same thing, did not work for me =(

When using 10.1 netkas boot always get KP...

 

You don't seems to have the same motherboard as me (maybe a GA-P35-DS3?).

You have 0x1458A002 and I have 0x1458A022 and your pinconfig seems to be

different.

 

Until you find a solution on some forums I recommend you to check my

updated post and take a USB Audio as workaround.

 

For the KP what was the error at the beginning of the trace ?

Did you try to

  • In the BIOS change your hard disk controler to use AHCI instead of IDE
  • In the BIOS depend of your motherboard change from Azalia to High Def Audio (HDEF)
  • -Or- doing the opposite
  • Reboot twice to check if the KP is the same

If you have a KP about HFS fsck something try to

  • Boot using "-x32 -s" on Chameleon
  • Do FIRST "mount -uw /"
  • Then "fsck -fy"
  • kextcache -v 1 -t -l -m /System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext /System/Library/Extensions
  • shutdown -r now -or- reboot
  • If doesn't work try booting "-x64 -s" and doing the same

Link to comment
Share on other sites

  • 3 weeks later...

GA-X48T-DQ6

 

Good work! Thank you!

 

This is working for GA-X48T-DQ6 motherboard too. The only difference between GA-X48T-DQ6 and GA-X48-DQ6 is that first of them is supporting DDR3 memory.

 

If you are about choosing new mobo for your Hackitosh, then I reccomend GA-X48T-DQ6. GA-X48T-DQ6 is working with Chameleon 2 RC3, DSDT patch and fakesmc really well.

 

Anyway, this solution isnt 100% correct as X48T-DQ6 or X48T-DQ6 having those audio channels:

 

* Line Out Green

* Line Out Orange

* Line Out Black

* Line Out Green

* Line Out Digital

* Line Out on Front Panel (Headphones)

 

* Line In Blue

* Line In Digital

* Mic In Red

* Mic In on Front Panel

 

If someone have all of those working, please let me know!

 

Success: Gigabyte X48T-DQ6 & Intel Q9550 + Snow Leopard

Link to comment
Share on other sites

  • 3 weeks later...

Wish i found this guide sooner could of probably prevented the situation im in now :P

 

For simplicitys sake i used your Extras folder and dsdt.aml both of which are allowing me to boot and ethernet works etc which is great! However when i check the audio i get nothing (see below) and the config shown in the system profiler is different from your one :P

 

I tried various ways of getting this audio to work before i came across this guide and i think i reverted all the modifications back to the originals (only one im not sure about is the /S/L/E/AppleHDA.kext which is 10MB in size 9,629,095 bytes)

 

I hope you's see something simple that i may of missed cause i dread to think where the issue may be if it is a /S/L/E/ kext issue

 

EDIT: Also i just noticed straight after my post that i am using Chameleon RC3 - r658 i think, will that cause this problem? If so is it easy to downgrade it without effecting anything else?

 

UPDATE: After a nights sleep i realised it was just the pin config that was causing the wrong output to system profiler, now corrected, however i still receive no sound :-(

 

Screenshot1.png

Screenshot2.png

Link to comment
Share on other sites

  • 1 month later...
  • 1 year later...

thanks Lordbaco,

 

but this guide doesn't function on my GA-P67A-UD4-B3 in 10.6.8.

 

For

 

Codec: Realtek ALC889

Address: 2

AFG Function Id: 0x1 (unsol 1)

Vendor Id: 0x10ec0889

Subsystem Id: 0x1458a022

Revision Id: 0x100004

 

my CodecVerbs are:

 

<01171C40 01171D01 01171E43 01171F99 01271CF0 01271D11 01271E11 01271F41 01471C10 01471D44 01471E01 01471F01 01571C12 01571D14 01571E01 01571F01 01671C11 01671D64 01671E01 01671F01 01771C14 01771D24 01771E01 01771F01 01871C50 01871D9C 01871EA1 01871F01 01971C60 01971D9C 01971EA1 01971F02 01A71C5F 01A71D34 01A71E81 01A71F01 01B71C20 01B71D4C 01B71E21 01B71F02 01C71CF0 01C71D11 01C71E11 01C71F41 01D71C01 01D71DE6 01D71E05 01D71F40 01E71C30 01E71D61 01E71E4B 01E71F01 01F71CF0 01F71D11 01F71E11 01F71F41>

 

so I figured out the pin-config should look like that:

 

/* 0000 */ 0x40, 0x01, 0x43, 0x99, 0xF0, 0x11, 0x11, 0x41,

/* 0008 */ 0x10, 0x44, 0x01, 0x01, 0x12, 0x14, 0x01, 0x01,

/* 0010 */ 0x11, 0x64, 0x01, 0x01, 0x14, 0x24, 0x01, 0x01,

/* 0018 */ 0x50, 0x9C, 0xA1, 0x01, 0x60, 0x9C, 0xA1, 0x02,

/* 0020 */ 0x5F, 0x34, 0x81, 0x01, 0x20, 0x4C, 0x21, 0x02,

/* 0028 */ 0xF0, 0x11, 0x11, 0x41, 0x01, 0xE6, 0x05, 0x40,

/* 0030 */ 0x30, 0x61, 0x4B, 0x01, 0xF0, 0x11, 0x11, 0x41

 

I modified the config values in LegacyHDA.kext but still no sound (greyed out).

 

Attached you find my codec dump from Ubuntu 11.04.

 

regards

 

codec_dump.txt

Link to comment
Share on other sites

  • 1 month later...

That we use the Motherboard, the last update MAC OS X 10.6.8 the sound goes out.... i´m trying to install the kexts that i had used before, but i can not find the way....

 

¿Do you know if i can find new kexts?¿? (Audio issues (ALC889A))

Link to comment
Share on other sites

  • 2 months later...

in this case i have a problem, because y can´t update by appstore... ¿Do you know how to change the SO if i want to update?¿?¿?

 

in this case i have a problem, because y can´t update by appstore... ¿Do you know how to change the SO if i want to update?¿?¿?

Link to comment
Share on other sites

 Share

×
×
  • Create New...