2.1. Ondersteunde hardware

Debian stelt geen extra vereisten inzake hardware bovenop de vereisten die gesteld worden door de Linux- of de KFreeBSD-kernel en de GNU-gereedschapssets. Daardoor kan Debian gebruikt worden op elke architectuur of elk platform waarvoor de Linux- of de KFreeBSD-kernel, libc, gcc, enz. geschikt gemaakt werden en waarvoor een Debian-uitgave bestaat. Raadpleeg de pagina's over geschikte architecturen (ports) op http://www.debian.org/ports/arm/ voor meer informatie over systemen van de architectuur 32-bit soft-float ARM waarop Debian GNU/Linux getest werd.

Eerder dan alle verschillende ondersteunde hardwareconfiguraties van 32-bit soft-float ARM te proberen beschrijven, bevat dit hoofdstuk algemene informatie en verwijzingen naar plaatsen waar bijkomende informatie gevonden kan worden.

2.1.1. Ondersteunde architecturen

Debian GNU/Linux 9 ondersteunt tien hoofdarchitecturen en verschillende variaties van elk van die architecturen, varianten (flavors) genoemd.

Architectuur Aanduiding in Debian Onderarchitectuur Variant
Gebaseerd op Intel x86 i386 standaard x86-systemen standaard
enkel Xen PV domeinen xen
AMD64 & Intel 64 amd64    
ARM armel Marvell Kirkwood en Orion marvell
ARM met hardware-FPU armhf multiplatform armmp
64bits ARM arm64    
64bits MIPS (big endian) mips MIPS Malta 4kc-malta
Cavium Octeon octeon
64bits MIPS (little endian) mips64el MIPS Malta 5kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
32bits MIPS (little endian) mipsel MIPS Malta 4kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
Power Systems ppc64el IBM POWER8 of recentere machines  
64bits IBM S/390 s390x IPL van VM-reader en DASD generieke

Dit document behandelt de installatie op de architectuur 32-bit soft-float ARM met de kernel Linux. Indien u op zoek bent naar informatie over een van de andere door Debian ondersteunde architecturen, raadpleeg dan de webpagina Architecturen waarop Debian werkt (Ports).

2.1.2. Drie verschillende uitgaven voor ARM

Mettertijd is de ARM-architectuur geëvolueerd en moderne ARM-processors hebben functionaliteit die in oudere modellen niet aanwezig was. Daarom brengt Debian drie verschillende uitgaven (ports) uit voor ARM om op die manier de best mogelijke ondersteuning te bieden voor een zeer ruim scala van verschillende machines:

  • Debian/armel is bedoeld voor oudere 32-bits ARM-processoren zonder ondersteuning voor een hardware floating point unit (FPU),

  • Debian/armhf werkt alleen op recentere 32-bits ARM-processoren die minstens de architectuur ARMv7 met versie 3 van de ARM vector floating point specificatie (VFPv3) toepassen. Ze maakt gebruik van de uitgebreide functionaliteit en de verbeterde prestaties van deze modellen.

  • Debian/arm64 werkt op 64-bits ARM-processoren die minstens de architectuur ARMv8 toepassen.

Vanuit technisch oogpunt kunnen alle momenteel beschikbare ARM CPU's volgens beide endian-modi (big of little) functioneren, maar in de praktijk gebruikt het grootste deel de modus little-endian. Zowel Debian/arm64, Debian/armhf als Debian/armel ondersteunen enkel little-endian systemen.

2.1.3. Variaties in het design van ARM CPU's en hun complexe ondersteuning

ARM-systemen zijn veel heterogener dan systemen die een i386/amd64 PC-architectuur als basis hebben. Daardoor kan de situatie wat ondersteuning betreft, veel gecompliceerder zijn.

De ARM-architectuur wordt hoofdzakelijk gebruikt in zogenaamde system-on-chip (SoC) designs (geïntegreerde schakelingen). Dergelijke SoC's worden ontworpen door zeer veel verschillende bedrijven die gebruik maken van erg uiteenlopende hardwarecomponenten, zelfs voor de meest basale functionaliteit die het systeem activeert. Mettertijd werden systeemfirmware-interfaces in toenemende mate gestandaardiseerd, maar vooral op oudere hardware zijn er grote verschillen op het gebied van firmware/opstart-interfaces. Op dergelijke systemen moet de Linuxkernel rekening houden met veel systeemspecifieke basiszaken, die in de PC-wereld door het BIOS van het moederbord ter harte genomen zouden worden.

