CPUs, Mainboards und Grafikunterstützung
ARM-Systeme sind viel verschiedenartiger als die i386-/amd64-basierte
PC-Architektur, bei der sich alle Systeme eine allgemeine System-Firmware
(BIOS und/oder UEFI) teilen, die die grundlegende board-spezifische
Hardware-Initialisierung auf eine standardisierte Art und Weise erledigt.
Die ARM-Architektur wird hauptsächlich in sogenannten
Systems-on-Chip
(SoC - ein komplettes System
auf einem einzigen Chip) verwendet. Diese SoCs werden von
vielen verschiedenen Herstellern mit sich erheblich unterscheidenden
Hardware-Komponenten (und dies sogar bei den grundlegendsten
Funktionalitäten, die benötigt werden, um das System zu starten) entwickelt.
Diese Systeme haben normalerweise keine gemeinsame Schnittstelle für die
System-Firmware und deshalb muss sich der Linux-Kernel bei ARM-Systemen
um viele systemspezifische Themen auf der niedrigsten Hardware-Ebene
kümmern, die in der PC-Welt vom BIOS des Mainboards abgewickelt werden.
Zu Beginn der ARM-Unterstützung im Linux-Kernel führte dies dazu, dass ein
separater Kernel für jedes ARM-System benötigt wurde, im Gegensatz zu dem
einer-passt-für-alles
-Kernel bei PC-Systemen.
Da dieser Ansatz nicht mit einer großen Anzahl verschiedener Systeme
funktioniert, wurde damit begonnen, einen einzigen ARM-Kernel zu entwickeln,
der auf verschiedenen ARM-Systemen laufen kann. Unterstützung für neue
ARM-Systeme wird auf eine Art implementiert, die die Nutzung eines
solchen Multiplattform-Kernels erlaubt, aber für mehrere ältere Systeme
ist trotzdem noch ein spezifischer Kernel erforderlich.
Daher unterstützt die Standard-&debian;-Distribution nur die
Installation einer ausgewählten Zahl von älteren ARM-Systemen,
zusätzlich zu den neuen Systemen, die vom ARM-Multiplattform-Kernel
(armmp) bedient werden.
Die ARM-Architektur hat sich über die Zeit weiterentwickelt und
moderne ARM-Prozessoren bieten Funktionalitäten, die in älteren Modellen
nicht verfügbar sind. &debian; bietet daher zwei ARM-Portierungen an:
&debian;/armel und &debian;/armhf.
&debian;/armel zielt auf ältere ARM-Prozessoren ohne eigene
Hardware-Fließkommaeinheit (FPU) ab, während &debian;/armhf nur auf
neueren ARM-Prozessoren läuft, die mindestens die ARMv7-Architektur
mit Version 3 der ARM-Vektor-Fließkomma-Spezifikation (VFPv3)
implementieren. &debian;/armhf nutzt die erweiterten Funktionalitäten
und Performance-Steigerungen, die bei diesen Modellen verfügbar sind.
Technisch gesehen können viele ARM-CPUs in einem der beiden Endian-Modi
(Big-Endian oder Little-Endian) betrieben werden, in der Praxis verwendet
aber die große Mehrheit der derzeit verfügbaren System den Little-Endian-Modus.
Sowohl &debian;/armhf wie auch &debian;/armel unterstützen nur
Little-Endian-Systeme.
Plattformen, die von Debian/armel unterstützt werden
Folgende Plattformen werden von &debian;/armel unterstützt: (Sie
erfordern plattform-spezifische Kernel.)
IXP4xx
Die Intel-IXP4xx-Prozessor-Serie wird in NAS-Geräten
(Network-Attached-Storage-Systeme – Geräte, die Speicherplatz im
Netzwerk zur Verfügung stellen) wie dem Linksys NSLU2 eingesetzt.
Kirkwood
Kirkwood ist ein System-on-Chip
von Marvell, das eine ARM-CPU, Ethernet,
SATA, USB sowie weitere Funktionalitäten in einem Chip vereint. Wir
unterstützen derzeit folgende Kirkwood-basierte Geräte: OpenRD
(OpenRD-Base, OpenRD-Client und OpenRD-Ultimate), Plug-Computer (SheevaPlug, GuruPlug und
DreamPlug), QNAP
Turbo Station (alle TS-11x-, TS-21x- und TS-41x-Modelle) sowie
LaCie NAS-Geräte (Network Space v2, Network Space Max v2, Internet Space v2, d2
Network v2, 2Big Network v2 und 5Big Network v2).
Orion5x
Orion ist ein System-on-Chip
von
Marvell, das eine ARM-CPU, Ethernet, SATA, USB sowie weitere Funktionalität
in einem Chip vereint. Es gibt viele Network-Attached-Storage-Geräte (NAS-Systeme -
Geräte, die Speicherplatz im Netzwerk zur Verfügung stellen) auf dem Markt,
die auf dem Orion-Chip basieren. Wir unterstützen derzeit die folgenden
Orion-basierten Geräte: Buffalo Kurobox, D-Link DNS-323 und HP mv2120.
Versatile
Die Versatile-Plattform wird von QEMU emuliert und ist deshalb eine nette
Möglichkeit, &debian; auf MIPS zu testen und laufen zu lassen, falls echte
Hardware nicht zur Verfügung steht.
Plattformen, die nicht mehr von Debian/armel unterstützt werden
IOP32x
Intels I/O-Prozessor-Serie (IOP) ist in einer Reihe von Produkten für
Datenspeicherung und -verarbeitung zu finden, wie z.B. in dem GLAN Tank von IO-Data und dem
Thecus N2100.
&debian; hat die IOP32x-Plattform in &debian; 7 unterstützt, aber ab
Version 8 wird sie aufgrund von Hardware-Einschränkungen der Plattform,
die sie für die Installation neuerer &debian;-Veröffentlichungen
ungeeignet machen, nicht mehr unterstützt.
MV78xx0
Die MV78xx0-Plattform wurde auf dem Marvell DB-78xx0-BP
Development-Board eingesetzt. Sie war in Debian 7 mit einem
plattform-spezifischen Kernel (basierend auf dem Linux-Kernel Version 3.2)
unterstützt, wird jedoch ab Debian 8 nicht mehr unterstützt.
Plattformen,
die von Debian/armhf unterstützt werden
Folgende Systeme funktionieren bekanntermaßen mit &debian;/armhf unter
Verwendung des Multiplattform-Kernels (armmp):
Freescale MX53 Quick Start Board
Das IMX53QSB ist ein Development-Board basierend auf dem i.MX53 SoC.
Versatile Express
Das Versatile Express ist eine Development-Board-Serie
von ARM, bestehend aus einer Basisplatine, die mit
verschiedenen CPU-Tochterplatinen ausgestattet werden kann.
Certain Allwinner sunXi-basierte Development-Boards und
eingebettete (embedded) Systeme
Der armmp-Kernel unterstützt verschiedene Development-Boards
und Embedded-Systeme, die auf den SoCs Allwinner A10
(Architektur-Codename sun4i
) und A20
(Architektur-Codename sun7i
) aufbauen.
Vollständige Unterstützung durch den Installer ist derzeit
für folgende sunXi-basierte Systeme verfügbar:
Cubietech Cubieboard 1 + 2 / Cubietruck
LeMaker Banana Pi
LinkSprite pcDuino
Mele A1000
Miniand Hackberry
Olimex A10-Olinuxino-LIME / A10s-Olinuxino Micro /
A13-Olinuxino / A13-Olinuxino Micro / A20-Olinuxino Micro
PineRiver Mini X-Plus
Die Systemunterstützung für Allwinner sunXi-basierte Systeme
ist auf Treiber und Informationen aus dem Gerätedatei-Baum
beschränkt, welche im Mainline-Linux-Kernel enthalten sind.
Die 3.4-Kernel-Serie des Android-Derivates linux-sunxi.org
wird von Debian nicht unterstützt.
Der Mainline-Linux-Kernel unterstützt auf Allwinner A10- und
A20-SOCs grundsätzlich die serielle Konsole, Ethernet, SATA,
USB und MMC-/SD-Karten, enthält aber keinen Support für
lokale Grafik (HDMI/VGA/LVDS) und Audioausgabe.
Der NAND-Flash-Speicher, der in einige sunXi-basierte Systeme
eingebaut ist, wird nicht unterstützt.
SolidRun Cubox-i2eX / Cubox-i4Pro
Die Serie der Cubox-i ist eine Sammlung kleiner würfelförmiger
Systeme, die auf der Freescale i.MX6-SoC-Familie aufbauen.
Die Systemunterstützung für die Cubox-i-Serie ist auf
Treiber und Informationen aus dem Gerätedatei-Baum
beschränkt, welche im Mainline-Linux-Kernel enthalten sind.
Die 3.0-Kernel-Serie von Freescale für Cubox-i wird von
Debian nicht unterstützt.
Verfügbare Treiber im Mainline-Kernel inkludieren
die serielle Konsole, Ethernet, USB und MMC-/SD-Karten sowie
grundlegende lokale Grafik über HDMI.
Grundsätzlich erlaubt die ARM-Multiplattform-Unterstützung im
Linux-Kernel, den &d-i; auch auf Systemen laufen zu lassen, die
hier nicht explizit aufgeführt sind, solange der vom &d-i;
genutzte Kernel Unterstützung für die Systemkomponenten des
Zielsystems hat und eine Gerätebaum-Datei dafür vorhanden ist.
In diesen Fällen kann der Installer normalerweise eine
funktionierende Userland-Installation erstellen, aber möglicherweise
kann das System nicht automatisch boot-fähig gemacht werden,
da dies in vielen Fällen gerätespezifische Informationen erfordert.
Wenn Sie den &d-i; auf solchen Systemen einsetzen, müssen Sie
das System am Ende der Installation von Hand boot-fähig machen,
z.B. indem Sie die erforderlichen Befehle in einer innerhalb des
&d-i;s gestarteten Shell ausführen.
Platfformen, die nicht mehr von Debian/armhf unterstützt werden
EfikaMX
Die EfikaMX-Plattform (Genesi Efika Smartbook und Genesi EfikaMX Nettop)
wurde in &debian; 7 mit einem plattformspezifischen Kernel unterstützt,
wird aber ab &debian; 8 aufwärts nicht mehr unterstützt. Der Code, der
zum Bau des vorher verwendeten plattformspezifischen Kernels erforderlich
ist, wurde in 2012 aus dem Quellcode des Upstream-Linux-Kernels entfernt,
daher kann Debian keine neueren Kernel mehr bereitstellen.
Die Nutzung des armmp-Multiplattform-Kernels auf der EfikaMX-Plattform
würde Gerätebaum-Unterstützung dafür erfordern, was derzeit nicht
der Fall ist.