Durante más de un año, Intel ha estado trabajando en el desarrollo del controlador de gráficos del kernel Xe Linux como un controlador moderno de Direct Rendering Manager para Gen12 y gráficos integrados/discretos más nuevos. Para hardware reciente, esto es para reemplazar el uso del controlador de kernel i915 existente. Los desarrolladores de código abierto de Intel continúan trabajando para alcanzar el hito de poder enviar este controlador para la integración principal en el kernel de Linux ascendente.
Con el controlador de gráficos del kernel Xe, los ingenieros de Intel involucrados han podido adoptar un nuevo enfoque de diseño en comparación con el controlador del kernel i915 que se ha desarrollado orgánicamente durante las últimas dos décadas. Con el controlador Xe, solo son compatibles con Gen12 y posteriores, por lo que no necesitan preocuparse por las generaciones anteriores de hardware de gráficos Intel, pueden concentrarse en hacer uso de las características modernas del kernel y con su API de espacio de usuario no necesitan Preocúpese por la retrocompatibilidad con las limitaciones/desafíos existentes de i915 uAPI.
Esta semana, los ingenieros de Intel Linux publicaron su último plan de combinación para el controlador Xe.
Por el momento, el controlador Xe se considera funcional y con soporte”experimental”para Tiger Lake y más reciente. Una vez que el controlador se cargue en el kernel, el plan es mantener la compatibilidad con Gen12+ aún en i915. El controlador Xe se habilitará a través del parámetro del módulo force_probe, mientras que de manera similar se puede deshabilitar la carga del controlador i915 para una GPU determinada. Por lo tanto, para algunos lanzamientos o el tiempo que tarde el controlador Xe en probarse a sí mismo, los usuarios pueden cambiar a Xe manualmente para ayudar a probar el soporte.
De hecho, el plan de fusión señala que para hardware Intel lanzado actualmente, i915 puede seguir siendo el predeterminado indefinidamente:”Para evitar regresiones en el espacio del usuario, i915 seguirá siendo compatible con todas las plataformas actuales que ya están fuera de esta protección. El soporte de Xe será para siempre experimental y dependiente de la uso de force_probe para estas plataformas”.
Entre los objetivos que tienen los desarrolladores de controladores antes de la fusión de Xe está clasificar los cambios del programador de DRM, los cambios de asignación de direcciones virtuales de GPU para subir, DRM_VM_BIND, VM_BIND asíncrono, integración de puntero de usuario”userptr”y compatibilidad con VM_BIND, y manejar mejor las cargas de trabajo informáticas de ejecución prolongada. Los desarrolladores también quieren una mejor integración/uso compartido del código de visualización con el controlador i915 y la infraestructura devcoredump para informar estados de error.
Simultáneamente, los ingenieros de código abierto de Intel han agregado compatibilidad con el controlador del kernel Xe a sus controladores Mesa, así como a su pila Compute-Runtime para OpenCL y Level Zero. Se espera que la compatibilidad del controlador Intel ANV Vulkan e Iris Gallium3D/OpenGL con Xe se equilibre para Mesa 23.2, de modo que una vez que este controlador esté realmente integrado, el soporte del espacio del usuario esté listo y en su lugar.
Aquellos interesados en los últimos esfuerzos y planes sobre la actualización del controlador Xe pueden consultar su último plan de fusión. Con suerte, lograremos ver el controlador Xe integrado en el kernel de Linux, en forma experimental, más adelante este año calendario.