patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / arch / arm / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "Linux Kernel Configuration"
7
8 config ARM
9         bool
10         default y
11         help
12           The ARM series is a line of low-power-consumption RISC chip designs
13           licensed by ARM ltd and targeted at embedded applications and
14           handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
15           manufactured, but  legacy ARM-based PC hardware remains popular in
16           Europe.  There is an ARM Linux project with a web page at
17           <http://www.arm.linux.org.uk/>.
18
19 config MMU
20         bool
21         default y
22
23 config EISA
24         bool
25         ---help---
26           The Extended Industry Standard Architecture (EISA) bus was
27           developed as an open alternative to the IBM MicroChannel bus.
28
29           The EISA bus provided some of the features of the IBM MicroChannel
30           bus while maintaining backward compatibility with cards made for
31           the older ISA bus.  The EISA bus saw limited use between 1988 and
32           1995 when it was made obsolete by the PCI bus.
33
34           Say Y here if you are building a kernel for an EISA-based machine.
35
36           Otherwise, say N.
37
38 config SBUS
39         bool
40
41 config MCA
42         bool
43         help
44           MicroChannel Architecture is found in some IBM PS/2 machines and
45           laptops.  It is a bus system similar to PCI or ISA. See
46           <file:Documentation/mca.txt> (and especially the web page given
47           there) before attempting to build an MCA bus kernel.
48
49 config UID16
50         bool
51         default y
52
53 config RWSEM_GENERIC_SPINLOCK
54         bool
55         default y
56
57 config RWSEM_XCHGADD_ALGORITHM
58         bool
59
60 config GENERIC_BUST_SPINLOCK
61         bool
62
63 config GENERIC_ISA_DMA
64         bool
65
66 source "init/Kconfig"
67
68
69 menu "System Type"
70
71 choice
72         prompt "ARM system type"
73         default ARCH_RPC
74
75 config ARCH_ADIFCC
76         bool "ADIFCC-based"
77
78 config ARCH_CLPS7500
79         bool "Cirrus-CL-PS7500FE"
80
81 config ARCH_CLPS711X
82         bool "CLPS711x/EP721x-based"
83
84 config ARCH_CO285
85         bool "Co-EBSA285"
86
87 config ARCH_EBSA110
88         bool "EBSA-110"
89         help
90           This is an evaluation board for the StrongARM processor available
91           from Digital. It has limited hardware on-board, including an onboard
92           Ethernet interface, two PCMCIA sockets, two serial ports and a
93           parallel port.
94
95 config ARCH_CAMELOT
96         bool "Epxa10db"
97         help
98           This enables support for Altera's Excalibur XA10 development board.
99           If you would like to build your kernel to run on one of these boards
100           then you must say 'Y' here. Otherwise say 'N'
101
102 config ARCH_FOOTBRIDGE
103         bool "FootBridge"
104
105 config ARCH_INTEGRATOR
106         bool "Integrator"
107
108 config ARCH_IOP3XX
109         bool "IOP3xx-based"
110
111 config ARCH_IXP4XX
112         bool "IXP4xx-based"
113
114 config ARCH_L7200
115         bool "LinkUp-L7200"
116         help
117           Say Y here if you intend to run this kernel on a LinkUp Systems
118           L7200 Software Development Board which uses an ARM720T processor.
119           Information on this board can be obtained at:
120
121           <http://www.linkupsys.com/>
122
123           If you have any questions or comments about the Linux kernel port
124           to this board, send e-mail to sjhill@cotw.com.
125
126 config ARCH_PXA
127         bool "PXA2xx-based"
128
129 config ARCH_RPC
130         bool "RiscPC"
131         help
132           On the Acorn Risc-PC, Linux can support the internal IDE disk and
133           CD-ROM interface, serial and parallel port, and the floppy drive.
134
135 config ARCH_SA1100
136         bool "SA1100-based"
137
138 config ARCH_S3C2410
139         bool "Samsung S3C2410"
140         help
141           Samsung S3C2410X CPU based systems, such as the Simtec Electronics
142           BAST (http://www.simtec.co.uk/products/EB110ITX/), the IPAQ 1940 or
143           the Samsung SMDK2410 development board (and derviatives).
144
145 config ARCH_SHARK
146         bool "Shark"
147
148 config ARCH_LH7A40X
149         bool "Sharp LH7A40X"
150         help
151           Say Y here for systems based on one of the Sharp LH7A40X
152           System on a Chip processors.  These CPUs include an ARM922T
153           core with a wide array of integrated devices for
154           hand-held and low-power applications.
155
156 config ARCH_OMAP
157         bool "TI OMAP"
158
159 config ARCH_VERSATILE_PB
160         bool "Versatile PB"
161         help
162           This enables support for ARM Ltd Versatile PB board.
163
164 endchoice
165
166 source "arch/arm/mach-clps711x/Kconfig"
167
168 source "arch/arm/mach-epxa10db/Kconfig"
169
170 source "arch/arm/mach-footbridge/Kconfig"
171
172 source "arch/arm/mach-integrator/Kconfig"
173
174 source "arch/arm/mach-iop3xx/Kconfig"
175
176 source "arch/arm/mach-ixp4xx/Kconfig"
177
178 source "arch/arm/mach-pxa/Kconfig"
179
180 source "arch/arm/mach-sa1100/Kconfig"
181
182 source "arch/arm/mach-omap/Kconfig"
183
184 source "arch/arm/mach-s3c2410/Kconfig"
185
186 source "arch/arm/mach-lh7a40x/Kconfig"
187
188 # Definitions to make life easier
189 config ARCH_ACORN
190         bool
191         depends on ARCH_RPC
192         default y
193
194 #####################################################################
195 # Footbridge support
196 config FOOTBRIDGE
197         bool
198         depends on ARCH_CO285 || ARCH_FOOTBRIDGE
199         default y
200
201 config FOOTBRIDGE_HOST
202         bool
203         depends on ARCH_CATS || ARCH_EBSA285_HOST || ARCH_NETWINDER || ARCH_PERSONAL_SERVER
204         default y
205
206 config FOOTBRIDGE_ADDIN
207         bool
208         depends on ARCH_CO285 || ARCH_EBSA285_ADDIN
209         default y
210
211 config ARCH_EBSA285
212         bool
213         depends on ARCH_EBSA285_HOST || ARCH_EBSA285_ADDIN
214         default y
215
216 #####################################################################
217 # SA1111 support
218 config SA1111
219         bool
220         depends on ASSABET_NEPONSET || SA1100_ADSBITSY || SA1100_BADGE4 || SA1100_CONSUS || SA1100_GRAPHICSMASTER || SA1100_JORNADA720 || ARCH_LUBBOCK || SA1100_PFS168 || SA1100_PT_SYSTEM3 || SA1100_XP860
221         default y
222
223 config FORCE_MAX_ZONEORDER
224         int
225         depends on SA1111
226         default "9"
227
228 config DMABOUNCE
229         bool
230         depends on SA1111 || ARCH_IXP4XX
231         default y
232
233 source arch/arm/mm/Kconfig
234
235 #  bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
236 config XSCALE_PMU
237         bool
238         depends on CPU_XSCALE && !XSCALE_PMU_TIMER
239         default y
240
241 endmenu
242
243
244 menu "General setup"
245
246 # Select various configuration options depending on the machine type
247 config DISCONTIGMEM
248         bool
249         depends on ARCH_EDB7211 || ARCH_SA1100 || ARCH_LH7A40X
250         default y
251         help
252           Say Y to upport efficient handling of discontiguous physical memory,
253           for architectures which are either NUMA (Non-Uniform Memory Access)
254           or have huge holes in the physical address space for other reasons.
255           See <file:Documentation/vm/numa> for more.
256
257 # Now handle the bus types
258 config PCI
259         bool "PCI support" if ARCH_INTEGRATOR_AP
260         default y if ARCH_FTVPCI || ARCH_SHARK || FOOTBRIDGE_HOST || ARCH_IOP3XX || ARCH_IXP4XX
261         help
262           Find out whether you have a PCI motherboard. PCI is the name of a
263           bus system, i.e. the way the CPU talks to the other stuff inside
264           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
265           VESA. If you have PCI, say Y, otherwise N.
266
267           The PCI-HOWTO, available from
268           <http://www.tldp.org/docs.html#howto>, contains valuable
269           information about which PCI hardware does work under Linux and which
270           doesn't.
271
272 # Select the host bridge type
273 config PCI_HOST_PLX90X0
274         bool
275         depends on PCI && ARCH_FTVPCI
276         default y
277
278 config PCI_HOST_VIA82C505
279         bool
280         depends on PCI && ARCH_SHARK
281         default y
282
283 config ICST525
284         bool
285         depends on ARCH_INTEGRATOR
286         default y
287
288 config ARM_AMBA
289         bool
290         depends on ARCH_INTEGRATOR || ARCH_VERSATILE_PB
291         default y
292
293 config ISA
294         bool
295         depends on FOOTBRIDGE_HOST || ARCH_SHARK || ARCH_CLPS7500 || ARCH_EBSA110 || ARCH_CDB89712 || ARCH_EDB7211 || ARCH_SA1100
296         default y
297         help
298           Find out whether you have ISA slots on your motherboard.  ISA is the
299           name of a bus system, i.e. the way the CPU talks to the other stuff
300           inside your box.  Other bus systems are PCI, EISA, MicroChannel
301           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
302           newer boards don't support it.  If you have ISA, say Y, otherwise N.
303
304 config ISA_DMA
305         bool
306         depends on FOOTBRIDGE_HOST || ARCH_SHARK
307         default y
308
309 config FIQ
310         bool
311         depends on ARCH_ACORN || ARCH_L7200 || ARCH_LH7A400
312         default y
313
314 # Compressed boot loader in ROM.  Yes, we really want to ask about
315 # TEXT and BSS so we preserve their values in the config files.
316 config ZBOOT_ROM
317         bool "Compressed boot loader in ROM/flash"
318         help
319           Say Y here if you intend to execute your compressed kernel image (zImage)
320           directly from ROM or flash.  If unsure, say N.
321
322 config ZBOOT_ROM_TEXT
323         hex "Compressed ROM boot loader base address"
324         default "0"
325         help
326           The base address for zImage.  Unless you have special requirements, you
327           should not change this value.
328
329 config ZBOOT_ROM_BSS
330         hex "Compressed ROM boot loader BSS address"
331         default "0"
332         help
333           The base address of 64KiB of read/write memory, which must be available
334           while the decompressor is running.  Unless you have special requirements,
335           you should not change this value.
336
337 config CPU_FREQ
338         bool "Support CPU clock change (EXPERIMENTAL)"
339         depends on (ARCH_SA1100 || ARCH_INTEGRATOR) && EXPERIMENTAL
340         help
341           CPU clock scaling allows you to change the clock speed of the
342           running CPU on the fly. This is a nice method to save battery power,
343           because the lower the clock speed, the less power the CPU
344           consumes. Note that this driver doesn't automatically change the CPU
345           clock speed, you need some userland tools (which still have to be
346           written) to implement the policy. If you don't understand what this
347           is all about, it's safe to say 'N'.
348
349
350 # CPUfreq on SA11x0 is special -- it _needs_ the userspace governor
351
352 config CPU_FREQ_SA1100
353         bool
354         depends on CPU_FREQ && SA1100_LART
355         default y
356         select CPU_FREQ_24_API if SYSCTL
357
358 config CPU_FREQ_SA1110
359         bool
360         depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3)
361         default y
362         select CPU_FREQ_24_API if SYSCTL
363
364 config CPU_FREQ_INTEGRATOR
365         tristate "CPUfreq driver for ARM Integrator CPUs"
366         depends on ARCH_INTEGRATOR && ICST525 && CPU_FREQ
367         default y
368         help
369           This enables the CPUfreq driver for ARM Integrator CPUs.
370
371           For details, take a look at linux/Documentation/cpu-freq.
372
373           If in doubt, say Y.
374
375 if (CPU_FREQ_INTEGRATOR) || (CPU_FREQ_SA1110) || (CPU_FREQ_SA1100)
376
377 source "drivers/cpufreq/Kconfig"
378
379 endif
380
381 source "drivers/pci/Kconfig"
382
383 source "drivers/pcmcia/Kconfig"
384
385 comment "At least one math emulation must be selected"
386
387 config FPE_NWFPE
388         bool "NWFPE math emulation"
389         ---help---
390           Say Y to include the NWFPE floating point emulator in the kernel.
391           This is necessary to run most binaries. Linux does not currently
392           support floating point hardware so you need to say Y here even if
393           your machine has an FPA or floating point co-processor podule.
394
395           You may say N here if you are going to load the Acorn FPEmulator
396           early in the bootup.
397
398 config FPE_NWFPE_XP
399         bool "Support extended precision"
400         depends on FPE_NWFPE
401         help
402           Say Y to include 80-bit support in the kernel floating-point
403           emulator.  Otherwise, only 32 and 64-bit support is compiled in.
404           Note that gcc does not generate 80-bit operations by default,
405           so in most cases this option only enlarges the size of the
406           floating point emulator without any good reason.
407
408           You almost surely want to say N here.
409
410 config FPE_FASTFPE
411         bool "FastFPE math emulation (EXPERIMENTAL)"
412         depends on !CPU_32v3 && EXPERIMENTAL
413         ---help---
414           Say Y here to include the FAST floating point emulator in the kernel.
415           This is an experimental much faster emulator which now also has full
416           precision for the mantissa.  It does not support any exceptions.
417           It is very simple, and approximately 3-6 times faster than NWFPE.
418
419           It should be sufficient for most programs.  It may be not suitable
420           for scientific calculations, but you have to check this for yourself.
421           If you do not feel you need a faster FP emulation you should better
422           choose NWFPE.
423
424 source "fs/Kconfig.binfmt"
425
426 source "drivers/base/Kconfig"
427
428 config PM
429         bool "Power Management support"
430         ---help---
431           "Power Management" means that parts of your computer are shut
432           off or put into a power conserving "sleep" mode if they are not
433           being used.  There are two competing standards for doing this: APM
434           and ACPI.  If you want to use either one, say Y here and then also
435           to the requisite support below.
436
437           Power Management is most important for battery powered laptop
438           computers; if you have a laptop, check out the Linux Laptop home
439           page on the WWW at <http://www.linux-on-laptops.com/> or
440           Tuxmobil - Linux on Mobile Computers at <http://www.tuxmobil.org/>
441           and the Battery Powered Linux mini-HOWTO, available from
442           <http://www.tldp.org/docs.html#howto>.
443
444           Note that, even if you say N here, Linux on the x86 architecture
445           will issue the hlt instruction if nothing is to be done, thereby
446           sending the processor to sleep and saving power.
447
448 config PREEMPT
449         bool "Preemptible Kernel (EXPERIMENTAL)"
450         depends on CPU_32 && EXPERIMENTAL
451         help
452           This option reduces the latency of the kernel when reacting to
453           real-time or interactive events by allowing a low priority process to
454           be preempted even if it is in kernel mode executing a system call.
455           This allows applications to run more reliably even when the system is
456           under load.
457
458           Say Y here if you are building a kernel for a desktop, embedded
459           or real-time system.  Say N if you are unsure.
460
461 config APM
462         tristate "Advanced Power Management Emulation"
463         depends on PM
464         ---help---
465           APM is a BIOS specification for saving power using several different
466           techniques. This is mostly useful for battery powered laptops with
467           APM compliant BIOSes. If you say Y here, the system time will be
468           reset after a RESUME operation, the /proc/apm device will provide
469           battery status information, and user-space programs will receive
470           notification of APM "events" (e.g. battery status change).
471
472           If you select "Y" here, you can disable actual use of the APM
473           BIOS by passing the "apm=off" option to the kernel at boot time.
474
475           Note that the APM support is almost completely disabled for
476           machines with more than one CPU.
477
478           In order to use APM, you will need supporting software. For location
479           and more information, read <file:Documentation/pm.txt> and the
480           Battery Powered Linux mini-HOWTO, available from
481           <http://www.tldp.org/docs.html#howto>.
482
483           This driver does not spin down disk drives (see the hdparm(8)
484           manpage ("man 8 hdparm") for that), and it doesn't turn off
485           VESA-compliant "green" monitors.
486
487           This driver does not support the TI 4000M TravelMate and the ACER
488           486/DX4/75 because they don't have compliant BIOSes. Many "green"
489           desktop machines also don't have compliant BIOSes, and this driver
490           may cause those machines to panic during the boot phase.
491
492           Generally, if you don't have a battery in your machine, there isn't
493           much point in using this driver and you should say N. If you get
494           random kernel OOPSes or reboots that don't seem to be related to
495           anything, try disabling/enabling this option (or disabling/enabling
496           APM in your BIOS).
497
498           Some other things you should try when experiencing seemingly random,
499           "weird" problems:
500
501           1) make sure that you have enough swap space and that it is
502           enabled.
503           2) pass the "no-hlt" option to the kernel
504           3) switch on floating point emulation in the kernel and pass
505           the "no387" option to the kernel
506           4) pass the "floppy=nodma" option to the kernel
507           5) pass the "mem=4M" option to the kernel (thereby disabling
508           all but the first 4 MB of RAM)
509           6) make sure that the CPU is not over clocked.
510           7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/>
511           8) disable the cache from your BIOS settings
512           9) install a fan for the video card or exchange video RAM
513           10) install a better fan for the CPU
514           11) exchange RAM chips
515           12) exchange the motherboard.
516
517           To compile this driver as a module, choose M here: the
518           module will be called apm.
519
520 config ARTHUR
521         tristate "RISC OS personality"
522         depends on CPU_32
523         help
524           Say Y here to include the kernel code necessary if you want to run
525           Acorn RISC OS/Arthur binaries under Linux. This code is still very
526           experimental; if this sounds frightening, say N and sleep in peace.
527           You can also say M here to compile this support as a module (which
528           will be called arthur).
529
530 config CMDLINE
531         string "Default kernel command string"
532         default ""
533         help
534           On some architectures (EBSA110 and CATS), there is currently no way
535           for the boot loader to pass arguments to the kernel. For these
536           architectures, you should supply some command-line options at build
537           time by entering them here. As a minimum, you should specify the
538           memory size and the root device (e.g., mem=64M root=/dev/nfs).
539
540 config LEDS
541         bool "Timer and CPU usage LEDs"
542         depends on ARCH_NETWINDER || ARCH_EBSA110 || ARCH_EBSA285 || ARCH_FTVPCI || ARCH_SHARK || ARCH_CO285 || ARCH_SA1100 || ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_PXA_IDP || ARCH_INTEGRATOR || ARCH_CDB89712 || ARCH_P720T || ARCH_OMAP || ARCH_VERSATILE_PB
543         help
544           If you say Y here, the LEDs on your machine will be used
545           to provide useful information about your current system status.
546
547           If you are compiling a kernel for a NetWinder or EBSA-285, you will
548           be able to select which LEDs are active using the options below. If
549           you are compiling a kernel for the EBSA-110 or the LART however, the
550           red LED will simply flash regularly to indicate that the system is
551           still functional. It is safe to say Y here if you have a CATS
552           system, but the driver will do nothing.
553
554 config LEDS_TIMER
555         bool "Timer LED" if LEDS && (ARCH_NETWINDER || ARCH_EBSA285 || ARCH_SHARK || MACH_MAINSTONE || ARCH_CO285 || ARCH_SA1100 || ARCH_LUBBOCK || ARCH_PXA_IDP || ARCH_INTEGRATOR || ARCH_P720T || ARCH_VERSATILE_PB)
556         depends on ARCH_NETWINDER || ARCH_EBSA110 || ARCH_EBSA285 || ARCH_FTVPCI || ARCH_SHARK || ARCH_CO285 || ARCH_SA1100 || ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_PXA_IDP || ARCH_INTEGRATOR || ARCH_CDB89712 || ARCH_P720T || ARCH_OMAP || ARCH_VERSATILE_PB
557         default y if ARCH_EBSA110
558         help
559           If you say Y here, one of the system LEDs (the green one on the
560           NetWinder, the amber one on the EBSA285, or the red one on the LART)
561           will flash regularly to indicate that the system is still
562           operational. This is mainly useful to kernel hackers who are
563           debugging unstable kernels.
564
565           The LART uses the same LED for both Timer LED and CPU usage LED
566           functions. You may choose to use both, but the Timer LED function
567           will overrule the CPU usage LED.
568
569 config LEDS_CPU
570         bool "CPU usage LED"
571         depends on LEDS && (ARCH_NETWINDER || ARCH_EBSA285 || ARCH_SHARK || ARCH_CO285 || ARCH_SA1100 || ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_PXA_IDP || ARCH_INTEGRATOR || ARCH_P720T || ARCH_VERSATILE_PB)
572         help
573           If you say Y here, the red LED will be used to give a good real
574           time indication of CPU usage, by lighting whenever the idle task
575           is not currently executing.
576
577           The LART uses the same LED for both Timer LED and CPU usage LED
578           functions. You may choose to use both, but the Timer LED function
579           will overrule the CPU usage LED.
580
581 config ALIGNMENT_TRAP
582         bool
583         depends on CPU_32
584         default y if !ARCH_EBSA110
585         help
586           ARM processors can not fetch/store information which is not
587           naturally aligned on the bus, i.e., a 4 byte fetch must start at an
588           address divisible by 4. On 32-bit ARM processors, these non-aligned
589           fetch/store instructions will be emulated in software if you say
590           here, which has a severe performance impact. This is necessary for
591           correct operation of some network protocols. With an IP-only
592           configuration it is safe to say N, otherwise say Y.
593
594 endmenu
595
596 source "drivers/parport/Kconfig"
597
598 if ALIGNMENT_TRAP
599 source "drivers/mtd/Kconfig"
600 endif
601
602 source "drivers/pnp/Kconfig"
603
604 source "drivers/block/Kconfig"
605
606 source "drivers/md/Kconfig"
607
608 source "drivers/acorn/block/Kconfig"
609
610 source "net/Kconfig"
611
612 if ARCH_CLPS7500 || ARCH_IOP3XX || ARCH_IXP4XX || ARCH_L7200 || ARCH_LH7A40X || ARCH_FTVPCI || ARCH_PXA || ARCH_RPC || ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE
613 source "drivers/ide/Kconfig"
614 endif
615
616 source "drivers/scsi/Kconfig"
617
618 source "drivers/message/fusion/Kconfig"
619
620 source "drivers/ieee1394/Kconfig"
621
622 source "drivers/message/i2o/Kconfig"
623
624 source "drivers/isdn/Kconfig"
625
626 #
627 # input before char - char/joystick depends on it. As does USB.
628 #
629 source "drivers/input/Kconfig"
630
631 source "drivers/char/Kconfig"
632
633 source "drivers/i2c/Kconfig"
634
635 #source "drivers/l3/Kconfig"
636
637 source "drivers/media/Kconfig"
638
639 source "fs/Kconfig"
640
641 source "arch/arm/oprofile/Kconfig"
642
643 source "drivers/video/Kconfig"
644
645 source "sound/Kconfig"
646
647 source "drivers/misc/Kconfig"
648
649 source "drivers/usb/Kconfig"
650
651
652 menu "Kernel hacking"
653
654 # RMK wants arm kernels compiled with frame pointers so hardwire this to y.
655 # If you know what you are doing and are willing to live without stack
656 # traces, you can get a slightly smaller kernel by setting this option to
657 # n, but then RMK will have to kill you ;).
658 config FRAME_POINTER
659         bool
660         default y
661         help
662           If you say N here, the resulting kernel will be slightly smaller and
663           faster. However, when a problem occurs with the kernel, the
664           information that is reported is severely limited. Most people
665           should say Y here.
666
667 config DEBUG_USER
668         bool "Verbose user fault messages"
669         help
670           When a user program crashes due to an exception, the kernel can
671           print a brief message explaining what the problem was. This is
672           sometimes helpful for debugging but serves no purpose on a
673           production system. Most people should say N here.
674
675           In addition, you need to pass user_debug=N on the kernel command
676           line to enable this feature.  N consists of the sum of:
677
678               1 - undefined instruction events
679               2 - system calls
680               4 - invalid data aborts
681               8 - SIGSEGV faults
682              16 - SIGBUS faults
683
684 config DEBUG_INFO
685         bool "Include GDB debugging information in kernel binary"
686         help
687           Say Y here to include source-level debugging information in the
688           `vmlinux' binary image. This is handy if you want to use gdb or
689           addr2line to debug the kernel. It has no impact on the in-memory
690           footprint of the running kernel but it can increase the amount of
691           time and disk space needed for compilation of the kernel. If in
692           doubt say N.
693
694 config DEBUG_KERNEL
695         bool "Kernel debugging"
696         help
697           Say Y here if you are developing drivers or trying to debug and
698           identify kernel problems.
699
700 config DEBUG_SLAB
701         bool "Debug memory allocations"
702         depends on DEBUG_KERNEL
703         help
704           Say Y here to have the kernel do limited verification on memory
705           allocation as well as poisoning memory on free to catch use of freed
706           memory.
707
708 config MAGIC_SYSRQ
709         bool "Magic SysRq key"
710         depends on DEBUG_KERNEL
711         help
712           If you say Y here, you will have some control over the system even
713           if the system crashes for example during kernel debugging (e.g., you
714           will be able to flush the buffer cache to disk, reboot the system
715           immediately or dump some status information). This is accomplished
716           by pressing various keys while holding SysRq (Alt+PrintScreen). It
717           also works on a serial console (on PC hardware at least), if you
718           send a BREAK and then within 5 seconds a command keypress. The
719           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
720           unless you really know what this hack does.
721
722 config DEBUG_SPINLOCK
723         bool "Spinlock debugging"
724         depends on DEBUG_KERNEL
725         help
726           Say Y here and build SMP to catch missing spinlock initialization
727           and certain other kinds of spinlock errors commonly made.  This is
728           best used in conjunction with the NMI watchdog so that spinlock
729           deadlocks are also debuggable.
730
731 config DEBUG_WAITQ
732         bool "Wait queue debugging"
733         depends on DEBUG_KERNEL
734
735 config DEBUG_BUGVERBOSE
736         bool "Verbose BUG() reporting (adds 70K)"
737         depends on DEBUG_KERNEL
738         help
739           Say Y here to make BUG() panics output the file name and line number
740           of the BUG call as well as the EIP and oops trace.  This aids
741           debugging but costs about 70-100K of memory.
742
743 config DEBUG_ERRORS
744         bool "Verbose kernel error messages"
745         depends on DEBUG_KERNEL
746         help
747           This option controls verbose debugging information which can be
748           printed when the kernel detects an internal error. This debugging
749           information is useful to kernel hackers when tracking down problems,
750           but mostly meaningless to other people. It's safe to say Y unless
751           you are concerned with the code size or don't want to see these
752           messages.
753
754 # These options are only for real kernel hackers who want to get their hands dirty. 
755 config DEBUG_LL
756         bool "Kernel low-level debugging functions"
757         depends on DEBUG_KERNEL
758         help
759           Say Y here to include definitions of printascii, printchar, printhex
760           in the kernel.  This is helpful if you are debugging code that
761           executes before the console is initialized.
762
763 config DEBUG_ICEDCC
764         bool "Kernel low-level debugging via EmbeddedICE DCC channel"
765         depends on DEBUG_LL
766         help
767           Say Y here if you want the debug print routines to direct their
768           output to the EmbeddedICE macrocell's DCC channel using
769           co-processor 14. This is known to work on the ARM9 style ICE
770           channel.
771
772           It does include a timeout to ensure that the system does not
773           totally freeze when there is nothing connected to read.
774
775 config DEBUG_DC21285_PORT
776         bool "Kernel low-level debugging messages via footbridge serial port"
777         depends on DEBUG_LL && FOOTBRIDGE
778         help
779           Say Y here if you want the debug print routines to direct their
780           output to the serial port in the DC21285 (Footbridge). Saying N
781           will cause the debug messages to appear on the first 16550
782           serial port.
783
784 config DEBUG_CLPS711X_UART2
785         bool "Kernel low-level debugging messages via UART2"
786         depends on DEBUG_LL && ARCH_CLPS711X
787         help
788           Say Y here if you want the debug print routines to direct their
789           output to the second serial port on these devices.  Saying N will
790           cause the debug messages to appear on the first serial port.
791
792 config DEBUG_S3C2410_PORT
793         depends on DEBUG_LL && ARCH_S3C2410
794         bool "Kernel low-level debugging messages via S3C2410 UART"
795         help
796           Say Y here if you want debug print routines to go to one of the
797           S3C2410 internal UARTs. The chosen UART must have been configured
798           before it is used.
799
800 config DEBUG_S3C2410_UART
801         depends on DEBUG_LL && ARCH_S3C2410
802         int "S3C2410 UART to use for low-level debug"
803         default "0"
804         help
805           Choice for UART for kernel low-level using S3C2410 UARTS,
806           should be between zero and two. The port must have been
807           initalised by the boot-loader before use.
808
809 endmenu
810
811 source "kernel/vserver/Kconfig"
812
813 source "security/Kconfig"
814
815 source "crypto/Kconfig"
816
817 source "lib/Kconfig"
818