MobStac

viernes, 10 de septiembre de 2010

¿Hay problemas con NVIDIA?

En la versión 8 del PCBSD no me ha ido el driver para mi tarjeta nvidia una go 7300, no uso esto para jugar así que para poner solo un salvapantallas animado no me merece la pena comerme la bola.

Aun así he descubierto que con la escusa de un posible bug en el driver se pasan la pelota de un sitio a otro, hay peloteo descarado entre cualquier foro FBSEDERO/PCBSEDERO y el foro NVIDIA, lo curioso es que en la release 7.2 si que me iba así que no entiendo lo que pasa.

Básicamente el problema es que al instalar el probable driver para mi tarjeta de los 3 que dan en el instalador y que es el 195.XX.XX se me cuelga el ordenador y no hay forma de salir si no es por fuerza bruta sé que el fichero que hay en /var/log/Xorg.0.log tiene la respuesta al problema y que la solución es bien simple usar el Live DVD para sacar la información al fin y al cabo es en el proceso de la instalación que se me ha colgado el asuntillo y se supone que ahí está la respuesta.

Esté o no esté la respuesta no hay manera de ninguna de las formas que ya he probado: compilar viejas versiones del driver que no se dejan por vete a saber qué incompatibilidad que no debía de ser porque se han instalado las librerías anteriores de FBSD para que exista esa compatibilidad, el compilar el último y mas nuevo que si se deja pero que sigue colgando el ordenador, el hacer un inventillo que no tengo muy claro, solución de los foros que consiste en sustituir lo GL que dicen que es lo que cuelga el asunto: la teoría es instalar un driver por ej . el mas nuevo y sustituir lo GL por un driver que si que funcionara anteriormente en mi caso un 185.18.XX, solo la parte GL dejando el driver y librerías no GL tal cual, el problema es como hacerlo si se cuelga el asunto y después entrado en modo consola el SO solo es de lectura, bueno diréis se puede entrar con el Live DVD, vale, o hacerlo enseguida después de la instalación del driver usando por ej. el MC pero al final es que no va tampoco.

Conclusión a usar el driver nv que es el nvidia sin GL no he probado la versión 8.1 porque leyendo atentamente la carpeta /PCBSD/xorg-gui/ he llegado a la conclusión que no hay tanto cambio en este tema creo que comparativamente ninguno.

Sin embargo en la carpeta /PCBSD/packages/i386 que es donde están los paquetes con los drivers nvidia al menos los de mi plataforma si que hay cambios, como cada aventura me cuesta una media hora de mi tiempo he decidido ser práctico y pasar de comerme la bola al respective no uso tanto este SO como para perder el tiempo con él aun así veo que hay cosas mejorables al menos se han de curar en salud ya que ofrecen aceleración en la publicidad.

Así que he descubierto un arcaísmo, vamos que desde hace años seguro que ni retocan el xorg-gui en el apartado nvidia-detect, vamos que tenéis que seguir el PATH /PCBSD/xorg-gui/nvidia-detect para abriros los ojos.

Allí encontraréis una serie de escritillos:

-rwxr-xr-x 1 root wheel 1280 24 ago 11:24 detect-nvidia.sh
#-rwxr-xr-x 1 root wheel 787 18 feb 2010 detect-nvidia.sh.old
-rw-r--r-- 1 root wheel 1105 18 feb 2010 nvidia17-pciid.txt
#-rw-r--r-- 1 ximo ximo 6309 24 ago 11:06 nvidia18-pciid.txt
#-rw-r--r-- 1 ximo ximo 6309 24 ago 11:06 nvidia19-pciid.txt
-rw-r--r-- 1 root wheel 1103 18 feb 2010 nvidia9x-pciid.txt

Que hacen fácil la detección de la tarjeta nvidia que tengáis al menos hasta el driver 17X.xxx.xxx

Si os fijáis he puesto almohadillas # en tres líneas de lo anterior pues me he atrevido a modificar el fichero detect-nvidia.sh añadiendo las configuraciones para el driver de la series 19X.xxx.xxx y 18X.xxx.xxx y añadiendo unos escritillos de texto el nvidia18-pciid.txt base y el nvidia19-pciid.txt base que son idénticos en contenido pero que cambian en el nombre para que el mencionado escritillo motor detect-nvidia.sh reconozca mas tarjetas de las que se ponen ahora por medio de los escritos textuales que las recojen que son originalmente:

-rw-r--r-- 1 root wheel 1105 18 feb 2010 nvidia17-pciid.txt
-rw-r--r-- 1 root wheel 1103 18 feb 2010 nvidia9x-pciid.txt


Estos ficheros son bases de datos con las cabeceras de las tarjetas y los drivers a usar.

Pues bueno yo he hecho el nvidia19-pcii.txt y el nvidia18-pcii.txt sacado de la Release Notes

