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