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.
Debian GNU/Linux 8 podporuje deset hlavních počítačových architektur a několik jejich variant.
Architektura | Označení v Debianu | Podarchitektura | Varianta |
---|---|---|---|
Intel x86 | i386 | ||
AMD64 & Intel 64 | amd64 | ||
ARM | armel | Intel IXP4xx | ixp4xx |
Marvell Kirkwood | kirkwood | ||
Marvell Orion | orion5x | ||
Versatile | versatile | ||
ARM s hardwarovým FPU | armhf | multiplatformní | armmp |
multiplatformní pro systémy s LPAE | armmp-lpae | ||
64 bitové ARM | arm64 | ||
MIPS (big endian) | mips | SGI IP22 (Indy/Indigo 2) | r4k-ip22 |
SGI IP32 (O2) | r5k-ip32 | ||
MIPS Malta (32 bit) | 4kc-malta | ||
MIPS Malta (64 bit) | 5kc-malta | ||
MIPS (little endian) | mipsel | ||
MIPS Malta (32 bit) | 4kc-malta | ||
MIPS Malta (64 bit) | 5kc-malta | ||
IBM/Motorola PowerPC | powerpc | PowerMac | pmac |
PReP | prep | ||
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.
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“.
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ů.
O následujících systémech je známo, že fungují s Debian/armhf
používajícím multiplatformní jádro armmp
:
IMX53QSB je vývojářská deska založená na SoC i.MX53.
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.
X
iJá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“) a A20 (architektura „sun7i“). 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
Mele A1000
Miniand Hackberry
Olimex A10-Olinuxino-LIME / A10s-Olinuxino Micro / A13-Olinuxino / A13-Olinuxino Micro / A20-Olinuxino-LIME / A20-Olinuxino-LIME2 / A20-Olinuxino Micro
PineRiver Mini X-Plus
Podpora pro zařízení Allwinner založená na architektuře
sunX
i je daná ovladači a stromy zařízení
dostupnými v oficiálním linuxovém jádře. 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 a A20 obvykle
podporuje sériovou konzoli, ethernet, SATA, USB a karty MMC/SD,
nicméně chybí nativní ovladače lokálního displeje (HDMI/VGA/LCD)
a integrovaného audio hardwaru. Také není podporována NAND flash
paměť, která se nachází v některých systémech založených na
sunX
i.
Použití lokálního displeje bez nativních ovladačů je technicky možné přes infrastrukturu „simplefb“, která spoléhá na to, že se o inicializaci zobrazovacího hardwaru postará zavaděč U-Boot. To ale verze U-Bootu dodávaná s Debianem 8 nepodporuje.
Ř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 Quad je vývojářská deska 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 a SATA. V Debianu 8 není podporováno integrované audio (ať už analogové, S/PDIF nebo HDMI) a ani integrovaný WLAN/Bluetooth modul.
Pokud má jádro použité v debian-installer
u 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-installer
u.
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í.
Intelovskou řadu I/O procesorů (IOP) můžete nalézt v řadě produktů spojených s ukládáním a zpracováváním dat, jako GLAN Tank od IO-Data a Thecus N2100. Debian podporoval platformu IOP32x v Debianu 7, ale kvůli hardwarovým omezením této platformy není vhodné instalovat novější vydání.
Platforma MV78xx0 se používala na vývojářské desce Marvell DB-78xx0-BP. Debian podporoval tuto platformu ještě v Debianu 7, se speciálním jádrem založeným na Linuxu 3.2, ale to už od Debianu verze 8 není možné.
Tato architektura umožňuje využití více procesorů — tzv. symetrický multiprocesing (SMP). Standardní jádro v distribuci Debian GNU/Linux 8 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.
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í jessie 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 8 je dodáván se systémem X.Org verze 7.7.
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í.