La plataforma nForce contiene una serie de dispositivos de hardware que pueden ejecutarse bajo Linux. Además de un procesador de visualización de imágenes, la plataforma incluye un dispositivo de red (MAC), hardware de audio, un controlador de dispositivos IDE y otro controlador de interfaz OHCI para dispositivos USB. Muchos de los componentes de nForce utilizan interfaces estándar y, por tanto, no necesitan controladores especialmente adaptados para Linux.
Los comentarios sobre errores detectados (bugs) y las preguntas sobre instalación pueden dirigirse a:
Antes de informar sobre cualquier problema, no olvides leer la sección de Solución de problemas para aportar todos los datos relevantes, como la distribución de Linux, la versión del kernel, el RPM fuente, la configuración de la BIOS del sistema, el contenido del archivo /etc/modules.conf y la lista de los mensajes de error encontrados (puedes ejecutar dmesg o examinar el archivo /var/log/messages como root). Si tienes problemas de funcionamiento, trata de ser lo más específico posible para que podamos reproducir el problema y determinar si disponemos de la solución adecuada.
Este paquete puede descargarse del sitio web de NVIDIA:
http://es.nvidia.com/view.asp?PAGE=drivers
Es importante que utilices únicamente software descargado de este sitio o una distribución Linux de confianza para el hardware nForce.
Actualmente, los controladores de nForce necesitan un kernel de la serie 2.4.
El controlador de red suministrado por NVIDIA está sujeto a los términos de la licencia de software de NVIDIA. Esta licencia está disponible en las páginas web de NVIDIA y se incluye también en el paquete. El uso de este software implica la aceptación de los términos de dicha licencia. El resto del software se suministra bajo los términos de la licencia pública de GNU, que también se incluye en este paquete.
El paquete contiene lo siguiente:
Este paquete crea un controlador de red y de audio, y los coloca en los lugares apropiados para los módulos cargables del kernel. El controlador de red es de NVIDIA y el de audio se basa en el controlador de audio de código abierto i810, aunque se ha modificado para que funcione con el hardware de NVIDIA. También se suministra un parche de kernel que proporciona soporte de GART en los chips nForce. Este parche debe aplicarse al kernel que se vaya a utilizar.
Los paquetes binarios también actualizan el archivo de configuración de módulos desactivando las entradas de red, audio y usb existentes, y añadiendo las correspondientes a los controladores nuevos. Antes de realizar cualquier cambio en el archivo de configuración, se crea una copia de seguridad del mismo. Si el paquete binario se desinstala, intenta recuperar la versión original del archivo a partir de esa copia de seguridad.
Los archivos tar no modifican los archivos de configuración de módulos. Deberás comprobar las líneas siguientes en el archivo de configuración (se llamará /etc/modules.conf en la mayoría de las distribuciones actuales):
Ni los paquetes de código fuente ni los binarios cargan los controladores del kernel durante la instalación. Puedes hacerlo manualmente utilizando insmod o modprobe (USO: 'insmod modulename' o 'modprobe modulename'). Los módulos del kernel deberían insertarse automáticamente al arrancar el sistema.
Nvidia proporciona RPM binarios precompilados para diferentes versiones de RedHat y Mandrake. Selecciona el RPM adecuado para el kernel que estés utilizando. Puedes comprobar qué kernel se está ejecutando en tu máquina mediante el comando 'uname -r'.
Si estás utilizando otra versión de Red Hat o Mandrake, un kernel modificado, o una distribución rpm diferente, necesitarás utilizar SRPM para generar un RPM apropiado para tu sistema. Si utilizas un RPM de SuSE, consulta la NOTA: INSTALACIONES CON SuSE, que encontrarás a continuación.
Si utilizas un sistema no basado en RPM, o si prefieres no utilizar RPM, tendrás que hacer la descarga y la instalación a partir de los archivos tar.
Para instalar un rpm binario, sólo necesitas usar rpm para instalar el paquete. Con ello se instalan y configuran los controladores. Por el contrario, el rpm fuente te obliga a compilar e instalar el archivo tú mismo. Los archivos de este paquete organizan la compilación jerárquicamente para facilitarte esta tarea.
Puede que quieras comprobar la configuración BIOS de tu sistema para asegurarte de que los dispositivos de audio y red se van a detectar correctamente. Consulta el apartado Configuración de la BIOS del sistema en la sección Solución de problemas.
Si usas la distribución SuSE de Linux, ten en cuenta que el RPM binario sólo admite versiones de SuSE que utilicen el kernel más reciente. Esta nota contiene instrucciones para actualizar al nuevo kernel de las versiones 7.1, 7.2 y 7.3 de SuSE:
Puedes obtener el nuevo kernel de uno de los sitios siguientes (según la distribución de SuSE):
ftp://ftp.suse.com/pub/suse/i386/update/7.1/kernel/2.4.16 (para SuSE 7.1)
ftp://ftp.suse.com/pub/suse/i386/update/7.2/kernel/2.4.16 (para SuSE 7.2)
ftp://ftp.suse.com/pub/suse/i386/update/7.3/kernel/2.4.16 (para SuSE 7.3)
Para ver las instrucciones actualizadas, lee el artículo sobre SuSE en:
http://sdb.suse.de/en/sdb/html/ftpkernel.html
Ten presentes estas instrucciones antes de hacer la instalación con un RPM fuente o un archivo tar. Necesitarás seguir uno de estos procedimientos si quieres instalar los controladores de nForce sin actualizar el kernel. Recuerda que estos métodos de instalación no sirven para SuSE 7.1 o 7.2.
Instala con YaST(2) los siguientes paquetes de desarrollo (d).
Utiliza los comandos siguientes para configurar el entorno de desarrollo.
ejemplo% cd <directorio con el archivo rpm>
ejemplo% su
Password: ******
ejemplo# pushd /usr/src/linux
ejemplo# make cloneconfig
ejemplo# make dep
ejemplo# popd
Ahora puedes hacer la instalación con el archivo tar o con RPM (omitiendo los pasos para convertirte en usuario root).
Este procedimiento consiste en descargar el RPM binario adecuado para tu distribución e instalarlo. Si utilizas la distribución SuSE, consulta la NOTA: INSTALACIONES CON SuSE incluida con anterioridad.
Accede como root y haz la instalación utilizando rpm:
ejemplo% cd <directorio con el archivo rpm>
ejemplo% su
Password: ******
ejemplo# rpm -i nforce{nombre paquete}-1.0-1.rpm
El RPM fuente creará un RPM adecuado para tu sistema. Si estás utilizando SuSE, consulta la NOTA: INSTALACIONES CON SuSE incluida con anterioridad. Para hacer la instalación:
ejemplo% cd <directorio con el archivo rpm>
ejemplo% su
Password: ******
ejemplo# rpm --rebuild nforce{nombre paquete}-1.0-1.src.rpm
En este punto, el RPM se compila. Cuando termine la ejecución del comando, busca una línea que indique:
Wrote: /usr/src/{dir raíz de RPM}/RPMS/i386/nforce{nombre paquete}-1.0-1.rpm
Así obtienes el nombre y la ubicación del nuevo RPM. A continuación, deberás instalar ese RPM siguiendo las instrucciones de la sección Instalación del RPM binario.
El paquete tar contiene código fuente, librerías, archivos makefile y documentación organizados dentro de un solo archivo.
Para instalar este archivo, descomprímelo, genera los archivos fuente e instálalos. Si utilizas el RPM de SuSEm, consulta la NOTA: INSTALACIONES CON SuSE incluida con anterioridad:
ejemplo% tar -xvzf nforce.tgz
ejemplo% cd nforce
ejemplo% make
ejemplo% su
Password: ******
ejemplo# make install
ejemplo# cd /usr/src/linux-2.4.20
ejemplo# patch -p1 < linux-2.4.20-agpgart.diff
ejemplo# make menuconfig
Para desinstalar el contenido de uno de los archivos rpm binarios, utiliza rpm:
ejemplo% cd <directorio con el archivo rpm>
ejemplo% su
Password: ******
ejemplo# rpm -e nforce<nombre paquete>-1.0-1.rpm
Para desinstalar el contenido de un rpm fuente o del archivo tar, cambia al directorio que contenga los archivos compilados y ejecuta "make uninstall":
ejemplo% cd <directorio con los archivos compilados>
ejemplo% cd nforce
ejemplo% su
Password: ******
ejemplo# make uninstall
Puesto que los controladores de audio y de red actúan sobre los chips de nForce, estos dispositivos, junto con otros dispositivos de la placa base, están controlados por la BIOS del sistema. Si los controladores instalados no reconocen el hardware del sistema, el problema puede estar en la configuración de las funciones "plug and play" de la BIOS. Si la BIOS espera que el sistema operativo configure los dispositivos de hardware y el kernel de Linux no soporta configuraciones del tipo ACPI, necesitarás modificar la configuración de la BIOS.
Para ver o cambiar una BIOS de tipo Award, arranca el sistema y pulsa la tecla Supr (Delete). Cuando aparezca la pantalla de configuración, selecciona "PnP/PCI Configurations". Si la opción "PNP OS Installed []" de esa pantalla tiene seleccionado el valor "Yes", cámbialo a "No".
Si la BIOS es del tipo Phoenix, usa la tecla F2 en lugar de Supr, busca en los menús la opción OS Type y elige "Other". Los datos exactos de configuración varían en función del proveedor de la BIOS, por lo que es posible que las pantallas no coincidan exactamente.
Aviso: Conviene que anotes la configuración original de la BIOS antes de cambiarla. Su modificación puede afectar negativamente al funcionamiento del sistema e incluso provocar que el sistema no arranque.
R: La nueva versión del paquete nForce para Linux contiene un parche aplicable al código fuente del kernel que proporciona soporte para GART si se utiliza el controlador Linux GART estándar. NVIDIA está trabajando con los desarrolladores de este controlador para que dicho soporte pueda estar disponible en futuras versiones del kernel Linux.
R: Se ha añadido un parche al kernel 2.4.21pre3-ac1 que permite activar DMA para la controladora IDE de nForce2 y debería estar incorporado en la última versión del kernel 2.4.21. Si no quieres actualizar el kernel, puedes usar la utilidad "hdparm" para activar DMA. Por ejemplo:
ejemplo% su
Password: ******
ejemplo# hdparm -d 1 /dev/hdX
Donde /dev/hdX es el dispositivo IDE para el que quieres activar DMA. Necesitarás repetir esta operación cada vez que arranques o añadir el comando a un script rc. Algunas distribuciones incluyen un archivo "/etc/sysconfig/harddisks" donde puedes establecer la activación de esta función para todas las unidades de disco al arrancar el sistema.
R: Los dispositivos USB y USB2.0 utilizan las interfaces estándar OHCI y EHCI, y funcionan con los controladores USB para Linux estándar.
R. Los símbolos sin resolver suelen deberse a una discrepancia entre los archivos fuente del kernel y el kernel ejecutado. Estos archivos tienen que coincidir para que los módulos del controlador de nForce se compilen correctamente. Comprueba si los archivos fuente del kernel son los adecuados para el kernel que se está ejecutando.
R: Si ejecutas una distribución que utiliza paquetes RPM (Red Hat, Mandrake, SuSE, etc), puedes usar RPM para saberlo. Escribe lo siguiente en el indicador del shell:
ejemplo% rpm -qa | grep kernel
Observa el resultado. Deberías ver un paquete que corresponde a tu kernel (normalmente con un nombre similar a kernel-2.4.18-3) y un paquete fuente del kernel con la misma versión (normalmente con un nombre similar a kernel-source-2.4.18-3). Si ninguna de las líneas parece corresponder a un paquete fuente, seguramente necesitas instalarlo. Si las versiones que aparecen en la lista no coinciden (p. ej.: kernel-2.4.18-10 y kernel-source-2.4.18-3), necesitarás actualizar el paquete fuente del kernel para que corresponda a la versión instalada del kernel. Si tienes varios kernels instalados, tendrás que instalar el archivo fuente correspondiente al kernel que se esté ejecutando (o asegurarte de que los archivos fuente instalados se corresponden con el kernel en ejecución). Puedes hacerlo examinando la salida del comando "uname -r" y las versiones que coinciden.
R: Las versiones recientes de rpm no admiten la opción "-rebuild". Si tienes una de estas versiones, deberás usar el comando "rpmbuild -rebuild". El comando "rpmbuild" ejecutable lo suministra el paquete rpm-build.
A: Necesitas instalar los archivos fuente del kernel. Descarga e instala el paquete kernel-source apropiado para tu kernel.
R: NVIDIA ha estado trabajando con el grupo de Linux 1394 a fin de incluir soporte para esta especificación en nForce2. Ya hemos incluido soporte en la versión 2.5.68 de la serie 2.5 del kernel y se encuentra en fase de desarrollo un parche para la versión 2.4 (2.4.21-rc1). Los parches de prueba pueden descargarse en linux1394.org
Los cambios más recientes se incluyen al principio de la lista. Cada elemento de la lista marcado por un punto corresponde a una versión pública disponible en las páginas web de NVIDIA.
Cambios en el script de instalación para utilizar el número más bajo posible en la numeración de los dispositivos de red y audio en modules.conf.
Cambio del controlador de audio, que ahora se instala con independencia de la distribución utilizando el archivo i810_audio.
Soporte de SPDIF en el controlador de audio.
Paquetes binarios actualizados para las últimas versiones del kernel de Red Hat.
Nueva sección de preguntas frecuentes en el archivo de notas sobre la versión.
Mejoras en los archivos .spec y Makefile.
Los archivos RPM fuente y tar ahora utilizan el archivo i810_audio.c del sistema local y lo solicitan si no lo encuentran. Esto los hace más independientes de la distribución.
Soporte de Mandrake9.0 y Redhat8.0
Soporte del controlador de red para nForce2.