1 # Maintained by Axel Boldt (axel@uni-paderborn.de)
2 #
3 # This version of the Linux kernel configuration help texts
4 # corresponds to the kernel versions 2.3.x.
5 #
6 # Translations of this file available on the WWW:
7 #
8 # - Japanese, maintained by the JF Project (JF@linux.or.jp), at
9 # http://www.linux.or.jp/JF/JFdocs/Configure.help/
10 # - Russian, by kaf@linux.nevod.perm.su, at
11 # http://nevod.perm.su/service/linux/doc/kernel/Configure.help
12 # - French, by Pierre Tane (tanep@bigfoot.com), at
13 # http://www.traduc.org/kernelfr
14 # - Spanish, by Carlos Perelló Marín (fperllo@ehome.encis.es), at
15 # http://visar.csustan.edu/~carlos/
16 # - Italian, by Alessandro Rubini (rubini@linux.it), at
17 # ftp://ftp-pavia1.linux.it/pub/linux/Configure.help
18 # - Polish, by Cezar Cichocki (cezar@cs.net.pl), at
19 # http://www.cs.net.pl/~cezar/Kernel
20 # - German, by SuSE, at http://www.suse.de/~ke/kernel . This patch
21 # also includes infrastructure to support different languages.
22 #
23 # To access a document on the WWW, you need to have a direct Internet
24 # connection and a browser program such as netscape or lynx. If you
25 # only have email access, you can still use FTP and WWW servers: send
26 # an email to mail-server@rtfm.mit.edu with the text
27 # send usenet/news.answers/internet-services/access-via-email
28 # in the body of the message.
29 #
30 # Information about what a kernel is, what it does, how to patch and
31 # compile it and much more is contained in the Kernel-HOWTO, available
32 # at http://www.linuxdoc.org/docs.html#howto . Before you start
33 # compiling, make sure that you have the necessary versions of all
34 # programs and libraries required to compile and run this kernel; they
35 # are listed in the file Documentation/Changes. Make sure to read the
36 # toplevel kernel README file as well.
37 #
38 # Format of this file: description<nl>variable<nl>help text<nl><nl>. If
39 # the question being documented is of type "choice", we list only the
40 # first occurring config variable. The help texts may contain empty
41 # lines, but every non-empty line must be indented two positions.
42 # Order of the help texts does not matter, however, no variable should
43 # be documented twice: if it is, only the first occurrence will be
44 # used by Configure. We try to keep the help texts of related variables
45 # close together. Lines starting with `#' are ignored. To be nice to
46 # menuconfig, limit your line length to 70 characters. Use emacs'
47 # kfill.el to edit and ispell.el to spell check this file or you lose.
48 #
49 # If you add a help text to this file, please try to be as gentle as
50 # possible. Don't use unexplained acronyms and generally write for the
51 # hypothetical ignorant but intelligent user who has just bought a PC,
52 # removed Windows, installed Linux and is now recompiling the kernel
53 # for the first time. Tell them what to do if they're unsure. Technical
54 # information should go in a README in the Documentation directory.
55 # Mention all the relevant READMEs and HOWTOs in the help text.
56 # Repetitions are fine since the help texts are not meant to be read
57 # in sequence.
58 #
59 # All this was shamelessly stolen from several different sources. Many
60 # thanks to all the contributors. Feel free to use these help texts in
61 # your own kernel configuration tools. The texts are copyrighted (c)
62 # 1995-2000 by Axel Boldt and many others and are governed by the GNU
63 # General Public License.
64
65 Prompt for development and/or incomplete code/drivers
66 CONFIG_EXPERIMENTAL
67 Some of the various things that Linux supports (such as network
68 drivers, file systems, network protocols, etc.) can be in a state
69 of development where the functionality, stability, or the level of
70 testing is not yet high enough for general use. This is usually
71 known as the "alpha-test" phase amongst developers. If a feature is
72 currently in alpha-test, then the developers usually discourage
73 uninformed widespread use of this feature by the general public to
74 avoid "Why doesn't this work?" type mail messages. However, active
75 testing and use of these systems is welcomed. Just be aware that it
76 may not meet the normal level of reliability or it may fail to work
77 in some special cases. Detailed bug reports from people familiar
78 with the kernel internals are usually welcomed by the developers
79 (before submitting bug reports, please read the documents README,
80 MAINTAINERS, REPORTING-BUGS, Documentation/BUG-HUNTING, and
81 Documentation/oops-tracing.txt in the kernel source).
82
83 This option will also make obsoleted drivers available. These are
84 drivers that have been replaced by something else, and/or are
85 scheduled to be removed in a future kernel release.
86
87 Unless you intend to help test and develop a feature or driver that
88 falls into this category, or you have a situation that requires
89 using these features, you should probably say N here, which will
90 cause this configure script to present you with fewer choices. If
91 you say Y here, you will be offered the choice of using features or
92 drivers that are currently considered to be in the alpha-test phase.
93
94 Symmetric Multi Processing
95 CONFIG_SMP
96 This enables support for systems with more than one CPU. If you have
97 a system with only one CPU, like most personal computers, say N. If
98 you have a system with more than one CPU, say Y.
99
100 If you say N here, the kernel will run on single and multiprocessor
101 machines, but will use only one CPU of a multiprocessor machine. If
102 you say Y here, the kernel will run on many, but not all,
103 singleprocessor machines. On a singleprocessor machine, the kernel
104 will run faster if you say N here.
105
106 Note that if you say Y here and choose architecture "586" or
107 "Pentium" under "Processor family", the kernel will not work on 486
108 architectures. Similarly, multiprocessor kernels for the "PPro"
109 architecture may not work on all Pentium based boards.
110
111 People using multiprocessor machines who say Y here should also say
112 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
113 Management" code will be disabled if you say Y here.
114
115 See also the files Documentation/smp.tex, Documentation/smp.txt,
116 Documentation/i386/IO-APIC.txt, Documentation/nmi_watchdog.txt and the
117 SMP-FAQ on the WWW at http://www.irisa.fr/prive/mentre/smp-faq/ .
118
119 If you don't know what to do here, say N.
120
121 APIC and IO-APIC Support on Uniprocessors
122 CONFIG_X86_UP_IOAPIC
123 APIC (Advanced Programmable Interrupt Controller) is a scheme for
124 delivering hardware interrupt requests to the CPU. It is commonly
125 used on systems with several CPU's. If you have a single-CPU system
126 which uses APIC, you can say Y here to use it. If you say Y here
127 even though your machine doesn't have APIC, then the kernel will
128 still run with no slowdown at all.
129
130 If you have system with several CPU's, you do not need to say Y
131 here: APIC will be used automatically.
132
133 Kernel math emulation
134 CONFIG_MATH_EMULATION
135 Linux can emulate a math coprocessor (used for floating point
136 operations) if you don't have one. 486DX and Pentium processors have
137 a math coprocessor built in, 486SX and 386 do not, unless you added
138 a 487DX or 387, respectively. (The messages during boot time can
139 give you some hints here ["man dmesg"].) Everyone needs either a
140 coprocessor or this emulation.
141
142 If you don't have a math coprocessor, you need to say Y here; if you
143 say Y here even though you have a coprocessor, the coprocessor will
144 be used nevertheless. (This behavior can be changed with the kernel
145 command line option "no387", which comes handy if your coprocessor
146 is broken. Try "man bootparam" or see the documentation of your boot
147 loader (lilo or loadlin) about how to pass options to the kernel at
148 boot time.) This means that it is a good idea to say Y here if you
149 intend to use this kernel on different machines.
150
151 More information about the internals of the Linux math coprocessor
152 emulation can be found in arch/i386/math-emu/README.
153
154 If you are not sure, say Y; apart from resulting in a 66 KB bigger
155 kernel, it won't hurt.
156
157 Timer and CPU usage LEDs
158 CONFIG_LEDS
159 If you say Y here, the LEDs on your machine will be used
160 to provide useful information about your current system status.
161
162 If you are compiling a kernel for a NetWinder or EBSA-285, you will
163 be able to select which LEDs are active using the options below. If
164 you are compiling a kernel for the EBSA-110 or the LART however, the
165 red LED will simply flash regularly to indicate that the system is
166 still functional. It is safe to say Y here if you have a CATS
167 system, but the driver will do nothing.
168
169 Timer LED
170 CONFIG_LEDS_TIMER
171 If you say Y here, one of the system LEDs (the green one on the
172 NetWinder, the amber one on the EBSA285, or the red one on the LART)
173 will flash regularly to indicate that the system is still
174 operational. This is mainly useful to kernel hackers who are
175 debugging unstable kernels.
176
177 The LART uses the same LED for both Timer LED and CPU usage LED
178 functions. You may choose to use both, but the Timer LED function
179 will overrule the CPU usage LED.
180
181 CPU usage LED
182 CONFIG_LEDS_CPU
183 If you say Y here, the red LED will be used to give a good real
184 time indication of CPU usage, by lighting whenever the idle task
185 is not currently executing.
186
187 The LART uses the same LED for both Timer LED and CPU usage LED
188 functions. You may choose to use both, but the Timer LED function
189 will overrule the CPU usage LED.
190
191 Kernel FP software completion (EXPERIMENTAL)
192 CONFIG_MATHEMU
193 This option is required for IEEE compliant floating point arithmetic
194 on the Alpha. The only time you would ever not say Y is to say M in
195 order to debug the code. Say Y unless you know what you are doing.
196
197 High Memory support
198 CONFIG_NOHIGHMEM
199 Linux can use up to 64 Gigabytes of physical memory on x86 systems.
200 However, the address space of 32-bit x86 processors is only 4
201 Gigabytes large. That means that, if you have a large amount of
202 physical memory, not all of it can be "permanently mapped" by the
203 kernel. The physical memory that's not permanently mapped is called
204 "high memory".
205
206 If you are compiling a kernel which will never run on a machine with
207 more than 1 Gigabyte total physical RAM, answer "off" here (default
208 choice and suitable for most users). This will result in a "3GB/1GB"
209 split: 3GB are mapped so that each process sees a 3GB virtual memory
210 space and the remaining part of the 4GB virtual memory space is used
211 by the kernel to permanently map as much physical memory as
212 possible.
213
214 If the machine has between 1 and 4 Gigabytes physical RAM, then
215 answer "4GB" here.
216
217 If more than 4 Gigabytes is used then answer "64GB" here. This
218 selection turns Intel PAE (Physical Address Extension) mode on.
219 PAE implements 3-level paging on IA32 processors. PAE is fully
220 supported by Linux, PAE mode is implemented on all recent Intel
221 processors (Pentium Pro and better). NOTE: If you say "64GB" here,
222 then the kernel will not boot on CPUs that don't support PAE!
223
224 The actual amount of total physical memory will either be
225 auto detected or can be forced by using a kernel command line option
226 such as "mem=256M". (Try "man bootparam" or see the documentation of
227 your boot loader (lilo or loadlin) about how to pass options to the
228 kernel at boot time.)
229
230 If unsure, say "off".
231
232 Normal PC floppy disk support
233 CONFIG_BLK_DEV_FD
234 If you want to use the floppy disk drive(s) of your PC under Linux,
235 say Y. Information about this driver, especially important for IBM
236 Thinkpad users, is contained in Documentation/floppy.txt. That file
237 also contains the location of the Floppy driver FAQ as well as
238 location of the fdutils package used to configure additional
239 parameters of the driver at run time.
240
241 This driver is also available as a module ( = code which can be
242 inserted in and removed from the running kernel whenever you want).
243 The module will be called floppy.o. If you want to compile it as a
244 module, say M here and read Documentation/modules.txt.
245
246 Support for PowerMac floppy
247 CONFIG_MAC_FLOPPY
248 If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple)
249 floppy controller, say Y here. Most commonly found in PowerMacs.
250
251 RAM disk support
252 CONFIG_BLK_DEV_RAM
253 Saying Y here will allow you to use a portion of your RAM memory as
254 a block device, so that you can make file systems on it, read and
255 write to it and do all the other things that you can do with normal
256 block devices (such as hard drives). It is usually used to load and
257 store a copy of a minimal root file system off of a floppy into RAM
258 during the initial install of Linux.
259
260 Note that the kernel command line option "ramdisk=XX" is now
261 obsolete. For details, read Documentation/ramdisk.txt.
262
263 If you want to compile this as a module ( = code which can be
264 inserted in and removed from the running kernel whenever you want),
265 say M and read Documentation/modules.txt. The module will be called
266 rd.o.
267
268 Most normal users won't need the RAM disk functionality, and can
269 thus say N here.
270
271 Initial RAM disk (initrd) support
272 CONFIG_BLK_DEV_INITRD
273 The initial RAM disk is a RAM disk that is loaded by the boot loader
274 (loadlin or lilo) and that is mounted as root before the normal boot
275 procedure. It is typically used to load modules needed to mount the
276 "real" root file system, etc. See Documentation/initrd.txt for
277 details.
278
279 Loop device support
280 CONFIG_BLK_DEV_LOOP
281 Saying Y here will allow you to use a regular file as a block
282 device; you can then create a file system on that block device and
283 mount it just as you would mount other block devices such as hard
284 drive partitions, CDROM drives or floppy drives. The loop devices
285 are block special device files with major number 7 and typically
286 called /dev/loop0, /dev/loop1 etc.
287
288 This is useful if you want to check an ISO 9660 file system before
289 burning the CD, or if you want to use floppy images without first
290 writing them to floppy. Furthermore, some Linux distributions avoid
291 the need for a dedicated Linux partition by keeping their complete
292 root file system inside a DOS FAT file using this loop device
293 driver.
294
295 The loop device driver can also be used to "hide" a file system in a
296 disk partition, floppy, or regular file, either using encryption
297 (scrambling the data) or steganography (hiding the data in the low
298 bits of, say, a sound file). This is also safe if the file resides
299 on a remote file server. If you want to do this, you will first have
300 to acquire and install a kernel patch from
301 ftp://ftp.kerneli.org/pub/kerneli/ , and then you need to
302 say Y to this option.
303
304 Note that alternative ways to use encrypted file systems are
305 provided by the cfs package, which can be gotten from
306 ftp://ftp.kerneli.org/pub/kerneli/net-source/ , and the newer tcfs
307 package, available at http://tcfs.dia.unisa.it/ . You do not need to
308 say Y here if you want to use one of these. However, using cfs
309 requires saying Y to "NFS file system support" below while using
310 tcfs requires applying a kernel patch. An alternative steganography
311 solution is provided by StegFS, also available from
312 ftp://ftp.kerneli.org/pub/kerneli/net-source/ .
313
314 To use the loop device, you need the losetup utility and a recent
315 version of the mount program, both contained in the util-linux
316 package. The location and current version number of util-linux is
317 contained in the file Documentation/Changes.
318
319 Note that this loop device has nothing to do with the loopback
320 device used for network connections from the machine to itself.
321
322 If you want to compile this driver as a module ( = code which can be
323 inserted in and removed from the running kernel whenever you want),
324 say M here and read Documentation/modules.txt. The module will be
325 called loop.o.
326
327 Most users will answer N here.
328
329 Network Block Device support
330 CONFIG_BLK_DEV_NBD
331 Saying Y here will allow your computer to be a client for network
332 block devices, i.e. it will be able to use block devices exported by
333 servers (mount file systems on them etc.). Communication between
334 client and server works over TCP/IP networking, but to the client
335 program this is hidden: it looks like a regular local file access to
336 a block device special file such as /dev/nd0.
337
338 Network block devices also allows you to run a block-device in
339 userland (making server and client physically the same computer,
340 communicating using the loopback network device).
341
342 Read Documentation/nbd.txt for more information, especially about
343 where to find the server code, which runs in user space and does not
344 need special kernel support.
345
346 Note that this has nothing to do with the network file systems NFS
347 or Coda; you can say N here even if you intend to use NFS or Coda.
348
349 If you want to compile this driver as a module ( = code which can be
350 inserted in and removed from the running kernel whenever you want),
351 say M here and read Documentation/modules.txt. The module will be
352 called nbd.o.
353
354 If unsure, say N.
355
356 ATA/IDE/MFM/RLL support
357 CONFIG_IDE
358 If you say Y here, your kernel will be able to manage low cost mass
359 storage units such as ATA/(E)IDE and ATAPI units. The most common
360 cases are IDE hard drives and ATAPI CDROM drives.
361
362 If your system is pure SCSI and doesn't use these interfaces, you
363 can say N here.
364
365 Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
366 for mass storage units such as hard disks. It was designed by
367 Western Digital and Compaq Computer in 1984. It was then named
368 ST506. Quite a number of disks use the IDE interface.
369
370 AT Attachment (ATA) is the superset of the IDE specifications.
371 ST506 was also called ATA-1.
372
373 Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
374 ATA-3. It provides support for larger disks (up to 8.4GB by means of
375 the LBA standard), more disks (4 instead of 2) and for other mass
376 storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
377 ATA-4 and provides faster (and more CPU friendly) transfer modes
378 than previous PIO (Programmed processor Input/Output) from previous
379 ATA/IDE standards by means of fast DMA controllers.
380
381 ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
382 CDROM drives, similar in many respects to the SCSI protocol.
383
384 SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
385 designed in order to prevent data corruption and disk crash by
386 detecting pre hardware failure conditions (heat, access time, and
387 the like...). Disks built since June 1995 may follow this
388 standard. The kernel itself don't manage this; however there are
389 quite a number of user programs such as smart that can query the
390 status of SMART parameters disk.
391
392 If you want to compile this driver as a module ( = code which can be
393 inserted in and removed from the running kernel whenever you want),
394 say M here and read Documentation/modules.txt. The module will be
395 called ide.o.
396
397 For further information, please read Documentation/ide.txt.
398
399 If unsure, say Y.
400
401 Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
402 CONFIG_BLK_DEV_IDE
403 If you say Y here, you will use the full-featured IDE driver to
404 control up to ten ATA/IDE interfaces, each being able to serve a
405 "master" and a "slave" device, for a total of up to twenty ATA/IDE
406 disk/cdrom/tape/floppy drives.
407
408 Useful information about large (>540 MB) IDE disks, multiple
409 interfaces, what to do if ATA/IDE devices are not automatically
410 detected, sound card ATA/IDE ports, module support, and other
411 topics, is contained in Documentation/ide.txt. For detailed
412 information about hard drives, consult the Disk-HOWTO and the
413 Multi-Disk-HOWTO, available from
414 http://www.linuxdoc.org/docs.html#howto .
415
416 To fine-tune ATA/IDE drive/interface parameters for improved
417 performance, look for the hdparm package at
418 ftp://metalab.unc.edu/pub/Linux/kernel/patches/diskdrives/ .
419
420 If you want to compile this driver as a module ( = code which can be
421 inserted in and removed from the running kernel whenever you want),
422 say M here and read Documentation/modules.txt and
423 Documentation/ide.txt. The module will be called ide-mod.o. Do not
424 compile this driver as a module if your root file system (the one
425 containing the directory /) is located on an IDE device.
426
427 If you have one or more IDE drives, say Y or M here. If your system
428 has no IDE drives, or if memory requirements are really tight, you
429 could say N here, and select the "Old hard disk driver" below
430 instead to save about 13 KB of memory in the kernel.
431
432 Old hard disk (MFM/RLL/IDE) driver
433 CONFIG_BLK_DEV_HD_ONLY
434 There are two drivers for MFM/RLL/IDE hard disks. Most people use
435 the newer enhanced driver, but this old one is still around for two
436 reasons. Some older systems have strange timing problems and seem to
437 work only with the old driver (which itself does not work with some
438 newer systems). The other reason is that the old driver is smaller,
439 since it lacks the enhanced functionality of the new one. This makes
440 it a good choice for systems with very tight memory restrictions, or
441 for systems with only older MFM/RLL/ESDI drives. Choosing the old
442 driver can save 13 KB or so of kernel memory.
443
444 If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver
445 instead of this one. For more detailed information, read the
446 Disk-HOWTO, available from
447 http://www.linuxdoc.org/docs.html#howto .
448
449 Use old disk-only driver on primary interface
450 CONFIG_BLK_DEV_HD_IDE
451 There are two drivers for MFM/RLL/IDE disks. Most people use just
452 the new enhanced driver by itself. This option however installs the
453 old hard disk driver to control the primary IDE/disk interface in
454 the system, leaving the new enhanced IDE driver to take care of only
455 the 2nd/3rd/4th IDE interfaces. Doing this will prevent you from
456 having an IDE/ATAPI CDROM or tape drive connected to the primary IDE
457 interface. Choosing this option may be useful for older systems
458 which have MFM/RLL/ESDI controller+drives at the primary port
459 address (0x1f0), along with IDE drives at the secondary/3rd/4th port
460 addresses.
461
462 Normally, just say N here; you will then use the new driver for all
463 4 interfaces.
464
465 Include IDE/ATA-2 DISK support
466 CONFIG_BLK_DEV_IDEDISK
467 This will include enhanced support for MFM/RLL/IDE hard disks. If
468 you have a MFM/RLL/IDE disk, and there is no special reason to use
469 the old hard disk driver instead, say Y. If you have an SCSI-only
470 system, you can say N here.
471
472 If you want to compile this driver as a module ( = code which can be
473 inserted in and removed from the running kernel whenever you want),
474 say M here and read Documentation/modules.txt. The module will be
475 called ide-disk.o. Do not compile this driver as a module if your
476 root file system (the one containing the directory /) is located on
477 the IDE disk. If unsure, say Y.
478
479 Use multi-mode by default
480 CONFIG_IDEDISK_MULTI_MODE
481 If you get this error, try to say Y here:
482
483 hda: set_multmode: status=0x51 { DriveReady SeekComplete Error }
484 hda: set_multmode: error=0x04 { DriveStatusError }
485
486 If in doubt, say N.
487
488 Include IDE/ATAPI CDROM support
489 CONFIG_BLK_DEV_IDECD
490 If you have a CDROM drive using the ATAPI protocol, say Y. ATAPI is
491 a newer protocol used by IDE CDROM and TAPE drives, similar to the
492 SCSI protocol. Most new CDROM drives use ATAPI, including the
493 NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI
494 double(2X) or better speed drives.
495
496 If you say Y here, the CDROM drive will be identified at boot time
497 along with other IDE devices, as "hdb" or "hdc", or something
498 similar (check the boot messages with dmesg). If this is your only
499 CDROM drive, you can say N to all other CDROM options, but be sure
500 to say Y or M to "ISO 9660 CDROM file system support".
501
502 Read the CDROM-HOWTO, available from
503 http://www.linuxdoc.org/docs.html#howto and the file
504 Documentation/cdrom/ide-cd. Note that older versions of lilo (the
505 Linux boot loader) cannot properly deal with IDE/ATAPI CDROMs, so
506 install lilo-16 or higher, available from
507 ftp://metalab.unc.edu/pub/Linux/system/boot/lilo .
508
509 If you want to compile the driver as a module ( = code which can be
510 inserted in and removed from the running kernel whenever you want),
511 say M here and read Documentation/modules.txt. The module will be
512 called ide-cd.o.
513
514 Include IDE/ATAPI TAPE support
515 CONFIG_BLK_DEV_IDETAPE
516 If you have an IDE tape drive using the ATAPI protocol, say Y.
517 ATAPI is a newer protocol used by IDE tape and CDROM drives, similar
518 to the SCSI protocol. If you have an SCSI tape drive however, you
519 can say N here.
520
521 You should also say Y if you have an OnStream DI-30 tape drive; this
522 will not work with the SCSI protocol, until there is support for the
523 SC-30 and SC-50 versions.
524
525 If you say Y here, the tape drive will be identified at boot time
526 along with other IDE devices, as "hdb" or "hdc", or something
527 similar, and will be mapped to a character device such as "ht0"
528 (check the boot messages with dmesg). Be sure to consult the
529 drivers/ide/ide-tape.c and Documentation/ide.txt files for usage
530 information.
531
532 If you want to compile the driver as a module ( = code which can be
533 inserted in and removed from the running kernel whenever you want),
534 say M here and read Documentation/modules.txt. The module will be
535 called ide-tape.o.
536
537 Include IDE/ATAPI FLOPPY support
538 CONFIG_BLK_DEV_IDEFLOPPY
539 If you have an IDE floppy drive which uses the ATAPI protocol,
540 answer Y. ATAPI is a newer protocol used by IDE CDROM/tape/floppy
541 drives, similar to the SCSI protocol.
542
543 The LS-120 and the IDE/ATAPI Iomega ZIP drive are also supported by
544 this driver. For information about jumper settings and the question
545 of when a ZIP drive uses a partition table, see
546 http://www.win.tue.nl/~aeb/linux/zip/zip-1.html .
547 (ATAPI PD-CD/CDR drives are not supported by this driver; support
548 for PD-CD/CDR drives is available if you answer Y to
549 "SCSI emulation support", below).
550
551 If you say Y here, the FLOPPY drive will be identified along with
552 other IDE devices, as "hdb" or "hdc", or something similar (check
553 the boot messages with dmesg).
554
555 If you want to compile the driver as a module ( = code which can be
556 inserted in and removed from the running kernel whenever you want),
557 say M here and read Documentation/modules.txt. The module will be
558 called ide-floppy.o.
559
560 SCSI emulation support
561 CONFIG_BLK_DEV_IDESCSI
562 This will provide SCSI host adapter emulation for IDE ATAPI devices,
563 and will allow you to use a SCSI device driver instead of a native
564 ATAPI driver.
565
566 This is useful if you have an ATAPI device for which no native
567 driver has been written (for example, an ATAPI PD-CD or CDR drive);
568 you can then use this emulation together with an appropriate SCSI
569 device driver. In order to do this, say Y here and to "SCSI support"
570 and "SCSI generic support", below. You must then provide the kernel
571 command line "hdx=scsi" (try "man bootparam" or see the
572 documentation of your boot loader (lilo or loadlin) about how to
573 pass options to the kernel at boot time) for devices if you want the
574 native EIDE sub-drivers to skip over the native support, so that
575 this SCSI emulation can be used instead. This is required for use of
576 CD-RW's.
577
578 Note that this option does NOT allow you to attach SCSI devices to a
579 box that doesn't have a SCSI host adapter installed.
580
581 If both this SCSI emulation and native ATAPI support are compiled
582 into the kernel, the native support will be used.
583
584 ISA-PNP EIDE support
585 CONFIG_BLK_DEV_ISAPNP
586 If you have an ISA EIDE card that is PnP (Plug and Play) and
587 requires setup first before scanning for devices, say Y here.
588
589 If unsure, say N.
590
591 CMD640 chipset bugfix/support
592 CONFIG_BLK_DEV_CMD640
593 The CMD-Technologies CMD640 IDE chip is used on many common 486 and
594 Pentium motherboards, usually in combination with a "Neptune" or
595 "SiS" chipset. Unfortunately, it has a number of rather nasty
596 design flaws that can cause severe data corruption under many common
597 conditions. Say Y here to include code which tries to automatically
598 detect and correct the problems under Linux. This option also
599 enables access to the secondary IDE ports in some CMD640 based
600 systems.
601
602 This driver will work automatically in PCI based systems (most new
603 systems have PCI slots). But if your system uses VESA local bus
604 (VLB) instead of PCI, you must also supply a kernel boot parameter
605 to enable the CMD640 bugfix/support: "ide0=cmd640_vlb". (Try "man
606 bootparam" or see the documentation of your boot loader about how to
607 pass options to the kernel.)
608
609 The CMD640 chip is also used on add-in cards by Acculogic, and on
610 the "CSA-6400E PCI to IDE controller" that some people have. For
611 details, read Documentation/ide.txt.
612
613 CMD640 enhanced support
614 CONFIG_BLK_DEV_CMD640_ENHANCED
615 This option includes support for setting/autotuning PIO modes and
616 prefetch on CMD640 IDE interfaces. For details, read
617 Documentation/ide.txt. If you have a CMD640 IDE interface and your
618 BIOS does not already do this for you, then say Y here. Otherwise
619 say N.
620
621 RZ1000 chipset bugfix/support
622 CONFIG_BLK_DEV_RZ1000
623 The PC-Technologies RZ1000 IDE chip is used on many common 486 and
624 Pentium motherboards, usually along with the "Neptune" chipset.
625 Unfortunately, it has a rather nasty design flaw that can cause
626 severe data corruption under many conditions. Say Y here to include
627 code which automatically detects and corrects the problem under
628 Linux. This may slow disk throughput by a few percent, but at least
629 things will operate 100% reliably.
630
631 Generic PCI IDE chipset support
632 CONFIG_BLK_DEV_IDEPCI
633 Say Y here for PCI systems which use IDE drive(s).
634 This option helps the IDE driver to automatically detect and
635 configure all PCI-based IDE interfaces in your system.
636
637 Support for sharing PCI IDE interrupts
638 CONFIG_IDEPCI_SHARE_IRQ
639 Some ATA/IDE chipsets have hardware support which allows for
640 sharing a single IRQ with other cards. To enable support for
641 this in the ATA/IDE driver, say Y here.
642
643 It is safe to say Y to this question, in most cases.
644 If unsure, say N.
645
646 Generic PCI bus-master DMA support
647 CONFIG_BLK_DEV_IDEDMA_PCI
648 If your PCI system uses IDE drive(s) (as opposed to SCSI, say) and
649 is capable of bus-master DMA operation (most Pentium PCI systems),
650 you will want to say Y here to reduce CPU overhead. You can then use
651 the "hdparm" utility to enable DMA for drives for which it was not
652 enabled automatically. By default, DMA is not enabled automatically
653 for these drives, but you can change that by saying Y to the
654 following question "Use DMA by default when available". You can get
655 the latest version of the hdparm utility from
656 ftp://metalab.unc.edu/pub/Linux/system/hardware/ .
657
658 Read the comments at the beginning of drivers/ide/ide-dma.c and
659 the file Documentation/ide.txt for more information.
660
661 It is safe to say Y to this question.
662
663 Good-Bad DMA Model-Firmware (EXPERIMENTAL)
664 CONFIG_IDEDMA_NEW_DRIVE_LISTINGS
665 If you say Y here, the model and firmware revision of your drive
666 will be compared against a blacklist of buggy drives that claim to
667 be (U)DMA capable but aren't. This is a blanket on/off test with no
668 speed limit options.
669
670 Straight GNU GCC 2.7.3/2.8.X compilers are known to be safe;
671 whereas, many versions of EGCS have a problem and miscompile if you
672 say Y here.
673
674 If in doubt, say N.
675
676 Boot off-board chipsets first support
677 CONFIG_BLK_DEV_OFFBOARD
678 Normally, IDE controllers built into the motherboard (on-board
679 controllers) are assigned to ide0 and ide1 while those on add-in PCI
680 cards (off-board controllers) are relegated to ide2 and ide3.
681 Answering Y here will allow you to reverse the situation, with
682 off-board controllers on ide0/1 and on-board controllers on ide2/3.
683 This can improve the usability of some boot managers such as lilo
684 when booting from a drive on an off-board controller.
685
686 If you say Y here, and you actually want to reverse the device scan
687 order as explained above, you also need to issue the kernel command
688 line option "ide=reverse". (Try "man bootparam" or see the
689 documentation of your boot loader (lilo or loadlin) about how to
690 pass options to the kernel at boot time.)
691
692 Note that, if you do this, the order of the hd* devices will be
693 rearranged which may require modification of fstab and other files.
694
695 If in doubt, say N.
696
697 Use DMA by default when available
698 CONFIG_IDEDMA_PCI_AUTO
699 Prior to kernel version 2.1.112, Linux used to automatically use
700 DMA for IDE drives and chipsets which support it. Due to concerns
701 about a couple of cases where buggy hardware may have caused damage,
702 the default is now to NOT use DMA automatically. To revert to the
703 previous behaviour, say Y to this question.
704
705 If you suspect your hardware is at all flakey, say N here.
706 Do NOT email the IDE kernel people regarding this issue!
707
708 It is normally safe to answer Y to this question unless your
709 motherboard uses a VIA VP2 chipset, in which case you should say N.
710
711 IGNORE word93 Validation BITS
712 CONFIG_IDEDMA_IVB
713 Since various rules were applied and created ... et al. as it relates
714 the detection of vaild cable signals. This is a result of unclear terms
715 in ATA-4 and ATA-5 standards.
716
717 It is normally safe to answer Y; however, the default is N.
718
719 Various ATA, Work(s) In Progress (EXPERIMENTAL)
720 CONFIG_IDEDMA_PCI_WIP
721 If you enable this you will be able to use and test highly
722 developmental projects. If you say N, this configure script will
723 simply skip those options.
724
725 It is SAFEST to say N to this question.
726
727 3ware Hardware ATA-RAID support
728 CONFIG_BLK_DEV_3W_XXXX_RAID
729 3ware is the only hardware ATA-Raid product in Linux to date.
730 This card is 2,4, or 8 channel master mode support only.
731 SCSI support required!!!
732
733 http://www.3ware.com/
734
735 Please read the comments at the top of drivers/scsi/3w-xxxx.c
736
737 AEC62XX chipset support
738 CONFIG_BLK_DEV_AEC62XX
739 This driver adds up to 4 more EIDE devices sharing a single
740 interrupt. This add-on card is a bootable PCI UDMA controller. In
741 order to get this card to initialize correctly in some cases, you
742 should say Y here, and preferably also to "Use DMA by default when
743 available".
744
745 The ATP850U/UF is an UltraDMA 33 chipset base.
746 The ATP860 is an UltraDMA 66 chipset base.
747 The ATP860M(acintosh) version is an UltraDMA 66 chipset base.
748
749 Please read the comments at the top of drivers/ide/aec62xx.c
750 If you say Y here, then say Y to "Use DMA by default when available" as
751 well.
752
753 AEC62XX Tuning support
754 CONFIG_AEC62XX_TUNING
755 Please read the comments at the top of drivers/ide/aec62xx.c
756 If unsure, say N.
757
758 ALI M15x3 chipset support
759 CONFIG_BLK_DEV_ALI15X3
760 This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
761 onboard chipsets. It also tests for Simplex mode and enables
762 normal dual channel support.
763
764 If you say Y here, you also need to say Y to "Use DMA by default
765 when available", above.
766 Please read the comments at the top of drivers/ide/alim15x3.c
767
768 If unsure, say N.
769
770 ALI M15x3 WDC support (DANGEROUS)
771 CONFIG_WDC_ALI15X3
772 This allows for UltraDMA support for WDC drives that ignore CRC
773 checking. You are a fool for enabling this option, but there have
774 been requests. DO NOT COMPLAIN IF YOUR DRIVE HAS FS CORRUPTION, IF
775 YOU ENABLE THIS! No one will listen, just laugh for ignoring this
776 SERIOUS WARNING.
777
778 Using this option can allow WDC drives to run at ATA-4/5 transfer
779 rates with only an ATA-2 support structure.
780
781 SAY NO!
782
783 AMD7409 chipset support
784 CONFIG_BLK_DEV_AMD7409
785 This driver ensures (U)DMA support for the AMD756 Viper chipset.
786
787 If you say Y here, you also need to say Y to "Use DMA by default
788 when available", above.
789 Please read the comments at the top of drivers/ide/amd7409.c
790
791 If unsure, say N.
792
793 AMD Viper ATA-66 Override support (WIP)
794 CONFIG_AMD7409_OVERRIDE
795 This option auto-forces the ata66 flag.
796 This effect can be also invoked by calling "idex=ata66"
797 If unsure, say N.
798
799 CMD64X chipset support
800 CONFIG_BLK_DEV_CMD64X
801 Say Y here if you have an IDE controller which uses any of these
802 chipsets: CMD643, CMD646, or CMD648.
803
804 CY82C693 chipset support
805 CONFIG_BLK_DEV_CY82C693
806 This driver adds detection and support for the CY82C693 chipset
807 used on Digital's PC-Alpha 164SX boards.
808
809 If you say Y here, you need to say Y to "Use DMA by default
810 when available" as well.
811
812 Cyrix CS5530 MediaGX chipset support
813 CONFIG_BLK_DEV_CS5530
814 Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
815 will automatically be detected and configured if found.
816
817 It is safe to say Y to this question.
818
819 People with SCSI-only systems should say N here. If unsure, say Y.
820
821 HPT34X chipset support
822 CONFIG_BLK_DEV_HPT34X
823 This driver adds up to 4 more EIDE devices sharing a single
824 interrupt. The HPT343 chipset in its current form is a non-bootable
825 controller; the HPT345/HPT363 chipset is a bootable (needs BIOS FIX)
826 PCI UDMA controllers. This driver requires dynamic tuning of the
827 chipset during the ide-probe at boot time. It is reported to support
828 DVD II drives, by the manufacturer.
829
830 HPT34X AUTODMA support (WIP)
831 CONFIG_HPT34X_AUTODMA
832 This is a dangerous thing to attempt currently! Please read the
833 comments at the top of drivers/ide/hpt34x.c If you say Y here,
834 then say Y to "Use DMA by default when available" as well.
835
836 If unsure, say N.
837
838 HPT366 chipset support
839 CONFIG_BLK_DEV_HPT366
840 HPT366 is an Ultra DMA chipset for ATA-66.
841 HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
842 HPT370 is an Ultra DMA chipset for ATA-100.
843
844 This driver adds up to 4 more EIDE devices sharing a single
845 interrupt.
846
847 The HPT366 chipset in its current form is bootable. One solution
848 for this problem are special LILO commands for redirecting the
849 reference to device 0x80. The other solution is to say Y to "Boot
850 off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless
851 your mother board has the chipset natively mounted. Regardless one
852 should use the fore mentioned option and call at LILO or include
853 "ide=reverse" in LILO's append-line.
854
855 This driver requires dynamic tuning of the chipset during the
856 ide-probe at boot. It is reported to support DVD II drives, by the
857 manufacturer.
858
859 NS87415 support (EXPERIMENTAL)
860 CONFIG_BLK_DEV_NS87415
861 This driver adds detection and support for the NS87415 chip
862 (used in SPARC64, among others).
863
864 Please read the comments at the top of drivers/ide/ns87415.c.
865
866 OPTi 82C621 enhanced support (EXPERIMENTAL)
867 CONFIG_BLK_DEV_OPTI621
868 This is a driver for the OPTi 82C621 EIDE controller.
869 Please read the comments at the top of drivers/ide/opti621.c.
870
871 ServerWorks OSB4 chipset support (EXPERIMENTAL)
872 CONFIG_BLK_DEV_OSB4
873 This driver adds PIO/DMA support for the Serverworks OSB4 chipset
874
875 Intel PIIXn chipsets support
876 CONFIG_BLK_DEV_PIIX
877 This driver adds PIO mode setting and tuning for all PIIX IDE
878 controllers by Intel. Since the BIOS can sometimes improperly tune
879 PIO 0-4 mode settings, this allows dynamic tuning of the chipset
880 via the standard end-user tool 'hdparm'.
881
882 Please read the comments at the top of drivers/ide/piix.c.
883
884 If you say Y here, you should also say Y to "PIIXn Tuning support",
885 below.
886
887 If unsure, say N.
888
889 PIIXn Tuning support
890 CONFIG_PIIX_TUNING
891 This driver extension adds DMA mode setting and tuning for all PIIX
892 IDE controllers by Intel. Since the BIOS can sometimes improperly
893 set up the device/adapter combination and speed limits, it has
894 become a necessity to back/forward speed devices as needed.
895
896 Case 430HX/440FX PIIX3 need speed limits to reduce UDMA to DMA mode
897 2 if the BIOS can not perform this task at initialization.
898
899 If unsure, say N.
900
901 PROMISE PDC20246/PDC20262/PDC20267 support
902 CONFIG_BLK_DEV_PDC202XX
903 Promise Ultra33 or PDC20246
904 Promise Ultra66 or PDC20262
905 Promise Ultra100 or PDC20265/PDC20267
906
907 This driver adds up to 4 more EIDE devices sharing a single
908 interrupt. This add-on card is a bootable PCI UDMA controller. Since
909 multiple cards can be installed and there are BIOS ROM problems that
910 happen if the BIOS revisions of all installed cards (three-max) do
911 not match, the driver attempts to do dynamic tuning of the chipset
912 at boot-time for max-speed. Ultra33 BIOS 1.25 or newer is required
913 for more than one card. This card may require that you say Y to
914 "Special UDMA Feature (EXPERIMENTAL)".
915
916 If you say Y here, you need to say Y to "Use DMA by default when
917 available" as well.
918
919 Please read the comments at the top of drivers/ide/pdc202xx.c
920
921 If unsure, say N.
922
923 Special UDMA Feature (EXPERIMENTAL)
924 CONFIG_PDC202XX_BURST
925 For PDC20246, PDC20262, PDC20265 and PDC20267 Ultra DMA chipsets.
926 Designed originally for PDC20246/Ultra33 that has BIOS setup
927 failures when using 3 or more cards.
928
929 Unknown for PDC20265/PDC20267 Ultra DMA 100.
930
931 Please read the comments at the top of drivers/ide/pdc202xx.c
932
933 If unsure, say N.
934
935 SiS5513 chipset support
936 CONFIG_BLK_DEV_SIS5513
937 This driver ensures (U)DMA support for SIS5513 chipset based
938 mainboards. SiS620/530 UDMA mode 4, SiS5600/5597 UDMA mode 2, all
939 other DMA mode 2 limited chipsets are unsupported to date.
940
941 If you say Y here, you need to say Y to "Use DMA by default when
942 available" as well.
943
944 Please read the comments at the top of drivers/ide/sis5513.c
945
946 SLC90E66 chipset support
947 CONFIG_BLK_DEV_SLC90E66
948 This driver ensures (U)DMA support for Victroy66 SouthBridges for
949 SMsC with Intel NorthBridges. This is an Ultra66 based chipset.
950 The nice thing about it is that you can mix Ultra/DMA/PIO devices
951 and it will handle timing cycles. Since this is an improved look-a-like
952 to the PIIX4 it should be a nice addition.
953
954 If you say Y here, you need to say Y to "Use DMA by default when
955 available" as well.
956
957 Please read the comments at the top of drivers/ide/slc90e66.c
958
959 Winbond SL82c105 support
960 CONFIG_BLK_DEV_SL82C105
961 If you have a Winbond SL82c105 IDE controller, say Y here to enable
962 special configuration for this chip. This is common on various CHRP
963 motherboards, but could be used elsewhere. If in doubt, say Y.
964
965 Tekram TRM290 chipset support (EXPERIMENTAL)
966 CONFIG_BLK_DEV_TRM290
967 This driver adds support for bus master DMA transfers
968 using the Tekram TRM290 PCI IDE chip. Volunteers are
969 needed for further tweaking and development.
970 Please read the comments at the top of drivers/ide/trm290.c.
971
972 VIA82CXXX chipset support
973 CONFIG_BLK_DEV_VIA82CXXX
974 This allows you to configure your chipset for a better use while
975 running (U)DMA: it will allow you to enable efficiently the second
976 channel dma usage, as it may not be set by BIOS. It allows you to
977 pass a kernel command line at boot time in order to set fifo
978 config. If no command line is provided, it will try to set fifo
979 configuration at its best. It will allow you to get information from
980 /proc/ide/via provided you enabled "proc" support.
981
982 Please read the comments at the top of drivers/ide/via82cxxx.c
983
984 If you say Y here, then say Y to "Use DMA by default when available"
985 as well.
986
987 If unsure, say N.
988
989 VIA82CXXX Tuning support (WIP)
990 CONFIG_VIA82CXXX_TUNING
991 Please read the comments at the top of drivers/ide/via82cxxx.c
992
993 If unsure, say N.
994
995 Other IDE chipset support
996 CONFIG_IDE_CHIPSETS
997 Say Y here if you want to include enhanced support for various IDE
998 interface chipsets used on motherboards and add-on cards. You can
999 then pick your particular IDE chip from among the following options.
1000 This enhanced support may be necessary for Linux to be able to
1001 access the 3rd/4th drives in some systems. It may also enable
1002 setting of higher speed I/O rates to improve system performance with
1003 these chipsets. Most of these also require special kernel boot
1004 parameters to actually turn on the support at runtime; you can find
1005 a list of these in the file Documentation/ide.txt.
1006
1007 People with SCSI-only systems can say N here.
1008
1009 Generic 4 drives/port support
1010 CONFIG_BLK_DEV_4DRIVES
1011 Certain older chipsets, including the Tekram 690CD, use a single set
1012 of I/O ports at 0x1f0 to control up to four drives, instead of the
1013 customary two drives per port. Support for this can be enabled at
1014 runtime using the "ide0=four" kernel boot parameter if you say Y
1015 here.
1016
1017 ALI M14xx support
1018 CONFIG_BLK_DEV_ALI14XX
1019 This driver is enabled at runtime using the "ide0=ali14xx" kernel
1020 boot parameter. It enables support for the secondary IDE interface
1021 of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
1022 I/O speeds to be set as well. See the files Documentation/ide.txt
1023 and drivers/ide/ali14xx.c for more info.
1024
1025 DTC-2278 support
1026 CONFIG_BLK_DEV_DTC2278
1027 This driver is enabled at runtime using the "ide0=dtc2278" kernel
1028 boot parameter. It enables support for the secondary IDE interface
1029 of the DTC-2278 card, and permits faster I/O speeds to be set as
1030 well. See the Documentation/ide.txt and drivers/ide/dtc2278.c
1031 files for more info.
1032
1033 Holtek HT6560B support
1034 CONFIG_BLK_DEV_HT6560B
1035 This driver is enabled at runtime using the "ide0=ht6560b" kernel
1036 boot parameter. It enables support for the secondary IDE interface
1037 of the Holtek card, and permits faster I/O speeds to be set as well.
1038 See the Documentation/ide.txt and drivers/ide/ht6560b.c files for
1039 more info.
1040
1041 PROMISE DC4030 support (EXPERIMENTAL)
1042 CONFIG_BLK_DEV_PDC4030
1043 This driver provides support for the secondary IDE interface and
1044 cache of Promise IDE chipsets, e.g. DC4030 and DC5030. This driver
1045 is known to incur timeouts/retries during heavy I/O to drives
1046 attached to the secondary interface. CDROM and TAPE devices are not
1047 supported yet. This driver is enabled at runtime using the
1048 "ide0=dc4030" kernel boot parameter. See the Documentation/ide.txt
1049 and drivers/ide/pdc4030.c files for more info.
1050
1051 QDI QD6580 support
1052 CONFIG_BLK_DEV_QD6580
1053 This driver is enabled at runtime using the "ide0=qd6580" kernel
1054 boot parameter. It permits faster I/O speeds to be set. See the
1055 files Documentation/ide.txt and drivers/ide/qd6580.c for more
1056 info.
1057
1058 UMC 8672 support
1059 CONFIG_BLK_DEV_UMC8672
1060 This driver is enabled at runtime using the "ide0=umc8672" kernel
1061 boot parameter. It enables support for the secondary IDE interface
1062 of the UMC-8672, and permits faster I/O speeds to be set as well.
1063 See the files Documentation/ide.txt and drivers/ide/umc8672.c for
1064 more info.
1065
1066 Amiga builtin Gayle IDE interface support
1067 CONFIG_BLK_DEV_GAYLE
1068 This is the IDE driver for the builtin IDE interface on some Amiga
1069 models. It supports both the `A1200 style' (used in A600 and A1200)
1070 and `A4000 style' (used in A4000 and A4000T) of the Gayle IDE
1071 interface. Say Y if you have such an Amiga model and want to use IDE
1072 devices (hard disks, CD-ROM drives, etc.) that are connected to the
1073 builtin IDE interface.
1074
1075 Falcon IDE interface support
1076 CONFIG_BLK_DEV_FALCON_IDE
1077 This is the IDE driver for the builtin IDE interface on the Atari
1078 Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
1079 disks, CD-ROM drives, etc.) that are connected to the builtin IDE
1080 interface.
1081
1082 Amiga Buddha/Catweasel IDE interface support (EXPERIMENTAL)
1083 CONFIG_BLK_DEV_BUDDHA
1084 This is the IDE driver for the IDE interfaces on the Buddha and
1085 Catweasel expansion boards. It supports up to two interfaces on the
1086 Buddha and three on the Catweasel.
1087
1088 Say Y if you have a Buddha or Catweasel expansion board and want to
1089 use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
1090 to one of its IDE interfaces.
1091
1092 Amiga IDE Doubler support (EXPERIMENTAL)
1093 CONFIG_BLK_DEV_IDEDOUBLER
1094 This driver provides support for the so-called `IDE doublers' (made
1095 by various manufacturers, e.g. Eyetech) that can be connected to the
1096 builtin IDE interface of some Amiga models. Using such an IDE
1097 doubler, you can connect up to four instead of two IDE devices on
1098 the Amiga's builtin IDE interface.
1099
1100 Note that the normal Amiga Gayle IDE driver may not work correctly
1101 if you have an IDE doubler and don't enable this driver!
1102
1103 Say Y if you have an IDE doubler. The driver is enabled at kernel
1104 runtime using the "ide=doubler" kernel boot parameter.
1105
1106 Support for PowerMac IDE devices (must also enable IDE)
1107 CONFIG_BLK_DEV_IDE_PMAC
1108 This driver provides support for the built-in IDE controller on most
1109 of the recent Apple Power Macintoshes and PowerBooks.
1110 If unsure, say Y.
1111
1112 PowerMac IDE DMA support
1113 CONFIG_BLK_DEV_IDEDMA_PMAC
1114 This option allows the driver for the built-in IDE controller on
1115 Power Macintoshes and PowerBooks to use DMA (direct memory access)
1116 to transfer data to and from memory. Saying Y is safe and improves
1117 performance.
1118
1119 Use DMA by default
1120 CONFIG_BLK_DEV_IDEDMA_PMAC_AUTO
1121 This option allows the driver for the built-in IDE controller on
1122 Power Macintoshes and PowerBooks to use DMA automatically, without
1123 it having to be explicitly enabled. This option is provided because
1124 of concerns about a couple of cases where using DMA on buggy PC
1125 hardware may have caused damage. Saying Y should be safe on all
1126 Apple machines.
1127
1128 Macintosh Quadra/Powerbook IDE interface support
1129 CONFIG_BLK_DEV_MAC_IDE
1130 This is the IDE driver for the builtin IDE interface on some m68k
1131 Macintosh models. It supports both the `Quadra style' (used in
1132 Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
1133 (used in the Powerbook 150 and 190 models) IDE interface.
1134
1135 Say Y if you have such an Macintosh model and want to use IDE
1136 devices (hard disks, CD-ROM drives, etc.) that are connected to the
1137 builtin IDE interface.
1138
1139 ICS IDE interface support
1140 CONFIG_BLK_DEV_IDE_ICSIDE
1141 On Acorn systems, say Y here if you wish to use the ICS IDE
1142 interface card. This is not required for ICS partition support.
1143 If you are unsure, say N to this.
1144
1145 ICS DMA support
1146 CONFIG_BLK_DEV_IDEDMA_ICS
1147 Say Y here if you want to add DMA (Direct Memory Access) support to
1148 the ICS IDE driver.
1149
1150 Use ICS DMA by default
1151 CONFIG_IDEDMA_ICS_AUTO
1152 Prior to kernel version 2.1.112, Linux used to automatically use
1153 DMA for IDE drives and chipsets which support it. Due to concerns
1154 about a couple of cases where buggy hardware may have caused damage,
1155 the default is now to NOT use DMA automatically. To revert to the
1156 previous behaviour, say Y to this question.
1157
1158 If you suspect your hardware is at all flakey, say N here.
1159 Do NOT email the IDE kernel people regarding this issue!
1160
1161 XT hard disk support
1162 CONFIG_BLK_DEV_XD
1163 Very old 8 bit hard disk controllers used in the IBM XT computer
1164 will be supported if you say Y here.
1165
1166 If you want to compile the driver as a module ( = code which can be
1167 inserted in and removed from the running kernel whenever you want),
1168 say M here and read Documentation/modules.txt. The module will be
1169 called xd.o.
1170
1171 It's pretty unlikely that you have one of these: say N.
1172
1173 PS/2 ESDI hard disk support
1174 CONFIG_BLK_DEV_PS2
1175 Say Y here if you have a PS/2 machine with a MCA bus and an ESDI
1176 hard disk.
1177
1178 If you want to compile the driver as a module ( = code which can be
1179 inserted in and removed from the running kernel whenever you want),
1180 say M here and read Documentation/modules.txt. The module will be
1181 called ps2esdi.o.
1182
1183 Mylex DAC960/DAC1100 PCI RAID Controller support
1184 CONFIG_BLK_DEV_DAC960
1185 This driver adds support for the Mylex DAC960, AcceleRAID, and
1186 eXtremeRAID PCI RAID controllers. See the file
1187 Documentation/README.DAC960 for further information about this
1188 driver.
1189
1190 If you want to compile the driver as a module ( = code which can be
1191 inserted in and removed from the running kernel whenever you want),
1192 say M here and read Documentation/modules.txt. The module will be
1193 called DAC960.o.
1194
1195 Parallel port IDE device support
1196 CONFIG_PARIDE
1197 There are many external CD-ROM and disk devices that connect through
1198 your computer's parallel port. Most of them are actually IDE devices
1199 using a parallel port IDE adapter. This option enables the PARIDE
1200 subsystem which contains drivers for many of these external drives.
1201 Read Documentation/paride.txt for more information.
1202
1203 If you have said Y to the "Parallel-port support" configuration
1204 option, you may share a single port between your printer and other
1205 parallel port devices. Answer Y to build PARIDE support into your
1206 kernel, or M if you would like to build it as a loadable module. If
1207 your parallel port support is in a loadable module, you must build
1208 PARIDE as a module. If you built PARIDE support into your kernel,
1209 you may still build the individual protocol modules and high-level
1210 drivers as loadable modules. If you build this support as a module,
1211 it will be called paride.o.
1212
1213 To use the PARIDE support, you must say Y or M here and also to at
1214 least one high-level driver (e.g. "Parallel port IDE disks",
1215 "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and
1216 to at least one protocol driver (e.g. "ATEN EH-100 protocol",
1217 "MicroSolutions backpack protocol", "DataStor Commuter protocol"
1218 etc.).
1219
1220 Parallel port IDE disks
1221 CONFIG_PARIDE_PD
1222 This option enables the high-level driver for IDE-type disk devices
1223 connected through a parallel port. If you chose to build PARIDE
1224 support into your kernel, you may answer Y here to build in the
1225 parallel port IDE driver, otherwise you should answer M to build
1226 it as a loadable module. The module will be called pd.o. You
1227 must also have at least one parallel port protocol driver in your
1228 system. Among the devices supported by this driver are the SyQuest
1229 EZ-135, EZ-230 and SparQ drives, the Avatar Shark and the backpack
1230 hard drives from MicroSolutions.
1231
1232 Parallel port ATAPI CD-ROMs
1233 CONFIG_PARIDE_PCD
1234 This option enables the high-level driver for ATAPI CD-ROM devices
1235 connected through a parallel port. If you chose to build PARIDE
1236 support into your kernel, you may answer Y here to build in the
1237 parallel port ATAPI CD-ROM driver, otherwise you should answer M to
1238 build it as a loadable module. The module will be called pcd.o. You
1239 must also have at least one parallel port protocol driver in your
1240 system. Among the devices supported by this driver are the
1241 MicroSolutions backpack CD-ROM drives and the Freecom Power CD. If
1242 you have such a CD-ROM drive, you should also say Y or M to "ISO
1243 9660 CDROM file system support" below, because that's the file
1244 system used on CDROMs.
1245
1246 Parallel port ATAPI disks
1247 CONFIG_PARIDE_PF
1248 This option enables the high-level driver for ATAPI disk devices
1249 connected through a parallel port. If you chose to build PARIDE
1250 support into your kernel, you may answer Y here to build in the
1251 parallel port ATAPI disk driver, otherwise you should answer M
1252 to build it as a loadable module. The module will be called pf.o.
1253 You must also have at least one parallel port protocol driver in
1254 your system. Among the devices supported by this driver are the
1255 MicroSolutions backpack PD/CD drive and the Imation Superdisk
1256 LS-120 drive.
1257
1258 Parallel port ATAPI tapes
1259 CONFIG_PARIDE_PT
1260 This option enables the high-level driver for ATAPI tape devices
1261 connected through a parallel port. If you chose to build PARIDE
1262 support into your kernel, you may answer Y here to build in the
1263 parallel port ATAPI disk driver, otherwise you should answer M
1264 to build it as a loadable module. The module will be called pt.o.
1265 You must also have at least one parallel port protocol driver in
1266 your system. Among the devices supported by this driver is the
1267 parallel port version of the HP 5GB drive.
1268
1269 Parallel port generic ATAPI devices
1270 CONFIG_PARIDE_PG
1271 This option enables a special high-level driver for generic ATAPI
1272 devices connected through a parallel port. The driver allows user
1273 programs, such as cdrecord, to send ATAPI commands directly to a
1274 device.
1275
1276 If you chose to build PARIDE support into your kernel, you may
1277 answer Y here to build in the parallel port generic ATAPI driver,
1278 otherwise you should answer M to build it as a loadable module. The
1279 module will be called pg.o.
1280
1281 You must also have at least one parallel port protocol driver in
1282 your system.
1283
1284 This driver implements an API loosely related to the generic SCSI
1285 driver. See include/linux/pg.h for details.
1286
1287 You can obtain the most recent version of cdrecord from
1288 ftp://ftp.fokus.gmd.de/pub/unix/cdrecord/ . Versions 1.6.1a3 and
1289 later fully support this driver.
1290
1291 ATEN EH-100 protocol
1292 CONFIG_PARIDE_ATEN
1293 This option enables support for the ATEN EH-100 parallel port IDE
1294 protocol. This protocol is used in some inexpensive low performance
1295 parallel port kits made in Hong Kong. If you chose to build PARIDE
1296 support into your kernel, you may answer Y here to build in the
1297 protocol driver, otherwise you should answer M to build it as a
1298 loadable module. The module will be called aten.o. You must also
1299 have a high-level driver for the type of device that you want to
1300 support.
1301
1302 MicroSolutions backpack protocol
1303 CONFIG_PARIDE_BPCK
1304 This option enables support for the MicroSolutions backpack parallel
1305 port IDE protocol. If you chose to build PARIDE support into your
1306 kernel, you may answer Y here to build in the protocol driver,
1307 otherwise you should answer M to build it as a loadable module. The
1308 module will be called bpck.o. You must also have a high-level driver
1309 for the type of device that you want to support.
1310
1311 DataStor Commuter protocol
1312 CONFIG_PARIDE_COMM
1313 This option enables support for the Commuter parallel port IDE
1314 protocol from DataStor. If you chose to build PARIDE support
1315 into your kernel, you may answer Y here to build in the protocol
1316 driver, otherwise you should answer M to build it as a loadable
1317 module. The module will be called comm.o. You must also have
1318 a high-level driver for the type of device that you want to support.
1319
1320 DataStor EP-2000 protocol
1321 CONFIG_PARIDE_DSTR
1322 This option enables support for the EP-2000 parallel port IDE
1323 protocol from DataStor. If you chose to build PARIDE support
1324 into your kernel, you may answer Y here to build in the protocol
1325 driver, otherwise you should answer M to build it as a loadable
1326 module. The module will be called dstr.o. You must also have
1327 a high-level driver for the type of device that you want to support.
1328
1329 Shuttle EPAT/EPEZ protocol
1330 CONFIG_PARIDE_EPAT
1331 This option enables support for the EPAT parallel port IDE protocol.
1332 EPAT is a parallel port IDE adapter manufactured by Shuttle
1333 Technology and widely used in devices from major vendors such as
1334 Hewlett-Packard, SyQuest, Imation and Avatar. If you chose to build
1335 PARIDE support into your kernel, you may answer Y here to build in
1336 the protocol driver, otherwise you should answer M to build it as a
1337 loadable module. The module will be called epat.o. You must also
1338 have a high-level driver for the type of device that you want to
1339 support.
1340
1341 Shuttle EPIA protocol
1342 CONFIG_PARIDE_EPIA
1343 This option enables support for the (obsolete) EPIA parallel port
1344 IDE protocol from Shuttle Technology. This adapter can still be
1345 found in some no-name kits. If you chose to build PARIDE support
1346 into your kernel, you may answer Y here to build in the protocol
1347 driver, otherwise you should answer M to build it as a loadable
1348 module. The module will be called epia.o. You must also have a
1349 high-level driver for the type of device that you want to support.
1350
1351 FIT TD-2000 protocol
1352 CONFIG_PARIDE_FIT2
1353 This option enables support for the TD-2000 parallel port IDE
1354 protocol from Fidelity International Technology. This is a simple
1355 (low speed) adapter that is used in some portable hard drives. If
1356 you chose to build PARIDE support into your kernel, you may answer Y
1357 here to build in the protocol driver, otherwise you should answer M
1358 to build it as a loadable module. The module will be called ktti.o.
1359 You must also have a high-level driver for the type of device that
1360 you want to support.
1361
1362 FIT TD-3000 protocol
1363 CONFIG_PARIDE_FIT3
1364 This option enables support for the TD-3000 parallel port IDE
1365 protocol from Fidelity International Technology. This protocol is
1366 used in newer models of their portable disk, CD-ROM and PD/CD
1367 devices. If you chose to build PARIDE support into your kernel, you
1368 may answer Y here to build in the protocol driver, otherwise you
1369 should answer M to build it as a loadable module. The module will be
1370 called fit3.o. You must also have a high-level driver for the type
1371 of device that you want to support.
1372
1373 Freecom IQ ASIC-2 protocol
1374 CONFIG_PARIDE_FRIQ
1375 This option enables support for version 2 of the Freecom IQ parallel
1376 port IDE adapter. This adapter is used by the Maxell Superdisk
1377 drive. If you chose to build PARIDE support into your kernel, you
1378 may answer Y here to build in the protocol driver, otherwise you
1379 should answer M to build it as a loadable module. The module will be
1380 called friq.o. You must also have a high-level driver for the type
1381 of device that you want to support.
1382
1383 FreeCom power protocol
1384 CONFIG_PARIDE_FRPW
1385 This option enables support for the Freecom power parallel port IDE
1386 protocol. If you chose to build PARIDE support into your kernel, you
1387 may answer Y here to build in the protocol driver, otherwise you
1388 should answer M to build it as a loadable module. The module will be
1389 called frpw.o. You must also have a high-level driver for the type
1390 of device that you want to support.
1391
1392 KingByte KBIC-951A/971A protocols
1393 CONFIG_PARIDE_KBIC
1394 This option enables support for the KBIC-951A and KBIC-971A parallel
1395 port IDE protocols from KingByte Information Corp. KingByte's
1396 adapters appear in many no-name portable disk and CD-ROM products,
1397 especially in Europe. If you chose to build PARIDE support into your
1398 kernel, you may answer Y here to build in the protocol driver,
1399 otherwise you should answer M to build it as a loadable module. The
1400 module will be called kbic.o. You must also have a high-level driver
1401 for the type of device that you want to support.
1402
1403 KT PHd protocol
1404 CONFIG_PARIDE_KTTI
1405 This option enables support for the "PHd" parallel port IDE protocol
1406 from KT Technology. This is a simple (low speed) adapter that is
1407 used in some 2.5" portable hard drives. If you chose to build PARIDE
1408 support into your kernel, you may answer Y here to build in the
1409 protocol driver, otherwise you should answer M to build it as a
1410 loadable module. The module will be called ktti.o. You must also
1411 have a high-level driver for the type of device that you want to
1412 support.
1413
1414 OnSpec 90c20 protocol
1415 CONFIG_PARIDE_ON20
1416 This option enables support for the (obsolete) 90c20 parallel port
1417 IDE protocol from OnSpec (often marketed under the ValuStore brand
1418 name). If you chose to build PARIDE support into your kernel, you
1419 may answer Y here to build in the protocol driver, otherwise you
1420 should answer M to build it as a loadable module. The module will
1421 be called on20.o. You must also have a high-level driver for the
1422 type of device that you want to support.
1423
1424 OnSpec 90c26 protocol
1425 CONFIG_PARIDE_ON26
1426 This option enables support for the 90c26 parallel port IDE protocol
1427 from OnSpec Electronics (often marketed under the ValuStore brand
1428 name). If you chose to build PARIDE support into your kernel, you
1429 may answer Y here to build in the protocol driver, otherwise you
1430 should answer M to build it as a loadable module. The module will be
1431 called on26.o. You must also have a high-level driver for the type
1432 of device that you want to support.
1433
1434 Logical Volume Manager (LVM) support
1435 CONFIG_BLK_DEV_LVM
1436 This driver lets you combine several hard disks, hard disk
1437 partitions, multiple devices or even loop devices (for evaluation
1438 purposes) into a volume group. Imagine a volume group as a kind of
1439 virtual disk. Logical volumes, which can be thought of as virtual
1440 partitions, can be created in the volume group. You can resize
1441 volume groups and logical volumes after creation time, corresponding
1442 to new capacity needs. Logical volumes are accessed as block
1443 devices named /dev/VolumeGroupName/LogicalVolumeName.
1444
1445 For details see Documentation/LVM-HOWTO. You will need supporting
1446 user space software; location is in Documentation/Changes.
1447
1448 If you want to compile this support as a module ( = code which can
1449 be inserted in and removed from the running kernel whenever you
1450 want), say M here and read Documentation/modules.txt. The module
1451 will be called lvm-mod.o.
1452
1453 Logical Volume Manager /proc file system information
1454 CONFIG_LVM_PROC_FS
1455 If you say Y here, you are able to access overall Logical Volume
1456 Manager, Volume Group, Logical and Physical Volume information in
1457 /proc/lvm.
1458
1459 To use this option, you have to check, that the "/proc file system
1460 support" (CONFIG_PROC_FS) is enabled too.
1461
1462 Multiple devices driver support
1463 CONFIG_BLK_DEV_MD
1464 This driver lets you combine several hard disk partitions into one
1465 logical block device. This can be used to simply append one
1466 partition to another one or to combine several redundant hard disks
1467 into a RAID1/4/5 device so as to provide protection against hard
1468 disk failures. This is called "Software RAID" since the combining of
1469 the partitions is done by the kernel. "Hardware RAID" means that the
1470 combining is done by a dedicated controller; if you have such a
1471 controller, you do not need to say Y here.
1472
1473 More information about Software RAID on Linux is contained in the
1474 Software-RAID mini-HOWTO, available from
1475 http://www.linuxdoc.org/docs.html#howto . There you will also
1476 learn where to get the supporting user space utilities raidtools.
1477
1478 If unsure, say N.
1479
1480 Linear (append) mode
1481 CONFIG_MD_LINEAR
1482 If you say Y here, then your multiple devices driver will be able to
1483 use the so-called linear mode, i.e. it will combine the hard disk
1484 partitions by simply appending one to the other.
1485
1486 If you want to compile this as a module ( = code which can be
1487 inserted in and removed from the running kernel whenever you want),
1488 say M here and read Documentation/modules.txt. The module will be
1489 called linear.o.
1490
1491 If unsure, say Y.
1492
1493 RAID-0 (striping) mode
1494 CONFIG_MD_RAID0
1495 If you say Y here, then your multiple devices driver will be able to
1496 use the so-called raid0 mode, i.e. it will combine the hard disk
1497 partitions into one logical device in such a fashion as to fill them
1498 up evenly, one chunk here and one chunk there. This will increase
1499 the throughput rate if the partitions reside on distinct disks.
1500
1501 Information about Software RAID on Linux is contained in the
1502 Software-RAID mini-HOWTO, available from
1503 http://www.linuxdoc.org/docs.html#howto . There you will also
1504 learn where to get the supporting user space utilities raidtools.
1505
1506 If you want to compile this as a module ( = code which can be
1507 inserted in and removed from the running kernel whenever you want),
1508 say M here and read Documentation/modules.txt. The module will be
1509 called raid0.o.
1510
1511 If unsure, say Y.
1512
1513 RAID-1/RAID-5 code (DANGEROUS)
1514 CONFIG_RAID15_DANGEROUS
1515 This new RAID1/RAID5 code has been freshly merged, and has not seen
1516 enough testing yet. While there are no known bugs in it, it might
1517 destroy your filesystems, eat your data and start World War III.
1518 You have been warned.
1519
1520 If unsure, say N.
1521
1522 RAID-1 (mirroring) mode
1523 CONFIG_MD_RAID1
1524 A RAID-1 set consists of several disk drives which are exact copies
1525 of each other. In the event of a mirror failure, the RAID driver
1526 will continue to use the operational mirrors in the set, providing
1527 an error free MD (multiple device) to the higher levels of the
1528 kernel. In a set with N drives, the available space is the capacity
1529 of a single drive, and the set protects against a failure of (N - 1)
1530 drives.
1531
1532 Information about Software RAID on Linux is contained in the
1533 Software-RAID mini-HOWTO, available from
1534 http://www.linuxdoc.org/docs.html#howto . There you will also
1535 learn where to get the supporting user space utilities raidtools.
1536
1537 If you want to use such a RAID-1 set, say Y. This code is also
1538 available as a module called raid1.o ( = code which can be inserted
1539 in and removed from the running kernel whenever you want). If you
1540 want to compile it as a module, say M here and read
1541 Documentation/modules.txt.
1542
1543 If unsure, say Y.
1544
1545 RAID-4/RAID-5 mode
1546 CONFIG_MD_RAID5
1547 A RAID-5 set of N drives with a capacity of C MB per drive provides
1548 the capacity of C * (N - 1) MB, and protects against a failure
1549 of a single drive. For a given sector (row) number, (N - 1) drives
1550 contain data sectors, and one drive contains the parity protection.
1551 For a RAID-4 set, the parity blocks are present on a single drive,
1552 while a RAID-5 set distributes the parity across the drives in one
1553 of the available parity distribution methods.
1554
1555 Information about Software RAID on Linux is contained in the
1556 Software-RAID mini-HOWTO, available from
1557 http://www.linuxdoc.org/docs.html#howto . There you will also
1558 learn where to get the supporting user space utilities raidtools.
1559
1560 If you want to use such a RAID-4/RAID-5 set, say Y. This code is
1561 also available as a module called raid5.o ( = code which can be
1562 inserted in and removed from the running kernel whenever you want).
1563 If you want to compile it as a module, say M here and read
1564 Documentation/modules.txt.
1565
1566 If unsure, say Y.
1567
1568 RAID Boot support
1569 CONFIG_MD_BOOT
1570 To boot with an initial raid volume (any type) you can select
1571 autodetect, or answer Y here and appropriate options to the kernel
1572 at boot time.
1573 For lilo and loadlin options see the file Documentation/md.txt.
1574
1575 RAID AutoDetect support
1576 CONFIG_AUTODETECT_RAID
1577 An alternative to "Raid Boot support" is autodetect support.
1578 With this selected, any partitons of type 0xFD will be considered for
1579 inclusion in a RAID array. Information in the RAID-superblock on
1580 the partition will determine how it is included.
1581
1582 Support for Acer PICA 1 chipset
1583 CONFIG_ACER_PICA_61
1584 This is a machine with a R4400 133/150 MHz CPU. To compile a Linux
1585 kernel that runs on these, say Y here. For details about Linux on
1586 the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
1587 http://oss.sgi.com/mips .
1588
1589 Support for Algorithmics P4032 (EXPERIMENTAL)
1590 CONFIG_ALGOR_P4032
1591 This is an evaluation board of the British company Algorithmics. The
1592 board uses the R4300 and a R5230 CPUs. For more information about
1593 this board see http://www.algor.co.uk .
1594
1595 Support for BAGET MIPS series
1596 CONFIG_BAGET_MIPS
1597 This enables support for the Baget, a Russian embedded system. For
1598 more details about the Baget see the Linux/MIPS FAQ on
1599 http://oss.sgi.com/mips .
1600
1601 Support for Cobalt Microserver
1602 CONFIG_COBALT_MICRO_SERVER
1603 This enables support for the Cobalt Microserver. For more information
1604 see the Linux/MIPS FAQ on http://oss.sgi.com/mips .
1605
1606 Support for 2800
1607 CONFIG_COBALT_28
1608 This adds support for the Cobalt Microserver 2800. A kernel with this
1609 option selected will only work on the 2800.
1610
1611 Support for DECstations
1612 CONFIG_DECSTATION
1613 This enables support for DEC's MIPS based workstations. For details
1614 see the Linux/MIPS FAQ on http://oss.sgi.com/mips and the
1615 DECstation porting pages on http://decstation.unix-ag.org .
1616
1617 If you have one of the following DECstation Models you definitely
1618 want to choose R4xx0 for the CPU Type:
1619
1620 DECstation 5000/50
1621 DECstation 5000/150
1622 DECstation 5000/260
1623 DECsystem 5900/260
1624
1625 otherwise choose R3000.
1626
1627 Support for NEC DDB Vrc-5074
1628 CONFIG_DDB5074
1629 This enables support for the VR5000-based NEC DDB Vrc-5074
1630 evaluation board.
1631
1632 Support for Mips Magnum 4000
1633 CONFIG_MIPS_MAGNUM_4000
1634 This is a machine with a R4000 100 MHz CPU. To compile a Linux
1635 kernel that runs on these, say Y here. For details about Linux on
1636 the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
1637 http://oss.sgi.com/mips.
1638
1639 Support for Olivetti M700
1640 CONFIG_OLIVETTI_M700
1641 This is a machine with a R4000 100 MHz CPU. To compile a Linux
1642 kernel that runs on these, say Y here. For details about Linux on
1643 the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
1644 http://oss.sgi.com/mips.
1645
1646 Support for SGI IP22
1647 CONFIG_SGI_IP22
1648 This are the SGI Indy, Challenge S and Indigo2, as well as certain
1649 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
1650 that runs on these, say Y here.
1651
1652 Support for SGI IP27
1653 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
1654 workstations. To compile a Linux kernel that runs on these, say Y
1655 here.
1656
1657 IP27 N-Mode
1658 CONFIG_SGI_SN0_N_MODE
1659 The nodes of Origin 200, Origin 2000 and Onyx 2 systems can be
1660 configured in either N-Modes which allows for more nodes or M-Mode
1661 which allows for more more memory. Your system is most probably
1662 running in M-Mode, so you should say N here.
1663
1664 MIPS JAZZ onboard SONIC Ethernet support
1665 CONFIG_MIPS_JAZZ_SONIC
1666 This is the driver for the onboard card of of MIPS Magnum 4000,
1667 Acer PICA, Olivetti M700-10 and a few other identical OEM systems.
1668
1669 MIPS JAZZ FAS216 SCSI support
1670 CONFIG_JAZZ_ESP
1671 This is the driver for the onboard SCSI host adapter of MIPS Magnum
1672 4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
1673 systems.
1674
1675 PCMCIA SCSI adapter support
1676 CONFIG_SCSI_PCMCIA
1677 Say Y here if you intend to attach a PCMCIA or CardBus card to your
1678 computer which acts as a SCSI host adapter. These are credit card
1679 size devices often used with laptops.
1680
1681 Note that the answer to this question won't directly affect the
1682 kernel: saying N will just cause this configure script to skip all
1683 the questions PCMCIA SCSI host adapters.
1684
1685 Adaptec AHA152X PCMCIA support
1686 CONFIG_PCMCIA_AHA152X
1687 Say Y here if you intend to attach this type of PCMCIA SCSI host
1688 adapter to your computer.
1689
1690 This driver is also available as a module called aha152x_cs.o ( =
1691 code which can be inserted in and removed from the running kernel
1692 whenever you want). If you want to compile it as a module, say M
1693 here and read Documentation/modules.txt.
1694
1695 Qlogic PCMCIA support
1696 CONFIG_PCMCIA_QLOGIC
1697 Say Y here if you intend to attach this type of PCMCIA SCSI host
1698 adapter to your computer.
1699
1700 This driver is also available as a module called qlogic_cs.o ( =
1701 code which can be inserted in and removed from the running kernel
1702 whenever you want). If you want to compile it as a module, say M
1703 here and read Documentation/modules.txt.
1704
1705 Future Domain PCMCIA support
1706 CONFIG_PCMCIA_FDOMAIN
1707 Say Y here if you intend to attach this type of PCMCIA SCSI host
1708 adapter to your computer.
1709
1710 This driver is also available as a module called fdomain_cs.o ( =
1711 code which can be inserted in and removed from the running kernel
1712 whenever you want). If you want to compile it as a module, say M
1713 here and read Documentation/modules.txt.
1714
1715 Adaptec APA1480 CardBus support
1716 CONFIG_PCMCIA_APA1480
1717 Say Y here if you intend to attach this type of CardBus SCSI host
1718 adapter to your computer.
1719
1720 This driver is also available as a module called apa1480_cb.o ( =
1721 code which can be inserted in and removed from the running kernel
1722 whenever you want). If you want to compile it as a module, say M
1723 here and read Documentation/modules.txt.
1724
1725 CPU type
1726 CONFIG_CPU_R3000
1727 Please make sure to pick the right CPU type. Linux/MIPS is not
1728 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1729 *not* work on R4000 Machines and vice versa.
1730 However, since most the supported Machines have an R4000 (or
1731 similar) CPU, R4xx0 might be a safe bet.
1732 If the resulting Kernel does not work try to recompile with R3000.
1733
1734 Support for large 64-bit configurations
1735 CONFIG_MIPS_INSANE_LARGE
1736 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1737 previous 64-bit processors which only supported 40 bit / 1TB. If you
1738 need processes of more than 1TB virtual address space, say Y here.
1739 This will result in additional memory usage, so it is not
1740 recommended for normal users.
1741
1742 Generate little endian code
1743 CONFIG_CPU_LITTLE_ENDIAN
1744 Some MIPS machines can be configured for either little or big endian
1745 byte order. These modes require different kernels. Say Y if your
1746 machine is little endian, N if it's a big endian machine.
1747
1748 Networking support
1749 CONFIG_NET
1750 Unless you really know what you are doing, you should say Y here.
1751 The reason is that some programs need kernel networking support even
1752 when running on a stand-alone machine that isn't connected to any
1753 other computer. If you are upgrading from an older kernel, you
1754 should consider updating your networking tools too because changes
1755 in the kernel and the tools often go hand in hand. The tools are
1756 contained in the package net-tools, the location and version number
1757 of which are given in Documentation/Changes.
1758
1759 For a general introduction to Linux networking, it is highly
1760 recommended to read the NET-3-HOWTO, available from
1761 http://www.linuxdoc.org/docs.html#howto .
1762
1763 Socket filtering
1764 CONFIG_FILTER
1765 The Linux Socket Filter is derived from the Berkeley Packet Filter.
1766 If you say Y here, user-space programs can attach a filter to any
1767 socket and thereby tell the kernel that it should allow or disallow
1768 certain types of data to get through the socket. Linux Socket
1769 Filtering works on all socket types except TCP for now. See the text
1770 file Documentation/networking/filter.txt for more information.
1771 If unsure, say N.
1772
1773 Network packet filtering
1774 CONFIG_NETFILTER
1775 Netfilter is a framework for filtering and mangling network packets
1776 that pass through your Linux box.
1777
1778 The most common use of packet filtering is to run your Linux box as
1779 a firewall protecting a local network from the Internet. The type of
1780 firewall provided by this kernel support is called a "packet
1781 filter", which means that it can reject individual network packets
1782 based on type, source, destination etc. The other kind of firewall,
1783 a "proxy-based" one, is more secure but more intrusive and more
1784 bothersome to set up; it inspects the network traffic much more
1785 closely, modifies it and has knowledge about the higher level
1786 protocols, which a packet filter lacks. Moreover, proxy-based
1787 firewalls often require changes to the programs running on the local
1788 clients. Proxy-based firewalls don't need support by the kernel, but
1789 they are often combined with a packet filter, which only works if
1790 you say Y here.
1791
1792 You should also say Y here if you intend to use your Linux box as
1793 the gateway to the Internet for a local network of machines without
1794 globally valid IP addresses. This is called "masquerading": if one
1795 of the computers on your local network wants to send something to
1796 the outside, your box can "masquerade" as that computer, i.e. it
1797 forwards the traffic to the intended outside destination, but
1798 modifies the packets to make it look like they came from the
1799 firewall box itself. It works both ways: if the outside host
1800 replies, the Linux box will silently forward the traffic to the
1801 correct local computer. This way, the computers on your local net
1802 are completely invisible to the outside world, even though they can
1803 reach the outside and can receive replies. It is even possible to
1804 run globally visible servers from within a masqueraded local network
1805 using a mechanism called portforwarding. Masquerading is also often
1806 called NAT (Network Address Translation).
1807
1808 Another use of Netfilter is in transparent proxying: if a machine on
1809 the local network tries to connect to an outside host, your Linux
1810 box can transparently forward the traffic to a local server,
1811 typically a caching proxy server.
1812
1813 Various modules exist for netfilter which replace the previous
1814 masquerading (ipmasqadm), packet filtering (ipchains), transparent
1815 proxying, and portforwarding mechanisms. Please see
1816 Documentation/Changes under "iptables" for the location of these
1817 packages.
1818
1819 Make sure to say N to "Fast switching" below if you intend to say Y
1820 here, as Fast switching currently bypasses netfilter.
1821
1822 Chances are that you should say Y here if you compile a kernel which
1823 will run as a router and N for regular hosts. If unsure, say N.
1824
1825 Network packet filtering debugging
1826 CONFIG_NETFILTER_DEBUG
1827 You can say Y here if you want to get additional messages useful in
1828 debugging the netfilter code.
1829
1830 IP: connection tracking (required for masq/NAT)
1831 CONFIG_IP_NF_CONNTRACK
1832 Connection tracking keeps a record of what packets have passed
1833 through your machine, in order to figure out how they are related
1834 into connections.
1835
1836 This is required to do Masquerading or other kinds of Network
1837 Address Translation (except for Fast NAT). It can also be used to
1838 enhance packet filtering (see `Connection state match support'
1839 below).
1840
1841 If you want to compile it as a module, say M here and read
1842 Documentation/modules.txt. If unsure, say `N'.
1843
1844 FTP protocol support
1845 CONFIG_IP_NF_FTP
1846 Tracking FTP connections is problematic: special helpers are
1847 required for tracking them, and doing masquerading and other forms
1848 of Network Address Translation on them.
1849
1850 If you want to compile it as a module, say M here and read
1851 Documentation/modules.txt. If unsure, say `Y'.
1852
1853 IP: user space queueing via NETLINK (EXPERIMENTAL)
1854 CONFIG_IP_NF_QUEUE
1855 Netfilter has the ability to queue packets to user space: the
1856 netlink device can be used to access them using this driver.
1857
1858 If you want to compile it as a module, say M here and read
1859 Documentation/modules.txt. If unsure, say `N'.
1860
1861 IP: ip tables support (required for filtering/masq/NAT)
1862 CONFIG_IP_NF_IPTABLES
1863 iptables is a general, extensible packet identification framework.
1864 The packet filtering and full NAT (masquerading, port forwarding,
1865 etc) subsystems now use this: say `Y' or `M' here if you want to use
1866 either of those.
1867
1868 If you want to compile it as a module, say M here and read
1869 Documentation/modules.txt. If unsure, say `N'.
1870
1871 limit match support
1872 CONFIG_IP_NF_MATCH_LIMIT
1873 limit matching allows you to control the rate at which a rule can be
1874 matched: mainly useful in combination with the LOG target ("LOG
1875 target support", below) and to avoid some Denial of Service attacks.
1876
1877 If you want to compile it as a module, say M here and read
1878 Documentation/modules.txt. If unsure, say `N'.
1879
1880 MAC address match support
1881 CONFIG_IP_NF_MATCH_MAC
1882 mac matching allows you to match packets based on the source
1883 ethernet address of the packet.
1884
1885 If you want to compile it as a module, say M here and read
1886 Documentation/modules.txt. If unsure, say `N'.
1887
1888 netfilter mark match support
1889 CONFIG_IP_NF_MATCH_MARK
1890 Netfilter mark matching allows you to match packets based on the
1891 `nfmark' value in the packet. This can be set by the MARK target
1892 (see below).
1893
1894 If you want to compile it as a module, say M here and read
1895 Documentation/modules.txt. If unsure, say `N'.
1896
1897 Multiple port match support
1898 CONFIG_IP_NF_MATCH_MULTIPORT
1899 Multiport matching allows you to match TCP or UDP packets based on
1900 a series of source or destination ports: normally a rule can only
1901 match a single range of ports.
1902
1903 If you want to compile it as a module, say M here and read
1904 Documentation/modules.txt. If unsure, say `N'.
1905
1906 TOS match support
1907 CONFIG_IP_NF_MATCH_TOS
1908 TOS matching allows you to match packets based on the Type Of
1909 Service fields of the IP packet.
1910
1911 If you want to compile it as a module, say M here and read
1912 Documentation/modules.txt. If unsure, say `N'.
1913
1914 Connection state match support
1915 CONFIG_IP_NF_MATCH_STATE
1916 Connection state matching allows you to match packets based on their
1917 relationship to a tracked connection (ie. previous packets). This
1918 is a powerful tool for packet classification.
1919
1920 If you want to compile it as a module, say M here and read
1921 Documentation/modules.txt. If unsure, say `N'.
1922
1923 Unclean match support (EXPERIMENTAL)
1924 CONFIG_IP_NF_MATCH_UNCLEAN
1925 Unclean packet matching matches any strange or invalid packets, by
1926 looking at a series of fields in the IP, TCP, UDP and ICMP headers.
1927
1928 If you want to compile it as a module, say M here and read
1929 Documentation/modules.txt. If unsure, say `N'.
1930
1931 Owner match support (EXPERIMENTAL)
1932 CONFIG_IP_NF_MATCH_OWNER
1933 Packet owner matching allows you to match locally-generated packets
1934 based on who created them: the user, group, process or session.
1935
1936 If you want to compile it as a module, say M here and read
1937 Documentation/modules.txt. If unsure, say `N'.
1938
1939 Packet filtering
1940 CONFIG_IP_NF_FILTER
1941 Packet filtering defines a table `filter', which has a series of
1942 rules for simple packet filtering at local input, forwarding and
1943 local output. See the man page for iptables(8).
1944
1945 If you want to compile it as a module, say M here and read
1946 Documentation/modules.txt. If unsure, say `N'.
1947
1948 REJECT target support
1949 CONFIG_IP_NF_TARGET_REJECT
1950 The REJECT target allows a filtering rule to specify that an ICMP
1951 error should be issued in response to an incoming packet, rather
1952 than silently being dropped.
1953
1954 If you want to compile it as a module, say M here and read
1955 Documentation/modules.txt. If unsure, say `N'.
1956
1957 MIRROR target support (EXPERIMENTAL)
1958 CONFIG_IP_NF_TARGET_MIRROR
1959 The MIRROR target allows a filtering rule to specify that an
1960 incoming packet should be bounced back to the sender.
1961
1962 If you want to compile it as a module, say M here and read
1963 Documentation/modules.txt. If unsure, say `N'.
1964
1965 Full NAT
1966 CONFIG_IP_NF_NAT
1967 The Full NAT option allows masquerading, port forwarding and other
1968 forms of full Network Address Port Translation. It is controlled by
1969 the `nat' table in iptables: see the man page for iptables(8).
1970
1971 If you want to compile it as a module, say M here and read
1972 Documentation/modules.txt. If unsure, say `N'.
1973
1974 MASQUERADE target support
1975 CONFIG_IP_NF_TARGET_MASQUERADE
1976 Masquerading is a special case of NAT: all outgoing connections are
1977 changed to seem to come from a particular interface's address, and
1978 if the interface goes down, those connections are lost. This is
1979 only useful for dialup accounts with dynamic IP address (ie. your IP
1980 address will be different on next dialup).
1981
1982 If you want to compile it as a module, say M here and read
1983 Documentation/modules.txt. If unsure, say `N'.
1984
1985 REDIRECT target support
1986 CONFIG_IP_NF_TARGET_REDIRECT
1987 REDIRECT is a special case of NAT: all incoming connections are
1988 mapped onto the incoming interface's address, causing the packets to
1989 come to the local machine instead of passing through. This is
1990 useful for transparent proxies.
1991
1992 If you want to compile it as a module, say M here and read
1993 Documentation/modules.txt. If unsure, say `N'.
1994
1995 Packet mangling
1996 CONFIG_IP_NF_MANGLE
1997 This option adds a `mangle' table to iptables: see the man page for
1998 iptables(8). This table is used for various packet alterations
1999 which can effect how the packet is routed.
2000
2001 If you want to compile it as a module, say M here and read
2002 Documentation/modules.txt. If unsure, say `N'.
2003
2004 TOS target support
2005 CONFIG_IP_NF_TARGET_TOS
2006 This option adds a `TOS' target, which allows you to create rules in
2007 the `mangle' table which alter the Type Of Service field of an IP
2008 packet prior to routing.
2009
2010 If you want to compile it as a module, say M here and read
2011 Documentation/modules.txt. If unsure, say `N'.
2012
2013 MARK target support
2014 CONFIG_IP_NF_TARGET_MARK
2015 This option adds a `MARK' target, which allows you to create rules
2016 in the `mangle' table which alter the netfilter mark (nfmark) field
2017 associated with the packet packet prior to routing. This can change
2018 the routing method (see `IP: use netfilter MARK value as routing
2019 key') and can also be used by other subsystems to change their
2020 behavior.
2021
2022 If you want to compile it as a module, say M here and read
2023 Documentation/modules.txt. If unsure, say `N'.
2024
2025 LOG target support
2026 CONFIG_IP_NF_TARGET_LOG
2027 This option adds a `LOG' target, which allows you to create rules in
2028 any iptables table which records the packet header to the syslog.
2029
2030 If you want to compile it as a module, say M here and read
2031 Documentation/modules.txt. If unsure, say `N'.
2032
2033 ipchains (2.2-style) support
2034 CONFIG_IP_NF_COMPAT_IPCHAINS
2035 This option places ipchains (with masquerading and redirection
2036 support) back into the kernel, using the new netfilter
2037 infrastructure. It is not recommended for new installations (see
2038 `Packet filtering'). With this enabled, you should be able to use
2039 the ipchains tool exactly as in 2.2 kernels.
2040
2041 If you want to compile it as a module, say M here and read
2042 Documentation/modules.txt. If unsure, say `N'.
2043
2044 ipfwadm (2.0-style) support
2045 CONFIG_IP_NF_COMPAT_IPFWADM
2046 This option places ipfwadm (with masquerading and redirection
2047 support) back into the kernel, using the new netfilter
2048 infrastructure. It is not recommended for new installations (see
2049 `Packet filtering'). With this enabled, you should be able to use
2050 the ipfwadm tool exactly as in 2.0 kernels.
2051
2052 If you want to compile it as a module, say M here and read
2053 Documentation/modules.txt. If unsure, say `N'.
2054
2055 TCP Explicit Congestion Notification support
2056 CONFIG_INET_ECN
2057 Explicit Congestion Notification (ECN) allows routers to notify
2058 clients about network congestion, resulting in fewer dropped packets
2059 and increased network performance. This option adds ECN support to the
2060 Linux kernel, as well as a sysctl (/proc/sys/net/ipv4/tcp_ecn) which
2061 allows ECN support to be disabled at runtime.
2062
2063 Note that, on the Internet, there are many broken firewalls which
2064 refuse connections from ECN-enabled machines, and it may be a while
2065 before these firewalls are fixed. Until then, to access a site behind
2066 such a firewall (some of which are major sites, at the time of this
2067 writing) you will have to disable this option, either by saying N now
2068 or by using the sysctl.
2069
2070 If in doubt, say N.
2071
2072 SYN flood protection
2073 CONFIG_SYN_COOKIES
2074 Normal TCP/IP networking is open to an attack known as "SYN
2075 flooding". This denial-of-service attack prevents legitimate remote
2076 users from being able to connect to your computer during an ongoing
2077 attack and requires very little work from the attacker, who can
2078 operate from anywhere on the Internet.
2079
2080 SYN cookies provide protection against this type of attack. If you
2081 say Y here, the TCP/IP stack will use a cryptographic challenge
2082 protocol known as "SYN cookies" to enable legitimate users to
2083 continue to connect, even when your machine is under attack. There
2084 is no need for the legitimate users to change their TCP/IP software;
2085 SYN cookies work transparently to them. For technical information
2086 about SYN cookies, check out
2087 ftp://koobera.math.uic.edu/syncookies.html .
2088
2089 If you are SYN flooded, the source address reported by the kernel is
2090 likely to have been forged by the attacker; it is only reported as
2091 an aid in tracing the packets to their actual source and should not
2092 be taken as absolute truth.
2093
2094 SYN cookies may prevent correct error reporting on clients when the
2095 server is really overloaded. If this happens frequently better turn
2096 them off.
2097
2098 If you say Y here, note that SYN cookies aren't enabled by default;
2099 you can enable them by saying Y to "/proc file system support" and
2100 "Sysctl support" below and executing the command
2101
2102 echo 1 >/proc/sys/net/ipv4/tcp_syncookies
2103
2104 at boot time after the /proc file system has been mounted.
2105
2106 If unsure, say Y.
2107
2108 Alpha system type
2109 CONFIG_ALPHA_GENERIC
2110 This is the system type of your hardware. A "generic" kernel will
2111 run on any supported Alpha system. However, if you configure a
2112 kernel for your specific system, it will be faster and smaller.
2113
2114 To find out what type of Alpha system you have, you may want to
2115 check out the Linux/Alpha FAQ, accessible on the WWW from
2116 http://www.alphalinux.org . In summary:
2117
2118 Alcor/Alpha-XLT AS 600
2119 Alpha-XL XL-233, XL-266
2120 AlphaBook1 Alpha laptop
2121 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
2122 Cabriolet AlphaPC64, AlphaPCI64
2123 DP264 DP264
2124 EB164 EB164 21164 evaluation board
2125 EB64+ EB64+ 21064 evaluation board
2126 EB66 EB66 21066 evaluation board
2127 EB66+ EB66+ 21066 evaluation board
2128 Jensen DECpc 150, DEC 2000 model 300,
2129 DEC 2000 model 500
2130 LX164 AlphaPC164-LX
2131 Miata Personal Workstation 433a, 433au, 500a,
2132 500au, 600a, or 600au
2133 Mikasa AS 1000
2134 Noname AXPpci33, UDB (Multia)
2135 Noritake AS 1000A, AS 600A, AS 800
2136 PC164 AlphaPC164
2137 Rawhide AS 1200, AS 4000, AS 4100
2138 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX
2139 SX164 AlphaPC164-SX
2140 Sable AS 2000, AS 2100
2141 Takara Takara
2142 Titan Privateer
2143 Wildfire AlphaServer GS 40/80/160/320
2144
2145 If you don't know what to do, choose "generic".
2146
2147 EV5 CPU daughtercard
2148 CONFIG_ALPHA_PRIMO
2149 Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
2150
2151 EV5 CPU(s)
2152 CONFIG_ALPHA_GAMMA
2153 Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
2154
2155 Using SRM as bootloader
2156 CONFIG_ALPHA_SRM
2157 There are two different types of booting firmware on Alphas: SRM,
2158 which is command line driven, and ARC, which uses menus and arrow
2159 keys. Details about the Linux/Alpha booting process are contained in
2160 the Linux/Alpha FAQ, accessible on the WWW from
2161 http://www.alphalinux.org .
2162
2163 The usual way to load Linux on an Alpha machine is to use MILO
2164 (a bootloader that lets you pass command line parameters to the
2165 kernel just like lilo does for the x86 architecture) which can be
2166 loaded either from ARC or can be installed directly as a permanent
2167 firmware replacement from floppy (which requires changing a certain
2168 jumper on the motherboard). If you want to do either of these, say N
2169 here. If MILO doesn't work on your system (true for Jensen
2170 motherboards), you can bypass it altogether and boot Linux directly
2171 from an SRM console; say Y here in order to do that. Note that you
2172 won't be able to boot from an IDE disk using SRM.
2173
2174 If unsure, say N.
2175
2176 Legacy kernel start address
2177 CONFIG_ALPHA_LEGACY_START_ADDRESS
2178 The 2.4 kernel changed the kernel start address from 0x310000
2179 to 0x810000 to make room for the Wildfire's larger SRM console.
2180
2181 If you're using aboot 0.7 or later, the bootloader will examine
2182 the ELF headers to determine where to transfer control. Unfortunately,
2183 most older bootloaders -- APB or MILO -- hardcoded the kernel
2184 start address rather than examining the ELF headers, and the result
2185 is a hard lockup.
2186
2187 Say Y if you have a broken bootloader. Say N if you do not, or
2188 if you wish to run on Wildfire.
2189
2190 Large VMALLOC support
2191 CONFIG_ALPHA_LARGE_VMALLOC
2192 Process creation and other aspects of virtual memory management
2193 can be streamlined if we restrict the kernel to one PGD for all
2194 vmalloc allocations. This equates to about 8GB.
2195
2196 Under normal circumstances, this is so far and above what is needed
2197 as to be laughable. However, there are certain applications (such
2198 as benchmark-grade in-kernel web serving) that can make use of as
2199 much vmalloc space as is available.
2200
2201 Say N unless you know you need gobs and gobs of vmalloc space.
2202
2203 Non-standard serial port support
2204 CONFIG_SERIAL_NONSTANDARD
2205 Say Y here if you have any non-standard serial boards -- boards
2206 which aren't supported using the standard "dumb" serial driver.
2207 This includes intelligent serial boards such as Cyclades,
2208 Digiboards, etc. These are usually used for systems that need many
2209 serial ports because they serve many terminals or dial-in
2210 connections.
2211
2212 Note that the answer to this question won't directly affect the
2213 kernel: saying N will just cause this configure script to skip all
2214 the questions about non-standard serial boards.
2215
2216 Most people can say N here.
2217
2218 Extended dumb serial driver options
2219 CONFIG_SERIAL_EXTENDED
2220 If you wish to use any non-standard features of the standard "dumb"
2221 driver, say Y here. This includes HUB6 support, shared serial
2222 interrupts, special multiport support, support for more than the
2223 four COM 1/2/3/4 boards, etc.
2224
2225 Note that the answer to this question won't directly affect the
2226 kernel: saying N will just cause this configure script to skip all
2227 the questions about serial driver options. If unsure, say N.
2228
2229 Support more than 4 serial ports
2230 CONFIG_SERIAL_MANY_PORTS
2231 Say Y here if you have dumb serial boards other than the four
2232 standard COM 1/2/3/4 ports. This may happen if you have an AST
2233 FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available
2234 from http://www.linuxdoc.org/docs.html#howto ), or other custom
2235 serial port hardware which acts similar to standard serial port
2236 hardware. If you only use the standard COM 1/2/3/4 ports, you can
2237 say N here to save some memory. You can also say Y if you have an
2238 "intelligent" multiport card such as Cyclades, Digiboards, etc.
2239
2240 Support for sharing serial interrupts
2241 CONFIG_SERIAL_SHARE_IRQ
2242 Some serial boards have hardware support which allows multiple dumb
2243 serial ports on the same board to share a single IRQ. To enable
2244 support for this in the serial driver, say Y here.
2245
2246 Auto detect IRQ on standard ports (unsafe)
2247 CONFIG_SERIAL_DETECT_IRQ
2248 Say Y here if you want the kernel to try to guess which IRQ
2249 to use for your serial port.
2250
2251 This is considered unsafe; it is far better to configure the IRQ in
2252 a boot script using the setserial command.
2253
2254 If unsure, say N.
2255
2256 Support special multiport boards
2257 CONFIG_SERIAL_MULTIPORT
2258 Some multiport serial ports have special ports which are used to
2259 signal when there are any serial ports on the board which need
2260 servicing. Say Y here to enable the serial driver to take advantage
2261 of those special I/O ports.
2262
2263 SGI PROM Console Support
2264 CONFIG_SGI_PROM_CONSOLE
2265 Say Y here if you want to use the PROMs for console I/O.
2266
2267 SGI Zilog85C30 serial support
2268 CONFIG_SGI_SERIAL
2269 If you want to use your SGI's built-in serial ports under Linux,
2270 answer Y.
2271
2272 SGI Newport Graphics support (EXPERIMENTAL)
2273 CONFIG_SGI_NEWPORT_GFX
2274 If you have an SGI machine and you want to compile the graphics
2275 drivers, say Y here. This will include the code for the
2276 /dev/graphics and /dev/gfx drivers into the kernel for supporting
2277 virtualized access to your graphics hardware.
2278
2279 SGI Newport Console support
2280 CONFIG_SGI_NEWPORT_CONSOLE
2281 Say Y here if you want the console on the Newport aka XL graphics
2282 card of your Indy. Most people say Y here.
2283
2284 SGI DS1286 RTC support
2285 CONFIG_SGI_DS1286
2286 If you say Y here and create a character special file /dev/rtc with
2287 major number 10 and minor number 135 using mknod ("man mknod"), you
2288 will get access to the real time clock built into your computer.
2289 Every SGI has such a clock built in. It reports status information
2290 via the file /proc/rtc and its behaviour is set by various ioctls on
2291 /dev/rtc.
2292
2293 Support the Bell Technologies HUB6 card
2294 CONFIG_HUB6
2295 Say Y here to enable support in the dumb serial driver to support
2296 the HUB6 card.
2297
2298 PCMCIA serial device support
2299 CONFIG_PCMCIA_SERIAL_CS
2300 Say Y here to enable support for 16-bit PCMCIA serial devices,
2301 including serial port cards, modems, and the modem functions of
2302 multi-function ethernet/modem cards. (PCMCIA- or PC-cards are
2303 credit-card size devices often used with laptops.)
2304
2305 This driver is also available as a module ( = code which can be
2306 inserted in and removed from the running kernel whenever you want).
2307 The module will be called serial_cs.o. If you want to compile it as
2308 a module, say M here and read Documentation/modules.txt. If unsure,
2309 say N.
2310
2311 CardBus serial device support
2312 CONFIG_PCMCIA_SERIAL_CB
2313 Say Y here to enable support for CardBus serial devices, including
2314 serial port cards, modems, and the modem functions of multi-function
2315 ethernet/modem devices. (CardBus cards are the newer and better
2316 version of PCMCIA- or PC-cards: credit card size devices often
2317 used with laptops.)
2318
2319 This driver is also available as a module ( = code which can be
2320 inserted in and removed from the running kernel whenever you want).
2321 The module will be called serial_cb.o. If you want to compile it as
2322 a module, say M here and read Documentation/modules.txt. If unsure,
2323 say N.
2324
2325 /dev/agpgart (AGP Support) (EXPERIMENTAL)
2326 CONFIG_AGP
2327 AGP (Accelerated Graphics Port) is a bus system mainly used to
2328 connect graphics cards to the rest of the system.
2329
2330 If you have an AGP system and you say Y here, it will be possible to
2331 use the AGP features of your 3D rendering video card. This code acts
2332 as a sort of "AGP driver" for the motherboard's chipset. The glx
2333 module will then be able to program the GART (graphics aperture
2334 relocation table) registers with appropriate values to transfer
2335 commands to the card.
2336
2337 If you need more texture memory than you can get with the AGP GART
2338 (theoretically up to 256 MB, but in practice usually 64 or 128 MB
2339 due to kernel allocation issues), you could use PCI accesses
2340 and have up to a couple gigs of texture space.
2341
2342 Note that this is the only means to have XFree4/GLX use
2343 write-combining with MTRR support on the AGP bus. Without it, OpenGL
2344 direct rendering will be a lot slower but still faster than PIO.
2345
2346 For the moment, you should probably say N, unless you want to test
2347 the GLX component for XFree86 3.3.6, which can be downloaded from
2348 http://utah-glx.sourceforge.net/ , or need to use the 810 Xserver in
2349 XFree 3.3.6.
2350
2351 This driver is available as a module. If you want to compile it as a
2352 module, say M here and read Documentation/modules.txt. The module
2353 will be called agpgart.o.
2354
2355 Intel 440LX/BX/GX/815/840/850 support
2356 CONFIG_AGP_INTEL
2357 This option gives you AGP support for the GLX component of the
2358 XFree86 4.x on Intel 440LX/BX/GX, 815, 840 and 850 chipsets.
2359
2360 For the moment, you should probably say N, unless you want to test
2361 the GLX component for XFree86 3.3.6, which can be downloaded from
2362 http://utah-glx.sourceforge.net/ .
2363
2364 Intel I810/I810 DC100/I810e support
2365 CONFIG_AGP_I810
2366 This option gives you AGP support for the Xserver on the Intel 810
2367 and 815 chipset boards for their on-board integrated graphics. This
2368 is required to do any useful video modes with these boards.
2369
2370 VIA chipset support
2371 CONFIG_AGP_VIA
2372 This option gives you AGP support for the GLX component of the
2373 XFree86 4.x on VIA MPV3/Apollo Pro chipsets.
2374
2375 For the moment, you should probably say N, unless you want to test
2376 the GLX component for XFree86 3.3.6, which can be downloaded from
2377 http://utah-glx.sourceforge.net/ .
2378
2379 AMD Irongate support
2380 CONFIG_AGP_AMD
2381 This option gives you AGP support for the GLX component of the
2382 XFree86 4.x on AMD Irongate chipset.
2383
2384 For the moment, you should probably say N, unless you want to test
2385 the GLX component for XFree86 3.3.6, which can be downloaded from
2386 http://utah-glx.sourceforge.net/ .
2387
2388 Generic SiS support
2389 CONFIG_AGP_SIS
2390 This option gives you AGP support for the GLX component of the "soon
2391 to be released" XFree86 4.x on Silicon Integrated Systems [SiS]
2392 chipsets.
2393
2394 Note that 5591/5592 AGP chipsets are NOT supported.
2395
2396 For the moment, you should probably say N, unless you want to test
2397 the GLX component for XFree86 3.3.6, which can be downloaded from
2398 http://utah-glx.sourceforge.net/ .
2399
2400 ALI M1541 support
2401 CONFIG_AGP_ALI
2402 This option gives you AGP support for the GLX component of the
2403 XFree86 4.x on the ALi M1541 chipset.
2404
2405 This chipset can do AGP 1x and 2x, but note that there is an
2406 acknowledged incompatibility with Matrox G200 cards. Due to
2407 timing issues, this chipset cannot do AGP 2x with the G200.
2408 This is a hardware limitation. AGP 1x seems to be fine, though.
2409
2410 For the moment, you should probably say N, unless you want to test
2411 the GLX component for XFree86 3.3.6, which can be downloaded from
2412 http://utah-glx.sourceforge.net/ .
2413
2414 PCI support
2415 CONFIG_PCI
2416 Find out whether you have a PCI motherboard. PCI is the name of a
2417 bus system, i.e. the way the CPU talks to the other stuff inside
2418 your box. Other bus systems are ISA, EISA, Microchannel (MCA) or
2419 VESA. If you have PCI, say Y, otherwise N.
2420
2421 The PCI-HOWTO, available from
2422 http://www.linuxdoc.org/docs.html#howto , contains valuable
2423 information about which PCI hardware does work under Linux and which
2424 doesn't.
2425
2426 PCI support
2427 CONFIG_PCI_INTEGRATOR
2428 Find out whether you have a PCI motherboard. PCI is the name of a
2429 bus system, i.e. the way the CPU talks to the other stuff inside
2430 your box. Other bus systems are ISA, EISA, Microchannel (MCA) or
2431 VESA. If you have PCI, say Y, otherwise N.
2432
2433 The PCI-HOWTO, available from
2434 http://www.linuxdoc.org/docs.html#howto , contains valuable
2435 information about which PCI hardware does work under Linux and which
2436 doesn't.
2437
2438 QSpan PCI
2439 CONFIG_PCI_QSPAN
2440 Find out whether you have a PCI motherboard. PCI is the name of a
2441 bus system, i.e. the way the CPU talks to the other stuff inside
2442 your box. Other bus systems are ISA, EISA, Microchannel (MCA) or
2443 VESA. If you have PCI, say Y, otherwise N.
2444
2445 The PCI-HOWTO, available from
2446 http://www.linuxdoc.org/docs.html#howto , contains valuable
2447 information about which PCI hardware does work under Linux and which
2448 doesn't.
2449
2450 PCI access mode
2451 CONFIG_PCI_GOBIOS
2452 On PCI systems, the BIOS can be used to detect the PCI devices and
2453 determine their configuration. However, some old PCI motherboards
2454 have BIOS bugs and may crash if this is done. Also, some embedded
2455 PCI-based systems don't have any BIOS at all. Linux can also try to
2456 detect the PCI hardware directly without using the BIOS.
2457
2458 With this option, you can specify how Linux should detect the PCI
2459 devices. If you choose "BIOS", the BIOS will be used, if you choose
2460 "Direct", the BIOS won't be used, and if you choose "Any", the
2461 kernel will try the direct access method and falls back to the BIOS
2462 if that doesn't work. If unsure, go with the default, which is
2463 "Any".
2464
2465 PCI device name database
2466 CONFIG_PCI_NAMES
2467 By default, the kernel contains a database of all known PCI device
2468 names to make the information in /proc/pci, /proc/ioports and
2469 similar files comprehensible to the user. This database increases
2470 size of the kernel image by about 80KB, but it gets freed after the
2471 system boots up, so it doesn't take up kernel memory. Anyway, if you
2472 are building an installation floppy or kernel for an embedded system
2473 where kernel image size really matters, you can disable this feature
2474 and you'll get device ID numbers instead of names.
2475
2476 When in doubt, say Y.
2477
2478 MCA support
2479 CONFIG_MCA
2480 MicroChannel Architecture is found in some IBM PS/2 machines and
2481 laptops. It is a bus system similar to PCI or ISA. See
2482 Documentation/mca.txt (and especially the web page given there)
2483 before attempting to build an MCA bus kernel.
2484
2485 EISA support
2486 CONFIG_EISA
2487 The Extended Industry Standard Architecture (EISA) bus was
2488 developed as an open alternative to the IBM MicroChannel bus.
2489
2490 The EISA bus provided some of the features of the IBM MicroChannel
2491 bus while maintaining backward compatibility with cards made for
2492 the older ISA bus. The EISA bus saw limited use between 1988 and 1995
2493 when it was made obsolete by the PCI bus.
2494
2495 Say Y here if you are building a kernel for an EISA-based machine.
2496
2497 Otherwise, say N.
2498
2499 SGI Visual Workstation support
2500 CONFIG_VISWS
2501 The SGI Visual Workstation series is an IA32-based workstation
2502 based on SGI systems chips with some legacy PC hardware attached.
2503 Say Y here to create a kernel to run on the SGI 320 or 540.
2504 A kernel compiled for the Visual Workstation will not run on other
2505 PC boards and vice versa.
2506 See Documentation/sgi-visws.txt for more.
2507
2508 SGI Visual Workstation framebuffer support
2509 CONFIG_FB_SGIVW
2510 SGI Visual Workstation support for framebuffer graphics.
2511
2512 I2O support
2513 CONFIG_I2O
2514 The Intelligent Input/Output (I2O) architecture allows hardware
2515 drivers to be split into two parts: an operating system specific
2516 module called the OSM and an hardware specific module called the
2517 HDM. The OSM can talk to a whole range of HDM's, and ideally the
2518 HDM's are not OS dependent. This allows for the same HDM driver to
2519 be used under different operating systems if the relevant OSM is in
2520 place. In order for this to work, you need to have an I2O interface
2521 adapter card in your computer. This card contains a special I/O
2522 processor (IOP), thus allowing high speeds since the CPU does not
2523 have to deal with I/O.
2524
2525 If you say Y here, you will get a choice of interface adapter
2526 drivers and OSM's with the following questions.
2527
2528 This support is also available as a module ( = code which can be
2529 inserted in and removed from the running kernel whenever you want).
2530 If you want to compile it as a module, say M here and read
2531 Documentation/modules.txt. You will get modules called i2o_core.o
2532 and i20_config.o.
2533
2534 If unsure, say N.
2535
2536 I2O PCI support
2537 CONFIG_I2O_PCI
2538 Say Y for support of PCI bus I2O interface adapters. Currently this
2539 is the only variety supported, so you should say Y.
2540
2541 This support is also available as a module called i2o_pci.o ( = code
2542 which can be inserted in and removed from the running kernel
2543 whenever you want). If you want to compile it as a module, say M
2544 here and read Documentation/modules.txt.
2545
2546 I2O Block OSM
2547 CONFIG_I2O_BLOCK
2548 Include support for the I2O Block OSM. The Block OSM presents disk
2549 and other structured block devices to the operating system.
2550
2551 This support is also available as a module called i2o_block.o ( =
2552 code which can be inserted in and removed from the running kernel
2553 whenever you want). If you want to compile it as a module, say M
2554 here and read Documentation/modules.txt.
2555
2556 I2O LAN OSM
2557 CONFIG_I2O_LAN
2558 Include support for the LAN OSM. You will also need to include
2559 support for token ring or FDDI if you wish to use token ring or FDDI
2560 I2O cards with this driver.
2561
2562 This support is also available as a module called i2o_lan.o ( = code
2563 which can be inserted in and removed from the running kernel
2564 whenever you want). If you want to compile it as a module, say M
2565 here and read Documentation/modules.txt.
2566
2567 I2O SCSI OSM
2568 CONFIG_I2O_SCSI
2569 Allows direct SCSI access to SCSI devices on a SCSI or FibreChannel
2570 I2O controller. You can use both the SCSI and Block OSM together if
2571 you wish.
2572
2573 This support is also available as a module called i2o_scsi.o ( =
2574 code which can be inserted in and removed from the running kernel
2575 whenever you want). If you want to compile it as a module, say M
2576 here and read Documentation/modules.txt.
2577
2578 I2O /proc support
2579 CONFIG_I2O_PROC
2580 If you say Y here and to "/proc file system support", you will be
2581 able to read I2O related information from the virtual directory
2582 /proc/i2o.
2583
2584 This support is also available as a module called i2o_proc.o ( =
2585 code which can be inserted in and removed from the running kernel
2586 whenever you want). If you want to compile it as a module, say M
2587 here and read Documentation/modules.txt.
2588
2589 Plug and Play support
2590 CONFIG_PNP
2591 Plug and Play (PnP) is a standard for peripherals which allows those
2592 peripherals to be configured by software, e.g. assign IRQ's or other
2593 parameters. No jumpers on the cards are needed, instead the values
2594 are provided to the cards from the BIOS, from the operating system,
2595 or using a user-space utility.
2596
2597 Say Y here if you would like Linux to configure your Plug and Play
2598 devices. You should then also say Y to "ISA Plug and Play support",
2599 below. Alternatively, you can say N here and configure your PnP
2600 devices using the user space utilities contained in the isapnptools
2601 package.
2602
2603 This support is also available as a module ( = code which can be
2604 inserted in and removed from the running kernel whenever you want).
2605 If you want to compile it as a module, say M here and read
2606 Documentation/modules.txt.
2607
2608 ISA Plug and Play support
2609 CONFIG_ISAPNP
2610 Say Y here if you would like support for ISA Plug and Play devices.
2611 Some information is in Documentation/isapnp.txt.
2612
2613 This support is also available as a module called isapnp.o ( =
2614 code which can be inserted in and removed from the running kernel
2615 whenever you want). If you want to compile it as a module, say M
2616 here and read Documentation/modules.txt.
2617
2618 If unsure, say Y.
2619
2620 Support for hot-pluggable devices
2621 CONFIG_HOTPLUG
2622 Say Y here if you want to plug devices into your computer while
2623 the system is running, and be able to use them quickly. In many
2624 cases, the devices can likewise be unplugged at any time too.
2625
2626 One well known example of this is PCMCIA- or PC-cards, credit-card
2627 size devices such as network cards, modems or hard drives which are
2628 plugged into slots found on all modern laptop computers.
2629
2630 Another example, used on modern desktops as well as laptops, is USB.
2631 Enable HOTPLUG with USB and KMOD, and your kernel will automatically
2632 call out to a user mode "policy agent" to load modules and set up
2633 software needed to use USB devices you plug in. Get agent software
2634 (at http://www.linux-usb.org/policy.html) and install it.
2635
2636 PCMCIA/Cardbus support
2637 CONFIG_PCMCIA
2638 Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
2639 computer. These are credit-card size devices such as network cards,
2640 modems or hard drives often used with laptops computers. There are
2641 actually two varieties of these cards: the older 16 bit PCMCIA cards
2642 and the newer 32 bit CardBus cards. If you want to use CardBus
2643 cards, you need to say Y here and also to "CardBus support" below.
2644
2645 To use your PC-cards, you will need supporting software from David
2646 Hinds' pcmcia-cs package (see the file Documentation/Changes for
2647 location). Please also read the PCMCIA-HOWTO, available from
2648 http://www.linuxdoc.org/docs.html#howto
2649
2650 This driver is also available as a module ( = code which can be
2651 inserted in and removed from the running kernel whenever you want).
2652 When compiled this way, there will be modules called pcmcia_core.o
2653 and ds.o. If you want to compile it as a module, say M here and
2654 read Documentation/modules.txt.
2655
2656 CardBus support
2657 CONFIG_CARDBUS
2658 CardBus is a bus mastering architecture for PC-cards, which allows
2659 for 32 bit PC-cards (the original PCMCIA standard specifies only
2660 a 16 bit wide bus). Many newer PC-cards are actually CardBus cards.
2661
2662 To use your PC-cards, you will need supporting software from David
2663 Hinds' pcmcia-cs package (see the file Documentation/Changes for
2664 location).
2665
2666 If unsure, say Y.
2667
2668 i82365/Yenta compatible bridge support
2669 CONFIG_I82365
2670 Say Y here to include support for PCMCIA and CardBus host bridges
2671 that are register compatible with the Intel i82365 and/or the Yenta
2672 specification: this includes virtually all modern PCMCIA bridges.
2673 "Bridge" is the name used for the hardware inside your computer that
2674 PCMCIA cards are plugged into. If unsure, say Y.
2675
2676 Databook TCIC host bridge support
2677 CONFIG_TCIC
2678 Say Y here to include support for the Databook TCIC family of PCMCIA
2679 host bridges. These are only found on a handful of old systems.
2680 "Bridge" is the name used for the hardware inside your computer that
2681 PCMCIA cards are plugged into. If unsure, say N.
2682
2683 System V IPC
2684 CONFIG_SYSVIPC
2685 Inter Process Communication is a suite of library functions and
2686 system calls which let processes (running programs) synchronize and
2687 exchange information. It is generally considered to be a good thing,
2688 and some programs won't run unless you say Y here. In particular, if
2689 you want to run the DOS emulator dosemu under Linux (read the
2690 DOSEMU-HOWTO, available from
2691 http://www.linuxdoc.org/docs.html#howto ), you'll need to say Y
2692 here.
2693
2694 You can find documentation about IPC with "info ipc" and also in
2695 section 6.4 of the Linux Programmer's Guide, available from
2696 http://www.linuxdoc.org/docs.html#guide .
2697
2698 Shared memory is now implemented using a new (minimal) virtual file
2699 system. To mount it automatically at system startup just add the
2700 following line to your /etc/fstab:
2701
2702 none /dev/shm shm defaults 0 0
2703
2704 Saying Y here enlarges your kernel by about 18 KB. Just say Y.
2705
2706 BSD Process Accounting
2707 CONFIG_BSD_PROCESS_ACCT
2708 If you say Y here, a user level program will be able to instruct the
2709 kernel (via a special system call) to write process accounting
2710 information to a file: whenever a process exits, information about
2711 that process will be appended to the file by the kernel. The
2712 information includes things such as creation time, owning user,
2713 command name, memory usage, controlling terminal etc. (the complete
2714 list is in the struct acct in include/linux/acct.h). It is up to the
2715 user level program to do useful things with this information. This
2716 is generally a good idea, so say Y.
2717
2718 Sysctl support
2719 CONFIG_SYSCTL
2720 The sysctl interface provides a means of dynamically changing
2721 certain kernel parameters and variables on the fly without requiring
2722 a recompile of the kernel or reboot of the system. The primary
2723 interface consists of a system call, but if you say Y to "/proc
2724 file system support", a tree of modifiable sysctl entries will be
2725 generated beneath the /proc/sys directory. They are explained in the
2726 files in Documentation/sysctl/. Note that enabling this option will
2727 enlarge the kernel by at least 8 KB.
2728
2729 As it is generally a good thing, you should say Y here unless
2730 building a kernel for install/rescue disks or your system is very
2731 limited in memory.
2732
2733 Kernel core (/proc/kcore) format
2734 CONFIG_KCORE_ELF
2735 If you enabled support for /proc file system then the file
2736 /proc/kcore will contain the kernel core image. This can be used
2737 in gdb:
2738
2739 $ cd /usr/src/linux ; gdb vmlinux /proc/kcore
2740
2741 You have two choices here: ELF and A.OUT. Selecting ELF will make
2742 /proc/kcore appear in ELF core format as defined by the Executable
2743 and Linking Format specification. Selecting A.OUT will choose the
2744 old "a.out" format which may be necessary for some old versions
2745 of binutils or on some architectures.
2746
2747 This is especially useful if you have compiled the kernel with the
2748 "-g" option to preserve debugging information. It is mainly used
2749 for examining kernel data structures on the live kernel so if you
2750 don't understand what this means or are not a kernel hacker, just
2751 leave it at its default value ELF.
2752
2753 Kernel support for ELF binaries
2754 CONFIG_BINFMT_ELF
2755 ELF (Executable and Linkable Format) is a format for libraries and
2756 executables used across different architectures and operating
2757 systems. Saying Y here will enable your kernel to run ELF binaries
2758 and enlarge it by about 13 KB. ELF support under Linux has now all
2759 but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
2760 because it is portable (this does *not* mean that you will be able
2761 to run executables from different architectures or operating systems
2762 however) and makes building run-time libraries very easy. Many new
2763 executables are distributed solely in ELF format. You definitely
2764 want to say Y here.
2765
2766 Information about ELF is contained in the ELF HOWTO available from
2767 http://www.linuxdoc.org/docs.html#howto .
2768
2769 If you find that after upgrading from Linux kernel 1.2 and saying Y
2770 here, you still can't run any ELF binaries (they just crash), then
2771 you'll have to install the newest ELF runtime libraries, including
2772 ld.so (check the file Documentation/Changes for location and latest
2773 version).
2774
2775 If you want to compile this as a module ( = code which can be
2776 inserted in and removed from the running kernel whenever you want),
2777 say M here and read Documentation/modules.txt. The module will be
2778 called binfmt_elf.o. Saying M or N here is dangerous because some
2779 crucial programs on your system might be in ELF format.
2780
2781 Kernel support for A.OUT binaries
2782 CONFIG_BINFMT_AOUT
2783 A.out (Assembler.OUTput) is a set of formats for libraries and
2784 executables used in the earliest versions of UNIX. Linux used the
2785 a.out formats QMAGIC and ZMAGIC until they were replaced with the
2786 ELF format.
2787
2788 As more and more programs are converted to ELF, the use for a.out
2789 will gradually diminish. If you disable this option it will reduce
2790 your kernel by one page. This is not much and by itself does not
2791 warrant removing support. However its removal is a good idea if you
2792 wish to ensure that absolutely none of your programs will use this
2793 older executable format. If you don't know what to answer at this
2794 point then answer Y. If someone told you "You need a kernel with
2795 QMAGIC support" then you'll have to say Y here. You may answer M to
2796 compile a.out support as a module and later load the module when you
2797 want to use a program or library in a.out format. The module will be
2798 called binfmt_aout.o. Saying M or N here is dangerous though,
2799 because some crucial programs on your system might still be in A.OUT
2800 format.
2801
2802 Kernel support for Linux/Intel ELF binaries
2803 CONFIG_BINFMT_EM86
2804 Say Y here if you want to be able to execute Linux/Intel ELF
2805 binaries just like native Alpha binaries on your Alpha machine. For
2806 this to work, you need to have the emulator /usr/bin/em86 in place.
2807
2808 You can get the same functionality by saying N here and saying Y to
2809 "Kernel support for MISC binaries".
2810
2811 You may answer M to compile the emulation support as a module and
2812 later load the module when you want to use a Linux/Intel binary. The
2813 module will be called binfmt_em86.o. If unsure, say Y.
2814
2815 Kernel support for MISC binaries
2816 CONFIG_BINFMT_MISC
2817 If you say Y here, it will be possible to plug wrapper-driven binary
2818 formats into the kernel. You will like this especially when you use
2819 programs that need an interpreter to run like Java, Python or
2820 Emacs-Lisp. It's also useful if you often run DOS executables under
2821 the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
2822 http://www.linuxdoc.org/docs.html#howto ). Once you have
2823 registered such a binary class with the kernel, you can start one of
2824 those programs simply by typing in its name at a shell prompt; Linux
2825 will automatically feed it to the correct interpreter.
2826
2827 You can do other nice things, too. Read the file
2828 Documentation/binfmt_misc.txt to learn how to use this feature, and
2829 Documentation/java.txt for information about how to include Java
2830 support.
2831
2832 You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
2833 use this part of the kernel.
2834
2835 You may say M here for module support and later load the module when
2836 you have use for it; the module is called binfmt_misc.o. If you
2837 don't know what to answer at this point, say Y.
2838
2839 Solaris binary emulation (EXPERIMENTAL)
2840 CONFIG_SOLARIS_EMUL
2841 This is experimental code which will enable you to run (many)
2842 Solaris binaries on your SPARC Linux machine.
2843
2844 This code is also available as a module ( = code which can be
2845 inserted in and removed from the running kernel whenever you want).
2846 The module will be called solaris.o. If you want to compile it as a
2847 module, say M here and read Documentation/modules.txt.
2848
2849 Processor family
2850 CONFIG_M386
2851 This is the processor type of your CPU. This information is used for
2852 optimizing purposes. In order to compile a kernel that can run on
2853 all x86 CPU types (albeit not optimally fast), you can specify
2854 "386" here.
2855
2856 The kernel will not necessarily run on earlier architectures than
2857 the one you have chosen, e.g. a Pentium optimized kernel will run on
2858 a PPro, but not necessarily on a i486.
2859
2860 Here are the settings recommended for greatest speed:
2861 - "386" for the AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX, Cyrix/TI
2862 486DLC/DLC2, UMC 486SX-S and NexGen Nx586. Only "386" kernels will
2863 run on a 386 class machine.
2864 - "486" for the AMD/Cyrix/IBM/Intel 486DX/DX2/DX4 or
2865 SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S.
2866 - "586" for generic Pentium CPUs, possibly lacking the TSC
2867 (time stamp counter) register.
2868 - "Pentium-Classic" for the Intel Pentium.
2869 - "Pentium-MMX" for the Intel Pentium MMX.
2870 - "Pentium-Pro" for the Intel Pentium Pro/Celeron/Pentium II.
2871 - "Pentium-III" for the Intel Pentium III.
2872 - "Pentium-4" for the Intel Pentium 4
2873 - "K6" for the AMD K6, K6-II and K6-III (aka K6-3D).
2874 - "Athlon" for the AMD Athlon (K7).
2875 - "Crusoe" for the Transmeta Crusoe series.
2876 - "Winchip-C6" for original IDT Winchip.
2877 - "Winchip-2" for IDT Winchip 2.
2878 - "Winchip-2A" for IDT Winchips with 3dNow! capabilities.
2879
2880 If you don't know what to do, choose "386".
2881
2882 VGA text console
2883 CONFIG_VGA_CONSOLE
2884 Saying Y here will allow you to use Linux in text mode through a
2885 display that complies with the generic VGA standard. Virtually
2886 everyone wants that.
2887
2888 The program SVGATextMode can be used to utilize SVGA video cards to
2889 their full potential in text mode. Download it from
2890 ftp://metalab.unc.edu/pub/Linux/utils/console .
2891
2892 Say Y.
2893
2894 Video mode selection support
2895 CONFIG_VIDEO_SELECT
2896 This enables support for text mode selection on kernel startup. If
2897 you want to take advantage of some high-resolution text mode your
2898 card's BIOS offers, but the traditional Linux utilities like
2899 SVGATextMode don't, you can say Y here and set the mode using the
2900 "vga=" option from your boot loader (lilo or loadlin) or set
2901 "vga=ask" which brings up a video mode menu on kernel startup. (Try
2902 "man bootparam" or see the documentation of your boot loader about
2903 how to pass options to the kernel.)
2904
2905 Read the file Documentation/svga.txt for more information about the
2906 Video mode selection support. If unsure, say N.
2907
2908 Support for frame buffer devices (EXPERIMENTAL)
2909 CONFIG_FB
2910 The frame buffer device provides an abstraction for the graphics
2911 hardware. It represents the frame buffer of some video hardware and
2912 allows application software to access the graphics hardware through
2913 a well-defined interface, so the software doesn't need to know
2914 anything about the low-level (hardware register) stuff.
2915
2916 Frame buffer devices work identically across the different
2917 architectures supported by Linux and make the implementation of
2918 application programs easier and more portable; at this point, an X
2919 server exists which uses the frame buffer device exclusively.
2920 On several non-X86 architectures, the frame buffer device is the
2921 only way to use the graphics hardware.
2922
2923 The device is accessed through special device nodes, usually located
2924 in the /dev directory, i.e. /dev/fb*.
2925
2926 You need an utility program called fbset to make full use of frame
2927 buffer devices. Please read Documentation/fb/framebuffer.txt and the
2928 Framebuffer-HOWTO at
2929 http://www.tahallah.demon.co.uk/programming/prog.html for more
2930 information.
2931
2932 Say Y here and to the driver for your graphics board below if you
2933 are compiling a kernel for a non-x86 architecture.
2934
2935 If you are compiling for the x86 architecture, you can say Y if you
2936 want to play with it, but it is not essential. Please note that
2937 running graphical applications that directly touch the hardware
2938 (e.g. an accelerated X server) and that are not frame buffer
2939 device-aware may cause unexpected results. If unsure, say N.
2940
2941 Acorn VIDC support
2942 CONFIG_FB_ACORN
2943 This is the frame buffer device driver for the Acorn VIDC graphics
2944 hardware found in Acorn RISC PCs and other ARM-based machines. If
2945 unsure, say N.
2946
2947 Amiga native chipset support
2948 CONFIG_FB_AMIGA
2949 This is the frame buffer device driver for the builtin graphics
2950 chipset found in Amigas.
2951
2952 The driver is also available as a module ( = code which can be
2953 inserted and removed from the running kernel whenever you want). The
2954 module will be called amifb.o. If you want to compile it as a
2955 module, say M here and read Documentation/modules.txt.
2956
2957 Amiga OCS chipset support
2958 CONFIG_FB_AMIGA_OCS
2959 This enables support for the original Agnus and Denise video chips,
2960 found in the Amiga 1000 and most A500's and A2000's. If you intend
2961 to run Linux on any of these systems, say Y; otherwise say N.
2962
2963 Amiga ECS chipset support
2964 CONFIG_FB_AMIGA_ECS
2965 This enables support for the Enhanced Chip Set, found in later
2966 A500's, later A2000's, the A600, the A3000, the A3000T and CDTV. If
2967 you intend to run Linux on any of these systems, say Y; otherwise
2968 say N.
2969
2970 Amiga AGA chipset support
2971 CONFIG_FB_AMIGA_AGA
2972 This enables support for the Advanced Graphics Architecture (also
2973 known as the AGA or AA) Chip Set, found in the A1200, A4000, A4000T
2974 and CD32. If you intend to run Linux on any of these systems, say Y;
2975 otherwise say N.
2976
2977 Amiga CyberVision support
2978 CONFIG_FB_CYBER
2979 This enables support for the Cybervision 64 graphics card from
2980 Phase5. Please note that its use is not all that intuitive (i.e. if
2981 you have any questions, be sure to ask!). Say N unless you have a
2982 Cybervision 64 or plan to get one before you next recompile the
2983 kernel. Please note that this driver DOES NOT support the
2984 Cybervision 64 3D card, as they use incompatible video chips.
2985
2986 CyberPro 20x0 support
2987 CONFIG_FB_CYBER2000
2988 This enables support for the Integraphics CyberPro 20x0 and 5000
2989 VGA chips used in the Rebel.com Netwinder and other machines.
2990 Say Y if you have a NetWinder or a graphics card containing this
2991 device, otherwise say N.
2992
2993 Amiga CyberVision3D support (EXPERIMENTAL)
2994 CONFIG_FB_VIRGE
2995 This enables support for the Cybervision 64/3D graphics card from
2996 Phase5. Please note that its use is not all that intuitive (i.e. if
2997 you have any questions, be sure to ask!). Say N unless you have a
2998 Cybervision 64/3D or plan to get one before you next recompile the
2999 kernel. Please note that this driver DOES NOT support the older
3000 Cybervision 64 card, as they use incompatible video chips.
3001
3002 Amiga RetinaZ3 support (EXPERIMENTAL)
3003 CONFIG_FB_RETINAZ3
3004 This enables support for the Retina Z3 graphics card. Say N unless
3005 you have a Retina Z3 or plan to get one before you next recompile
3006 the kernel.
3007
3008 Cirrus Logic generic driver (EXPERIMENTAL)
3009 CONFIG_FB_CLGEN
3010 This enables support for Cirrus Logic GD542x/543x based boards on
3011 Amiga: SD64, Piccolo, Picasso II/II+, Picasso IV, or EGS Spectrum.
3012
3013 If you have a PCI-based system, this enables support for these
3014 chips: GD-543x, GD-544x, GD-5480.
3015
3016 Please read the file Documentation/fb/clgenfb.txt.
3017
3018 Say N unless you have such a graphics board or plan to get one
3019 before you next recompile the kernel.
3020
3021 Permedia2 support (EXPERIMENTAL)
3022 CONFIG_FB_PM2
3023 Say Y here if this is your graphics board.
3024
3025 Apollo support
3026 CONFIG_APOLLO
3027 Say Y here if you want to run Linux on an MC680x0-based Apollo
3028 Domain workstation such as the DN3500.
3029
3030 Apollo 3c505 support
3031 CONFIG_APOLLO_ELPLUS
3032 Say Y or M here if your Apollo has a 3Com 3c505 ISA Ethernet card.
3033 If you don't have one made for Apollos, you can use one from a PC,
3034 except that your Apollo won't be able to boot from it (because the
3035 code in the ROM will be for a PC).
3036
3037 Atari native chipset support
3038 CONFIG_FB_ATARI
3039 This is the frame buffer device driver for the builtin graphics
3040 chipset found in Ataris.
3041
3042 Open Firmware frame buffer device support
3043 CONFIG_FB_OF
3044 Say Y if you want support with Open Firmware for your graphics
3045 board.
3046
3047 S3 Trio frame buffer device support
3048 CONFIG_FB_S3TRIO
3049 If you have a S3 Trio say Y. Say N for S3 Virge.
3050
3051 3Dfx Banshee/Voodoo3 display support (EXPERIMENTAL)
3052 CONFIG_FB_3DFX
3053 This driver supports graphics boards with the 3Dfx Banshee/Voodoo3
3054 chips. Say Y if you have such a graphics board.
3055
3056 The driver is also available as a module ( = code which can be
3057 inserted and removed from the running kernel whenever you want). The
3058 module will be called tdfxfb.o. If you want to compile it as a
3059 module, say M here and read Documentation/modules.txt.
3060
3061 nVidia Riva support (EXPERIMENTAL)
3062 CONFIG_FB_RIVA
3063 This driver supports graphics boards with the nVidia Riva (aka TNTx)
3064 chips.
3065 Say Y if you have such a graphics board.
3066
3067 The driver is also available as a module ( = code which can be
3068 inserted and removed from the running kernel whenever you want). The
3069 module will be called rivafb.o. If you want to compile it as a
3070 module, say M here and read Documentation/modules.txt.
3071
3072 ATI Mach64 display support (EXPERIMENTAL)
3073 CONFIG_FB_ATY
3074 This driver supports graphics boards with the ATI Mach64 chips.
3075 Say Y if you have such a graphics board.
3076
3077 The driver is also available as a module ( = code which can be
3078 inserted and removed from the running kernel whenever you want). The
3079 module will be called atyfb.o. If you want to compile it as a
3080 module, say M here and read Documentation/modules.txt.
3081
3082 ATI Rage128 display support (EXPERIMENTAL)
3083 CONFIG_FB_ATY128
3084 This driver supports graphics boards with the ATI Rage128 chips.
3085 Say Y if you have such a graphics board and read
3086 Documentation/fb/aty128fb.txt.
3087
3088 The driver is also available as a module ( = code which can be
3089 inserted and removed from the running kernel whenever you want). The
3090 module will be called aty128fb.o. If you want to compile it as a
3091 module, say M here and read Documentation/modules.txt.
3092
3093 PowerMac "control" frame buffer device support
3094 CONFIG_FB_CONTROL
3095 This driver supports a frame buffer for the graphics adapter in the
3096 Power Macintosh 7300 and others.
3097
3098 PowerMac "platinum" frame buffer device support
3099 CONFIG_FB_PLATINUM
3100 This driver supports a frame buffer for the "platinum" graphics
3101 adapter in some Power Macintoshes.
3102
3103 PowerMac "valkyrie" frame buffer device support
3104 CONFIG_FB_VALKYRIE
3105 This driver supports a frame buffer for the "valkyrie" graphics
3106 adapter in some Power Macintoshes.
3107
3108 Chips 65550 display support
3109 CONFIG_FB_CT65550
3110 This is the frame buffer device driver for the Chips & Technologies
3111 65550 graphics chip in PowerBooks.
3112
3113 TGA frame buffer support
3114 CONFIG_FB_TGA
3115 This is the frame buffer device driver for generic TGA graphic
3116 cards. Say Y if you have one of those.
3117
3118 VESA VGA graphics console
3119 CONFIG_FB_VESA
3120 This is the frame buffer device driver for generic VESA 2.0
3121 compliant graphic cards. The older VESA 1.2 cards are not supported.
3122 You will get a boot time penguin logo at no additional cost. Please
3123 read Documentation/fb/vesafb.txt. If unsure, say Y.
3124
3125 VGA 16-color planar support
3126 CONFIG_FBCON_VGA_PLANES
3127 This low level frame buffer console driver enable the kernel to use
3128 the 16-color planar modes of the old VGA cards where the bits of
3129 each pixel are separated into 4 planes.
3130
3131 Only answer Y here if you have a (very old) VGA card that isn't VESA
3132 2 compatible.
3133
3134 VGA 16-color graphics console
3135 CONFIG_FB_VGA16
3136 This is the frame buffer device driver for VGA 16 color graphic
3137 cards. Say Y if you have such a card.
3138
3139 This code is also available as a module. If you want to compile it
3140 as a module ( = code which can be inserted in and removed from the
3141 running kernel whenever you want), say M here and read
3142 Documentation/modules.txt. The module will be called vga16fb.o.
3143
3144 Select other compiled-in fonts
3145 CONFIG_FBCON_FONTS
3146 Say Y here if you would like to use fonts other than the default
3147 your frame buffer console usually use.
3148
3149 Note that the answer to this question won't directly affect the
3150 kernel: saying N will just cause this configure script to skip all
3151 the questions about foreign fonts.
3152
3153 If unsure, say N (the default choices are safe).
3154
3155 VGA 8x16 font
3156 CONFIG_FONT_8x16
3157 This is the "high resolution" font for the VGA frame buffer (the one
3158 provided by the VGA text console 80x25 mode.
3159
3160 If unsure, say Y.
3161
3162 Support only 8 pixels wide fonts
3163 CONFIG_FBCON_FONTWIDTH8_ONLY
3164 Answer Y here will make the kernel provide only the 8x8 fonts (these
3165 are the less readable).
3166
3167 If unsure, say N.
3168
3169 Sparc console 8x16 font
3170 CONFIG_FONT_SUN8x16
3171 This is the high resolution console font for Sun machines. Say Y.
3172
3173 Sparc console 12x22 font (not supported by all drivers)
3174 CONFIG_FONT_SUN12x22
3175 This is the high resolution console font for Sun machines with very
3176 big letters (like the letters used in the SPARC PROM). If the
3177 standard font is unreadable for you, say Y, otherwise say N.
3178
3179 VGA 8x8 font
3180 CONFIG_FONT_8x8
3181 This is the "high resolution" font for the VGA frame buffer (the one
3182 provided by the text console 80x50 (and higher) modes).
3183
3184 Note that this is a poor quality font. The VGA 8x16 font is quite a
3185 lot more readable.
3186
3187 Given the resolution provided by the frame buffer device, answer N
3188 here is safe.
3189
3190 Backward compatibility mode for Xpmac
3191 CONFIG_FB_COMPAT_XPMAC
3192 If you use the Xpmac X server (common with mklinux), you'll need to
3193 say Y here to use X. You should consider changing to XFree86 which
3194 includes a server that supports the frame buffer device directly
3195 (XF68_FBDev).
3196
3197 HGA monochrome support (EXPERIMENTAL)
3198 CONFIG_FB_HGA
3199 Say Y here if you have a Hercules mono graphics card.
3200
3201 This driver is also available as a module ( = code which can be
3202 inserted and removed from the running kernel whenever you want).
3203 The module will be called hgafb.o. If you want to compile it as
3204 a module, say M here and read Documentation/modules.txt.
3205
3206 As this card technology is 15 years old, most people will answer N
3207 here.
3208
3209 Matrox unified accelerated driver (EXPERIMENTAL)
3210 CONFIG_FB_MATROX
3211 Say Y here if you have a Matrox Millennium, Matrox Millennium II,
3212 Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox
3213 Mystique G200, Matrox Millennium G200, Matrox Marvel G200 video,
3214 Matrox G400 or G450 card in your box. At this time, support for the G100
3215 is untested and support for G450 is highly experimental.
3216
3217 This driver is also available as a module ( = code which can be
3218 inserted and removed from the running kernel whenever you want).
3219 The module will be called matroxfb.o. If you want to compile it as
3220 a module, say M here and read Documentation/modules.txt.
3221
3222 You can pass several parameters to the driver at boot time or at
3223 module load time. The parameters look like "video=matrox:XXX", where
3224 the meaning of XXX can be found at the end of the main source file
3225 (drivers/video/matroxfb.c). Please see the file
3226 Documentation/fb/matroxfb.txt.
3227
3228 Matrox Millennium support
3229 CONFIG_FB_MATROX_MILLENIUM
3230 Say Y here if you have a Matrox Millennium or Matrox Millennium II
3231 video card. If you select "Advanced lowlevel driver options" below,
3232 you should check 4 bpp packed pixel, 8 bpp packed pixel, 16 bpp
3233 packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can
3234 also use font widths different from 8.
3235
3236 Matrox Mystique support
3237 CONFIG_FB_MATROX_MYSTIQUE
3238 Say Y here if you have a Matrox Mystique or Matrox Mystique 220
3239 video card. If you select "Advanced lowlevel driver options" below,
3240 you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp
3241 packed pixel and 32 bpp packed pixel. You can also use font widths
3242 different from 8.
3243
3244 Matrox G100/G200/G400/G450 support
3245 CONFIG_FB_MATROX_G100
3246 Say Y here if you have a Matrox G100, G200, G400 or G450 based
3247 video card. If you select "Advanced lowlevel driver options", you
3248 should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed
3249 pixel and 32 bpp packed pixel. You can also use font widths
3250 different from 8.
3251
3252 If you need support for G400 secondary head, you must first say Y to
3253 "I2C support" and "I2C bit-banging support" in the character devices
3254 section, and then to "Matrox I2C support" and "G400 second head
3255 support" here in the framebuffer section.
3256
3257 Matrox I2C support
3258 CONFIG_FB_MATROX_I2C
3259 This drivers creates I2C buses which are needed for accessing the
3260 DDC (I2C) bus present on all Matroxes, an I2C bus which
3261 interconnects Matrox optional devices, like MGA-TVO on G200 and
3262 G400, and the secondary head DDC bus, present on G400 only.
3263
3264 You can say Y or M here if you want to experiment with monitor
3265 detection code. You must say Y or M here if you want to use either
3266 second head of G400 or MGA-TVO on G200 or G400.
3267
3268 If you compile it as module, it will create a module named
3269 i2c-matroxfb.o.
3270
3271 Matrox G400 second head support
3272 CONFIG_FB_MATROX_MAVEN
3273 WARNING !!! This support does not work with G450 !!!
3274
3275 Say Y or M here if you want to use a secondary head (meaning two
3276 monitors in parallel) on G400 or MGA-TVO add-on on G200. Secondary
3277 head is not compatible with accelerated XFree 3.3.x SVGA servers -
3278 secondary head output is blanked while you are in X. With XFree
3279 3.9.17 preview you can use both heads if you use SVGA over fbdev or
3280 the fbdev driver on first head and the fbdev driver on second head.
3281
3282 If you compile it as module, two modules are created,
3283 matroxfb_crtc2.o and matroxfb_maven.o. Matroxfb_maven is needed for
3284 both G200 and G400, matroxfb_crtc2 is needed only by G400. You must
3285 also load i2c-matroxfb to get it to run.
3286
3287 The driver starts in monitor mode and you must use the matroxset
3288 tool (available at ftp://platan.vc.cvut.cz/pub/linux/matrox-latest)
3289 to switch it to PAL or NTSC or to swap primary and secondary head
3290 outputs. Secondary head driver also always start in 640x480
3291 resolution, you must use fbset to change it.
3292
3293 Also do not forget that second head supports only 16 and 32 bpp
3294 packed pixels, so it is a good idea to compile them into the kernel
3295 too. You can use only some font widths, as the driver uses generic
3296 painting procedures (the secondary head does not use acceleration
3297 engine).
3298
3299 There is no need for enabling 'Matrox multihead support' if you have
3300 only one Matrox card in the box.
3301
3302 Matrox G450 second head support
3303 CONFIG_FB_MATROX_G450
3304 Say Y or M here if you want to use a secondary head (meaning two
3305 monitors in parallel) on G450.
3306
3307 If you compile it as module, two modules are created,
3308 matroxfb_crtc2.o and matroxfb_g450.o. Both modules are needed if you
3309 want two independent display devices.
3310
3311 The driver starts in monitor mode and currently does not support
3312 output in TV modes. You must use the matroxset tool (available
3313 at ftp://platan.vc.cvut.cz/pub/linux/matrox-latest) to swap primary
3314 and secondary head outputs. Secondary head driver always start in
3315 640x480 resolution and you must use fbset to change it.
3316
3317 Also do not forget that second head supports only 16 and 32 bpp
3318 packed pixels, so it is a good idea to compile them into the kernel
3319 too. You can use only some font widths, as the driver uses generic
3320 painting procedures (the secondary head does not use acceleration
3321 engine).
3322
3323 There is no need for enabling 'Matrox multihead support' if you have
3324 only one Matrox card in the box.
3325
3326 Matrox unified driver multihead support
3327 CONFIG_FB_MATROX_MULTIHEAD
3328 Say Y here if you have more than one (supported) Matrox device in
3329 your computer and you want to use all of them for different monitors
3330 ("multihead"). If you have only one device, you should say N because
3331 the driver compiled with Y is larger and a bit slower, especially on
3332 ia32 (ix86).
3333
3334 If you said M to "Matrox unified accelerated driver" and N here, you
3335 will still be able to use several Matrox devices simultaneously:
3336 insert several instances of the module matroxfb.o into the kernel
3337 with insmod, supplying the parameter "dev=N" where N is 0, 1, etc.
3338 for the different Matrox devices. This method is slightly faster but
3339 uses 40 KB of kernel memory per Matrox card.
3340
3341 MDA text console (dual-headed)
3342 CONFIG_MDA_CONSOLE
3343 Say Y here if you have an old MDA or monochrome Hercules graphics
3344 adapter in your system acting as a second head ( = video card). You
3345 will then be able to use two monitors with your Linux system. Do not
3346 say Y here if your MDA card is the primary card in your system; the
3347 normal VGA driver will handle it.
3348
3349 This driver is also available as a module ( = code which can be
3350 inserted and removed from the running kernel whenever you want).
3351 The module will be called mdacon.o. If you want to compile it as
3352 a module, say M here and read Documentation/modules.txt.
3353
3354 If unsure, say N.
3355
3356 SBUS and UPA frame buffers
3357 CONFIG_FB_SBUS
3358 Say Y if you want support for SBUS or UPA based frame buffer device.
3359
3360 Creator/Creator3D support
3361 CONFIG_FB_CREATOR
3362 This is the frame buffer device driver for the Creator and Creator3D
3363 graphics boards.
3364
3365 CGsix (GX,TurboGX) support
3366 CONFIG_FB_CGSIX
3367 This is the frame buffer device driver for the CGsix (GX, TurboGX)
3368 frame buffer.
3369
3370 BWtwo support
3371 CONFIG_FB_BWTWO
3372 This is the frame buffer device driver for the BWtwo frame buffer.
3373
3374 CGthree support
3375 CONFIG_FB_CGTHREE
3376 This is the frame buffer device driver for the CGthree frame buffer.
3377
3378 TCX (SS4/SS5 only) support
3379 CONFIG_FB_TCX
3380 This is the frame buffer device driver for the TCX 24/8bit frame
3381 buffer.
3382
3383 Virtual Frame Buffer support (ONLY FOR TESTING!)
3384 CONFIG_FB_VIRTUAL
3385 This is a `virtual' frame buffer device. It operates on a chunk of
3386 unswapable kernel memory instead of on the memory of a graphics
3387 board. This means you cannot see any output sent to this frame
3388 buffer device, while it does consume precious memory. The main use
3389 of this frame buffer device is testing and debugging the frame
3390 buffer subsystem. Do NOT enable it for normal systems! To protect
3391 the innocent, it has to be enabled explicitly at boot time using the
3392 kernel option `video=vfb:'.
3393
3394 This driver is also available as a module ( = code which can be
3395 inserted and removed from the running kernel whenever you want). The
3396 module will be called vfb.o. If you want to compile it as a module,
3397 say M here and read Documentation/modules.txt.
3398
3399 If unsure, say N.
3400
3401 CONFIG_FB_SA1100
3402 This is a framebuffer device for the SA-1100 LCD Controller.
3403 See http://www.linux-fbdev.org/ for information on framebuffer
3404 devices.
3405
3406 If you plan to use the LCD display with your SA-1100 system, say
3407 Y here.
3408
3409 Advanced low level driver options
3410 CONFIG_FBCON_ADVANCED
3411 The frame buffer console uses character drawing routines that are
3412 tailored to the specific organization of pixels in the memory of
3413 your graphics hardware. These are called the low level frame buffer
3414 console drivers. Note that they are used for text console output
3415 only; they are NOT needed for graphical applications.
3416
3417 If you say N here, the needed low level drivers are automatically
3418 enabled, depending on what frame buffer devices you selected above.
3419 This is recommended for most users.
3420
3421 If you say Y here, you have more fine-grained control over which low
3422 level drivers are enabled. You can e.g. leave out low level drivers
3423 for color depths you do not intend to use for text consoles.
3424
3425 Low level frame buffer console drivers can be modules ( = code which
3426 can be inserted and removed from the running kernel whenever you
3427 want). The modules will be called fbcon-*.o. If you want to compile
3428 (some of) them as modules, read Documentation/modules.txt.
3429
3430 If unsure, say N.
3431
3432 Monochrome support
3433 CONFIG_FBCON_MFB
3434 This is the low level frame buffer console driver for monochrome
3435 (2 colors) packed pixels.
3436
3437 2 bpp packed pixels support
3438 CONFIG_FBCON_CFB2
3439 This is the low level frame buffer console driver for 2 bits per
3440 pixel (4 colors) packed pixels.
3441
3442 4 bpp packed pixels support
3443 CONFIG_FBCON_CFB4
3444 This is the low level frame buffer console driver for 4 bits per
3445 pixel (16 colors) packed pixels.
3446
3447 8 bpp packed pixels support
3448 CONFIG_FBCON_CFB8
3449 This is the low level frame buffer console driver for 8 bits per
3450 pixel (256 colors) packed pixels.
3451
3452 16 bpp packed pixels support
3453 CONFIG_FBCON_CFB16
3454 This is the low level frame buffer console driver for 15 or 16 bits
3455 per pixel (32K or 64K colors, also known as `hicolor') packed
3456 pixels.
3457
3458 24 bpp packed pixels support
3459 CONFIG_FBCON_CFB24
3460 This is the low level frame buffer console driver for 24 bits per
3461 pixel (16M colors, also known as `truecolor') packed pixels. It is
3462 NOT for `sparse' 32 bits per pixel mode.
3463
3464 32 bpp packed pixels support
3465 CONFIG_FBCON_CFB32
3466 This is the low level frame buffer console driver for 32 bits per
3467 pixel (16M colors, also known as `truecolor') sparse packed pixels.
3468
3469 Amiga bitplanes support
3470 CONFIG_FBCON_AFB
3471 This is the low level frame buffer console driver for 1 to 8
3472 bitplanes (2 to 256 colors) on Amiga.
3473
3474 Amiga interleaved bitplanes support
3475 CONFIG_FBCON_ILBM
3476 This is the low level frame buffer console driver for 1 to 8
3477 interleaved bitplanes (2 to 256 colors) on Amiga.
3478
3479 Atari interleaved bitplanes (2 planes) support
3480 CONFIG_FBCON_IPLAN2P2
3481 This is the low level frame buffer console driver for 2 interleaved
3482 bitplanes (4 colors) on Atari.
3483
3484 Atari interleaved bitplanes (4 planes) support
3485 CONFIG_FBCON_IPLAN2P4
3486 This is the low level frame buffer console driver for 4 interleaved
3487 bitplanes (16 colors) on Atari.
3488
3489 Atari interleaved bitplanes (8 planes) support
3490 CONFIG_FBCON_IPLAN2P8
3491 This is the low level frame buffer console driver for 8 interleaved
3492 bitplanes (256 colors) on Atari.
3493
3494 Mac variable bpp packed pixels support
3495 CONFIG_FBCON_MAC
3496 This is the low level frame buffer console driver for 1/2/4/8/16/32
3497 bits per pixel packed pixels on Mac. It supports variable font
3498 widths for low resolution screens.
3499
3500 HGA monochrome support (EXPERIMENTAL)
3501 CONFIG_FBCON_HGA
3502 This is the low level frame buffer console driver for Hercules mono
3503 graphics cards.
3504
3505 VGA characters/attributes support
3506 CONFIG_FBCON_VGA
3507 This is the low level frame buffer console driver for VGA text mode;
3508 it is used by frame buffer device drivers that support VGA text
3509 mode.
3510
3511 Parallel-port support
3512 CONFIG_PARPORT
3513 If you want to use devices connected to your machine's parallel port
3514 (the connector at the computer with 25 holes), e.g. printer, ZIP
3515 drive, PLIP link (Parallel Line Internet Protocol is mainly used to
3516 create a mini network by connecting the parallel ports of two local
3517 machines) etc., then you need to say Y here; please read
3518 Documentation/parport.txt and drivers/parport/BUGS-parport.
3519
3520 For extensive information about drivers for many devices attaching
3521 to the parallel port see http://www.torque.net/linux-pp.html on the
3522 WWW.
3523
3524 It is possible to share a single parallel port among several devices
3525 and it is safe to compile all the corresponding drivers into the
3526 kernel. If you want to compile parallel port support as a module ( =
3527 code which can be inserted in and removed from the running kernel
3528 whenever you want), say M here and read Documentation/modules.txt.
3529 The module will be called parport.o. If you have more than one
3530 parallel port and want to specify which port and IRQ to be used by
3531 this driver at module load time, take a look at
3532 Documentation/parport.txt.
3533
3534 If unsure, say Y.
3535
3536 PC-style hardware
3537 CONFIG_PARPORT_PC
3538 You should say Y here if you have a PC-style parallel port. All IBM
3539 PC compatible computers and some Alphas have PC-style parallel
3540 ports.
3541
3542 This code is also available as a module. If you want to compile it
3543 as a module ( = code which can be inserted in and removed from the
3544 running kernel whenever you want), say M here and read
3545 Documentation/modules.txt. The module will be called parport_pc.o.
3546
3547 If unsure, say Y.
3548
3549 Use FIFO/DMA if available
3550 CONFIG_PARPORT_PC_FIFO
3551 Many parallel port chipsets provide hardware that can speed up
3552 printing. Say Y here if you want to take advantage of that.
3553
3554 As well as actually having a FIFO, or DMA capability, the kernel
3555 will need to know which IRQ the parallel port has. By default,
3556 parallel port interrupts will not be used, and so neither will the
3557 FIFO. See Documentation/parport.txt to find out how to specify
3558 which IRQ/DMA to use.
3559
3560 SuperIO chipset support (EXPERIMENTAL)
3561 CONFIG_PARPORT_PC_SUPERIO
3562 Saying Y here enables some probes for Super-IO chipsets in order to
3563 find out things like base addresses, IRQ lines and DMA channels. It
3564 is safe to say N.
3565
3566 Support for PCMCIA management for PC-style ports
3567 CONFIG_PARPORT_PC_PCMCIA
3568 Say Y here if you need PCMCIA support for your PC-style parallel
3569 ports. If unsure, say N.
3570
3571 Support foreign hardware
3572 CONFIG_PARPORT_OTHER
3573 Say Y here if you want to be able to load driver modules to support
3574 other non-standard types of parallel ports. This causes a
3575 performance loss, so most people say N.
3576
3577 Sun Ultra/AX-style hardware
3578 CONFIG_PARPORT_AX
3579 Say Y here if you need support for the parallel port hardware on Sun
3580 Ultra/AX machines. This code is also available as a module (say M),
3581 called parport_ax.o. If in doubt, saying N is the safe plan.
3582
3583 Amiga built-in parallel port support
3584 CONFIG_PARPORT_AMIGA
3585 Say Y here if you need support for the parallel port hardware on
3586 Amiga machines. This code is also available as a module (say M),
3587 called parport_amiga.o. If in doubt, saying N is the safe plan.
3588
3589 Atari built-in parallel port support
3590 CONFIG_PARPORT_ATARI
3591 Say Y here if you need support for the parallel port hardware on
3592 Atari machines. This code is also available as a module (say M),
3593 called parport_atari.o. If in doubt, saying N is the safe plan.
3594
3595 Multiface 3 parallel port card support
3596 CONFIG_PARPORT_MFC3
3597 Say Y here if you need parallel port support for the MFC3 card.
3598 This code is also available as a module (say M), called
3599 parport_mfc3.o. If in doubt, saying N is the safe plan.
3600
3601 Support IEEE1284 status readback
3602 CONFIG_PRINTER_READBACK
3603 If you have a device on your parallel port that support this
3604 protocol, this option will allow the device to report its status. It
3605 is safe to say Y.
3606
3607 IEEE1284 transfer modes
3608 CONFIG_PARPORT_1284
3609 If you have a printer that supports status readback or device ID, or
3610 want to use a device that uses enhanced parallel port transfer modes
3611 such as EPP and ECP, say Y here to enable advanced IEEE 1284
3612 transfer modes. Also say Y if you want device ID information to
3613 appear in /proc/sys/dev/parport/*/autoprobe*. It is safe to say N.
3614
3615 Enable loadable module support
3616 CONFIG_MODULES
3617 Kernel modules are small pieces of compiled code which can be
3618 inserted in or removed from the running kernel, using the programs
3619 insmod and rmmod. This is described in the file
3620 Documentation/modules.txt, including the fact that you have to say
3621 "make modules" in order to compile the modules that you chose during
3622 kernel configuration. Modules can be device drivers, file systems,
3623 binary executable formats, and so on. If you think that you may want
3624 to make use of modules with this kernel in the future, then say Y
3625 here. If unsure, say Y.
3626
3627 Set version information on all symbols for modules
3628 CONFIG_MODVERSIONS
3629 Usually, modules have to be recompiled whenever you switch to a new
3630 kernel. Saying Y here makes it possible, and safe, to use the
3631 same modules even after compiling a new kernel; this requires the
3632 program modprobe. All the software needed for module support is in
3633 the modutils package (check the file Documentation/Changes for
3634 location and latest version). NOTE: if you say Y here but don't
3635 have the program genksyms (which is also contained in the above
3636 mentioned modutils package), then the building of your kernel will
3637 fail. If you are going to use modules that are generated from
3638 non-kernel sources, you would benefit from this option. Otherwise
3639 it's not that important. So, N ought to be a safe bet.
3640
3641 Kernel module loader support
3642 CONFIG_KMOD
3643 Normally when you have selected some drivers and/or file systems to
3644 be created as loadable modules, you also have the responsibility to
3645 load the corresponding modules (using the programs insmod or
3646 modprobe) before you can use them. If you say Y here however, the
3647 kernel will be able to load modules for itself: when a part of the
3648 kernel needs a module, it runs modprobe with the appropriate
3649 arguments, thereby loading the module if it is available. (This is a
3650 replacement for kerneld.) Say Y here and read about configuring it
3651 in Documentation/kmod.txt.
3652
3653 ARP daemon support (EXPERIMENTAL)
3654 CONFIG_ARPD
3655 Normally, the kernel maintains an internal cache which maps IP
3656 addresses to hardware addresses on the local network, so that
3657 Ethernet/Token Ring/ etc. frames are sent to the proper address on
3658 the physical networking layer. For small networks having a few
3659 hundred directly connected hosts or less, keeping this address
3660 resolution (ARP) cache inside the kernel works well. However,
3661 maintaining an internal ARP cache does not work well for very large
3662 switched networks, and will use a lot of kernel memory if TCP/IP
3663 connections are made to many machines on the network.
3664
3665 If you say Y here, the kernel's internal ARP cache will never grow
3666 to more than 256 entries (the oldest entries are expired in a LIFO
3667 manner) and communication will be attempted with the user space ARP
3668 daemon arpd. Arpd then answers the address resolution request either
3669 from its own cache or by asking the net.
3670
3671 This code is experimental and also obsolete. If you want to use it,
3672 you need to find a version of the daemon arpd on the net somewhere,
3673 and you should also say Y to "Kernel/User network link driver",
3674 below. If unsure, say N.
3675
3676 TCP/IP networking
3677 CONFIG_INET
3678 These are the protocols used on the Internet and on most local
3679 Ethernets. It is highly recommended to say Y here (this will enlarge
3680 your kernel by about 144 KB), since some programs (e.g. the X window
3681 system) use TCP/IP even if your machine is not connected to any
3682 other computer. You will get the so-called loopback device which
3683 allows you to ping yourself (great fun, that!).
3684
3685 For an excellent introduction to Linux networking, please read the
3686 NET-3-HOWTO, available from
3687 http://www.linuxdoc.org/docs.html#howto .
3688
3689 This option is also necessary if you want to use the full power of
3690 term (term is a program which gives you almost full Internet
3691 connectivity if you have a regular dial up shell account on some
3692 Internet connected Unix computer; for more information, read
3693 http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html ).
3694
3695 If you say Y here and also to "/proc file system support" and
3696 "Sysctl support" below, you can change various aspects of the
3697 behavior of the TCP/IP code by writing to the (virtual) files in
3698 /proc/sys/net/ipv4/*; the options are explained in the file
3699 Documentation/networking/ip-sysctl.txt.
3700
3701 Short answer: say Y.
3702
3703 IP: multicasting
3704 CONFIG_IP_MULTICAST
3705 This is code for addressing several networked computers at once,
3706 enlarging your kernel by about 2 KB. You need multicasting if you
3707 intend to participate in the MBONE, a high bandwidth network on top
3708 of the Internet which carries audio and video broadcasts. More
3709 information about the MBONE is on the WWW at
3710 http://www-itg.lbl.gov/mbone/ . Information about the multicast
3711 capabilities of the various network cards is contained in
3712 Documentation/networking/multicast.txt. For most people, it's safe
3713 to say N.
3714
3715 IP: advanced router
3716 CONFIG_IP_ADVANCED_ROUTER
3717 If you intend to run your Linux box mostly as a router, i.e. as a
3718 computer that forwards and redistributes network packets, say Y; you
3719 will then be presented with several options that allow more precise
3720 control about the routing process.
3721
3722 The answer to this question won't directly affect the kernel:
3723 answering N will just cause this configure script to skip all the
3724 questions about advanced routing.
3725
3726 Note that your box can only act as a router if you enable IP
3727 forwarding in your kernel; you can do that by saying Y to "/proc
3728 file system support" and "Sysctl support" below and executing the
3729 line
3730
3731 echo "1" > /proc/sys/net/ipv4/ip_forward
3732
3733 at boot time after the /proc file system has been mounted.
3734
3735 If you turn on IP forwarding, you will also get the rp_filter, which
3736 automatically rejects incoming packets if the routing table entry
3737 for their source address doesn't match the network interface they're
3738 arriving on. This has security advantages because it prevents the
3739 so-called IP spoofing, however it can pose problems if you use
3740 asymmetric routing (packets from you to a host take a different path
3741 than packets from that host to you) or if you operate a non-routing
3742 host which has several IP addresses on different interfaces. To turn
3743 rp_filter off use:
3744
3745 echo 0 > /proc/sys/net/ipv4/conf/<device>/rp_filter
3746 or
3747 echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
3748
3749 If unsure, say N here.
3750
3751 IP: policy routing
3752 CONFIG_IP_MULTIPLE_TABLES
3753 Normally, a router decides what to do with a received packet based
3754 solely on the packet's final destination address. If you say Y here,
3755 the Linux router will also be able to take the packet's source
3756 address into account. Furthermore, if you also say Y to "IP: use TOS
3757 value as routing key" below, the TOS (Type-Of-Service) field of the
3758 packet can be used for routing decisions as well. In addition, if
3759 you say Y here and to "IP: fast network address translation" below,
3760 the router will also be able to modify source and destination
3761 addresses of forwarded packets.
3762
3763 If you are interested in this, please see the preliminary
3764 documentation at http://www.compendium.com.ar/policy-routing.txt and
3765 ftp://post.tepkom.ru/pub/vol2/Linux/docs/advanced-routing.tex . You
3766 will need supporting software from ftp://ftp.inr.ac.ru/ip-routing/
3767
3768 If unsure, say N.
3769
3770 IP: equal cost multipath
3771 CONFIG_IP_ROUTE_MULTIPATH
3772 Normally, the routing tables specify a single action to be taken in
3773 a deterministic manner for a given packet. If you say Y here
3774 however, it becomes possible to attach several actions to a packet
3775 pattern, in effect specifying several alternative paths to travel
3776 for those packets. The router considers all these paths to be of
3777 equal "cost" and chooses one of them in a non-deterministic fashion
3778 if a matching packet arrives.
3779
3780 IP: use TOS value as routing key
3781 CONFIG_IP_ROUTE_TOS
3782 The header of every IP packet carries a TOS (Type Of Service) value
3783 with which the packet requests a certain treatment, e.g. low latency
3784 (for interactive traffic), high throughput, or high reliability. If
3785 you say Y here, you will be able to specify different routes for
3786 packets with different TOS values.
3787
3788 IP: use netfilter MARK value as routing key
3789 CONFIG_IP_ROUTE_FWMARK
3790 If you say Y here, you will be able to specify different routes for
3791 packets with different mark values (see iptables(8), MARK target).
3792
3793 IP: verbose route monitoring
3794 CONFIG_IP_ROUTE_VERBOSE
3795 If you say Y here, which is recommended, then the kernel will print
3796 verbose messages regarding the routing, for example warnings about
3797 received packets which look strange and could be evidence of an
3798 attack or a misconfigured system somewhere. The information is
3799 handled by the klogd daemon which is responsible for kernel messages
3800 ("man klogd").
3801
3802 IP: large routing tables
3803 CONFIG_IP_ROUTE_LARGE_TABLES
3804 If you have routing zones that grow to more than about 64 entries,
3805 you may want to say Y here to speed up the routing process.
3806
3807 IP: fast network address translation
3808 CONFIG_IP_ROUTE_NAT
3809 If you say Y here, your router will be able to modify source and
3810 destination addresses of packets that pass through it, in a manner
3811 you specify. General information about Network Address Translation
3812 can be gotten from the document
3813 http://www.csn.tu-chemnitz.de/~mha/linux-ip-nat/diplom/nat.html
3814
3815 IP: kernel level autoconfiguration
3816 CONFIG_IP_PNP
3817 This enables automatic configuration of IP addresses of devices and
3818 of the routing table during kernel boot, based on either information
3819 supplied on the kernel command line or by BOOTP or RARP protocols.
3820 You need to say Y only for diskless machines requiring network
3821 access to boot (in which case you want to say Y to "Root file system
3822 on NFS" as well), because all other machines configure the network
3823 in their startup scripts.
3824
3825 BOOTP support
3826 CONFIG_IP_PNP_BOOTP
3827 If you want your Linux box to mount its whole root file system (the
3828 one containing the directory /) from some other computer over the
3829 net via NFS and you want the IP address of your computer to be
3830 discovered automatically at boot time using the BOOTP protocol (a
3831 special protocol designed for doing this job), say Y here. In case
3832 the boot ROM of your network card was designed for booting Linux and
3833 does BOOTP itself, providing all necessary information on the kernel
3834 command line, you can say N here. If unsure, say Y. Note that if you
3835 want to use BOOTP, a BOOTP server must be operating on your network.
3836 Read Documentation/nfsroot.txt for details.
3837
3838 RARP support
3839 CONFIG_IP_PNP_RARP
3840 If you want your Linux box to mount its whole root file system (the
3841 one containing the directory /) from some other computer over the
3842 net via NFS and you want the IP address of your computer to be
3843 discovered automatically at boot time using the RARP protocol (an
3844 older protocol which is being obsoleted by BOOTP and DHCP), say Y
3845 here. Note that if you want to use RARP, a RARP server must be
3846 operating on your network. Read Documentation/nfsroot.txt for
3847 details.
3848
3849 IP: tunneling
3850 CONFIG_NET_IPIP
3851 Tunneling means encapsulating data of one protocol type within
3852 another protocol and sending it over a channel that understands the
3853 encapsulating protocol. This particular tunneling driver implements
3854 encapsulation of IP within IP, which sounds kind of pointless, but
3855 can be useful if you want to make your (or some other) machine
3856 appear on a different network than it physically is, or to use
3857 mobile-IP facilities (allowing laptops to seamlessly move between
3858 networks without changing their IP addresses; check out
3859 http://anchor.cs.binghamton.edu/~mobileip/LJ/index.html ).
3860
3861 Saying Y to this option will produce two modules ( = code which can
3862 be inserted in and removed from the running kernel whenever you
3863 want). Most people won't need this and can say N.
3864
3865 IP: GRE tunnels over IP
3866 CONFIG_NET_IPGRE
3867 Tunneling means encapsulating data of one protocol type within
3868 another protocol and sending it over a channel that understands the
3869 encapsulating protocol. This particular tunneling driver implements
3870 GRE (Generic Routing Encapsulation) and at this time allows
3871 encapsulating of IPv4 or IPv6 over existing IPv4 infrastructure.
3872 This driver is useful if the other endpoint is a Cisco router: Cisco
3873 likes GRE much better than the other Linux tunneling driver ("IP:
3874 tunneling" above). In addition, GRE allows multicast redistribution
3875 through the tunnel.
3876
3877 IP: broadcast GRE over IP
3878 CONFIG_NET_IPGRE_BROADCAST
3879 One application of GRE/IP is to construct a broadcast WAN (Wide Area
3880 Network), which looks like a normal Ethernet LAN (Local Area
3881 Network), but can be distributed all over the Internet. If you want
3882 to do that, say Y here and to "IP: multicast routing" below.
3883
3884 IP: multicast routing
3885 CONFIG_IP_MROUTE
3886 This is used if you want your machine to act as a router for IP
3887 packets that have several destination addresses. It is needed on the
3888 MBONE, a high bandwidth network on top of the Internet which carries
3889 audio and video broadcasts. In order to do that, you would most
3890 likely run the program mrouted. Information about the multicast
3891 capabilities of the various network cards is contained in
3892 Documentation/networking/multicast.txt. If you haven't heard about
3893 it, you don't need it.
3894
3895 IP: PIM-SM version 1 support
3896 CONFIG_IP_PIMSM_V1
3897 Kernel side support for Sparse Mode PIM (Protocol Independent
3898 Multicast) version 1. This multicast routing protocol is used widely
3899 because Cisco supports it. You need special software to use it
3900 (pimd-v1). Please see http://netweb.usc.edu/pim/ for more
3901 information about PIM.
3902
3903 Say Y if you want to use PIM-SM v1. Note that you can say N here if
3904 you just want to use Dense Mode PIM.
3905
3906 IP: PIM-SM version 2 support
3907 CONFIG_IP_PIMSM_V2
3908 Kernel side support for Sparse Mode PIM version 2. In order to use
3909 this, you need an experimental routing daemon supporting it (pimd or
3910 gated-5). This routing protocol is not used widely, so say N unless
3911 you want to play with it.
3912
3913 PC/TCP compatibility mode
3914 CONFIG_INET_PCTCP
3915 If you have been having difficulties telnetting to your Linux
3916 machine from a DOS system that uses (broken) PC/TCP networking
3917 software (all versions up to OnNet 2.0) over your local Ethernet try
3918 saying Y here. Everyone else says N.
3919
3920 People having problems with NCSA telnet should see the file
3921 Documentation/networking/ncsa-telnet.
3922
3923 Path MTU Discovery (normally enabled)
3924 CONFIG_PATH_MTU_DISCOVERY
3925 MTU (maximal transfer unit) is the size of the chunks we send out
3926 over the net. "Path MTU Discovery" means that, instead of always
3927 sending very small chunks, we start out sending big ones and if we
3928 then discover that some host along the way likes its chunks smaller,
3929 we adjust to a smaller size. This is good, so most people say Y
3930 here.
3931
3932 However, some DOS software (versions of DOS NCSA telnet and Trumpet
3933 Winsock in PPP mode) is broken and won't be able to connect to your
3934 Linux machine correctly in all cases (especially through a terminal
3935 server) unless you say N here. See
3936 Documentation/networking/ncsa-telnet for the location of fixed NCSA
3937 telnet clients. If in doubt, say Y.
3938
3939 Disable NAGLE algorithm (normally enabled)
3940 CONFIG_TCP_NAGLE_OFF
3941 The NAGLE algorithm works by requiring an acknowledgment before
3942 sending small IP frames (packets). This keeps tiny telnet and
3943 rlogin packets from congesting Wide Area Networks. Most people
3944 strongly recommend to say N here, thereby leaving NAGLE
3945 enabled. Those programs that would benefit from disabling this
3946 facility can do it on a per connection basis themselves.
3947
3948 IP: Allow large windows (not recommended if <16 MB of memory)
3949 CONFIG_SKB_LARGE
3950 On high speed, long distance networks the performance limit on
3951 networking becomes the amount of data the sending machine can buffer
3952 until the other end confirms its reception. (At 45 Mbit/second there
3953 are a lot of bits between New York and London ...). If you say Y
3954 here, bigger buffers can be used which allows larger amounts of data
3955 to be "in flight" at any given time. It also means a user process
3956 can require a lot more memory for network buffers and thus this
3957 option is best used only on machines with 16 MB of memory or higher.
3958 Unless you are using long links with end to end speeds of over 2
3959 Mbit a second or satellite links this option will make no difference
3960 to performance.
3961
3962 Unix domain sockets
3963 CONFIG_UNIX
3964 If you say Y here, you will include support for Unix domain sockets;
3965 sockets are the standard Unix mechanism for establishing and
3966 accessing network connections. Many commonly used programs such as
3967 the X Window system and syslog use these sockets even if your
3968 machine is not connected to any network. Unless you are working on
3969 an embedded system or something similar, you therefore definitely
3970 want to say Y here.
3971
3972 However, the socket support is also available as a module ( = code
3973 which can be inserted in and removed from the running kernel
3974 whenever you want). If you want to compile it as a module, say M
3975 here and read Documentation/modules.txt. The module will be called
3976 unix.o. If you try building this as a module and you have said Y to
3977 "Kernel module loader support" above, be sure to add 'alias net-pf-1
3978 unix' to your /etc/modules.conf file. Note that several important
3979 services won't work correctly if you say M here and then neglect to
3980 load the module.
3981
3982 Say Y unless you know what you are doing.
3983
3984 The IPv6 protocol (EXPERIMENTAL)
3985 CONFIG_IPV6
3986 This is experimental support for the next version of the Internet
3987 Protocol: IP version 6 (also called IPng "IP next generation").
3988 Features of this new protocol include: expanded address space,
3989 authentication and privacy, and seamless interoperability with the
3990 current version of IP (IP version 4). For general information about
3991 IPv6, see http://playground.sun.com/pub/ipng/html/ipng-main.html ;
3992 for specific information about IPv6 under Linux read the HOWTO at
3993 http://www.bieringer.de/linux/IPv6/ and the file net/ipv6/README in
3994 the kernel source.
3995
3996 If you want to use IPv6, please upgrade to the newest net-tools as
3997 given in Documentation/Changes. You will still be able to do regular
3998 IPv4 networking as well.
3999
4000 This protocol support is also available as a module ( = code which
4001 can be inserted in and removed from the running kernel whenever you
4002 want). The module will be called ipv6.o. If you want to compile it
4003 as a module, say M here and read Documentation/modules.txt.
4004
4005 It is safe to say N here for now.
4006
4007 IPv6: enable EUI-64 token format
4008 CONFIG_IPV6_EUI64
4009 6bone, the network of computers using the IPv6 protocol, is moving
4010 to a new aggregatable address format and a new link local address
4011 assignment (EUI-64). Say Y if your site has upgraded already, or
4012 has started to upgrade.
4013
4014 IPv6: disable provider based addresses
4015 CONFIG_IPV6_NO_PB
4016 Linux tries to operate correctly when your site has moved to EUI-64
4017 only partially. Unfortunately, the two address formats (old:
4018 "provider based" and new: "aggregatable") are incompatible. Say Y if
4019 your site finished the upgrade to EUI-64, and/or you encountered
4020 some problems caused by the presence of two link-local addresses on
4021 an interface.
4022
4023 IPv6: routing messages via old netlink
4024 CONFIG_IPV6_NETLINK
4025 You can say Y here to receive routing messages from the IPv6 code
4026 through the old netlink interface. However, a better option is to
4027 say Y to "Kernel/User network link driver" and to "Routing
4028 messages" instead.
4029
4030 Kernel httpd acceleration (EXPERIMENTAL)
4031 CONFIG_KHTTPD
4032 The kernel httpd acceleration daemon (kHTTPd) is a (limited) web
4033 server built into the kernel. It is limited since it can only serve
4034 files from the file system and cannot deal with executable content
4035 such as CGI scripts. Serving files is sped up if you use kHTTPd.
4036 If kHTTPd is not able to fulfill a request, it can transparently
4037 pass it through to a user space web server such as apache.
4038
4039 Saying "M" here builds the kHTTPd module; this is NOT enough to have
4040 a working kHTTPd. For safety reasons, the module has to be activated
4041 by doing a "echo 1 > /proc/sys/net/khttpd/start" after inserting the
4042 module.
4043
4044 Before using this, read the README in net/khttpd !
4045
4046 The kHTTPd is experimental. Be careful when using it on a production
4047 machine. Also note that kHTTPd doesn't support virtual servers yet.
4048
4049 IPX networking
4050 CONFIG_IPX
4051 This is support for the Novell networking protocol, IPX, commonly
4052 used for local networks of Windows machines. You need it if you want
4053 to access Novell NetWare file or print servers using the Linux
4054 Novell client ncpfs (available from
4055 ftp://metalab.unc.edu/pub/Linux/system/filesystems/ ) or from within
4056 the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
4057 http://www.linuxdoc.org/docs.html#howto ). In order to do the
4058 former, you'll also have to say Y to "NCP file system support",
4059 below.
4060
4061 IPX is similar in scope to IP, while SPX, which runs on top of IPX,
4062 is similar to TCP. There is also experimental support for SPX in
4063 Linux (see "SPX networking", below).
4064
4065 To turn your Linux box into a fully featured NetWare file server and
4066 IPX router, say Y here and fetch either lwared from
4067 ftp://metalab.unc.edu/pub/Linux/system/network/daemons/ or mars_nwe
4068 from ftp://ftp.gwdg.de/pub/linux/misc/ncpfs . For more information,
4069 read the IPX-HOWTO available from
4070 http://www.linuxdoc.org/docs.html#howto .
4071
4072 General information about how to connect Linux, Windows machines and
4073 Macs is on the WWW at http://www.eats.com/linux_mac_win.html .
4074
4075 The IPX driver would enlarge your kernel by about 16 KB. This driver
4076 is also available as a module ( = code which can be inserted in and
4077 removed from the running kernel whenever you want). The module will
4078 be called ipx.o. If you want to compile it as a module, say M here
4079 and read Documentation/modules.txt. Unless you want to integrate
4080 your Linux box with a local Novell network, say N.
4081
4082 IPX: Full internal IPX network
4083 CONFIG_IPX_INTERN
4084 Every IPX network has an address that identifies it. Sometimes it is
4085 useful to give an IPX "network" address to your Linux box as well
4086 (for example if your box is acting as a file server for different
4087 IPX networks: it will then be accessible from everywhere using the
4088 same address). The way this is done is to create a virtual internal
4089 "network" inside your box and to assign an IPX address to this
4090 network. Say Y here if you want to do this; read the IPX-HOWTO at
4091 http://www.linuxdoc.org/docs.html#howto for details.
4092
4093 The full internal IPX network enables you to allocate sockets on
4094 different virtual nodes of the internal network. This is done by
4095 evaluating the field sipx_node of the socket address given to the
4096 bind call. So applications should always initialize the node field
4097 to 0 when binding a socket on the primary network. In this case the
4098 socket is assigned the default node that has been given to the
4099 kernel when the internal network was created. By enabling the full
4100 internal IPX network the cross-forwarding of packets targeted at
4101 'special' sockets to sockets listening on the primary network is
4102 disabled. This might break existing applications, especially RIP/SAP
4103 daemons. A RIP/SAP daemon that works well with the full internal net
4104 can be found on ftp://ftp.gwdg.de/pub/linux/misc/ncpfs .
4105
4106 If you don't know what you are doing, say N.
4107
4108 IPX: SPX networking (EXPERIMENTAL)
4109 CONFIG_SPX
4110 The Sequenced Packet eXchange protocol is a transport layer protocol
4111 built on top of IPX. It is used in Novell NetWare systems for
4112 client-server applications and is similar to TCP (which runs on top
4113 of IP).
4114
4115 Note that Novell NetWare file sharing does not use SPX; it uses a
4116 protocol called NCP, for which separate Linux support is available
4117 ("NCP file system support" below for the client side, and the user
4118 space programs lwared or mars_nwe for the server side).
4119
4120 Say Y here if you have use for SPX; read the IPX-HOWTO at
4121 http://www.linuxdoc.org/docs.html#howto for details.
4122
4123 This driver is also available as a module ( = code which can be
4124 inserted in and removed from the running kernel whenever you want).
4125 The module will be called af_spx.o. If you want to compile it as a
4126 module, say M here and read Documentation/modules.txt.
4127
4128 DECnet networking (EXPERIMENTAL)
4129 CONFIG_DECNET
4130 The DECnet networking protocol was used in many products made by
4131 Digital (now Compaq). It provides reliable stream and sequenced
4132 packet communications over which run a variety of services similar
4133 to those which run over TCP/IP.
4134
4135 To find some tools to use with the kernel layer support, please
4136 look at Patrick Caulfield's web site:
4137 http://linux.dreamtime.org/decnet/
4138
4139 More detailed documentation is available in the
4140 Documentation/networking/decnet.txt file.
4141
4142 Be sure to say Y to "/proc file system support" and "Sysctl support"
4143 below when using DECnet, since you will need sysctl support to aid
4144 in configuration at run time.
4145
4146 The DECnet code is also available as a module ( = code which can be
4147 inserted in and removed from the running kernel whenever you want).
4148 The module is called decnet.o.
4149
4150 DECnet SIOCFIGCONF support
4151 CONFIG_DECNET_SIOCGIFCONF
4152 This option should only be turned on if you are really sure that
4153 you know what you are doing. It can break other applications which
4154 use this system call and the proper way to get the information
4155 provided by this call is to use rtnetlink.
4156
4157 If unsure, say N.
4158
4159 DECnet Router Support (EXPERIMENTAL)
4160 CONFIG_DECNET_ROUTER
4161 Add support for turning your DECnet Endnode into a level 1 or 2
4162 router. This is an unfinished option for developers only. If you do
4163 say Y here, then make sure that you also say Y to "Kernel/User
4164 network link driver", "Routing messages" and "Network packet
4165 filtering". The first two are required to allow configuration via
4166 rtnetlink (currently you need Alexey Kuznetsov's iproute2 package
4167 from ftp://ftp.inr.ac.ru). The "Network packet filtering" option
4168 will be required for the forthcoming routing daemon to work.
4169
4170 See Documentation/networking/decnet.txt for more information.
4171
4172 DECnet: use FWMARK value as routing key
4173 CONFIG_DECNET_ROUTE_FWMARK
4174 If you say Y here, you will be able to specify different routes for
4175 packets with different FWMARK ("firewalling mark") values
4176 (see ipchains(8), "-m" argument).
4177
4178 Appletalk interfaces support
4179 CONFIG_APPLETALK
4180 AppleTalk is the way Apple computers speak to each other on a
4181 network. If your Linux box is connected to such a network and you
4182 want to join the conversation, say Y.
4183
4184 AppleTalk protocol support
4185 CONFIG_ATALK
4186 AppleTalk is the way Apple computers speak to each other on a
4187 network. If your Linux box is connected to such a network and you
4188 want to join the conversation, say Y. You will need to use the
4189 netatalk package so that your Linux box can act as a print and file
4190 server for Macs as well as access AppleTalk printers. Check out
4191 http://threepio.hitchcock.org/cgi-bin/faq/netatalk/faq.pl on the WWW
4192 for details. EtherTalk is the name used for AppleTalk over Ethernet
4193 and the cheaper and slower LocalTalk is AppleTalk over a proprietary
4194 Apple network using serial links. EtherTalk and LocalTalk are fully
4195 supported by Linux.
4196
4197 General information about how to connect Linux, Windows machines and
4198 Macs is on the WWW at http://www.eats.com/linux_mac_win.html . The
4199 NET-3-HOWTO, available from
4200 http://www.linuxdoc.org/docs.html#howto , contains valuable
4201 information as well.
4202
4203 This driver is also available as a module ( = code which can be
4204 inserted in and removed from the running kernel whenever you want).
4205 The module is called appletalk.o. If you want to compile it as a
4206 module, say M here and read Documentation/modules.txt. I hear that
4207 the GNU boycott of Apple is over, so even politically correct people
4208 are allowed to say Y here.
4209
4210 AppleTalk-IP driver support
4211 CONFIG_IPDDP
4212 This allows IP networking for users who only have AppleTalk
4213 networking available. This feature is experimental. With this
4214 driver, you can encapsulate IP inside AppleTalk (e.g. if your Linux
4215 box is stuck on an AppleTalk only network) or decapsulate (e.g. if
4216 you want your Linux box to act as an Internet gateway for a zoo of
4217 AppleTalk connected Macs). Please see the file
4218 Documentation/networking/ipddp.txt for more information.
4219
4220 If you say Y here, the AppleTalk-IP support will be compiled into
4221 the kernel. In this case, you can either use encapsulation or
4222 decapsulation, but not both. With the following two questions, you
4223 decide which one you want.
4224
4225 If you say M here, the AppleTalk-IP support will be compiled as a
4226 module ( = code which can be inserted in and removed from the
4227 running kernel whenever you want, read Documentation/modules.txt).
4228 The module is called ipddp.o. In this case, you will be able to use
4229 both encapsulation and decapsulation simultaneously, by loading two
4230 copies of the module and specifying different values for the module
4231 option ipddp_mode.
4232
4233 IP to AppleTalk-IP Encapsulation support
4234 CONFIG_IPDDP_ENCAP
4235 If you say Y here, the AppleTalk-IP code will be able to encapsulate
4236 IP packets inside AppleTalk frames; this is useful if your Linux box
4237 is stuck on an AppleTalk network (which hopefully contains a
4238 decapsulator somewhere). Please see
4239 Documentation/networking/ipddp.txt for more information. If you said
4240 Y to "AppleTalk-IP driver support" above and you say Y here, then
4241 you cannot say Y to "AppleTalk-IP to IP Decapsulation support",
4242 below.
4243
4244 AppleTalk-IP to IP Decapsulation support
4245 CONFIG_IPDDP_DECAP
4246 If you say Y here, the AppleTalk-IP code will be able to decapsulate
4247 AppleTalk-IP frames to IP packets; this is useful if you want your
4248 Linux box to act as an Internet gateway for an AppleTalk network.
4249 Please see Documentation/networking/ipddp.txt for more information.
4250 If you said Y to "AppleTalk-IP driver support" above and you say Y
4251 here, then you cannot say Y to "IP to AppleTalk-IP Encapsulation
4252 support", above.
4253
4254 Apple/Farallon LocalTalk PC card support
4255 CONFIG_LTPC
4256 This allows you to use the AppleTalk PC card to connect to LocalTalk
4257 networks. The card is also known as the Farallon PhoneNet PC card.
4258 If you are in doubt, this card is the one with the 65C02 chip on it.
4259 You also need version 1.3.3 or later of the netatalk package.
4260 This driver is experimental, which means that it may not work.
4261 See the file Documentation/networking/ltpc.txt.
4262
4263 COPS LocalTalk PC card support
4264 CONFIG_COPS
4265 This allows you to use COPS AppleTalk cards to connect to LocalTalk
4266 networks. You also need version 1.3.3 or later of the netatalk
4267 package. This driver is experimental, which means that it may not
4268 work. This driver will only work if you choose "AppleTalk DDP"
4269 networking support, above.
4270 Please read the file Documentation/networking/cops.txt.
4271
4272 Dayna firmware support
4273 CONFIG_COPS_DAYNA
4274 Support COPS compatible cards with Dayna style firmware (Dayna
4275 DL2000/ Daynatalk/PC (half length), COPS LT-95, Farallon PhoneNET PC
4276 III, Farallon PhoneNET PC II).
4277
4278 Tangent firmware support
4279 CONFIG_COPS_TANGENT
4280 Support COPS compatible cards with Tangent style firmware (Tangent
4281 ATB_II, Novell NL-1000, Daystar Digital LT-200.
4282
4283 Amateur Radio support
4284 CONFIG_HAMRADIO
4285 If you want to connect your Linux box to an amateur radio, answer Y
4286 here. You want to read http://www.tapr.org/tapr/html/pkthome.html
4287 and the HAM-HOWTO and the AX25-HOWTO, both available from
4288 http://www.linuxdoc.org/docs.html#howto .
4289
4290 Note that the answer to this question won't directly affect the
4291 kernel: saying N will just cause this configure script to skip all
4292 the questions about amateur radio.
4293
4294 Amateur Radio AX.25 Level 2
4295 CONFIG_AX25
4296 This is the protocol used for computer communication over amateur
4297 radio. It is either used by itself for point-to-point links, or to
4298 carry other protocols such as tcp/ip. To use it, you need a device
4299 that connects your Linux box to your amateur radio. You can either
4300 use a low speed TNC (a Terminal Node Controller acts as a kind of
4301 modem connecting your computer's serial port to your radio's
4302 microphone input and speaker output) supporting the KISS protocol or
4303 one of the various SCC cards that are supported by the generic Z8530
4304 or the DMA SCC driver. Another option are the Baycom modem serial
4305 and parallel port hacks or the sound card modem (supported by their
4306 own drivers). If you say Y here, you also have to say Y to one of
4307 those drivers.
4308
4309 Information about where to get supporting software for Linux amateur
4310 radio as well as information about how to configure an AX.25 port is
4311 contained in the AX25-HOWTO, available from
4312 http://www.linuxdoc.org/docs.html#howto . You might also want to
4313 check out the file Documentation/networking/ax25.txt in the kernel
4314 source. More information about digital amateur radio in general is
4315 on the WWW at http://www.tapr.org/tapr/html/pkthome.html .
4316
4317 This driver is also available as a module ( = code which can be
4318 inserted in and removed from the running kernel whenever you want).
4319 The module will be called ax25.o. If you want to compile it as a
4320 module, say M here and read Documentation/modules.txt.
4321
4322 AX.25 DAMA Slave support
4323 CONFIG_AX25_DAMA_SLAVE
4324 DAMA is a mechanism to prevent collisions when doing AX.25
4325 networking. A DAMA server (called "master") accepts incoming traffic
4326 from clients (called "slaves") and redistributes it to other slaves.
4327 If you say Y here, your Linux box will act as a DAMA slave; this is
4328 transparent in that you don't have to do any special DAMA
4329 configuration. (Linux cannot yet act as a DAMA server.) If unsure,
4330 say N.
4331
4332 AX.25 DAMA Master support
4333 CONFIG_AX25_DAMA_MASTER
4334 DAMA is a mechanism to prevent collisions when doing AX.25
4335 networking. A DAMA server (called "master") accepts incoming traffic
4336 from clients (called "slaves") and redistributes it to other
4337 slaves. If you say Y here, your Linux box will act as a DAMA server.
4338 If unsure, say N.
4339
4340 Amateur Radio NET/ROM
4341 CONFIG_NETROM
4342 NET/ROM is a network layer protocol on top of AX.25 useful for
4343 routing.
4344
4345 A comprehensive listing of all the software for Linux amateur radio
4346 users as well as information about how to configure an AX.25 port is
4347 contained in the AX25-HOWTO, available from
4348 http://www.linuxdoc.org/docs.html#howto . You also might want to
4349 check out the file Documentation/networking/ax25.txt. More
4350 information about digital amateur radio in general is on the WWW at
4351 http://www.tapr.org/tapr/html/pkthome.html .
4352
4353 This driver is also available as a module ( = code which can be
4354 inserted in and removed from the running kernel whenever you want).
4355 The module will be called netrom.o. If you want to compile it as a
4356 module, say M here and read Documentation/modules.txt.
4357
4358 Amateur Radio X.25 PLP (Rose)
4359 CONFIG_ROSE
4360 The Packet Layer Protocol (PLP) is a way to route packets over X.25
4361 connections in general and amateur radio AX.25 connections in
4362 particular, essentially an alternative to NET/ROM.
4363
4364 A comprehensive listing of all the software for Linux amateur radio
4365 users as well as information about how to configure an AX.25 port is
4366 contained in the AX25-HOWTO, available from
4367 http://www.linuxdoc.org/docs.html#howto . You also might want to
4368 check out the file Documentation/networking/ax25.txt. More
4369 information about digital amateur radio in general is on the WWW at
4370 http://www.tapr.org/tapr/html/pkthome.html .
4371
4372 This driver is also available as a module ( = code which can be
4373 inserted in and removed from the running kernel whenever you want).
4374 The module will be called rose.o. If you want to compile it as a
4375 module, say M here and read Documentation/modules.txt.
4376
4377 Serial port KISS driver for AX.25
4378 CONFIG_MKISS
4379 KISS is a protocol used for the exchange of data between a computer
4380 and a Terminal Node Controller (a small embedded system commonly
4381 used for networking over AX.25 amateur radio connections; it
4382 connects the computer's serial port with the radio's microphone
4383 input and speaker output).
4384
4385 Although KISS is less advanced than the 6pack protocol, it has
4386 the advantage that it is already supported by most modern TNCs
4387 without the need for a firmware upgrade.
4388
4389 If you want to compile this driver as a module ( = code which can be
4390 inserted in and removed from the running kernel whenever you want),
4391 say M here and read Documentation/modules.txt. The module will be
4392 called mkiss.o.
4393
4394 Serial port 6PACK driver for AX.25
4395 CONFIG_6PACK
4396 6pack is a transmission protocol for the data exchange between your
4397 PC and your TNC (the Terminal Node Controller acts as a kind of
4398 modem connecting your computer's serial port to your radio's
4399 microphone input and speaker output). This protocol can be used as
4400 an alternative to KISS for networking over AX.25 amateur radio
4401 connections, but it has some extended functionality.
4402
4403 Note that this driver is still experimental and might cause
4404 problems. For details about the features and the usage of the
4405 driver, read Documentation/networking/6pack.txt.
4406
4407 If you want to compile this driver as a module ( = code which can be
4408 inserted in and removed from the running kernel whenever you want),
4409 say M here and read Documentation/modules.txt. The module will be
4410 called 6pack.o.
4411
4412 BPQ Ethernet driver
4413 CONFIG_BPQETHER
4414 AX.25 is the protocol used for computer communication over amateur
4415 radio. If you say Y here, you will be able to send and receive AX.25
4416 traffic over Ethernet (also called "BPQ AX.25"), which could be
4417 useful if some other computer on your local network has a direct
4418 amateur radio connection.
4419
4420 High-speed (DMA) SCC driver for AX.25
4421 CONFIG_DMASCC
4422 This is a driver for high-speed SCC boards, i.e. those supporting
4423 DMA on one port. You usually use those boards to connect your
4424 computer to an amateur radio modem (such as the WA4DSY 56kbps
4425 modem), in order to send and receive AX.25 packet radio network
4426 traffic.
4427
4428 Currently, this driver supports Ottawa PI/PI2, Paccomm/Gracilis
4429 PackeTwin, and S5SCC/DMA boards. They are detected automatically.
4430 If you have one of these cards, say Y here and read the AX25-HOWTO,
4431 available from http://www.linuxdoc.org/docs.html#howto .
4432
4433 This driver can operate multiple boards simultaneously. If you
4434 compile it as a module (by saying M instead of Y), it will be called
4435 dmascc.o. If you don't pass any parameter to the driver, all
4436 possible I/O addresses are probed. This could irritate other devices
4437 that are currently not in use. You may specify the list of addresses
4438 to be probed by "dmascc=addr1,addr2,..." (when compiled into the
4439 kernel image) or "io=addr1,addr2,..." (when loaded as a module). The
4440 network interfaces will be called dmascc0 and dmascc1 for the board
4441 detected first, dmascc2 and dmascc3 for the second one, and so on.
4442
4443 Before you configure each interface with ifconfig, you MUST set
4444 certain parameters, such as channel access timing, clock mode, and
4445 DMA channel. This is accomplished with a small utility program,
4446 dmascc_cfg, available at
4447 http://www.nt.tuwien.ac.at/~kkudielk/Linux/ . Please be sure to get
4448 at least version 1.27 of dmascc_cfg, as older versions will not
4449 work with the current driver.
4450
4451 Z8530 SCC driver for AX.25
4452 CONFIG_SCC
4453 These cards are used to connect your Linux box to an amateur radio
4454 in order to communicate with other computers. If you want to use
4455 this, read Documentation/networking/z8530drv.txt and the AX25-HOWTO,
4456 available from http://www.linuxdoc.org/docs.html#howto . Also
4457 make sure to say Y to "Amateur Radio AX.25 Level 2" support.
4458
4459 If you want to compile this as a module ( = code which can be
4460 inserted in and removed from the running kernel whenever you want),
4461 say M here and read Documentation/modules.txt. The module will be
4462 called scc.o.
4463
4464 additional delay for PA0HZP OptoSCC compatible boards
4465 CONFIG_SCC_DELAY
4466 Say Y here if you experience problems with the SCC driver not
4467 working properly; please read Documentation/networking/z8530drv.txt
4468 for details. If unsure, say N.
4469
4470 #support for TRX that feedback the tx signal to rx
4471 #CONFIG_SCC_TRXECHO
4472 ###
4473 ### Don't know what's going on here.
4474 ###
4475 #
4476
4477 YAM driver for AX.25
4478 CONFIG_YAM
4479 The YAM is a modem for packet radio which connects to the serial
4480 port and includes some of the functions of a Terminal Node
4481 Controller. If you have one of those, say Y here.
4482
4483 If you want to compile this as a module ( = code which can be
4484 inserted in and removed from the running kernel whenever you want),
4485 say M here and read Documentation/modules.txt.
4486
4487 BAYCOM picpar and par96 driver for AX.25
4488 CONFIG_BAYCOM_PAR
4489 This is a driver for Baycom style simple amateur radio modems that
4490 connect to a parallel interface. The driver supports the picpar and
4491 par96 designs. To configure the driver, use the sethdlc utility
4492 available in the standard ax25 utilities package. For information on
4493 the modems, see http://www.baycom.de and the file
4494 Documentation/networking/baycom.txt.
4495
4496 If you want to compile this driver as a module ( = code which can be
4497 inserted in and removed from the running kernel whenever you want),
4498 say M here and read Documentation/modules.txt. This is recommended.
4499 The module will be called baycom_par.o.
4500
4501 BAYCOM EPP driver for AX.25
4502 CONFIG_BAYCOM_EPP
4503 This is a driver for Baycom style simple