Apartado nvidia driver support list

El contenido que es identico en ambos es el siguiente:

0x0040 GeForce 6800 Ultra
0x0041 GeForce 6800
0x0042 GeForce 6800 LE
0x0043 GeForce 6800 XE
0x0044 GeForce 6800 XT
0x0045 GeForce 6800 GT
0x0046 GeForce 6800 GT
0x0047 GeForce 6800 GS
0x0048 GeForce 6800 XT
0x0090 GeForce 7800 GTX
0x0091 GeForce 7800 GTX
0x0092 GeForce 7800 GT
0x0093 GeForce 7800 GS
0x0095 GeForce 7800 SLI
0x0098 GeForce Go 7800
0x0099 GeForce Go 7800 GTX
0x00C0 GeForce 6800 GS
0x00C1 GeForce 6800
0x00C2 GeForce 6800 LE
0x00C3 GeForce 6800 XT
0x00C8 GeForce Go 6800
0x00C9 GeForce Go 6800 Ultra
0x00F0 Unknown GPU
0x00F1 GeForce 6600 GT
0x00F2 GeForce 6600
0x00F3 GeForce 6200
0x00F4 GeForce 6600 LE
0x00F5 GeForce 7800 GS
0x00F6 GeForce 6800 GS
0x00F9 GeForce 6800 Ultra
0x0140 GeForce 6600 GT
0x0141 GeForce 6600
0x0142 GeForce 6600 LE
0x0143 GeForce 6600 VE
0x0144 GeForce Go 6600
0x0145 GeForce 6610 XL
0x0146 GeForce Go 6600 TE/6200 TE
0x0147 GeForce 6700 XL
0x0148 GeForce Go 6600
0x0149 GeForce Go 6600 GT
0x014F GeForce 6200
0x0160 GeForce 6500
0x0161 GeForce 6200 TurboCache(TM)
0x0162 GeForce 6200SE TurboCache(TM)
0x0163 GeForce 6200 LE
0x0164 GeForce Go 6200
0x0166 GeForce Go 6400
0x0167 GeForce Go 6200
0x0168 GeForce Go 6400
0x0169 GeForce 6250
0x016A GeForce 7100 GS
0x0191 GeForce 8800 GTX
0x0193 GeForce 8800 GTS
0x0194 GeForce 8800 Ultra
0x0197 Tesla C870
0x01D0 GeForce 7350 LE
0x01D1 GeForce 7300 LE
0x01D3 GeForce 7300 SE/7200 GS
0x01D6 GeForce Go 7200
0x01D7 GeForce Go 7300
0x01D8 GeForce Go 7400
0x01DD GeForce 7500 LE
0x01DF GeForce 7300 GS
0x0211 GeForce 6800
0x0212 GeForce 6800 LE
0x0215 GeForce 6800 GT
0x0218 GeForce 6800 XT
0x0221 GeForce 6200
0x0222 GeForce 6200 A-LE
0x0240 GeForce 6150
0x0241 GeForce 6150 LE
0x0242 GeForce 6100
0x0244 GeForce Go 6150
0x0247 GeForce Go 6100
0x0290 GeForce 7900 GTX
0x0291 GeForce 7900 GT/GTO
0x0292 GeForce 7900 GS
0x0293 GeForce 7950 GX2
0x0294 GeForce 7950 GX2
0x0295 GeForce 7950 GT
0x0297 GeForce Go 7950 GTX
0x0298 GeForce Go 7900 GS
0x0299 GeForce Go 7900 GTX
0x02E0 GeForce 7600 GT
0x02E1 GeForce 7600 GS
0x02E2 GeForce 7300 GT
0x02E3 GeForce 7900 GS
0x02E4 GeForce 7950 GT
0x0390 GeForce 7650 GS
0x0391 GeForce 7600 GT
0x0392 GeForce 7600 GS
0x0393 GeForce 7300 GT
0x0394 GeForce 7600 LE
0x0395 GeForce 7300 GT
0x0397 GeForce Go 7700
0x0398 GeForce Go 7600
0x0399 GeForce Go 7600 GT
0x03D0 GeForce 6150SE nForce 430
0x03D1 GeForce 6100 nForce 405
0x03D2 GeForce 6100 nForce 400
0x03D5 GeForce 6100 nForce 420
0x0400 GeForce 8600 GTS
0x0401 GeForce 8600 GT
0x0402 GeForce 8600 GT
0x0403 GeForce 8600GS
0x0404 GeForce 8400 GS
0x0405 GeForce 9500M GS
0x0407 GeForce 8600M GT
0x0408 GeForce 9650M GS
0x0409 GeForce 8700M GT
0x0420 GeForce 8400 SE
0x0421 GeForce 8500 GT
0x0422 GeForce 8400 GS
0x0423 GeForce 8300 GS
0x0424 GeForce 8400 GS
0x0425 GeForce 8600M GS
0x0426 GeForce 8400M GT
0x0427 GeForce 8400M GS
0x0428 GeForce 8400M G
0x042C GeForce 9400 GT
0x042E GeForce 9300M G
0x0531 GeForce 7150M / nForce 630M
0x0533 GeForce 7000M / nForce 610M
0x053A GeForce 7050 PV / NVIDIA nForce 630a
0x053B GeForce 7050 PV / NVIDIA nForce 630a
0x053E GeForce 7025 / NVIDIA nForce 630a
0x05E0 GeForce GTX 295
0x05E1 GeForce GTX 280
0x05E2 GeForce GTX 260
0x05E3 GeForce GTX 285
0x0600 GeForce 8800 GTS 512
0x0601 GeForce 9800 GT
0x0602 GeForce 8800 GT
0x0604 GeForce 9800 GX2
0x0605 GeForce 9800 GT
0x0606 GeForce 8800 GS
0x0608 GeForce 9800M GTX
0x0609 GeForce 8800M GTS
0x060B GeForce 9800M GT
0x060C GeForce 8800M GTX
0x060D GeForce 8800 GS
0x0610 GeForce 9600 GSO
0x0611 GeForce 8800 GT
0x0612 GeForce 9800 GTX/9800 GTX+
0x0613 GeForce 9800 GTX+
0x0614 GeForce 9800 GT
0x0617 GeForce 9800M GTX
0x0622 GeForce 9600 GT
0x0623 GeForce 9600 GS
0x0628 GeForce 9800M GTS
0x062A GeForce 9700M GTS
0x062B GeForce 9800M GS
0x062C GeForce 9800M GTS
0x0640 GeForce 9500 GT
0x0643 GeForce 9500 GT
0x0646 GeForce GT 120
0x0647 GeForce 9600M GT
0x0648 GeForce 9600M GS
0x0649 GeForce 9600M GT
0x064A GeForce 9700M GT
0x064B GeForce 9500M G
0x064C GeForce 9650M GT
0x0656 GeForce 9650 S
0x06E0 GeForce 9300 GE
0x06E1 GeForce 9300 GS
0x06E4 GeForce 8400 GS
0x06E5 GeForce 9300M GS
0x06E6 GeForce G100
0x06E8 GeForce 9200M GS
0x06E9 GeForce 9300M GS
0x07E0 GeForce 7150 / NVIDIA nForce 630i
0x07E1 GeForce 7100 / NVIDIA nForce 630i
0x07E3 GeForce 7050 / NVIDIA nForce 610i
0x0844 GeForce 9100M G
0x0845 GeForce 8200M G
0x0847 GeForce 9100
0x0848 GeForce 8300
0x0849 GeForce 8200
0x084A nForce 730a
0x084B GeForce 8200
0x084C nForce 780a SLI
0x084D nForce 750a SLI
0x084F GeForce 8100 / nForce 720a
0x0862 GeForce 9400M G
0x0863 GeForce 9400M
0x004E Quadro FX 4000
0x009D Quadro FX 4500
0x00CC Quadro FX Go1400
0x00CD Quadro FX 3450/4000 SDI
0x00CE Quadro FX 1400
0x00F8 Quadro FX 4400/Quadro FX 3400
0x014A Quadro NVS 440
0x014C Quadro FX 540M
0x014D Quadro FX 550
0x014E Quadro FX 540
0x0165 Quadro NVS 285
0x019D Quadro FX 5600
0x019E Quadro FX 4600
0x01D7 Quadro NVS 110M
0x01DA Quadro NVS 110M
0x01DB Quadro NVS 120M
0x01DC Quadro FX 350M
0x01DE Quadro FX 350
0x0245 Quadro NVS 210S / NVIDIA GeForce 6150LE
0x029A Quadro FX 2500M
0x029B Quadro FX 1500M
0x029C Quadro FX 5500
0x029D Quadro FX 3500
0x029E Quadro FX 1500
0x029F Quadro FX 4500 X2
0x039E Quadro FX 560
0x040A Quadro FX 370
0x040B Quadro NVS 320M
0x040C Quadro FX 570M
0x040D Quadro FX 1600M
0x040E Quadro FX 570
0x040F Quadro FX 1700
0x0429 Quadro NVS 140M
0x042A Quadro NVS 130M
0x042B Quadro NVS 135M
0x042D Quadro FX 360M
0x042F Quadro NVS 290
0x05F9 Quadro CX
0x05FD Quadro FX 5800
0x05FE Quadro FX 4800
0x05FF Quadro FX 3800
0x061A Quadro FX 3700
0x061C Quadro FX 3600M
0x061E Quadro FX 3700M
0x0638 Quadro FX 1800
0x063A Quadro FX 2700M
0x0658 Quadro FX 380
0x0659 Quadro FX 580
0x065C Quadro FX 770M
0x06EA Quadro NVS 150M
0x06EB Quadro NVS 160M
0x06F8 Quadro NVS 420
0x06F9 Quadro FX 370 LP
0x06FA Quadro NVS 450
0x06FD Quadro NVS 295
0x087A Quadro FX 470
0x087F Quadro FX 470M

