2.1. 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 http://www.debian.org/ports/i386/ for more details on 32-bit PC architecture systems which have been tested with Debian GNU/Linux.

Rather than attempting to describe all the different hardware configurations which are supported for 32-bit PC, this section contains general information and pointers to where additional information can be found.

2.1.1. Supported Architectures

Debian GNU/Linux 6.0 supports eleven major architectures and several variations of each architecture known as “flavors”.

Architecture Debian Designation Subarchitecture Flavor
Intel x86-based i386    
AMD64 & Intel EM64T amd64    
ARM armel Intel IOP32x iop32x
Intel IXP4xx ixp4xx
Marvell Kirkwood kirkwood
Marvell Orion orion5x
Versatile versatile
HP PA-RISC hppa PA-RISC 1.1 32
PA-RISC 2.0 64
Intel IA-64 ia64    
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 Cobalt cobalt
MIPS Malta (32 bit) 4kc-malta
MIPS Malta (64 bit) 5kc-malta
IBM/Motorola PowerPC powerpc PowerMac pmac
PReP prep
Sun SPARC sparc sun4u sparc64
sun4v
IBM S/390 s390 IPL from VM-reader and DASD generic
IPL from tape tape

Debian GNU/kFreeBSD 6.0 supports two architectures.

Architecture Debian Designation
Intel x86-based kfreebsd-i386
AMD64 & Intel EM64T kfreebsd-amd64

This document covers installation for the 32-bit PC architecture using the Linux kernel. If you are looking for information on any of the other Debian-supported architectures take a look at the Debian-Ports pages.

2.1.2. CPU, Main Boards, and Video Support

Complete information concerning supported peripherals can be found at Linux Hardware Compatibility HOWTO. This section merely outlines the basics.

2.1.2.1. CPU

Nearly all x86-based (IA-32) processors still in use in personal computers are supported, including all varieties of Intel's "Pentium" series. This also includes 32-bit AMD and VIA (former Cyrix) processors, and processors like the Athlon XP and Intel P4 Xeon.

However, Debian GNU/Linux squeeze will not run on 386 or earlier processors. Despite the architecture name "i386", support for actual 80386 processors (and their clones) was dropped with the Sarge (r3.1) release of Debian[2]. (No version of Linux has ever supported the 286 or earlier chips in the series.) All i486 and later processors are still supported[3].

Note

If your system has a 64-bit processor from the AMD64 or Intel EM64T families, you will probably want to use the installer for the amd64 architecture instead of the installer for the (32-bit) i386 architecture.

2.1.2.2. I/O Bus

The system bus is the part of the motherboard which allows the CPU to communicate with peripherals such as storage devices. Your computer must use the ISA, EISA, PCI, PCIe, PCI-X, or VESA Local Bus (VLB, sometimes called the VL bus). Essentially all personal computers sold in recent years use one of these.

2.1.3. Laptops

Laptops are also supported and nowadays most laptops work out of the box. In case a laptop contains specialized or proprietary hardware, some specific functions may not be supported. To see if your particular laptop works well with GNU/Linux, see for example the Linux Laptop pages.

2.1.4. Multiple Processors

Multiprocessor support — also called “symmetric multiprocessing” or SMP — is available for this architecture. The standard Debian 6.0 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.

The 486 flavour of the Debian kernel image packages for 32-bit PC is not compiled with SMP support.

2.1.5. Graphics Card Support

You should be using a VGA-compatible display interface for the console terminal. Nearly every modern display card is compatible with VGA. Ancient standards such CGA, MDA, or HGA should also work, assuming you do not require X11 support. Note that X11 is not used during the installation process described in this document unless the graphical installer was explicitly selected.

Debian's support for graphical interfaces is determined by the underlying support found in X.Org's X11 system. Most AGP, PCI, PCIe, and PCI-X video cards work under X.Org. Details on supported graphics buses, cards, monitors, and pointing devices can be found at http://xorg.freedesktop.org/. Debian 6.0 ships with X.Org version 7.5.

2.1.6. Network Connectivity Hardware

Almost any network interface card (NIC) supported by the Linux kernel should also be supported by the installation system; modular drivers should normally be loaded automatically. This includes most PCI and PCMCIA cards. Many older ISA cards are supported as well.

ISDN is supported, but not during the installation.

2.1.6.1. Wireless Network Cards

Wireless networking is in general supported as well and a growing number of wireless adapters are supported by the official Linux kernel, although many of them do require firmware to be loaded. If firmware is needed, the installer will prompt you to load firmware. See Section 6.4, “Loading Missing Firmware” for detailed information on how to load firmware during the installation.

Wireless NICs that are not supported by the official Linux kernel can generally be made to work under Debian GNU/Linux, but are not supported during the installation.

Support for encrypted wireless during installation is currently limited to WEP. If your access point uses stronger encryption, it cannot be used during the installation process.

If there is a problem with wireless and there is no other NIC you can use during the installation, it is still possible to install Debian GNU/Linux using a full CD-ROM or DVD image. Select the option to not configure a network and install using only the packages available from the CD/DVD. You can then install the driver and firmware you need after the installation is completed (after the reboot) and configure your network manually.

In some cases the driver you need may not be available as a Debian package. You will then have to look if there is source code available in the internet and compile the driver yourself. How to do this is outside the scope of this manual. If no Linux driver is available, your last resort is to use the ndiswrapper package, which allows you to use a Windows driver.

2.1.7. Braille Displays

Support for braille displays is determined by the underlying support found in brltty. Most displays work under brltty, connected via either a serial port, USB or bluetooth. Details on supported braille devices can be found on the brltty website. Debian GNU/Linux 6.0 ships with brltty version 4.2.

2.1.8. Hardware Speech Synthesis

Support for hardware speech synthesis devices is determined by the underlying support found in speakup. speakup only supports integrated boards and external devices connected to a serial port (no USB or serial-to-USB adapters are supported). Details on supported hardware speech synthesis devices can be found on the speakup website. Debian GNU/Linux 6.0 ships with speakup version 3.1.5.

2.1.9. Peripherals and Other Hardware

Linux supports a large variety of hardware devices such as mice, printers, scanners, PCMCIA and USB devices. However, most of these devices are not required while installing the system.

USB hardware generally works fine, only some USB keyboards may require additional configuration (see Section 3.6.4, “Hardware Issues to Watch Out For”).

Again, see the Linux Hardware Compatibility HOWTO to determine whether your specific hardware is supported by Linux.



[2] We have long tried to avoid this, but in the end it was necessary due a unfortunate series of issues with the compiler and the kernel, starting with an bug in the C++ ABI provided by GCC. You should still be able to run Debian GNU/Linux on actual 80386 processors if you compile your own kernel and compile all packages from source, but that is beyond the scope of this manual.

[3] Many Debian packages will actually run slightly faster on modern computers as a positive side effect of dropping support for these old chips. The i486, introduced in 1989, has three opcodes (bswap, cmpxchg, and xadd) which the i386, introduced in 1986, did not have. Previously, these could not be easily used by most Debian packages; now they can.