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