v2.4.14.9 -> v2.4.15
[opensuse:kernel.git] / Documentation / Configure.help
1 # Maintained by:
2 #       Eric S. Raymond <mailto:esr@thyrsus.com>
3 #       Steven Cole <mailto:elenstev@mesatop.com>
4 #
5 # Merged version 2.49: Current with 2.4.15-pre1 and 2.4.13-ac8.
6 #
7 # This version of the Linux kernel configuration help texts
8 # corresponds to the kernel versions 2.4.x.
9 #
10 # Translations of this file available on the WWW:
11 #
12 #   - Japanese, maintained by the JF Project <mailto:JF@linux.or.jp>, at
13 #     <http://www.linux.or.jp/JF/JFdocs/Configure.help/>
14 #   - Russian, by <mailto:kaf@linux.nevod.perm.su>, at
15 #     <http://nevod.perm.su/service/linux/doc/kernel/Configure.help>
16 #   - French, by Pierre Tane <mailto:tanep@bigfoot.com>, at
17 #     <http://www.traduc.org/kernelfr>
18 #   - Polish, by Dominik Mierzejewski <mailto:dmierzej@elka.pw.edu.pl>, at
19 #     <http://home.elka.pw.edu.pl/~dmierzej/linux/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 <mailto: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>.
39 # The help texts may contain empty lines, but every non-empty line must
40 # be indented two positions.  Order of the help texts does not matter,
41 # however, no variable should be documented twice: if it is, only the
42 # first occurrence will be used. We try to keep the help texts of related
43 # variables close together. Lines starting with `#' are ignored. To be
44 # nice to menuconfig, limit your line length to 70 characters. Use emacs'
45 # kfill.el to edit and ispell.el to spell check this file or you lose.
46 #
47 # Comments of the form "# Choice:" followed by a menu name are used
48 # internally by the maintainers' consistency-checking tools.
49 #
50 # If you add a help text to this file, please try to be as gentle as
51 # possible. Don't use unexplained acronyms and generally write for the
52 # hypothetical ignorant but intelligent user who has just bought a PC,
53 # removed Windows, installed Linux and is now recompiling the kernel
54 # for the first time. Tell them what to do if they're unsure. Technical
55 # information should go in a README in the Documentation directory.
56 #
57 # Mention all the relevant READMEs and HOWTOs in the help text.
58 # Make them file URLs relative to the top level of the source tree so
59 # that help browsers can turn them into hotlinks.  All URLs ahould be
60 # surrounded by <>.
61 #
62 # Repetitions are fine since the help texts are not meant to be read
63 # in sequence.  It is good style to include URLs pointing to more
64 # detailed technical information, pictures of the hardware, etc.
65 #
66 # The most important thing to include in a help entry is *motivation*.
67 # Explain why someone configuring a kernel might want to select your
68 # option.
69 #
70 # All this was shamelessly stolen from several different sources. Many
71 # thanks to all the contributors. Feel free to use these help texts in
72 # your own kernel configuration tools. The texts are copyrighted (c)
73 # 1995-2000 by Axel Boldt and many others and are governed by the GNU
74 # General Public License.
75
76 Prompt for development and/or incomplete code/drivers
77 CONFIG_EXPERIMENTAL
78   Some of the various things that Linux supports (such as network
79   drivers, file systems, network protocols, etc.) can be in a state
80   of development where the functionality, stability, or the level of
81   testing is not yet high enough for general use. This is usually
82   known as the "alpha-test" phase among developers. If a feature is
83   currently in alpha-test, then the developers usually discourage
84   uninformed widespread use of this feature by the general public to
85   avoid "Why doesn't this work?" type mail messages. However, active
86   testing and use of these systems is welcomed. Just be aware that it
87   may not meet the normal level of reliability or it may fail to work
88   in some special cases. Detailed bug reports from people familiar
89   with the kernel internals are usually welcomed by the developers
90   (before submitting bug reports, please read the documents
91   <file:README>, <file:MAINTAINERS>, <file:REPORTING-BUGS>,
92   <file:Documentation/BUG-HUNTING>, and
93   <file:Documentation/oops-tracing.txt> in the kernel source).
94
95   This option will also make obsoleted drivers available. These are
96   drivers that have been replaced by something else, and/or are
97   scheduled to be removed in a future kernel release.
98
99   Unless you intend to help test and develop a feature or driver that
100   falls into this category, or you have a situation that requires
101   using these features, you should probably say N here, which will
102   cause the configurator to present you with fewer choices. If
103   you say Y here, you will be offered the choice of using features or
104   drivers that are currently considered to be in the alpha-test phase.
105
106 Prompt for drivers for obsolete features and hardware
107 CONFIG_OBSOLETE
108   Obsolete drivers have usually been replaced by more recent software
109   that can talk to the same hardware.  Obsolete hardware is things
110   like MGA monitors that you are very unlikely to see on today's
111   systems.
112
113 Symmetric Multi-Processing support
114 CONFIG_SMP
115   This enables support for systems with more than one CPU. If you have
116   a system with only one CPU, like most personal computers, say N. If
117   you have a system with more than one CPU, say Y.
118
119   If you say N here, the kernel will run on single and multiprocessor
120   machines, but will use only one CPU of a multiprocessor machine. If
121   you say Y here, the kernel will run on many, but not all,
122   singleprocessor machines. On a singleprocessor machine, the kernel
123   will run faster if you say N here.
124
125   Note that if you say Y here and choose architecture "586" or
126   "Pentium" under "Processor family", the kernel will not work on 486
127   architectures. Similarly, multiprocessor kernels for the "PPro"
128   architecture may not work on all Pentium based boards.
129
130   People using multiprocessor machines who say Y here should also say
131   Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
132   Management" code will be disabled if you say Y here.
133
134   See also the <file:Documentation/smp.tex>,
135   <file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
136   <file:Documentation/nmi_watchdog.txt> and the SMP-FAQ on the WWW at
137   <http://www.irisa.fr/prive/mentre/smp-faq/>.
138
139   If you don't know what to do here, say N.
140
141 Intel or compatible 80x86 processor
142 CONFIG_X86
143   This is Linux's home port.  Linux was originally native to the Intel
144   386, and runs on all the later x86 processors including the Intel
145   486, 586, Pentiums, and various instruction-set-compatible chips by
146   AMD, Cyrix, and others.
147
148 Alpha processor
149 CONFIG_ALPHA
150   The Alpha is a 64-bit general-purpose processor designed and
151   marketed by the Digital Equipment Corporation of blessed memory, now
152   Compaq.  Alpha Linux dates from 1995-1996 and was the first non-x86
153   port. The Alpha Linux project has a home page at
154   <http://www.alphalinux.org/>.
155
156 32-bit Sun Sparc
157 CONFIG_SPARC32
158   SPARC is a family of RISC microprocessors designed and marketed by
159   Sun Microsystems, incorporated.  They are very widely found in Sun
160   workstations and clones. This port covers the original 32-bit SPARC;
161   it is old and stable and usually considered one of the "big three"
162   along with the Intel and Alpha ports.  The UltraLinux project
163   maintains both the SPARC32 and SPARC64 ports; its web page is
164   available at <http://www.ultralinux.org/>.
165
166 64-bit Sun Sparc
167 CONFIG_SPARC64
168   SPARC is a family of RISC microprocessors designed and marketed by
169   Sun Microsystems, incorporated.  This port covers the newer 64-bit
170   UltraSPARC.  The UltraLinux project maintains both the SPARC32 and
171   SPARC64 ports; its web page is available at
172   <http://www.ultralinux.org/>.
173
174 Power PC processor
175 CONFIG_PPC
176   The PowerPC is a very capable 32-bit RISC processor from Motorola,
177   the successor to their 68000 and 88000 series.  It powers recent
178   Macintoshes and also a widely-used series of single-board computers
179   from Motorola.  The Linux PowerPC port has a home page at
180   <http://penguinppc.org/>.
181
182 Motorola 68K processors
183 CONFIG_M68K
184   The Motorola 68K microprocessors are now obsolete, having been
185   superseded by the PowerPC line also from Motorola.  But they powered
186   the first wave of workstation hardware in the 1980s, including Sun
187   workstations; they were also the basis of the original Amiga and
188   later Atari personal computers.  A lot of this hardware is still
189   around.  The m68k project has a home page at
190   <http://www.linux-m68k.org/>.
191
192 ARM processors
193 CONFIG_ARM
194   The ARM series is a line of low-power-consumption RISC chip designs
195   licensed by ARM ltd and targeted at embedded applications and
196   handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
197   manufactured, but  legacy ARM-based PC hardware remains popular in
198   Europe.  There is an ARM Linux project with a web page at
199   <http://www.arm.linux.org.uk/>.
200
201 SuperH processors
202 CONFIG_SUPERH
203   The SuperH is a RISC processor targeted for use in embedded systems
204   and consumer electronics; it was also used in the Sega Dreamcast
205   gaming console.  The SuperH port has a home page at
206   <http://www.sh-linux.org/>.
207
208 IA64 processors, including Intel Itanium
209 CONFIG_IA64
210   The Itanium is Intel's 64-bit successor to the 32-bit X86 line.  As
211   of early 2001 it is not yet in widespread production use.  The Linux
212   IA-64 project has a home page at <http://www.linuxia64.org/>.
213
214 HP PA-RISC processor
215 CONFIG_PARISC
216   The PA-RISC microprocessor is a RISC chip designed by
217   Hewlett-Packard and used in their line of workstations.  The PA-RISC
218   Linux project has a home page at <www.parisc-linux.org>.
219
220 IBM System/390
221 CONFIG_S390
222   Linux now runs on the venerable System/390 mainframe from IBM, in a
223   guest partition under VM.  In fact, over 40,000 simultaneous Linux
224   images have been run on a single mainframe!  The S390 Linux project
225   has a home page at <http://linux.s390.org/>.
226
227 Axis Communications ETRAX 100LX embedded network CPU
228 CONFIG_CRIS
229   Linux has been ported to run on the Axis Communications ETRAX 100LX
230   CPU and the single-board computers built around it, targeted for
231   network and embedded applications.  For more information see the
232   Axis Communication site, <http://developer.axis.com/>.
233
234 Multiquad support for NUMA systems
235 CONFIG_MULTIQUAD
236   This option is used for getting Linux to run on a (IBM/Sequent) NUMA 
237   multiquad box. This changes the way that processors are bootstrapped,
238   and uses Clustered Logical APIC addressing mode instead of Flat Logical.
239   You will need a new lynxer.elf file to flash your firmware with - send
240   email to Martin.Bligh@us.ibm.com
241
242 IO-APIC Support on Uniprocessors
243 CONFIG_X86_UP_IOAPIC
244   An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an
245   SMP-capable replacement for PC-style interrupt controllers. Most
246   SMP systems and a small number of uniprocessor systems have one.
247   If you have a single-CPU system with an IO-APIC, you can say Y here
248   to use it. If you say Y here even though your machine doesn't have
249   an IO-APIC, then the kernel will still run with no slowdown at all.
250
251   If you have a system with several CPUs, you do not need to say Y
252   here: the IO-APIC will be used automatically.
253
254 Local APIC Support on Uniprocessors
255 CONFIG_X86_UP_APIC
256   A local APIC (Advanced Programmable Interrupt Controller) is an
257   integrated interrupt controller in the CPU. If you have a single-CPU
258   system which has a processor with a local APIC, you can say Y here to
259   enable and use it. If you say Y here even though your machine doesn't
260   have a local APIC, then the kernel will still run with no slowdown at
261   all. The local APIC supports CPU-generated self-interrupts (timer,
262   performance counters), and the NMI watchdog which detects hard lockups.
263
264   If you have a system with several CPUs, you do not need to say Y
265   here: the local APIC will be used automatically.
266
267 Kernel math emulation
268 CONFIG_MATH_EMULATION
269   Linux can emulate a math coprocessor (used for floating point
270   operations) if you don't have one. 486DX and Pentium processors have
271   a math coprocessor built in, 486SX and 386 do not, unless you added
272   a 487DX or 387, respectively. (The messages during boot time can
273   give you some hints here ["man dmesg"].) Everyone needs either a
274   coprocessor or this emulation.
275
276   If you don't have a math coprocessor, you need to say Y here; if you
277   say Y here even though you have a coprocessor, the coprocessor will
278   be used nevertheless. (This behavior can be changed with the kernel
279   command line option "no387", which comes handy if your coprocessor
280   is broken. Try "man bootparam" or see the documentation of your boot
281   loader (lilo or loadlin) about how to pass options to the kernel at
282   boot time.) This means that it is a good idea to say Y here if you
283   intend to use this kernel on different machines.
284
285   More information about the internals of the Linux math coprocessor
286   emulation can be found in <file:arch/i386/math-emu/README>.
287
288   If you are not sure, say Y; apart from resulting in a 66 KB bigger
289   kernel, it won't hurt.
290
291 Timer and CPU usage LEDs
292 CONFIG_LEDS
293   If you say Y here, the LEDs on your machine will be used
294   to provide useful information about your current system status.
295
296   If you are compiling a kernel for a NetWinder or EBSA-285, you will
297   be able to select which LEDs are active using the options below. If
298   you are compiling a kernel for the EBSA-110 or the LART however, the
299   red LED will simply flash regularly to indicate that the system is
300   still functional. It is safe to say Y here if you have a CATS
301   system, but the driver will do nothing.
302
303 Timer LED
304 CONFIG_LEDS_TIMER
305   If you say Y here, one of the system LEDs (the green one on the
306   NetWinder, the amber one on the EBSA285, or the red one on the LART)
307   will flash regularly to indicate that the system is still
308   operational. This is mainly useful to kernel hackers who are
309   debugging unstable kernels.
310
311   The LART uses the same LED for both Timer LED and CPU usage LED
312   functions. You may choose to use both, but the Timer LED function
313   will overrule the CPU usage LED.
314
315 CPU usage LED
316 CONFIG_LEDS_CPU
317   If you say Y here, the red LED will be used to give a good real
318   time indication of CPU usage, by lighting whenever the idle task
319   is not currently executing.
320
321   The LART uses the same LED for both Timer LED and CPU usage LED
322   functions. You may choose to use both, but the Timer LED function
323   will overrule the CPU usage LED.
324
325 Kernel FP software completion
326 CONFIG_MATHEMU
327   This option is required for IEEE compliant floating point arithmetic
328   on the Alpha. The only time you would ever not say Y is to say M in
329   order to debug the code. Say Y unless you know what you are doing.
330
331 # Choice: himem
332 High Memory support
333 CONFIG_NOHIGHMEM
334   Linux can use up to 64 Gigabytes of physical memory on x86 systems.
335   However, the address space of 32-bit x86 processors is only 4
336   Gigabytes large. That means that, if you have a large amount of
337   physical memory, not all of it can be "permanently mapped" by the
338   kernel. The physical memory that's not permanently mapped is called
339   "high memory".
340
341   If you are compiling a kernel which will never run on a machine with
342   more than 1 Gigabyte total physical RAM, answer "off" here (default
343   choice and suitable for most users). This will result in a "3GB/1GB"
344   split: 3GB are mapped so that each process sees a 3GB virtual memory
345   space and the remaining part of the 4GB virtual memory space is used
346   by the kernel to permanently map as much physical memory as
347   possible.
348
349   If the machine has between 1 and 4 Gigabytes physical RAM, then
350   answer "4GB" here.
351
352   If more than 4 Gigabytes is used then answer "64GB" here. This
353   selection turns Intel PAE (Physical Address Extension) mode on.
354   PAE implements 3-level paging on IA32 processors. PAE is fully
355   supported by Linux, PAE mode is implemented on all recent Intel
356   processors (Pentium Pro and better). NOTE: If you say "64GB" here,
357   then the kernel will not boot on CPUs that don't support PAE!
358
359   The actual amount of total physical memory will either be
360   auto detected or can be forced by using a kernel command line option
361   such as "mem=256M". (Try "man bootparam" or see the documentation of
362   your boot loader (lilo or loadlin) about how to pass options to the
363   kernel at boot time.)
364
365   If unsure, say "off".
366
367 4GB
368 CONFIG_HIGHMEM4G
369   Select this if you have a 32-bit processor and between 1 and 4
370   gigabytes of physical RAM.
371
372 64GB
373 CONFIG_HIGHMEM64G
374   Select this if you have a 32-bit processor and more than 4
375   gigabytes of physical RAM.
376
377 Normal PC floppy disk support
378 CONFIG_BLK_DEV_FD
379   If you want to use the floppy disk drive(s) of your PC under Linux,
380   say Y. Information about this driver, especially important for IBM
381   Thinkpad users, is contained in <file:Documentation/floppy.txt>.
382   That file also contains the location of the Floppy driver FAQ as
383   well as location of the fdutils package used to configure additional
384   parameters of the driver at run time.
385
386   This driver is also available as a module ( = code which can be
387   inserted in and removed from the running kernel whenever you want).
388   The module will be called floppy.o. If you want to compile it as a
389   module, say M here and read <file:Documentation/modules.txt>.
390
391 iSeries Virtual I/O Disk Support
392 CONFIG_VIODASD
393   If you are running on an iSeries system and you want to use
394   virtual disks created and managed by OS/400, say Y.
395
396 iSeries Virtual I/O Disk IDE Emulation
397 CONFIG_VIODASD_IDE
398   This causes the iSeries virtual disks to look like IDE disks.
399   If you have programs or utilities that only support certain
400   kinds of disks, this option will cause iSeries virtual disks
401   to pretend to be IDE disks, which may satisfy the program.
402
403 Support for PowerMac floppy
404 CONFIG_MAC_FLOPPY
405   If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple)
406   floppy controller, say Y here. Most commonly found in PowerMacs.
407
408 RAM disk support
409 CONFIG_BLK_DEV_RAM
410   Saying Y here will allow you to use a portion of your RAM memory as
411   a block device, so that you can make file systems on it, read and
412   write to it and do all the other things that you can do with normal
413   block devices (such as hard drives). It is usually used to load and
414   store a copy of a minimal root file system off of a floppy into RAM
415   during the initial install of Linux.
416
417   Note that the kernel command line option "ramdisk=XX" is now
418   obsolete. For details, read <file:Documentation/ramdisk.txt>.
419
420   If you want to compile this as a module ( = code which can be
421   inserted in and removed from the running kernel whenever you want),
422   say M and read <file:Documentation/modules.txt>. The module will be
423   called rd.o.
424
425   Most normal users won't need the RAM disk functionality, and can
426   thus say N here.
427
428 Default RAM disk size
429 CONFIG_BLK_DEV_RAM_SIZE
430   The default value is 4096. Only change this if you know what are
431   you doing. If you are using IBM S/390, then set this to 8192.
432
433 Initial RAM disk (initrd) support
434 CONFIG_BLK_DEV_INITRD
435   The initial RAM disk is a RAM disk that is loaded by the boot loader
436   (loadlin or lilo) and that is mounted as root before the normal boot
437   procedure. It is typically used to load modules needed to mount the
438   "real" root file system, etc. See <file:Documentation/initrd.txt>
439   for details.
440
441 Loopback device support
442 CONFIG_BLK_DEV_LOOP
443   Saying Y here will allow you to use a regular file as a block
444   device; you can then create a file system on that block device and
445   mount it just as you would mount other block devices such as hard
446   drive partitions, CD-ROM drives or floppy drives. The loop devices
447   are block special device files with major number 7 and typically
448   called /dev/loop0, /dev/loop1 etc.
449
450   This is useful if you want to check an ISO 9660 file system before
451   burning the CD, or if you want to use floppy images without first
452   writing them to floppy. Furthermore, some Linux distributions avoid
453   the need for a dedicated Linux partition by keeping their complete
454   root file system inside a DOS FAT file using this loop device
455   driver.
456
457   The loop device driver can also be used to "hide" a file system in a
458   disk partition, floppy, or regular file, either using encryption
459   (scrambling the data) or steganography (hiding the data in the low
460   bits of, say, a sound file). This is also safe if the file resides
461   on a remote file server. If you want to do this, you will first have
462   to acquire and install a kernel patch from
463   <ftp://ftp.kerneli.org/pub/kerneli/>, and then you need to
464   say Y to this option.
465
466   Note that alternative ways to use encrypted file systems are
467   provided by the cfs package, which can be gotten from
468   <ftp://ftp.kerneli.org/pub/kerneli/net-source/>, and the newer tcfs
469   package, available at <http://tcfs.dia.unisa.it/>. You do not need
470   to say Y here if you want to use one of these. However, using cfs
471   requires saying Y to "NFS file system support" below while using
472   tcfs requires applying a kernel patch. An alternative steganography
473   solution is provided by StegFS, also available from
474   <ftp://ftp.kerneli.org/pub/kerneli/net-source/>.
475
476   To use the loop device, you need the losetup utility and a recent
477   version of the mount program, both contained in the util-linux
478   package. The location and current version number of util-linux is
479   contained in the file <file:Documentation/Changes>.
480
481   Note that this loop device has nothing to do with the loopback
482   device used for network connections from the machine to itself.
483
484   If you want to compile this driver as a module ( = code which can be
485   inserted in and removed from the running kernel whenever you want),
486   say M here and read <file:Documentation/modules.txt>. The module
487   will be called loop.o.
488
489   Most users will answer N here.
490
491 Network block device support
492 CONFIG_BLK_DEV_NBD
493   Saying Y here will allow your computer to be a client for network
494   block devices, i.e. it will be able to use block devices exported by
495   servers (mount file systems on them etc.). Communication between
496   client and server works over TCP/IP networking, but to the client
497   program this is hidden: it looks like a regular local file access to
498   a block device special file such as /dev/nd0.
499
500   Network block devices also allows you to run a block-device in
501   userland (making server and client physically the same computer,
502   communicating using the loopback network device).
503
504   Read <file:Documentation/nbd.txt> for more information, especially
505   about where to find the server code, which runs in user space and
506   does not need special kernel support.
507
508   Note that this has nothing to do with the network file systems NFS
509   or Coda; you can say N here even if you intend to use NFS or Coda.
510
511   If you want to compile this driver as a module ( = code which can be
512   inserted in and removed from the running kernel whenever you want),
513   say M here and read <file:Documentation/modules.txt>. The module
514   will be called nbd.o.
515
516   If unsure, say N.
517
518 ATA/IDE/MFM/RLL support
519 CONFIG_IDE
520   If you say Y here, your kernel will be able to manage low cost mass
521   storage units such as ATA/(E)IDE and ATAPI units. The most common
522   cases are IDE hard drives and ATAPI CD-ROM drives.
523
524   If your system is pure SCSI and doesn't use these interfaces, you
525   can say N here.
526
527   Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
528   for mass storage units such as hard disks. It was designed by
529   Western Digital and Compaq Computer in 1984. It was then named
530   ST506. Quite a number of disks use the IDE interface.
531
532   AT Attachment (ATA) is the superset of the IDE specifications.
533   ST506 was also called ATA-1.
534
535   Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
536   ATA-3. It provides support for larger disks (up to 8.4GB by means of
537   the LBA standard), more disks (4 instead of 2) and for other mass
538   storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
539   ATA-4 and provides faster (and more CPU friendly) transfer modes
540   than previous PIO (Programmed processor Input/Output) from previous
541   ATA/IDE standards by means of fast DMA controllers.
542
543   ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
544   CD-ROM drives, similar in many respects to the SCSI protocol.
545
546   SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
547   designed in order to prevent data corruption and disk crash by
548   detecting pre hardware failure conditions (heat, access time, and
549   the like...). Disks built since June 1995 may follow this standard.
550   The kernel itself don't manage this; however there are quite a
551   number of user programs such as smart that can query the status of
552   SMART parameters disk.
553
554   If you want to compile this driver as a module ( = code which can be
555   inserted in and removed from the running kernel whenever you want),
556   say M here and read <file:Documentation/modules.txt>. The module
557   will be called ide.o.
558
559   For further information, please read <file:Documentation/ide.txt>.
560
561   If unsure, say Y.
562
563 Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
564 CONFIG_BLK_DEV_IDE
565   If you say Y here, you will use the full-featured IDE driver to
566   control up to ten ATA/IDE interfaces, each being able to serve a
567   "master" and a "slave" device, for a total of up to twenty ATA/IDE
568   disk/cdrom/tape/floppy drives.
569
570   Useful information about large (>540 MB) IDE disks, multiple
571   interfaces, what to do if ATA/IDE devices are not automatically
572   detected, sound card ATA/IDE ports, module support, and other
573   topics, is contained in <file:Documentation/ide.txt>. For detailed
574   information about hard drives, consult the Disk-HOWTO and the
575   Multi-Disk-HOWTO, available from
576   <http://www.linuxdoc.org/docs.html#howto>.
577
578   To fine-tune ATA/IDE drive/interface parameters for improved
579   performance, look for the hdparm package at
580   <http://www.ibiblio.org/pub/Linux/system/hardware>.
581
582   If you want to compile this driver as a module ( = code which can be
583   inserted in and removed from the running kernel whenever you want),
584   say M here and read <file:Documentation/modules.txt> and
585   <file:Documentation/ide.txt>. The module will be called ide-mod.o.
586   Do not compile this driver as a module if your root file system (the
587   one containing the directory /) is located on an IDE device.
588
589   If you have one or more IDE drives, say Y or M here. If your system
590   has no IDE drives, or if memory requirements are really tight, you
591   could say N here, and select the "Old hard disk driver" below
592   instead to save about 13 KB of memory in the kernel.
593
594 Old hard disk (MFM/RLL/IDE) driver
595 CONFIG_BLK_DEV_HD_ONLY
596   There are two drivers for MFM/RLL/IDE hard disks. Most people use
597   the newer enhanced driver, but this old one is still around for two
598   reasons. Some older systems have strange timing problems and seem to
599   work only with the old driver (which itself does not work with some
600   newer systems). The other reason is that the old driver is smaller,
601   since it lacks the enhanced functionality of the new one. This makes
602   it a good choice for systems with very tight memory restrictions, or
603   for systems with only older MFM/RLL/ESDI drives. Choosing the old
604   driver can save 13 KB or so of kernel memory.
605
606   If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver
607   instead of this one. For more detailed information, read the
608   Disk-HOWTO, available from
609   <http://www.linuxdoc.org/docs.html#howto>.
610
611 Use old disk-only driver on primary interface
612 CONFIG_BLK_DEV_HD_IDE
613   There are two drivers for MFM/RLL/IDE disks.  Most people use just
614   the new enhanced driver by itself.  This option however installs the
615   old hard disk driver to control the primary IDE/disk interface in
616   the system, leaving the new enhanced IDE driver to take care of only
617   the 2nd/3rd/4th IDE interfaces.  Doing this will prevent you from
618   having an IDE/ATAPI CD-ROM or tape drive connected to the primary
619   IDE interface.  Choosing this option may be useful for older systems
620   which have MFM/RLL/ESDI controller+drives at the primary port
621   address (0x1f0), along with IDE drives at the secondary/3rd/4th port
622   addresses.
623
624   Normally, just say N here; you will then use the new driver for all
625   4 interfaces.
626
627 Include IDE/ATA-2 DISK support
628 CONFIG_BLK_DEV_IDEDISK
629   This will include enhanced support for MFM/RLL/IDE hard disks.  If
630   you have a MFM/RLL/IDE disk, and there is no special reason to use
631   the old hard disk driver instead, say Y.  If you have an SCSI-only
632   system, you can say N here.
633
634   If you want to compile this driver as a module ( = code which can be
635   inserted in and removed from the running kernel whenever you want),
636   say M here and read <file:Documentation/modules.txt>.  The module
637   will be called ide-disk.o.  Do not compile this driver as a module
638   if your root file system (the one containing the directory /) is
639   located on the IDE disk. If unsure, say Y.
640
641 Use multi-mode by default
642 CONFIG_IDEDISK_MULTI_MODE
643   If you get this error, try to say Y here:
644
645   hda: set_multmode: status=0x51 { DriveReady SeekComplete Error }
646   hda: set_multmode: error=0x04 { DriveStatusError }
647
648   If in doubt, say N.
649
650 PCMCIA IDE support
651 CONFIG_BLK_DEV_IDECS
652   Support for outboard IDE disks, tape drives, and CD-ROM drives
653   connected through a  PCMCIA card.
654
655 Include IDE/ATAPI CD-ROM support
656 CONFIG_BLK_DEV_IDECD
657   If you have a CD-ROM drive using the ATAPI protocol, say Y. ATAPI is
658   a newer protocol used by IDE CD-ROM and TAPE drives, similar to the
659   SCSI protocol. Most new CD-ROM drives use ATAPI, including the
660   NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI
661   double(2X) or better speed drives.
662
663   If you say Y here, the CD-ROM drive will be identified at boot time
664   along with other IDE devices, as "hdb" or "hdc", or something
665   similar (check the boot messages with dmesg). If this is your only
666   CD-ROM drive, you can say N to all other CD-ROM options, but be sure
667   to say Y or M to "ISO 9660 CD-ROM file system support".
668
669   Read the CD-ROM-HOWTO, available from
670   <http://www.linuxdoc.org/docs.html#howto> and
671   <file:Documentation/cdrom/ide-cd>. Note that older versions of lilo
672   (the Linux boot loader) cannot properly deal with IDE/ATAPI CD-ROMs,
673   so install lilo-16 or higher, available from
674   <ftp://metalab.unc.edu/pub/Linux/system/boot/lilo>.
675
676   If you want to compile the driver as a module ( = code which can be
677   inserted in and removed from the running kernel whenever you want),
678   say M here and read <file:Documentation/modules.txt>.  The module
679   will be called ide-cd.o.
680
681 Include IDE/ATAPI TAPE support
682 CONFIG_BLK_DEV_IDETAPE
683   If you have an IDE tape drive using the ATAPI protocol, say Y.
684   ATAPI is a newer protocol used by IDE tape and CD-ROM drives,
685   similar to the SCSI protocol.  If you have an SCSI tape drive
686   however, you can say N here.
687
688   You should also say Y if you have an OnStream DI-30 tape drive; this
689   will not work with the SCSI protocol, until there is support for the
690   SC-30 and SC-50 versions.
691
692   If you say Y here, the tape drive will be identified at boot time
693   along with other IDE devices, as "hdb" or "hdc", or something
694   similar, and will be mapped to a character device such as "ht0"
695   (check the boot messages with dmesg).  Be sure to consult the
696   <file:drivers/ide/ide-tape.c> and <file:Documentation/ide.txt> files
697   for usage information.
698
699   If you want to compile the driver as a module ( = code which can be
700   inserted in and removed from the running kernel whenever you want),
701   say M here and read <file:Documentation/modules.txt>.  The module
702   will be called ide-tape.o.
703
704 Include IDE/ATAPI FLOPPY support
705 CONFIG_BLK_DEV_IDEFLOPPY
706   If you have an IDE floppy drive which uses the ATAPI protocol,
707   answer Y.  ATAPI is a newer protocol used by IDE CD-ROM/tape/floppy
708   drives, similar to the SCSI protocol.
709
710   The LS-120 and the IDE/ATAPI Iomega ZIP drive are also supported by
711   this driver. For information about jumper settings and the question
712   of when a ZIP drive uses a partition table, see
713   <http://www.win.tue.nl/~aeb/linux/zip/zip-1.html>.
714   (ATAPI PD-CD/CDR drives are not supported by this driver; support
715   for PD-CD/CDR drives is available if you answer Y to
716   "SCSI emulation support", below).
717
718   If you say Y here, the FLOPPY drive will be identified along with
719   other IDE devices, as "hdb" or "hdc", or something similar (check
720   the boot messages with dmesg).
721
722   If you want to compile the driver as a module ( = code which can be
723   inserted in and removed from the running kernel whenever you want),
724   say M here and read <file:Documentation/modules.txt>.  The module
725   will be called ide-floppy.o.
726
727 SCSI emulation support
728 CONFIG_BLK_DEV_IDESCSI
729   This will provide SCSI host adapter emulation for IDE ATAPI devices,
730   and will allow you to use a SCSI device driver instead of a native
731   ATAPI driver.
732
733   This is useful if you have an ATAPI device for which no native
734   driver has been written (for example, an ATAPI PD-CD or CDR drive);
735   you can then use this emulation together with an appropriate SCSI
736   device driver. In order to do this, say Y here and to "SCSI support"
737   and "SCSI generic support", below. You must then provide the kernel
738   command line "hdx=scsi" (try "man bootparam" or see the
739   documentation of your boot loader (lilo or loadlin) about how to
740   pass options to the kernel at boot time) for devices if you want the
741   native EIDE sub-drivers to skip over the native support, so that
742   this SCSI emulation can be used instead. This is required for use of
743   CD-RW's.
744
745   Note that this option does NOT allow you to attach SCSI devices to a
746   box that doesn't have a SCSI host adapter installed.
747
748   If both this SCSI emulation and native ATAPI support are compiled
749   into the kernel, the native support will be used.
750
751 ISA-PNP EIDE support
752 CONFIG_BLK_DEV_ISAPNP
753   If you have an ISA EIDE card that is PnP (Plug and Play) and
754   requires setup first before scanning for devices, say Y here.
755
756   If unsure, say N.
757
758 CMD640 chipset bugfix/support
759 CONFIG_BLK_DEV_CMD640
760   The CMD-Technologies CMD640 IDE chip is used on many common 486 and
761   Pentium motherboards, usually in combination with a "Neptune" or
762   "SiS" chipset. Unfortunately, it has a number of rather nasty
763   design flaws that can cause severe data corruption under many common
764   conditions. Say Y here to include code which tries to automatically
765   detect and correct the problems under Linux. This option also
766   enables access to the secondary IDE ports in some CMD640 based
767   systems.
768
769   This driver will work automatically in PCI based systems (most new
770   systems have PCI slots). But if your system uses VESA local bus
771   (VLB) instead of PCI, you must also supply a kernel boot parameter
772   to enable the CMD640 bugfix/support: "ide0=cmd640_vlb". (Try "man
773   bootparam" or see the documentation of your boot loader about how to
774   pass options to the kernel.)
775
776   The CMD640 chip is also used on add-in cards by Acculogic, and on
777   the "CSA-6400E PCI to IDE controller" that some people have. For
778   details, read <file:Documentation/ide.txt>.
779
780 CMD640 enhanced support
781 CONFIG_BLK_DEV_CMD640_ENHANCED
782   This option includes support for setting/autotuning PIO modes and
783   prefetch on CMD640 IDE interfaces.  For details, read
784   <file:Documentation/ide.txt>. If you have a CMD640 IDE interface
785   and your BIOS does not already do this for you, then say Y here.
786   Otherwise say N.
787
788 RZ1000 chipset bugfix/support
789 CONFIG_BLK_DEV_RZ1000
790   The PC-Technologies RZ1000 IDE chip is used on many common 486 and
791   Pentium motherboards, usually along with the "Neptune" chipset.
792   Unfortunately, it has a rather nasty design flaw that can cause
793   severe data corruption under many conditions. Say Y here to include
794   code which automatically detects and corrects the problem under
795   Linux. This may slow disk throughput by a few percent, but at least
796   things will operate 100% reliably.
797
798 Generic PCI IDE chipset support
799 CONFIG_BLK_DEV_IDEPCI
800   Say Y here for PCI systems which use IDE drive(s).
801   This option helps the IDE driver to automatically detect and
802   configure all PCI-based IDE interfaces in your system.
803
804 Support for sharing PCI IDE interrupts
805 CONFIG_IDEPCI_SHARE_IRQ
806   Some ATA/IDE chipsets have hardware support which allows for
807   sharing a single IRQ with other cards. To enable support for
808   this in the ATA/IDE driver, say Y here.
809
810   It is safe to say Y to this question, in most cases.
811   If unsure, say N.
812
813 Generic PCI bus-master DMA support
814 CONFIG_BLK_DEV_IDEDMA_PCI
815   If your PCI system uses IDE drive(s) (as opposed to SCSI, say) and
816   is capable of bus-master DMA operation (most Pentium PCI systems),
817   you will want to say Y here to reduce CPU overhead. You can then use
818   the "hdparm" utility to enable DMA for drives for which it was not
819   enabled automatically. By default, DMA is not enabled automatically
820   for these drives, but you can change that by saying Y to the
821   following question "Use DMA by default when available". You can get
822   the latest version of the hdparm utility from
823   <ftp://metalab.unc.edu/pub/Linux/system/hardware/>.
824
825   Read the comments at the beginning of <file:drivers/ide/ide-dma.c>
826   and the file <file:Documentation/ide.txt> for more information.
827
828   It is safe to say Y to this question.
829
830 Good-Bad DMA Model-Firmware (WIP)
831 CONFIG_IDEDMA_NEW_DRIVE_LISTINGS
832   If you say Y here, the model and firmware revision of your drive
833   will be compared against a blacklist of buggy drives that claim to
834   be (U)DMA capable but aren't. This is a blanket on/off test with no
835   speed limit options.
836
837   Straight GNU GCC 2.7.3/2.8.X compilers are known to be safe;
838   whereas, many versions of EGCS have a problem and miscompile if you
839   say Y here.
840
841   If in doubt, say N.
842
843 Attempt to HACK around Chipsets that TIMEOUT (WIP)
844 CONFIG_BLK_DEV_IDEDMA_TIMEOUT
845   If you say Y here, this is a NASTY UGLY HACK!
846
847   We have to issue an abort and requeue the request DMA engine got
848   turned off by a goofy ASIC, and we have to clean up the mess, and
849   here is as good as any.  Do it globally for all chipsets.
850
851   If in doubt, say N.
852
853 Boot off-board chipsets first support
854 CONFIG_BLK_DEV_OFFBOARD
855   Normally, IDE controllers built into the motherboard (on-board
856   controllers) are assigned to ide0 and ide1 while those on add-in PCI
857   cards (off-board controllers) are relegated to ide2 and ide3.
858   Answering Y here will allow you to reverse the situation, with
859   off-board controllers on ide0/1 and on-board controllers on ide2/3.
860   This can improve the usability of some boot managers such as lilo
861   when booting from a drive on an off-board controller.
862
863   If you say Y here, and you actually want to reverse the device scan
864   order as explained above, you also need to issue the kernel command
865   line option "ide=reverse". (Try "man bootparam" or see the
866   documentation of your boot loader (lilo or loadlin) about how to
867   pass options to the kernel at boot time.)
868
869   Note that, if you do this, the order of the hd* devices will be
870   rearranged which may require modification of fstab and other files.
871
872   If in doubt, say N.
873
874 Use PCI DMA by default when available
875 CONFIG_IDEDMA_PCI_AUTO
876   Prior to kernel version 2.1.112, Linux used to automatically use
877   DMA for IDE drives and chipsets which support it. Due to concerns
878   about a couple of cases where buggy hardware may have caused damage,
879   the default is now to NOT use DMA automatically. To revert to the
880   previous behaviour, say Y to this question.
881
882   If you suspect your hardware is at all flakey, say N here.
883   Do NOT email the IDE kernel people regarding this issue!
884
885   It is normally safe to answer Y to this question unless your
886   motherboard uses a VIA VP2 chipset, in which case you should say N.
887
888 IGNORE word93 Validation BITS
889 CONFIG_IDEDMA_IVB
890   There are unclear terms is ATA-4 and ATA-5 standards how certain
891   hardware (an 80c ribbon) should be detected. Different interpretations
892   of the standards have been released in hardware. This causes problems:
893   for example, a host with Ultra Mode 4 (or higher) will not run
894   in that mode with an 80c ribbon.
895
896   If you are experiencing compatibility or performance problems, you
897   MAY try to answering Y here. However, it does not necessarily solve
898   any of your problems, it could even cause more of them.
899
900   It is normally safe to answer Y; however, the default is N.
901
902 ATA Work(s) In Progress (EXPERIMENTAL)\8b
903 CONFIG_IDEDMA_PCI_WIP
904   If you enable this you will be able to use and test highly
905   developmental projects. If you say N, the configurator will
906   simply skip those options.
907
908   It is SAFEST to say N to this question.
909
910 Asyncronious DMA support (EXPERIMENTAL)
911 CONFIG_BLK_DEV_ADMA
912   Please read the comments at the top of
913   <file:drivers/ide/ide-adma.c>.
914
915 Pacific Digital A-DMA support (EXPERIMENTAL)
916 CONFIG_BLK_DEV_PDC_ADMA
917   Please read the comments at the top of <file:drivers/ide/pdcadma.c>.
918
919 3ware Hardware ATA-RAID support
920 CONFIG_BLK_DEV_3W_XXXX_RAID
921   3ware is the only hardware ATA-Raid product in Linux to date.
922   This card is 2,4, or 8 channel master mode support only.
923   SCSI support required!!!
924
925   <http://www.3ware.com/>
926
927   Please read the comments at the top of
928   <file:drivers/scsi/3w-xxxx.c>.
929
930 AEC62XX chipset support
931 CONFIG_BLK_DEV_AEC62XX
932   This driver adds up to 4 more EIDE devices sharing a single
933   interrupt. This add-on card is a bootable PCI UDMA controller. In
934   order to get this card to initialize correctly in some cases, you
935   should say Y here, and preferably also to "Use DMA by default when
936   available".
937
938   The ATP850U/UF is an UltraDMA 33 chipset base.
939   The ATP860 is an UltraDMA 66 chipset base.
940   The ATP860M(acintosh) version is an UltraDMA 66 chipset base.
941
942   Please read the comments at the top of <file:drivers/ide/aec62xx.c>.
943   If you say Y here, then say Y to "Use DMA by default when available"
944   as well.
945
946 AEC62XX Tuning support
947 CONFIG_AEC62XX_TUNING
948   Please read the comments at the top of <file:drivers/ide/aec62xx.c>.
949   If unsure, say N.
950
951 ALI M15x3 chipset support
952 CONFIG_BLK_DEV_ALI15X3
953   This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
954   onboard chipsets.  It also tests for Simplex mode and enables
955   normal dual channel support.
956
957   If you say Y here, you also need to say Y to "Use DMA by default
958   when available", above.  Please read the comments at the top of
959   <file:drivers/ide/alim15x3.c>.
960
961   If unsure, say N.
962
963 ALI M15x3 WDC support (DANGEROUS)
964 CONFIG_WDC_ALI15X3
965   This allows for UltraDMA support for WDC drives that ignore CRC
966   checking. You are a fool for enabling this option, but there have
967   been requests. DO NOT COMPLAIN IF YOUR DRIVE HAS FS CORRUPTION, IF
968   YOU ENABLE THIS! No one will listen, just laugh for ignoring this
969   SERIOUS WARNING.
970
971   Using this option can allow WDC drives to run at ATA-4/5 transfer
972   rates with only an ATA-2 support structure.
973
974   SAY N!
975
976 AMD Viper support
977 CONFIG_BLK_DEV_AMD74XX
978   This driver ensures (U)DMA support for the AMD756/760 Viper
979   chipsets.
980
981   If you say Y here, you also need to say Y to "Use DMA by default
982   when available", above.
983   Please read the comments at the top of <file:drivers/ide/amd74xx.c>.
984
985   If unsure, say N.
986
987 AMD Viper ATA-66 Override (WIP)
988 CONFIG_AMD74XX_OVERRIDE
989   This option auto-forces the ata66 flag.
990   This effect can be also invoked by calling "idex=ata66"
991   If unsure, say N.
992
993 CMD64X chipset support
994 CONFIG_BLK_DEV_CMD64X
995   Say Y here if you have an IDE controller which uses any of these
996   chipsets: CMD643, CMD646, or CMD648.
997
998 CY82C693 chipset support
999 CONFIG_BLK_DEV_CY82C693
1000   This driver adds detection and support for the CY82C693 chipset
1001   used on Digital's PC-Alpha 164SX boards.
1002
1003   If you say Y here, you need to say Y to "Use DMA by default
1004   when available" as well.
1005
1006 Cyrix CS5530 MediaGX chipset support
1007 CONFIG_BLK_DEV_CS5530
1008   Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
1009   will automatically be detected and configured if found.
1010
1011   It is safe to say Y to this question.
1012
1013   People with SCSI-only systems should say N here. If unsure, say Y.
1014
1015 HPT34X chipset support
1016 CONFIG_BLK_DEV_HPT34X
1017   This driver adds up to 4 more EIDE devices sharing a single
1018   interrupt. The HPT343 chipset in its current form is a non-bootable
1019   controller; the HPT345/HPT363 chipset is a bootable (needs BIOS FIX)
1020   PCI UDMA controllers. This driver requires dynamic tuning of the
1021   chipset during the ide-probe at boot time. It is reported to support
1022   DVD II drives, by the manufacturer.
1023
1024 HPT34X AUTODMA support (WIP)
1025 CONFIG_HPT34X_AUTODMA
1026   This is a dangerous thing to attempt currently! Please read the
1027   comments at the top of <file:drivers/ide/hpt34x.c>.  If you say Y
1028   here, then say Y to "Use DMA by default when available" as well.
1029
1030   If unsure, say N.
1031
1032 HPT366 chipset support
1033 CONFIG_BLK_DEV_HPT366
1034   HPT366 is an Ultra DMA chipset for ATA-66.
1035   HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
1036   HPT370 is an Ultra DMA chipset for ATA-100.
1037
1038   This driver adds up to 4 more EIDE devices sharing a single
1039   interrupt.
1040
1041   The HPT366 chipset in its current form is bootable. One solution
1042   for this problem are special LILO commands for redirecting the
1043   reference to device 0x80. The other solution is to say Y to "Boot
1044   off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless
1045   your mother board has the chipset natively mounted. Regardless one
1046   should use the fore mentioned option and call at LILO or include
1047   "ide=reverse" in LILO's append-line.
1048
1049   This driver requires dynamic tuning of the chipset during the
1050   ide-probe at boot. It is reported to support DVD II drives, by the
1051   manufacturer.
1052
1053 NS87415 chipset support (EXPERIMENTAL)
1054 CONFIG_BLK_DEV_NS87415
1055   This driver adds detection and support for the NS87415 chip
1056   (used in SPARC64, among others).
1057
1058   Please read the comments at the top of <file:drivers/ide/ns87415.c>.
1059
1060 OPTi 82C621 chipset enhanced support (EXPERIMENTAL)
1061 CONFIG_BLK_DEV_OPTI621
1062   This is a driver for the OPTi 82C621 EIDE controller.
1063   Please read the comments at the top of <file:drivers/ide/opti621.c>.
1064
1065 ServerWorks OSB4/CSB5 chipset support
1066 CONFIG_BLK_DEV_SVWKS
1067   This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
1068   chipsets.
1069
1070 Intel PIIXn chipsets support
1071 CONFIG_BLK_DEV_PIIX
1072   This driver adds PIO mode setting and tuning for all PIIX IDE
1073   controllers by Intel.  Since the BIOS can sometimes improperly tune
1074   PIO 0-4 mode settings, this allows dynamic tuning of the chipset
1075   via the standard end-user tool 'hdparm'.
1076
1077   Please read the comments at the top of <file:drivers/ide/piix.c>.
1078
1079   If you say Y here, you should also say Y to "PIIXn Tuning support",
1080   below.
1081
1082   If unsure, say N.
1083
1084 PIIXn Tuning support
1085 CONFIG_PIIX_TUNING
1086   This driver extension adds DMA mode setting and tuning for all PIIX
1087   IDE controllers by Intel. Since the BIOS can sometimes improperly
1088   set up the device/adapter combination and speed limits, it has
1089   become a necessity to back/forward speed devices as needed.
1090
1091   Case 430HX/440FX PIIX3 need speed limits to reduce UDMA to DMA mode
1092   2 if the BIOS can not perform this task at initialization.
1093
1094   If unsure, say N.
1095
1096 PROMISE PDC20246/PDC20262/PDC20265/PDC20267/PDC20268 support
1097 CONFIG_BLK_DEV_PDC202XX
1098   Promise Ultra33 or PDC20246
1099   Promise Ultra66 or PDC20262
1100   Promise Ultra100 or PDC20265/PDC20267/PDC20268
1101
1102   This driver adds up to 4 more EIDE devices sharing a single
1103   interrupt. This add-on card is a bootable PCI UDMA controller. Since
1104   multiple cards can be installed and there are BIOS ROM problems that
1105   happen if the BIOS revisions of all installed cards (three-max) do
1106   not match, the driver attempts to do dynamic tuning of the chipset
1107   at boot-time for max-speed.  Ultra33 BIOS 1.25 or newer is required
1108   for more than one card. This card may require that you say Y to
1109   "Special UDMA Feature".
1110
1111   If you say Y here, you need to say Y to "Use DMA by default when
1112   available" as well.
1113
1114   Please read the comments at the top of
1115   <file:drivers/ide/pdc202xx.c>.
1116
1117   If unsure, say N.
1118
1119 Special UDMA Feature
1120 CONFIG_PDC202XX_BURST
1121   For PDC20246, PDC20262, PDC20265 and PDC20267 Ultra DMA chipsets.
1122   Designed originally for PDC20246/Ultra33 that has BIOS setup
1123   failures when using 3 or more cards.
1124
1125   Unknown for PDC20265/PDC20267 Ultra DMA 100.
1126
1127   Please read the comments at the top of
1128   <file:drivers/ide/pdc202xx.c>.
1129
1130   If unsure, say N.
1131
1132 Special FastTrak Feature
1133 CONFIG_PDC202XX_FORCE
1134   For FastTrak enable overriding BIOS.
1135
1136 SiS5513 chipset support
1137 CONFIG_BLK_DEV_SIS5513
1138   This driver ensures (U)DMA support for SIS5513 chipset based
1139   mainboards. SiS620/530 UDMA mode 4, SiS5600/5597 UDMA mode 2, all
1140   other DMA mode 2 limited chipsets are unsupported to date.
1141
1142   If you say Y here, you need to say Y to "Use DMA by default when
1143   available" as well.
1144
1145   Please read the comments at the top of <file:drivers/ide/sis5513.c>.
1146
1147 SLC90E66 chipset support
1148 CONFIG_BLK_DEV_SLC90E66
1149   This driver ensures (U)DMA support for Victroy66 SouthBridges for
1150   SMsC with Intel NorthBridges.  This is an Ultra66 based chipset.
1151   The nice thing about it is that you can mix Ultra/DMA/PIO devices
1152   and it will handle timing cycles.  Since this is an improved
1153   look-a-like to the PIIX4 it should be a nice addition.
1154
1155   If you say Y here, you need to say Y to "Use DMA by default when
1156   available" as well.
1157
1158   Please read the comments at the top of
1159   <file:drivers/ide/slc90e66.c>.
1160
1161 Winbond SL82c105 support
1162 CONFIG_BLK_DEV_SL82C105
1163   If you have a Winbond SL82c105 IDE controller, say Y here to enable
1164   special configuration for this chip. This is common on various CHRP
1165   motherboards, but could be used elsewhere. If in doubt, say Y.
1166
1167 Tekram TRM290 chipset support
1168 CONFIG_BLK_DEV_TRM290
1169   This driver adds support for bus master DMA transfers
1170   using the Tekram TRM290 PCI IDE chip. Volunteers are
1171   needed for further tweaking and development.
1172   Please read the comments at the top of <file:drivers/ide/trm290.c>.
1173
1174 VIA82CXXX chipset support
1175 CONFIG_BLK_DEV_VIA82CXXX
1176   This allows you to configure your chipset for a better use while
1177   running PIO/(U)DMA, it will allow you to enable efficiently the
1178   second channel dma usage, as it may not be set by BIOS.  It will try
1179   to set fifo configuration at its best.  It will allow you to get
1180   information from /proc/ide/via provided you enabled "/proc file
1181   system" support.
1182
1183   Please read the comments at the top of
1184   <file:drivers/ide/via82cxxx.c>.
1185
1186   If you say Y here, then say Y to "Use DMA by default when available"
1187   as well.
1188
1189   If unsure, say N.
1190
1191 RapIDE interface support
1192 CONFIG_BLK_DEV_IDE_RAPIDE
1193   Say Y here if you want to support the Yellowstone RapIDE controller
1194   manufactured for use with Acorn computers.
1195
1196 Other IDE chipset support
1197 CONFIG_IDE_CHIPSETS
1198   Say Y here if you want to include enhanced support for various IDE
1199   interface chipsets used on motherboards and add-on cards. You can
1200   then pick your particular IDE chip from among the following options.
1201   This enhanced support may be necessary for Linux to be able to
1202   access the 3rd/4th drives in some systems. It may also enable
1203   setting of higher speed I/O rates to improve system performance with
1204   these chipsets. Most of these also require special kernel boot
1205   parameters to actually turn on the support at runtime; you can find
1206   a list of these in the file <file:Documentation/ide.txt>.
1207
1208   People with SCSI-only systems can say N here.
1209
1210 Generic 4 drives/port support
1211 CONFIG_BLK_DEV_4DRIVES
1212   Certain older chipsets, including the Tekram 690CD, use a single set
1213   of I/O ports at 0x1f0 to control up to four drives, instead of the
1214   customary two drives per port. Support for this can be enabled at
1215   runtime using the "ide0=four" kernel boot parameter if you say Y
1216   here.
1217
1218 ALI M14xx support
1219 CONFIG_BLK_DEV_ALI14XX
1220   This driver is enabled at runtime using the "ide0=ali14xx" kernel
1221   boot parameter.  It enables support for the secondary IDE interface
1222   of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
1223   I/O speeds to be set as well.  See the files
1224   <file:Documentation/ide.txt> and <file:drivers/ide/ali14xx.c> for
1225   more info.
1226
1227 DTC-2278 support
1228 CONFIG_BLK_DEV_DTC2278
1229   This driver is enabled at runtime using the "ide0=dtc2278" kernel
1230   boot parameter. It enables support for the secondary IDE interface
1231   of the DTC-2278 card, and permits faster I/O speeds to be set as
1232   well. See the <file:Documentation/ide.txt> and
1233   <file:drivers/ide/dtc2278.c> files for more info.
1234
1235 Holtek HT6560B support
1236 CONFIG_BLK_DEV_HT6560B
1237   This driver is enabled at runtime using the "ide0=ht6560b" kernel
1238   boot parameter. It enables support for the secondary IDE interface
1239   of the Holtek card, and permits faster I/O speeds to be set as well.
1240   See the <file:Documentation/ide.txt> and
1241   <file:drivers/ide/ht6560b.c> files for more info.
1242
1243 PROMISE DC4030 support (EXPERIMENTAL)
1244 CONFIG_BLK_DEV_PDC4030
1245   This driver provides support for the secondary IDE interface and
1246   cache of Promise IDE chipsets, e.g. DC4030 and DC5030.  This driver
1247   is known to incur timeouts/retries during heavy I/O to drives
1248   attached to the secondary interface.  CD-ROM and TAPE devices are
1249   not supported yet.  This driver is enabled at runtime using the
1250   "ide0=dc4030" kernel boot parameter.  See the
1251   <file:Documentation/ide.txt> and <file:drivers/ide/pdc4030.c> files
1252   for more info.
1253
1254 # This is for Linus's tree.
1255 QDI QD6580 support
1256 CONFIG_BLK_DEV_QD6580
1257   This driver is enabled at runtime using the "ide0=qd6580" kernel
1258   boot parameter.  It permits faster I/O speeds to be set.  See the
1259   <file:Documentation/ide.txt> and <file:drivers/ide/qd6580.c> for
1260   more info.
1261
1262 # This is for Alan's tree.  Note the name difference.
1263 QDI QD65XX support
1264 CONFIG_BLK_DEV_QD65XX
1265   This driver is enabled at runtime using the "ide0=qd65xx" kernel
1266   boot parameter.  It permits faster I/O speeds to be set.  See the
1267   <file:Documentation/ide.txt> and <file:drivers/ide/qd65xx.c> for
1268   more info.
1269
1270 UMC 8672 support
1271 CONFIG_BLK_DEV_UMC8672
1272   This driver is enabled at runtime using the "ide0=umc8672" kernel
1273   boot parameter. It enables support for the secondary IDE interface
1274   of the UMC-8672, and permits faster I/O speeds to be set as well.
1275   See the files <file:Documentation/ide.txt> and
1276   <file:drivers/ide/umc8672.c> for more info.
1277
1278 Amiga Gayle IDE interface support
1279 CONFIG_BLK_DEV_GAYLE
1280   This is the IDE driver for the builtin IDE interface on some Amiga
1281   models. It supports both the `A1200 style' (used in A600 and A1200)
1282   and `A4000 style' (used in A4000 and A4000T) of the Gayle IDE
1283   interface. Say Y if you have such an Amiga model and want to use IDE
1284   devices (hard disks, CD-ROM drives, etc.) that are connected to the
1285   builtin IDE interface.
1286
1287 Falcon IDE interface support
1288 CONFIG_BLK_DEV_FALCON_IDE
1289   This is the IDE driver for the builtin IDE interface on the Atari
1290   Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
1291   disks, CD-ROM drives, etc.) that are connected to the builtin IDE
1292   interface.
1293
1294 Amiga Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)
1295 CONFIG_BLK_DEV_BUDDHA
1296   This is the IDE driver for the IDE interfaces on the Buddha, 
1297   Catweasel and X-Surf expansion boards.  It supports up to two interfaces 
1298   on the Buddha, three on the Catweasel and two on the X-Surf.
1299
1300   Say Y if you have a Buddha or Catweasel expansion board and want to
1301   use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
1302   to one of its IDE interfaces.
1303
1304 Amiga IDE Doubler support (EXPERIMENTAL)
1305 CONFIG_BLK_DEV_IDEDOUBLER
1306   This driver provides support for the so-called `IDE doublers' (made
1307   by various manufacturers, e.g. Eyetech) that can be connected to the
1308   builtin IDE interface of some Amiga models. Using such an IDE
1309   doubler, you can connect up to four instead of two IDE devices on
1310   the Amiga's builtin IDE interface.
1311
1312   Note that the normal Amiga Gayle IDE driver may not work correctly
1313   if you have an IDE doubler and don't enable this driver!
1314
1315   Say Y if you have an IDE doubler.  The driver is enabled at kernel
1316   runtime using the "ide=doubler" kernel boot parameter.
1317
1318 WarpEngine SCSI support
1319 CONFIG_WARPENGINE_SCSI
1320   Support for MacroSystem Development's WarpEngine Amiga SCSI-2
1321   controller. Info at
1322   <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>.
1323
1324 Builtin PowerMac IDE support
1325 CONFIG_BLK_DEV_IDE_PMAC
1326   This driver provides support for the built-in IDE controller on
1327   most of the recent Apple Power Macintoshes and PowerBooks.
1328   If unsure, say Y.
1329
1330 PowerMac IDE DMA support
1331 CONFIG_BLK_DEV_IDEDMA_PMAC
1332   This option allows the driver for the built-in IDE controller on
1333   Power Macintoshes and PowerBooks to use DMA (direct memory access)
1334   to transfer data to and from memory.  Saying Y is safe and improves
1335   performance.
1336
1337 Use DMA by default
1338 CONFIG_BLK_DEV_IDEDMA_PMAC_AUTO
1339   This option allows the driver for the built-in IDE controller on
1340   Power Macintoshes and PowerBooks to use DMA automatically, without
1341   it having to be explicitly enabled.  This option is provided because
1342   of concerns about a couple of cases where using DMA on buggy PC
1343   hardware may have caused damage.  Saying Y should be safe on all
1344   Apple machines.
1345
1346 Macintosh Quadra/Powerbook IDE interface support
1347 CONFIG_BLK_DEV_MAC_IDE
1348   This is the IDE driver for the builtin IDE interface on some m68k
1349   Macintosh models. It supports both the `Quadra style' (used in
1350   Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
1351   (used in the Powerbook 150 and 190 models) IDE interface.
1352
1353   Say Y if you have such an Macintosh model and want to use IDE
1354   devices (hard disks, CD-ROM drives, etc.) that are connected to the
1355   builtin IDE interface.
1356
1357 ICS IDE interface support
1358 CONFIG_BLK_DEV_IDE_ICSIDE
1359   On Acorn systems, say Y here if you wish to use the ICS IDE
1360   interface card.  This is not required for ICS partition support.
1361   If you are unsure, say N to this.
1362
1363 ICS DMA support
1364 CONFIG_BLK_DEV_IDEDMA_ICS
1365   Say Y here if you want to add DMA (Direct Memory Access) support to
1366   the ICS IDE driver.
1367
1368 Use ICS DMA by default
1369 CONFIG_IDEDMA_ICS_AUTO
1370   Prior to kernel version 2.1.112, Linux used to automatically use
1371   DMA for IDE drives and chipsets which support it. Due to concerns
1372   about a couple of cases where buggy hardware may have caused damage,
1373   the default is now to NOT use DMA automatically. To revert to the
1374   previous behaviour, say Y to this question.
1375
1376   If you suspect your hardware is at all flakey, say N here.
1377   Do NOT email the IDE kernel people regarding this issue!
1378
1379 XT hard disk support
1380 CONFIG_BLK_DEV_XD
1381   Very old 8 bit hard disk controllers used in the IBM XT computer
1382   will be supported if you say Y here.
1383
1384   If you want to compile the driver as a module ( = code which can be
1385   inserted in and removed from the running kernel whenever you want),
1386   say M here and read <file:Documentation/modules.txt>. The module
1387   will be called xd.o.
1388
1389   It's pretty unlikely that you have one of these: say N.
1390
1391 PS/2 ESDI hard disk support
1392 CONFIG_BLK_DEV_PS2
1393   Say Y here if you have a PS/2 machine with a MCA bus and an ESDI
1394   hard disk.
1395
1396   If you want to compile the driver as a module ( = code which can be
1397   inserted in and removed from the running kernel whenever you want),
1398   say M here and read <file:Documentation/modules.txt>.  The module
1399   will be called ps2esdi.o.
1400
1401 Mylex DAC960/DAC1100 PCI RAID Controller support
1402 CONFIG_BLK_DEV_DAC960
1403   This driver adds support for the Mylex DAC960, AcceleRAID, and
1404   eXtremeRAID PCI RAID controllers.  See the file
1405   <file:Documentation/README.DAC960> for further information about
1406   this driver.
1407
1408   If you want to compile the driver as a module ( = code which can be
1409   inserted in and removed from the running kernel whenever you want),
1410   say M here and read <file:Documentation/modules.txt>.  The module
1411   will be called DAC960.o.
1412
1413 Parallel port IDE device support
1414 CONFIG_PARIDE
1415   There are many external CD-ROM and disk devices that connect through
1416   your computer's parallel port. Most of them are actually IDE devices
1417   using a parallel port IDE adapter. This option enables the PARIDE
1418   subsystem which contains drivers for many of these external drives.
1419   Read <file:Documentation/paride.txt> for more information.
1420
1421   If you have said Y to the "Parallel-port support" configuration
1422   option, you may share a single port between your printer and other
1423   parallel port devices. Answer Y to build PARIDE support into your
1424   kernel, or M if you would like to build it as a loadable module. If
1425   your parallel port support is in a loadable module, you must build
1426   PARIDE as a module. If you built PARIDE support into your kernel,
1427   you may still build the individual protocol modules and high-level
1428   drivers as loadable modules. If you build this support as a module,
1429   it will be called paride.o.
1430
1431   To use the PARIDE support, you must say Y or M here and also to at
1432   least one high-level driver (e.g. "Parallel port IDE disks",
1433   "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and
1434   to at least one protocol driver (e.g. "ATEN EH-100 protocol",
1435   "MicroSolutions backpack protocol", "DataStor Commuter protocol"
1436   etc.).
1437
1438 Parallel port IDE disks
1439 CONFIG_PARIDE_PD
1440   This option enables the high-level driver for IDE-type disk devices
1441   connected through a parallel port. If you chose to build PARIDE
1442   support into your kernel, you may answer Y here to build in the
1443   parallel port IDE driver, otherwise you should answer M to build
1444   it as a loadable module. The module will be called pd.o. You
1445   must also have at least one parallel port protocol driver in your
1446   system. Among the devices supported by this driver are the SyQuest
1447   EZ-135, EZ-230 and SparQ drives, the Avatar Shark and the backpack
1448   hard drives from MicroSolutions.
1449
1450 Parallel port ATAPI CD-ROMs
1451 CONFIG_PARIDE_PCD
1452   This option enables the high-level driver for ATAPI CD-ROM devices
1453   connected through a parallel port. If you chose to build PARIDE
1454   support into your kernel, you may answer Y here to build in the
1455   parallel port ATAPI CD-ROM driver, otherwise you should answer M to
1456   build it as a loadable module. The module will be called pcd.o. You
1457   must also have at least one parallel port protocol driver in your
1458   system. Among the devices supported by this driver are the
1459   MicroSolutions backpack CD-ROM drives and the Freecom Power CD. If
1460   you have such a CD-ROM drive, you should also say Y or M to "ISO
1461   9660 CD-ROM file system support" below, because that's the file
1462   system used on CD-ROMs.
1463
1464 Parallel port ATAPI disks
1465 CONFIG_PARIDE_PF
1466   This option enables the high-level driver for ATAPI disk devices
1467   connected through a parallel port. If you chose to build PARIDE
1468   support into your kernel, you may answer Y here to build in the
1469   parallel port ATAPI disk driver, otherwise you should answer M
1470   to build it as a loadable module. The module will be called pf.o.
1471   You must also have at least one parallel port protocol driver in
1472   your system. Among the devices supported by this driver are the
1473   MicroSolutions backpack PD/CD drive and the Imation Superdisk
1474   LS-120 drive.
1475
1476 Parallel port ATAPI tapes
1477 CONFIG_PARIDE_PT
1478   This option enables the high-level driver for ATAPI tape devices
1479   connected through a parallel port. If you chose to build PARIDE
1480   support into your kernel, you may answer Y here to build in the
1481   parallel port ATAPI disk driver, otherwise you should answer M
1482   to build it as a loadable module. The module will be called pt.o.
1483   You must also have at least one parallel port protocol driver in
1484   your system. Among the devices supported by this driver is the
1485   parallel port version of the HP 5GB drive.
1486
1487 Parallel port generic ATAPI devices
1488 CONFIG_PARIDE_PG
1489   This option enables a special high-level driver for generic ATAPI
1490   devices connected through a parallel port. The driver allows user
1491   programs, such as cdrecord, to send ATAPI commands directly to a
1492   device.
1493
1494   If you chose to build PARIDE support into your kernel, you may
1495   answer Y here to build in the parallel port generic ATAPI driver,
1496   otherwise you should answer M to build it as a loadable module. The
1497   module will be called pg.o.
1498
1499   You must also have at least one parallel port protocol driver in
1500   your system.
1501
1502   This driver implements an API loosely related to the generic SCSI
1503   driver. See <file:include/linux/pg.h>. for details.
1504
1505   You can obtain the most recent version of cdrecord from
1506   <ftp://ftp.fokus.gmd.de/pub/unix/cdrecord/>. Versions 1.6.1a3 and
1507   later fully support this driver.
1508
1509 ATEN EH-100 protocol
1510 CONFIG_PARIDE_ATEN
1511   This option enables support for the ATEN EH-100 parallel port IDE
1512   protocol. This protocol is used in some inexpensive low performance
1513   parallel port kits made in Hong Kong. If you chose to build PARIDE
1514   support into your kernel, you may answer Y here to build in the
1515   protocol driver, otherwise you should answer M to build it as a
1516   loadable module. The module will be called aten.o. You must also
1517   have a high-level driver for the type of device that you want to
1518   support.
1519
1520 Micro Solutions BACKPACK Series 5 protocol
1521 CONFIG_PARIDE_BPCK
1522   This option enables support for the Micro Solutions BACKPACK
1523   parallel port Series 5 IDE protocol.  (Most BACKPACK drives made
1524   before 1999 were Series 5) Series 5 drives will NOT always have the
1525   Series noted on the bottom of the drive. Series 6 drivers will.
1526
1527   In other words, if your BACKPACK drive dosen't say "Series 6" on the
1528   bottom, enable this option.
1529
1530   If you chose to build PARIDE support into your kernel, you may
1531   answer Y here to build in the protocol driver, otherwise you should
1532   answer M to build it as a loadable module.  The module will be
1533   called bpck.o.  You must also have a high-level driver for the type
1534   of device that you want to support.
1535
1536 Micro Solutions BACKPACK Series 6 protocol
1537 CONFIG_PARIDE_BPCK6
1538   This option enables support for the Micro Solutions BACKPACK
1539   parallel port Series 6 IDE protocol.  (Most BACKPACK drives made
1540   after 1999 were Series 6) Series 6 drives will have the Series noted
1541   on the bottom of the drive.  Series 5 drivers don't always have it
1542   noted.
1543
1544   In other words, if your BACKPACK drive says "Series 6" on the
1545   bottom, enable this option.
1546
1547   If you chose to build PARIDE support into your kernel, you may
1548   answer Y here to build in the protocol driver, otherwise you should
1549   answer M to build it as a loadable module.  The module will be
1550   called bpck6.o.  You must also have a high-level driver for the type
1551   of device that you want to support.
1552
1553 DataStor Commuter protocol
1554 CONFIG_PARIDE_COMM
1555   This option enables support for the Commuter parallel port IDE
1556   protocol from DataStor. If you chose to build PARIDE support
1557   into your kernel, you may answer Y here to build in the protocol
1558   driver, otherwise you should answer M to build it as a loadable
1559   module. The module will be called comm.o. You must also have
1560   a high-level driver for the type of device that you want to support.
1561
1562 DataStor EP-2000 protocol
1563 CONFIG_PARIDE_DSTR
1564   This option enables support for the EP-2000 parallel port IDE
1565   protocol from DataStor. If you chose to build PARIDE support
1566   into your kernel, you may answer Y here to build in the protocol
1567   driver, otherwise you should answer M to build it as a loadable
1568   module. The module will be called dstr.o. You must also have
1569   a high-level driver for the type of device that you want to support.
1570
1571 Shuttle EPAT/EPEZ protocol
1572 CONFIG_PARIDE_EPAT
1573   This option enables support for the EPAT parallel port IDE protocol.
1574   EPAT is a parallel port IDE adapter manufactured by Shuttle
1575   Technology and widely used in devices from major vendors such as
1576   Hewlett-Packard, SyQuest, Imation and Avatar. If you chose to build
1577   PARIDE support into your kernel, you may answer Y here to build in
1578   the protocol driver, otherwise you should answer M to build it as a
1579   loadable module. The module will be called epat.o. You must also
1580   have a high-level driver for the type of device that you want to
1581   support.
1582
1583 Shuttle EPAT c7/c8 extension
1584 CONFIG_PARIDE_EPATC8
1585   This option enables support for the newer Shuttle EP1284 (aka c7 and
1586   c8) chip. You need this if you are using any recent Imation SuperDisk
1587   (LS-120) drive.
1588
1589 Shuttle EPIA protocol
1590 CONFIG_PARIDE_EPIA
1591   This option enables support for the (obsolete) EPIA parallel port
1592   IDE protocol from Shuttle Technology. This adapter can still be
1593   found in some no-name kits. If you chose to build PARIDE support
1594   into your kernel, you may answer Y here to build in the protocol
1595   driver, otherwise you should answer M to build it as a loadable
1596   module. The module will be called epia.o. You must also have a
1597   high-level driver for the type of device that you want to support.
1598
1599 FIT TD-2000 protocol
1600 CONFIG_PARIDE_FIT2
1601   This option enables support for the TD-2000 parallel port IDE
1602   protocol from Fidelity International Technology. This is a simple
1603   (low speed) adapter that is used in some portable hard drives. If
1604   you chose to build PARIDE support into your kernel, you may answer Y
1605   here to build in the protocol driver, otherwise you should answer M
1606   to build it as a loadable module. The module will be called ktti.o.
1607   You must also have a high-level driver for the type of device that
1608   you want to support.
1609
1610 FIT TD-3000 protocol
1611 CONFIG_PARIDE_FIT3
1612   This option enables support for the TD-3000 parallel port IDE
1613   protocol from Fidelity International Technology. This protocol is
1614   used in newer models of their portable disk, CD-ROM and PD/CD
1615   devices. If you chose to build PARIDE support into your kernel, you
1616   may answer Y here to build in the protocol driver, otherwise you
1617   should answer M to build it as a loadable module. The module will be
1618   called fit3.o. You must also have a high-level driver for the type
1619   of device that you want to support.
1620
1621 Freecom IQ ASIC-2 protocol
1622 CONFIG_PARIDE_FRIQ
1623   This option enables support for version 2 of the Freecom IQ parallel
1624   port IDE adapter.  This adapter is used by the Maxell Superdisk
1625   drive.  If you chose to build PARIDE support into your kernel, you
1626   may answer Y here to build in the protocol driver, otherwise you
1627   should answer M to build it as a loadable module. The module will be
1628   called friq.o. You must also have a high-level driver for the type
1629   of device that you want to support.
1630
1631 FreeCom power protocol
1632 CONFIG_PARIDE_FRPW
1633   This option enables support for the Freecom power parallel port IDE
1634   protocol. If you chose to build PARIDE support into your kernel, you
1635   may answer Y here to build in the protocol driver, otherwise you
1636   should answer M to build it as a loadable module. The module will be
1637   called frpw.o. You must also have a high-level driver for the type
1638   of device that you want to support.
1639
1640 KingByte KBIC-951A/971A protocols
1641 CONFIG_PARIDE_KBIC
1642   This option enables support for the KBIC-951A and KBIC-971A parallel
1643   port IDE protocols from KingByte Information Corp. KingByte's
1644   adapters appear in many no-name portable disk and CD-ROM products,
1645   especially in Europe. If you chose to build PARIDE support into your
1646   kernel, you may answer Y here to build in the protocol driver,
1647   otherwise you should answer M to build it as a loadable module. The
1648   module will be called kbic.o. You must also have a high-level driver
1649   for the type of device that you want to support.
1650
1651 KT PHd protocol
1652 CONFIG_PARIDE_KTTI
1653   This option enables support for the "PHd" parallel port IDE protocol
1654   from KT Technology. This is a simple (low speed) adapter that is
1655   used in some 2.5" portable hard drives. If you chose to build PARIDE
1656   support into your kernel, you may answer Y here to build in the
1657   protocol driver, otherwise you should answer M to build it as a
1658   loadable module. The module will be called ktti.o. You must also
1659   have a high-level driver for the type of device that you want to
1660   support.
1661
1662 OnSpec 90c20 protocol
1663 CONFIG_PARIDE_ON20
1664   This option enables support for the (obsolete) 90c20 parallel port
1665   IDE protocol from OnSpec (often marketed under the ValuStore brand
1666   name). If you chose to build PARIDE support into your kernel, you
1667   may answer Y here to build in the protocol driver, otherwise you
1668   should answer M to build it as a loadable module. The module will
1669   be called on20.o. You must also have a high-level driver for the
1670   type of device that you want to support.
1671
1672 OnSpec 90c26 protocol
1673 CONFIG_PARIDE_ON26
1674   This option enables support for the 90c26 parallel port IDE protocol
1675   from OnSpec Electronics (often marketed under the ValuStore brand
1676   name). If you chose to build PARIDE support into your kernel, you
1677   may answer Y here to build in the protocol driver, otherwise you
1678   should answer M to build it as a loadable module. The module will be
1679   called on26.o. You must also have a high-level driver for the type
1680   of device that you want to support.
1681
1682 Logical Volume Manager (LVM) support
1683 CONFIG_BLK_DEV_LVM
1684   This driver lets you combine several hard disks, hard disk
1685   partitions, multiple devices or even loop devices (for evaluation
1686   purposes) into a volume group.  Imagine a volume group as a kind of
1687   virtual disk. Logical volumes, which can be thought of as virtual
1688   partitions, can be created in the volume group.  You can resize
1689   volume groups and logical volumes after creation time, corresponding
1690   to new capacity needs.  Logical volumes are accessed as block
1691   devices named /dev/VolumeGroupName/LogicalVolumeName.
1692
1693   For details see <file:Documentation/LVM-HOWTO>.  You will need
1694   supporting user space software; location is in
1695   <file:Documentation/Changes>.
1696
1697   If you want to compile this support as a module ( = code which can
1698   be inserted in and removed from the running kernel whenever you
1699   want), say M here and read <file:Documentation/modules.txt>.  The
1700   module will be called lvm-mod.o.
1701
1702 Multiple devices driver support (RAID and LVM)
1703 CONFIG_MD
1704   Support multiple physical spindles through a single logical device.
1705   Required for RAID and logical volume management (LVM).
1706
1707 Multiple devices driver support
1708 CONFIG_BLK_DEV_MD
1709   This driver lets you combine several hard disk partitions into one
1710   logical block device. This can be used to simply append one
1711   partition to another one or to combine several redundant hard disks
1712   into a RAID1/4/5 device so as to provide protection against hard
1713   disk failures. This is called "Software RAID" since the combining of
1714   the partitions is done by the kernel. "Hardware RAID" means that the
1715   combining is done by a dedicated controller; if you have such a
1716   controller, you do not need to say Y here.
1717
1718   More information about Software RAID on Linux is contained in the
1719   Software-RAID mini-HOWTO, available from
1720   <http://www.linuxdoc.org/docs.html#howto>. There you will also
1721   learn where to get the supporting user space utilities raidtools.
1722
1723   If unsure, say N.
1724
1725 Linear (append) mode
1726 CONFIG_MD_LINEAR
1727   If you say Y here, then your multiple devices driver will be able to
1728   use the so-called linear mode, i.e. it will combine the hard disk
1729   partitions by simply appending one to the other.
1730
1731   If you want to compile this as a module ( = code which can be
1732   inserted in and removed from the running kernel whenever you want),
1733   say M here and read <file:Documentation/modules.txt>.  The module
1734   will be called linear.o.
1735
1736   If unsure, say Y.
1737
1738 RAID-0 (striping) mode
1739 CONFIG_MD_RAID0
1740   If you say Y here, then your multiple devices driver will be able to
1741   use the so-called raid0 mode, i.e. it will combine the hard disk
1742   partitions into one logical device in such a fashion as to fill them
1743   up evenly, one chunk here and one chunk there. This will increase
1744   the throughput rate if the partitions reside on distinct disks.
1745
1746   Information about Software RAID on Linux is contained in the
1747   Software-RAID mini-HOWTO, available from
1748   <http://www.linuxdoc.org/docs.html#howto>. There you will also
1749   learn where to get the supporting user space utilities raidtools.
1750
1751   If you want to compile this as a module ( = code which can be
1752   inserted in and removed from the running kernel whenever you want),
1753   say M here and read <file:Documentation/modules.txt>.  The module
1754   will be called raid0.o.
1755
1756   If unsure, say Y.
1757
1758 RAID-1 (mirroring) mode
1759 CONFIG_MD_RAID1
1760   A RAID-1 set consists of several disk drives which are exact copies
1761   of each other.  In the event of a mirror failure, the RAID driver
1762   will continue to use the operational mirrors in the set, providing
1763   an error free MD (multiple device) to the higher levels of the
1764   kernel.  In a set with N drives, the available space is the capacity
1765   of a single drive, and the set protects against a failure of (N - 1)
1766   drives.
1767
1768   Information about Software RAID on Linux is contained in the
1769   Software-RAID mini-HOWTO, available from
1770   <http://www.linuxdoc.org/docs.html#howto>.  There you will also
1771   learn where to get the supporting user space utilities raidtools.
1772
1773   If you want to use such a RAID-1 set, say Y. This code is also
1774   available as a module called raid1.o ( = code which can be inserted
1775   in and removed from the running kernel whenever you want).  If you
1776   want to compile it as a module, say M here and read
1777   <file:Documentation/modules.txt>.
1778
1779   If unsure, say Y.
1780
1781 RAID-4/RAID-5 mode
1782 CONFIG_MD_RAID5
1783   A RAID-5 set of N drives with a capacity of C MB per drive provides
1784   the capacity of C * (N - 1) MB, and protects against a failure
1785   of a single drive. For a given sector (row) number, (N - 1) drives
1786   contain data sectors, and one drive contains the parity protection.
1787   For a RAID-4 set, the parity blocks are present on a single drive,
1788   while a RAID-5 set distributes the parity across the drives in one
1789   of the available parity distribution methods.
1790
1791   Information about Software RAID on Linux is contained in the
1792   Software-RAID mini-HOWTO, available from
1793   <http://www.linuxdoc.org/docs.html#howto>. There you will also
1794   learn where to get the supporting user space utilities raidtools.
1795
1796   If you want to use such a RAID-4/RAID-5 set, say Y. This code is
1797   also available as a module called raid5.o ( = code which can be
1798   inserted in and removed from the running kernel whenever you want).
1799   If you want to compile it as a module, say M here and read
1800   <file:Documentation/modules.txt>.
1801
1802   If unsure, say Y.
1803
1804 Multipath I/O support
1805 CONFIG_MD_MULTIPATH
1806   Multipath-IO is the ability of certain devices to address the same
1807   physical disk over multiple 'IO paths'. The code ensures that such
1808   paths can be defined and handled at runtime, and ensures that a
1809   transparent failover to the backup path(s) happens if a IO errors
1810   arrives on the primary path.
1811
1812   If unsure, say N.
1813
1814 # AC tree only
1815 Support for IDE Raid controllers
1816 CONFIG_BLK_DEV_ATARAID
1817   Say Y or M if you have an IDE Raid controller and want linux
1818   to use its softwareraid feature.  You must also select an
1819   appropriate for your board low-level driver below.
1820
1821   Note, that Linux does not use the Raid implemetation in BIOS, and
1822   the main purpose for this feature is to retain compatibility and
1823   data integrity with other OS-es, using the same disk array. Linux
1824   has its own Raid drivers, which you should use if you need better
1825   performance.
1826
1827 # AC tree only
1828 Support Promise software RAID (Fasttrak(tm))
1829 CONFIG_BLK_DEV_ATARAID_PDC
1830   Say Y or M if you have a Promise Fasttrak (tm) Raid controller
1831   and want linux to use the softwareraid feature of this card.
1832   This driver uses /dev/ataraid/dXpY (X and Y numbers) as device
1833   names.
1834
1835   If you choose to compile this as a module, the module will be called
1836   pdcraid.o.
1837
1838 # AC tree only
1839 Highpoint 370 software RAID
1840 CONFIG_BLK_DEV_ATARAID_HPT
1841   Say Y or M if you have a Highpoint HPT 370 Raid controller
1842   and want linux to use the softwareraid feature of this card.
1843   This driver uses /dev/ataraid/dXpY (X and Y numbers) as device
1844   names.
1845
1846   If you choose to compile this as a module, the module will be called
1847   hptraid.o.
1848
1849 Support for Acer PICA 1 chipset
1850 CONFIG_ACER_PICA_61
1851   This is a machine with a R4400 133/150 MHz CPU. To compile a Linux
1852   kernel that runs on these, say Y here. For details about Linux on
1853   the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
1854   <http://oss.sgi.com/mips>.
1855
1856 Support for Algorithmics P4032 (EXPERIMENTAL)
1857 CONFIG_ALGOR_P4032
1858   This is an evaluation board of the British company Algorithmics.
1859   The board uses the R4300 and a R5230 CPUs.  For more information
1860   about this board see <http://www.algor.co.uk>.
1861
1862 Support for BAGET MIPS series
1863 CONFIG_BAGET_MIPS
1864   This enables support for the Baget, a Russian embedded system.  For
1865   more details about the Baget see the Linux/MIPS FAQ on
1866   <http://oss.sgi.com/mips>.
1867
1868 Baget AMD LANCE support
1869 CONFIG_BAGETLANCE
1870   Say Y to enable kernel support for AMD Lance Ethernet cards on the
1871   MIPS-32-based Baget embedded system.  This chipset is better known
1872   via the NE2100 cards.
1873
1874 Support for DECstations
1875 CONFIG_DECSTATION
1876   This enables support for DEC's MIPS based workstations.  For details
1877   see the Linux/MIPS FAQ on <http://oss.sgi.com/mips> and the
1878   DECstation porting pages on <http://decstation.unix-ag.org>.
1879
1880   If you have one of the following DECstation Models you definitely
1881   want to choose R4xx0 for the CPU Type:
1882
1883         DECstation 5000/50
1884         DECstation 5000/150
1885         DECstation 5000/260
1886         DECsystem 5900/260
1887
1888   otherwise choose R3000.
1889
1890 Support for Cobalt Micro Server
1891 CONFIG_COBALT_MICRO_SERVER
1892   Support for MIPS-based Cobalt boxes (they have been bought by Sun
1893   and are now the "Server Appliance Business Unit") including the 2700
1894   series -- versions 1 of the Qube and Raq.  To compile a Linux kernel
1895   for this hardware, say Y here.
1896
1897 Support for Cobalt 2800
1898 CONFIG_COBALT_28
1899   Support for the second generation of MIPS-based Cobalt boxes (they
1900   have been bought by Sun and are now the "Server Appliance Business
1901   Unit") including the 2800 series -- versions 2 of the Qube and Raq.
1902   To compile a Linux kernel for this hardware, say Y here.
1903
1904 Support for the Momentum Computer Ocelot SBC
1905 CONFIG_MOMENCO_OCELOT
1906   The Ocelot is a MIPS-based Single Board Computer (SBC) made by
1907   Momentum Computer <http://www.momenco.com>.
1908
1909 Support for NEC DDB Vrc-5074
1910 CONFIG_DDB5074
1911   This enables support for the VR5000-based NEC DDB Vrc-5074
1912   evaluation board.
1913
1914 Support for NEC DDB Vrc-5476
1915 CONFIG_DDB5476
1916   This enables support for the R5432-based NEC DDB Vrc-5476
1917   evaluation board.
1918
1919   Features : kernel debugging, serial terminal, NFS root fs, on-board
1920   ether port (Need an additional patch at <http://linux.junsun.net>),
1921   USB, AC97, PCI, PCI VGA card & framebuffer console, IDE controller,
1922   PS2 keyboard, PS2 mouse, etc.
1923
1924 Support for NEC DDB Vrc-5477
1925 CONFIG_DDB5477
1926   This enables support for the R5432-based NEC DDB Vrc-5477
1927   evaluation board.
1928
1929   Features : kernel debugging, serial terminal, NFS root fs, on-board
1930   ether port (Need an additional patch at <http://linux.junsun.net>),
1931   USB, AC97, PCI, etc.
1932
1933 Support for MIPS Atlas board
1934 CONFIG_MIPS_ATLAS
1935   This enables support for the QED R5231-based MIPS Atlas evaluation
1936   board.
1937
1938 Support for MIPS Malta board
1939 CONFIG_MIPS_MALTA
1940   This enables support for the VR5000-based MIPS Malta evaluation
1941   board.
1942
1943 Support for Galileo Evaluation board or CoSine Orion
1944 CONFIG_ORION
1945   Say Y if configuring for the Galileo evaluation board
1946   or CoSine Orion.  More information is available at
1947   <http://tochna.technion.ac.il/project/linux/html/linux.html>.
1948
1949   Otherwise, say N.
1950
1951 Support for Mips Magnum 4000
1952 CONFIG_MIPS_MAGNUM_4000
1953   This is a machine with a R4000 100 MHz CPU. To compile a Linux
1954   kernel that runs on these, say Y here. For details about Linux on
1955   the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
1956   <http://oss.sgi.com/mips>.
1957
1958 Enable Qtronix 990P Keyboard Support
1959 CONFIG_QTRONIX_KEYBOARD
1960   Images of Qtronix keyboards are at
1961   <http://www.qtronix.com/keyboard.html>.
1962
1963 Support for Olivetti M700
1964 CONFIG_OLIVETTI_M700
1965   This is a machine with a R4000 100 MHz CPU. To compile a Linux
1966   kernel that runs on these, say Y here. For details about Linux on
1967   the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
1968   <http://oss.sgi.com/mips>.
1969
1970 Support for SNI RM200 PCI
1971 CONFIG_SNI_RM200_PCI
1972   The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
1973   Nixdorf Informationssysteme (SNI), parent company of Pyramid
1974   Technology and now in turn merged with Fujitsu.  Say Y here to
1975   support this machine type.
1976
1977 Support for SGI IP22
1978 CONFIG_SGI_IP22
1979   This are the SGI Indy, Challenge S and Indigo2, as well as certain
1980   OEM variants like the Tandem CMN B006S. To compile a Linux kernel
1981   that runs on these, say Y here.
1982
1983 Support for SGI IP27
1984 CONFIG_SGI_IP27
1985   This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
1986   workstations.  To compile a Linux kernel that runs on these, say Y
1987   here.
1988
1989 IP27 N-Mode
1990 CONFIG_SGI_SN0_N_MODE
1991   The nodes of Origin 200, Origin 2000 and Onyx 2 systems can be
1992   configured in either N-Modes which allows for more nodes or M-Mode
1993   which allows for more memory.  Your system is most probably
1994   running in M-Mode, so you should say N here.
1995
1996 MIPS JAZZ onboard SONIC Ethernet support
1997 CONFIG_MIPS_JAZZ_SONIC
1998   This is the driver for the onboard card of MIPS Magnum 4000,
1999   Acer PICA, Olivetti M700-10 and a few other identical OEM systems.
2000
2001 MIPS JAZZ FAS216 SCSI support
2002 CONFIG_JAZZ_ESP
2003   This is the driver for the onboard SCSI host adapter of MIPS Magnum
2004   4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
2005   systems.
2006
2007 MIPS GT96100 support
2008 CONFIG_MIPS_GT96100
2009   Say Y here to support the Galileo Technology GT96100 communications
2010   controller card.  There is a web page at <http://www.galileot.com/>.
2011
2012 MIPS GT96100 Ethernet support
2013 CONFIG_MIPS_GT96100ETH
2014   Say Y here to support the Ethernet subsystem on your GT96100 card.
2015
2016 Zalon SCSI support
2017 CONFIG_SCSI_ZALON
2018   The Zalon is an interface chip that sits between the PA-RISC
2019   processor and the NCR 53c720 SCSI controller on K-series PA-RISC
2020   boards (these are used, among other places, on some HP 780
2021   workstations).  Say Y here to make sure it gets initialized
2022   correctly before the Linux kernel tries to talk to the controller.
2023
2024 Kernel floating-point instruction emulation
2025 CONFIG_MIPS_FPU_EMULATOR
2026   This option enables the MIPS software floatingpoint support.  Due to
2027   the way floating point works you should always enable this option
2028   unless you exactly know what you're doing.
2029
2030 SGI PROM Console Support
2031 CONFIG_SGI_PROM_CONSOLE
2032   Say Y here to set up the boot console on serial port 0.
2033
2034 DZ11 Serial Support
2035 CONFIG_DZ
2036   DZ11-family serial controllers for VAXstations, including the
2037   DC7085, M7814, and M7819.
2038
2039
2040 TURBOchannel support
2041 CONFIG_TC
2042   TurboChannel is a DEC (now Compaq) bus for Alpha and MIPS processors.
2043   Documentation on writing device drivers for TurboChannel is available at:
2044   <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
2045
2046 Z85C30 Serial Support
2047 CONFIG_ZS
2048   Documentation on the Zilog 85C350 serial communications controller
2049   is downloadable at <http://www.zilog.com/pdfs/serial/z85c30.pdf>.
2050
2051 PCMCIA SCSI adapter support
2052 CONFIG_SCSI_PCMCIA
2053   Say Y here if you intend to attach a PCMCIA or CardBus card to your
2054   computer which acts as a SCSI host adapter. These are credit card
2055   size devices often used with laptops.
2056
2057   Note that the answer to this question won't directly affect the
2058   kernel: saying N will just cause the configurator to skip all
2059   the questions PCMCIA SCSI host adapters.
2060
2061 Adaptec APA1480 CardBus support
2062 CONFIG_PCMCIA_APA1480
2063   Say Y here if you intend to attach this type of CardBus SCSI host
2064   adapter to your computer.
2065
2066   This driver is also available as a module called apa1480_cb.o ( =
2067   code which can be inserted in and removed from the running kernel
2068   whenever you want). If you want to compile it as a module, say M
2069   here and read <file:Documentation/modules.txt>.
2070
2071 NinjaSCSI-3 / NinjaSCSI-32Bi (16bit) PCMCIA support
2072 CONFIG_PCMCIA_NINJA_SCSI
2073   If you intend to attach this type of PCMCIA SCSI host adapter to
2074   your computer, say Y here and read
2075   <file:Documentation/README.nsp_cs>.
2076
2077   This driver is also available as a module called nsp_cs.o ( =
2078   code which can be inserted in and removed from the running kernel
2079   whenever you want). If you want to compile it as a module, say M
2080   here and read <file:Documentation/modules.txt>.
2081
2082 Adaptec AHA152X PCMCIA support
2083 CONFIG_PCMCIA_AHA152X
2084   Say Y here if you intend to attach this type of PCMCIA SCSI host
2085   adapter to your computer.
2086
2087   This driver is also available as a module called aha152x_cs.o ( =
2088   code which can be inserted in and removed from the running kernel
2089   whenever you want). If you want to compile it as a module, say M
2090   here and read <file:Documentation/modules.txt>.
2091
2092 Qlogic PCMCIA support
2093 CONFIG_PCMCIA_QLOGIC
2094   Say Y here if you intend to attach this type of PCMCIA SCSI host
2095   adapter to your computer.
2096
2097   This driver is also available as a module called qlogic_cs.o ( =
2098   code which can be inserted in and removed from the running kernel
2099   whenever you want).  If you want to compile it as a module, say M
2100   here and read <file:Documentation/modules.txt>.
2101
2102 Future Domain PCMCIA support
2103 CONFIG_PCMCIA_FDOMAIN
2104   Say Y here if you intend to attach this type of PCMCIA SCSI host
2105   adapter to your computer.
2106
2107   This driver is also available as a module called fdomain_cs.o ( =
2108   code which can be inserted in and removed from the running kernel
2109   whenever you want).  If you want to compile it as a module, say M
2110   here and read <file:Documentation/modules.txt>.
2111
2112 # Choice: mipstype
2113 CPU type
2114 CONFIG_CPU_R3000
2115   Please make sure to pick the right CPU type. Linux/MIPS is not
2116   designed to be generic, i.e. Kernels compiled for R3000 CPUs will
2117   *not* work on R4000 machines and vice versa.  However, since most
2118   of the supported machines have an R4000 (or similar) CPU, R4x00
2119   might be a safe bet.  If the resulting kernel does not work,
2120   try to recompile with R3000.
2121
2122   R3000    MIPS Technologies R3000-series processors,
2123            including the 3041, 3051, and 3081.
2124
2125   R6000    MIPS Technologies R6000-series processors,
2126            including the 64474, 64475, 64574 and 64575.
2127
2128   R4300    MIPS Technologies R4300-series processors.
2129
2130   R4x00    MIPS Technologies R4000-series processors other than 4300,
2131            including the 4640, 4650, and 4700.
2132
2133   R5000    MIPS Technologies R5000-series processors other than the
2134            Nevada.
2135
2136   R52xx    MIPS Technologies R52xx-series ("Nevada") processors.
2137
2138   R10000   MIPS Technologies R10000-series processors.
2139
2140 R6000
2141 CONFIG_CPU_R6000
2142   MIPS Technologies R6000-series processors, including the 64474,
2143   64475, 64574 and 64575.
2144
2145 R4300
2146 CONFIG_CPU_R4300
2147   MIPS Technologies R4300-series processors.
2148
2149 R4x00
2150 CONFIG_CPU_R4X00
2151   MIPS Technologies R4000-series processors other than 4300, including
2152   the 4640, 4650, and 4700.
2153
2154 R5000
2155 CONFIG_CPU_R5000
2156   MIPS Technologies R5000-series processors other than the Nevada.
2157
2158 R52x0
2159 CONFIG_CPU_NEVADA
2160   MIPS Technologies R52x0-series ("Nevada") processors.
2161
2162 R8000
2163 CONFIG_CPU_R8000
2164   MIPS Technologies R8000-series processors.
2165
2166 R10000
2167 CONFIG_CPU_R10000
2168   MIPS Technologies R10000-series processors.
2169
2170 Discontiguous Memory Support
2171 CONFIG_DISCONTIGMEM
2172   Say Y to upport efficient handling of discontiguous physical memory,
2173   for architectures which are either NUMA (Non-Uniform Memory Access)
2174   or have huge holes in the physical address space for other reasons.
2175   See <file:Documentation/vm/numa> for more.
2176
2177 Mapped kernel support
2178 CONFIG_MAPPED_KERNEL
2179   Change the way a Linux kernel is loaded unto memory on a MIPS64
2180   machine.  This is required in order to support text replication and
2181   NUMA.  If you need to undersatand it, read the source code.
2182
2183 Kernel text replication support
2184 CONFIG_REPLICATE_KTEXT
2185   Say Y here to enable replicating the kernel text across multiple
2186   nodes in a NUMA cluster.  This trades memory for speed.
2187
2188 Exception handler replication support
2189 CONFIG_REPLICATE_EXHANDLERS
2190   Say Y here to enable replicating the kernel exception handlers
2191   across multiple nodes in a NUMA cluster. This trades memory for
2192   speed.
2193
2194 NUMA support?
2195 CONFIG_NUMA
2196   Say Y to compile the kernel to support NUMA (Non-Uniform Memory
2197   Access).  This option is for configuring high-end multiprocessor
2198   server machines.  If in doubt, say N.
2199
2200 CPU type
2201 CONFIG_CPU_VR41XX
2202   The options selects support for the NEC VR41xx series of processors.
2203   Only choose this option if you have one of these processors as a
2204   kernel built with this option will not run on any other type of
2205   processor or vice versa.
2206
2207 CPU feature configuration
2208 CONFIG_CPU_ADVANCED
2209   Saying yes here allows you to select support for various features
2210   your CPU may or may not have.  Most people should say N here.
2211
2212 ll/sc Instructions available
2213 CONFIG_CPU_HAS_LLSC
2214   MIPS R4000 series and later provide the Load Linked (ll)
2215   and Store Conditional (sc) instructions. More information is
2216   available at <http://www.go-ecs.com/mips/miptek1.htm>.
2217
2218   Say Y here if your CPU has the ll and sc instructions.  Say Y here
2219   for better performance, N if you don't know.  You must say Y here
2220   for multiprocessor machines.
2221
2222 lld and scd instructions
2223 CONFIG_CPU_HAS_LLDSCD
2224   Say Y here if your CPU has the lld and scd instructions, the 64-bit
2225   equivalents of ll and sc.  Say Y here for better performance, N if
2226   you don't know.  You must say Y here for multiprocessor machines.
2227
2228 Writeback Buffer available
2229 CONFIG_CPU_HAS_WB
2230   Say N here for slightly better performance.  You must say Y here for
2231   machines which require flushing of write buffers in software.  Saying
2232   Y is the safe option; N may result in kernel malfunction and crashes.
2233
2234 Support for large 64-bit configurations
2235 CONFIG_MIPS_INSANE_LARGE
2236   MIPS R10000 does support a 44 bit / 16TB address space as opposed to
2237   previous 64-bit processors which only supported 40 bit / 1TB. If you
2238   need processes of more than 1TB virtual address space, say Y here.
2239   This will result in additional memory usage, so it is not
2240   recommended for normal users.
2241
2242 Generate little endian code
2243 CONFIG_CPU_LITTLE_ENDIAN
2244   Some MIPS machines can be configured for either little or big endian
2245   byte order. These modes require different kernels. Say Y if your
2246   machine is little endian, N if it's a big endian machine.
2247
2248 Use power LED as a heartbeat
2249 CONFIG_HEARTBEAT
2250   Use the power-on LED on your machine as a load meter.  The exact
2251   behavior is platform-dependent, but normally the flash frequency is
2252   a hyperbolic function of the 5-minute load average.
2253
2254 Networking support
2255 CONFIG_NET
2256   Unless you really know what you are doing, you should say Y here.
2257   The reason is that some programs need kernel networking support even
2258   when running on a stand-alone machine that isn't connected to any
2259   other computer. If you are upgrading from an older kernel, you
2260   should consider updating your networking tools too because changes
2261   in the kernel and the tools often go hand in hand. The tools are
2262   contained in the package net-tools, the location and version number
2263   of which are given in <file:Documentation/Changes>.
2264
2265   For a general introduction to Linux networking, it is highly
2266   recommended to read the NET-3-HOWTO, available from
2267   <http://www.linuxdoc.org/docs.html#howto>.
2268
2269 Socket filtering
2270 CONFIG_FILTER
2271   The Linux Socket Filter is derived from the Berkeley Packet Filter.
2272   If you say Y here, user-space programs can attach a filter to any
2273   socket and thereby tell the kernel that it should allow or disallow
2274   certain types of data to get through the socket.  Linux Socket
2275   Filtering works on all socket types except TCP for now.  See the
2276   text file <file:Documentation/networking/filter.txt> for more
2277   information.
2278
2279   You need to say Y here if you want to use PPP packet filtering
2280   (see the CONFIG_PPP_FILTER option below).
2281
2282   If unsure, say N.
2283
2284 Network packet filtering (replaces ipchains)
2285 CONFIG_NETFILTER
2286   Netfilter is a framework for filtering and mangling network packets
2287   that pass through your Linux box.
2288
2289   The most common use of packet filtering is to run your Linux box as
2290   a firewall protecting a local network from the Internet. The type of
2291   firewall provided by this kernel support is called a "packet
2292   filter", which means that it can reject individual network packets
2293   based on type, source, destination etc. The other kind of firewall,
2294   a "proxy-based" one, is more secure but more intrusive and more
2295   bothersome to set up; it inspects the network traffic much more
2296   closely, modifies it and has knowledge about the higher level
2297   protocols, which a packet filter lacks. Moreover, proxy-based
2298   firewalls often require changes to the programs running on the local
2299   clients. Proxy-based firewalls don't need support by the kernel, but
2300   they are often combined with a packet filter, which only works if
2301   you say Y here.
2302
2303   You should also say Y here if you intend to use your Linux box as
2304   the gateway to the Internet for a local network of machines without
2305   globally valid IP addresses. This is called "masquerading": if one
2306   of the computers on your local network wants to send something to
2307   the outside, your box can "masquerade" as that computer, i.e. it
2308   forwards the traffic to the intended outside destination, but
2309   modifies the packets to make it look like they came from the
2310   firewall box itself. It works both ways: if the outside host
2311   replies, the Linux box will silently forward the traffic to the
2312   correct local computer. This way, the computers on your local net
2313   are completely invisible to the outside world, even though they can
2314   reach the outside and can receive replies. It is even possible to
2315   run globally visible servers from within a masqueraded local network
2316   using a mechanism called portforwarding. Masquerading is also often
2317   called NAT (Network Address Translation).
2318
2319   Another use of Netfilter is in transparent proxying: if a machine on
2320   the local network tries to connect to an outside host, your Linux
2321   box can transparently forward the traffic to a local server,
2322   typically a caching proxy server.
2323
2324   Various modules exist for netfilter which replace the previous
2325   masquerading (ipmasqadm), packet filtering (ipchains), transparent
2326   proxying, and portforwarding mechanisms. Please see
2327   <file:Documentation/Changes> under "iptables" for the location of
2328   these packages.
2329
2330   Make sure to say N to "Fast switching" below if you intend to say Y
2331   here, as Fast switching currently bypasses netfilter.
2332
2333   Chances are that you should say Y here if you compile a kernel which
2334   will run as a router and N for regular hosts. If unsure, say N.
2335
2336 Network packet filtering debugging
2337 CONFIG_NETFILTER_DEBUG
2338   You can say Y here if you want to get additional messages useful in
2339   debugging the netfilter code.
2340
2341 Connection tracking (required for masq/NAT)
2342 CONFIG_IP_NF_CONNTRACK
2343   Connection tracking keeps a record of what packets have passed
2344   through your machine, in order to figure out how they are related
2345   into connections.
2346
2347   This is required to do Masquerading or other kinds of Network
2348   Address Translation (except for Fast NAT).  It can also be used to
2349   enhance packet filtering (see `Connection state match support'
2350   below).
2351
2352   If you want to compile it as a module, say M here and read
2353   <file:Documentation/modules.txt>.  If unsure, say `N'.
2354
2355 IRC Send/Chat support
2356 CONFIG_IP_NF_IRC
2357   There is a commonly-used extension to IRC called
2358   Direct Client-to-Client Protocol (DCC).  This enables users to send
2359   files to each other, and also chat to each other without the need
2360   of a server.  DCC Sending is used anywhere you send files over IRC,
2361   and DCC Chat is most commonly used by Eggdrop bots.  If you are
2362   using NAT, this extension will enable you to send files and initiate
2363   chats.  Note that you do NOT need this extension to get files or
2364   have others initiate chats, or everything else in IRC.
2365
2366   If you want to compile it as a module, say 'M' here and read
2367   Documentation/modules.txt.  If unsure, say 'N'.
2368
2369 FTP protocol support
2370 CONFIG_IP_NF_FTP
2371   Tracking FTP connections is problematic: special helpers are
2372   required for tracking them, and doing masquerading and other forms
2373   of Network Address Translation on them.
2374
2375   If you want to compile it as a module, say M here and read
2376   <file:Documentation/modules.txt>.  If unsure, say `Y'.
2377
2378 User space queueing via NETLINK
2379 CONFIG_IP_NF_QUEUE
2380   Netfilter has the ability to queue packets to user space: the
2381   netlink device can be used to access them using this driver.
2382
2383   If you want to compile it as a module, say M here and read
2384   <file:Documentation/modules.txt>.  If unsure, say `N'.
2385
2386 IP tables support (required for filtering/masq/NAT)
2387 CONFIG_IP_NF_IPTABLES
2388   iptables is a general, extensible packet identification framework.
2389   The packet filtering and full NAT (masquerading, port forwarding,
2390   etc) subsystems now use this: say `Y' or `M' here if you want to use
2391   either of those.
2392
2393   If you want to compile it as a module, say M here and read
2394   <file:Documentation/modules.txt>.  If unsure, say `N'.
2395
2396 limit match support
2397 CONFIG_IP_NF_MATCH_LIMIT
2398   limit matching allows you to control the rate at which a rule can be
2399   matched: mainly useful in combination with the LOG target ("LOG
2400   target support", below) and to avoid some Denial of Service attacks.
2401
2402   If you want to compile it as a module, say M here and read
2403   <file:Documentation/modules.txt>.  If unsure, say `N'.
2404
2405 MAC address match support
2406 CONFIG_IP_NF_MATCH_MAC
2407   MAC matching allows you to match packets based on the source
2408   Ethernet address of the packet.
2409
2410   If you want to compile it as a module, say M here and read
2411   <file:Documentation/modules.txt>.  If unsure, say `N'.
2412
2413 Netfilter MARK match support
2414 CONFIG_IP_NF_MATCH_MARK
2415   Netfilter mark matching allows you to match packets based on the
2416   `nfmark' value in the packet.  This can be set by the MARK target
2417   (see below).
2418
2419   If you want to compile it as a module, say M here and read
2420   <file:Documentation/modules.txt>.  If unsure, say `N'.
2421
2422 Multiple port match support
2423 CONFIG_IP_NF_MATCH_MULTIPORT
2424   Multiport matching allows you to match TCP or UDP packets based on
2425   a series of source or destination ports: normally a rule can only
2426   match a single range of ports.
2427
2428   If you want to compile it as a module, say M here and read
2429   <file:Documentation/modules.txt>.  If unsure, say `N'.
2430
2431 TTL match support
2432 CONFIG_IP_NF_MATCH_TTL
2433   This adds CONFIG_IP_NF_MATCH_TTL option, which enabled the user
2434   to match packets by their TTL value.
2435
2436   If you want to compile it as a module, say M here and read
2437   Documentation/modules.txt.  If unsure, say `N'.
2438
2439 length match support
2440 CONFIG_IP_NF_MATCH_LENGTH
2441   This option allows you to match the length of a packet against a
2442   specific value or range of values.
2443
2444   If you want to compile it as a module, say M here and read
2445   <file:Documentation/modules.txt>.  If unsure, say `N'.
2446
2447 TOS match support
2448 CONFIG_IP_NF_MATCH_TOS
2449   TOS matching allows you to match packets based on the Type Of
2450   Service fields of the IP packet.
2451
2452   If you want to compile it as a module, say M here and read
2453   <file:Documentation/modules.txt>.  If unsure, say `N'.
2454
2455 Connection state match support
2456 CONFIG_IP_NF_MATCH_STATE
2457   Connection state matching allows you to match packets based on their
2458   relationship to a tracked connection (ie. previous packets).  This
2459   is a powerful tool for packet classification.
2460
2461   If you want to compile it as a module, say M here and read
2462   <file:Documentation/modules.txt>.  If unsure, say `N'.
2463
2464 Unclean match support
2465 CONFIG_IP_NF_MATCH_UNCLEAN
2466   Unclean packet matching matches any strange or invalid packets, by
2467   looking at a series of fields in the IP, TCP, UDP and ICMP headers.
2468
2469   If you want to compile it as a module, say M here and read
2470   <file:Documentation/modules.txt>.  If unsure, say `N'.
2471
2472 Owner match support
2473 CONFIG_IP_NF_MATCH_OWNER
2474   Packet owner matching allows you to match locally-generated packets
2475   based on who created them: the user, group, process or session.
2476
2477   If you want to compile it as a module, say M here and read
2478   <file:Documentation/modules.txt>.  If unsure, say `N'.
2479
2480 Packet filtering
2481 CONFIG_IP_NF_FILTER
2482   Packet filtering defines a table `filter', which has a series of
2483   rules for simple packet filtering at local input, forwarding and
2484   local output.  See the man page for iptables(8).
2485
2486   If you want to compile it as a module, say M here and read
2487   <file:Documentation/modules.txt>.  If unsure, say `N'.
2488
2489 REJECT target support
2490 CONFIG_IP_NF_TARGET_REJECT
2491   The REJECT target allows a filtering rule to specify that an ICMP
2492   error should be issued in response to an incoming packet, rather
2493   than silently being dropped.
2494
2495   If you want to compile it as a module, say M here and read
2496   <file:Documentation/modules.txt>.  If unsure, say `N'.
2497
2498 MIRROR target support
2499 CONFIG_IP_NF_TARGET_MIRROR
2500   The MIRROR target allows a filtering rule to specify that an
2501   incoming packet should be bounced back to the sender.
2502
2503   If you want to compile it as a module, say M here and read
2504   <file:Documentation/modules.txt>.  If unsure, say `N'.
2505
2506 Full NAT (Network Address Translation)
2507 CONFIG_IP_NF_NAT
2508   The Full NAT option allows masquerading, port forwarding and other
2509   forms of full Network Address Port Translation.  It is controlled by
2510   the `nat' table in iptables: see the man page for iptables(8).
2511
2512   If you want to compile it as a module, say M here and read
2513   <file:Documentation/modules.txt>.  If unsure, say `N'.
2514
2515 MASQUERADE target support
2516 CONFIG_IP_NF_TARGET_MASQUERADE
2517   Masquerading is a special case of NAT: all outgoing connections are
2518   changed to seem to come from a particular interface's address, and
2519   if the interface goes down, those connections are lost.  This is
2520   only useful for dialup accounts with dynamic IP address (ie. your IP
2521   address will be different on next dialup).
2522
2523   If you want to compile it as a module, say M here and read
2524   <file:Documentation/modules.txt>.  If unsure, say `N'.
2525
2526 Basic SNMP-ALG support
2527 CONFIG_IP_NF_NAT_SNMP_BASIC
2528
2529   This module implements an Application Layer Gateway (ALG) for
2530   SNMP payloads.  In conjunction with NAT, it allows a network
2531   management system to access multiple private networks with
2532   conflicting addresses.  It works by modifying IP addresses
2533   inside SNMP payloads to match IP-layer NAT mapping.
2534
2535   This is the "basic" form of SNMP-ALG, as described in RFC 2962
2536
2537   If you want to compile it as a module, say M here and read
2538   <file:Documentation/modules.txt>.  If unsure, say `N'.
2539
2540 REDIRECT target support
2541 CONFIG_IP_NF_TARGET_REDIRECT
2542   REDIRECT is a special case of NAT: all incoming connections are
2543   mapped onto the incoming interface's address, causing the packets to
2544   come to the local machine instead of passing through.  This is
2545   useful for transparent proxies.
2546
2547   If you want to compile it as a module, say M here and read
2548   <file:Documentation/modules.txt>.  If unsure, say `N'.
2549
2550 Packet mangling
2551 CONFIG_IP_NF_MANGLE
2552   This option adds a `mangle' table to iptables: see the man page for
2553   iptables(8).  This table is used for various packet alterations
2554   which can effect how the packet is routed.
2555
2556   If you want to compile it as a module, say M here and read
2557   <file:Documentation/modules.txt>.  If unsure, say `N'.
2558
2559 TOS target support
2560 CONFIG_IP_NF_TARGET_TOS
2561   This option adds a `TOS' target, which allows you to create rules in
2562   the `mangle' table which alter the Type Of Service field of an IP
2563   packet prior to routing.
2564
2565   If you want to compile it as a module, say M here and read
2566   <file:Documentation/modules.txt>.  If unsure, say `N'.
2567
2568 MARK target support
2569 CONFIG_IP_NF_TARGET_MARK
2570   This option adds a `MARK' target, which allows you to create rules
2571   in the `mangle' table which alter the netfilter mark (nfmark) field
2572   associated with the packet prior to routing. This can change
2573   the routing method (see `Use netfilter MARK value as routing
2574   key') and can also be used by other subsystems to change their
2575   behavior.
2576
2577   If you want to compile it as a module, say M here and read
2578   <file:Documentation/modules.txt>.  If unsure, say `N'.
2579
2580 TCPMSS target support
2581 CONFIG_IP_NF_TARGET_TCPMSS
2582   This option adds a `TCPMSS' target, which allows you to alter the
2583   MSS value of TCP SYN packets, to control the maximum size for that
2584   connection (usually limiting it to your outgoing interface's MTU
2585   minus 40).
2586
2587   This is used to overcome criminally braindead ISPs or servers which
2588   block ICMP Fragmentation Needed packets.  The symptoms of this
2589   problem are that everything works fine from your Linux
2590   firewall/router, but machines behind it can never exchange large
2591   packets:
2592         1) Web browsers connect, then hang with no data received.
2593         2) Small mail works fine, but large emails hang.
2594         3) ssh works fine, but scp hangs after initial handshaking.
2595
2596   Workaround: activate this option and add a rule to your firewall
2597   configuration like:
2598
2599         iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN \
2600                  -j TCPMSS --clamp-mss-to-pmtu
2601
2602   If you want to compile it as a module, say M here and read
2603   <file:Documentation/modules.txt>.  If unsure, say `N'.
2604
2605 TCPMSS match support
2606 CONFIG_IP_NF_MATCH_TCPMSS
2607   This option adds a `tcpmss' match, which allows you to examine the
2608   MSS value of TCP SYN packets, which control the maximum packet size
2609   for that connection.
2610
2611   If you want to compile it as a module, say M here and read
2612   <file:Documentation/modules.txt>.  If unsure, say `N'.
2613
2614 LOG target support
2615 CONFIG_IP_NF_TARGET_LOG
2616   This option adds a `LOG' target, which allows you to create rules in
2617   any iptables table which records the packet header to the syslog.
2618
2619   If you want to compile it as a module, say M here and read
2620   <file:Documentation/modules.txt>.  If unsure, say `N'.
2621
2622 ipchains (2.2-style) support
2623 CONFIG_IP_NF_COMPAT_IPCHAINS
2624   This option places ipchains (with masquerading and redirection
2625   support) back into the kernel, using the new netfilter
2626   infrastructure.  It is not recommended for new installations (see
2627   `Packet filtering').  With this enabled, you should be able to use
2628   the ipchains tool exactly as in 2.2 kernels.
2629
2630   If you want to compile it as a module, say M here and read
2631   <file:Documentation/modules.txt>.  If unsure, say `N'.
2632
2633 ipfwadm (2.0-style) support
2634 CONFIG_IP_NF_COMPAT_IPFWADM
2635   This option places ipfwadm (with masquerading and redirection
2636   support) back into the kernel, using the new netfilter
2637   infrastructure.  It is not recommended for new installations (see
2638   `Packet filtering').  With this enabled, you should be able to use
2639   the ipfwadm tool exactly as in 2.0 kernels.
2640
2641   If you want to compile it as a module, say M here and read
2642   <file:Documentation/modules.txt>.  If unsure, say `N'.
2643
2644 MAC address match support
2645 CONFIG_IP6_NF_MATCH_MAC
2646   mac matching allows you to match packets based on the source
2647   Ethernet address of the packet.
2648
2649   If you want to compile it as a module, say M here and read
2650   <file:Documentation/modules.txt>.  If unsure, say `N'.
2651
2652 Netfilter MARK match support
2653 CONFIG_IP6_NF_MATCH_MARK
2654   Netfilter mark matching allows you to match packets based on the
2655   `nfmark' value in the packet.  This can be set by the MARK target
2656   (see below).
2657
2658   If you want to compile it as a module, say M here and read
2659   <file:Documentation/modules.txt>.  If unsure, say `N'.
2660
2661 Packet filtering
2662 CONFIG_IP6_NF_FILTER
2663   Packet filtering defines a table `filter', which has a series of
2664   rules for simple packet filtering at local input, forwarding and
2665   local output.  See the man page for iptables(8).
2666
2667   If you want to compile it as a module, say M here and read
2668   <file:Documentation/modules.txt>.  If unsure, say `N'.
2669
2670 Packet mangling
2671 CONFIG_IP6_NF_MANGLE
2672   This option adds a `mangle' table to iptables: see the man page for
2673   iptables(8).  This table is used for various packet alterations
2674   which can effect how the packet is routed.
2675
2676   If you want to compile it as a module, say M here and read
2677   <file:Documentation/modules.txt>.  If unsure, say `N'.
2678
2679 MARK target support
2680 CONFIG_IP6_NF_TARGET_MARK
2681   This option adds a `MARK' target, which allows you to create rules
2682   in the `mangle' table which alter the netfilter mark (nfmark) field
2683   associated with the packet packet prior to routing. This can change
2684   the routing method (see `Use netfilter MARK value as routing
2685   key') and can also be used by other subsystems to change their
2686   behavior.
2687
2688   If you want to compile it as a module, say M here and read
2689   <file:Documentation/modules.txt>.  If unsure, say `N'.
2690
2691 TCP Explicit Congestion Notification support
2692 CONFIG_INET_ECN
2693   Explicit Congestion Notification (ECN) allows routers to notify
2694   clients about network congestion, resulting in fewer dropped packets
2695   and increased network performance.  This option adds ECN support to
2696   the Linux kernel, as well as a sysctl (/proc/sys/net/ipv4/tcp_ecn)
2697   which allows ECN support to be disabled at runtime.
2698
2699   Note that, on the Internet, there are many broken firewalls which
2700   refuse connections from ECN-enabled machines, and it may be a while
2701   before these firewalls are fixed.  Until then, to access a site
2702   behind such a firewall (some of which are major sites, at the time
2703   of this writing) you will have to disable this option, either by
2704   saying N now or by using the sysctl.
2705
2706   If in doubt, say N.
2707
2708 IPv6 tables support (required for filtering/masq/NAT)
2709 CONFIG_IP6_NF_IPTABLES
2710   ip6tables is a general, extensible packet identification framework.
2711   Currently only the packet filtering and packet mangling subsystem
2712   for IPv6 use this, but connection tracking is going to follow.
2713   Say 'Y' or 'M' here if you want to use either of those.
2714
2715   If you want to compile it as a module, say M here and read
2716   <file:Documentation/modules.txt>.  If unsure, say `N'.
2717
2718 IPv6 limit match support
2719 CONFIG_IP6_NF_MATCH_LIMIT
2720   limit matching allows you to control the rate at which a rule can be
2721   matched: mainly useful in combination with the LOG target ("LOG
2722   target support", below) and to avoid some Denial of Service attacks.
2723
2724   If you want to compile it as a module, say M here and read
2725   <file:Documentation/modules.txt>.  If unsure, say `N'.
2726
2727 SYN flood protection
2728 CONFIG_SYN_COOKIES
2729   Normal TCP/IP networking is open to an attack known as "SYN
2730   flooding". This denial-of-service attack prevents legitimate remote
2731   users from being able to connect to your computer during an ongoing
2732   attack and requires very little work from the attacker, who can
2733   operate from anywhere on the Internet.
2734
2735   SYN cookies provide protection against this type of attack. If you
2736   say Y here, the TCP/IP stack will use a cryptographic challenge
2737   protocol known as "SYN cookies" to enable legitimate users to
2738   continue to connect, even when your machine is under attack. There
2739   is no need for the legitimate users to change their TCP/IP software;
2740   SYN cookies work transparently to them. For technical information
2741   about SYN cookies, check out <http://cr.yp.to/syncookies.html>.
2742
2743   If you are SYN flooded, the source address reported by the kernel is
2744   likely to have been forged by the attacker; it is only reported as
2745   an aid in tracing the packets to their actual source and should not
2746   be taken as absolute truth.
2747
2748   SYN cookies may prevent correct error reporting on clients when the
2749   server is really overloaded. If this happens frequently better turn
2750   them off.
2751
2752   If you say Y here, note that SYN cookies aren't enabled by default;
2753   you can enable them by saying Y to "/proc file system support" and
2754   "Sysctl support" below and executing the command
2755
2756     echo 1 >/proc/sys/net/ipv4/tcp_syncookies
2757
2758   at boot time after the /proc file system has been mounted.
2759
2760   If unsure, say N.
2761
2762 HCI EMU (virtual device) driver
2763 CONFIG_BLUEZ_HCIEMU
2764   Bluetooth Virtual HCI device driver.
2765   This driver is required if you want to use HCI Emulation software.
2766
2767   Say Y here to compile support for Virtual HCI devices into the
2768   kernel or say M to compile it as module (hci_usb.o).
2769
2770 # Choice: alphatype
2771 Alpha system type
2772 CONFIG_ALPHA_GENERIC
2773   This is the system type of your hardware.  A "generic" kernel will
2774   run on any supported Alpha system. However, if you configure a
2775   kernel for your specific system, it will be faster and smaller.
2776
2777   To find out what type of Alpha system you have, you may want to
2778   check out the Linux/Alpha FAQ, accessible on the WWW from
2779   <http://www.alphalinux.org>. In summary:
2780
2781   Alcor/Alpha-XLT     AS 600
2782   Alpha-XL            XL-233, XL-266
2783   AlphaBook1          Alpha laptop
2784   Avanti              AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
2785   Cabriolet           AlphaPC64, AlphaPCI64
2786   DP264               DP264
2787   EB164               EB164 21164 evaluation board
2788   EB64+               EB64+ 21064 evaluation board
2789   EB66                EB66 21066 evaluation board
2790   EB66+               EB66+ 21066 evaluation board
2791   Jensen              DECpc 150, DEC 2000 model 300,
2792                       DEC 2000 model 500
2793   LX164               AlphaPC164-LX
2794   Miata               Personal Workstation 433a, 433au, 500a,
2795                       500au, 600a, or 600au
2796   Mikasa              AS 1000
2797   Noname              AXPpci33, UDB (Multia)
2798   Noritake            AS 1000A, AS 600A, AS 800
2799   PC164               AlphaPC164
2800   Rawhide             AS 1200, AS 4000, AS 4100
2801   Ruffian             RPX164-2, AlphaPC164-UX, AlphaPC164-BX
2802   SX164               AlphaPC164-SX
2803   Sable               AS 2000, AS 2100
2804   Shark               DS 20L
2805   Takara              Takara
2806   Titan               Privateer
2807   Wildfire            AlphaServer GS 40/80/160/320
2808
2809   If you don't know what to do, choose "generic".
2810
2811 # Most of the information on these variants is from
2812 # <http://www.alphalinux.org/docs/alpha-howto.html>
2813 Alcor/Alpha-XLT
2814 CONFIG_ALPHA_ALCOR
2815   For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
2816   slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
2817   Address, CIA) - a 383 pin plastic PGA).  It provides a DRAM
2818   controller (256-bit memory bus) and a PCI interface.  It also does
2819   all the work required to support an external Bcache and to maintain
2820   memory coherence when a PCI device DMAs into (or out of) memory.
2821
2822 Alpha-XL
2823 CONFIG_ALPHA_XL
2824   XL-233 and XL-266-based Alpha systems.
2825
2826 AlphaBook1
2827 CONFIG_ALPHA_BOOK1
2828   Dec AlphaBook1/Burns Alpha-based laptops.
2829
2830 Avanti
2831 CONFIG_ALPHA_AVANTI
2832   Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
2833   Alphas. Info at
2834   <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
2835
2836 Cabriolet
2837 CONFIG_ALPHA_CABRIOLET
2838   Cabriolet AlphaPC64, AlphaPCI64 systems.  Derived from EB64+ but now
2839   baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
2840   slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
2841   Bcache SIMMs.  Requires power supply with 3.3V output.
2842
2843 DP264
2844 CONFIG_ALPHA_DP264
2845   Various 21264 systems with the tsunami core logic chipset.
2846   API Networks: 264DP, UP2000(+), CS20;
2847   Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
2848
2849 EB164
2850 CONFIG_ALPHA_EB164
2851   EB164 21164 evaluation board from DEC.  Uses 21164 and ALCOR.  Has
2852   ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
2853   shared with an ISA slot) and 2 32-bit PCI slots.  Uses plus-in
2854   Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
2855   MOUSE (PS2 style), RTC/NVRAM.  Boot ROM is Flash.  PC-AT-sized
2856   motherboard.  Requires power supply with 3.3V output.
2857
2858 EB64+
2859 CONFIG_ALPHA_EB64P
2860   Uses 21064 or 21064A and APECs.  Has ISA and PCI expansion (3 ISA,
2861   2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
2862   ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
2863   (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
2864   SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM.  PC-AT size.
2865   Runs from standard PC power supply.
2866
2867 EB66
2868 CONFIG_ALPHA_EB66