Lo hice y lo entendí

El blog de Vicente Navarro
10 abr

VIA anuncia una iniciativa para mejorar los drivers de Linux

Hoy los poseedores de hardware VIA nos hemos encontrado con una muy buena noticia en los foros de tkArena, y es que VIA anunció ayer en la Linux Foundation Collaboration Summit una iniciativa para el desarrollo de drivers de código abierto. VIA proporcionará especificaciones técnicas, código fuente y datos sobre sus últimos productos, así como un nuevo sitio web (aún sin servicio) para gestionar todo esto: linux.via.com.tw. La iniciativa comenzará con los chipsets CN700, CX700/M, CN896 y VX800 y pretende que lleguen a funcionen perfectamente en Linux en 2D, 3D y aceleración de vídeo. La nota de prensa oficial: VIA Announces Strategic Open Source Driver Development Initiative.

Los habituales de este blog sabrán que tengo un par de placas VIA EPIA (una SP8000E y una EX10000EG) y que en diferentes entradas he tratado de explicar mi experiencia con ellas en Linux:

A menudo me preguntan que qué tal van estas placas en Linux y la respuesta rápida y directa, escondida entre los centenares de líneas de las entradas anteriores es: Las placas VIA EPIA (y podemos generalizar hablando de cualquier placa basada en un procesador y en un chipset de VIA) funcionan excepcionalmente bien como servidores domésticos de bajo consumo y nulo ruido y también funcionan razonablemente bien para tareas de escritorio 2D (navegar, correo, mensajería instantánea, ofimática, etc.), aunque según el driver y el chipset, también podemos encontrarnos con notorios cuelgues e inestabilidades del driver.

Donde los sistemas basados en VIA (procesador y chipset con procesador gráfico integrado de VIA) pueden fallar más estrepitosamente en el estado actual es en los gráficos 3D y en la reproducción de vídeo acelerado. El driver 3D de código abierto que podemos usar en la actualidad es el del proyecto DRI, pero tal y como nos explican en el wiki de openChrome, el driver 3D está actualmente sin mantener. En lo que respecta a la reproducción de vídeo acelerada por hardware, el problema es que el proyecto openChrome aún no soporta la aceleración de MPEG2 en varios chipsets (los más recientes), y la MPEG4, en ninguno. Además, varios de los chipsets nunca podrán soportar HD, ya que están limitados a resoluciones de 1024×1024 pixels.

Y esto en lo que respecta a drivers libres, iniciativa que lidera con gran distancia el proyecto openChrome, aunque con importantes problemas de recursos. Por ejemplo, esto es lo que Xavier, uno de los desarrolladores, comenta en la lista de correo de openChrome en un hilo sobre cuándo se soportará la aceleración XvMC en los chipsets CX700; su respuesta lo resume todo, les falta tanto información como mano de obra:

> Just stumbled upon this ticket http://www.openchrome.org/trac/ticket/4
> “Add xvmc-mpeg4 support”.
> It was assigned 2 years ago but nothing seems to have happened. Can we
> please get a status update on this issue from the developers? Is this a
> problem with lack of development resources or missing VIA specs?

Both, there’s no specs hence the time needed to implement that is vastly
raised. It would need to be worked out by trial and error and reverse
engineering. There’s better way to use the few development power
available. Beside of that, it’s still unclear if the mpeg4 acceleration
available would be of real use or not (only h.263, no h.264). Even that
is unclear without documentation.

Respecto a los drivers oficiales de VIA, un buen consejo es que no vale la pena ni probarlos. Además de ser difíciles de instalar e inestables (ver la entrada de los gráficos en la EX10000EG), para sacar provecho de ellos, hay que ejecutar las aplicaciones como root. Realmente, un dechado de virtudes. Para lo único que sirven es para que la gente de openChrome intente entender cómo funcionan estos chipsets. De nuevo, un comentario de Xavier en la lista de correo:

