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 http://www.debian.org/ports/arm/ pour plus de précisions concernant les systèmes d'architecture ARM 32 bits 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 32 bits , cette section contient des informations générales et des liens vers des informations complémentaires.

2.1.1. Architectures reconnues

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

Architecture Étiquette Debian Sous-Architecture Saveur
Intel x86-based i386    
AMD64 & Intel 64 amd64    
ARM armel Intel IXP4xx ixp4xx
Marvell Kirkwood kirkwood
Marvell Orion orion5x
Versatile versatile
ARM avec matériel FPU armhf multiplate-forme armmp
multiplate-forme pour les systèmes à extension d'adressage (LPAE) armmp-lpae
ARM 64 bits arm64    
MIPS (grand boutien) mips SGI IP22 (Indy/Indigo 2) r4k-ip22
SGI IP32 (O2) r5k-ip32
MIPS Malta (32 bits) 4kc-malta
MIPS Malta (64 bits) 5kc-malta
MIPS (petit boutien) mipsel MIPS Malta (32 bits) 4kc-malta
MIPS Malta (64 bits) 5kc-malta
IBM/Motorola PowerPC powerpc PowerMac pmac
PReP prep
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 32 bits avec le noyau Linux. Des versions pour les autres architectures disponibles existent sur les pages Debian-Ports.

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 petit-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 (« systems-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. Ces systèmes n'ont généralement pas de microprogramme commun et la conséquence est que le noyau Linux, sur les systèmes ARM, doit s'occuper de tous les problèmes de bas niveau liés au matériel, qui seraient gérés par le BIOS de la carte mère dans le monde PC.

Au début de la prise en charge d'ARM dans le noyau Linux, cela conduisait à avoir un noyau différent pour chaque système ARM, à l'opposé de l'approche « one-fits-all » pour le noyau des systèmes de type PC. Comme cette approche ne s'adaptait pas bien à un grand nombre de systèmes différents, un travail a commencé pour fournir un noyau ARM unique qui pourrait s'exécuter sur différents systèmes. La prise en charge de nouveaux systèmes est implémentée de manière à avoir un tel noyau multiplate-forme, mais pour plusieurs anciens systèmes, un noyau spécifique est toujours nécessaire. À cause de cela, la distribution standard Debian ne prend en charge l'installation que sur un nombre restreint de ces anciens systèmes ARM, en plus des systèmes plus récents pris en charge par les noyaux ARM multiplates-formes (appelé « armmp ») dans Debian/amhf.

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

Les plates-formes suivantes sont prises en charge par Debian/armel ; elles nécessitent un noyau spécifique à la plate-forme.

IXP4xx

La série de processeurs IXP4xx de Intel est utilisée dans les périphériques de stockage réseau (NAS, network attached storage) comme le Linksys NSLU2.

Alors que le noyau inclus dans Debian 8 prend en charge aussi ces plates-formes, elles ne sont pas prises en charge par l'installateur Debian. Cependant, il est possible d'effectuer une mise à niveau (« dist-upgrade ») depuis Debian 7 pour les installations existantes. Mais en raison de la faible quantité de mémoire généralement disponible sur les systèmes basés sur IXP4xx, cela nécessite d'activer l'espace d'échange (swap) avant. La prise en charge de la plate-forme IXP4xx sera supprimée totalement dans Debian 9.

Kirkwood

Kirkwood est un système sur une puce (SOC) de Marvell qui comporte un processeur ARM, Ethernet, SATA, USB, et d'autres fonctionnalités sur une seule puce. Pour l'instant sont reconnus les systèmes suivants : OpenRD (OpenRD-Base, OpenRD-Client et OpenRD-Ultimate), plug computers (SheevaPlug, GuruPlug and DreamPlug), QNAP Turbo Station (tous les modèles TS-11x, TS-21x et TS-41x), et LaCie NASes (Network Space v2, Network Space Max v2, Internet Space v2, d2 Network v2, 2Big Network v2 et 5Big Network v2).

Orion5x

Orion est un système sur une puce (SOC) de Marvell qui intègre processeur ARM, Ethernet, SATA, USB et autres fonctionnalités sur une seule puce. Il existe sur le marché beaucoup de périphériques NAS (« Network Attached Storage ») basés sur la puce Orion. Pour l'instant sont reconnus les systèmes suivants : Buffalo Kurobox, D-Link DNS-323 et HP mv2120.

Versatile

La plate-forme « Versatile » est émulée par QEMU. C'est un bon moyen de tester Debian sur ARM quand on ne possède pas de matériel réel.

2.1.5. Plates-formes qui ne sont plus prises en charge par Debian/armel

IOP32x

On trouve la famille de processeurs d'Intel I/O Processor (IOP) sur nombre de produits relatifs au stockage de données, comme les périphériques GLAN Tank de IO-Data et Thecus N2100. Debian a pris en charge la plate-forme IOP32x dans Debian 7, mais ne la prend plus en charge à partir de la version 8 à cause des contraintes matérielles de la plate-forme qui la rende inappropriée pour l'installation des nouvelles versions de Debian.

MV78xx0

La plate-forme MV78xx0 a été utilisée sur les cartes de développement DB-78xx0-BP de Marvell. Elle a été prise en charge dans Debian 7 avec un noyau spécifique à la plate-forme (basé sur le noyau Linux 3.2), mais n'est plus prise en charge à partir de Debian 8.

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 jessie, 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 http://xorg.freedesktop.org/. Debian 8 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 32 bits , 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 modems, les cartes réseau, les périphériques PCMCIA/CardBus/ExpressCard et USB, etc. Cependant, aucun de ces périphériques n'est requis lors de l'installation du système.