Eso lo copiáis y pegáis y le ponéis los nombres anteriores y ya está de todas formas yo lo repasaría con la base de datos de nvidia support list ya mencionada antes es una copia de ella pero adecuada para la lectura por parte del fichero detect-nvidia.sh

El contenido de este fichero se ha modificado de la forma que pongo un poco mas abajo con lo que le capacita a reconocer mas tarjetas que de la forma original aceptaba esto no quiere decir que os vaya a ir el asuntillo el bug o lo que sea sigue existiendo y el driver a mi no me funciona:

#!/bin/sh
# Script which checks the nvidia cards PCIID and figures out which driver it needs
##################################################################################
PROGDIR="/usr/PCBSD/xorg-gui"

NV19FILE="${PROGDIR}/nvidia-detect/nvidia19-pciid.txt"
NV18FILE="${PROGDIR}/nvidia-detect/nvidia18-pciid.txt"
NV17FILE="${PROGDIR}/nvidia-detect/nvidia17-pciid.txt"
NV9XFILE="${PROGDIR}/nvidia-detect/nvidia9x-pciid.txt"
NV19DRV="`grep nvidia-19 ${PROGDIR}/settings/drivers.txt`"
NV18DRV="`grep nvidia-18 ${PROGDIR}/settings/drivers.txt`"
NV17DRV="`grep nvidia-17 ${PROGDIR}/settings/drivers.txt`"
NV9XDRV="`grep nvidia-9 ${PROGDIR}/settings/drivers.txt`"