> FWIW, it would be great if the openchrome project could cannibalize
> on what useful material there is in the X “driver” from VIA. I say
> this because while I may be “forced” to use the VIA drivers to run
> my DVI 1280×1024 on the short term, I would sleep much better if I
> was using openchrome’s stuff instead.

The openchrome project, and the unichrome project before it, is based on
an early VIA code drop and are ‘cannibalizing’ later code drops, but
this is not as easy as it may soon for various reasons, and above all,
it takes time and there’s not a lot of manpower in openchrome currently.

Por tanto, el apoyo de VIA para la creación de drivers Linux recién anunciado, que aún está por ver, es, en principio, una excelente noticia. Desde que en los foros de tkArena surgió la iniciativa de crear la “Decent VIA graphics drivers for Linux Petition” yo he sido un ferviente impulsor de la misma. En una entrada del pasado día 23 de Enero la traduje (Petición para que VIA tome una postura clara respecto a Linux) y en sucesivas entradas en mi bitácora de Barrapunto he ido contando las novedades:

Por tanto, me congratulo de que todo esto aparentemente haya llegado a un buen fin, que está por concretar con la teórica futura llegada de drivers realmente buenos para el hardware de VIA.

Sin embargo, me queda un sabor agridulce.

Y es que durante muchos años las VIA EPIA han sido un producto muy dirigido a ciertos sectores del mercado muy concretos (sistemas empotrados para la industria, kioskos, etc.) y los usuarios domésticos/entusiastas que nos decidíamos por esta tecnología y encima con Linux, éramos sólo una minoría. Como los chipsets de VIA están muy bien soportados en todos los aspectos (excepto en el apartado gráfico) por Linux, seguían siendo una excelente elección para sistemas empotrados que no necesitaban el apartado multimedia para nada, y en el caso de los kioskos, aunque la tendencia está cambiando, muchos son Windows. Y nosotros, la minoría gritona de frikis del Linux, mientras tanto éramos despreciados por parte de VIA.

Por eso, es lamentable que hasta que el mercado de los procesadores de muy bajo consumo no ha madurado y no ha llegado la competencia con procesadores como el Intel Atom, el Intel A100, el Intel Celeron 215 (con arquitectura Core) o los AMD Geode, así como con placas tanto o más buenas que las VIA EPIA como la Intel D210GLY, no ha ocurrido que VIA se haya dado cuenta de que sólo con tener un buen producto no llegan las ventas, sino que es necesario un buen soporte y un buen trato a los clientes por detrás, soporte que ha sido nulo por parte de VIA. No son pocos los casos que he leído en los foros de VIA de personas que estaban preparando un proyecto de centenares de sistemas empotrados y que finalmente han tenido cambiar de fabricante porque nadie les ayudaba a resolver sus pequeños problemas.

A este mercado es al que va a llegar el nuevo procesador de VIA, el VIA Isaiah, teóricamente mucho más potente que los actuales VIA C7 para entrar de lleno en las nuevas batallas que se están librando, la de los UMPC, y la de de los sistemas sobremesa ecológicos y de muy bajo coste. Como ejemplo de lo primero tenemos el recientemente presentado HP 2133 Mini-Note, con procesador VIA C7, chipset de VIA y opción para pedirlo con SUSE Linux Enterprise Desktop 10. Como ejemplo de lo segundo, tenemos el famoso Everex Green gPC, notorio por costar tan sólo 199$ en Wal-Mart. También lleva procesador y chipset de VIA y viene preinstalado con gOS, una variante de Ubuntu muy orientada al uso de aplicaciones de Google.

En el estado actual de los drivers, hacía tiempo que yo me preguntaba: ¿Qué nivel de soporte se atreven a ofrecer esos fabricantes de cara al procesador gráfico? ¿Te aseguran que las aplicaciones 2D funcionan más o menos bien sin muchos cuelgues y no intentes buscar mucho más? Al menos el gPC lleva un chipset CN700 que el proyecto openChrome soporta razonablemente para reproducción de vídeo MPEG2 acelerado pero es que los chipsets con gráficos Chrome 9 (como el que lleva el HP 2133) ni siquiera eso.

