diff options
Diffstat (limited to 'en/hardware')
-rw-r--r-- | en/hardware/supported/arm.xml | 354 |
1 files changed, 219 insertions, 135 deletions
diff --git a/en/hardware/supported/arm.xml b/en/hardware/supported/arm.xml index baf0e32d8..0e896161d 100644 --- a/en/hardware/supported/arm.xml +++ b/en/hardware/supported/arm.xml @@ -6,184 +6,158 @@ <para> -ARM systems are a lot more heterogenous than the i386/amd64-based PC -architecture, where all systems share a common system firmware (BIOS or/and -UEFI) which handles the board-specific basic hardware initialization in a -standardized way. - -The ARM architecture is used mainly in so-called <quote>systems-on-chip</quote> (SoCs). -These SoCs are designed by many different companies with vastly varying -hardware components even for the very basic functionality required to bring -the system up. Systems using them usually lack a common system firmware -interface and as a result, on ARM systems the Linux kernel has to take care -of many system-specific low-level issues which are handled by the -mainboard's BIOS in the PC world. +ARM systems are much more heterogenous than the i386/amd64-based PC +architecture, so whilst 64-bit ARM machines should boot in a +standardised way, like PCs, the situation is more complicated for +32-bit ARM machines. </para> <para> +The ARM architecture is used mainly in so-called +<quote>systems-on-chip</quote> (SoCs). These SoCs are designed by many +different companies with vastly varying hardware components even for +the very basic functionality required to bring the system up. System +firmware interfaces have been increasingly standardised over time, but +especially on older hardware firmware/boot interfaces vary a great +deal, so on these systems the Linux kernel has to take care of many +system-specific low-level issues which are handled by the mainboard's +BIOS in the PC world. -At the beginning of the ARM support in the Linux kernel, this resulted in -the requirement of having a seperate kernel for each ARM system in contrast -to the <quote>one-fits-all</quote> kernel for PC systems. As this approach does not -scale to a large number of different systems, work has started to be able to -provide a single ARM kernel that can run on different ARM systems. Support -for newer ARM systems gets implemented in a way that allows the use of such -a multiplatform kernel, but for several older systems a seperate specific -kernel is still required. +</para> + +<para> +At the beginning of the ARM support in the Linux kernel, the hardware +variety resulted in the requirement of having a separate kernel for +each ARM system in contrast to the <quote>one-fits-all</quote> kernel +for PC systems. As this approach does not scale to a large number of +different systems, work was done to allow booting with a single ARM +kernel that can run on different ARM systems. Support for newer ARM +systems gets implemented in a way that allows the use of such a +multiplatform kernel, but for several older systems a seperate +specific kernel is still required. +</para> +<para> Because of this, the standard &debian; distribution only supports -installation on a selected number of older ARM systems in addition to the -newer systems which are supported by the ARM multiplatform (armmp) kernel. +installation on a selected number of older 32-bit ARM systems in +addition to the newer (32 and 64-bit) systems which are supported by +the ARM multiplatform kernels (called 'armmp' on 32-bit armhf, no +flavour name on 64-bit arm64). </para> <para> - The ARM architecture has evolved over time and modern ARM processors provide features which are not available in older models. &debian; therefore -provides two ARM ports, the &debian;/armel and the &debian;/armhf port. +provides three ARM ports: the &debian;/arm64 port for all 64-bit machines, and the &debian;/armel and the &debian;/armhf ports for 32-bit machines. &debian;/armel targets older ARM processors without support for a hardware floating point unit (FPU), while &debian;/armhf works only on newer ARM processors which implement at least the ARMv7 architecture with version 3 of the ARM vector floating point specification (VFPv3). &debian;/armhf makes use of the extended features and performance enhancements available on -these models. +these models. &debian;/arm64 works on processors which implement at least the ARMv8 architecture (which is 64bit). </para> <!-- <para> -While it is technically possible to run the &debian;/armel userland programs -on modern ARM processors, they cannot make use of several -performance-enhancing features of the newer processors, so if your hardware -fulfills the requirements of running the &debian;/armhf port, you should use -it instead of the &debian;/armel port. Mixing of armel and armhf packages -on the same system is not possible, so you have to decide which port to use -before installing the system. +While it is technically possible to run the &debian;/armel userland +programs on modern (ARMv7) ARM processors, they cannot make use of +several performance-enhancing features of the newer processors, so if +your hardware fulfills the requirements of running the &debian;/armhf +port, you should use it instead of the &debian;/armel port. Mixing of +armel and armhf packages on the same system is possible (using +multiarch), but is not normally recommended, so you need to decide +which port to use before installing the system. Similarly both the +32-bit ports (&debian;/armel and &debian;/armhf) will run on 64-bit +ARMv8 hardware but will treat them as 32-bit machines, limiting +maximum memory size and various newer hardware features, so you will +normally want to install &debian;/arm64 on 64-bit capable +hardware. The situation is a bit like that with i386/amd64 PCs, but +unlike x86 world, it is rarely sensible to install a 32-bit +userland on a 64-bit machine for ARM. </para> --> <para> -Technically, several ARM CPUs can be run in either endian mode (big or little), -but in practice the vast majority of currently available systems -uses little-endian mode. Both &debian;/armhf and &debian;/armel support +Technically, all currently available ARM CPUs can be run in either endian mode (big or little), +but in practice the vast majority use little-endian mode. All of &debian;/arm64, &debian;/armhf and &debian;/armel support only little-endian systems. </para> -<sect3 arch="arm"><title>Platforms supported by Debian/armel</title> - -<para> - -The following platforms are supported by &debian;/armel; they require -platform-specific kernels. - -<variablelist> - -<varlistentry> -<term>IXP4xx</term> -<listitem><para> - -The Intel IXP4xx processor series is used in network attached storage -devices like the Linksys NSLU2. - -</para><para> - -While there is kernel support for this platform in &debian; 8, it is not -supported by the &d-i;. It is possible to do a <quote>dist-upgrade</quote> -from Debian 7 to Debian 8 for existing installations, though. Due to the -low amount of RAM that systems based on the IXP4xx usually have, this -requires that swap space is enabled prior to upgrading. Support for the -IXP4xx platform will be dropped completely in &debian; 9. - -</para></listitem> -</varlistentry> - -<varlistentry> -<term>Kirkwood</term> -<listitem><para> - -Kirkwood is a system on a chip (SoC) from Marvell that integrates an ARM -CPU, Ethernet, SATA, USB, and other functionality in one chip. We -currently support the following Kirkwood based devices: OpenRD -(OpenRD-Base, OpenRD-Client and OpenRD-Ultimate), <ulink -url="&url-arm-cyrius-sheevaplug;">plug computers (SheevaPlug, GuruPlug and -DreamPlug)</ulink>, <ulink url="&url-arm-cyrius-qnap-kirkwood;">QNAP -Turbo Station</ulink> (all TS-11x, TS-21x and TS-41x models), and LaCie -NASes (Network Space v2, Network Space Max v2, Internet Space v2, d2 -Network v2, 2Big Network v2 and 5Big Network v2). - -</para></listitem> -</varlistentry> +<sect3 arch="arm"><title>Platforms supported by Debian/arm64</title> -<varlistentry> -<term>Orion5x</term> -<listitem><para> - -Orion is a system on a chip (SoC) from Marvell that integrates an ARM CPU, -Ethernet, SATA, USB, and other functionality in one chip. There are many -Network Attached Storage (NAS) devices on the market that are based on an -Orion chip. We currently support the following Orion based devices: <ulink -url="&url-arm-cyrius-kuroboxpro;">Buffalo Kurobox</ulink>, <ulink -url="&url-arm-cyrius-dns323;">D-Link DNS-323</ulink> and <ulink -url="&url-arm-cyrius-mv2120;">HP mv2120</ulink>. - -</para></listitem> -</varlistentry> - -<varlistentry> -<term>Versatile</term> -<listitem><para> - -The Versatile platform is emulated by QEMU and is therefore a nice way to -test and run &debian; on ARM if you don't have the hardware. + <para> + Arm64/AArch64/ARMv8 hardware became available quite late in the + &debian; &releasename-cap; release cycle so not many platforms have had + support merged in the mainline kernel version in this release, + which is the main requirement to have &d-i; working on + them. -</para></listitem> -</varlistentry> + </para> -</variablelist> + <para> + The tested platforms are listed below, but in general, the + multiplatform support in the arm64 Linux kernel allows running + &d-i; on arm64 systems not explicitly listed below, so long as the + kernel used by &d-i; has support for the target system's + components and a device-tree file for the target is available. In + these cases, the installer can usually provide a working userland + installation, and so long as UEFI is in use, it should be able to + make the system bootable as well. If UEFI is not used (some 64-bit + machines have been shipped with uboot) it will not be able to make + the system bootable. + + </para> +<para>The following platforms are known to be supported by &debian;/arm64 in this release. There is only one kernel, which supports all platforms. </para> -</sect3> - -<sect3 arch="arm"><title>Platforms no longer supported by Debian/armel</title> -<variablelist> -<varlistentry> -<term>IOP32x</term> -<listitem><para> - -Intel's I/O Processor (IOP) line is found in a number of products -related to data storage and processing, such as the <ulink -url="&url-arm-cyrius-glantank;">GLAN Tank</ulink> from IO-Data and the -<ulink url="&url-arm-cyrius-n2100;">Thecus N2100</ulink>. &debian; has -supported the IOP32x platform in &debian; 7, but does not support -it anymore from version 8 on due to hardware constraints of the platform -which make it unsuitable for the installation of newer &debian; releases. - -</para></listitem> -</varlistentry> - -<varlistentry> -<term>MV78xx0</term> -<listitem><para> - -The MV78xx0 platform has been used on the Marvell DB-78xx0-BP -development board. It was supported in Debian 7 with a platform-specific -kernel (based on the Linux kernel version 3.2), but is not supported -anymore from Debian 8 onwards. - -</para></listitem> -</varlistentry> + <variablelist> + <varlistentry> + <term>Applied Micro (APM) Mustang/X-gene</term> + <listitem> + <para> + The APM Mustang was the first linux-capable ARMv8 system + available. It uses the X-gene soc, since also used in + other machines, which is an 8-core 16GB device, with + ethernet, USB, serial. The form-factor is a desktop PC + box. All the hardware is supported in the mainline kernel. + + </para> + </listitem> + </varlistentry> -</variablelist> + <varlistentry> + <term>ARM Juno Development Platform</term> + <listitem> + <para> + + Juno is a capable development board with a 6-core (2xA57, + 4xA53) ARMv8-A 800Mhz CPU, Mali (T624) graphics, 8GB DDR3 + RAM, Ethernet, USB, Serial. It was designed for system + bringup and power testing so is neither small nor cheap, + but was one of the first boards available. All the + hardware is supported in the mainline kernel. + </para> + </listitem> + </varlistentry> + </variablelist> + <para> + When using &d-i; on non-UEFI systems, you will have to manually + make the system bootable at the end of the installation, e.g. by + running the required commands in a shell started from within + &d-i;. + </para> </sect3> + <sect3 arch="arm" id="armhf-armmp-supported-platforms"><title>Platforms supported by Debian/armhf</title> <para> @@ -332,7 +306,6 @@ anymore from Debian 8 onwards. </sect3> - <sect3 arch="arm"><title>Platforms no longer supported by Debian/armhf</title> <variablelist> @@ -358,5 +331,116 @@ device-tree support for it, which is currently not available. </sect3> +<sect3 arch="arm"><title>Platforms supported by Debian/armel</title> + +<para> + +The following platforms are supported by &debian;/armel; they require +platform-specific kernels. + +<variablelist> + +<varlistentry> +<term>IXP4xx</term> +<listitem><para> + +The Intel IXP4xx processor series is used in network attached storage +devices like the Linksys NSLU2. + +</para><para> + +While there is kernel support for this platform in &debian; 8, it is not +supported by the &d-i;. It is possible to do a <quote>dist-upgrade</quote> +from Debian 7 to Debian 8 for existing installations, though. Due to the +low amount of RAM that systems based on the IXP4xx usually have, this +requires that swap space is enabled prior to upgrading. Support for the +IXP4xx platform will be dropped completely in &debian; 9. + +</para></listitem> +</varlistentry> + +<varlistentry> +<term>Kirkwood</term> +<listitem><para> + +Kirkwood is a system on a chip (SoC) from Marvell that integrates an ARM +CPU, Ethernet, SATA, USB, and other functionality in one chip. We +currently support the following Kirkwood based devices: OpenRD +(OpenRD-Base, OpenRD-Client and OpenRD-Ultimate), <ulink +url="&url-arm-cyrius-sheevaplug;">plug computers (SheevaPlug, GuruPlug and +DreamPlug)</ulink>, <ulink url="&url-arm-cyrius-qnap-kirkwood;">QNAP +Turbo Station</ulink> (all TS-11x, TS-21x and TS-41x models), and LaCie +NASes (Network Space v2, Network Space Max v2, Internet Space v2, d2 +Network v2, 2Big Network v2 and 5Big Network v2). + +</para></listitem> +</varlistentry> + +<varlistentry> +<term>Orion5x</term> +<listitem><para> + +Orion is a system on a chip (SoC) from Marvell that integrates an ARM CPU, +Ethernet, SATA, USB, and other functionality in one chip. There are many +Network Attached Storage (NAS) devices on the market that are based on an +Orion chip. We currently support the following Orion based devices: <ulink +url="&url-arm-cyrius-kuroboxpro;">Buffalo Kurobox</ulink>, <ulink +url="&url-arm-cyrius-dns323;">D-Link DNS-323</ulink> and <ulink +url="&url-arm-cyrius-mv2120;">HP mv2120</ulink>. + +</para></listitem> +</varlistentry> + +<varlistentry> +<term>Versatile</term> +<listitem><para> + +The Versatile platform is emulated by QEMU and is therefore a nice way to +test and run &debian; on ARM if you don't have the hardware. + +</para></listitem> +</varlistentry> + +</variablelist> + +</para> +</sect3> + +<sect3 arch="arm"><title>Platforms no longer supported by Debian/armel</title> + +<variablelist> +<varlistentry> +<term>IOP32x</term> +<listitem><para> + +Intel's I/O Processor (IOP) line is found in a number of products +related to data storage and processing, such as the <ulink +url="&url-arm-cyrius-glantank;">GLAN Tank</ulink> from IO-Data and the +<ulink url="&url-arm-cyrius-n2100;">Thecus N2100</ulink>. &debian; has +supported the IOP32x platform in &debian; 7, but does not support +it anymore from version 8 on due to hardware constraints of the platform +which make it unsuitable for the installation of newer &debian; releases. + +</para></listitem> +</varlistentry> + +<varlistentry> +<term>MV78xx0</term> +<listitem><para> + +The MV78xx0 platform has been used on the Marvell DB-78xx0-BP +development board. It was supported in Debian 7 with a platform-specific +kernel (based on the Linux kernel version 3.2), but is not supported +anymore from Debian 8 onwards. + +</para></listitem> +</varlistentry> + +</variablelist> + + +</sect3> + + </sect2> |