Supported Hardware &debian; does not impose hardware requirements beyond the requirements of the Linux or kFreeBSD kernel and the GNU tool-sets. Therefore, any architecture or platform to which the Linux or kFreeBSD kernel, libc, gcc, etc. have been ported, and for which a &debian; port exists, can run &debian;. Please refer to the Ports pages at for more details on &arch-title; architecture systems which have been tested with &debian-gnu;. Rather than attempting to describe all the different hardware configurations which are supported for &arch-title;, this section contains general information and pointers to where additional information can be found. Supported Architectures &debian; GNU/Linux &release; supports ten major architectures and several variations of each architecture known as flavors. Architecture&debian; Designation SubarchitectureFlavor Intel x86-based i386 default x86 machines default Xen PV domains only xen AMD64 & Intel 64 amd64 ARM armel Marvell Kirkwood and Orion marvell ARM with hardware FPU armhf multiplatform armmp 64bit ARM arm64 32bit MIPS (big-endian) mips MIPS Malta 4kc-malta Cavium Octeon octeon 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 Power Systems ppc64el IBM POWER8 or newer machines 64bit IBM S/390 s390x IPL from VM-reader and DASD generic This document covers installation for the &arch-title; architecture using the &arch-kernel; kernel. If you are looking for information on any of the other &debian;-supported architectures take a look at the &debian;-Ports pages. This is the first official release of &debian-gnu; for the &arch-title; architecture. We feel that it has proven itself sufficiently to be released. However, because it has not had the exposure (and hence testing by users) that some other architectures have had, you may encounter a few bugs. Use our Bug Tracking System to report any problems; make sure to mention the fact that the bug is on the &arch-title; platform using the &arch-kernel; kernel. It can be necessary to use the debian-&arch-listname; mailing list as well. &supported-amd64.xml; &supported-arm.xml; &supported-i386.xml; &supported-mips.xml; &supported-powerpc.xml; &supported-s390.xml; &supported-sparc.xml; Laptops From a technical point of view, laptops are normal PCs, so all information regarding PC systems applies to laptops as well. Installations on laptops nowadays usually work out of the box, including things like automatically suspending the system on closing the lid and laptop specfic hardware buttons like those for disabling the wifi interfaces (airplane mode). Nonetheless sometimes the hardware vendors use specialized or proprietary hardware for some laptop-specific functions which might not be supported. To see if your particular laptop works well with GNU/Linux, see for example the Linux Laptop pages. Multiple Processors Multiprocessor support — also called symmetric multiprocessing or SMP — is available for this architecture. Having multiple processors in a computer was originally only an issue for high-end server systems but has become common in recent years nearly everywhere with the introduction of so called multi-core processors. These contain two or more processor units, called cores, in one physical chip. The standard &debian; &release; kernel image has been compiled with SMP support. It is also usable on non-SMP systems without problems. Multiple Processors Multiprocessor support — also called symmetric multiprocessing or SMP — is available for this architecture. The standard &debian; &release; kernel image has been compiled with SMP-alternatives support. This means that the kernel will detect the number of processors (or processor cores) and will automatically deactivate SMP on uniprocessor systems. Having multiple processors in a computer was originally only an issue for high-end server systems but has become common in recent years nearly everywhere with the introduction of so called multi-core processors. These contain two or more processor units, called cores, in one physical chip. Multiple Processors Multiprocessor support — also called symmetric multiprocessing or SMP — is available for this architecture. However, the standard &debian; &release; kernel image does not support SMP. This should not prevent installation, since the standard, non-SMP kernel should boot on SMP systems; the kernel will simply use only the first CPU. In order to take advantage of multiple processors, you'll have to replace the standard &debian; kernel. You can find a discussion of how to do this in . At this time (kernel version &kernelversion;) the way you enable SMP is to select &smp-config-option; in the &smp-config-section; section of the kernel config. Multiple Processors Multiprocessor support — also called symmetric multiprocessing or SMP — is available for this architecture, and is supported by a precompiled &debian; kernel image. Depending on your install media, this SMP-capable kernel may or may not be installed by default. This should not prevent installation, since the standard, non-SMP kernel should boot on SMP systems; the kernel will simply use the first CPU. In order to take advantage of multiple processors, you should check to see if a kernel package that supports SMP is installed, and if not, choose an appropriate kernel package. You can also build your own customized kernel to support SMP. You can find a discussion of how to do this in . At this time (kernel version &kernelversion;) the way you enable SMP is to select &smp-config-option; in the &smp-config-section; section of the kernel config. Graphics Hardware Support &debian;'s support for graphical interfaces is determined by the underlying support found in X.Org's X11 system, and the kernel. Basic framebuffer graphics is provided by the kernel, whilst desktop environments use X11. Whether advanced graphics card features such as 3D-hardware acceleration or hardware-accelerated video are available, depends on the actual graphics hardware used in the system and in some cases on the installation of additional firmware images (see ). On modern PCs, having a graphical display usually works out of the box. In very few cases there have been reports about hardware on which installation of additional graphics card firmware was required even for basic graphics support, but these have been rare exceptions. For quite a lot of hardware, 3D acceleration also works well out of the box, but there is still some hardware that needs binary blobs to work well. Nearly all ARM machines have the graphics hardware built-in, rather than being on a plug-in card. Some machines do have expansion slots which will take graphics cards, but that is a rarity. Hardware designed to be headless with no graphics at all is quite common. Whilst basic framebuffer video provided by the kernel should work on all devices that have graphics, fast 3D graphics invariably needs binary drivers to work. The situation is changing quickly but at the time of the &releasename; release free drivers for nouveau (Nvidia Tegra K1 SoC) and freedreno (Qualcomm Snapdragon SoCs) are available in the release. Other hardware needs non-free drivers from 3rd parties. Details on supported graphics hardware and pointing devices can be found at . &debian; &release; ships with X.Org version &x11ver;. Most graphics options commonly found on Sparc-based machines are supported. X.org graphics drivers are available for sunbw2, suncg14, suncg3, suncg6, sunleo and suntcx framebuffers, Creator3D and Elite3D cards (sunffb driver), PGX24/PGX64 ATI-based video cards (ati driver), and PermediaII-based cards (glint driver). To use an Elite3D card with X.org you additionally need to install the afbinit package, and read the documentation included with it on how to activate the card. It is not uncommon for a Sparc machine to have two graphics cards in a default configuration. In such a case there is a possibility that the Linux kernel will not direct its output to the card initially used by the firmware. The lack of output on the graphical console may then be mistaken for a hang (usually the last message seen on console is 'Booting Linux...'). One possible solution is to physically remove one of the video cards; another option is to disable one of the cards using a kernel boot parameter. Also, if graphical output is not required or desired, serial console may be used as an alternative. On some systems use of serial console can be activated automatically by disconnecting the keyboard before booting the system. &network-cards.xml; &accessibility-hardware.xml; &supported-peripherals.xml; Devices Requiring Firmware Besides the availability of a device driver, some hardware also requires so-called firmware or microcode to be loaded into the device before it can become operational. This is most common for network interface cards (especially wireless NICs), but for example some USB devices and even some hard disk controllers also require firmware. With many graphics cards, basic functionality is available without additional firmware, but the use of advanced features requires an appropriate firmware file to be installed in the system. On many older devices which require firmware to work, the firmware file was permanently placed in an EEPROM/Flash chip on the device itself by the manufacturer. Nowadays most new devices do not have the firmware embedded this way anymore, so the firmware file must be uploaded into the device by the host operating system every time the system boots. In most cases firmware is non-free according to the criteria used by the &debian-gnu; project and thus cannot be included in the main distribution or in the installation system. If the device driver itself is included in the distribution and if &debian-gnu; legally can distribute the firmware, it will often be available as a separate package from the non-free section of the archive. However, this does not mean that such hardware cannot be used during an installation. Starting with &debian-gnu; 5.0, &d-i; supports loading firmware files or packages containing firmware from a removable medium, such as a USB stick. See for detailed information on how to load firmware files or packages during the installation. If the &d-i; prompts for a firmware file and you do not have this firmware file available or do not want to install a non-free firmware file on your system, you can try to proceed without loading the firmware. There are several cases where a driver prompts for additional firmware because it may be needed under certain circumstances, but the device does work without it on most systems (this e.g. happens with certain network cards using the tg3 driver).