View Single Post
 
Old 01-31-2010, 07:37 PM
miliuco miliuco is offline
 
Join Date: Jul 2009
Location: Spain
Posts: 62
AppleHDA por tmongkol en SL 10.6.3

Para aquellos con chip de audio como el mío (ALC889a en placa Gigabyte EP35-DS3r) que hayan probado la versión beta de SL 10.6.3, se hayan quedado sin audio con AppleHDA y no les convenza usar VoodooHDA (que viene de origen con unos volúmenes muy bajos para este chip) he encontrado una posible solución.

Tmongkol tiene un hilo en otro foro titulado "ALC889A, Gigabyte (Intel), and other ALC88#(x)" del que he cogido un LegacyHDA que en conjunción con AppleHDA vanilla y código HDEF en DSDT me ha devuelto el sonido y he podido quitar VoodoHDA.

El método es:

- usar AppleHDA de Apple, el que corresponde a la versión de Snow que estamos usando

- usar LegacyHDA.kext del hilo al que me refiero (los enlaces están en el primer mensaje del hilo justo en la entrada "Series of LegacyHDA.kext for Gigabyte ALC888 and ALC889a 10.5.8 & SL Ready"), yo he probado con el que está en la carpeta "3out2in HDA headphone"

- modificar DSDT con arreglo a ésto:

1. Donde pone
...
Notify (\_SB.PWRB, 0x02)
Notify (\_SB.PCI0.AZAL, 0x02)
...
se cambia por
...
Notify (\_SB.PWRB, 0x02)
Notify (\_SB.PCI0.HDEF, 0x02)
...
(si ya has modificado anteriormente el DSDT es posible que ya lo tengas como HDEF en lugar de AZAL)

1. Buscar el dispositivo "Name (_ADR, 0x001B0000)" que suele corresponder al audio y ponerlo como sigue:

Code:
Device (HDEF)
 {
     Name (_ADR, 0x001B0000)
     Method (_PRW, 0, NotSerialized)
     {
         Return (Package (0x02)
         {
             0x0D, 
             0x05
         })
     }

		Method (_DSM, 4, NotSerialized)
             {
                 Store (Package (0x0A)
                     {

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

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

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

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

                         "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)
             }

 }
Si no has modificado el DSDT antes el dispositivo puede aparecer como AZAL con estas pocas líneas:

Code:
Device (AZAL)
 {
     Name (_ADR, 0x001B0000)
     Method (_PRW, 0, NotSerialized)
     {
         Return (Package (0x02)
         {
             0x0D, 
             0x05
         })
     }
}
Se trata entonces de cambiar AZAL por HDEF y de incluir dentro del dispositivo el método DTGP y los detalles relativos al chip de audio.

10.7.1 / Gigabyte P55-USB3 / i5 750 / 9800gt / http://miliuco.es
Reply With Quote