Lanzamento demostrado do entorno Linux con GNOME en dispositivos con chip Apple M1

A iniciativa de implementar soporte para Linux para o chip Apple M1, promovida polos proxectos Asahi Linux e Corellium, chegou ao punto de que é posible executar o escritorio GNOME nun entorno Linux que se executa nun sistema co chip Apple M1. A saída da pantalla organízase mediante un framebuffer e ofrécese soporte para OpenGL mediante o rasterizador de software LLVMPipe. O seguinte paso será habilitar o coprocesador de pantalla para producir unha resolución de ata 4K, cuxos controladores xa foron de enxeñería inversa.

O proxecto Asahi conseguiu soporte inicial para compoñentes non GPU do SoC M1 no núcleo principal de Linux. No ambiente Linux demostrado, ademais das capacidades do núcleo estándar, utilizáronse varios parches adicionais relacionados con PCIe, o controlador pinctrl para o bus interno e o controlador de pantalla. Estes engadidos fixeron posible proporcionar saída á pantalla e acadar a funcionalidade USB e Ethernet. A aceleración gráfica aínda non se utiliza.

Curiosamente, para realizar enxeñaría inversa do SoC M1, o proxecto Asahi, en lugar de tentar desmontar os controladores de macOS, implementou un hipervisor que se executa no nivel entre macOS e o chip M1 e que intercepta e rexistra de forma transparente todas as operacións no chip. Unha das características do SoC M1 que dificulta a implementación do soporte para o chip en sistemas operativos de terceiros é a adición dun coprocesador ao controlador de pantalla (DCP). A metade da funcionalidade do controlador de pantalla de macOS transfírese ao lado do coprocesador especificado, que chama ás funcións preparadas do coprocesador a través dunha interface RPC especial.

Os entusiastas xa analizaron suficientes chamadas a esta interface RPC para usar o coprocesador para a saída da pantalla, así como para controlar o cursor de hardware e realizar operacións de composición e escalado. O problema é que a interface RPC depende do firmware e cambia con cada versión de macOS, polo que Asahi Linux planea admitir só certas versións de firmware. En primeiro lugar, ofrecerase soporte para o firmware enviado con macOS 12 "Monterey". Non é posible descargar a versión de firmware necesaria, xa que o firmware é instalado por iBoot na fase previa á transferencia do control ao sistema operativo e coa verificación mediante unha sinatura dixital.

Lanzamento demostrado do entorno Linux con GNOME en dispositivos con chip Apple M1
Lanzamento demostrado do entorno Linux con GNOME en dispositivos con chip Apple M1


Fonte: opennet.ru

Engadir un comentario