1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
|
<!-- retain these comments for translator revision tracking -->
<!-- $Id$ -->
<sect1 id="hardware-supported">
<title>Supported Hardware</title>
<para>
&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,
<command>gcc</command>, etc. have been ported, and for which a &debian;
port exists, can run &debian;. Please refer to the Ports pages at
<ulink url="&url-ports;"></ulink> for
more details on &arch-title; architecture systems which have been
tested with &debian-gnu;.
</para><para>
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.
</para>
<sect2><title>Supported Architectures</title>
<para>
&debian; GNU/Linux &release; supports eleven major architectures and several
variations of each architecture known as <quote>flavors</quote>.
</para><para>
<informaltable>
<tgroup cols="4">
<thead>
<row>
<entry>Architecture</entry><entry>&debian; Designation</entry>
<entry>Subarchitecture</entry><entry>Flavor</entry>
</row>
</thead>
<tbody>
<row>
<entry>Intel x86-based</entry>
<entry>i386</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry>AMD64 & Intel 64</entry>
<entry>amd64</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry morerows="4">ARM</entry>
<entry morerows="4">armel</entry>
<entry>Intel IOP32x</entry>
<entry>iop32x</entry>
</row><row>
<entry>Intel IXP4xx</entry>
<entry>ixp4xx</entry>
</row><row>
<entry>Marvell Kirkwood</entry>
<entry>kirkwood</entry>
</row><row>
<entry>Marvell Orion</entry>
<entry>orion5x</entry>
</row><row>
<entry>Versatile</entry>
<entry>versatile</entry>
</row>
<row>
<entry>ARM with hardware FPU</entry>
<entry>armhf</entry>
<entry>Freescale</entry>
<entry>mx5</entry>
</row>
<row>
<entry>Intel IA-64</entry>
<entry>ia64</entry>
<entry></entry>
<entry></entry>
</row>
<row>
<entry morerows="3">MIPS (big endian)</entry>
<entry morerows="3">mips</entry>
<entry>SGI IP22 (Indy/Indigo 2)</entry>
<entry>r4k-ip22</entry>
</row><row>
<entry>SGI IP32 (O2)</entry>
<entry>r5k-ip32</entry>
</row><row>
<entry>MIPS Malta (32 bit)</entry>
<entry>4kc-malta</entry>
</row><row>
<entry>MIPS Malta (64 bit)</entry>
<entry>5kc-malta</entry>
</row>
<row>
<entry morerows="2">MIPS (little endian)</entry>
<entry morerows="2">mipsel</entry>
<entry>Cobalt</entry>
<entry>cobalt</entry>
</row><row>
<entry>MIPS Malta (32 bit)</entry>
<entry>4kc-malta</entry>
</row><row>
<entry>MIPS Malta (64 bit)</entry>
<entry>5kc-malta</entry>
</row>
<row>
<entry morerows="1">IBM/Motorola PowerPC</entry>
<entry morerows="1">powerpc</entry>
<entry>PowerMac</entry>
<entry>pmac</entry>
</row><row>
<entry>PReP</entry>
<entry>prep</entry>
</row>
<row>
<entry morerows="1">Sun SPARC</entry>
<entry morerows="1">sparc</entry>
<entry>sun4u</entry>
<entry morerows="1">sparc64</entry>
</row><row>
<entry>sun4v</entry>
</row>
<row>
<entry morerows="1">IBM S/390</entry>
<entry morerows="1">s390</entry>
<entry>IPL from VM-reader and DASD</entry>
<entry>generic</entry>
</row><row>
<entry>IPL from tape</entry>
<entry>tape</entry>
</row>
<row>
<entry morerows="1">64bit IBM S/390</entry>
<entry morerows="1">s390x</entry>
<entry>IPL from VM-reader and DASD</entry>
<entry>generic</entry>
</row><row>
<entry>IPL from tape</entry>
<entry>tape</entry>
</row>
</tbody></tgroup></informaltable>
</para><para>
&debian; GNU/kFreeBSD &release; supports two architectures.
</para><para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Architecture</entry><entry>&debian; Designation</entry>
</row>
</thead>
<tbody>
<row>
<entry>Intel x86-based</entry>
<entry>kfreebsd-i386</entry>
</row>
<row>
<entry>AMD64 & Intel 64</entry>
<entry>kfreebsd-amd64</entry>
</row>
</tbody></tgroup></informaltable>
</para><para>
This document covers installation for the <emphasis>&arch-title;</emphasis>
architecture using the <emphasis>&arch-kernel;</emphasis> kernel.
If you are looking
for information on any of the other &debian;-supported architectures
take a look at the
<ulink url="http://www.debian.org/ports/">&debian;-Ports</ulink> pages.
</para>
<caution arch="ia64"><para>
The &arch-title; architecture only supports Intel Itanium processors
and not the much more common 64-bit processors from the Intel 64 family
(including e.g. the Pentium D and the Core2 Duo). Those
systems are supported by the <emphasis>amd64</emphasis> architecture
or, if you prefer a 32-bit userland, the <emphasis>i386</emphasis>
architecture.
</para></caution>
<para condition="new-arch">
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
<ulink url="&url-bts;">Bug Tracking System</ulink> to report any
problems; make sure to mention the fact that the bug is on the
&arch-title; platform using the <emphasis>&arch-kernel;</emphasis> kernel.
It can be necessary to use the
<ulink url="&url-list-subscribe;">debian-&arch-listname; mailing list</ulink>
as well.
</para>
</sect2>
<!-- supported cpu docs -->
&supported-amd64.xml;
&supported-arm.xml;
&supported-hppa.xml;
&supported-i386.xml;
&supported-ia64.xml; <!-- FIXME: currently missing -->
&supported-mips.xml;
&supported-mipsel.xml;
&supported-powerpc.xml;
&supported-s390.xml;
&supported-sparc.xml;
<sect2 arch="x86" id="laptops"><title>Laptops</title>
<para>
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 (<quote>airplane
mode</quote>). 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
<ulink url="&url-x86-laptop;">Linux Laptop pages</ulink>.
</para>
</sect2>
<sect2 condition="defaults-smp">
<title>Multiple Processors</title>
<para>
Multiprocessor support — also called <quote>symmetric
multiprocessing</quote> 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 quite common in
recent years even for rather low-end desktop computers and laptops with
the introduction of so called <quote>multi-core</quote> processors. These contain
two or more processor units, called <quote>cores</quote>, in one physical chip.
</para><para>
The standard &debian; &release; kernel image has been compiled with SMP support.
It is also usable on non-SMP systems without problems.
</para>
</sect2>
<sect2 condition="smp-alternatives">
<title>Multiple Processors</title>
<para>
Multiprocessor support — also called <quote>symmetric
multiprocessing</quote> or SMP — is available for this architecture.
The standard &debian; &release; kernel image has been compiled with
<firstterm>SMP-alternatives</firstterm> support. This means that the kernel
will detect the number of processors (or processor cores) and will
automatically deactivate SMP on uniprocessor systems.
</para><para>
Having multiple processors in a computer was originally
only an issue for high-end server systems but has become quite common in
recent years even for rather low-end desktop computers and laptops with
the introduction of so called <quote>multi-core</quote> processors. These contain
two or more processor units, called <quote>cores</quote>, in one physical chip.
</para><para arch="i386">
The 486 flavour of the &debian; kernel image packages for &arch-title;
is not compiled with SMP support.
</para>
</sect2>
<sect2 condition="supports-smp">
<title>Multiple Processors</title>
<para>
Multiprocessor support — also called <quote>symmetric
multiprocessing</quote> 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.
</para><para>
In order to take advantage of multiple processors, you'll have to
replace the standard &debian; kernel.<phrase arch="linux-any"> You can find a discussion of how
to do this in <xref linkend="kernel-baking"/>. At this time
(kernel version &kernelversion;) the way you enable SMP is to select
<quote>&smp-config-option;</quote> in the <quote>&smp-config-section;</quote>
section of the kernel config.</phrase>
</para>
</sect2>
<sect2 condition="supports-smp-sometimes">
<title>Multiple Processors</title>
<para>
Multiprocessor support — also called <quote>symmetric
multiprocessing</quote> 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.
</para><para>
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.
</para><para>
You can also build your own customized kernel to support SMP.<phrase arch="linux-any"> You can find
a discussion of how to do this in <xref linkend="kernel-baking"/>. At this
time (kernel version &kernelversion;) the way you enable SMP is to select
<quote>&smp-config-option;</quote> in the <quote>&smp-config-section;</quote>
section of the kernel config.</phrase>
</para>
</sect2>
<sect2 id="gfx" arch="not-s390"><title>Graphics Card Support</title>
<para arch="x86">
&debian;'s support for graphical interfaces is determined by the
underlying support found in X.Org's X11 system. On modern PCs,
having a graphical display usually works out of the box. 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 <quote>firmware</quote> images (see <xref
linkend="hardware-firmware"/>). 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.
</para><para>
Details on supported graphics cards and pointing devices can be found at
<ulink url="&url-xorg;"></ulink>. &debian; &release; ships
with X.Org version &x11ver;.
</para><para arch="mips">
<!-- FIXME: mention explicit graphics chips and not system names -->
The X.Org X Window System is only supported on the SGI Indy and the O2.
</para><para arch="sparc">
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 <classname>afbinit</classname> package, and read the documentation
included with it on how to activate the card.
</para><para arch="sparc">
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.
</para>
</sect2>
&network-cards.xml;
&accessibility-hardware.xml;
&supported-peripherals.xml;
</sect1>
<sect1 arch="not-s390" id="hardware-firmware">
<title>Devices Requiring Firmware</title>
<para>
Besides the availability of a device driver, some hardware also requires
so-called <firstterm>firmware</firstterm> or <firstterm>microcode</firstterm>
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.
</para><para>
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.
</para><para>
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.
</para><para>
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 <xref linkend="loading-firmware"/> for detailed information on how to
load firmware files or packages during the installation.
</para><para>
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).
</para>
</sect1>
|