2.1. Matériel reconnu

En ce qui concerne le matériel, Debian n'a pas plus d'exigences que le noyau Linux ou kFreeBSD et les outils GNU. Par conséquent, toute architecture ou plate-forme sur laquelle le noyau Linux ou kFreeBSD, la libc, le compilateur gcc, etc., ont été portés, et pour laquelle un portage de Debian existe, peut faire fonctionner Debian. Reportez-vous aux pages sur les portages https://www.debian.org/ports/arm/ pour plus de précisions concernant les systèmes d'architecture ARM 64 bit qui ont été testés avec Debian GNU/Linux.

Plutôt que d'essayer de décrire les différentes configurations matérielles acceptées par ARM 64 bit , cette section contient des informations générales et des liens vers des informations complémentaires.

2.1.1. Architectures reconnues

Debian GNU/Linux 11 fonctionne sur 9 architectures principales et sur de nombreuses variantes de celles-ci, appelées « saveurs ».

Architecture Étiquette Debian Sous-Architecture Saveur
AMD64 & Intel 64 amd64    
Intel x86-based i386 systèmes x86 variante par défaut
domaines Xen PV uniquement xen
ARM armel Marvell Kirkwood et Orion marvell
ARM avec matériel FPU armhf multiplate-forme armmp
ARM 64 bits arm64    
MIPS 64 bits (petit-boutien) mips64el MIPS Malta 5kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
MIPS 32 bits (petit-boutien) mipsel MIPS Malta 4kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
Power Systems ppc64el Machines IBM POWER8 ou plus récentes  
IBM S/390 64 bits s390x IPL avec lecteur de machine virtuelle (VM-reader) et accès direct au périphérique de stockage (DASD) generic

Ce document décrit l'installation pour l'architecture ARM 64 bit avec le noyau Linux. Des versions pour les autres architectures disponibles existent sur les pages Debian-Ports.

Voici la première version officielle de Debian GNU/Linux pour l'architecture ARM 64 bit . Nous pensons que le portage a fait ses preuves et qu'il peut être rendu public. Cependant, comme il n'a pas encore été soumis à la « vraie vie » (ni testé par d'autres utilisateurs) comme l'ont été d'autres architectures, vous pourriez rencontrer quelques bogues. Utilisez notre système de suivi des bogues pour signaler les problèmes ; n'oubliez pas de mentionner que le bogue s'est produit sur une plate-forme ARM 64 bit . Et prévenez aussi la liste de diffusion debian-arm.

2.1.2. Trois portages ARM différents

L'architecture ARM a évolué et les processeurs ARM récents fournissent des fonctionnalités qui ne sont pas disponibles dans les anciens modèles. Debian fournit donc trois portages ARM pour assurer la meilleure prise en charge d'une très grande variété de machines :

  • Debian/armel est destiné aux anciens processeurs ARM 32 bits qui n'ont pas d'unité de calcul flottant au niveau matériel (« FPU »).

  • Debian/armhf ne fonctionne que sur les nouveaux processeurs ARM 32 bits qui implémentent au moins l'architecture ARMv7 avec la version 3 des spécifications de calcul flottant (VFPv3). Il utilise les fonctionnalités étendues et les améliorations de performances disponibles sur ces modèles.

  • Debian/arm64 fonctionne sur les processeurs ARM 64 bits qui implémentent au moins l'architecture ARMv8.

Techniquement, la plupart des CPU ARM peuvent fonctionner en mode petit-boutien ou en mode grand-boutien. Cependant les systèmes les plus courants utilisent le mode petit-boutien. Debian/arm64, Debian/armel et Debian/armhf fonctionnent tous les trois uniquement sur les processeurs ARM petits-boutiens.

2.1.3. Différences dans la conception des processeurs ARM et difficulté de la prise en charge

Les systèmes ARM sont beaucoup plus hétérogènes que l'architecture PC de type i386/amd64. La situation de la prise en charge (matérielle) peut donc être plus compliquée.

L'architecture ARM est utilisée surtout dans les systèmes sur puce (« system-on-chip » (SOC)). Ces SOC sont conçus par différentes entreprises, avec une grande diversité de composants matériels, même pour les fonctionnalités les plus élémentaires nécessaires pour démarrer le système. Dans les anciennes versions de l'architecture ARM, il y avait d'importantes différences d'une puce à l'autre, mais l'architecture ARMv8 (arm64) est bien plus standardisée. Cela facilite donc la prise en charge par le noyau Linux et les autres logiciels.

Les versions serveur des matériels ARMv8 sont souvent configurées en utilisant les standards UEFI (« Unified Extensible Firmware Interface ») et ACPI (« Advanced Configuration and Power Interface ») qui procurent une méthode commune et indépendante du matériel pour amorcer et configurer le matériel. Ces standards sont aussi utilisés dans le monde des PC.

2.1.4. Plates-formes prises en charge par Debian/arm64

