058f7bbec918aeba2283e7ee677fca44b46c38bf
[linux-flexiantxendom0-3.2.10.git] / arch / alpha / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5 config ALPHA
6         bool
7         default y
8         help
9           The Alpha is a 64-bit general-purpose processor designed and
10           marketed by the Digital Equipment Corporation of blessed memory,
11           now Hewlett-Packard.  The Alpha Linux project has a home page at
12           <http://www.alphalinux.org/>.
13
14 config MMU
15         bool
16         default y
17
18 config UID16
19         bool
20
21 config RWSEM_GENERIC_SPINLOCK
22         bool
23
24 config RWSEM_XCHGADD_ALGORITHM
25         bool
26         default y
27
28 config GENERIC_ISA_DMA
29         bool
30         default y
31
32 source "init/Kconfig"
33
34
35 menu "System setup"
36
37 choice
38         prompt "Alpha system type"
39         default ALPHA_GENERIC
40         ---help---
41           This is the system type of your hardware.  A "generic" kernel will
42           run on any supported Alpha system. However, if you configure a
43           kernel for your specific system, it will be faster and smaller.
44
45           To find out what type of Alpha system you have, you may want to
46           check out the Linux/Alpha FAQ, accessible on the WWW from
47           <http://www.alphalinux.org/>. In summary:
48
49           Alcor/Alpha-XLT     AS 600
50           Alpha-XL            XL-233, XL-266
51           AlphaBook1          Alpha laptop
52           Avanti              AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
53           Cabriolet           AlphaPC64, AlphaPCI64
54           DP264               DP264
55           EB164               EB164 21164 evaluation board
56           EB64+               EB64+ 21064 evaluation board
57           EB66                EB66 21066 evaluation board
58           EB66+               EB66+ 21066 evaluation board
59           Jensen              DECpc 150, DEC 2000 model 300,
60           DEC 2000 model 500
61           LX164               AlphaPC164-LX
62           Lynx                AS 2100A
63           Miata               Personal Workstation 433a, 433au, 500a,
64           500au, 600a, or 600au
65           Marvel              AlphaServer ES47 / ES80 / GS1280
66           Mikasa              AS 1000
67           Noname              AXPpci33, UDB (Multia)
68           Noritake            AS 1000A, AS 600A, AS 800
69           PC164               AlphaPC164
70           Rawhide             AS 1200, AS 4000, AS 4100
71           Ruffian             RPX164-2, AlphaPC164-UX, AlphaPC164-BX
72           SX164               AlphaPC164-SX
73           Sable               AS 2000, AS 2100
74           Shark               DS 20L
75           Takara              Takara
76           Titan               AlphaServer ES45 / DS25
77           Wildfire            AlphaServer GS 40/80/160/320
78
79           If you don't know what to do, choose "generic".
80
81 config ALPHA_GENERIC
82         bool "Generic"
83         help
84           A generic kernel will run on all supported Alpha hardware.
85
86 config ALPHA_ALCOR
87         bool "Alcor/Alpha-XLT"
88         help
89           For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
90           slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
91           Address, CIA) - a 383 pin plastic PGA).  It provides a DRAM
92           controller (256-bit memory bus) and a PCI interface.  It also does
93           all the work required to support an external Bcache and to maintain
94           memory coherence when a PCI device DMAs into (or out of) memory.
95
96 config ALPHA_XL
97         bool "Alpha-XL"
98         help
99           XL-233 and XL-266-based Alpha systems.
100
101 config ALPHA_BOOK1
102         bool "AlphaBook1"
103         help
104           Dec AlphaBook1/Burns Alpha-based laptops.
105
106 config ALPHA_AVANTI_CH
107         bool "Avanti"
108
109 config ALPHA_CABRIOLET
110         bool "Cabriolet"
111         help
112           Cabriolet AlphaPC64, AlphaPCI64 systems.  Derived from EB64+ but now
113           baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
114           slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
115           Bcache SIMMs.  Requires power supply with 3.3V output.
116
117 config ALPHA_DP264
118         bool "DP264"
119         help
120           Various 21264 systems with the tsunami core logic chipset.
121           API Networks: 264DP, UP2000(+), CS20;
122           Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
123
124 config ALPHA_EB164
125         bool "EB164"
126         help
127           EB164 21164 evaluation board from DEC.  Uses 21164 and ALCOR.  Has
128           ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
129           shared with an ISA slot) and 2 32-bit PCI slots.  Uses plus-in
130           Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
131           MOUSE (PS2 style), RTC/NVRAM.  Boot ROM is Flash.  PC-AT-sized
132           motherboard.  Requires power supply with 3.3V output.
133
134 config ALPHA_EB64P_CH
135         bool "EB64+"
136
137 config ALPHA_EB66
138         bool "EB66"
139         help
140           A Digital DS group board.  Uses 21066 or 21066A.  I/O sub-system is
141           identical to EB64+.  Baby PC-AT size.  Runs from standard PC power
142           supply.  The EB66 schematic was published as a marketing poster
143           advertising the 21066 as "the first microprocessor in the world with
144           embedded PCI".
145
146 config ALPHA_EB66P
147         bool "EB66+"
148         help
149           Later variant of the EB66 board.
150
151 config ALPHA_EIGER
152         bool "Eiger"
153         help
154           Apparently an obscure OEM single-board computer based on the
155           Typhoon/Tsunami chipset family. Information on it is scanty.
156
157 config ALPHA_JENSEN
158         bool "Jensen"
159         help
160           DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
161           of the first-generation Alpha systems. A number of these systems
162           seem to be available on the second- hand market. The Jensen is a
163           floor-standing tower system which originally used a 150MHz 21064 It
164           used programmable logic to interface a 486 EISA I/O bridge to the
165           CPU.
166
167 config ALPHA_LX164
168         bool "LX164"
169         help
170           A technical overview of this board is available at
171           <http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
172
173 config ALPHA_LYNX
174         bool "Lynx"
175         help
176           AlphaServer 2100A-based systems.
177
178 config ALPHA_MARVEL
179         bool "Marvel"
180         help
181           AlphaServer ES47 / ES80 / GS1280 based on EV7.
182
183 config ALPHA_MIATA
184         bool "Miata"
185         help
186           The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
187           or 600au).  There is an Installation HOWTO for this hardware at
188           <http://members.brabant.chello.nl/~s.vandereijk/miata.html>.
189
190 config ALPHA_MIKASA
191         bool "Mikasa"
192         help
193           AlphaServer 1000-based Alpha systems.
194
195 config ALPHA_NAUTILUS
196         bool "Nautilus"
197         help
198           Alpha systems based on the AMD 751 & ALI 1543C chipsets.
199
200 config ALPHA_NONAME_CH
201         bool "Noname"
202
203 config ALPHA_NORITAKE
204         bool "Noritake"
205         help
206           AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
207           systems.
208
209 config ALPHA_PC164
210         bool "PC164"
211
212 config ALPHA_P2K
213         bool "Platform2000"
214
215 config ALPHA_RAWHIDE
216         bool "Rawhide"
217         help
218           AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
219           See HOWTO at
220           <http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
221
222 config ALPHA_RUFFIAN
223         bool "Ruffian"
224         help
225           Samsung APC164UX.  There is a page on known problems and workarounds
226           at <http://www.alphalinux.org/faq/FAQ-11.html>.
227
228 config ALPHA_RX164
229         bool "RX164"
230
231 config ALPHA_SX164
232         bool "SX164"
233
234 config ALPHA_SABLE
235         bool "Sable"
236         help
237           Digital AlphaServer 2000 and 2100-based systems.
238
239 config ALPHA_SHARK
240         bool "Shark"
241
242 config ALPHA_TAKARA
243         bool "Takara"
244         help
245           Alpha 11164-based OEM single-board computer.
246
247 config ALPHA_TITAN
248         bool "Titan"
249         help
250           AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
251
252 config ALPHA_WILDFIRE
253         bool "Wildfire"
254         help
255           AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
256
257 endchoice
258
259 # clear all implied options (don't want default values for those):
260 # Most of these machines have ISA slots; not exactly sure which don't,
261 # and this doesn't activate hordes of code, so do it always.
262 config ISA
263         bool
264         default y
265         help
266           Find out whether you have ISA slots on your motherboard.  ISA is the
267           name of a bus system, i.e. the way the CPU talks to the other stuff
268           inside your box.  Other bus systems are PCI, EISA, MicroChannel
269           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
270           newer boards don't support it.  If you have ISA, say Y, otherwise N.
271
272 config PCI
273         bool
274         depends on !ALPHA_JENSEN
275         default y
276         help
277           Find out whether you have a PCI motherboard. PCI is the name of a
278           bus system, i.e. the way the CPU talks to the other stuff inside
279           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
280           VESA. If you have PCI, say Y, otherwise N.
281
282           The PCI-HOWTO, available from
283           <http://www.tldp.org/docs.html#howto>, contains valuable
284           information about which PCI hardware does work under Linux and which
285           doesn't.
286
287 config PCI_DOMAINS
288         bool
289         default y
290
291 config ALPHA_CORE_AGP
292         bool
293         depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL
294         default y
295
296 config ALPHA_NONAME
297         bool
298         depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
299         default y
300         help
301           The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
302           UDB).  This design was produced by Digital's Technical OEM (TOEM)
303           group. It uses the 21066 processor running at 166MHz or 233MHz. It
304           is a baby-AT size, and runs from a standard PC power supply. It has
305           5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
306           2 versions, with either PS/2 or large DIN connectors for the
307           keyboard.
308
309 config ALPHA_EV4
310         bool
311         depends on ALPHA_JENSEN || (ALPHA_SABLE && !ALPHA_GAMMA) || ALPHA_LYNX || ALPHA_NORITAKE && !ALPHA_PRIMO || ALPHA_MIKASA && !ALPHA_PRIMO || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL || ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
312         default y if !ALPHA_LYNX
313
314 config ALPHA_LCA
315         bool
316         depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
317         default y
318
319 config ALPHA_APECS
320         bool
321         depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
322         default y
323
324 config ALPHA_EB64P
325         bool
326         depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
327         default y
328         help
329           Uses 21064 or 21064A and APECs.  Has ISA and PCI expansion (3 ISA,
330           2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
331           ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
332           (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
333           SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM.  PC-AT size.
334           Runs from standard PC power supply.
335
336 config ALPHA_EV5
337         bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
338         default y if ALPHA_RX164 || ALPHA_RAWHIDE || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_SABLE && ALPHA_GAMMA || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR
339
340 config ALPHA_EV4
341         bool
342         default y if ALPHA_LYNX && !ALPHA_EV5
343
344 config ALPHA_CIA
345         bool
346         depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR
347         default y
348
349 config ALPHA_EV56
350         bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
351         default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
352
353 config ALPHA_EV56
354         prompt "EV56 CPU (speed >= 333MHz)?"
355         depends on ALPHA_NORITAKE && ALPHA_PRIMO
356
357 config ALPHA_EV56
358         prompt "EV56 CPU (speed >= 400MHz)?"
359         depends on ALPHA_RAWHIDE
360
361 config ALPHA_PRIMO
362         bool "EV5 CPU daughtercard (model 5/xxx)?"
363         depends on ALPHA_NORITAKE || ALPHA_MIKASA
364         help
365           Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
366
367 config ALPHA_GAMMA
368         bool "EV5 CPU(s) (model 5/xxx)?"
369         depends on ALPHA_SABLE
370         help
371           Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
372
373 config ALPHA_GAMMA
374         bool
375         depends on ALPHA_LYNX
376         default y
377
378 config ALPHA_T2
379         bool
380         depends on ALPHA_SABLE || ALPHA_LYNX
381         default y
382
383 config ALPHA_PYXIS
384         bool
385         depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
386         default y
387
388 config ALPHA_EV6
389         bool
390         depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
391         default y
392
393 config ALPHA_TSUNAMI
394         bool
395         depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
396         default y
397
398 config ALPHA_EV67
399         bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
400         default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
401         help
402           Is this a machine based on the EV67 core?  If in doubt, select N here
403           and the machine will be treated as an EV6.
404
405 config ALPHA_EV7
406         bool
407         depends on ALPHA_MARVEL
408         default y
409
410 config ALPHA_MCPCIA
411         bool
412         depends on ALPHA_RAWHIDE
413         default y
414
415 config ALPHA_POLARIS
416         bool
417         depends on ALPHA_RX164
418         default y
419
420 config ALPHA_IRONGATE
421         bool
422         depends on ALPHA_NAUTILUS
423         default y
424
425 config ALPHA_AVANTI
426         bool
427         depends on ALPHA_XL || ALPHA_AVANTI_CH
428         default y
429         help
430           Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
431           Alphas. Info at
432           <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
433
434 config ALPHA_BROKEN_IRQ_MASK
435         bool
436         depends on ALPHA_GENERIC || ALPHA_PC164
437         default y
438
439 config ALPHA_SRM
440         bool "Use SRM as bootloader" if ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_NAUTILUS || ALPHA_NONAME
441         default y if ALPHA_JENSEN || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_DP264 || ALPHA_RAWHIDE || ALPHA_EIGER || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
442         ---help---
443           There are two different types of booting firmware on Alphas: SRM,
444           which is command line driven, and ARC, which uses menus and arrow
445           keys. Details about the Linux/Alpha booting process are contained in
446           the Linux/Alpha FAQ, accessible on the WWW from
447           <http://www.alphalinux.org/>.
448
449           The usual way to load Linux on an Alpha machine is to use MILO
450           (a bootloader that lets you pass command line parameters to the
451           kernel just like lilo does for the x86 architecture) which can be
452           loaded either from ARC or can be installed directly as a permanent
453           firmware replacement from floppy (which requires changing a certain
454           jumper on the motherboard). If you want to do either of these, say N
455           here. If MILO doesn't work on your system (true for Jensen
456           motherboards), you can bypass it altogether and boot Linux directly
457           from an SRM console; say Y here in order to do that. Note that you
458           won't be able to boot from an IDE disk using SRM.
459
460           If unsure, say N.
461
462 config EARLY_PRINTK
463         bool
464         depends on ALPHA_GENERIC || ALPHA_SRM
465         default y
466
467 config EISA
468         bool
469         depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE
470         default y
471         ---help---
472           The Extended Industry Standard Architecture (EISA) bus was
473           developed as an open alternative to the IBM MicroChannel bus.
474
475           The EISA bus provided some of the features of the IBM MicroChannel
476           bus while maintaining backward compatibility with cards made for
477           the older ISA bus.  The EISA bus saw limited use between 1988 and
478           1995 when it was made obsolete by the PCI bus.
479
480           Say Y here if you are building a kernel for an EISA-based machine.
481
482           Otherwise, say N.
483
484 config SMP
485         bool "Symmetric multi-processing support"
486         depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
487         ---help---
488           This enables support for systems with more than one CPU. If you have
489           a system with only one CPU, like most personal computers, say N. If
490           you have a system with more than one CPU, say Y.
491
492           If you say N here, the kernel will run on single and multiprocessor
493           machines, but will use only one CPU of a multiprocessor machine. If
494           you say Y here, the kernel will run on many, but not all,
495           singleprocessor machines. On a singleprocessor machine, the kernel
496           will run faster if you say N here.
497
498           Note that if you say Y here and choose architecture "586" or
499           "Pentium" under "Processor family", the kernel will not work on 486
500           architectures. Similarly, multiprocessor kernels for the "PPro"
501           architecture may not work on all Pentium based boards.
502
503           People using multiprocessor machines who say Y here should also say
504           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
505           Management" code will be disabled if you say Y here.
506
507           See also the <file:Documentation/smp.tex>,
508           <file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>,
509           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
510           <http://www.tldp.org/docs.html#howto>.
511
512           If you don't know what to do here, say N.
513
514 config HAVE_DEC_LOCK
515         bool
516         depends on SMP
517         default y
518
519 config NR_CPUS
520         int "Maximum number of CPUs (2-64)"
521         depends on SMP
522         default "64"
523
524 config DISCONTIGMEM
525         bool "Discontiguous Memory Support (EXPERIMENTAL)"
526         depends on EXPERIMENTAL
527         help
528           Say Y to upport efficient handling of discontiguous physical memory,
529           for architectures which are either NUMA (Non-Uniform Memory Access)
530           or have huge holes in the physical address space for other reasons.
531           See <file:Documentation/vm/numa> for more.
532
533 config NUMA
534         bool "NUMA Support (EXPERIMENTAL)"
535         depends on DISCONTIGMEM
536         help
537           Say Y to compile the kernel to support NUMA (Non-Uniform Memory
538           Access).  This option is for configuring high-end multiprocessor
539           server machines.  If in doubt, say N.
540
541 # LARGE_VMALLOC is racy, if you *really* need it then fix it first
542 config ALPHA_LARGE_VMALLOC
543         bool
544         ---help---
545           Process creation and other aspects of virtual memory management can
546           be streamlined if we restrict the kernel to one PGD for all vmalloc
547           allocations.  This equates to about 8GB.
548
549           Under normal circumstances, this is so far and above what is needed
550           as to be laughable.  However, there are certain applications (such
551           as benchmark-grade in-kernel web serving) that can make use of as
552           much vmalloc space as is available.
553
554           Say N unless you know you need gobs and gobs of vmalloc space.
555
556 config VERBOSE_MCHECK
557         bool "Verbose Machine Checks"
558
559 source "drivers/pci/Kconfig"
560 source "drivers/eisa/Kconfig"
561
562 config HOTPLUG
563         bool "Support for hot-pluggable devices"
564         ---help---
565           Say Y here if you want to plug devices into your computer while
566           the system is running, and be able to use them quickly.  In many
567           cases, the devices can likewise be unplugged at any time too.
568
569           One well known example of this is PCMCIA- or PC-cards, credit-card
570           size devices such as network cards, modems or hard drives which are
571           plugged into slots found on all modern laptop computers.  Another
572           example, used on modern desktops as well as laptops, is USB.
573
574           Enable HOTPLUG and KMOD, and build a modular kernel.  Get agent
575           software (at <http://linux-hotplug.sourceforge.net/>) and install it.
576           Then your kernel will automatically call out to a user mode "policy
577           agent" (/sbin/hotplug) to load modules and set up software needed
578           to use devices as you hotplug them.
579
580 source "drivers/pcmcia/Kconfig"
581
582 choice
583         prompt "Kernel core (/proc/kcore) format"
584         depends on PROC_FS
585         default KCORE_ELF
586
587 config KCORE_ELF
588         bool "ELF"
589         ---help---
590           If you enabled support for /proc file system then the file
591           /proc/kcore will contain the kernel core image. This can be used
592           in gdb:
593
594           $ cd /usr/src/linux ; gdb vmlinux /proc/kcore
595
596           You have two choices here: ELF and A.OUT. Selecting ELF will make
597           /proc/kcore appear in ELF core format as defined by the Executable
598           and Linking Format specification. Selecting A.OUT will choose the
599           old "a.out" format which may be necessary for some old versions
600           of binutils or on some architectures.
601
602           This is especially useful if you have compiled the kernel with the
603           "-g" option to preserve debugging information. It is mainly used
604           for examining kernel data structures on the live kernel so if you
605           don't understand what this means or are not a kernel hacker, just
606           leave it at its default value ELF.
607
608 config KCORE_AOUT
609         bool "A.OUT"
610         help
611           Not necessary unless you're using a very out-of-date binutils
612           version.  You probably want KCORE_ELF.
613
614 endchoice
615
616 config SRM_ENV
617         tristate "SRM environment through procfs"
618         depends on PROC_FS
619         ---help---
620           If you enable this option, a subdirectory inside /proc called
621           /proc/srm_environment will give you access to the all important
622           SRM environment variables (those which have a name) and also
623           to all others (by their internal number).
624
625           SRM is something like a BIOS for Alpha machines. There are some
626           other such BIOSes, like AlphaBIOS, which this driver cannot
627           support (hey, that's not SRM!).
628
629           Despite the fact that this driver doesn't work on all Alphas (but
630           only on those which have SRM as their firmware), it's save to
631           build it even if your particular machine doesn't know about SRM
632           (or if you intend to compile a generic kernel). It will simply
633           not create those subdirectory in /proc (and give you some warning,
634           of course).
635
636           This driver is also available as a module and will be called
637           srm_env then.
638
639 source "fs/Kconfig.binfmt"
640
641 source "drivers/parport/Kconfig"
642
643 endmenu
644
645 source "drivers/base/Kconfig"
646
647 source "drivers/mtd/Kconfig"
648
649 source "drivers/pnp/Kconfig"
650
651 source "drivers/block/Kconfig"
652
653 source "drivers/md/Kconfig"
654
655 source "drivers/ide/Kconfig"
656
657 source "drivers/scsi/Kconfig"
658
659 if PCI
660 source "drivers/message/fusion/Kconfig"
661 endif
662
663 source "drivers/ieee1394/Kconfig"
664
665 source "net/Kconfig"
666
667 source "net/ax25/Kconfig"
668
669 source "drivers/isdn/Kconfig"
670
671 source "drivers/cdrom/Kconfig"
672
673 source "drivers/input/Kconfig"
674
675 source "drivers/char/Kconfig"
676
677 #source drivers/misc/Config.in
678 source "drivers/media/Kconfig"
679
680 source "fs/Kconfig"
681
682 source "drivers/video/Kconfig"
683
684 menu "Sound"
685
686 config SOUND
687         tristate "Sound card support"
688         ---help---
689           If you have a sound card in your computer, i.e. if it can say more
690           than an occasional beep, say Y.  Be sure to have all the information
691           about your sound card and its configuration down (I/O port,
692           interrupt and DMA channel), because you will be asked for it.
693
694           You want to read the Sound-HOWTO, available from
695           <http://www.tldp.org/docs.html#howto>. General information about
696           the modular sound system is contained in the files
697           <file:Documentation/sound/Introduction>.  The file
698           <file:Documentation/sound/README.OSS> contains some slightly
699           outdated but still useful information as well.
700
701           If you have a PnP sound card and you want to configure it at boot
702           time using the ISA PnP tools (read
703           <http://www.roestock.demon.co.uk/isapnptools/>), then you need to
704           compile the sound card support as a module ( = code which can be
705           inserted in and removed from the running kernel whenever you want)
706           and load that module after the PnP configuration is finished.  To do
707           this, say M here and read <file:Documentation/modules.txt> as well
708           as <file:Documentation/sound/README.modules>; the module will be
709           called soundcore.
710
711           I'm told that even without a sound card, you can make your computer
712           say more than an occasional beep, by programming the PC speaker.
713           Kernel patches and supporting utilities to do that are in the pcsp
714           package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
715
716 source "sound/Kconfig"
717
718 endmenu
719
720 source "drivers/usb/Kconfig"
721
722 source "net/bluetooth/Kconfig"
723
724 source "arch/alpha/oprofile/Kconfig"
725
726 menu "Kernel hacking"
727
728 config ALPHA_LEGACY_START_ADDRESS
729         bool "Legacy kernel start address"
730         ---help---
731           The 2.4 kernel changed the kernel start address from 0x310000
732           to 0x810000 to make room for the Wildfire's larger SRM console.
733
734           If you're using aboot 0.7 or later, the bootloader will examine the
735           ELF headers to determine where to transfer control. Unfortunately,
736           most older bootloaders -- APB or MILO -- hardcoded the kernel start
737           address rather than examining the ELF headers, and the result is a
738           hard lockup.
739
740           Say Y if you have a broken bootloader.  Say N if you do not, or if
741           you wish to run on Wildfire.
742
743 config DEBUG_KERNEL
744         bool "Kernel debugging"
745         help
746           Say Y here if you are developing drivers or trying to debug and
747           identify kernel problems.
748
749 config MATHEMU
750         tristate "Kernel FP software completion" if DEBUG_KERNEL
751         default y if !DEBUG_KERNEL
752         help
753           This option is required for IEEE compliant floating point arithmetic
754           on the Alpha. The only time you would ever not say Y is to say M in
755           order to debug the code. Say Y unless you know what you are doing.
756
757 config DEBUG_SLAB
758         bool "Debug memory allocations"
759         depends on DEBUG_KERNEL
760         help
761           Say Y here to have the kernel do limited verification on memory
762           allocation as well as poisoning memory on free to catch use of freed
763           memory.
764
765 config MAGIC_SYSRQ
766         bool "Magic SysRq key"
767         depends on DEBUG_KERNEL
768         help
769           If you say Y here, you will have some control over the system even
770           if the system crashes for example during kernel debugging (e.g., you
771           will be able to flush the buffer cache to disk, reboot the system
772           immediately or dump some status information). This is accomplished
773           by pressing various keys while holding SysRq (Alt+PrintScreen). It
774           also works on a serial console (on PC hardware at least), if you
775           send a BREAK and then within 5 seconds a command keypress. The
776           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
777           unless you really know what this hack does.
778
779 config DEBUG_SPINLOCK
780         bool "Spinlock debugging"
781         depends on DEBUG_KERNEL
782         help
783           Say Y here and build SMP to catch missing spinlock initialization
784           and certain other kinds of spinlock errors commonly made.  This is
785           best used in conjunction with the NMI watchdog so that spinlock
786           deadlocks are also debuggable.
787
788 config DEBUG_RWLOCK
789         bool "Read-write spinlock debugging"
790         depends on DEBUG_KERNEL
791         help
792           If you say Y here then read-write lock processing will count how many
793           times it has tried to get the lock and issue an error message after
794           too many attempts.  If you suspect a rwlock problem or a kernel
795           hacker asks for this option then say Y.  Otherwise say N.
796
797 config DEBUG_SEMAPHORE
798         bool "Semaphore debugging"
799         depends on DEBUG_KERNEL
800         help
801           If you say Y here then semaphore processing will issue lots of
802           verbose debugging messages.  If you suspect a semaphore problem or a
803           kernel hacker asks for this option then say Y.  Otherwise say N.
804
805 endmenu
806
807 source "security/Kconfig"
808
809 source "crypto/Kconfig"
810
811 source "lib/Kconfig"
812