Contexte et avancées majeures

Le rapport de progression d’Asahi Linux pour la version 7.3 décrit une série d’ajouts significatifs au support du matériel Apple Silicon. La version Linux 7.3, publiée récemment, constitue la base sur laquelle les équipes Asahi ont intégré de nouveaux pilotes et amélioré la prise en charge des SoC M3, M4 et M5. Le texte indique que les contributions upstream représentent plusieurs milliers de lignes de code, ce qui montre l’ampleur du travail d’ingénierie requis pour aligner le noyau Linux avec les spécificités propriétaires d’Apple.

Mise à jour des pilotes et upstreaming

Deux pilotes majeurs ont été soumis en amont : macaudio, qui nécessite environ 3100 lignes de modifications du sous‑système ALSA et du Device Tree, et avd, dont le patchset compte 13000 lignes. Le driver macaudio a dû gérer des variantes d’amplificateurs de haut‑parleur et d’écouteurs spécifiques à Apple, imposant des changements profonds dans la pile audio du noyau. Le driver avd, quant à lui, a atteint la liste d’attente du noyau en seulement trois mois, un délai record pour un composant SoC, ce qui suggère une transition future vers un modèle « upstream‑first ». En parallèle, des Device Trees initiaux pour les modèles M4 Pro, M4 Max et M5 ont été ajoutés, permettant le démarrage en mode TTY et ouvrant la voie à des activations supplémentaires.

Support M3 et virtualisation avancée

Le support du processeur M3, initialement limité à un drapeau EXPERT, est désormais disponible sans restriction, indiquant une stabilité suffisante pour les utilisateurs finaux. Parmi les améliorations, l’activation du DCP (Display Control Processor) améliore les performances graphiques, la consommation d’énergie et rend possible le mode veille ainsi que l’utilisation de la zone autour du notch sur les MacBook. Le projet m1n1 a également franchi une étape majeure : il peut désormais exécuter trois machines virtuelles en EL1, incluant le Secure Kernel et les Exclaves nécessaires à la virtualisation du protocole SPTM et du système macOS sur les séries M4 et M5. Cette capacité ouvre la porte à la rétro‑ingénierie et au test de macOS dans un environnement isolé.

Thunderbolt : défis matériels et avancées logicielles

Le contrôleur Thunderbolt d’Apple, basé sur un Cortex‑M3 exécutant RTKit et couplé à un routeur Thunderbolt/USB4 propriétaire, ne correspond pas aux hypothèses du sous‑système Thunderbolt du noyau Linux, historiquement conçu pour les contrôleurs Intel. Le contrôleur utilise des écritures MMIO dans la plage du bloc PMGR, une interaction unique qui a nécessité une analyse approfondie pour éviter des réinitialisations erronées. Malgré ces obstacles, l’équipe a finalisé un patchset complet, envoyé en amont, qui intègre le support du contrôleur Apple tout en conservant la compatibilité avec les implémentations Intel existantes. Cette contribution illustre la stratégie d’Asahi Linux : développer d’abord en amont, puis pousser les modifications vers le noyau principal.