2.1. Podporovaná zařízení

Debian neklade na hardware jiná omezení než ta, která jsou dána jádrem Linuxu nebo kFreeBSD a programy GNU. Tedy na libovolné počítačové architektuře, na kterou bylo přeneseno jádro Linuxu nebo kFreeBSD, knihovna libc, překladač gcc atd., a pro kterou existuje port Debianu, můžete Debian nainstalovat. Viz stránka s porty (http://www.debian.org/ports/arm/).

Než abychom se snažili popsat všechny podporované konfigurace hardwaru pro architekturu 32-bit hard-float ARMv7 , zaměříme se spíše na obecné informace a uvedeme odkazy na doplňující dokumentaci.

2.1.1. Podporované počítačové architektury

Debian GNU/Linux 10 podporuje deset hlavních počítačových architektur a několik jejich variant.

Architektura Označení v Debianu Podarchitektura Varianta
založené na Intel x86 i386 standardní počítače x86 výchozí
Xen PV xen
AMD64 & Intel 64 amd64    
ARM armel Marvell Kirkwood a Orion marvell
ARM s hardwarovým FPU armhf multiplatformní armmp
64 bitové ARM arm64    
32 bitové MIPS (big endian) mips MIPS Malta 4kc-malta
Cavium Octeon octeon
64 bitové 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    
Power Systems ppc64el IBM POWER8 nebo novější  
64 bitové IBM S/390 s390x IPL z VM-reader a DASD generic

Tato verze dokumentu se zabývá instalací Debianu s jádrem Linux na architektuře 32-bit hard-float ARMv7 . Pro ostatní podporované architektury jsou návody na stránkách Debian-Ports.

2.1.2. Tři hlavní ARM porty

Architektura ARM se vyvíjí a moderní ARM procesory nabízí možnosti, které nejsou na starších modelech dostupné. Debian proto nabízí tři základní ARM porty pro nejlepší podporu širokého spektra systémů:

  • Debian/armel cílí na starší 32 bitové ARM procesory bez hardwarové podpory výpočtů s plovoucí desetinnou čárkou (nemají FPU)

  • Debian/armhf běží jen na novějších 32 bitových ARM procesorech, které implementují alespoň architekturu ARMv7 s 3. verzí ARM specifikace pro vektorové výpočty s plovoucí desetinnou čárkou (VFPv3). Debian/armhf využívá tyto rozšířené možnosti a vyšší výkon nových modelů.

  • Debian/arm64 funguje na 64 bitových ARM procesorech implementujících alespoň architekturu ARMv8.

Technicky mohou všechny aktuálně dostupné ARM procesory běžet v obou režimech adresování (little-endian i big-endian), avšak v praxi používá drtivá většina ARM systémů adresování little-endian. V tomto duchu podporuje Debian/arm64, Debian/armhf i Debian/armel pouze systémy little-endian.

2.1.3. Různé návrhy ARM procesorů a náročnost podpory

Systémy ARM jsou mnohem různorodější, než systémy založené na architektuře i386/amd64, takže podpora může být složitější. Architektura ARM se používá hlavně v řešeních vše v jednom, tzv. SoC (system-on-chip). Tyto SoC navrhuje spousta společností z nejrůznějších hardwarových součástí, které se liší i v tak základní funkcionalitě, jako je zavedení systému.

Systémy využívající tyto čipy obvykle postrádají jednotné rozhraní v podobě systémového firmwaru a ve výsledku se linuxové jádro na architektuře ARM musí starat o spousty nízkoúrovňových detailů specifických pro konkrétní systém, o což by se ve světě PC postaral BIOS.

To znamenalo, že když Linux získal podporu architektury ARM, muselo se pro každý systém sestavovat speciální jádro, na rozdíl od architektury i386/amd64, kde jedno jádro běží na téměř libovolném hardwaru. Tento přístup samozřejmě nebyl s ohromným počtem různých systémů udržitelný a vývojáři začali pracovat na tom, aby se podobně jako u PC dalo jedno jádro použít na různých ARM systémech. Toto jádro se pak nazývá multiplatformní a podporuje většinu novějších systémů. V Debianu je na architektuře Debian/armhf označeno jako armmp. Stále však existují starší systémy, které vyžadují speciální jádro. Z tohoto důvodu podporuje standardní Debian instalaci jen na několik vybraných starších systémů.

2.1.4. Platformy podporované v Debian/armhf

O následujících systémech je známo, že fungují s Debian/armhf používajícím multiplatformní jádro armmp:

Freescale MX53 Quick Start Board (MX53 LOCO Board)

IMX53QSB je vývojářská deska založená na SoC i.MX53.

Versatile Express

Versatile Express je série vývojářských desek od ARMu skládající se ze základní desky, která se dá osadit různými dceřinnými CPU.

Některé vývojářské desky a embeded systémy Allwinner založené na sunXi

Jádro armmp podporuje několik vývojářských desek a embeded systémů založených na SoC Allwinner A10 (architektura sun4i), A10s/A13 (architektura sun5i), A20 (architektura sun7i), A31/A31s (architektura sun6i) a A23/A33 (součást rodiny sun8i). Instalační systém plně podporuje následující systémy:

  • Cubietech Cubieboard 1 + 2 / Cubietruck

  • LeMaker Banana Pi a Banana Pro

  • LinkSprite pcDuino a pcDuino3

  • Olimex A10-Olinuxino-LIME / A20-Olinuxino-LIME / A20-Olinuxino-LIME2 / A20-Olinuxino Micro / A20-SOM-EVB

  • Xunlong OrangePi Plus

Podpora pro zařízení Allwinner založená na architektuře sunXi je daná ovladači a stromy zařízení dostupnými v oficiálním linuxovém jádře. Jádra jednotlivých dodavatelů (jako třeba jádra z Allwinner SDK) a jádra linux-sunxi.org 3.4 odvozená z Androidu nejsou v Debianu podporována.

Oficiální linuxové jádro na SoC Allwinner A10, A10s/A13, A20, A23/A33 a A31/A31s obvykle podporuje sériovou konzoli, ethernet, SATA, USB a karty MMC/SD. Míra podpory lokálního displeje (HDMI/VGA/LCD) a integrovaného audio hardwaru se liší systém od systému. Pro většinu systémů jádro neobsahuje nativní ovladače grafiky a místo toho využívá infrastrukturu simplefb, která spoléhá na to, že se o inicializaci zobrazovacího hardwaru postará zavaděč a jádro pak již jen znovu-použije předpřipravený framebuffer. V praxi to funguje poměrně dobře, ale přináší to s sebou několik omezení, jako je nemožnost měnit za běhu rozlišení a nefunkční správa napájení.

Integrovaná flash paměť sloužící jako mass storage se na systémech založených na sunXi vyskytuje ve dvou základních variantách: NAND a eMMC. Většina starších desek používá NAND flash, pro kterou obvykle neexistují ovladače v oficiálním jádře a proto ani v Debianu. Mnohé novější systémy používají místo NAND flash eMMC flash. Čip s eMMC se navenek tváří jako rychlá, nevyměnitelná SD karta a je tedy podporována stejně, jako běžná SD karta.

Instalátor obsahuje základní podporu pro mnoho dalších, výše neuvedených systémů založených na sunXi, avšak tyto povětšinou nejsou otestovány, protože projekt Debian nemá k danému hardwaru přístup. Pro tyto systémy neexistují předpřipravené obrazy SD karet s instalačním systémem. Mezi tyto vývojářské desky s omezenou podporou patří:

  • Olimex A10s-Olinuxino Micro / A13-Olinuxino / A13-Olinuxino Micro

  • Sinovoip BPI-M2 (založená na A31s)

  • Xunlong Orange Pi (založená na A20) / Orange Pi Mini (založená na A20)

Kromě výše uvedených systémů obsahuje instalátor velice omezenou podporu pro platformu Allwinner H3 a desky na ní založené. V době vydání Debianu 9 je podpora H3 v oficiálním jádře stále ve vývoji a instalátor tedy na systémech založených na H3 podporuje pouze sériovou konzoli, MMC/SD a USB řadič. Chybí podpora integrovaného ethernetu, takže síťování je možné pouze přes externí ethernetovou nebo Wifi kartu do USB. Mezi systémy založené na H3, které mají základní podporu instalátoru, patří:

  • FriendlyARM NanoPi NEO

  • Xunlong Orange Pi Lite / Orange Pi One / Orange Pi PC / Orange Pi PC Plus / Orange Pi Plus / Orange Pi Plus 2E / Orange Pi 2

NVIDIA Jetson TK1

NVIDIA Jetson TK1 je vývojářská deska založená na čipu Tegra K1 (též známým jako Tegra 124). Tegra K1 se pyšní čtyřjárovým 32 bitovým procesorem ARM Cortex-A15 a grafickou kartou Kepler (GK20A) se 192 CUDA jádry. Je možné, že budou fungovat i jiné systémy založené na Tegra 124.

Seagate Personal Cloud a Seagate NAS

Seagate Personal Cloud a Seagate NAS jsou NAS zařízení založené na platformě Armada 370 od Marvellu. Debian podporuje Personal Cloud (SRN21C), Personal Cloud 2-Bay (SRN22C), Seagate NAS 2-Bay (SRPD20) a Seagate NAS 4-Bay (SRPD40).

SolidRun Cubox-i2eX / Cubox-i4Pro

Řada Cubox-i jsou malé systémy ve tvaru kostky založené na rodině SoC Freescale i.MX6. Podpora pro řadu Cubox-i je daná ovladači a stromy zařízení dostupnými v oficiálním linuxovém jádře. Jádra Freescale 3.0 pro Cubox-i nejsou v Debianu podporována. Oficiální linuxové jádro podporuje sériovou konzoli, ethernet, USB, karty MMC/SD a podporu zobrazování přes HDMI (konzole i X11). Na Cubox-i4Pro je navíc podporován i eSATA port.

Wandboard

Wandboard Quad, Dual a Solo jsou vývojářské desky založená na SoC Freescale i.MX6 Quad. Podpora je daná ovladači a stromy zařízení dostupnými v oficiálním linuxovém jádře. Speciální jádra řady 3.0 a 3.10 z wandboard.org nejsou v Debianu podporována. Oficiální linuxové jádro podporuje sériovou konzoli, zobrazování přes HDMI (konzole i X11), ethernet, USB, karty MMC/SD SATA (jen Quad) a analogové audio. V Debianu 9 nejsou podporovány ostatní audio výstupy (S/PDIF a HDMI) a ani integrovaný WLAN/Bluetooth modul.

Pokud má jádro použité v debian-installeru podporu daných systémových komponent a je dostupný soubor se stromem zařízení, umožňuje multiplatformní linuxové jádro spustit debian-installer i na armhf systémech výše explicitně neuvedených.

Na takových systémech obvykle instalace funguje, nicméně se asi nepodaří automaticky nastavit zavádění, jelikož to často vyžaduje konkrétní informace přesně pro dané zařízení. V takovém případě je nutno před dokončením instalace nastavit zavádění ručně, například spuštěním požadovaných příkazů v shellu spuštěném z prostředí debian-installeru.

2.1.5. Platformy dále nepodporované v Debian/armhf

EfikaMX

Platforma EfikaMX (Genesi Efika Smartbook a Genesi EfikaMX nettop) byla podporovaná v Debianu 7 specifickým jádrem, ale jelikož byla v roce 2012 podpora této platformy z oficiálního linuxového jádra odstraněna, nemůže ani Debian dále pokračovat v podpoře.

Řešením by bylo použití multiplatformního jádra armmp, ale pro platformu EfikaMX v současnosti není dostupný příslušný strom zařízení.

2.1.6. Platformy a zařízení dále nepodporované v Debian/armel

IXP4xx

Podpora pro platformu Intel IXP4xx byla odstraněna v Debianu 9. Na této platformě byl založen populární Linksys NSLU2.

Orion5x

S Debianem 9 byla z platformy Orion5x odebrána podpora pro zařízení D-Link DNS-323 a Conceptronic CH3SNAS, protože se linuxové jádro na těchto zařízeních již nevešlo do flash paměti. Ostatní Orion zařízení jako Buffalo Kurobox a HP mv2120 jsou nadále podporovány.

2.1.7. Víceprocesorové systémy

Tato architektura umožňuje využití více procesorů — tzv. symetrický multiprocesing (SMP). Standardní jádro v distribuci Debian GNU/Linux 10 bylo sestaveno s podporou SMP-alternatives, což znamená, že jádro samo rozpozná počet procesorů (nebo procesorových jader) a na jednoprocesorových počítačích podporu SMP automaticky vypne.

Více procesorů v počítači bylo původně doménou výkonných serverů, ale s uvedením konceptu vícejádrových procesorů, kdy jeden fyzický čip obsahuje několik procesorových jednotek, tzv. jader, se s nimi dnes setkáváme prakticky všude.

2.1.8. Podpora grafických karet

Podpora grafických karet v grafickém režimu závisí na tom, zda pro kartu existuje ovladač v projektu X.Org a v jádru. Základní podpora grafického framebufferu je poskytována jádrem, desktopová prostředí používají X.org. Podpora pokročilých vlastností, jako je hardwarová akcelerace 3D a videa, závisí na použitém hardwaru a v některých případech i na instalaci dodatečného firmware (viz 2.2 – „Ovladače vyžadující firmware“).

Téměř všechny ARMové počítače mají grafický hardware zabudovaný přímo v sobě. Počítače se slotem pro zasunutí samostatné grafické karty existují, ale je jich jako šafránu. Naopak celkem běžný je hardware navržený zcela bez grafického výstupu. Základní zobrazování přes jaderný framebuffer by mělo fungovat na všech zařízeních s grafickým hardwarem, avšak rychlá 3D grafika nutně vyžaduje binární ovladače. Situace se mění docela rychle, ale v době vydání buster jsou k dispozici svobodné ovladače pro nouveau (SoC Nvidia Tegra K1) a freedreno (SoC Qualcomm Snapdragon). Ostatní hardware vyžaduje nesvobodné ovladače třetích stran.

Podrobnosti o podporovaných grafických kartách a ukazovacích zařízeních naleznete na http://xorg.freedesktop.org/. Debian GNU/Linux 10 je dodáván se systémem X.Org verze 7.7.

2.1.9. Hardware pro připojení k síti

Libovolná síťová karta (NIC) podporovaná jádrem Linux by měla být podporována i instalačním systémem. Ovladače by se měly zavádět automaticky.

Na architektuře 32-bit hard-float ARMv7 je podporována většina integrovaných ethernetových zařízení a dostupné jsou i moduly pro přídavná PCI a USB zařízení.

2.1.10. Ostatní zařízení

Linux umožňuje používat nejrůznější hardwarové vybavení jako myši, tiskárny, scannery, televizní karty a zařízení PCMCIA/CardBus/ExpressCard a USB. Většina z nich však není pro instalaci nutná.