2.1. Hardware supportato

Debian non ha nessun requisito aggiuntivo all'hardware oltre a quelli necessari al funzionamento del kernel Linux o kFreeBSD e dei programmi GNU. Perciò è possibile usare Debian su qualsiasi architettura o piattaforma verso cui è stato fatto il port del kernel Linux o kFreeBSD, della libc e del gcc e per la quale esiste il port di Debian. Consultare le pagine dei port su https://www.buy-develop.eu.org/ports/arm/ per conoscere quali sistemi con architettura ARM 32 bit sono stati testati con Debian GNU/Linux.

Piuttosto che cercare di descrivere tutte le diverse configurazioni hardware che sono supportate da ARM 32 bit , questa sezione contiene delle informazioni generali e dei riferimenti a documenti dov'è possibile trovare delle informazioni aggiuntive.

2.1.1. Architetture supportate

Debian GNU/Linux 12 supporta 9 architetture principali e diverse varianti di ogni architettura, che vanno sotto il nome di «flavor».

Architettura Indicazione Debian Sottoarchitettura Variante (flavor)
AMD64 & Intel 64 amd64    
Intel x86-based i386 macchine x86 default
solo domini Xen PV xen
ARM armel Marvell Kirkwood e Orion marvell
ARM con FPU hardware armhf multipiattaforma armmp
64bit ARM arm64    
64bit MIPS (little endian) mips64el MIPS Malta 5kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
32bit MIPS (little endian) mipsel MIPS Malta 4kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
Sistemi Power ppc64el IBM POWER8 o macchine più recenti  
64bit IBM S/390 s390x IPL da VM-reader e DASD generico

Questo documento tratta l'installazione sull'architettura ARM 32 bit con il kernel Linux. Se si cercano delle informazioni su un'altra delle architetture supportate da Debian si consultati la pagina dei port Debian.

2.1.2. I tre port ARM

Nel tempo l'architettura ARM si è evoluta e i moderni processori ARM forniscono funzionalità che non erano presenti nei modelli precedenti. Debian fornisce tre port su ARM per fornire il miglior supporto per una gamma molto ampia di macchine:

  • Debian/armel è adatto ai processori ARM più vecchi che non dispongono di una FPU (floating point unit),

  • Debian/armhf funziona solo sui processori ARM più recenti conformi all'architettura ARMv7 e con l'unità di calcolo in virgola mobile VFPv3. Fa un ampio uso delle funzioni e dei miglioramenti delle prestazioni disponibili su questi modelli.

  • Debian/arm64 funziona sui processori ARM a 64-bit conformi almeno all'architettura ARMv8.

Tecnicamente, tutte le CPU ARM attualmente disponibili possono funzionare sia in modalità big-endian che in modalità little-endian, in pratica la maggior parte dei sistemi attualmente disponibili utilizzano la modalità little-endian. Debian/arm64, Debian/armhf e Debian/armel supportano solo sistemi little-endian.

2.1.3. Variazioni nelle CPU ARM e difficoltà di supporto

I sistemi ARM sono molto più eterogenei rispetto a quelli dell'architettura dei PC basati su i386/amd64, quindi il supporto può essere più complicato.

L'architettura ARM è principalmente usata per i SoC («system-on-chip»). I SoC sono progettati da diverse aziende e usano una gran varietà di componenti hardware anche per le funzionalità di base necessarie all'avvio del sistema. Con il passare del tempo le interfacce del firmware sono state via via standardizzate ma sui sistemi più vecchi le interfacce firmware per l'avvio potrebbero creare parecchi grattacapi perché il kernel Linux deve prendersi in carico molti problemi di basso livello e di tutti quegli aspetti specifici del sistema che nel mondo dei PC sarebbero gestiti dal BIOS/UEFI della scheda madre.

Agli albori il supporto per ARM nel kernel Linux proprio per la grande varietà di hardware richiedeva di avere un kernel specifico per ciascun sistema ARM ma ciò è in contrasto con il kernel «uno-va-bene-per-tutti» per i sistemi PC. Infatti tale approccio non è scalabile su un gran numero di dispositivi e quindi iniziò il lavoro che ha portato alla realizzazione di un unico kernel ARM che può funzionare su molti sistemi ARM. Adesso i sistemi ARM più recenti dispongono di un kernel realizzato con l'approccio multipiattaforma ma per molti dei sistemi più vecchi è ancora necessario utilizzare un kernel specifico. Per questo motivo la distribuzione Debian standard può essere installata solo su un numero ristretto di vecchi sistemi ARM più vecchi oltre che sui sistemi più recenti supportati con il kernel ARM multipiattaforma (chiamati «armmp») in Debian/armhf.

