lunes, 31 de marzo de 2014

¿Cómo configuro mi adaptador de video SiS 771/671 PCIe VGA en Ubuntu?

Ya en el incunable Apuntes de Historia Militar (1932), un Capitán Juan Perón exponía sobre la Conducción, la naturaleza de la guerra, los conflictos modernos y sus características originales. En dicho tratado, también se versa sobre cómo proveer la máxima resolución de la que es posible mostrar el primitivo adaptador de video SiS 771/671 en Ubuntu.

Formado ya como Cadete, y siendo Subteniente del Regimiento 8, salimos de maniobras a las Islas del Ibicuy. Se presenta entonces como una gran ocasión para llevar al terreno los alistamientos que aprendímos en la Instrucción. En el Liceo los profesores origen Prusiano inculcaban a los cadetes las artes de la esgrima, estrategia, la táctica del movimiento, pero sin duda faltaba la práctica de conducción en el terreno, que es donde verdaderamente se hace el soldado. No son pocas las veces en las que los más atresados hombres de armas - aplomados y acostumbrados en el hacer militar - no distinguen entre lo verdaderamente útil y lo accesorio.

Es allí donde sabe más el infante caido del Chaco, el gurí correntino, los gauchos indios de la Pampa, que el engalanado Mayor de uniforme y espada. Yo he visto a la oficialidad alemana asombrarse pues la tropa lugareña se adviertía al pelotón  emboscado enemigo distinguiendo entre el terar fullero de esta ave autóctona, y su verdadero grito de alarma, propinado sólo cuando es verdadero el peligro.
En la práctica el oficial advertirá que es más difícil organizar una cocina para la tropa que tender la línea de defensa, y que ambos son importantes para la victoria final. El soldado ha de formarse para vivir simplemente, a reparar en si mismo, a sobrevivir sobre el terreno. Los medios de los que dispondrá serán las más de las veces, rudimentarios.

Existen también algunos equipos que integran video de manera rudimentaria en Linux. Entre estos se encuentra el hardware de Silicon Integrated Services (SiS). Este fabricante ha sido gorila, y hace tiempo ha decidido caer en la ignominia cesando el desarrollo de controladores para sistemas GNU. También han cesado de dar apoyo a quienes desean desarrollar controladores para nuestro Sistema Operativo.

Por tal motivo, siempre que sea posible debemos evitar el uso de dicho hardware, pues lo encontraremos profundamente limitado: experimentaremos incapacidad de poder utilizar las resoluciones mayores que el dispositivo supuestamente posee, la performance de refresco de video será paupérrima, carecerá de capacidad 3D, etc.

¿Pero cómo hacer para paliar estos defectos, si no tenemos mejor opción? Por ejemplo, en este caso nos referimos a una netbook "Bangho", munida de chipset de video SiS 771/671. Inicialmente parecería que todo está perdido, y normalmente Ubuntu sólo será capaz de hacer uso de bajas resoluciones de video, en el orden de los 640x480 pixels, o los 800x600 pixels. Esto no responde a la realidad del panel LCD (de 1024x768).

De la misma manera que los humildes soldados del interior, podremos improvisar para arreglarnos con poco en solucionar parcialmente el problema de video. Esto es, modicaremos mediante la Terminal la configuración del archivo xorg.conf para proveernos de resoluciones no asignadas.

Como primer medida, abrimos una Terminal con Ctrl+Alt+T e ingresamos el siguiente Comando de Organización:

lspci | grep -i vga

El sistema debería devolvernos el tipo de hardware de video que poseemos en el sistema. Sólo si el mismo es un "[SiS] 771/671 PCIe VGA" podremos continuar con este procedimiento.


Si es así, ingresamos el comando:

sudo gedit /etc/X11/xorg.conf

Esto abrirá el editor de texto peronista Gedit con el archivo de configuración xorg.conf. En el mismo, le pegaremos el siguiente texto:

# xorg.conf (X.Org X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the xorg.conf manual page.
# (Type "man xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# Note that some configuration settings that could be done previously
# in this file, now are automatically configured by the server and settings
# here are ignored.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
# sudo dpkg-reconfigure -phigh xserver-xorg

Section "Device"
Identifier "Configured Video Device"
EndSection

Section "Monitor"
Identifier "Configured Monitor"
Vendorname "Generic LCD Display"
modelname "LCD Panel 1024x768"
Horizsync 31.5-64.0
Vertrefresh 56.0 - 65.0
# Resolución a utilizar:

modeline "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync
Gamma 1.0
# Resoluciones que se pueden utilizar con

# la SiS 771/671:
# modeline "640x480@60" 25.2 640 656 752 800 480 490 492 525 -vsync -hsync
# modeline "800x600@56" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
# modeline "800x600@60" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
# modeline "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync
# modeline "1280x800_60.00" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
EndSection

Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
EndSection

Guardamos y salimos con Ctrl+o y Ctrl+q

Reiniciamos el equipo tipeando el comando:

sudo reboot

Tengamos en cuenta que la línea:

# Resolución a utilizar:
modeline "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync


