Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.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         select RTC_LIB
12         help
13           The ARM series is a line of low-power-consumption RISC chip designs
14           licensed by ARM Ltd and targeted at embedded applications and
15           handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
16           manufactured, but legacy ARM-based PC hardware remains popular in
17           Europe.  There is an ARM Linux project with a web page at
18           <http://www.arm.linux.org.uk/>.
19
20 config MMU
21         bool
22         default y
23
24 config EISA
25         bool
26         ---help---
27           The Extended Industry Standard Architecture (EISA) bus was
28           developed as an open alternative to the IBM MicroChannel bus.
29
30           The EISA bus provided some of the features of the IBM MicroChannel
31           bus while maintaining backward compatibility with cards made for
32           the older ISA bus.  The EISA bus saw limited use between 1988 and
33           1995 when it was made obsolete by the PCI bus.
34
35           Say Y here if you are building a kernel for an EISA-based machine.
36
37           Otherwise, say N.
38
39 config SBUS
40         bool
41
42 config MCA
43         bool
44         help
45           MicroChannel Architecture is found in some IBM PS/2 machines and
46           laptops.  It is a bus system similar to PCI or ISA. See
47           <file:Documentation/mca.txt> (and especially the web page given
48           there) before attempting to build an MCA bus kernel.
49
50 config RWSEM_GENERIC_SPINLOCK
51         bool
52         default y
53
54 config RWSEM_XCHGADD_ALGORITHM
55         bool
56
57 config GENERIC_HWEIGHT
58         bool
59         default y
60
61 config GENERIC_CALIBRATE_DELAY
62         bool
63         default y
64
65 config GENERIC_BUST_SPINLOCK
66         bool
67
68 config ARCH_MAY_HAVE_PC_FDC
69         bool
70
71 config GENERIC_ISA_DMA
72         bool
73
74 config FIQ
75         bool
76
77 config ARCH_MTD_XIP
78         bool
79
80 config VECTORS_BASE
81         hex
82         default 0xffff0000 if MMU
83         default DRAM_BASE if REMAP_VECTORS_TO_RAM
84         default 0x00000000
85         help
86           The base address of exception vectors.
87
88 source "init/Kconfig"
89
90 menu "System Type"
91
92 choice
93         prompt "ARM system type"
94         default ARCH_VERSATILE
95
96 config ARCH_CLPS7500
97         bool "Cirrus-CL-PS7500FE"
98         select TIMER_ACORN
99         select ISA
100         help
101           Support for the Cirrus Logic PS7500FE system-on-a-chip.
102
103 config ARCH_CLPS711X
104         bool "CLPS711x/EP721x-based"
105         help
106           Support for Cirrus Logic 711x/721x based boards.
107
108 config ARCH_CO285
109         bool "Co-EBSA285"
110         select FOOTBRIDGE
111         select FOOTBRIDGE_ADDIN
112         help
113           Support for Intel's EBSA285 companion chip.
114
115 config ARCH_EBSA110
116         bool "EBSA-110"
117         select ISA
118         help
119           This is an evaluation board for the StrongARM processor available
120           from Digital. It has limited hardware on-board, including an
121           Ethernet interface, two PCMCIA sockets, two serial ports and a
122           parallel port.
123
124 config ARCH_EP93XX
125         bool "EP93xx-based"
126         select ARM_AMBA
127         select ARM_VIC
128         help
129           This enables support for the Cirrus EP93xx series of CPUs.
130
131 config ARCH_FOOTBRIDGE
132         bool "FootBridge"
133         select FOOTBRIDGE
134         help
135           Support for systems based on the DC21285 companion chip
136           ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
137
138 config ARCH_INTEGRATOR
139         bool "Integrator"
140         select ARM_AMBA
141         select ICST525
142         help
143           Support for ARM's Integrator platform.
144
145 config ARCH_IOP3XX
146         bool "IOP3xx-based"
147         select PCI
148         help
149           Support for Intel's IOP3XX (XScale) family of processors.
150
151 config ARCH_IXP4XX
152         bool "IXP4xx-based"
153         help
154           Support for Intel's IXP4XX (XScale) family of processors.
155
156 config ARCH_IXP2000
157         bool "IXP2400/2800-based"
158         select PCI
159         help
160           Support for Intel's IXP2400/2800 (XScale) family of processors.
161
162 config ARCH_IXP23XX
163         bool "IXP23XX-based"
164         select PCI
165         help
166           Support for Intel's IXP23xx (XScale) family of processors.
167
168 config ARCH_L7200
169         bool "LinkUp-L7200"
170         select FIQ
171         help
172           Say Y here if you intend to run this kernel on a LinkUp Systems
173           L7200 Software Development Board which uses an ARM720T processor.
174           Information on this board can be obtained at:
175
176           <http://www.linkupsys.com/>
177
178           If you have any questions or comments about the Linux kernel port
179           to this board, send e-mail to <sjhill@cotw.com>.
180
181 config ARCH_PXA
182         bool "PXA2xx-based"
183         select ARCH_MTD_XIP
184         help
185           Support for Intel's PXA2XX processor line.
186
187 config ARCH_RPC
188         bool "RiscPC"
189         select ARCH_ACORN
190         select FIQ
191         select TIMER_ACORN
192         select ARCH_MAY_HAVE_PC_FDC
193         select ISA_DMA_API
194         help
195           On the Acorn Risc-PC, Linux can support the internal IDE disk and
196           CD-ROM interface, serial and parallel port, and the floppy drive.
197
198 config ARCH_SA1100
199         bool "SA1100-based"
200         select ISA
201         select ARCH_DISCONTIGMEM_ENABLE
202         select ARCH_MTD_XIP
203         help
204           Support for StrongARM 11x0 based boards.
205
206 config ARCH_S3C2410
207         bool "Samsung S3C2410"
208         help
209           Samsung S3C2410X CPU based systems, such as the Simtec Electronics
210           BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
211           the Samsung SMDK2410 development board (and derivatives).
212
213 config ARCH_SHARK
214         bool "Shark"
215         select ISA
216         select ISA_DMA
217         select PCI
218         help
219           Support for the StrongARM based Digital DNARD machine, also known
220           as "Shark" (<http://www.shark-linux.de/shark.html>).
221
222 config ARCH_LH7A40X
223         bool "Sharp LH7A40X"
224         help
225           Say Y here for systems based on one of the Sharp LH7A40X
226           System on a Chip processors.  These CPUs include an ARM922T
227           core with a wide array of integrated devices for
228           hand-held and low-power applications.
229
230 config ARCH_OMAP
231         bool "TI OMAP"
232         help
233           Support for TI's OMAP platform (OMAP1 and OMAP2).
234
235 config ARCH_VERSATILE
236         bool "Versatile"
237         select ARM_AMBA
238         select ARM_VIC
239         select ICST307
240         help
241           This enables support for ARM Ltd Versatile board.
242
243 config ARCH_REALVIEW
244         bool "RealView"
245         select ARM_AMBA
246         select ICST307
247         help
248           This enables support for ARM Ltd RealView boards.
249
250 config ARCH_IMX
251         bool "IMX"
252         help
253           Support for Motorola's i.MX family of processors (MX1, MXL).
254
255 config ARCH_H720X
256         bool "Hynix-HMS720x-based"
257         select ISA_DMA_API
258         help
259           This enables support for systems based on the Hynix HMS720x
260
261 config ARCH_AAEC2000
262         bool "Agilent AAEC-2000 based"
263         select ARM_AMBA
264         help
265           This enables support for systems based on the Agilent AAEC-2000
266
267 config ARCH_AT91RM9200
268         bool "AT91RM9200"
269         help
270           Say Y here if you intend to run this kernel on an Atmel
271           AT91RM9200-based board.
272
273 endchoice
274
275 source "arch/arm/mach-clps711x/Kconfig"
276
277 source "arch/arm/mach-ep93xx/Kconfig"
278
279 source "arch/arm/mach-footbridge/Kconfig"
280
281 source "arch/arm/mach-integrator/Kconfig"
282
283 source "arch/arm/mach-iop3xx/Kconfig"
284
285 source "arch/arm/mach-ixp4xx/Kconfig"
286
287 source "arch/arm/mach-ixp2000/Kconfig"
288
289 source "arch/arm/mach-ixp23xx/Kconfig"
290
291 source "arch/arm/mach-pxa/Kconfig"
292
293 source "arch/arm/mach-sa1100/Kconfig"
294
295 source "arch/arm/plat-omap/Kconfig"
296
297 source "arch/arm/mach-omap1/Kconfig"
298
299 source "arch/arm/mach-omap2/Kconfig"
300
301 source "arch/arm/mach-s3c2410/Kconfig"
302
303 source "arch/arm/mach-lh7a40x/Kconfig"
304
305 source "arch/arm/mach-imx/Kconfig"
306
307 source "arch/arm/mach-h720x/Kconfig"
308
309 source "arch/arm/mach-versatile/Kconfig"
310
311 source "arch/arm/mach-aaec2000/Kconfig"
312
313 source "arch/arm/mach-realview/Kconfig"
314
315 source "arch/arm/mach-at91rm9200/Kconfig"
316
317 # Definitions to make life easier
318 config ARCH_ACORN
319         bool
320
321 source arch/arm/mm/Kconfig
322
323 #  bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
324 config XSCALE_PMU
325         bool
326         depends on CPU_XSCALE && !XSCALE_PMU_TIMER
327         default y
328
329 endmenu
330
331 source "arch/arm/common/Kconfig"
332
333 config FORCE_MAX_ZONEORDER
334         int
335         depends on SA1111
336         default "9"
337
338 menu "Bus support"
339
340 config ARM_AMBA
341         bool
342
343 config ISA
344         bool
345         help
346           Find out whether you have ISA slots on your motherboard.  ISA is the
347           name of a bus system, i.e. the way the CPU talks to the other stuff
348           inside your box.  Other bus systems are PCI, EISA, MicroChannel
349           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
350           newer boards don't support it.  If you have ISA, say Y, otherwise N.
351
352 # Select ISA DMA controller support
353 config ISA_DMA
354         bool
355         select ISA_DMA_API
356
357 # Select ISA DMA interface
358 config ISA_DMA_API
359         bool
360
361 config PCI
362         bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB
363         help
364           Find out whether you have a PCI motherboard. PCI is the name of a
365           bus system, i.e. the way the CPU talks to the other stuff inside
366           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
367           VESA. If you have PCI, say Y, otherwise N.
368
369           The PCI-HOWTO, available from
370           <http://www.tldp.org/docs.html#howto>, contains valuable
371           information about which PCI hardware does work under Linux and which
372           doesn't.
373
374 # Select the host bridge type
375 config PCI_HOST_VIA82C505
376         bool
377         depends on PCI && ARCH_SHARK
378         default y
379
380 source "drivers/pci/Kconfig"
381
382 source "drivers/pcmcia/Kconfig"
383
384 endmenu
385
386 menu "Kernel Features"
387
388 config SMP
389         bool "Symmetric Multi-Processing (EXPERIMENTAL)"
390         depends on EXPERIMENTAL && REALVIEW_MPCORE
391         help
392           This enables support for systems with more than one CPU. If you have
393           a system with only one CPU, like most personal computers, say N. If
394           you have a system with more than one CPU, say Y.
395
396           If you say N here, the kernel will run on single and multiprocessor
397           machines, but will use only one CPU of a multiprocessor machine. If
398           you say Y here, the kernel will run on many, but not all, single
399           processor machines. On a single processor machine, the kernel will
400           run faster if you say N here.
401
402           See also the <file:Documentation/smp.txt>,
403           <file:Documentation/i386/IO-APIC.txt>,
404           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
405           <http://www.linuxdoc.org/docs.html#howto>.
406
407           If you don't know what to do here, say N.
408
409 config NR_CPUS
410         int "Maximum number of CPUs (2-32)"
411         range 2 32
412         depends on SMP
413         default "4"
414
415 config HOTPLUG_CPU
416         bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
417         depends on SMP && HOTPLUG && EXPERIMENTAL
418         help
419           Say Y here to experiment with turning CPUs off and on.  CPUs
420           can be controlled through /sys/devices/system/cpu.
421
422 config LOCAL_TIMERS
423         bool "Use local timer interrupts"
424         depends on SMP && REALVIEW_MPCORE
425         default y
426         help
427           Enable support for local timers on SMP platforms, rather then the
428           legacy IPI broadcast method.  Local timers allows the system
429           accounting to be spread across the timer interval, preventing a
430           "thundering herd" at every timer tick.
431
432 config PREEMPT
433         bool "Preemptible Kernel (EXPERIMENTAL)"
434         depends on EXPERIMENTAL
435         help
436           This option reduces the latency of the kernel when reacting to
437           real-time or interactive events by allowing a low priority process to
438           be preempted even if it is in kernel mode executing a system call.
439           This allows applications to run more reliably even when the system is
440           under load.
441
442           Say Y here if you are building a kernel for a desktop, embedded
443           or real-time system.  Say N if you are unsure.
444
445 config NO_IDLE_HZ
446         bool "Dynamic tick timer"
447         help
448           Select this option if you want to disable continuous timer ticks
449           and have them programmed to occur as required. This option saves
450           power as the system can remain in idle state for longer.
451
452           By default dynamic tick is disabled during the boot, and can be
453           manually enabled with:
454
455             echo 1 > /sys/devices/system/timer/timer0/dyn_tick
456
457           Alternatively, if you want dynamic tick automatically enabled
458           during boot, pass "dyntick=enable" via the kernel command string.
459
460           Please note that dynamic tick may affect the accuracy of
461           timekeeping on some platforms depending on the implementation.
462           Currently at least OMAP, PXA2xx and SA11x0 platforms are known
463           to have accurate timekeeping with dynamic tick.
464
465 config HZ
466         int
467         default 128 if ARCH_L7200
468         default 200 if ARCH_EBSA110 || ARCH_S3C2410
469         default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
470         default 100
471
472 config AEABI
473         bool "Use the ARM EABI to compile the kernel"
474         help
475           This option allows for the kernel to be compiled using the latest
476           ARM ABI (aka EABI).  This is only useful if you are using a user
477           space environment that is also compiled with EABI.
478
479           Since there are major incompatibilities between the legacy ABI and
480           EABI, especially with regard to structure member alignment, this
481           option also changes the kernel syscall calling convention to
482           disambiguate both ABIs and allow for backward compatibility support
483           (selected with CONFIG_OABI_COMPAT).
484
485           To use this you need GCC version 4.0.0 or later.
486
487 config OABI_COMPAT
488         bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
489         depends on AEABI && EXPERIMENTAL
490         default y
491         help
492           This option preserves the old syscall interface along with the
493           new (ARM EABI) one. It also provides a compatibility layer to
494           intercept syscalls that have structure arguments which layout
495           in memory differs between the legacy ABI and the new ARM EABI
496           (only for non "thumb" binaries). This option adds a tiny
497           overhead to all syscalls and produces a slightly larger kernel.
498           If you know you'll be using only pure EABI user space then you
499           can say N here. If this option is not selected and you attempt
500           to execute a legacy ABI binary then the result will be
501           UNPREDICTABLE (in fact it can be predicted that it won't work
502           at all). If in doubt say Y.
503
504 config ARCH_DISCONTIGMEM_ENABLE
505         bool
506         default (ARCH_LH7A40X && !LH7A40X_CONTIGMEM)
507         help
508           Say Y to support efficient handling of discontiguous physical memory,
509           for architectures which are either NUMA (Non-Uniform Memory Access)
510           or have huge holes in the physical address space for other reasons.
511           See <file:Documentation/vm/numa> for more.
512
513 config NODES_SHIFT
514         int
515         default "4" if ARCH_LH7A40X
516         default "2"
517         depends on NEED_MULTIPLE_NODES
518
519 source "mm/Kconfig"
520
521 config LEDS
522         bool "Timer and CPU usage LEDs"
523         depends on ARCH_CDB89712 || ARCH_CO285 || ARCH_EBSA110 || \
524                    ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \
525                    ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
526                    ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
527                    ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
528                    ARCH_AT91RM9200
529         help
530           If you say Y here, the LEDs on your machine will be used
531           to provide useful information about your current system status.
532
533           If you are compiling a kernel for a NetWinder or EBSA-285, you will
534           be able to select which LEDs are active using the options below. If
535           you are compiling a kernel for the EBSA-110 or the LART however, the
536           red LED will simply flash regularly to indicate that the system is
537           still functional. It is safe to say Y here if you have a CATS
538           system, but the driver will do nothing.
539
540 config LEDS_TIMER
541         bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
542                             MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
543         depends on LEDS
544         default y if ARCH_EBSA110
545         help
546           If you say Y here, one of the system LEDs (the green one on the
547           NetWinder, the amber one on the EBSA285, or the red one on the LART)
548           will flash regularly to indicate that the system is still
549           operational. This is mainly useful to kernel hackers who are
550           debugging unstable kernels.
551
552           The LART uses the same LED for both Timer LED and CPU usage LED
553           functions. You may choose to use both, but the Timer LED function
554           will overrule the CPU usage LED.
555
556 config LEDS_CPU
557         bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
558                         !ARCH_OMAP) || MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
559         depends on LEDS
560         help
561           If you say Y here, the red LED will be used to give a good real
562           time indication of CPU usage, by lighting whenever the idle task
563           is not currently executing.
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 ALIGNMENT_TRAP
570         bool
571         default y if !ARCH_EBSA110
572         help
573           ARM processors can not fetch/store information which is not
574           naturally aligned on the bus, i.e., a 4 byte fetch must start at an
575           address divisible by 4. On 32-bit ARM processors, these non-aligned
576           fetch/store instructions will be emulated in software if you say
577           here, which has a severe performance impact. This is necessary for
578           correct operation of some network protocols. With an IP-only
579           configuration it is safe to say N, otherwise say Y.
580
581 endmenu
582
583 menu "Boot options"
584
585 # Compressed boot loader in ROM.  Yes, we really want to ask about
586 # TEXT and BSS so we preserve their values in the config files.
587 config ZBOOT_ROM_TEXT
588         hex "Compressed ROM boot loader base address"
589         default "0"
590         help
591           The physical address at which the ROM-able zImage is to be
592           placed in the target.  Platforms which normally make use of
593           ROM-able zImage formats normally set this to a suitable
594           value in their defconfig file.
595
596           If ZBOOT_ROM is not enabled, this has no effect.
597
598 config ZBOOT_ROM_BSS
599         hex "Compressed ROM boot loader BSS address"
600         default "0"
601         help
602           The base address of 64KiB of read/write memory in the target
603           for the ROM-able zImage, which must be available while the
604           decompressor is running.  Platforms which normally make use of
605           ROM-able zImage formats normally set this to a suitable
606           value in their defconfig file.
607
608           If ZBOOT_ROM is not enabled, this has no effect.
609
610 config ZBOOT_ROM
611         bool "Compressed boot loader in ROM/flash"
612         depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
613         help
614           Say Y here if you intend to execute your compressed kernel image
615           (zImage) directly from ROM or flash.  If unsure, say N.
616
617 config CMDLINE
618         string "Default kernel command string"
619         default ""
620         help
621           On some architectures (EBSA110 and CATS), there is currently no way
622           for the boot loader to pass arguments to the kernel. For these
623           architectures, you should supply some command-line options at build
624           time by entering them here. As a minimum, you should specify the
625           memory size and the root device (e.g., mem=64M root=/dev/nfs).
626
627 config XIP_KERNEL
628         bool "Kernel Execute-In-Place from ROM"
629         depends on !ZBOOT_ROM
630         help
631           Execute-In-Place allows the kernel to run from non-volatile storage
632           directly addressable by the CPU, such as NOR flash. This saves RAM
633           space since the text section of the kernel is not loaded from flash
634           to RAM.  Read-write sections, such as the data section and stack,
635           are still copied to RAM.  The XIP kernel is not compressed since
636           it has to run directly from flash, so it will take more space to
637           store it.  The flash address used to link the kernel object files,
638           and for storing it, is configuration dependent. Therefore, if you
639           say Y here, you must know the proper physical address where to
640           store the kernel image depending on your own flash memory usage.
641
642           Also note that the make target becomes "make xipImage" rather than
643           "make zImage" or "make Image".  The final kernel binary to put in
644           ROM memory will be arch/arm/boot/xipImage.
645
646           If unsure, say N.
647
648 config XIP_PHYS_ADDR
649         hex "XIP Kernel Physical Location"
650         depends on XIP_KERNEL
651         default "0x00080000"
652         help
653           This is the physical address in your flash memory the kernel will
654           be linked for and stored to.  This address is dependent on your
655           own flash usage.
656
657 endmenu
658
659 if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP1)
660
661 menu "CPU Frequency scaling"
662
663 source "drivers/cpufreq/Kconfig"
664
665 config CPU_FREQ_SA1100
666         bool
667         depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT)
668         default y
669
670 config CPU_FREQ_SA1110
671         bool
672         depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3)
673         default y
674
675 config CPU_FREQ_INTEGRATOR
676         tristate "CPUfreq driver for ARM Integrator CPUs"
677         depends on ARCH_INTEGRATOR && CPU_FREQ
678         default y
679         help
680           This enables the CPUfreq driver for ARM Integrator CPUs.
681
682           For details, take a look at <file:Documentation/cpu-freq>.
683
684           If in doubt, say Y.
685
686 endmenu
687
688 endif
689
690 menu "Floating point emulation"
691
692 comment "At least one emulation must be selected"
693
694 config FPE_NWFPE
695         bool "NWFPE math emulation"
696         depends on !AEABI || OABI_COMPAT
697         ---help---
698           Say Y to include the NWFPE floating point emulator in the kernel.
699           This is necessary to run most binaries. Linux does not currently
700           support floating point hardware so you need to say Y here even if
701           your machine has an FPA or floating point co-processor podule.
702
703           You may say N here if you are going to load the Acorn FPEmulator
704           early in the bootup.
705
706 config FPE_NWFPE_XP
707         bool "Support extended precision"
708         depends on FPE_NWFPE
709         help
710           Say Y to include 80-bit support in the kernel floating-point
711           emulator.  Otherwise, only 32 and 64-bit support is compiled in.
712           Note that gcc does not generate 80-bit operations by default,
713           so in most cases this option only enlarges the size of the
714           floating point emulator without any good reason.
715
716           You almost surely want to say N here.
717
718 config FPE_FASTFPE
719         bool "FastFPE math emulation (EXPERIMENTAL)"
720         depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
721         ---help---
722           Say Y here to include the FAST floating point emulator in the kernel.
723           This is an experimental much faster emulator which now also has full
724           precision for the mantissa.  It does not support any exceptions.
725           It is very simple, and approximately 3-6 times faster than NWFPE.
726
727           It should be sufficient for most programs.  It may be not suitable
728           for scientific calculations, but you have to check this for yourself.
729           If you do not feel you need a faster FP emulation you should better
730           choose NWFPE.
731
732 config VFP
733         bool "VFP-format floating point maths"
734         depends on CPU_V6 || CPU_ARM926T
735         help
736           Say Y to include VFP support code in the kernel. This is needed
737           if your hardware includes a VFP unit.
738
739           Please see <file:Documentation/arm/VFP/release-notes.txt> for
740           release notes and additional status information.
741
742           Say N if your target does not have VFP hardware.
743
744 endmenu
745
746 menu "Userspace binary formats"
747
748 source "fs/Kconfig.binfmt"
749
750 config ARTHUR
751         tristate "RISC OS personality"
752         depends on !AEABI
753         help
754           Say Y here to include the kernel code necessary if you want to run
755           Acorn RISC OS/Arthur binaries under Linux. This code is still very
756           experimental; if this sounds frightening, say N and sleep in peace.
757           You can also say M here to compile this support as a module (which
758           will be called arthur).
759
760 endmenu
761
762 menu "Power management options"
763
764 source "kernel/power/Kconfig"
765
766 config APM
767         tristate "Advanced Power Management Emulation"
768         ---help---
769           APM is a BIOS specification for saving power using several different
770           techniques. This is mostly useful for battery powered laptops with
771           APM compliant BIOSes. If you say Y here, the system time will be
772           reset after a RESUME operation, the /proc/apm device will provide
773           battery status information, and user-space programs will receive
774           notification of APM "events" (e.g. battery status change).
775
776           In order to use APM, you will need supporting software. For location
777           and more information, read <file:Documentation/pm.txt> and the
778           Battery Powered Linux mini-HOWTO, available from
779           <http://www.tldp.org/docs.html#howto>.
780
781           This driver does not spin down disk drives (see the hdparm(8)
782           manpage ("man 8 hdparm") for that), and it doesn't turn off
783           VESA-compliant "green" monitors.
784
785           Generally, if you don't have a battery in your machine, there isn't
786           much point in using this driver and you should say N. If you get
787           random kernel OOPSes or reboots that don't seem to be related to
788           anything, try disabling/enabling this option (or disabling/enabling
789           APM in your BIOS).
790
791 endmenu
792
793 source "net/Kconfig"
794
795 menu "Device Drivers"
796
797 source "drivers/base/Kconfig"
798
799 source "drivers/connector/Kconfig"
800
801 if ALIGNMENT_TRAP
802 source "drivers/mtd/Kconfig"
803 endif
804
805 source "drivers/parport/Kconfig"
806
807 source "drivers/pnp/Kconfig"
808
809 source "drivers/block/Kconfig"
810
811 source "drivers/acorn/block/Kconfig"
812
813 if PCMCIA || ARCH_CLPS7500 || ARCH_IOP3XX || ARCH_IXP4XX \
814         || ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
815         || ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \
816         || ARCH_IXP23XX
817 source "drivers/ide/Kconfig"
818 endif
819
820 source "drivers/scsi/Kconfig"
821
822 source "drivers/md/Kconfig"
823
824 source "drivers/message/fusion/Kconfig"
825
826 source "drivers/ieee1394/Kconfig"
827
828 source "drivers/message/i2o/Kconfig"
829
830 source "drivers/net/Kconfig"
831
832 source "drivers/isdn/Kconfig"
833
834 # input before char - char/joystick depends on it. As does USB.
835
836 source "drivers/input/Kconfig"
837
838 source "drivers/char/Kconfig"
839
840 source "drivers/i2c/Kconfig"
841
842 source "drivers/spi/Kconfig"
843
844 source "drivers/w1/Kconfig"
845
846 source "drivers/hwmon/Kconfig"
847
848 #source "drivers/l3/Kconfig"
849
850 source "drivers/misc/Kconfig"
851
852 source "drivers/mfd/Kconfig"
853
854 source "drivers/leds/Kconfig"
855
856 source "drivers/media/Kconfig"
857
858 source "drivers/video/Kconfig"
859
860 source "sound/Kconfig"
861
862 source "drivers/usb/Kconfig"
863
864 source "drivers/mmc/Kconfig"
865
866 source "drivers/rtc/Kconfig"
867
868 endmenu
869
870 source "fs/Kconfig"
871
872 source "arch/arm/oprofile/Kconfig"
873
874 source "arch/arm/Kconfig.debug"
875
876 source "kernel/vserver/Kconfig"
877
878 source "security/Kconfig"
879
880 source "crypto/Kconfig"
881
882 source "lib/Kconfig"