Linux 5.13 aura un support initial pour le processeur Apple M1

Au début de l'année Hector Martin (également connu sous le nom de Marcan) J'annonce votre intérêt à faire le travail de portage du noyau Linux pour fonctionner sur les ordinateurs Mac équipés du La nouvelle puce ARM d'Apple, la M1.

Pour cette tâche Héctor Martin a lancé une campagne de financement sur Patreon avec lesquels tous ceux qui sont intéressés par le projet ou soutenant Héctor, ont fait leurs dons pour qu'il puisse porter sur Linux pour la nouvelle série Apple M1. Avec lui le projet a officiellement commencé et Marcan l'a appelé Asahi Linux et a créé le site officiel et les référentiels de code.

Hector possède une vaste expérience dans l'adaptation de Linux à des systèmes inhabituels, par exemple, il est connu pour avoir porté Linux sur Nintendo Switch / Wii, Microsoft Kinect et Sony PlayStation 3/4 (y compris il était l'un des accusés dans le procès sensationnel Sony par contournement de protection sur PlayStation 3).

Et maintenant dans des nouvelles plus récentes Héctor Martin a proposé d'être inclus dans le noyau Linux le premier ensemble de correctifs préparés pour le port Linux pour les ordinateurs Mac équipés de la puce ARM Apple M1 utilisé par le projet Asahi Linux.

Ces correctifs ont déjà été approuvés par le mainteneur de la branche Linux SoC et acceptés dans la base de code Linux-next, sur la base de laquelle la fonctionnalité du noyau 5.13 est construite. Techniquement, Linus Torvalds peut bloquer la livraison des modifications proposées, mais cette évolution est considérée comme improbable.

Cela fait cinq mois que nous avons testé le premier matériel Apple M1, et il nous a fallu tous les jours pour arriver à un environnement de démarrage complètement basique "presque adapté au débogage".
Il est impossible de deviner combien de temps il faudra aux développeurs Asahi pour procéder à l'ingénierie inverse du GPU du M1 et produire un pilote open source de qualité. Même maintenant, il n'est pas impossible pour eux d'arrêter complètement de le faire; ou pour une raison quelconque, votre travail pourrait ne pas être accepté dans la phase initiale.

Les correctifs incluent la prise en charge des composants SoC M1 non GPU, comme contrôleur d'interruption, minuterie, Fonctions UART, SMP, I / O et MMIO. L'ingénierie inverse du GPU n'est pas encore terminée, le framebuffer et la prise en charge de la console via le port série sont fournis pour organiser la sortie en patchs.

Parmi les appareils, la compatibilité avec le mini ordinateur Apple Mac, qui est utilisé comme plate-forme de référence dans le projet Asahi Linux, est déclarée (des instructions d'installation détaillées sont disponibles).

Un adaptateur matériel ouvert distinct est en cours de développement pour simplifier la connectivité et le débogage de la console série. Dans sa forme actuelle, en raison de l'utilisation par Apple de commandes USB-PD personnalisées sur ses ordinateurs, le moyen le plus simple d'accéder à la console est de se connecter à un autre ordinateur basé sur la puce M1 d'Apple à l'aide du câble USB C. Une méthode plus complexe consiste à créer un jonction sur la base du microcontrôleur Arduino, de la puce FUSB30 et de l'adaptateur UART-TTL.

Le projet a également préparé le chargeur de démarrage m1n1, ce qui permet de charger le noyau Linux et l'environnement système minimal sur les ordinateurs Mac avec un processeur Apple M1. Apple sur les ordinateurs dotés de processeurs M1 en mode normal permet de charger des noyaux qui ne sont pas signés numériquement sans avoir besoin de jailbreak.

Cette fonctionnalité permet aux développeurs d'expérimenter de nouveaux noyaux XNU mais il y a des difficultés à essayer de démarrer d'autres systèmes car Apple utilise son propre protocole de démarrage et un format d'arborescence de périphériques différent.

Le chargeur de démarrage m1n1 proposé par le projet Asahi Linux agit comme une couche qui permet d'utiliser l'arborescence des périphériques standard et le protocole de démarrage standard utilisé dans le noyau Linux pour ARM64. À l'avenir, m1n1 devrait ajouter la possibilité d'appeler U-Boot et GRUB pour organiser un processus de démarrage typique, similaire à celui utilisé sur d'autres plates-formes ARM64.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.