Es la encargada de configurar la resolución principal a utilizar por el serividor gráfica del sistema. Las disponibles son las indicadas bajo el apartado:

# Resoluciones que se pueden utilizar con
# la SiS 771/671:
# modeline "640x480@60" (...)

Notarán que en este caso no utilizaremos la resolución máxima de 1280x800, simplemente porque el panel del monitor LCD de la netbook Banghó no alcanza tal resolución, sino que posee una resolución de 1024.768 pixels.

Sólo en el caso de emplear la adaptadora de video SiS 771/671 conectada a un monitor externo de resolución mayor, utilizaremos la resolución de 1280x800. Si tal fuese el caso, reemplazaríamos la línea

modeline "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync

con:

modeline "1280x800_60.00" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync


Tengamos en cuenta que esto sólo hace al uso de 2D, ya que el chipset SiS de este tipo es incapaz de mostrar gráficos 3D OpenGL con Linux.

14 comentarios:

  1. No me dió resultado. Probé con este xorg.conf y llego a 1280x768, aceptable, pero los videos se ven fulerones.
    ---
    Section "Device"
    Identifier "Generic Video Card"
    VendorName "Silicon Integrated Systems [SiS]"
    BoardName "771/671 PCIE VGA Display Adapter"
    Busid "PCI:1:0:0"
    Driver "vesa"
    Screen 0
    Option "UseFBDev" "true"
    Option "DPMS"
    Option "ShadowFB"
    Option "MaxXFBMem"
    VideoRam 262016
    Option "RenderAccel" "true"
    Option "AllowGLXWithComposite" "true"
    Option "backingstore" "true"
    Option "AddARGBGLXVisuals" "True"

    EndSection

    Section "Monitor"
    Identifier "Configured Monitor"
    Vendorname "Generic LCD Display"
    Modelname "LCD Panel 1280x800"
    HorizSync 20-107
    VertRefresh 50-185
    modeline "800x600@56" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
    modeline "800x600@60" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
    modeline "1280x768@60" 80.14 1280 1344 1480 1680 768 769 772 795 -hsync +vsync
    modeline "1280x720@60" 74.48 1280 1336 1472 1664 720 721 724 746 -hsync +vsync
    modeline "1280x800@60" 83.46 1280 1344 1480 1680 800 801 804 828 -hsync +vsync
    Gamma 1.0
    EndSection

    Section "Screen"
    Identifier "Default Screen"
    Monitor "Configured Monitor"
    Device "Configured Video Device"
    Defaultdepth 24
    SubSection "Display"
    Depth 24
    Virtual 1280 768
    Modes "1280x768@60" "1280x720@60" "800x600@60" "1280x800@60" "800x600@56"
    EndSubSection
    EndSection

    Section "Module"
    Load "dri"
    Load "dbe" # Double-Buffering Extension
    Load "v4l" # Video for Linux
    Load "extmod"
    Load "type1"
    Load "freetype"
    Load "glx" # 3D layer
    Load "GLcore"
    Load "i2c"
    Load "bitmap"
    Load "ddc"
    Load "int10"
    Load "vbe"
    Load "speedo"
    Load "record"
    EndSection

    Section "DRI"
    Mode 0666
    EndSection

    ResponderEliminar
    Respuestas
    1. Muy buena solución. Gracias

      Eliminar
    2. Muchas gracias, funciona perfecto esta solución para Linux Mint XFCE 18.1 x64. Perón, linux y mi vieja!

      Eliminar
  2. Me pasa exactamente lo mismo, la resolución va perfecta ahora. Pero los vídeos anda muuuuy lento.

    ResponderEliminar
    Respuestas
    1. Estimado Thor Odinson:

      Ha probado reproducir con diferentes softwares? Tenga en cuenta que el SiS no es una aceleradora de video, sino es un adaptador simple y desprovisto de los controladores adecuados.
      Como reproducia los videos anteriormente?
      Atte

      Juan Perón

      Eliminar
  3. los videos los solucione subiendo a 85 la tasa de refresco (lo que esta despues de @ en la resolucion).

    ResponderEliminar
  4. EXO Smart RX-850 Panel 1440x900

    Section "Device"
    Identifier "Generic Video Card"
    VendorName "Silicon Integrated Systems [SiS]"
    BoardName "771/671 PCIE VGA Display Adapter"
    Busid "PCI:1:0:0"
    Driver "vesa"
    Screen 0
    Option "UseFBDev" "true"
    Option "DPMS"
    Option "ShadowFB"
    Option "MaxXFBMem"
    VideoRam 262016
    Option "RenderAccel" "true"
    Option "AllowGLXWithComposite" "true"
    Option "backingstore" "true"
    Option "AddARGBGLXVisuals" "True"

    EndSection

    Section "Monitor"
    Identifier "Configured Monitor"
    Vendorname "Generic LCD Display"
    Modelname "LCD Panel 1280x800"
    HorizSync 20-107
    VertRefresh 50-185
    modeline "800x600@56" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
    modeline "800x600@60" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
    modeline "1280x768@60" 80.14 1280 1344 1480 1680 768 769 772 795 -hsync +vsync
    modeline "1280x720@60" 74.48 1280 1336 1472 1664 720 721 724 746 -hsync +vsync
    modeline "1280x800@85" 83.46 1280 1344 1480 1680 800 801 804 828 -hsync +vsync
    Modeline "1440x900@85" 106.47 1440 1520 1672 1904 900 901 904 932 -HSync +Vsync
    Gamma 1.0
    EndSection

    Section "Screen"
    Identifier "Default Screen"
    Monitor "Configured Monitor"
    Device "Configured Video Device"
    Defaultdepth 24
    SubSection "Display"
    Depth 24
    Virtual 1280 768
    Modes "1440x900@85" "1280x768@60" "1280x720@60" "800x600@60" "1280x800@60" "800x600@56"
    EndSubSection
    EndSection

    Section "Module"
    Load "dri"
    Load "dbe" # Double-Buffering Extension
    Load "v4l" # Video for Linux
    Load "extmod"
    Load "type1"
    Load "freetype"
    Load "glx" # 3D layer
    Load "GLcore"
    Load "i2c"
    Load "bitmap"
    Load "ddc"
    Load "int10"
    Load "vbe"
    Load "speedo"
    Load "record"
    EndSection

    Section "DRI"
    Mode 0666
    EndSection

    ResponderEliminar
  5. son unos genios compañeros, los videos van lentos pero la resolución va bien. Me costo 2 días encontrar esta solución, recién arranco con kubuntu 16. ¿lo recomiendan para novatos?

    ResponderEliminar
    Respuestas
    1. Estimado Anónimo:

      Lamentablemente el adaptador de video SiS es una solución muchas veces integrada, que no es el mejor bajo Ubuntu ni otros sistemas operativos. En el caso de ser posible recomendamos reemplazarlo por un adaptador tipo nVidia o AMD/ATI. En el caso de un equipo portátil no se puede cambiar el adaptador lamentablemente.

      Kubuntu 16 es bueno, tal vez no es absolutamente sencillo, pero no debería tener problemas. En particular utilizamos Ubuntu Mate 16.04LTS, pero las diferencias son solo estéticas (Mate es algo mas parecido al clásico Windows).

      Encontrará toda una serie de artículos para instalar el sistema operativo bajo las etiquetas "trasvasamiento generacional" y las que hacen referencia a las versiones de Ubuntu en particular.

      También puede aprender lo básico de la terminal y los comandos con la serie "Consola para principiantes".

      Atte.

      Juan Perón.

      Eliminar
    2. Lamentablemente tengo una notebook viejita, soy uno de los tantos desocupados de la época del macrismo, asi que cuando me recupere la cambio. Windows colapso y decidi inclinarme por la justicia social de ubunto, que trata mejor las compus populares.
      viva perón compañero

      Eliminar
  6. Genial! Funcionó de maravilla el cambio de resolución en notebook Bangho de mi viejo, pero tengo el mismo problema que Thor, los videos van muuuy lentos (ni hablar cuando intento verlos en pantalla completa).
    Pasé de Ubuntu 16.04 a Mate pero, al menos en este caso, no hay grandes diferencias.
    Necesito su ayuda Gral. para evitar que mi padre quiera volver a la dictatorial W.
    Qué me recomienda? Cómo puedo hacer para saber cuáles son los drivers que necesita?
    Y si tiene algún reproductor que funcione más fluido (para esta máquina) que el VLC, soy todo oídos.
    Muchísimas gracias por su paciente atención.
    Abrazo compañero!

    ResponderEliminar
    Respuestas
    1. Estimado Martín Zarta:

      Lamentablemente en este caso el chipset de video SiS 771 es substándard: no es acelerador de video en el sentido de la palabra, es un simple adaptador de video "a la antigua". Nunca anduvo bien en Ubuntu, en parte por sus limitadas especificaciones y en parte por la política especialmente agresiva de SiS con respecto a no liberar el código de sus controladores para Linux, por lo cual no es recomendable el uso salvo para aplicaciones muy limitadas (como interfaces de texto).

      SiS cumplió esa perrogativa desde hace muchos años (al menos 2007), y desde entonces ha sido muy limitado su uso, salvo en equipos de baja performance.

      En el caso de portátiles no hay mucho que hacer. Si su equipo utiliza memoria RAM de generación DDR2 significa que ya es viejo y no tiene demasiado sentido seguirlo usando durante mucho tiempo mas.

      En el caso de contar con un equipo de escritorio, no suele ser demasiado problema integrarle una placa de video de bajo costo.

      En el caso de los portátiles, si desea aprovechar el problema para cambiarlo, busque aquellos con adaptadores de video Intel (excelente soporte en Linux, con controladores libres, y de bajo costo), o nVidia. Actualmente también existen adaptadores ATI, que también tienen soporte relativamente bueno, a pesar de utilizar controladores privativos.

      Eliminar
    2. Muchas gracias por su respuesta.
      Y mientras tanto, me recomienda alguna alternativa al VLC que pueda funcionar un poco mejor?

      Eliminar
    3. Estimado Martín Zarta:

      Pruebe con Totem o con mpv.

      Atte.

      Juan Perón

      Eliminar