ID="`${PROGDIR}/scripts/cardpciid.sh`"

# First check the 19 version
grep "^${ID}" ${NV19FILE} >/dev/null 2>/dev/null
if [ "$?" = "0" ]
then
echo "$NV19DRV"
exit 0
fi

# Second check the 18 version
grep "^${ID}" ${NV18FILE} >/dev/null 2>/dev/null
if [ "$?" = "0" ]
then
echo "$NV18DRV"
exit 0
fi

# Third check the 17 version
grep "^${ID}" ${NV17FILE} >/dev/null 2>/dev/null
if [ "$?" = "0" ]
then
echo "$NV17DRV"
exit 0
fi

# Now check the 9X version
grep "^${ID}" ${NV9XFILE} >/dev/null 2>/dev/null
if [ "$?" = "0" ]
then
echo "$NV9XDRV"
exit 0
fi

# No driver match, let tool know
echo "UNKNOWN"

Bueno si lo cotejáis con el original veréis que solo son añadidos así que mucho merito no tengo. Y si queréis añadir el nvidia20-pciid.txt también (simplemente es hacer otra copia de los anteriores y retocar el detect-nvidia.sh, añadiendo lo añadido como he hecho yo. Al fin y al cabo ya están por el driver 2XX.XXX.XXX).

Si por un casual tenéis una tarjeta que no se encuentra en las listas pues tendréis que buscaros el numerito ese es el problema y poneroslo en cualquiera de las listas nuevas o en las 3 en fin que si hay chapuzas es porque hay chapuceros: los de NVIDIA ;) ¡¡¡ Que nos tienen abandonaos !!! Y es que me parece que el mito Atheros-Nvidia en todo lo Unix se está desmoronando.

Y como siempre me despido cagándome en tó esto, es que si no es una cosa es otra ¡¡¡¡ Pero que masoca que soy !!! Que se me cae la baba y otra cosa :) Ximo

2 comentarios:

El Juguetionista dijo...

Hola, te queria hacer una pregunta.
Tengo una placa geforce 9300 gs, con windows xp y un monitor samsung de 24 pulgadas, de 1080, y no lo puedo ver a esa resolucion; en todas las anteriores si, pero en esa no. Y me sale un cartel que dice "su pantalla es compatible con hdcp pero su targeta grafica no lo es", pero segun quien me la vendio, si lo es.
Tenes idea que puede pasar.
Desde ya, muchas gracias.

:) Ximo dijo...

Ni idea de todas maneras yo no soy adivino con las resoluciones, mi consejo si no es un equipo muy moderno es que te cambies la fuente de la luz si es una torre y te pongas una con mas potencia suele ser el principal problema con tanto usb y otras cosas enchufadas de todas formas si hablas de PCBSD mira los nuevos drivers y la nueva 8.2 a mi se me ha arreglado es un decir porque ahora no me funciona con monitor externo :)