O núcleo de Linux 5.13 terá soporte inicial para as CPU M1 de Apple

Héctor Martin propuxo incluír no núcleo de Linux o primeiro conxunto de parches preparados polo proxecto Asahi Linux, que traballa na adaptación de Linux para ordenadores Mac equipados co chip Apple M1 ARM. Estes parches xa foron aprobados polo mantedor da rama Linux SoC e aceptados na base de código Linux-next, en base á cal se forma a funcionalidade do núcleo 5.13. Tecnicamente, Linus Torvalds podería bloquear a entrega dos cambios propostos, pero tal desenvolvemento considérase improbable.

Os parches inclúen soporte para compoñentes non GPU do SoC M1, como o controlador de interrupción, o temporizador, UART, SMP, funcións de E/S e MMIO. A enxeñaría inversa da GPU aínda non está completa; os parches proporcionan soporte de framebuffer e consola serie para a saída. Os dispositivos afirman ser compatibles co ordenador mini Apple Mac, que se usa como plataforma de referencia no proxecto Asahi Linux (dispoñíbeis instrucións de instalación detalladas).

Por separado, estase a desenvolver un adaptador de hardware aberto, que se recoñece como unha simplificación da conexión á consola mediante un porto serie e a depuración. Na súa forma actual, debido ao uso por parte de Apple de comandos USB-PD non estándar nos seus equipos, a forma máis sinxela de acceder á consola é conectarse a outro ordenador baseado no chip Apple M1 mediante un cable USB C. Un método máis complexo é crear un desacoplador baseado nun microcontrolador Arduino, chip FUSB30 e adaptador UART-TTL.

O proxecto tamén preparou o cargador de arranque m1n1, que permite cargar o núcleo de Linux e o ambiente mínimo do sistema en ordenadores Mac cunha CPU Apple M1. En ordenadores cunha CPU M1, Apple normalmente permite cargar núcleos que non estean asinados dixitalmente sen necesidade de realizar un jailbreak. Esta característica permite aos desenvolvedores experimentar con novos núcleos de XNU, pero xorden dificultades ao intentar arrincar outros sistemas, xa que Apple utiliza o seu propio protocolo de inicio e un formato de árbore de dispositivos diferente. O cargador de arranque m1n1 proposto polo proxecto Asahi Linux actúa como unha capa que permite utilizar a árbore de dispositivos estándar e o protocolo de arranque estándar usado no núcleo de Linux para ARM64. No futuro, m1n1 planea engadir a posibilidade de chamar a U-Boot e GRUB para organizar un proceso de arranque típico similar ao usado noutras plataformas ARM64.

Fonte: opennet.ru

Engadir un comentario