Jump to content

Inyectar audio y arreglar medidor de bateria en Laptop HP


sergi4d
 Share

8 posts in this topic

Recommended Posts

Hola a todos, lo primero es que gracias a todo el que me pueda prestar ayuda en este tema y lo segundo es que me estoy peleando con el dsdt de mi portatil, el portatil es un hp 250 g2 con las siguientes caracteristicas: 

 

-Intel core i5-3230M@2.60GHz

-Intel hd 4000 (1366x768)

-Chipset HM76

-Teclado ps2 y touchpad synaptic

-Realtek ALC282

 

he estado intentando hacer que funcione el audio y la bateria, el audio me he percatado de que lo siguiente: 

        Device (HDEF)
        {
            Name (_ADR, 0x001B0000)
            OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)
            Field (HDAR, WordAcc, NoLock, Preserve)
            {
                DCKA,   1, 
                        Offset (0x01), 
                DCKM,   1, 
                    ,   6, 
                DCKS,   1, 
                        Offset (0x08), 
                    ,   15, 
                PMES,   1
            }
            Method (_PRW, 0, NotSerialized)
            {
                If (WKMD)
                {
                    Return (Package (0x02)
                    {
                        0x0D, 
                        0x04
                    })
                }
                Else
                {
                    Return (Package (0x02)
                    {
                        0x0D, 
                        Zero
                    })
                }
            }
        }

y es que no encuentro ningun metodo denominado (_DSM) para añadir el layout_id del alc282 y cuando lo añado de forma manual, al compilarlo me da error de compilacion en la linea que contiene DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)).

 

Y respecto a lo que es la parte de la bateria, he mirado mucha informacion que esta puesta aqui (metodo B1B4) pero sinceramente, creo que necesitaria algunos ejemplos de como hacerlo para poder llevarlo a cabo.

 

Creo que no se me escapa nada mas, cualquier ayuda sera muy agradecida, a ver si soy capaz de echar a andar este portatil con OS x.

Saludos!!

DSDT.zip

Link to comment
Share on other sites

Estas usando Clover, cierto? Si es así puedes inyectar el layout de audio especificando en el config.plist: Devices/Audio/Inject=(numero_de_layout). Y si activas el Fix DSDT FixHDA_8000, se añade también la clave hda-gfx para habilitar el audio HDMI (puede requerir otros fixes DSDT para que funcione, como NewWay_80000000AddHDMI_8000000).

 

No puedo ayudarte con el tema de la batería porque lo desconozco por completo, espero que alguien mas pueda guiarte para resolverlo.

 

 

EDIT: y el error de compilación que mencionas es debido a que no has añadido el método DTGP al DSDT:

    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)
    }
  • Like 1
Link to comment
Share on other sites

Hola compañeros,

 

He editado el titulo por algo mas acorde con las Reglas del Foro (en el link de mi firma). Lo cual permite organizar mejor la información.

 

Por lo tanto, la idea del foro es mantenerse dentro del tema especifico del tópico (DSDT + Audio + Bateria), teniendo como referencia principal la sección en que se encuentra (DSDT y SSDTs), sin mezclarse con otras secciones, como por ejemplo Clover.

 

Gracias por su comprensión, y Saludos.

 

P.D. Sobre el medidor de la batería solo puedo aclararte dudas, ya que hay varios tópicos en esta misma sección sobre el tema.

  • Like 1
Link to comment
Share on other sites

De acuerdo Juanerson, comprendo lo que dices, para la proxima estare mas atento :) 

Sobre el tema de la bateria, lo que hare sera buscar un dsdt con el antes y el despues de aplicar el metodo, dado que he leido los topicos que tu comentas, pero no los entiendo del todo bien.

 

Y Maniac10, voy a probar a añadir el metodo DTGP, añadir la parte del (_DSM) en la zona correspondiente al audio, le aplico el layout_id y comento a ver que tal, si por lo menos consigo tener audio.

 

El camino que estoy intentando seguir es el de tener un appleHDA parcheado y inyectar el audio con el DSDT que estoy editando, si alguno tiene algun detalle mas que añadir, no dudeis en decirmelo.

Saludos! :) 

  • Like 1
Link to comment
Share on other sites

Rehabman tiene un repositorio para laptops con fixes de batería para muchos modelos. No esta el tuyo exacto pero debería ser el mismo que alguna otra HP supongo. 

 

Para usar el repositorio necesitas el editor MaciASL, vas a las preferencias / sources y añade: http://raw.github.com/RehabMan/Laptop-DSDT-Patch/master

 

Luego puedes ver y aplicar los parches presionando el botón "Patch".

  • Like 1
Link to comment
Share on other sites

Muchas gracias Maniac, puedo pedir un favor a alguno de vosotros o a cualquiera que lea el post y pueda ayudarme? 

He editado el DSDT, por ahora sin poner nada de codigo de la bateria, solo añadiendo el audio y reparando los errores que trae al extraer el dsdt y lo maximo que consigo es que el sistema no arranque :S

 

Al extraer el dsdt, lo que cambie fue el error de (\TNOT) que es sustituirlo por (\NOT) y luego otro que es parseop (sleep) que es recolocar un par de cosas.

El tema del audio, he utilizado un archivo que vi en esta pagina, donde tambien hay un rtf en el que te indica el codigo que hay que insertar en el dsdt.

 

El caso, que he editado el dsdt, lo he compilado y guardado como DSDT.aml y con el clover configurator, he abierto la particion EFI y he pegado el dsdt en /EFI/CLOVER/OEM/218F/ACPI/patched ( lo de 218F lo he creado por que es el nombre que obtengo de la placa en el boot.log). 

 

Despues he añadido dentro del config.plist esto: 

<key>DSDT</key>
<dict>
    <key>Name</key>
    <string>DSDT.aml</string>
</dict>

y al final he instalado con kext helper el archivo appleHDA.kext.

 

Espero que no haya divagado demasiado.

Muchas gracias por vuestra ayuda!!

DSDT.zip

AppleHDA-269.25-ALC282.zip

Link to comment
Share on other sites

Si alguna vez puedes arrancar con el DSDT (aunque sea con -x) sube un boot log (en un Terminal: bdmesg > Desktop/bootlog.txt) o preboot log de Clover (presiona F2 en el GUI de Clover, el archivo se crea en /EFI/CLOVER/misc). Y describe cual es el problema de arranque que enfrentas, hasta donde llega, si ves errores; sería mejor aún si pudieses hacer un video del arranque.

 

Aquí te dejo el DSDT con un par de correcciones de advertencias y también solucionado el error PARSEOP_STORE, pero este por algún motivo vuelve cada vez que abres el archivo así que allí quedará :S (será un bug del compilador?). También cambié el layout de audio al 3, que es el que se describe en la documentación del AppleHDA que has subido.

 

  • Like 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...