Lorsque Apple a adopté ses nouveaux processeurs basés sur ARM, appelés collectivement Apple Silicon, toutes les distributions Linux existantes étaient incompatibles avec son matériel le plus récent. Cela est en train de changer grâce au travail acharné de l'équipe Asahi Linux, qui a récemment introduit la prise en charge préliminaire des processeurs Apple M1 Ultra et M2.
La nouvelle version suit de près la première version alpha mise à disposition en mars dernier pour les machines M1, M1 Pro et M1 Max. Étant en alpha, cette version ne prenait pas en charge toutes les fonctionnalités que vous tenez habituellement pour acquises dans un noyau, y compris GPU, Bluetooth, HDMI, Touch Bar et autres.
La nouvelle version, en plus d'ajouter la prise en charge des processeurs plus récents, supprime également certaines de ces limitations. Plus particulièrement, le dernier noyau Asahi inclut un pilote Bluetooth fonctionnel :
Heureusement, alors que le transport PCIe est nouveau, l'interface HCI qui s'exécute sur le dessus est standard, donc une fois que les parties principales d'initialisation et de transfert de données du pilote ont commencé à fonctionner, la plupart des fonctionnalités Bluetooth l'ont fait aussi. Le pilote n'a pas besoin de se préoccuper de ces détails, il mélange simplement les données vers/depuis l'appareil.
Malheureusement, l'implémentation Bluetooth actuelle ne coexiste pas parfaitement avec le Wi-Fi 2,4 GHz, vous devez donc soit désactiver le Wi-Fi, soit utiliser un réseau 5 GHz.
L'ajout du pilote Bluetooth a fourni le terrain de jeu pour tester ce que l'équipe Asahi appelle la "mise à niveau transparente", c'est-à-dire la possibilité pour les utilisateurs de mettre à niveau leurs noyaux sans encourir de reconfiguration complexe. En fait, l'ajout de la prise en charge de Bluetooth impliquait de modifier un certain nombre de composants différents du noyau, y compris l'arborescence des périphériques, le programme d'installation, etc. Grâce à l'approche de "mise à niveau transparente", les utilisateurs existants n'auront qu'à mettre à niveau leurs packages et à redémarrer pour que le Bluetooth fonctionne.
En ce qui concerne la prise en charge de la nouvelle puce M2, selon l'équipe Asahi, il a fallu un temps relativement court pour faire fonctionner un système minimal sur le M2, la prise en charge du clavier et du trackpad nécessitant des efforts supplémentaires. En fait, le marathon initial de rétro-ingénierie de 12 heures qui a conduit au fonctionnement minimal du système peut être regardé sur YouTube. Ce résultat confirme les attentes de l'équipe selon lesquelles l'extension de la prise en charge des nouveaux processeurs qu'Apple va introduire ne nécessitera pas autant d'efforts que le travail initial requis pour prendre en charge la puce M1. Cependant, le support de M2 n'en est actuellement qu'à un stade très expérimental. Par exemple, l'équipe Asahi ne garantit pas que l'installation de nouvelles versions pour le M2 ne nécessitera pas de tout réinstaller à partir de zéro.
Enfin, l'équipe Asahi a également signalé des progrès sur le front de la prise en charge du GPU, grâce au travail d'Asahi Lina. À l'heure actuelle, un pilote prototype est disponible, capable d'exécuter des applications graphiques et des tests de performances, passant 94% de la suite de tests dEQP-GLES2, mais la pile est encore trop expérimentale pour être incluse dans la release. Les sessions de rétro-ingénierie d'Asahi Lina peuvent également être regardées sur YouTube.