Bij het begin van de ondersteuning voor ARM in de Linuxkernel vereiste de variatie in hardware een aparte kernel voor elk ARM-systeem in tegenstelling tot de uniforme (one-fits-all) kernel voor PC-systemen. Aangezien een dergelijke aanpak niet past bij een groot aantal verschillende systemen, werd er gewerkt aan een kernel die uiteenlopende ARM-systemen kan opstarten en erop kan functioneren. Recentere ARM-systemen worden nu ondersteund op een manier die het gebruik van een dergelijke multplatform-kernel toelaat, maar voor verschillende oudere systemen is nog steeds een aparte specifieke kernel vereist. Om die reden kan de standaarddistributie van Debian slechts op een beperkt aantal van dergelijke oudere ARM-systemen geïnstalleerd worden. Daarnaast worden de nieuwere systemen ondersteund door de multiplatformkernels voor ARM (armmp genaamd) in Debian/armhf.

2.1.4. Platformen die door Debian/armel ondersteund worden

De volgende platformen worden ondersteund door Debian/armel;. Ze vereisen platformspecifieke kernels.

Kirkwood

Kirkwood is een "system-on-chip" (SoC) van Marvell waarbij op één chip een ARM CPU, ethernet, SATA, USB en andere functionaliteit geïntegreerd werden. Momenteel ondersteunt Debian de volgende op Kirkwood gebaseerde apparaten:

Orion5x

Orion is een "system-on-chip" (SoC) van Marvell waarbij op één chip een ARM CPU, ethernet, SATA, USB en andere functionaliteit geïntegreerd werden. Op de markt zijn veel "Network Attached Storage" (NAS)-apparaten beschikbaar die gebaseerd zijn op een Orion chip. Momenteel ondersteunt Debian volgende op Orion gebaseerde apparaten: Buffalo Kurobox, HP mv2120 en QNAP TS-109, TS-209, TS-409 en TS-409U en varianten.

Versatile

Het Versatile platform wordt door QEMU geëmuleerd en is daarom een goede manier om Debian op ARM uit te voeren en uit te testen als u niet over echte hardware beschikt.

2.1.5. Platformen en apparaten die niet langer ondersteund worden door Debian/armel

IXP4xx

De ondersteuning voor het IXP4xx-platform van Intel werd gestopt met Debian 9. Het apparaat NSLU2 van Linksys is gebaseerd op IXP4xx en wordt daardoor niet langer ondersteund.

Orion5x

Ondersteuning voor de apparaten D-Link DNS-323 en Conceptronic CH3SNAS werd in Debian 9 weggelaten uit het Orion5x-platform. De Linuxkernel past niet langer op het flashgeheugen van deze apparaten. Andere Orion-apparaten, zoals Buffalo Kurobox en HP mv2120 worden nog altijd ondersteund.

2.1.6. Ondersteuning voor grafische hardware

De ondersteuning van Debian voor grafische interfaces wordt bepaald door de onderliggende ondersteuning ervan in het X11-systeem van X.Org en in de kernel. Basale grafische weergave via de framebuffer wordt door de kernel geleverd, terwijl een desktopomgeving gebruik maakt van X11. Of geavanceerde functionaliteit van grafische kaarten, zoals 3D hardwareacceleratie of video met hardwareacceleratie beschikbaar is, hangt af van de grafische hardware die in het systeem gebruikt wordt en in sommige gevallen ook van het extra installeren van firmware-images (zie Paragraaf 2.2, “Apparaten waarvoor firmware vereist is”).

Bijna alle ARM-machines hebben de grafische hardware ingebouwd in plaats van op een in te pluggen grafische kaart. Sommige machines hebben expansiesloten waarin een grafische kaart geplaatst kan worden, maar dat is een rariteit. Hardware die bedoeld is als een systeem zonder toetsenbord en beeldscherm (headless) heeft vrij courant geen grafische hardware. Terwijl basale grafische weergave via de framebuffer waarvoor de kernel instaat, op elk apparaat met grafische hardware zou moeten werken, moet snelle 3D grafische hardware steevast binaire stuurprogramma's hebben om te kunnen functioneren. De situatie verandert snel, maar op het ogenblik van de release van stretch zijn vrije stuurprogramma's voor nouveau (Nvidia Tegra K1 SoC) en freedreno (Qualcomm Snapdragon SoC's) beschikbaar in de release. Andere hardware heeft niet-vrije stuurprogramma's nodig van derden.

Meer informatie over ondersteunde grafische hardware en aanwijsapparaten is te vinden op http://xorg.freedesktop.org/. Debian 9 bevat versie 7.7 van X.Org.

2.1.7. Hardware voor verbinding met het netwerk

Zowat elke netwerkkaart (NIC) die door de kernel Linux ondersteund wordt, zou ook moeten ondersteund worden door het installatiesysteem. Stuurprogramma's zouden normaal automatisch geladen moeten worden.

Op 32-bit soft-float ARM worden de meeste ingebouwde ethernetapparaten ondersteund en worden modules voorzien voor bijkomende PC- en USB-apparaten.

2.1.8. Randapparatuur en andere hardware

Linux ondersteunt een grote variëteit van hardware-apparaten, zoals muizen, printers, scanners, PCMCIA/CardBus/ExpressCard- en USB-apparaten. Maar de meeste van deze apparaten heeft u tijdens de installatie van het systeem niet nodig.