next up previous contents index
Siguiente: Ejecutar XFree86. Subir: El Sistema X-Window Anterior: Configurar XFree86   Índice General   Índice de Materias


Rellenando la información de la tarjeta de vídeo

Ahora ya tiene el fichero XF86Config listo a excepción de la información completa de la tarjeta de vídeo. Se utilizará el servidor X para comprobar estos datos y añadirlos a XF86Config.

En vez de comprobar esta información con el servidor X, los valores de XF86Config para muchas tarjetas están listados en los ficheros modeDB.txt, AccelCards y Devices. Estos ficheros se encuentran todos en /usr/X11R6/lib/X11/doc. Además hay varios ficheros README para ciertos chips. Debería mirar estos ficheros para información de su tarjeta de vídeo y utilizarla (clock values, tipo de chip y otras opciones) en el fichero XF86Config. Si falta algún dato, puede comprobarlo.

En la mayoría de estos ejemplos se prueban configuraciones de una tarjeta #9 GXE 64, que utiliza el chip XF86_S3. En primer lugar determine el chip de vídeo de la tarjeta. Ejecutar SuperProbe (en /usr/X11R6/bin) le dirá estos datos, pero debe conocer el nombre del chip tal como es conocido por el servidor X.

Para ello, ejecute la instrucción
\begin{tscreen}
X -showconfig
\end{tscreen}
Esto le dará los nombres de chips conocidos por el servidor X. (La página del manual para cada servidor X los lista también.) Por ejemplo con el servidor acelerado XF86_S3 se obtiene:
\begin{tscreen}\begin{verbatim}XFree86 Version 3.1 / X Window System
(protocol...
...raphics adaptors (Patchlevel 0)
mmio_928, s3_generic\end{verbatim}\end{tscreen}

Los nombres válidos de los chips para este servidor son mmio_928 y s3_generic. La página del manual de XF86_S3 describe estos chips y las tarjetas de vídeo que las usan. En el caso de la tarjeta de vídeo #9 GXE 64, es apropiado mmio_928.

Si no sabe qué chip se está utilizando, el servidor X puede comprobarlo por usted. Para hace esto, ejecute la instrucción
\begin{tscreen}
\verb!X -probeonly > /tmp/x.out 2>&1 !
\end{tscreen}
si utiliza bash como shell. Si utiliza csh, pruebe:
\begin{tscreen}
\verb!X -probeonly &> /tmp/x.out !
\end{tscreen}

Debería ejecutar esta instrucción mientras el sistema no ha sido cargado, es decir, mientras ninguna otra actividad ocurre en el sistema. Esta instrucción también comprueba dot clocks para su tarjeta de vídeo (como se verá más abajo) y la carga del sistema puede sesgar este cálculo.

La salida de arriba, en /tmp/x.out debería contener líneas como:
\begin{tscreen}
\verb!XFree86 Version 3.1 / X Window System !\\
\verb!(protocol...
...chipset: 864 rev. 0 !\\
\verb!(--) S3: chipset driver: mmio_928 !
\end{tscreen}
Aquí se ve que los dos chips válidos para este servidor (en este caso XF86_S3) son mmio_928 y s3_generic. El servidor comprobó y encontró una tarjeta de vídeo que tiene el chip mmio_928.

En la sección Device del fichero XF86Config añada una línea Chipset que tenga el nombre del chip determinado como arriba. Por ejemplo,
\begin{tscreen}\begin{verbatim}Section ''Device''
...

Ahora hay que determinar las frecuencias de funcionamiento del reloj utilizadas por la tarjeta de vídeo. Una frecuencia de funcionamiento del reloj o dot clock, es simplemente una cantidad a la que la tarjeta de vídeo puede enviar pixels al monitor. Como se describió más arriba, cada resolución de monitor tiene un dot clock asociado a ella. Se requiere determinar qué dot clocks se ofrecen con la tarjeta de vídeo.

En primer lugar, debería mirar la documentación arriba mencionada y ver si los dot clocks de la tarjeta están listados allí. Los dot clocks son generalmente una lista de 8 o 16 valores, todos en MHz. Por ejemplo, si mira en modeDB.txt verá una entrada para la tarjeta Cardinal ET4000 que tiene este aspecto:
\begin{tscreen}\begin{verbatim}...
Los dot clocks para esta tarjeta son 25, 28, 38, 36, 40, 45, 32 y 0 MHz.

En la sección Devices del arvhivo XF86Config añada una línea Clocks que contenga la lista de los dot clocks para su tarjeta. Por ejemplo, para los dot clocks de arriba, añada la línea
\begin{tscreen}\begin{verbatim}Clocks 25 28 38 36 40 45 32 0\end{verbatim}\end{tscreen}
a la sección Devices del fichero, después de Chipset.

El orden de los dot clocks es importante. No reordene la lista o elimine duplicados.

Si no puede encontrar los dot clocks asociados con su tarjeta, el servidor X puede comprobarlos también. Utilice X -probeonly como se describió arriba. La salida debería contener líneas similares a la siguiente:
\begin{tscreen}\begin{verbatim}(--) S3: clocks: 25.18 28.32 38.02 36.15 40.33 45.32 32.00 00.00\end{verbatim}\end{tscreen}
Se puede añadir una línea Clocks que contenga todos estos valores. Puede utilizar más de una línea Clocks en XF86Config si todos los valores (a veces hay más de 8 valores de clock) no caben en una única línea. De nuevo asegúrese de poner la lista de clocks en el orden en que aparecen.

Asegúrese de que no hay líneas de Clocks (o de que están comentadas) en la sección Devices del fichero cuando utilice X -probeonly. Si hay una línea Clocks presente, el servidor no comprueba los clocks, emplea los valores de XF86Config.

Algunas tarjetas de vídeo utilizan un chip de reloj programable. Mire la página del manual de su servidor X o el fichero README de XFree86 que describe su tarjeta de vídeo. Esencialmente, el chip permite que el servidor X le diga a la tarjeta los dot clocks a usar. Para tarjetas de vídeo que tienen clock chips, puede ser que no encuentre una lista de los dot clocks para la tarjeta en ninguno de los ficheros arriba mencionados o que la lista de dot clocks impresa cuando utilice X -probeonly contenga uno o dos valores discretos de clock, siendo los demás duplicados o cero. O también puede que el servidor X sólo facilite un aviso explícito de que la tarjeta de vídeo tiene un chip de reloj programable como:
\begin{tscreen}\begin{verbatim}(--) SVGA: cldg5434: Specifying a Clocks line makes no sense for this driver\end{verbatim}\end{tscreen}
Este ejemplo está sacado de un servidor XF86_SVGA con tarjeta Cirrus Logic PCI.

Para tarjetas que emplean chips de reloj programables, utilice una línea ClockChip en vez de una línea de Clocks en el fichero XF86Config. ClockChip es el nombre del chip de reloj tal como es usado por la tarjeta de vídeo. Las páginas del manual de cada servidor los describen. Por ejemplo en el fichero README.S3, se puede observar que varias tarjetas de vídeo S3-864 utilican un chip de reloj ``ICD2061A'' y que se debe utilizar la línea
\begin{tscreen}
\verb! ClockChip ''icd2061a'' !
\end{tscreen}
en vez de Clocks en el fichero XF86Config. Esta línea como la de Clocks, va dentro de la sección Devices, tras Chipset.

De modo similar, algunas tarjetas de vídeo exigen que especifique el tipo de chip RAMDAC en el fichero XF86Config. Esto puede hacerse con una línea Ramdac. La página del manual XF86_Accel describe esta opción. A menudo el servidor X será capaz de calcular el RAMDAC correctamente.

Algunas tarjetas de vídeo exigen que especifique varias opciones en la sección Devices de XF86Config. Estas opciones se describen en la página del manual del servidor, así como en varios ficheros como README.cirrus y README.S3. Estas opciones se habilitan con una línea Option. Por ejemplo la tarjeta #9 GXE 64 necesita dos opciones:
\begin{tscreen}
\verb! Option ''number_nine'' !\\
\verb! Option ''dac_8_bit'' !
\end{tscreen}
Un servidor X puede funcionar sin las líneas Option, pero son necesarias para lograr el mejor rendimiento de la tarjeta. Hay también muchas otras opciones que listar aquí, son diferentes para cada tarjeta. Si debe usar una, las páginas del manual del servidor X y varios ficheros en /usr/X11R6/lib/X11/doc le dirán cuáles son.

Cuando termine, debería tener una sección Devices que se parezca a esta:
\begin{tscreen}
\verb!Section ''Device'' !\\
\verb!  ...
Hay otras opciones que puede incluir en la entrada Devices. Las páginas del manual del servidor X ofrecen los detalles exactos.


next up previous contents index
Siguiente: Ejecutar XFree86. Subir: El Sistema X-Window Anterior: Configurar XFree86   Índice General   Índice de Materias
Ismael Olea 2002-09-26