Guía de instalación y README del Juego de controladores FreeBSD de NVIDIA Última actualización: $Date: 2004/07/23 $ Última versión del controlador: 1.0-6113 Este README proporciona las directrices básicas de instalación y configuración del juego de controladores FreeBSD de NVIDIA en sistemas que ejecutan FreeBSD -STABLE o -CURRENT. Su contenido se complementa con el README del juego de controladores NVIDIA para Linux, que contiene información común a ambos sistemas operativos. Recordamos que algunas partes del juego de controladores FreeBSD no han sido sometidas aún a las pruebas de alto nivel que pasan los controladores Linux cuando se publican. Si experimentas algún problema, no olvides notificarlo. __________________________________________________________________________ CONTENIDO: (sec-01) REQUISITOS DE SOFTWARE (sec-02) INSTRUCCIONES DE INSTALACIÓN BÁSICAS (sec-03) INSTRUCCIONES DE CONFIGURACIÓN BÁSICAS (sec-04) PAQUETES DE COMPATIBILIDAD CON LINUX (sec-05) SELECCIÓN DEL CONTROLADOR AGP GART (sec-06) CONFIGURACIÓN DE PARÁMETROS DE BAJO NIVEL (sec-07) PREGUNTAS FRECUENTES (ap-a) APÉNDICE A: CHIPS NVIDIA SOPORTADOS (ap-b) APÉNDICE B: DESARROLLO DE APLICACIONES MULTIHILO (ap-c) APÉNDICE C: INTERFAZ SYSCTL (ap-d) APÉNDICE D: RECONOCIMIENTOS (ap-e) APÉNDICE E: INFORMACIÓN DE CONTACTO __________________________________________________________________________ (sec-01) REQUISITOS DE SOFTWARE __________________________________________________________________________ Los requisitos mínimos de software para los controladores FreeBSD son: - FreeBSD -STABLE (versión 4.9 o posterior), o FreeBSD -CURRENT (5.2.1 o posterior) * Un kernel FreeBSD 4.x/-STABLE configurado con: opciones SYSVSHM * Un kernel FreeBSD 5.x/-CURRENT configurado con: opciones SYSVSHM Consulte la información relacionada con AGP que encontrará en la sección 05: SELECCIÓN DEL CONTROLADOR AGP GART. - Árbol de archivos fuente del kernel en /usr/src/sys/ - XFree86 4.2 o una versión posterior; los paquetes imprescindibles son: XFree86-4.2.0_1 XFree86-libraries-4.2.1_1.tgz XFree86-Server-4.2.1_3 XFree86-clients-4.2.1_1.tgz (recordamos que *no* es suficiente descargar los binarios de la versión 4.2.1 de ftp.xfree86.org -- es preciso tener XFree86-Server-4.2.1_3 o una versión posterior). No se soportan las versiones de FreeBSD -STABLE anteriores a la 4.9. Tenga presente que si utiliza FreeBSD 4.10, el controlador de NVIDIA no funcionará correctamente de forma predeterminada. Consulte la sección de Preguntas frecuentes para más información. Esto mismo se aplica si utiliza un kernel -CURRENT posterior al de la fecha 05/25/2004. __________________________________________________________________________ (sec-02) INSTRUCCIONES DE INSTALACIÓN BÁSICAS __________________________________________________________________________ Este procedimiento de instalación se simplificará bastante en el futuro, pero, por el momento, es preciso descargar los archivos del juego de controladores FreeBSD de NVIDIA de las páginas Web de NVIDIA, descomprimirlos en un directorio temporal elegido por el usuario y ejecutar lo siguiente desde el directorio raíz del árbol de directorios descomprimido: make install Con ello, se compila, se instala y se carga el módulo kernel de FreeBSD en el kernel (kldload). También se elimina cualquier librería de OpenGL que entre en conflicto con el módulo y se instalan las librerías OpenGL de NVIDIA. Asimismo, se crean los archivos de dispositivo /dev/nvidia (a menos que el sistema utilice devfs) y se actualiza el archivo /boot/loader.conf para cargar automáticamente el módulo kernel de NVIDIA al arrancar, así como el módulo de compatibilidad ABI para Linux, en caso de que no esté compilado en el kernel. En la lista siguiente figuran los archivos instalados por el script y sus directorios dentro del sistema de archivos. - libGL.so /usr/X11R6/lib - libGL.so.1 /usr/X11R6/lib - libnvidia-tls.so /usr/X11R6/lib - libnvidia-tls.so.1 /usr/X11R6/lib - libGLcore.so /usr/X11R6/lib - libGLcore.so.1 /usr/X11R6/lib - nvidia_drv.o /usr/X11R6/lib/modules/drivers - libglx.so /usr/X11R6/lib/modules/extensions - libglx.so.1 /usr/X11R6/lib/modules/extensions - nvidia0 /dev - nvidia1 /dev - nvidia2 /dev - nvidia3 /dev - nvidiactl /dev - libGL.so.1.0-6113 /compat/linux/usr/lib - libnvidia-tls.so.1.0-6113 /compat/linux/usr/lib - libGLcore.so.1.0-6113 /compat/linux/usr/lib __________________________________________________________________________ (sec-03) INSTRUCCIONES DE CONFIGURACIÓN BÁSICAS __________________________________________________________________________ En estas instrucciones se da por supuesto que hay instalado un archivo de configuración XFree86 básico adaptado al sistema utilizado. El archivo XFree86 tiene al menos dos secciones de interés: - La sección "Module" - Las secciones "Device" correspondientes a los dispositivos NVIDIA Una sección "Module" típica configurada para el juego de controladores NVIDIA sería similar a la siguiente: Section "Module" Load "bitmap" Load "extmod" Load "dbe" Load "type1" Load "glx" Load "freetype" EndSection Importante: la línea 'Load "glx"' es la que indica al servidor X que cargue la extensión GLX de XFree86 de NVIDIA. Las líneas "dri" y "GLcore", que suelen estar presentes en archivos de configuración generados automáticamente, no son imprescindibles, pero tampoco perjudican. Una sección "Device" típica configurada para los controladores NVIDIA podría ser similar a ésta: Section "Device" Identifier "Device" Driver "nvidia" VendorName "NVIDIA" BoardName "GeForce2 Go" EndSection Importante: la línea 'Driver "nvidia"' es la que indica al servidor X que utilice el módulo del controlador XFree86 de NVIDIA (nvidia_drv.o) para este dispositivo. La mayoría de las utilidades de configuración eligen el controlador de código abierto "nv" (nv_drv.o) de forma predeterminada. Si el archivo XF86Config tiene una sección "Device" con la línea 'Driver "nv"', es preciso cambiarla a 'Driver "nvidia"'. Consulta el archivo README del juego de controladores Linux de NVIDIA para ver una descripción completa de las opciones de configuración disponibles. __________________________________________________________________________ (sec-04) PAQUETES DE COMPATIBILIDAD CON LINUX __________________________________________________________________________ Para poder ejecutar aplicaciones OpenGL Linux en un sistema FreeBSD, es preciso cumplir ciertos requisitos. En primer lugar, hay que seguir las instrucciones de instalación de los paquetes básicos de compatibilidad con Linux que contiene el manual de FreeBSD (instalar el paquete linux_base, etc). Una vez instalados los componentes básicos, es necesario instalar las librerías OpenGL de NVIDIA para Linux en /compat/linux/usr/lib (¡no las marques con brandelf!). Si el directorio /compat/linux/usr/lib/ ya existe al instalar el controlador FreeBSD, las librerías OpenGL de compatibilidad con Linux se instalan automáticamente. Además, el módulo kernel nvidia.ko debe compilarse con soporte para la capa de compatibilidad ABI de Linux. Dado que esto es así de forma predeterminada, el módulo nvidia.ko necesita el módulo linux.ko para cargarse. Nota: si no necesitas compatibilidad ABI y no quieres cargar linux.ko, puedes compilar el módulo nvidia.ko sin soporte para la capa de compatibilidad ABI (consulta nv-freebsd.h para obtener más información). Problemas conocidos: cuando se ejecuta en modo de compatibilidad con Linux en FreeBSD, la librería OpenGL para Linux puede tener problemas para detectar si la aplicación es multihilo (multithreaded). Como sugiere el mensaje de aviso resultante, puede ser útil configurar la variable de entorno __GL_SINGLE_THREADED (por ejemplo: `setenv __GL_SINGLE_THREADED 1`). Si necesitas más información y una solución más adecuada, consulta la sección "¿Por qué las bibliotecas de compatibilidad con Linux no detectan correctamente si se están utilizando en una aplicación multihilo?" en PREGUNTAS FRECUENTES. __________________________________________________________________________ (sec-05) SELECCIÓN DEL CONTROLADOR AGP GART __________________________________________________________________________ Al igual que ocurre con el juego de controladores Linux de NVIDIA, el usuario puede utilizar la opción "NvAGP" del archivo XFree86 para determinar si el controlador NVIDIA utilizará su controlador AGP GART interno o el controlador AGP GART del SO: - "NvAGP" "0" Desactiva AGP - "NvAGP" "1" Usa el controlador AGP GART de NVIDIA - "NvAGP" "2" Usa el controlador AGP GART del SO (agp.ko) - "NvAGP" "3" Intenta la opción "2" y usa "1" si no lo consigue Pero, al revés de lo que ocurre con Linux, esta opción no es el único elemento de control. Por razones de arquitectura, el módulo kernel nvidia.ko debe compilarse con soporte exclusivo para el controlador AGP GART de NVIDIA o con soporte para el controlador de FreeBSD y el controlador de NVIDIA. Inicalmente nvidia.ko se compila únicamente con soporte para el controlador interno de NVIDIA, pero es posible cambiar este comportamiento (consulta nv-freebsd.h para obtener más información). Conviene recordar que, si se compila nvidia.ko con soporte para el controlador de FreeBSD, éste no se cargará a menos que se cargue el módulo agp.ko. El módulo agp.ko es especial en el sentido de que no se puede cargar después de arrancar el sistema, sino que es necesario añadir la línea siguiente a /boot/loader.conf para garantizar su precarga: # -- load FreeBSD AGP GART driver -- # agp_load="YES" Recordamos también que, si se carga agp.ko, puede entrar en conflicto con el controlador AGP GART (NvAGP) de NVIDIA y generar problemas de estabilidad. Por este motivo, el controlador de NVIDIA interrumpe la inicialización de NvAGP si detecta la presencia de agp.ko. Ten presente que las versiones actuales de FreeBSD se distribuyen con agp.ko integrado en el kernel, que necesitará recompilarse sin 'device agp'. Algunos kernels -CURRENT muy recientes permiten inhabilitar agp.ko mediante el archivo device.hints; si utilizas uno de estos kernels, sólo tienes que añadir la línea siguiente al archivo /boot/device.hints: hint.agp.0.disabled="1" Si utilizas FreeBSD 5.2.1 u otro kernel -CURRENT que aún no ofrece esta función, el parche siguiente la habilitará: /usr/X11R6/share/doc/NVIDIA_GLX-1.0/agp.ko-hints.diff El parche se puede aplicar de la forma siguiente: cd /usr/src/sys/ patch -p2 -i /usr/X11R6/share/doc/NVIDIA_GLX-1.0/agp.ko-hints.diff Cuando se compila con soporte para el controlador AGP GART de FreeBSD, nvidia.ko pasa a utilizar NvAGP si no detecta la presencia de agp.ko (este será el caso cuando agp.ko no soporte el chipset instalado o se haya desinstalado explícitamente con el archivo device.hints). Recomendamos encarecidamente utilizar el controlador AGP GART de NVIDIA, NvAGP. Consulta el README del juego de controladores Linux de NVIDIA para ver la lista completa de chipsets AGP soportados por el controlador AGP GART de NVIDIA. __________________________________________________________________________ (sec-06) CONFIGURACIÓN DE PARÁMETROS DE BAJO NIVEL __________________________________________________________________________ El administrador de recursos de NVIDIA (Resource Manager) reconoce varios parámetros de configuración de bajo nivel que pueden modificarse a través de la interfaz sysctl /antes/ de iniciar el servidor X. Normalmente no debería ser necesario modificar ninguno de estos parámetros, pero puede haber ocasiones en que es imprescindible o deseable hacerlo. Para ver los valores que tienen definidos estos parámetros, ejecuta el siguiente comando de sysctl (tiene que estar cargado el módulo nvidia.ko): sysctl -a hw.nvidia.registry Para cambiar alguno de esos valores, es preciso especificar el nombre completo del OID seguido de '=' y del nuevo valor, por ejemplo: sysctl hw.nvidia.registry.EnableVia4x=1 Es posible automatizar la configuración de los parámetros agregándolos al archivo /etc/sysctl.conf. Consulta ``man 5 sysctl.conf'' para obtener más información. nvidia.ko reconoce los siguientes parámetros: * * Opción: EnableVia4x * * Descripción: * * Hemos tenido problemas al usar el modo 4x en algunos chipsets Via, * lo que nos ha obligado a utilizar el modo 2x de forma predeterminada. * Si quieres probar a mantener el modo 4x, configura el valor 1 en este * parámetro. Si el sistema se bloquea, no te quedará más remedio que * usar el modo 2x. No podemos hacer nada más al respecto. * * Valores posibles: * * 0: Desactiva AGP 4x en los chipsets Via (predeterminado) * 1: Activa AGP 4x en los chipsets Via * * * Opción: EnableALiAGP * * Descripción: * * Se ha comprobado que algunos chipsets ALi (ALi1541, ALi1647) * causan graves problemas de estabilidad en el sistema cuando * tienen AGP activado. Para evitar bloqueos, desactivamos AGP de * forma automática en sistemas con este tipo de chipsets. Parece * que, si se actualiza la BIOS del sistema y se utilizan versiones * recientes del controlador AGP Gart, los sistemas se vuelven mucho * más estables. Si tienes un sistema con alguno de estos chips y ha * funcionado razonablemente bien hasta ahora, o quieres probar con * nuevas versiones de la BIOS y AGPGART, puedes activar el soporte * de AGP definiendo el valor 1 en este parámetro. * * Valores posibles: * * 0: Desactiva AGP en Ali1541 y ALi1647 (predeterminado) * 1: Activa AGP en Ali1541 y ALi1647 * * * Opción: NvAGP * * Descripción: * * Esta opción controla qué controlador AGP GART se utiliza cuando * no se ha hecho ninguna petición explícita para cambiar el valor * predeterminado (servidor X). * * Valores posibles: * * 0 = desactivar el soporte de AGP * 1 = usar el controlador de NVIDIA (si es posible) * 2 = usar el controlador AGPGART del kernel (si es posible) * 3 = usar cualquier controlador disponible (intentar 2, luego 1) * * Ten en cuenta que el controlador AGP GART interno de NVIDIA no se * utilizará si AGPGART se ha vinculado estáticamente al kernel o se ha * compilado como un módulo kernel y cargado antes que el módulo kernel * de NVIDIA. * * * Opción: EnableAGPSBA * * Descripción: * * Por razones de estabilidad, el controlador no efectúa * direccionamiento a través de canales adicionales (Side Band * Addressing) aunque lo soporten el chipset y la tarjeta AGP. * Este comportamiento se puede modificar cambiando la siguiente * clave en el registro. * * ¡No hay soporte para esta opción! * * Valores posibles: * * 0 = Desactiva Side Band Addressing (predeterminado en x86, * ver a continuación) * 1 = Activa Side Band Addressing (si el sistema soporta esta función) * * * Opción: EnableAGPFW * * Descripción: * * Al igual que el direccionamiento Side Band Addressing, la función * Fast Writes está desactivada de forma predeterminada. Si quieres * activarla en los sistemas que la soportan, puedes hacerlo con esta * clave del registro. Ten en cuenta que puede hacer que el sistema * se vuelva inestable si hay varios chipsets AGP. * * ¡No hay soporte para esta opción! * * Valores posibles: * * 0 = Desactiva Fast Writes (predeterminado) * 1 = Activa Fast Writes * * * Opción: SoftEDIDs * * Descripción: * * La clave SoftEDIDs activa la generación dinámica de un EDID * apropiado para pantallas LCD de dispositivos portátiles. Para ello, * utiliza los datos almacenados en la BIOS de vídeo. Si se desactiva * esta clave, el EDID se obtiene de las tablas del código del sistema * portátil a partir del valor de la clave Mobile del registro. * * Valores posibles: * * 0 = Desactiva la generación dinámica de EDID * 1 = Activa la generación dinámica de EDID (predeterminado) * * * Opción: Mobile * * Descripción: * * La clave Mobile sólo es necesaria para sistemas portátiles si * se ha desactivado la clave SoftEDIDs (ver opción anterior), en * cuyo caso, el valor de esta clave se utilizará para obtener * el EDID correcto para la pantalla LCD del portátil. * * Valores posibles: * * ~0 = Detecta automáticamente el valor correcto (predeterminado) * 1 = Portátiles Dell * 2 = Toshiba que no sean Compal * 3 = Todos los demás portátiles * 4 = Toshiba/Compal * 5 = Gateway * * Asegúrate de especificar el valor adecuado según el portátil utilizado. * __________________________________________________________________________ (sec-07) PREGUNTAS FRECUENTES __________________________________________________________________________ P: He leído que el controlador de NVIDIA para FreeBSD no es un driver nativo, sino que reside sobre la capa de compatibilidad ABI de Linux. ¿Es cierto? R: No, el juego de controladores de NVIDIA para FreeBSD es un driver nativo. Proporciona bibliotecas OpenGL para Linux además de las bibliotecas nativas de FreeBSD para que los usuarios puedan ejecutar aplicaciones OpenGL en Linux. P: X se bloquea durante `startx` y el archivo XFree86.0.log registra este mensaje de error: (EE) NVIDIA(0): Failed to obtain a shared memory identifier. R: Los controladores NVIDIA para OpenGL y X necesitan utilizar memoria compartida para comunicarse. Es preciso tener: a) SYSVSHM compilada en el kernel b) XFree86-Server-4.2.1_3 o una versión posterior Descargar XFree86 4.2.1 del sitio FTP de XFree86 no basta. Se corrigió un problema de la memoria compartida de XFree86 entre las versiones 4.2.1 y XFree86-Server-4.2.1_3. P: X no consigue arrancar y, durante el arranque, recibo mensajes de error como este: nvidia0: NVRM: NVIDIA REG resource alloc failed. o: nvidia0: NVRM: NVIDIA IRQ resource alloc failed. P: X no consigue arrancar y durante el proceso de arranque recibo el siguiente error: nvidia0: NVRM: NVIDIA MEM resource alloc failed. R: En algunos kernels de FreeBSD -CURRENT puede ser necesario añadir la línea siguiente al archivo /boot/loader.conf: hw.pci.allow_unsupported_io_range="1" Esto permitirá al módulo kernel de NVIDIA conectarse. R: La BIOS del sistema no ha configurado correctamente la tarjeta gráfica. FreeBSD no puede configurar los dispositivos PCI que la BIOS deja sin configurar. Desactiva la opción "PNP-OS" en la BIOS del sistema. P: ¿Por qué las aplicaciones KDE se bloquean a la salida? R: El manejador de señales de FreeBSD restaura el registro de segmento %gs, lo que impide a OpenGL acceder correctamente a los datos durante el cierre de sesión. Para corregir este problema en un kernel -STABLE, puedes aplicar este parche: /usr/X11R6/share/doc/NVIDIA_GLX-1.0/machdep.c.diff a sys/i386/i386/machdep.c y recompilar el kernel. El parche se puede aplicar de esta forma: cd /usr/src/sys/i386/i386/ patch -p0 -i /usr/X11R6/share/doc/NVIDIA_GLX-1.0/machdep.c.diff Este cambio ya se ha incorporado a los archivos fuente de los kernel -CURRENT más recientes. P: ¿Por qué las bibliotecas de compatibilidad con Linux no detectan correctamente si se están utilizando en una aplicación multihilo? R: Las bibliotecas de compatibilidad con Linux no son capaces de detectar si se están utilizando en una aplicación multihilo (multithreaded) porque el registro de segmento %gs no se inicializa correctamente para compatibilidad Linux. Como solución alternativa, se puede utilizar la variable de entorno __GL_SINGLE_THREADED (configurada con "1"), aunque a costa de poner en peligro la integridad de los threads. P: Estoy utilizando FreeBSD 4.10 (o una versión -CURRENT posterior al 05/25/2004) y el controlador de NVIDIA no funciona correctamente. R: La llamada msync(2) no funciona correctamente con archivos de caracteres especiales en estos kernels. Para resolver el problema, puedes configurar el OID de la VM 'old_msync' con el valor '1' o aplicar uno de los parches siguientes: sysctl vm.old_msync=1 Es posible automatizar este procedimiento añadiendo la entrada apropiada en el archivo /etc/sysctl.conf file. Examina 'man 5 sysctl.conf' para obtener más información. Además se ha detectado una fuga de memoria en el paginador de dispositivos que utiliza el controlador de NVIDIA. Los parches device_pager.c también resuelven estre problema. Para usuarios de FreeBSD 4.10/-STABLE: /usr/X11R6/share/doc/NVIDIA_GLX-1.0/device_pager.c_4.10.diff /usr/X11R6/share/doc/NVIDIA_GLX-1.0/vm_map.c_4.10.diff Estos parches se pueden aplicar como sigue: cd /usr/src/sys/vm/ patch -p0 -i /usr/X11R6/share/doc/NVIDIA_GLX-1.0/device_pager.c_4.10.diff patch -p0 -i /usr/X11R6/share/doc/NVIDIA_GLX-1.0/vm_map.c_4.10.diff Para usuarios de FreeBSD 5.2.1/-CURRENT: /usr/X11R6/share/doc/NVIDIA_GLX-1.0/device_pager.c_5.2.diff /usr/X11R6/share/doc/NVIDIA_GLX-1.0/vm_object.c_5.2.diff Estos parches se pueden aplicar como sigue: cd /usr/src/sys/vm/ patch -p0 -i /usr/X11R6/share/doc/NVIDIA_GLX-1.0/device_pager.c_5.2.diff patch -p0 -i /usr/X11R6/share/doc/NVIDIA_GLX-1.0/vm_object.c_5.2.diff P: Cuanto trato de arrancar X, sólo obtengo una pantalla en negro. R: El problema puede deberse a varias razones. Si aún no lo has hecho, prueba a desactivar el soporte de ACPI y consulta la sección de preguntas frecuentes del controlador de NVIDIA para Linux. P: ¿La utilidad nvidia-settings está disponible para FreeBSD? R: Debido a las diferencias entre las versiones -STABLE y -CURRENT, no se distribuyen versiones precompiladas de nvidia-settings con el controlador, aunque puede descargarse y compilarse desde los archivos fuente, siempre que se hayan instalado los puertos de gtk+-2.x y gmake: Descarga nvidia-settings-1.0.tar.gz (o la última versión) desde esta dirección: ftp://download.nvidia.com/XFree86/nvidia-settings A continuación puedes descomprimirlo, compilarlo e instalarlo (en /usr/local/bin) con: tar zxf nvidia-settings-1.0.tar.gz cd nvidia-settings-1.0 gmake install __________________________________________________________________________ (ap-a) APÉNDICE R: CHIPS NVIDIA SOPORTADOS __________________________________________________________________________ Consulta el README del Juego de controladores NVIDIA para Linux para ver la lista completa de chips gráficos soportados. __________________________________________________________________________ (ap-b) APÉNDICE B: DESARROLLO DE APLICACIONES MULTIHILO __________________________________________________________________________ Esta versión del juego de controladores de NVIDIA para FreeBSD no permite utilizar aplicaciones multihilo (multi-threaded) con seguridad. Se ha suprimido el soporte de TLS para mejorar la compatibilidad con las instalaciones de FreeBSD -CURRENT utilizando las nuevas bibliotecas multihilo de FreeBSD. NVIDIA está trabajando con los desarrolladores de FreeBSD para garantizar que futuras versiones del controlador de NVIDIA incluirán soporte para el próximo mecanismo de TLS estática de FreeBSD tras su esperada introducción con FreeBSD 5.3. Recuerda que en FreeBSD -CURRENT, las bibliotecas de compatibilidad ABI de linux sí aceptan hilos (son thread-safe). __________________________________________________________________________ (ap-c) APÉNDICE C: INTERFAZ SYSCTL __________________________________________________________________________ La interfaz sysctl permite obtener información de tiempo de ejecución sobre el controlador, las tarjetas gráficas NVIDIA instaladas y el estado de AGP. También permite modificar algunas opciones de configuración de bajo nivel y/o el uso de diversas funcionalidades. Los distintos tipos de información se almacenan jerárquicamente bajo hw.nvidia y pueden obtenerse mediante el comando sysctl(8): - hw.nvidia.version Muestra la revisión del controlador instalado. - hw.nvidia.cards.n.* Estos identificadores proporcionan información sobre el dispositivo 'n' de NVIDIA: - model: nombre de producto del dispositivo - irP: IRQ solicitada por el dispositivo - vbios: revisión de VBIOS del dispositivo - type: tipo de bus del dispositivo - hw.nvidia.agp.host-bridge.* - hw.nvidia.agp.card.* Estos identificadores proporcionan información sobre la capacidad AGP de la tarjeta gráfica AGP y el puente de comunicación con el bus del sistema (host-bridge) respectivamente. Los valores correctos se obtienen normalmente después de arrancar el sistema y antes de iniciar el servidor X (y el subsistema AGP). - rates: velocidades AGP soportadas por el dispositivo - fw: indica si el dispositivo soporta fast-writes de AGP - sbR: indica si el dispositivo soporta side-band-addressing de AGP - registers: registros de AGP, estado:comando - hw.nvidia.agp.status.* Muestra la información de estado de AGP basándose en los registros de comando de AGP del puente de comunicación con el bus del sistema (host-bridge) y de la tarjeta AGP. - status: indica si AGP está activado o desactivado - driver: controlador en uso - rate: velocidad AGP programada - fw: indica si fast-writes está activada o desactivada - sbR: indica si side-band-addressing está activada o desactivada - hw.nvidia.registry.* Opciones de configuración de bajo nivel para el módulo kernel. Normalmente, el cambio de estas opciones es innecesario y potencialmente peligroso. Si realmente necesitas cambiarlas, tienes que hacerlo *antes* de iniciar el servidor X. __________________________________________________________________________ (ap-d) APÉNDICE D: RECONOCIMIENTOS __________________________________________________________________________ El puerto del controlador NVIDIA para FreeBSD se debe en gran medida a las aportaciones de Christian Zander y Matthew N. Dodd . __________________________________________________________________________ (ap-e) APÉNDICE E: INFORMACIÓN DE CONTACTO __________________________________________________________________________ Si crees que has encontrado algún un defecto en el controlador o tienes algún problema para el que no encuentras solución en ningún otro sitio, puedes enviarnos un mensaje a la siguiente dirección de correo electrónico: freebsd-gfx-bugs@nvidia.com.