Y es por eso que estoy convencido de que VIA hace esto por absoluta necesidad si quiere sobrevivir en el mercado. Con los nuevos procesadores de Intel de bajo consumo y los que tienen que llegar, VIA tiene poco que hacer en sistemas equipados con Windows, ya que el consumidor elegirá mayoritariamente Intel, así que sólo le queda tratar de competir en el ultra bajo coste, donde Linux es el aliado por necesidad.

Por eso digo: Estoy convencido de que VIA va a trabajar intensamente para conseguir buenos drivers de Linux para sus productos, ya que en realidad es algo que ellos necesitan deseperadamente ahora mismo para vender su producto.

Pero al mismo tiempo digo: Esto no ha sido una victoria de los usuarios de Linux, de las más de 4400 personas que pedíamos desesperadamente ayuda de VIA para que su hardware fuera mínimamente usable. Era la única salida de VIA para sobrevivir. Si acaso, como mucho, nuestra petición ha servido para que algún ejecutivo relacionara la falta de drivers de esa cosa de geeks que se llama Linux con una potencial pérdida de ventas.

¡Nos vemos por aquí en unos meses para hablar de cómo se ha portado VIA!

Actualización 19/6/08:

Desde que Phoronix anunció esta iniciativa:

han estado siguiendo muy críticamente la promesa, y la verdad es que encontramos luces y sombras:

La verdad es que no se lo están tomando muy en serio, algo increíble viendo la avalancha de nuevos ultraportátiles con procesadores de VIA preinstalados con Linux. En linux.via.com.tw, más de dos meses después del anuncio, sólo tenemos drivers binarios, código fuente del driver de framebuffer y unos parches del kernel. Ni documentación, ni las fuentes del driver de X.org. Y lo que podemos leer en las listas de distribución no anima (VIA evaluando qué hacer con con el grupo de Linux, VIA no dispuesta a liberar el XvMC por temas de patentes y licencias). Verdaderamente desalentador.

En cualquier caso, démosles algo más de tiempo, que la esperanza es lo último que se pierde y yo estoy convencido de que los que más necesitan un buen soporte de Linux son la propia gente de VIA. ¿Qué le dirán a HP cuando el HP Mininote 2133 tenga serios problemas con la SUSE Linux Enterprise Desktop 10 que trae preinstalado en ciertas configuraciones?

Actualización 2/9/08: VIA libera un driver abierto para Xorg

Diversos medios (Slashdot, lwn.net, The Inquirer) se han hecho eco estos días del anuncio de Harald Welte, al que recientemente fichó VIA, de la liberación por parte de VIA (en linux.via.com.tw) de un nuevo driver abierto para los procesadores gráficos integrados en sus chipsets. El driver no soporta 3D, aceleración de vídeo, ni la salida de TV de momento, por lo que no supone grandes mejoras frente al actual driver del proyecto openChrome.

Aunque la noticia es, en principio, buena, hay que cogerla con pinzas teniendo en cuenta que un driver para procesadores gráficos de VIA medio abierto, medio cerrado ya existía desde hace muchos años, y que parece que lo que han liberado ahora, nada menos que 5 meses después del primer anuncio, es apenas un lavado de cara de aquel driver añadiendo soporte para nuevos chipsets y eliminando el código cerrado que era, precisamente, el que más necesitaba el proyecto openChrome para poder completar el soporte de muchos de estos chipsets. Se supone y se espera que esto mejore en los próximos meses, pero me temo que de momento, esto aún no es ningún notición. Esperemos que lo sea próximamente: VIA va por el buen camino, aunque muy despacio.

Actualización 17/9/08: ¿Tendremos algún día un driver abierto de VIA completo?

Actualización 24/11/08: VIA se integra en el desarrollo de openChrome y libera más documentación:

:wq

Entradas relacionadas

16 Comentarios a “VIA anuncia una iniciativa para mejorar los drivers de Linux”

Trackbacks y pingbacks:

Tema LHYLE09, creado por Vicente Navarro