2.1.4. Piattaforme supportate da Debian/armel

Le seguenti piattaforme sono supportate da Debian/armel; richiedono dei kernel specifici per ciascuna piattaforma.

Kirkwood

Kirkwood è un sistema su un chip (SoC) della Marvell che integra una CPU ARM, Ethernet, SATA, USB e altre funzionalità in un unico chip. Attualmente sono supportati i seguenti dispositivi basati su Kirkwood:

Orion5x

Orion è un sistema su un chip (SoC) della Marvell che integra una CPU ARM, Ethernet, SATA, USB e altre funzionalità in un unico chip. Sul mercato ci sono molti dispositivi NAS (Network Attached Storage) basati sul chip Orion. Attualmente sono supportati i seguenti dispositivi basati sul chip Orion: Buffalo Kurobox.

Versatile

La piattaforma Versatile è emulata da QEMU e quindi è un buon modo per fare delle prove e per usare Debian su ARM anche se non si dispone di un vero hardware.

2.1.5. Dispositivi non più supportati da Debian/armel

Kirkwood

Il supporto per tutti i modelli di QNAP Turbo Station (TS-xxx) è stato rimosso da Debian 11 perché a causa di limitazioni hardware non è più possibile compilare il kernel Linux per questi dispositivi.

Orion5x

Il supporto per HP Media Vault mv2120 è stato rimosso da Debian 11 perché a causa di limitazioni hardware non è più possibile compilare il kernel Linux per questo dispositivo.

È probabile che i dispositivi sopra elencati continuino a funzionare ancora per un po' di tempo, consultare le note di rilascio di Debian 11.

2.1.6. Hardware grafico supportato

Il supporto di Debian per le interfacce grafiche è determinato dal supporto sottostante fornito dal sistema X11 di X.Org e dal kernel. La grafica di base del framebuffer è fornita dal kernel invece gli ambienti desktop utilizzano X11. La disponibilità delle funzionalità avanzate della scheda grafica come l'accelerazione 3D o l'accelerazione video dipende da quale hardware è installato nel sistema e in alcuni casi potrebbe essere necessario installare delle immagini aggiuntive con il «firmware» (consultare Sezione 2.2, «Dispositivi che richiedono firmware specifico»).

Su quasi tutte le macchine ARM l'hardware grafico è integrato anziché essere su una scheda da inserire. Alcune macchine dispongono di slot d'espansione in cui è possibile inserire schede grafiche, ma sono delle rarità. Invece è abbastanza comune trovare dell'hardware progettato per essere usato senza monitor e senza tastiera. Anche se il framebuffer video fornito dal kernel funziona tutti i dispositivi grafici, per far funzionare la grafica 3D sono necessari dei driver binari. Questa situazione si evolve molto rapidamente, al momento del rilascio di bookworm sono disponibili i driver liberi per nouveau (Nvidia Tegra K1 SoC) e freedreno (Qualcomm Snapdragon SoCs). Altri hardware richiedono driver non-free da terze parti.

I dettagli sull'hardware grafico e i dispositivi di puntamento supportati possono essere trovati in https://wiki.freedesktop.org/xorg/. Debian 12 include la versione 7.7 di X.Org.

2.1.7. Schede di rete

Quasi tutte le schede di rete (NIC) supportate dal kernel Linux standard dovrebbero essere supportate anche dal sistema d'installazione; normalmente i driver sono caricati automaticamente.

Su ARM 32 bit , la maggior parte dei dispositivi Ethernet integrati sono supportati e i moduli per i dispositivi PCI e USB aggiuntivi sono disponibili.

2.1.8. Periferiche e altro hardware

Linux supporta una grande varietà di dispositivi hardware come per esempio mouse, stampanti, dispositivi PCMCIA/CardBus/ExpressCard e USB. Tuttavia molte di queste periferiche non sono necessarie durante l'installazione del sistema.