Mesa 21.2 llega con soporte inicial para Apple M1, mejoras para Panfrost, Vulkan y mas
Después de tres meses de desarrollo se ha dado a conocer la liberación de la nueva versión de la nueva rama de Mesa 21.2 la cual tiene un estado experimental y que después de la estabilización final del código, se lanzará la versión estable 21.2.1.
Esta nueva versión de Mesa 21.2 proporciona compatibilidad completa con OpenGL 4.6 para los controladores 965, iris, radeonsi, zink y llvmpipe, además de que el soporte para OpenGL 4.5 está disponible para AMD r600 y NVIDIA nvc0.
Principales novedades de Mesa 21.2
En Mesa 21.2 podremos encontrar que se incluye el controlador asahi OpenGL con soporte inicial para la GPU suministrada en los chips Apple M1. El controlador utiliza la interfaz Gallium y es compatible con la mayoría de las funciones de OpenGL 2.1 y OpenGL ES 2.0, pero aún no se puede utilizar para ejecutar la mayoría de los juegos.
Otra de las novedades es la inclusión del controlador PanVk (desarrollado por empleados de Collabora) que proporciona soporte para gráficos API Vulkan GPU ARM Mali Midgard y Bifrost y se posiciona como una continuación del proyecto Panfrost, que brinda soporte para OpenGL.
Además, en esta nueva versión de Mesa 21.2 Panfrost para Midgard y Bifrost es compatible con OpenGL ES 3.1, aun que se menciona que se tienen planes para aumentar el rendimiento en chips Bifrost y soporte para GPU basadas en la arquitectura Valhall (Mali G77 y más reciente).
En el controlador Zink se ha trabajado para que pueda admitir las extensiones OpenGL: GL_ARB_sample_locations , GL_ARB_sparse_buffer , GL_ARB_shader_group_vote , GL_ARB_texture y GL_filter_minlock . Se agregaron modificadores de formato DRM.
Mientras que en el controlador Vulkan ANV (Intel) y el controlador OpenGL Iris, en esta nueva version se ha realizado un trabajo preparatorio para admitir las próximas tarjetas gráficas Intel Xe-HPG (DG2). Esto incluye capacidades iniciales de trazado de rayos y compatibilidad con sombreadores de trazado de rayos.
Por la parte del controlador lavapipe, ahora se admite el modo «wideLines» (proporciona soporte para líneas con un ancho mayor que 1.0).
Tambien se menciona que OpenGL 4.3 ya tiene compatibilidad con virgl y la compatibilidad con Vulkan 1.2 está disponible para tarjetas Intel y AMD, así como en el modo emulador (vn), la compatibilidad con Vulkan 1.1 está disponible para las GPU Qualcomm y el rasterizador de software lavapipe y Vulkan 1.0 está disponible para la GPU Broadcom VideoCore VI (Raspberry Pi 4).
De los demás cambios que se destacan de esta nueva versión:
- El controlador Nouveau nv50 para las GPU NVIDIA GT21x (GeForce GT 2×0) incluye compatibilidad con OpenGL ES 3.1.
- El controlador Vulkan TURNIP y el controlador Freedreno OpenGL que se están desarrollando para las GPU
- Qualcomm Adreno brindan soporte inicial para la GPU Adreno a6xx gen4 (a660, a635).
- Se implementó la capacidad de construir el controlador RADV en la plataforma Windows usando el compilador MSVC.
- Soporte implementado para detección dinámica y carga de backends alternativos de GBM (Generic Buffer Manager). El cambio tiene como objetivo mejorar el soporte de Wayland en sistemas con controladores NVIDIA.
- Los controladores Vulkan RADV (AMD), ANV (Intel) y lavapipe agregaron soporte para extensiones
Finalmente si estás interesado en conocer más al respecto sobre esta nueva versión de los controladores Mesa 21.1.0, puedes consultar los detalles en el siguiente enlace.
¿Cómo instalar los drivers de video Mesa en Linux?
Los paquetes de Mesa se encuentran en todas las distribuciones de Linux, por lo que su instalación puede realizarse ya sea descargando y compilando el código fuente (toda la información al respecto aquí) o de una forma relativamente sencilla, la cual depende de la disponibilidad dentro de los canales oficiales de tu distribución o de terceros.
Para los que son usuarios de Ubuntu, Linux Mint y derivados pueden añadir el siguiente repositorio en donde los controladores son actualizados de manera rápida.
sudo add-apt-repository ppa:kisak/kisak-mesa -y
Ahora vamos a actualizar nuestro listado de paquetes y repositorios con:
sudo apt update
Y finalmente podemos instalar los drivers con:
sudo apt upgrade
Para el caso de los que son usuarios de Arch Linux y derivados estos los instalamos con el siguiente comando:
sudo pacman -S mesa mesa-demos mesa-libgl lib32-mesa lib32-mesa-libgl
Para quienes sean usuarios de Fedora 32 pueden utilizar este repositorio, por lo que deben de habilitar corp con:
sudo dnf copr enable grigorig/mesa-stable sudo dnf update
Finalmente, para los que son usuarios de openSUSE, pueden instalar o actualizar tecleando:
sudo zypper in mesa