Linux kernel 5.13 zal initiële ondersteuning bieden voor Apple M1 CPU's

Hector Martin stelde voor om in de Linux-kernel de eerste set patches op te nemen die zijn voorbereid door het Asahi Linux-project, dat werkt aan het aanpassen van Linux voor Mac-computers die zijn uitgerust met de Apple M1 ARM-chip. Deze patches zijn al goedgekeurd door de beheerder van de Linux SoC-tak en geaccepteerd in de Linux-next codebase, op basis waarvan de functionaliteit van de 5.13-kernel wordt gevormd. Technisch gezien zou Linus Torvalds de uitvoering van de voorgestelde wijzigingen kunnen blokkeren, maar een dergelijke ontwikkeling wordt onwaarschijnlijk geacht.

De patches bieden ondersteuning voor niet-GPU-componenten van de M1 SoC, zoals de interruptcontroller, timer, UART, SMP, I/O-functies en MMIO. GPU-reverse-engineering is nog niet voltooid; patches bieden framebuffer- en seriële console-ondersteuning voor uitvoer. De apparaten beweren de Apple Mac mini-computer te ondersteunen, die wordt gebruikt als referentieplatform in het Asahi Linux-project (gedetailleerde installatie-instructies zijn beschikbaar).

Afzonderlijk wordt er een open hardware-adapter ontwikkeld, waarvan wordt erkend dat deze de verbinding met de console via een seriële poort en foutopsporing vereenvoudigt. In zijn huidige vorm is de eenvoudigste manier om toegang te krijgen tot de console, vanwege Apple's gebruik van niet-standaard USB-PD-opdrachten in zijn apparatuur, door verbinding te maken met een andere computer op basis van de Apple M1-chip met behulp van een USB C-kabel. is het creëren van een ontkoppelaar op basis van een Arduino-microcontroller, FUSB30-chip en UART-TTL-adapter.

Het project heeft ook de m1n1-bootloader voorbereid, die het mogelijk maakt om de Linux-kernel en een minimale systeemomgeving te laden op Mac-computers met een Apple M1 CPU. Op computers met een M1 CPU staat Apple normaal gesproken het laden van kernels toe die niet digitaal ondertekend zijn, zonder dat een jailbreak nodig is. Met deze functie kunnen ontwikkelaars experimenteren met nieuwe XNU-kernels, maar er ontstaan ​​problemen bij het opstarten van andere systemen, omdat Apple zijn eigen opstartprotocol en een ander Device Tree-formaat gebruikt. De door het Asahi Linux-project voorgestelde m1n1-bootloader fungeert als een laag die het mogelijk maakt om de standaard Device Tree en het standaard opstartprotocol dat in de Linux-kernel voor ARM64 wordt gebruikt, te gebruiken. In de toekomst is m1n1 van plan om de mogelijkheid toe te voegen om U-Boot en GRUB aan te roepen om een ​​typisch opstartproces te organiseren dat vergelijkbaar is met dat van andere ARM64-platforms.

Bron: opennet.ru

Voeg een reactie