Jump to content

GUIA: instalación de ATI Radeon 6850 en Lion


92 posts in this topic

Recommended Posts

El kext A ATI6000Controller.kext_10.7.3_A no arranca con los dsdt tuyo, de fabio y de juanerson (con GE=No y GE=Yes) y solamente funciona con el que propone Alexander Martinez (con GE=No sin aceleración gráfica pero sólo 2 puertos funcionantes, con GE=Yes no arranca).

 

El kext B ATI6000Controller.kext_10.7.3_B en cambio funciona mucho mejor:

el sistema arranca con cualquiera de los dsdt

con dsdt de Fabio y Hard223 arranca bien con GE=No y GE=Yes, de las 2 formas hay aceleración gráfica y ¡3 puertos funcionantes! (los 2 DVI y DP), sólo falla HDMI que sigue apagando la pantalla como en el modo sleep

el dsdt de Alexander Martines precisa GE=Yes para tener aceleración gráfica, también funcionan DVI1, DVI2 y DP.

Resumen: se ha ampliado a 3 el nº de puertos, DVI2 (el que es digital y DualLink) funciona bien y es detectado en caliente pero HDMI no funciona.

 

Recordatorio de los diferentes dsdt de los que hablo:


Alexander Martinez

/*Alexander Martinez*/
           Device (PEGP)
           {
               Name (_ADR, 0x00030000)
               Device (GFX0)
               {
                   Name (_ADR, Zero)
                   Name (_SUN, One)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x06)
                           {
                               "@0,connector-type",
                               Buffer (0x04)
                               {
                                   0x00, 0x08, 0x00, 0x00
                               },
                               "@1,connector-type",
                               Buffer (0x04)
                               {
                                   0x00, 0x08, 0x00, 0x00
                               },
                               "hda-gfx",
                               Buffer (0x0A)
                               {
                                   "onboard-1"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }
               Device (HDAU)
               {
                   Name (_ADR, One)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x02)
                           {
                               "hda-gfx",
                               Buffer (0x0A)
                               {
                                   "onboard-1"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }
           }

 


Fabio 2203

/* Fabio2203*/
Device (PCI0)
{
   Name (_HID, EisaId ("PNP0A03"))
   Name (_UID, Zero)
   Name (_ADR, Zero)
   Name (_BBN, Zero)
   Method (_S3D, 0, NotSerialized)
   {
       If (LEqual (OSFL, 0x02))
       {
           Return (0x02)
       }
       Else
       {
           Return (0x03)
       }
   }

   Device (PEGP)
   {
       Name (_ADR, 0x00030000)
       Device (GFX0)
       {
           Name (_ADR, Zero)
           Method (_DSM, 4, NotSerialized)
           {
               Store (Package (0x0C)
                   {
                       "@0,name",
                       Buffer (0x0E)
                       {
                           "ATY,Duckweed"
                       },

                       "@1,name",
                       Buffer (0x0E)
                       {
                           "ATY,Duckweed"
                       },

                       "@2,name",
                       Buffer (0x0E)
                       {
                           "ATY,Duckweed"
                       },

                       "@3,name",
                       Buffer (0x0E)
                       {
                           "ATY,Duckweed"
                       },

                       "model",
                       Buffer (0x13)
                       {
                           "ATI Radeon HD 6850"
                       },

                       "hda-gfx",
                       Buffer (0x0A)
                       {
                           "onboard-1"
                       }
                   }, Local0)
               DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
               Return (Local0)
           }
       }

       Device (HDAU)
       {
           Name (_ADR, One)
           Method (_DSM, 4, NotSerialized)
           {
               Store (Package (0x02)
                   {
                       "hda-gfx",
                       Buffer (0x0A)
                       {
                           "onboard-1"
                       }
                   }, Local0)
               DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
               Return (Local0)
           }
       }
   }

 


Hard223

/*hard223 nº2*/
Device (PCI0)
{
 Name (_HID, EisaId ("PNP0A03"))
 Name (_UID, Zero)
 Name (_ADR, Zero)
 Name (_BBN, Zero)
 Method (_S3D, 0, NotSerialized)
{
  If (LEqual (OSFL, 0x02))
  {
      Return (0x02)
  }
  Else
  {
      Return (0x03)
  }
 }

 Device (PEGP)
 {
  Name (_ADR, 0x00030000)
  Device (GFX0)
  {
    Name (_ADR, Zero)
    Method (_DSM, 4, NotSerialized)
    {
     Store (Package (0x62)
       {
       "@0,AAPL,boot-display",
       Buffer (0x04)
       {
         0x01, 0x00, 0x00, 0x00 /* Tarjeta principal */
       },

       "@0,compatible",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "@0,connector-type",
       Buffer (0x04)
       {
         0x00, 0x04, 0x00, 0x00 /* Conector #0 tipo DisplayPort */
       },

       "@0,device_type",
       Buffer (0x08)
       {
         "display"
       },

       "@0,display-type",
       Buffer (0x05)
       {
         "NONE"
       },

       "@0,name",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "@0,VRAM,memsize",
       Buffer (0x08)
       {
         /* 0000 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40 /* Memoria: 0x40 = 1GB (0x20 = 512MB, 0x10 = 256MB) */
       },

       "@1,compatible",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "@1,connector-type",
       Buffer (0x04)
       {
         0x00, 0x80, 0x00, 0x00 /* Conector #1 tipo HDMI */
       },

       "@1,device_type",
       Buffer (0x08)
       {
         "display"
       },

       "@1,display-type",
       Buffer (0x05)
       {
         "NONE"
       },

       "@1,name",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "@2,compatible",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "@2,connector-type",
       Buffer (0x04)
       {
         0x00, 0x02, 0x00, 0x00 /* Conector #2 tipo DVI SingleLink */
       },

       "@2,device_type",
       Buffer (0x08)
       {
         "display"
       },

       "@2,display-type",
       Buffer (0x05)
       {
         "NONE"
       },

       "@2,name",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "@3,compatible",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "@3,connector-type",
       Buffer (0x04)
       {
         0x04, 0x00, 0x00, 0x00 /* Conector #3 tipo DVI DualLink */
       },

       "@3,device_type",
       Buffer (0x08)
       {
         "display"
       },

       "@3,display-type",
       Buffer (0x05)
       {
         "NONE"
       },

       "@3,name",
       Buffer (0x0D)
       {
         "ATY,Duckweed" /* FrameBuffer */
       },

       "AAPL,EMC-Display-List",
       Buffer (0x40)
       {
         /* 0000 */      0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0008 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0010 */      0x06, 0x10, 0x00, 0x00, 0x1B, 0x92, 0x00, 0x00,
         /* 0018 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0020 */      0x06, 0x10, 0x00, 0x00, 0x1C, 0x92, 0x00, 0x00,
         /* 0028 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0030 */      0x06, 0x10, 0x00, 0x00, 0x21, 0x92, 0x00, 0x00,
         /* 0038 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
       },

       "AAPL,aux-power-connected",
       Buffer (0x04)
       {
         0x01, 0x00, 0x00, 0x00 /* Tiene alimentación auxiliar */
       },

       "AAPL,backlight-control",
       Buffer (0x04)
       {
         0x00, 0x00, 0x00, 0x00
       },

       "AAPL,slot-name",
       Buffer (0x09)
       {
         "PCIe x16" /* Tipo de conector PCI Express */
       },

       "AAPL00,blackscreen-preferences",
       Buffer (0x04)
       {
         0x00, 0x00, 0x00, 0x08
       },

       "AAPL01,Coherency",
       Buffer (0x04)
       {
         0x02, 0x00, 0x00, 0x00
       },

       "AAPL01,blackscreen-preferences",
       Buffer (0x04)
       {
         0x00, 0x00, 0x00, 0x08
       },

       "ATY,Card#",
       Buffer (0x0F)
       {
         "113-E14802-X06"
       },

       "ATY,Copyright",
       Buffer (0x33)
       {
         "Copyright AMD Inc. All Rights Reserved. 2005-2008"
       },

       "ATY,EFICompileDate",
       Buffer (0x0C)
       {
         "Apr 14 2012"
       },

       "ATY,EFIDispConfig",
       Buffer (0x08)
       {
         /* 0000 */      0x0D, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
       },

       "ATY,EFIDriverType",
       Buffer (One)
       {
         0x02
       },

       "ATY,EFIEnabledMode",
       Buffer (One)
       {
         0x02
       },

       "ATY,EFIHWInitStatus",
       Buffer (0x08)
       {
         /* 0000 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
       },

       "ATY,EFIOrientation",
       Buffer (0x02)
       {
         0x00, 0x01
       },

       "ATY,EFIVersion",
       Buffer (0x0B)
       {
         "01.00.3180"
       },

       "ATY,EFIVersionB",
       Buffer (0x0F)
       {
         "113-B77101-012"
       },

       "ATY,EFIVersionE",
       Buffer (0x0F)
       {
         "113-B7710A-318"
       },

       "ATY,MemRevisionID",
       Buffer (0x02)
       {
         0x03, 0x00
       },

       "ATY,MemVendorID",
       Buffer (0x02)
       {
         0x02, 0x00
       },

       "ATY,PlatformInfo",
       Buffer (0x80)
       {
         /* 0000 */      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0008 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0010 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0018 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0020 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0028 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0030 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0038 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0040 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0048 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0050 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0058 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0060 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0068 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0070 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
         /* 0078 */      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
       },

       "ATY,Rom#",
       Buffer (0x0F)
       {
         "113-B7710C-176"
       },

       "ATY,VendorID",
       Buffer (0x02)
       {
         0x02, 0x10 /* VendorID de AMD */
       },

       "device_type",
       Buffer (0x13)
       {
         "ATY,DuckweedParent"
       },

       "model",
       Buffer (0x16)
       {
         "ASUS EAH6850 DirectCU" /* Marca y modelo de tarjeta que se mostrará en Perfil de sistema*/
       },

       "name",
       Buffer (0x13)
       {
         "ATY,DuckweedParent"
       },

       "hda-gfx",
       Buffer (0x0A)
       {
         "onboard-1" /* Audio HDMI */
       }
      }, Local0)
     DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
     Return (Local0)
    }
  }

  Device (HDAU)
  {
   Name (_ADR, One)
   Method (_DSM, 4, NotSerialized)
 {
     Store (Package (0x02)
      {
        "hda-gfx",
        Buffer (0x0A)
        {
            "onboard-1"
        }
      }, Local0)
     DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
     Return (Local0)
   }
  }
 }

 


Juanerson

/*juanerson para surfcaster*/
Device (PCI0)
{
   Name (_HID, EisaId ("PNP0A03"))
   Name (_UID, Zero)
   Name (_ADR, Zero)
   Name (_BBN, Zero)
   Method (_S3D, 0, NotSerialized)
   {
       If (LEqual (OSFL, 0x02))
       {
           Return (0x02)
       }
       Else
       {
           Return (0x03)
       }
   }

   Device (PEGP)
   {
       Name (_ADR, 0x00030000)
       Device (GFX0)
       {
           Name (_ADR, Zero)
           Method (_DSM, 4, NotSerialized)
           {
               Store (Package (0x0A)
                   {
                       "AAPL,aux-power-connected",
                       Buffer (0x04)
                       {
                           0x01, 0x00, 0x00, 0x00
                       },

                       "built-in",
                       Buffer (One)
                       {
                           0x00
                       },

                       "graphic-options",
                       Buffer (0x04)
                       {
                           0x04, 0x00, 0x00, 0x00
                       },

                       "hda-gfx",
                       Buffer (0x0A)
                       {
                           "onboard-1"
                       },

                       "model",
                       Buffer (0x13)
                       {
                           "AMD Radeon HD 6850"
                       }
                   }, Local0)
               DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
               Return (Local0)
           }
       }

       Device (HDAU)
       {
           Name (_ADR, One)
           Method (_DSM, 4, NotSerialized)
           {
               Store (Package (0x08)
                   {
                       "built-in",
                       Buffer (One)
                       {
                           0x00
                       },

                       "hda-gfx",
                       Buffer (0x0A)
                       {
                           "onboard-1"
                       },

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

 

Link to comment
Share on other sites

Hola, se que no estoy en el post adecuado, pero viendo el nivel de la gente que postea aquí me gustaría saber si algúno de vosotros puede ayudarme.

Mi problema es que no consigo activar el qe/ci de mi tarjeta grafica (una ati 6370M, o lo que es lo mismo una ati 5470m rebranded) ya he probado todas las soluciones habidas y por haber tanto en 10.7.3 como en 10.6.7(he usado activadores, he parcheado el dsdt, con el framebufer correcto, injectando diferentes device-id, etc. He probado diferentes botloaders, incluido el chimera, 1.7 y 1.9.1. He modificado los kexts correspondientes añadiendo la id-device de mi tarjeta, he modificado El EDID de mi monitor, ...) En fin, creo que lo he probado todo, pero no hay manera.

Actualmente me detecta correctamente la tarjeta, tengo resolución de 1366x788 (la máxima soportada por mi lcd, sobreescribieno EDID) me carga todos los kexts necesarios, pero en el ioreg el AtiRadeonx3000.kext noaparece.

Alguien puede ayudarme?

Link to comment
Share on other sites

Hola, se que no estoy en el post adecuado, pero viendo el nivel de la gente que postea aquí me gustaría saber si algúno de vosotros puede ayudarme.

Mi problema es que no consigo activar el qe/ci de mi tarjeta grafica (una ati 6370M, o lo que es lo mismo una ati 5470m rebranded) ya he probado todas las soluciones habidas y por haber tanto en 10.7.3 como en 10.6.7(he usado activadores, he parcheado el dsdt, con el framebufer correcto, injectando diferentes device-id, etc. He probado diferentes botloaders, incluido el chimera, 1.7 y 1.9.1. He modificado los kexts correspondientes añadiendo la id-device de mi tarjeta, he modificado El EDID de mi monitor, ...) En fin, creo que lo he probado todo, pero no hay manera.

Actualmente me detecta correctamente la tarjeta, tengo resolución de 1366x788 (la máxima soportada por mi lcd, sobreescribieno EDID) me carga todos los kexts necesarios, pero en el ioreg el AtiRadeonx3000.kext noaparece.

Alguien puede ayudarme?

 

LesGaR, me podrías decir que GPU tiene tu gráfica. Puede ser Cedar?

 

Según la wiki, debería tener un Robson XT (cedar), echa un ojo a la bios con Radeon Bios Editor y ATIWinFlash y dime que GPU te lee..., o mejor aún, pásame la ROM de la bios de tu 6370M.

 

De ser así, el kext que debería cargar es el ATI5000Controller, y por tanto lo primero que deberías hacer es cambiar el DeviceID por el 68E0 o el 68E1 (5470M y 5430M respectivamente). Para ello usa el propio RBE (el VendorID no lo toques).

 

Por otro lado debes elegir un FrameBuffer a inyectar en tu DSDT de los siguientes:

 

Alouatta LVDS, DPx3

Baboon DVIDL , HDMI, VGA

Colobus LVDS, DP

Douc LVDS, D

Eulemur DVIDL, HDMI, VGA

Galago LVDS, DP

Hoolock DP, DP, DVIDL

Langur DP, DP, DVIDL

Mangabay LVDS, DP

Nomascus LVDS, LVDS, DP, DP

Orangutan LVDS, DP

Uakari DP, DVIDL, DVISL, HDMI

Vervet DP, DVIDL, DVISL, HDMI

 

Te pongo el FrameBuffer y los puertos que soporta, busca el más adecuado a los puertos de tu gráfica (de nuevo la ROM de la GPU sería de ayuda).

 

Después habría que parchear el FrameBuffer elegido en el ATI5000Controller para hacerlo compatible con tu tarjeta.

 

Salu2.

 

PD: Quizá sería mejor que abrieras un hilo nuevo con el nombre de tu tarjeta y el modelo de tu Laptop para centrarnos en él...

Link to comment
Share on other sites

Resumen: se ha ampliado a 3 el nº de puertos, DVI2 (el que es digital y DualLink) funciona bien y es detectado en caliente pero HDMI no funciona.

 

 

Hola miliuco,

 

Tras comprobar que te va el B y no el A deduzco que no parece ser el DVI2 el Dual Link sino el DVI1, por tanto la cosa cambia bastante, te paso otro pocos para las pruebas (de ser así mi anterior DSDT era el correcto y no este último que te pasé que lo corregí según las últimas especificaciones que me pasaste que quizás no sean correctas por lo que vemos en las pruebas (quizá el fabricante tenga una errata)...

 

El por qué de probar tantos kexts, es que quiero hacer pruebas de si es importante el orden o no en los conectores...

 

Un saludo y suerte ;P

 

PD: Deberías centrarte en un DSDT para no volverte loco con tanta prueba. El más acertado sería el de Fabio con GE=No que se limita a inyectar el FrameBuffer, luego si todo va OK con algúno de los KEXT y damos con la configuración exacta de los bytes del FrameBuffer, ya podríamos hacer un DSDT acorde con todas las pruebas...

ATI6000Controller.kext_10.7.3_C.zip

ATI6000Controller.kext_10.7.3_D.zip

ATI6000Controller.kext_10.7.3_E.zip

ATI6000Controller.kext_10.7.3_F.zip

  • Like 1
Link to comment
Share on other sites

LesGaR, me podrías decir que GPU tiene tu gráfica. Puede ser Cedar?

 

Según la wiki, debería tener un Robson XT (cedar), echa un ojo a la bios con Radeon Bios Editor y ATIWinFlash y dime que GPU te lee..., o mejor aún, pásame la ROM de la bios de tu 6370M.

 

De ser así, el kext que debería cargar es el ATI5000Controller, y por tanto lo primero que deberías hacer es cambiar el DeviceID por el 68E0 o el 68E1 (5470M y 5430M respectivamente). Para ello usa el propio RBE (el VendorID no lo toques).

 

Por otro lado debes elegir un FrameBuffer a inyectar en tu DSDT de los siguientes:

 

Alouatta LVDS, DPx3

Baboon DVIDL , HDMI, VGA

Colobus LVDS, DP

Douc LVDS, D

Eulemur DVIDL, HDMI, VGA

Galago LVDS, DP

Hoolock DP, DP, DVIDL

Langur DP, DP, DVIDL

Mangabay LVDS, DP

Nomascus LVDS, LVDS, DP, DP

Orangutan LVDS, DP

Uakari DP, DVIDL, DVISL, HDMI

Vervet DP, DVIDL, DVISL, HDMI

 

Te pongo el FrameBuffer y los puertos que soporta, busca el más adecuado a los puertos de tu gráfica (de nuevo la ROM de la GPU sería de ayuda).

 

Después habría que parchear el FrameBuffer elegido en el ATI5000Controller para hacerlo compatible con tu tarjeta.

 

Salu2.

 

PD: Quizá sería mejor que abrieras un hilo nuevo con el nombre de tu tarjeta y el modelo de tu Laptop para centrarnos en él...

Gracias por contestar tan rápido.

El modelo es el Asus k52ju. Lleva un core i3 + ati 6370 Robson XT (cedar).

 

Ya había intentado usar tanto el Radeon Bios Editor como ATIWinFlash (a parte de otros) sin exito, supongo que no los usé bien.

 

Actualmente tengo el Lion 10.7.3 funcionando correctamente (cargando el Framebufer Langur + añadiendo el device id 68E4 al ATI5000Controller y al atiX300 además de sobreescribir el EDID del monitor).

 

Respecto al framebufer, he probado otros y no funcionan (tambien he intentado parchearlos a traves del ati5000controler y inyectarlos en el dsdt, aunque sin exito).

 

Tengo todas las extensiones necesarias cargadas (ati5000Controler, atisuport, atix3000 y AtiFramebufer) pero en ioreg solo salen cargadas ati5000 y atisuport. NO APARECE el atix300. Lo he comparado con otro ioreg (de la tarjeta ati5470m, que es la misma) a el si que le carga la extensión Atix3000.

 

Te adjunto el dump de mi bios ademas del conectorouput.txt (LVDS ,HDMI, VGA) necesario para parchear el framebufer (aunque el langur nativo funciona, mas o menos)

 

Respecto a lo de abrir otro foro, mi intención era abrir un tutorial para instalar Lion en el Asus k52ju (tengo todos los pasos y modificaciones necesarios en el dsdt y kexts necesarios preparados para que funcione al 100% y casi vainilla) pero solo me falta que funcione el qe/ci de la grafica para postearlo todo junto. No quería postearlo hasta que estuviese terminado pq ya postee un tutorial de como intalar lion on mi otro portatil ( el de mi firma) y tuve muchos privados de gente que se quejaba de que no funcionaba todo bien, que si les había hecho perder el tiempo, que si no les contestaba, etc. La verdad no quiero pasar por eso otra vez.

Aunque entiendo que este no es el lugar correcto, tampoco quería ser cansino mandando privados sin ni siquiera conoceros. ¿Que hago abro un post sobre la tarjeta de video exclusivamente o uno relativo al modelo de portatil?

 

Gracias por todo y espero no haberos molestado por postear donde no toca.

ATI6370m.zip

Link to comment
Share on other sites

¿Que hago abro un post sobre la tarjeta de video exclusivamente o uno relativo al modelo de portatil?

 

Yo haría un nuevo hilo sobre tu tarjeta y modelo de portatil, sin entrar en otra cosa que no sea la gráfica.

 

Pásame lo que te da esto:

 

ioreg | grep ATY

 

Es curioso que te funcione el panel del portátil con Langur porque ninguno de sus conectores coincide con LVDS y su senseid, el único más o menos compatible sería la salida HDMI. De hecho, ninguna de las Personalities coincide con el senseid de tu LVDS o de tu VGA...

 

Si puedes saca el ioreg y me lo envías, así como los kexts ati5000Controler, atisuport, atix3000 y AtiFramebufer del OSX que usas, y si puedes el DSDT también con el boot.plist q usas en el bootloader (haz un paquete con todo, y me lo envías si quieres por privado).

 

Lo del RBE, intentaste flashear sin éxito? qué error te daba? Te funcionan el HDMI y el VGA? Usas 10.7.3? Solo has añadido el deviceid a los plist de los dos kexts o has hecho algo más? Cómo has hecho la inyección del EDID? DSDT? Parcheando en /System/Library/Displays/Overrides? Ya nos cuentas... Un saludo.

Link to comment
Share on other sites

...Tras comprobar que te va el B y no el A deduzco que no parece ser el DVI2 el Dual Link sino el DVI1, por tanto la cosa cambia bastante, te paso otro pocos para las pruebas (de ser así mi anterior DSDT era el correcto y no este último que te pasé que lo corregí según las últimas especificaciones que me pasaste que quizás no sean correctas por lo que vemos en las pruebas (quizá el fabricante tenga una errata)...

 

PD: Deberías centrarte en un DSDT para no volverte loco con tanta prueba. El más acertado sería el de Fabio con GE=No que se limita a inyectar el FrameBuffer, luego si todo va OK con algúno de los KEXT y damos con la configuración exacta de los bytes del FrameBuffer, ya podríamos hacer un DSDT acorde con todas las pruebas...

 

De acuerdo, pongo el dsdt de Fabio y realizo pruebas con estos 4 kext que has mandado, déjame probar despacio y te hago un resumen, es posible que te haya dicho al revés lo del DualLink aunque lo saqué de las especificaciones.

Y sigo agradeciendo tanta dedicación.

 

Edito: encuentro este diagrama, parece que sí que te dije al revés lo del duallink tal como sospechabas, en este diagrama el que llamo DV1 es DL y el que llamo DVI2 es SingleLink. Sería de esta manera:

  • DisplayPort 1,2
  • HDMI 1,4a
  • DVI SingleLink con salida digital (el que llamo DVI2)
  • DVI DualLink con salida DVI y VGA mediante adpatador (el que llamo DVI1).

post-23030-0-05086500-1335301617_thumb.jpeg

 

Nota: el esquema es de 6870 por lo que tiene 2 DP en vez de 1 como la 6850, no hagas caso de ese detalle.

Link to comment
Share on other sites

Hard223: te respondo rápido, las extensiones C, D, E y F funcionan bien, todas sacan imagen por los 4 puertos (ambos DVI, el DP y el HDMI), todos en caliente (conectando y desconectando con el escritorio en marcha) y yo no sabría decirte si alguno de ellos va mejor que los demás, aparentemente los veo igual. Todos con aceleración gráfica, por supuesto. Con el dsdt de Fabio. ¡Excelente!

 

Como cosa curiosa, al probar los 4 puertos uno tras otro, en Preferencias del Sistema > Pantallas > Color van apareciendo más displays además del que siempre se muestra que consiste en el modelo del monitor, al abrir ese panel de Color la selección parece bailar entre los diferentes Display aunque la pantalla sigue funcionando bien, no veo repercusión aparente de ese efecto, mira el vídeo como ejemplo.

 

display.mov

Link to comment
Share on other sites

Hard223: te respondo rápido, las extensiones C, D, E y F funcionan bien, todas sacan imagen por los 4 puertos (ambos DVI, el DP y el HDMI), todos en caliente (conectando y desconectando con el escritorio en marcha) y yo no sabría decirte si alguno de ellos va mejor que los demás, aparentemente los veo igual. Todos con aceleración gráfica, por supuesto. Con el dsdt de Fabio. ¡Excelente! Como cosa curiosa, al probar los 4 puertos uno tras otro, en Preferencias del Sistema > Pantallas > Color van apareciendo más displays además del que siempre se muestra que consiste en el modelo del monitor, al abrir ese panel de Color la selección parece bailar entre los diferentes Display aunque la pantalla sigue funcionando bien, no veo repercusión aparente de ese efecto, mira el vídeo como ejemplo. display.mov

 

Eureka! Parece que ya vamos viendo Luz...

 

Para investigar un poco más en cuanto al orden de los conectores, así como si el HotPlugID es cierto que se puede poner el que queramos, te he subido dos kexts más "G y H"

 

Haz la prueba con el DSDT de Fabio y este que te posteo:

 

 

Device (PCI0)
{
	Name (_HID, EisaId ("PNP0A03"))
	Name (_UID, Zero)
	Name (_ADR, Zero)
	Name (_BBN, Zero)
	Method (_S3D, 0, NotSerialized)
	{
			If (LEqual (OSFL, 0x02))
			{
					Return (0x02)
			}
			Else
			{
					Return (0x03)
			}
	}
	Device (PEGP)
	{
			Name (_ADR, 0x00030000)
			Device (GFX0)
			{
					Name (_ADR, Zero)
					Method (_DSM, 4, NotSerialized)
					{
							Store (Package (0x42)
								{
									"@0,AAPL,boot-display",
									Buffer (0x04)
									{
										0x01, 0x00, 0x00, 0x00 /* Tarjeta principal */
									},
									"@0,compatible",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"@0,connector-type",
									Buffer (0x04)
									{
										0x00, 0x04, 0x00, 0x00 /* Conector #0 tipo DisplayPort */
									},
									"@0,device_type",
									Buffer (0x08)
									{
										"display"
									},
									"@0,display-type",
									Buffer (0x05)
									{
										"NONE"
									},
									"@0,name",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"@0,VRAM,memsize",
									Buffer (0x08)
									{
										/* 0000 */	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40 /* Memoria: 0x40 = 1GB (0x20 = 512MB, 0x10 = 256MB) */
									},
									"@1,compatible",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"@1,connector-type",
									Buffer (0x04)
									{
										0x00, 0x80, 0x00, 0x00 /* Conector #1 tipo HDMI */
									},
									"@1,device_type",
									Buffer (0x08)
									{
										"display"
									},
									"@1,display-type",
									Buffer (0x05)
									{
										"NONE"
									},
									"@1,name",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"@2,compatible",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"@2,connector-type",
									Buffer (0x04)
									{
										0x04, 0x00, 0x00, 0x00 /* Conector #2 tipo DVI DualLink */
									},
									"@2,device_type",
									Buffer (0x08)
									{
										"display"
									},
									"@2,display-type",
									Buffer (0x05)
									{
										"NONE"
									},
									"@2,name",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"@3,compatible",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"@3,connector-type",
									Buffer (0x04)
									{
										0x00, 0x02, 0x00, 0x00 /* Conector #3 tipo DVI SingleLink */
									},
									"@3,device_type",
									Buffer (0x08)
									{
										"display"
									},
									"@3,display-type",
									Buffer (0x05)
									{
										"NONE"
									},
									"@3,name",
									Buffer (0x0D)
									{
										"ATY,Duckweed" /* FrameBuffer */
									},
									"AAPL,aux-power-connected",
									Buffer (0x04)
									{
										0x01, 0x00, 0x00, 0x00 /* Tiene alimentación auxiliar */
									},
									"AAPL,slot-name",
									Buffer (0x09)
									{
										"PCIe x16" /* Tipo de conector PCI Express */
									},
									"ATY,Card#",
									Buffer (0x0F)
									{
										"113-E14802-X06"
									},
									"ATY,Copyright",
									Buffer (0x33)
									{
										"Copyright AMD Inc. All Rights Reserved. 2005-2008"
									},
									"ATY,Rom#",
									Buffer (0x0F)
									{
										"113-B7710C-176"
									},
									"ATY,VendorID",
									Buffer (0x02)
									{
										0x02, 0x10 /* VendorID de AMD */
									},

	  "ATY,DeviceID",
									Buffer (0x02)
									{
										0x39, 0x67 /* DeviceID de 6850 */
									},

									"device_type",
									Buffer (0x13)
									{
										"ATY,DuckweedParent"
									},
									"model",
									Buffer (0x16)
									{
										"ASUS EAH6850 DirectCU" /* Marca y modelo de tarjeta que se mostrará en Perfil de sistema*/
									},
									"name",
									Buffer (0x13)
									{
										"ATY,DuckweedParent"
									},
									"hda-gfx",
									Buffer (0x0A)
									{
										"onboard-1" /* Audio HDMI */
									}
								}, Local0)
							DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
							Return (Local0)
					}
			}
			Device (HDAU)
			{
					Name (_ADR, One)
					Method (_DSM, 4, NotSerialized)
					{
							Store (Package (0x02)
									{
											"hda-gfx",
											Buffer (0x0A)
											{
													"onboard-1"
											}
									}, Local0)
							DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
							Return (Local0)
					}
			}
	}

 

 

 

De los KEXTS C, D , E, F, los correctos son los E y F (solo cambia el orden de conectores entre ellos). El C y el D tienen mal los conectores y transmiters (por el error de no saber cuál era DL).

 

Si te fallaran estos nuevos G y H, prueba también el F con el nuevo DSDT que te paso en este post.

 

Lo del color de momento no se me ocurre nada, pero si se me ocurre algo te comento... ;)

 

Con esta última prueba, en principio podríamos dar por concluida la edición del FrameBuffer, y si quieres haré un pequeño tuto del cómo y por qué de cada valor. Además servirá de base para el programita que os comenté...

 

Salu2

ATI6000Controller.kext_10.7.3_G.zip

ATI6000Controller.kext_10.7.3_H.zip

  • Like 1
Link to comment
Share on other sites

Ya lo he cogido para probarlo, comentaré.

 

Es cierto que parecen ir mejor los kext E y F, son las otras 2 versiones las que aunque se ve igual de bien la pantalla crean esos distinos displays en el panel de preferencias y hace esas cosa rara el ratón, hoy estoy probando los E y F y no aprecio ese efecto.

 

El tutorial cuando acabes sería una aportación muy importante a la comunidad hackintosh, seguro que a muchos nos interesa enormemente.

Link to comment
Share on other sites

Probados los kext G y H.

 

G va perfecto aparentemente, los 4 puertos detectados en caliente, buena aceleración, no hace cosas raras el panel de preferencias Pantallas... Muy bien, parecido a E y F.

 

H ha sido la sorpresa, tienen salida los 4 puertos y hay aceleración pero aparecen los molestos retardos de ratón que hacen que el sistema no se pueda usar. Estos retardos los tenía también al probar la extensión que se preparó Alexander Martinez para él pero no los he observado con ninguna de las tuyas.

 

El nuevo dsdt que has preparado también va bien, tarjeta bien reconocida con abundante información:

 

post-23030-0-87235800-1335379129_thumb.png

 

Y algo que no se muestra con ninguno de los dsdt probados hasta ahora es que la tarjeta también aparece en la sección de tarjetas PCI, ésto es la primera vez que lo veo, tampoco se ve usando Chameleon sin dsdt:

 

post-23030-0-23201800-1335379139_thumb.png

 

Yo creo que el asunto está bastante maduro, ahora tengo el HDMI conectado (para variar) y va perfecto.

Link to comment
Share on other sites

un buen final a un excelente post, por si os sirve y solo por curiosidad voy a probar con la mia, en unos dias posteare los resultados mas que nada funcionamiento y reconocimiento pero solo los del DVI ya que por "accidente" (niño, consola ,TV y HDMI enchufado una mala combinacion) el puerto HDMI no podre probarlo

Link to comment
Share on other sites

Bueno, pues prueba lo que tengas libre...

 

Coge una de las kext (preferible G o E o F, deja las demás) y puedes también retocar la parte del DSDT que corresponde a la gráfica para no tocar nada más de lo que te hizo Juanerson. Si pruebas DSDT, hazlo con el de Fabio que es muy simple y permite GE=No lo cual es necesario para comprobar de verdad cómo funciona la extensión.

 

No es el final del tema, si Hard233 quiere probar algo más lo haremos y luego hay que ver qué tal queda la aplicación que hará este parcheo hexadecimal del kext sin tanto trabajo y esfuerzo.

Link to comment
Share on other sites

G va perfecto aparentemente, los 4 puertos detectados en caliente, buena aceleración, no hace cosas raras el panel de preferencias Pantallas... Muy bien, parecido a E y F.

 

Yo dejaría G como bueno puesto que tiene el orden de conectores acorde con la propia gráfica.

 

H ha sido la sorpresa, tienen salida los 4 puertos y hay aceleración pero aparecen los molestos retardos de ratón que hacen que el sistema no se pueda usar. Estos retardos los tenía también al probar la extensión que se preparó Alexander Martinez para él pero no los he observado con ninguna de las tuyas.

 

H confirma que no se puede elegir libremente el Byte HotplugID como se ha comentado (de 00 a 05), así que "recomendado" no tocar los bytes según vienen en el FrameBuffer.

 

El nuevo dsdt que has preparado también va bien, tarjeta bien reconocida con abundante información:

 

En principio la base es inyectar todos los conectores en el orden de la BIOS, así como su tipo, y por supuesto lo importante: El FrameBuffer elegido, que será con el que trabajemos en el editor HEX.

 

Y algo que no se muestra con ninguno de los dsdt probados hasta ahora es que la tarjeta también aparece en la sección de tarjetas PCI, ésto es la primera vez que lo veo, tampoco se ve usando Chameleon sin dsdt:

 

Aparece gracias a la inyección del puerto en DSDT.

 

PD: Muy bueno del "customize" en el nombre de la gráfica ;)

 

 

un buen final a un excelente post, por si os sirve y solo por curiosidad voy a probar con la mia, en unos dias posteare los resultados mas que nada funcionamiento y reconocimiento pero solo los del DVI ya que por "accidente" (niño, consola ,TV y HDMI enchufado una mala combinacion) el puerto HDMI no podre probarlo

 

Hola surfcaster, tienes el mismo modelo que miliuco, ASUS tb? Si es así, prueba mi último DSDT adaptado a la dirección de tu placa base + el Kext G (siempre que tengas también 10.7.3), o el DSDT de Fabio. Si optas por usar el DSDT, como bien dice miliuco, desactiva cualquier key referente a gráficos en el Bootloader: NO AtiPorts, NO AtiConfig, y GE=No.

 

 

No es el final del tema, si Hard233 quiere probar algo más lo haremos y luego hay que ver qué tal queda la aplicación que hará este parcheo hexadecimal del kext sin tanto trabajo y esfuerzo.

 

Efectivamente lo siguientes será un Tuto sobre cómo hacerlo utilizando la aplicación que estoy desarrollando, explicando bien el por qué de cada valor. Retomaré el tema para la semana que viene y os voy contando...

 

 

Por cierto LesGaR, has solucionado el problema de tu gráfica en tu portátil ASUS?. Si no es así, puedes enviarme lo que te comenté para probar el programita con tu ATI... :angel_not:

 

Salu2 y buen finde!

Link to comment
Share on other sites

Perfecto con estas últimas explicaciones tuyas, Hard233, a esperar el manual y la aplicación. Excelente trabajo.

 

Surfcaster tiene un modelo como el mío de otra marca, merece la pena probar la extensión G porque es muy posible que los conectores coincidan, si arrancases con buenos gráficos pero con retardos de ratón entonces siginificaría que no coinciden al 100%.

Link to comment
Share on other sites

Hola surfcaster, tienes el mismo modelo que miliuco, ASUS tb? Si es así, prueba mi último DSDT adaptado a la dirección de tu placa base + el Kext G (siempre que tengas también 10.7.3), o el DSDT de Fabio. Si optas por usar el DSDT, como bien dice miliuco, desactiva cualquier key referente a gráficos en el Bootloader: NO AtiPorts, NO AtiConfig, y GE=No.

 

No es la misma, la mía es la Shappire, el modelo "bajo" en mhz, vamos la mas barata que encontré de las 6850, pero le daré un repaso al dsdt y miraremos el kext a ver que tal, solo por curiosidad, yo solo uso el DVI

Link to comment
Share on other sites

U can see my post :thumbsup_anim:

http://www.insanelym...=0#entry1816826

 

I got everything worked perfect.

 

 

Hi shiecldk,

 

Your KEXT mod is write, but you can use the DSDT Fix in my post #4, and you don't need this boot config:

 

<key>GraphicsEnabler</key>
<string>Yes</string>
<key>AtiPorts</key>
<string>4</string>
<key>AtiConfig</key>
<string>Duckweed</string>

 

King regards from Spain! :wink2:

Link to comment
Share on other sites

Hola a todos,

 

He estado muy liado de trabajo estos días y no he podido retomar el tema. Voy a intentar crear un post acerca de cómo he llevado a cabo la edición del FrameBuffer, con bastante información del por qué de las cosas. Por otro lado deciros que sigo desarrollando lo que será la primera beta de la aplicación de edición de FrameBuffers. La idea es leer la bios de la tarjeta, decodificar la información, seleccionar el FrameBuffer más adecuado a la misma de todos los soportados por el Kext de la serie Radeon acorde con la tarjeta que tengamos (según la cantidad y tipo de conectores). Con esos datos la aplicación confecciona los bytes de cada conector, y los muestra en pantalla con descripción detallada de cada grupo de bytes. Como no hay posibilidad de automatizar por completo todo el proceso (no tengo información de para qué sirve cada combinación de ControlFlags por ejemplo, por el momento he puesto un select combo con los valores posibles para dicha sección, de tal forma que si el conector en cuestión sigue sin funcionar, tengamos varias pruebas posibles hasta que funcione.

 

Además me gustaría desarrollar una base de datos con modelos y fabricantes de tarjeta por cada FrameBuffer modificado con éxito para conseguir una edición fácil seleccionando la marca/modelo desde un desplegable. Esto sería como "último paso" opcional para todos aquellos usuarios que quieran colaborar en la creación de dicha base de datos.

 

Por otro lado quedaría la sección de inyección del FrameBuffer. La idea es crear una opción final que especifique las dos formas de inyección: "Configuración de chameleon (AtyPorts, AtiConfig, GE=Yes) y DSDT". En el DSDT quiero crear un copy/paste con el código a inyectar, aunque por supuesto el usuario debe tener los conocimientos mínimos de inyección/edición DSDT.

 

Todo esto me gustaría postearlo en español e inglés, aunque mis conocimientos de la lengua anglosajona nos son para nada avanzados, haré lo que medianamente pueda (si tengo gazapos ya me corregireis)...

 

Eso es todo, buen finde! :wink2:

Link to comment
Share on other sites

Excelente idea. Estoy a la espera de lo que vayas sacando cuando abras el nuevo hilo. Sería fantástico publicarlo también en inglés (ya ves que en el hilo de shiecldk también hay interés). Y pide ayuda con lo que necesites.

Link to comment
Share on other sites

pues si, ha de ser muy epecifico para cada tarjeta, las pruebas que yo hice mejor las olvidamos, un completo fracaso, la grafica de Miliuco y la mía se parecen solo en la denominación, nada podria ser mas diferente, solo consegui escritorios aplanados con resoluciones raras de pantallas superpanoramicas, perdía la aceleracion grafica, etc., (aun a pesar de probar las inyecciones para dsdt) si necesitas hacer cualquier prueba con la mía lo dices, Shappire Radeon HD 6850

Link to comment
Share on other sites

pues si, ha de ser muy epecifico para cada tarjeta, las pruebas que yo hice mejor las olvidamos, un completo fracaso, la grafica de Miliuco y la mía se parecen solo en la denominación, nada podria ser mas diferente, solo consegui escritorios aplanados con resoluciones raras de pantallas superpanoramicas, perdía la aceleracion grafica, etc., (aun a pesar de probar las inyecciones para dsdt) si necesitas hacer cualquier prueba con la mía lo dices, Shappire Radeon HD 6850

 

Hola sufcaster,

 

Puedes enviarme ROM file, DSDT.aml y el Kext a modificar? me viene genial para pulir el programa ;)

 

Salu2

Link to comment
Share on other sites

¿como habeis extraido la rom?

 

Puedes usar AtiWinflash. Yo lo uso junto con Radeon Bios Editor y extraigo la ROM desde éste usando el botón Save. Eso sí, es para Windows, para OSX existe la app radeondump de Dong pero no lo he usado.

 

Si no tienes windows instalado, también puedes extraerla desde un USB de arranque en msdos usando Atiflash. El comando sería:

 

atiflash -s 0 shaphire_6850.rom

 

Donde 0 es el id del conector pci-e dónde está conectada la gráfica. Aquí un tuto.

 

Y por último otra opción más es usar AIDA64 (antiguo Everest).

 

Ya nos cuentas... Salu2.

Link to comment
Share on other sites

 Share

×
×
  • Create New...