Les matériels Arm64, AArch64 et ARMv8 sont apparus relativement tard dans le cycle de développement de Debian Bullseye. Ainsi, peu de plates-formes ont leur prise en charge intégrée dans la version de la branche principale du noyau de Debian 11, ce qui est la condition principale à leur intégration à l'installateur Debian. Les plates-formes suivantes sont prises en charge dans cette publication de Debian/arm64. Il n'y a qu'une image du noyau qui prend en charge toutes ces plates-formes.

Applied Micro (APM) Mustang/X-Gene

Le système APM Mustang a été le premier système ARMv8 disponible faisant fonctionner Linux. Il utilise la puce X-gene, utilisée depuis dans d'autres machines, qui est un processeur à 8 cœurs avec Ethernet, USB et port série. Un facteur de forme commun le fait ressembler à un ordinateur de bureau, mais d'autres versions sont attendues. La majorité du matériel est prise en charge dans la branche principale du noyau, mais la prise en charge de l'USB n'existe pas encore dans le noyau de Bullseye.

Plate-forme de développement ARM Juno

Juno est une carte de développement ARMv8 équipée d'un processeur 800 MHz à 6 cœurs (deux A57 et quatre A53), d'un processeur graphique Mali (T624), de 8 Go de RAM DDR3 et de ports Ethernet, USB et série. Elle a été conçue pour la mise en place de ce système et les tests de puissance. Elle n'est donc ni petite ni bon marché, mais était une des premières disponibles. Tout le matériel intégré est pris en charge dans la branche principale du noyau et dans Bullseye.

Si vous utilisez l'installateur sur un système non UEFI, vous devrez le rendre amorçable vous-même à la fin de l'installation, par exemple en exécutant les commandes nécessaires dans un terminal démarré à l'intérieur de l'installateur. Flash-kernel sait comment installer un système X-Gene en amorçant avec U-Boot.

2.1.4.1. Autres plates-formes

La prise en charge d'ARM multiplate-forme dans le noyau Linux arm64 permet d'exécuter l'installateur sur les systèmes arm64 qui ne sont pas listés ci-dessus. Tant que le noyau utilisé par l'installateur prend en charge les composants de la cible et qu'un arbre de périphériques est disponible, un nouveau système cible peut fonctionner de façon adéquate. Dans ce cas, l'installateur peut fournir une installation de l'espace utilisateur fonctionnelle et, si UEFI est utilisé, il devrait pouvoir rendre le système amorçable. Si UEFI n'est pas utilisé, vous devrez probablement effectuer quelques étapes manuellement pour rendre le système amorçable.

2.1.5. Processeurs multiples

Cette architecture accepte les systèmes à plusieurs processeurs (« symmetric multiprocessing » ou SMP). À l'origine, sur certains serveurs haut de gamme, un système à multiples processeurs pouvait provoquer des problèmes. Aujourd'hui, un simple ordinateur de bureau ou un portable possède plusieurs processeurs sous la forme d'un processeur multicœur, une puce contenant deux processeurs ou plus, appelés cœurs.

L'image standard du noyau Debian 11 a été compilée avec SMP mais elle est parfaitement utilisable sur les systèmes non-SMP.

2.1.6. Gestion du matériel graphique

Debian reconnaît les interfaces graphiques dans la mesure où elles sont reconnues par le système X11 de X.Org et par le noyau. Le noyau fournit le tampon vidéo (framebuffer), tandis que les environnements de bureau utilisent X11. Certaines fonctionnalités avancées des cartes graphiques, comme l'accélération 3D ou l'accélération matérielle (hardware-accelerated video), dépendent parfois de la carte graphique installée et demandent l'installation de microprogrammes supplémentaires, voyez la Section 2.2, « Périphériques demandant des microprogrammes (firmware) ».

Presque toutes les machines ARM possèdent du matériel graphique intégré, plutôt que sous forme de carte externe. Quelques rares machines ont des connecteurs d'extension qui acceptent les cartes graphiques, mais le matériel conçu pour fonctionner sans écran est commun. Alors que le tampon vidéo fourni par le noyau devrait fonctionner sur tous les périphériques, les cartes graphiques rapides 3D nécessitent toujours des binaires supplémentaires. La situation évolue rapidement, mais au moment de la publication de bullseye, les pilotes libres nouveaux (Nvidia Tegra K1 SoC) et freedreno (Qualcomm Snapdragon SoCs) sont disponibles. Les autres matériels nécessitent des pilotes non libres.

Des précisions sur les matériels graphiques acceptés et les dispositifs de pointage sont disponibles sur https://wiki.freedesktop.org/xorg/. Debian 11 propose la version 7.7 de X.Org.

2.1.7. Matériel de connexion réseau

Toute carte réseau (NIC, network interface card) reconnue par le noyau Linux devrait aussi être reconnue par l'installateur. Les pilotes devraient être chargés de manière automatique.

Sur ARM 64 bit , la plupart des périphériques Ethernet intégrés sont reconnus et des modules pour les périphériques USB et PCI sont fournis.

2.1.8. Périphériques et autres matériels

Linux reconnaît une large gamme de périphériques comme les souris, les imprimantes, les scanners, les périphériques PCMCIA/CardBus/ExpressCard et USB. Cependant, aucun de ces périphériques n'est requis lors de l'installation du système.