Linux 7.4: Asahi-Entwickler reichen erste Unterstützung für Apple M4 ein

Ein WFI-Fix ermöglicht Linux mit allen M4-Kernen; Grafik-, Audio- und Kommunikationstreiber fehlen weiterhin.

•

Der Asahi-Linux-Entwickler Sven Peter hat Pull Requests für eine grundlegende Unterstützung des Apple-M4-Device-Trees sowie des MacBook Neo eingereicht. Die Änderungen sind bereit für das Merge-Window von Linux 7.4, das in diesem Monat ansteht.

Wie Phoronix.com, masto.ai und wesearch.press berichteten, umfassen die Pull Requests initiale Device Trees für Apple-M4- und A18-Pro-Systeme. Nach dem Release reicht die Unterstützung zunächst aus, um den Kernel auf diesen Geräten zu installieren – mehr nicht, wie AppleInsider ergänzte.

WFI-Problem als Kernhindernis

Hinter den Kulissen lag das größte Hindernis für einen funktionierenden Boot-Vorgang jedoch in einem fundamentalen Problem der M4-CPU selbst. Die WFI-Instruktion („Wait For Interrupt“) des M4 löscht sämtliche Register und verletzt damit die ARM64-Spezifikation, wie aus einem Bericht von zeli.app hervorgeht. Dieses Verhalten sorgte dafür, dass der Kernel beim Versuch, mehrere CPU-Kerne gleichzeitig zu nutzen, ins Stocken geriet oder abstürzte.

Die Lösung bestand darin, jede WFI-Instruktion durch eine NOP-Instruktion („No Operation“) zu ersetzen. Mit diesem Kniff bootete Linux erstmals mit allen Kernen des M4. Der Fix ist mittlerweile sowohl in den Mainline-Linux-Kernel als auch in m1n1, den von Asahi Linux genutzten Bootloader-Schichten, eingeflossen.

Laut zeli.app funktioniert die Korrektur darüber hinaus auch auf M4 Pro, M4 Max und M5 – die Register-Problematik betrifft demnach die gesamte aktuelle Prozessorgeneration von Apple, nicht nur die Basisversion des M4.

Anzeige

Wer sich für die Installation alternativer Betriebssysteme auf moderner Hardware interessiert, kann Linux jetzt risikofrei und ohne Installation direkt von einem USB-Stick ausprobieren. Dieser kostenlose Ratgeber zeigt Ihnen Schritt für Schritt, wie Sie einen eigenen Boot-Stick erstellen und Linux sicher testen. Linux einfach vom USB-Stick testen – jetzt Gratis-Report sichern

Weitere Baustellen auf dem Weg zur Shell

Dass der bloße Boot-Vorgang keineswegs trivial war, zeigt ein Entwicklerbericht von yuka.dev, über den wiredguide.com informierte. Demnach gelang es, Linux auf einem im November 2024 gekauften M4 Mac mini bis zu einer funktionierenden Shell zu bringen, nachdem mehrere Probleme bei Boot, Memory-Mapping und CPU-Kernen behoben worden waren.

Der M4 verlangt zusätzlich den sogenannten Secure Page Table Monitor (SPTM), der den macOS-XNU-Kernel absichert. Für den direkten Linux-Boot musste die Boot-Sicherheit entsprechend abgeschwächt werden, m1n1 wurde dafür als Custom-Boot-Objekt über die macOS-Recovery installiert.

Laut dem Bericht wurde zudem GXF deaktiviert, während das Schreiben des CPU-Reset-Vektor-Registers RVBAR zunächst einen Absturz verursachte. Ein fehlendes Identity-Mapping für MMU-I/O nach Aktivierung der Memory Management Unit wurde korrigiert, und das Auskommentieren eines Schreibzugriffs auf ein Virtualisierungs-CPU-Register ermöglichte schließlich den Zugriff auf die Shell.

Neuere iBoot-Versionen haben das betroffene Register inzwischen entsperrt. Offen blieben laut dem Bericht zu diesem Zeitpunkt noch ein Crash bei sekundären CPU-Kernen sowie die WFI-Problematik.

Ein weiterer, unabhängig dokumentierter Debugging-Prozess, über den elsolitario.org berichtete, bestätigt ähnliche Hürden: Auch hier bootete Asahi Linux auf einem Mac mini M4 trotz der SPTM-Sperre, die ab M4 den m1n1-Hypervisor blockiert. Die Lösung bestand darin, RVBAR nicht zu überschreiben, da es bereits die korrekte Adresse enthielt, sowie die GXF-Initialisierung zu überspringen.

Beim Debugging per einzelnem printf-Aufruf in der Datei arch/arm64/kernel/head.S zeigte sich zudem, dass der Kernel stumm blieb, weil der MMIO-UART nach MMU-Aktivierung nicht gemappt war – ein 1:1-Mapping behob dies. Ein weiterer Hänger trat an einem AIC-Register auf, das später von iBoot freigegeben wurde, während ein fehlender Eintrag im Device Tree die serielle Konsole stummschaltete.

Unterstützte Geräte und offene Fragen

Die initialen Device Trees decken laut pasqualepillitteri.it unter anderem das 14″-MacBook-Pro von 2024, den 24″-iMac in den Varianten mit zwei oder vier USB-C-Anschlüssen, die MacBook-Air-Modelle mit 13 und 15 Zoll aus 2025 sowie den Mac mini von 2024 ab. Hinzu kommt das MacBook Neo mit A18-Pro-Chip.

Die Device Trees beschreiben CPU-Kerne, Interrupt-Controller, Power-States, Watchdog, serielle Schnittstellen, Pin-Controller sowie I2C und den Boot-Framebuffer; beim MacBook Neo fällt der Funktionsumfang etwas geringer aus.

Anzeige

Der reibungslose Betrieb eines Systems hängt oft von den richtigen Kniffen ab – das gilt für Linux-Experimente genauso wie für die tägliche Arbeit am Mac. Ein kostenloser PDF-Ratgeber verrät Ihnen die 19 wichtigsten Tastenkombinationen, mit denen Sie an jedem Apple-Rechner sofort spürbar Zeit sparen. Die 19 besten Mac-Shortcuts kostenlos herunterladen

Unklar bleibt laut einem Bericht von thedailytechfeed.com, ob der M4-Support tatsächlich bereits mit Linux 7.4 landet oder erst in einer späteren Version zusammengeführt wird. Einen Zeitplan für die Aufnahme von M4 und M5 in den Asahi-Installer gibt es bislang nicht.

GPU-, Audio- und Kommunikationtreiber sind nach wie vor nicht aktiviert, weshalb weitere Entwicklungsarbeit nötig bleibt, bevor sich das Betriebssystem auf der neuen Hardware praktisch nutzen lässt.