xref: /linux/arch/arm/Kconfig (revision e4d06e39530559513c7e335ef7ca4675f8146220)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# For a description of the syntax of this configuration file,
31da177e4SLinus Torvalds# see Documentation/kbuild/kconfig-language.txt.
41da177e4SLinus Torvalds#
51da177e4SLinus Torvalds
61da177e4SLinus Torvaldsmainmenu "Linux Kernel Configuration"
71da177e4SLinus Torvalds
81da177e4SLinus Torvaldsconfig ARM
91da177e4SLinus Torvalds	bool
101da177e4SLinus Torvalds	default y
1112b824fbSAlessandro Zummo	select RTC_LIB
121da177e4SLinus Torvalds	help
131da177e4SLinus Torvalds	  The ARM series is a line of low-power-consumption RISC chip designs
14f6c8965aSMartin Michlmayr	  licensed by ARM Ltd and targeted at embedded applications and
151da177e4SLinus Torvalds	  handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
161da177e4SLinus Torvalds	  manufactured, but legacy ARM-based PC hardware remains popular in
171da177e4SLinus Torvalds	  Europe.  There is an ARM Linux project with a web page at
181da177e4SLinus Torvalds	  <http://www.arm.linux.org.uk/>.
191da177e4SLinus Torvalds
20746140c7SKevin Hilmanconfig GENERIC_TIME
21746140c7SKevin Hilman	bool
22746140c7SKevin Hilman	default n
23746140c7SKevin Hilman
241da177e4SLinus Torvaldsconfig MMU
251da177e4SLinus Torvalds	bool
261da177e4SLinus Torvalds	default y
271da177e4SLinus Torvalds
281da177e4SLinus Torvaldsconfig EISA
291da177e4SLinus Torvalds	bool
301da177e4SLinus Torvalds	---help---
311da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
321da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
331da177e4SLinus Torvalds
341da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
351da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
361da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
371da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
381da177e4SLinus Torvalds
391da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
401da177e4SLinus Torvalds
411da177e4SLinus Torvalds	  Otherwise, say N.
421da177e4SLinus Torvalds
431da177e4SLinus Torvaldsconfig SBUS
441da177e4SLinus Torvalds	bool
451da177e4SLinus Torvalds
461da177e4SLinus Torvaldsconfig MCA
471da177e4SLinus Torvalds	bool
481da177e4SLinus Torvalds	help
491da177e4SLinus Torvalds	  MicroChannel Architecture is found in some IBM PS/2 machines and
501da177e4SLinus Torvalds	  laptops.  It is a bus system similar to PCI or ISA. See
511da177e4SLinus Torvalds	  <file:Documentation/mca.txt> (and especially the web page given
521da177e4SLinus Torvalds	  there) before attempting to build an MCA bus kernel.
531da177e4SLinus Torvalds
544a2581a0SThomas Gleixnerconfig GENERIC_HARDIRQS
554a2581a0SThomas Gleixner	bool
564a2581a0SThomas Gleixner	default y
574a2581a0SThomas Gleixner
587ad1bcb2SRussell Kingconfig TRACE_IRQFLAGS_SUPPORT
597ad1bcb2SRussell King	bool
607ad1bcb2SRussell King	default y
617ad1bcb2SRussell King
624a2581a0SThomas Gleixnerconfig HARDIRQS_SW_RESEND
634a2581a0SThomas Gleixner	bool
644a2581a0SThomas Gleixner	default y
654a2581a0SThomas Gleixner
664a2581a0SThomas Gleixnerconfig GENERIC_IRQ_PROBE
674a2581a0SThomas Gleixner	bool
684a2581a0SThomas Gleixner	default y
694a2581a0SThomas Gleixner
701da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
711da177e4SLinus Torvalds	bool
721da177e4SLinus Torvalds	default y
731da177e4SLinus Torvalds
741da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
751da177e4SLinus Torvalds	bool
761da177e4SLinus Torvalds
77f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
78f0d1b0b3SDavid Howells	bool
79f0d1b0b3SDavid Howells	default n
80f0d1b0b3SDavid Howells
81f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
82f0d1b0b3SDavid Howells	bool
83f0d1b0b3SDavid Howells	default n
84f0d1b0b3SDavid Howells
85b89c3b16SAkinobu Mitaconfig GENERIC_HWEIGHT
86b89c3b16SAkinobu Mita	bool
87b89c3b16SAkinobu Mita	default y
88b89c3b16SAkinobu Mita
891da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
901da177e4SLinus Torvalds	bool
911da177e4SLinus Torvalds	default y
921da177e4SLinus Torvalds
931da177e4SLinus Torvaldsconfig GENERIC_BUST_SPINLOCK
941da177e4SLinus Torvalds	bool
951da177e4SLinus Torvalds
96a08b6b79Sviro@ZenIV.linux.org.ukconfig ARCH_MAY_HAVE_PC_FDC
97a08b6b79Sviro@ZenIV.linux.org.uk	bool
98a08b6b79Sviro@ZenIV.linux.org.uk
991da177e4SLinus Torvaldsconfig GENERIC_ISA_DMA
1001da177e4SLinus Torvalds	bool
1011da177e4SLinus Torvalds
1021da177e4SLinus Torvaldsconfig FIQ
1031da177e4SLinus Torvalds	bool
1041da177e4SLinus Torvalds
105034d2f5aSAl Viroconfig ARCH_MTD_XIP
106034d2f5aSAl Viro	bool
107034d2f5aSAl Viro
108c760fc19SHyok S. Choiconfig VECTORS_BASE
109c760fc19SHyok S. Choi	hex
1106afd6faeSHyok S. Choi	default 0xffff0000 if MMU || CPU_HIGH_VECTOR
111c760fc19SHyok S. Choi	default DRAM_BASE if REMAP_VECTORS_TO_RAM
112c760fc19SHyok S. Choi	default 0x00000000
113c760fc19SHyok S. Choi	help
114c760fc19SHyok S. Choi	  The base address of exception vectors.
115c760fc19SHyok S. Choi
1161da177e4SLinus Torvaldssource "init/Kconfig"
1171da177e4SLinus Torvalds
1181da177e4SLinus Torvaldsmenu "System Type"
1191da177e4SLinus Torvalds
1201da177e4SLinus Torvaldschoice
1211da177e4SLinus Torvalds	prompt "ARM system type"
1226a0e2430SCatalin Marinas	default ARCH_VERSATILE
1231da177e4SLinus Torvalds
1244af6fee1SDeepak Saxenaconfig ARCH_AAEC2000
1254af6fee1SDeepak Saxena	bool "Agilent AAEC-2000 based"
1264af6fee1SDeepak Saxena	select ARM_AMBA
1274af6fee1SDeepak Saxena	help
1284af6fee1SDeepak Saxena	  This enables support for systems based on the Agilent AAEC-2000
1294af6fee1SDeepak Saxena
1304af6fee1SDeepak Saxenaconfig ARCH_INTEGRATOR
1314af6fee1SDeepak Saxena	bool "ARM Ltd. Integrator family"
1324af6fee1SDeepak Saxena	select ARM_AMBA
1334af6fee1SDeepak Saxena	select ICST525
1344af6fee1SDeepak Saxena	help
1354af6fee1SDeepak Saxena	  Support for ARM's Integrator platform.
1364af6fee1SDeepak Saxena
1374af6fee1SDeepak Saxenaconfig ARCH_REALVIEW
1384af6fee1SDeepak Saxena	bool "ARM Ltd. RealView family"
1394af6fee1SDeepak Saxena	select ARM_AMBA
1404af6fee1SDeepak Saxena	select ICST307
1414af6fee1SDeepak Saxena	help
1424af6fee1SDeepak Saxena	  This enables support for ARM Ltd RealView boards.
1434af6fee1SDeepak Saxena
1444af6fee1SDeepak Saxenaconfig ARCH_VERSATILE
1454af6fee1SDeepak Saxena	bool "ARM Ltd. Versatile family"
1464af6fee1SDeepak Saxena	select ARM_AMBA
1474af6fee1SDeepak Saxena	select ARM_VIC
1484af6fee1SDeepak Saxena	select ICST307
1494af6fee1SDeepak Saxena	help
1504af6fee1SDeepak Saxena	  This enables support for ARM Ltd Versatile board.
1514af6fee1SDeepak Saxena
1528fc5ffa0SAndrew Victorconfig ARCH_AT91
1538fc5ffa0SAndrew Victor	bool "Atmel AT91"
1544af6fee1SDeepak Saxena	help
1558fc5ffa0SAndrew Victor	  This enables support for systems based on the Atmel AT91RM9200
1568fc5ffa0SAndrew Victor	  and AT91SAM9xxx processors.
1574af6fee1SDeepak Saxena
1581da177e4SLinus Torvaldsconfig ARCH_CLPS7500
1594af6fee1SDeepak Saxena	bool "Cirrus CL-PS7500FE"
1601da177e4SLinus Torvalds	select TIMER_ACORN
161f7e68bbfSRussell King	select ISA
162f999b8bdSMartin Michlmayr	help
163f999b8bdSMartin Michlmayr	  Support for the Cirrus Logic PS7500FE system-on-a-chip.
1641da177e4SLinus Torvalds
1651da177e4SLinus Torvaldsconfig ARCH_CLPS711X
1664af6fee1SDeepak Saxena	bool "Cirrus Logic CLPS711x/EP721x-based"
167f999b8bdSMartin Michlmayr	help
168f999b8bdSMartin Michlmayr	  Support for Cirrus Logic 711x/721x based boards.
1691da177e4SLinus Torvalds
1701da177e4SLinus Torvaldsconfig ARCH_CO285
1711da177e4SLinus Torvalds	bool "Co-EBSA285"
1721da177e4SLinus Torvalds	select FOOTBRIDGE
1731da177e4SLinus Torvalds	select FOOTBRIDGE_ADDIN
174f999b8bdSMartin Michlmayr	help
175f999b8bdSMartin Michlmayr	  Support for Intel's EBSA285 companion chip.
1761da177e4SLinus Torvalds
1771da177e4SLinus Torvaldsconfig ARCH_EBSA110
1781da177e4SLinus Torvalds	bool "EBSA-110"
179f7e68bbfSRussell King	select ISA
1801da177e4SLinus Torvalds	help
1811da177e4SLinus Torvalds	  This is an evaluation board for the StrongARM processor available
182f6c8965aSMartin Michlmayr	  from Digital. It has limited hardware on-board, including an
1831da177e4SLinus Torvalds	  Ethernet interface, two PCMCIA sockets, two serial ports and a
1841da177e4SLinus Torvalds	  parallel port.
1851da177e4SLinus Torvalds
186e7736d47SLennert Buytenhekconfig ARCH_EP93XX
187e7736d47SLennert Buytenhek	bool "EP93xx-based"
188e7736d47SLennert Buytenhek	select ARM_AMBA
189e7736d47SLennert Buytenhek	select ARM_VIC
190e7736d47SLennert Buytenhek	help
191e7736d47SLennert Buytenhek	  This enables support for the Cirrus EP93xx series of CPUs.
192e7736d47SLennert Buytenhek
1931da177e4SLinus Torvaldsconfig ARCH_FOOTBRIDGE
1941da177e4SLinus Torvalds	bool "FootBridge"
1951da177e4SLinus Torvalds	select FOOTBRIDGE
196f999b8bdSMartin Michlmayr	help
197f999b8bdSMartin Michlmayr	  Support for systems based on the DC21285 companion chip
198f999b8bdSMartin Michlmayr	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
1991da177e4SLinus Torvalds
2004af6fee1SDeepak Saxenaconfig ARCH_NETX
2014af6fee1SDeepak Saxena	bool "Hilscher NetX based"
2024af6fee1SDeepak Saxena	select ARM_VIC
203f999b8bdSMartin Michlmayr	help
2044af6fee1SDeepak Saxena	  This enables support for systems based on the Hilscher NetX Soc
2054af6fee1SDeepak Saxena
2064af6fee1SDeepak Saxenaconfig ARCH_H720X
2074af6fee1SDeepak Saxena	bool "Hynix HMS720x-based"
2084af6fee1SDeepak Saxena	select ISA_DMA_API
2094af6fee1SDeepak Saxena	help
2104af6fee1SDeepak Saxena	  This enables support for systems based on the Hynix HMS720x
2114af6fee1SDeepak Saxena
2124af6fee1SDeepak Saxenaconfig ARCH_IMX
2134af6fee1SDeepak Saxena	bool "IMX"
2144af6fee1SDeepak Saxena	help
2154af6fee1SDeepak Saxena	  Support for Motorola's i.MX family of processors (MX1, MXL).
2161da177e4SLinus Torvalds
2173f7e5815SLennert Buytenhekconfig ARCH_IOP32X
2183f7e5815SLennert Buytenhek	bool "IOP32x-based"
219a4f7e763SRussell King	depends on MMU
2207ae1f7ecSLennert Buytenhek	select PLAT_IOP
221f7e68bbfSRussell King	select PCI
222f999b8bdSMartin Michlmayr	help
2233f7e5815SLennert Buytenhek	  Support for Intel's 80219 and IOP32X (XScale) family of
2243f7e5815SLennert Buytenhek	  processors.
2253f7e5815SLennert Buytenhek
2263f7e5815SLennert Buytenhekconfig ARCH_IOP33X
2273f7e5815SLennert Buytenhek	bool "IOP33x-based"
2283f7e5815SLennert Buytenhek	depends on MMU
2297ae1f7ecSLennert Buytenhek	select PLAT_IOP
2303f7e5815SLennert Buytenhek	select PCI
2313f7e5815SLennert Buytenhek	help
2323f7e5815SLennert Buytenhek	  Support for Intel's IOP33X (XScale) family of processors.
2331da177e4SLinus Torvalds
234285f5fa7SDan Williamsconfig ARCH_IOP13XX
235285f5fa7SDan Williams	bool "IOP13xx-based"
236285f5fa7SDan Williams	select PCI
237285f5fa7SDan Williams	help
238285f5fa7SDan Williams	  Support for Intel's IOP13XX (XScale) family of processors.
239285f5fa7SDan Williams
2401da177e4SLinus Torvaldsconfig ARCH_IXP4XX
2411da177e4SLinus Torvalds	bool "IXP4xx-based"
242a4f7e763SRussell King	depends on MMU
24384904d0eSKevin Hilman	select GENERIC_TIME
244f999b8bdSMartin Michlmayr	help
245f999b8bdSMartin Michlmayr	  Support for Intel's IXP4XX (XScale) family of processors.
2461da177e4SLinus Torvalds
2471da177e4SLinus Torvaldsconfig ARCH_IXP2000
2481da177e4SLinus Torvalds	bool "IXP2400/2800-based"
249a4f7e763SRussell King	depends on MMU
250f7e68bbfSRussell King	select PCI
251f999b8bdSMartin Michlmayr	help
252f999b8bdSMartin Michlmayr	  Support for Intel's IXP2400/2800 (XScale) family of processors.
2531da177e4SLinus Torvalds
254c4713074SLennert Buytenhekconfig ARCH_IXP23XX
255c4713074SLennert Buytenhek 	bool "IXP23XX-based"
256a4f7e763SRussell King	depends on MMU
257c4713074SLennert Buytenhek 	select PCI
258c4713074SLennert Buytenhek	help
259c4713074SLennert Buytenhek	  Support for Intel's IXP23xx (XScale) family of processors.
260c4713074SLennert Buytenhek
2611da177e4SLinus Torvaldsconfig ARCH_L7200
2621da177e4SLinus Torvalds	bool "LinkUp-L7200"
2631da177e4SLinus Torvalds	select FIQ
2641da177e4SLinus Torvalds	help
2651da177e4SLinus Torvalds	  Say Y here if you intend to run this kernel on a LinkUp Systems
2661da177e4SLinus Torvalds	  L7200 Software Development Board which uses an ARM720T processor.
2671da177e4SLinus Torvalds	  Information on this board can be obtained at:
2681da177e4SLinus Torvalds
2691da177e4SLinus Torvalds	  <http://www.linkupsys.com/>
2701da177e4SLinus Torvalds
2711da177e4SLinus Torvalds	  If you have any questions or comments about the Linux kernel port
2721da177e4SLinus Torvalds	  to this board, send e-mail to <sjhill@cotw.com>.
2731da177e4SLinus Torvalds
2744af6fee1SDeepak Saxenaconfig ARCH_PNX4008
2754af6fee1SDeepak Saxena	bool "Philips Nexperia PNX4008 Mobile"
2764af6fee1SDeepak Saxena	help
2774af6fee1SDeepak Saxena	  This enables support for Philips PNX4008 mobile platform.
2784af6fee1SDeepak Saxena
2791da177e4SLinus Torvaldsconfig ARCH_PXA
2801da177e4SLinus Torvalds	bool "PXA2xx-based"
281a4f7e763SRussell King	depends on MMU
282034d2f5aSAl Viro	select ARCH_MTD_XIP
283f999b8bdSMartin Michlmayr	help
284f999b8bdSMartin Michlmayr	  Support for Intel's PXA2XX processor line.
2851da177e4SLinus Torvalds
2861da177e4SLinus Torvaldsconfig ARCH_RPC
2871da177e4SLinus Torvalds	bool "RiscPC"
2881da177e4SLinus Torvalds	select ARCH_ACORN
2891da177e4SLinus Torvalds	select FIQ
2901da177e4SLinus Torvalds	select TIMER_ACORN
291a08b6b79Sviro@ZenIV.linux.org.uk	select ARCH_MAY_HAVE_PC_FDC
292065909b9SRussell King	select ISA_DMA_API
2931da177e4SLinus Torvalds	help
2941da177e4SLinus Torvalds	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
2951da177e4SLinus Torvalds	  CD-ROM interface, serial and parallel port, and the floppy drive.
2961da177e4SLinus Torvalds
2971da177e4SLinus Torvaldsconfig ARCH_SA1100
2981da177e4SLinus Torvalds	bool "SA1100-based"
299f7e68bbfSRussell King	select ISA
3003cd9e19eSRussell King	select ARCH_DISCONTIGMEM_ENABLE
301034d2f5aSAl Viro	select ARCH_MTD_XIP
302f999b8bdSMartin Michlmayr	help
303f999b8bdSMartin Michlmayr	  Support for StrongARM 11x0 based boards.
3041da177e4SLinus Torvalds
3051da177e4SLinus Torvaldsconfig ARCH_S3C2410
306*e4d06e39SBen Dooks	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
3071da177e4SLinus Torvalds	help
3081da177e4SLinus Torvalds	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
3091da177e4SLinus Torvalds	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
310f6c8965aSMartin Michlmayr	  the Samsung SMDK2410 development board (and derivatives).
3111da177e4SLinus Torvalds
3121da177e4SLinus Torvaldsconfig ARCH_SHARK
3131da177e4SLinus Torvalds	bool "Shark"
314f7e68bbfSRussell King	select ISA
315f7e68bbfSRussell King	select ISA_DMA
316f7e68bbfSRussell King	select PCI
317f999b8bdSMartin Michlmayr	help
318f999b8bdSMartin Michlmayr	  Support for the StrongARM based Digital DNARD machine, also known
319f999b8bdSMartin Michlmayr	  as "Shark" (<http://www.shark-linux.de/shark.html>).
3201da177e4SLinus Torvalds
3211da177e4SLinus Torvaldsconfig ARCH_LH7A40X
3221da177e4SLinus Torvalds	bool "Sharp LH7A40X"
3231da177e4SLinus Torvalds	help
3241da177e4SLinus Torvalds	  Say Y here for systems based on one of the Sharp LH7A40X
3251da177e4SLinus Torvalds	  System on a Chip processors.  These CPUs include an ARM922T
3261da177e4SLinus Torvalds	  core with a wide array of integrated devices for
3271da177e4SLinus Torvalds	  hand-held and low-power applications.
3281da177e4SLinus Torvalds
3291da177e4SLinus Torvaldsconfig ARCH_OMAP
3301da177e4SLinus Torvalds	bool "TI OMAP"
331f999b8bdSMartin Michlmayr	help
332f999b8bdSMartin Michlmayr	  Support for TI's OMAP platform (OMAP1 and OMAP2).
3331da177e4SLinus Torvalds
3341da177e4SLinus Torvaldsendchoice
3351da177e4SLinus Torvalds
3361da177e4SLinus Torvaldssource "arch/arm/mach-clps711x/Kconfig"
3371da177e4SLinus Torvalds
338e7736d47SLennert Buytenheksource "arch/arm/mach-ep93xx/Kconfig"
339e7736d47SLennert Buytenhek
3401da177e4SLinus Torvaldssource "arch/arm/mach-footbridge/Kconfig"
3411da177e4SLinus Torvalds
3421da177e4SLinus Torvaldssource "arch/arm/mach-integrator/Kconfig"
3431da177e4SLinus Torvalds
3443f7e5815SLennert Buytenheksource "arch/arm/mach-iop32x/Kconfig"
3453f7e5815SLennert Buytenhek
3463f7e5815SLennert Buytenheksource "arch/arm/mach-iop33x/Kconfig"
3471da177e4SLinus Torvalds
348285f5fa7SDan Williamssource "arch/arm/mach-iop13xx/Kconfig"
349285f5fa7SDan Williams
3501da177e4SLinus Torvaldssource "arch/arm/mach-ixp4xx/Kconfig"
3511da177e4SLinus Torvalds
3521da177e4SLinus Torvaldssource "arch/arm/mach-ixp2000/Kconfig"
3531da177e4SLinus Torvalds
354c4713074SLennert Buytenheksource "arch/arm/mach-ixp23xx/Kconfig"
355c4713074SLennert Buytenhek
3561da177e4SLinus Torvaldssource "arch/arm/mach-pxa/Kconfig"
3571da177e4SLinus Torvalds
3581da177e4SLinus Torvaldssource "arch/arm/mach-sa1100/Kconfig"
3591da177e4SLinus Torvalds
360d48af15eSTony Lindgrensource "arch/arm/plat-omap/Kconfig"
361d48af15eSTony Lindgren
362d48af15eSTony Lindgrensource "arch/arm/mach-omap1/Kconfig"
3631da177e4SLinus Torvalds
3641dbae815STony Lindgrensource "arch/arm/mach-omap2/Kconfig"
3651dbae815STony Lindgren
366a21765a7SBen Dookssource "arch/arm/plat-s3c24xx/Kconfig"
367a21765a7SBen Dooks
368a21765a7SBen Dooksif ARCH_S3C2410
369a21765a7SBen Dookssource "arch/arm/mach-s3c2400/Kconfig"
3701da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig"
371a21765a7SBen Dookssource "arch/arm/mach-s3c2412/Kconfig"
372a21765a7SBen Dookssource "arch/arm/mach-s3c2440/Kconfig"
373a21765a7SBen Dookssource "arch/arm/mach-s3c2442/Kconfig"
374*e4d06e39SBen Dookssource "arch/arm/mach-s3c2443/Kconfig"
375a21765a7SBen Dooksendif
3761da177e4SLinus Torvalds
3771da177e4SLinus Torvaldssource "arch/arm/mach-lh7a40x/Kconfig"
3781da177e4SLinus Torvalds
3791da177e4SLinus Torvaldssource "arch/arm/mach-imx/Kconfig"
3801da177e4SLinus Torvalds
3811da177e4SLinus Torvaldssource "arch/arm/mach-h720x/Kconfig"
3821da177e4SLinus Torvalds
3831da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig"
3841da177e4SLinus Torvalds
385038c5b60SBellido Nicolassource "arch/arm/mach-aaec2000/Kconfig"
386038c5b60SBellido Nicolas
3878ad68bbfSCatalin Marinassource "arch/arm/mach-realview/Kconfig"
3888ad68bbfSCatalin Marinas
38973a59c1cSSAN Peoplesource "arch/arm/mach-at91rm9200/Kconfig"
39073a59c1cSSAN People
391bb6d8c88SSascha Hauersource "arch/arm/mach-netx/Kconfig"
392bb6d8c88SSascha Hauer
3931da177e4SLinus Torvalds# Definitions to make life easier
3941da177e4SLinus Torvaldsconfig ARCH_ACORN
3951da177e4SLinus Torvalds	bool
3961da177e4SLinus Torvalds
3977ae1f7ecSLennert Buytenhekconfig PLAT_IOP
3987ae1f7ecSLennert Buytenhek	bool
3997ae1f7ecSLennert Buytenhek
4001da177e4SLinus Torvaldssource arch/arm/mm/Kconfig
4011da177e4SLinus Torvalds
402afe4b25eSLennert Buytenhekconfig IWMMXT
403afe4b25eSLennert Buytenhek	bool "Enable iWMMXt support"
404afe4b25eSLennert Buytenhek	depends CPU_XSCALE || CPU_XSC3
405afe4b25eSLennert Buytenhek	default y if PXA27x
406afe4b25eSLennert Buytenhek	help
407afe4b25eSLennert Buytenhek	  Enable support for iWMMXt context switching at run time if
408afe4b25eSLennert Buytenhek	  running on a CPU that supports it.
409afe4b25eSLennert Buytenhek
4101da177e4SLinus Torvalds#  bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
4111da177e4SLinus Torvaldsconfig XSCALE_PMU
4121da177e4SLinus Torvalds	bool
4131da177e4SLinus Torvalds	depends on CPU_XSCALE && !XSCALE_PMU_TIMER
4141da177e4SLinus Torvalds	default y
4151da177e4SLinus Torvalds
4163b93e7b0SHyok S. Choiif !MMU
4173b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu"
4183b93e7b0SHyok S. Choiendif
4193b93e7b0SHyok S. Choi
4201da177e4SLinus Torvaldsendmenu
4211da177e4SLinus Torvalds
4221da177e4SLinus Torvaldssource "arch/arm/common/Kconfig"
4231da177e4SLinus Torvalds
4241da177e4SLinus Torvaldsconfig FORCE_MAX_ZONEORDER
4251da177e4SLinus Torvalds	int
4261da177e4SLinus Torvalds	depends on SA1111
4271da177e4SLinus Torvalds	default "9"
4281da177e4SLinus Torvalds
4291da177e4SLinus Torvaldsmenu "Bus support"
4301da177e4SLinus Torvalds
4311da177e4SLinus Torvaldsconfig ARM_AMBA
4321da177e4SLinus Torvalds	bool
4331da177e4SLinus Torvalds
4341da177e4SLinus Torvaldsconfig ISA
4351da177e4SLinus Torvalds	bool
4361da177e4SLinus Torvalds	help
4371da177e4SLinus Torvalds	  Find out whether you have ISA slots on your motherboard.  ISA is the
4381da177e4SLinus Torvalds	  name of a bus system, i.e. the way the CPU talks to the other stuff
4391da177e4SLinus Torvalds	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
4401da177e4SLinus Torvalds	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
4411da177e4SLinus Torvalds	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
4421da177e4SLinus Torvalds
443065909b9SRussell King# Select ISA DMA controller support
4441da177e4SLinus Torvaldsconfig ISA_DMA
4451da177e4SLinus Torvalds	bool
446065909b9SRussell King	select ISA_DMA_API
4471da177e4SLinus Torvalds
448065909b9SRussell King# Select ISA DMA interface
4495cae841bSAl Viroconfig ISA_DMA_API
4505cae841bSAl Viro	bool
4515cae841bSAl Viro
4521da177e4SLinus Torvaldsconfig PCI
45368939121SMilan Svoboda	bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX
4541da177e4SLinus Torvalds	help
4551da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
4561da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
4571da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
4581da177e4SLinus Torvalds	  VESA. If you have PCI, say Y, otherwise N.
4591da177e4SLinus Torvalds
4601da177e4SLinus Torvalds	  The PCI-HOWTO, available from
4611da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>, contains valuable
4621da177e4SLinus Torvalds	  information about which PCI hardware does work under Linux and which
4631da177e4SLinus Torvalds	  doesn't.
4641da177e4SLinus Torvalds
4651da177e4SLinus Torvalds# Select the host bridge type
4661da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505
4671da177e4SLinus Torvalds	bool
4681da177e4SLinus Torvalds	depends on PCI && ARCH_SHARK
4691da177e4SLinus Torvalds	default y
4701da177e4SLinus Torvalds
4711da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
4721da177e4SLinus Torvalds
4731da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
4741da177e4SLinus Torvalds
4751da177e4SLinus Torvaldsendmenu
4761da177e4SLinus Torvalds
4771da177e4SLinus Torvaldsmenu "Kernel Features"
4781da177e4SLinus Torvalds
4791da177e4SLinus Torvaldsconfig SMP
4801da177e4SLinus Torvalds	bool "Symmetric Multi-Processing (EXPERIMENTAL)"
481f6db449cSRussell King	depends on EXPERIMENTAL && REALVIEW_MPCORE
4821da177e4SLinus Torvalds	help
4831da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
4841da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
4851da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
4861da177e4SLinus Torvalds
4871da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
4881da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
4891da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all, single
4901da177e4SLinus Torvalds	  processor machines. On a single processor machine, the kernel will
4911da177e4SLinus Torvalds	  run faster if you say N here.
4921da177e4SLinus Torvalds
49312c62c2eSArthur Othieno	  See also the <file:Documentation/smp.txt>,
49412c62c2eSArthur Othieno	  <file:Documentation/i386/IO-APIC.txt>,
4951da177e4SLinus Torvalds	  <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
4961da177e4SLinus Torvalds	  <http://www.linuxdoc.org/docs.html#howto>.
4971da177e4SLinus Torvalds
4981da177e4SLinus Torvalds	  If you don't know what to do here, say N.
4991da177e4SLinus Torvalds
5001da177e4SLinus Torvaldsconfig NR_CPUS
5011da177e4SLinus Torvalds	int "Maximum number of CPUs (2-32)"
5021da177e4SLinus Torvalds	range 2 32
5031da177e4SLinus Torvalds	depends on SMP
5041da177e4SLinus Torvalds	default "4"
5051da177e4SLinus Torvalds
506a054a811SRussell Kingconfig HOTPLUG_CPU
507a054a811SRussell King	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
508a054a811SRussell King	depends on SMP && HOTPLUG && EXPERIMENTAL
509a054a811SRussell King	help
510a054a811SRussell King	  Say Y here to experiment with turning CPUs off and on.  CPUs
511a054a811SRussell King	  can be controlled through /sys/devices/system/cpu.
512a054a811SRussell King
51337ee16aeSRussell Kingconfig LOCAL_TIMERS
51437ee16aeSRussell King	bool "Use local timer interrupts"
5152a98beb6SRussell King	depends on SMP && REALVIEW_MPCORE
51637ee16aeSRussell King	default y
51737ee16aeSRussell King	help
51837ee16aeSRussell King	  Enable support for local timers on SMP platforms, rather then the
51937ee16aeSRussell King	  legacy IPI broadcast method.  Local timers allows the system
52037ee16aeSRussell King	  accounting to be spread across the timer interval, preventing a
52137ee16aeSRussell King	  "thundering herd" at every timer tick.
52237ee16aeSRussell King
5231da177e4SLinus Torvaldsconfig PREEMPT
5241da177e4SLinus Torvalds	bool "Preemptible Kernel (EXPERIMENTAL)"
5251da177e4SLinus Torvalds	depends on EXPERIMENTAL
5261da177e4SLinus Torvalds	help
5271da177e4SLinus Torvalds	  This option reduces the latency of the kernel when reacting to
5281da177e4SLinus Torvalds	  real-time or interactive events by allowing a low priority process to
5291da177e4SLinus Torvalds	  be preempted even if it is in kernel mode executing a system call.
5301da177e4SLinus Torvalds	  This allows applications to run more reliably even when the system is
5311da177e4SLinus Torvalds	  under load.
5321da177e4SLinus Torvalds
5331da177e4SLinus Torvalds	  Say Y here if you are building a kernel for a desktop, embedded
5341da177e4SLinus Torvalds	  or real-time system.  Say N if you are unsure.
5351da177e4SLinus Torvalds
5368749af68SRussell Kingconfig NO_IDLE_HZ
5378749af68SRussell King	bool "Dynamic tick timer"
5388749af68SRussell King	help
5398749af68SRussell King	  Select this option if you want to disable continuous timer ticks
5408749af68SRussell King	  and have them programmed to occur as required. This option saves
5418749af68SRussell King	  power as the system can remain in idle state for longer.
5428749af68SRussell King
5438749af68SRussell King	  By default dynamic tick is disabled during the boot, and can be
5448749af68SRussell King	  manually enabled with:
5458749af68SRussell King
5468749af68SRussell King	    echo 1 > /sys/devices/system/timer/timer0/dyn_tick
5478749af68SRussell King
5488749af68SRussell King	  Alternatively, if you want dynamic tick automatically enabled
5498749af68SRussell King	  during boot, pass "dyntick=enable" via the kernel command string.
5508749af68SRussell King
551f2be64b3STony Lindgren	  Please note that dynamic tick may affect the accuracy of
552f2be64b3STony Lindgren	  timekeeping on some platforms depending on the implementation.
553569d2c34SNicolas Pitre	  Currently at least OMAP, PXA2xx and SA11x0 platforms are known
554569d2c34SNicolas Pitre	  to have accurate timekeeping with dynamic tick.
555f2be64b3STony Lindgren
556f8065813SRussell Kingconfig HZ
557f8065813SRussell King	int
558f8065813SRussell King	default 128 if ARCH_L7200
559f8065813SRussell King	default 200 if ARCH_EBSA110 || ARCH_S3C2410
560bfe65704SRussell King	default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
561f8065813SRussell King	default 100
562f8065813SRussell King
563704bdda0SNicolas Pitreconfig AEABI
564704bdda0SNicolas Pitre	bool "Use the ARM EABI to compile the kernel"
565704bdda0SNicolas Pitre	help
566704bdda0SNicolas Pitre	  This option allows for the kernel to be compiled using the latest
567704bdda0SNicolas Pitre	  ARM ABI (aka EABI).  This is only useful if you are using a user
568704bdda0SNicolas Pitre	  space environment that is also compiled with EABI.
569704bdda0SNicolas Pitre
570704bdda0SNicolas Pitre	  Since there are major incompatibilities between the legacy ABI and
571704bdda0SNicolas Pitre	  EABI, especially with regard to structure member alignment, this
572704bdda0SNicolas Pitre	  option also changes the kernel syscall calling convention to
573704bdda0SNicolas Pitre	  disambiguate both ABIs and allow for backward compatibility support
574704bdda0SNicolas Pitre	  (selected with CONFIG_OABI_COMPAT).
575704bdda0SNicolas Pitre
576704bdda0SNicolas Pitre	  To use this you need GCC version 4.0.0 or later.
577704bdda0SNicolas Pitre
5786c90c872SNicolas Pitreconfig OABI_COMPAT
579a73a3ff1SRussell King	bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
58061c484d4SNicolas Pitre	depends on AEABI && EXPERIMENTAL
5816c90c872SNicolas Pitre	default y
5826c90c872SNicolas Pitre	help
5836c90c872SNicolas Pitre	  This option preserves the old syscall interface along with the
5846c90c872SNicolas Pitre	  new (ARM EABI) one. It also provides a compatibility layer to
5856c90c872SNicolas Pitre	  intercept syscalls that have structure arguments which layout
5866c90c872SNicolas Pitre	  in memory differs between the legacy ABI and the new ARM EABI
5876c90c872SNicolas Pitre	  (only for non "thumb" binaries). This option adds a tiny
5886c90c872SNicolas Pitre	  overhead to all syscalls and produces a slightly larger kernel.
5896c90c872SNicolas Pitre	  If you know you'll be using only pure EABI user space then you
5906c90c872SNicolas Pitre	  can say N here. If this option is not selected and you attempt
5916c90c872SNicolas Pitre	  to execute a legacy ABI binary then the result will be
5926c90c872SNicolas Pitre	  UNPREDICTABLE (in fact it can be predicted that it won't work
5936c90c872SNicolas Pitre	  at all). If in doubt say Y.
5946c90c872SNicolas Pitre
5953f22ab27SDave Hansenconfig ARCH_DISCONTIGMEM_ENABLE
5961da177e4SLinus Torvalds	bool
597f7e68bbfSRussell King	default (ARCH_LH7A40X && !LH7A40X_CONTIGMEM)
5981da177e4SLinus Torvalds	help
5991da177e4SLinus Torvalds	  Say Y to support efficient handling of discontiguous physical memory,
6001da177e4SLinus Torvalds	  for architectures which are either NUMA (Non-Uniform Memory Access)
6011da177e4SLinus Torvalds	  or have huge holes in the physical address space for other reasons.
6021da177e4SLinus Torvalds	  See <file:Documentation/vm/numa> for more.
6031da177e4SLinus Torvalds
604c80d79d7SYasunori Gotoconfig NODES_SHIFT
605c80d79d7SYasunori Goto	int
606c80d79d7SYasunori Goto	default "4" if ARCH_LH7A40X
607c80d79d7SYasunori Goto	default "2"
608c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
609c80d79d7SYasunori Goto
6103f22ab27SDave Hansensource "mm/Kconfig"
6113f22ab27SDave Hansen
6121da177e4SLinus Torvaldsconfig LEDS
6131da177e4SLinus Torvalds	bool "Timer and CPU usage LEDs"
6141da177e4SLinus Torvalds	depends on ARCH_CDB89712 || ARCH_CO285 || ARCH_EBSA110 || \
6151da177e4SLinus Torvalds		   ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \
6161da177e4SLinus Torvalds		   ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
6171da177e4SLinus Torvalds		   ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
61873a59c1cSSAN People		   ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
61958a0cd78SAndrew Victor		   ARCH_AT91 || MACH_TRIZEPS4
6201da177e4SLinus Torvalds	help
6211da177e4SLinus Torvalds	  If you say Y here, the LEDs on your machine will be used
6221da177e4SLinus Torvalds	  to provide useful information about your current system status.
6231da177e4SLinus Torvalds
6241da177e4SLinus Torvalds	  If you are compiling a kernel for a NetWinder or EBSA-285, you will
6251da177e4SLinus Torvalds	  be able to select which LEDs are active using the options below. If
6261da177e4SLinus Torvalds	  you are compiling a kernel for the EBSA-110 or the LART however, the
6271da177e4SLinus Torvalds	  red LED will simply flash regularly to indicate that the system is
6281da177e4SLinus Torvalds	  still functional. It is safe to say Y here if you have a CATS
6291da177e4SLinus Torvalds	  system, but the driver will do nothing.
6301da177e4SLinus Torvalds
6311da177e4SLinus Torvaldsconfig LEDS_TIMER
6321da177e4SLinus Torvalds	bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
6331da177e4SLinus Torvalds			    MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
6341da177e4SLinus Torvalds	depends on LEDS
6351da177e4SLinus Torvalds	default y if ARCH_EBSA110
6361da177e4SLinus Torvalds	help
6371da177e4SLinus Torvalds	  If you say Y here, one of the system LEDs (the green one on the
6381da177e4SLinus Torvalds	  NetWinder, the amber one on the EBSA285, or the red one on the LART)
6391da177e4SLinus Torvalds	  will flash regularly to indicate that the system is still
6401da177e4SLinus Torvalds	  operational. This is mainly useful to kernel hackers who are
6411da177e4SLinus Torvalds	  debugging unstable kernels.
6421da177e4SLinus Torvalds
6431da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
6441da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
6451da177e4SLinus Torvalds	  will overrule the CPU usage LED.
6461da177e4SLinus Torvalds
6471da177e4SLinus Torvaldsconfig LEDS_CPU
6481da177e4SLinus Torvalds	bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
6491da177e4SLinus Torvalds			!ARCH_OMAP) || MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
6501da177e4SLinus Torvalds	depends on LEDS
6511da177e4SLinus Torvalds	help
6521da177e4SLinus Torvalds	  If you say Y here, the red LED will be used to give a good real
6531da177e4SLinus Torvalds	  time indication of CPU usage, by lighting whenever the idle task
6541da177e4SLinus Torvalds	  is not currently executing.
6551da177e4SLinus Torvalds
6561da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
6571da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
6581da177e4SLinus Torvalds	  will overrule the CPU usage LED.
6591da177e4SLinus Torvalds
6601da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP
6611da177e4SLinus Torvalds	bool
662f12d0d7cSHyok S. Choi	depends on CPU_CP15_MMU
6631da177e4SLinus Torvalds	default y if !ARCH_EBSA110
6641da177e4SLinus Torvalds	help
6651da177e4SLinus Torvalds	  ARM processors cannot fetch/store information which is not
6661da177e4SLinus Torvalds	  naturally aligned on the bus, i.e., a 4 byte fetch must start at an
6671da177e4SLinus Torvalds	  address divisible by 4. On 32-bit ARM processors, these non-aligned
6681da177e4SLinus Torvalds	  fetch/store instructions will be emulated in software if you say
6691da177e4SLinus Torvalds	  here, which has a severe performance impact. This is necessary for
6701da177e4SLinus Torvalds	  correct operation of some network protocols. With an IP-only
6711da177e4SLinus Torvalds	  configuration it is safe to say N, otherwise say Y.
6721da177e4SLinus Torvalds
6731da177e4SLinus Torvaldsendmenu
6741da177e4SLinus Torvalds
6751da177e4SLinus Torvaldsmenu "Boot options"
6761da177e4SLinus Torvalds
6771da177e4SLinus Torvalds# Compressed boot loader in ROM.  Yes, we really want to ask about
6781da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files.
6791da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT
6801da177e4SLinus Torvalds	hex "Compressed ROM boot loader base address"
6811da177e4SLinus Torvalds	default "0"
6821da177e4SLinus Torvalds	help
6831da177e4SLinus Torvalds	  The physical address at which the ROM-able zImage is to be
6841da177e4SLinus Torvalds	  placed in the target.  Platforms which normally make use of
6851da177e4SLinus Torvalds	  ROM-able zImage formats normally set this to a suitable
6861da177e4SLinus Torvalds	  value in their defconfig file.
6871da177e4SLinus Torvalds
6881da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
6891da177e4SLinus Torvalds
6901da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS
6911da177e4SLinus Torvalds	hex "Compressed ROM boot loader BSS address"
6921da177e4SLinus Torvalds	default "0"
6931da177e4SLinus Torvalds	help
694f8c440b2SDan Fandrich	  The base address of an area of read/write memory in the target
695f8c440b2SDan Fandrich	  for the ROM-able zImage which must be available while the
696f8c440b2SDan Fandrich	  decompressor is running. It must be large enough to hold the
697f8c440b2SDan Fandrich	  entire decompressed kernel plus an additional 128 KiB.
698f8c440b2SDan Fandrich	  Platforms which normally make use of ROM-able zImage formats
699f8c440b2SDan Fandrich	  normally set this to a suitable value in their defconfig file.
7001da177e4SLinus Torvalds
7011da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
7021da177e4SLinus Torvalds
7031da177e4SLinus Torvaldsconfig ZBOOT_ROM
7041da177e4SLinus Torvalds	bool "Compressed boot loader in ROM/flash"
7051da177e4SLinus Torvalds	depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
7061da177e4SLinus Torvalds	help
7071da177e4SLinus Torvalds	  Say Y here if you intend to execute your compressed kernel image
7081da177e4SLinus Torvalds	  (zImage) directly from ROM or flash.  If unsure, say N.
7091da177e4SLinus Torvalds
7101da177e4SLinus Torvaldsconfig CMDLINE
7111da177e4SLinus Torvalds	string "Default kernel command string"
7121da177e4SLinus Torvalds	default ""
7131da177e4SLinus Torvalds	help
7141da177e4SLinus Torvalds	  On some architectures (EBSA110 and CATS), there is currently no way
7151da177e4SLinus Torvalds	  for the boot loader to pass arguments to the kernel. For these
7161da177e4SLinus Torvalds	  architectures, you should supply some command-line options at build
7171da177e4SLinus Torvalds	  time by entering them here. As a minimum, you should specify the
7181da177e4SLinus Torvalds	  memory size and the root device (e.g., mem=64M root=/dev/nfs).
7191da177e4SLinus Torvalds
7201da177e4SLinus Torvaldsconfig XIP_KERNEL
7211da177e4SLinus Torvalds	bool "Kernel Execute-In-Place from ROM"
7221da177e4SLinus Torvalds	depends on !ZBOOT_ROM
7231da177e4SLinus Torvalds	help
7241da177e4SLinus Torvalds	  Execute-In-Place allows the kernel to run from non-volatile storage
7251da177e4SLinus Torvalds	  directly addressable by the CPU, such as NOR flash. This saves RAM
7261da177e4SLinus Torvalds	  space since the text section of the kernel is not loaded from flash
7271da177e4SLinus Torvalds	  to RAM.  Read-write sections, such as the data section and stack,
7281da177e4SLinus Torvalds	  are still copied to RAM.  The XIP kernel is not compressed since
7291da177e4SLinus Torvalds	  it has to run directly from flash, so it will take more space to
7301da177e4SLinus Torvalds	  store it.  The flash address used to link the kernel object files,
7311da177e4SLinus Torvalds	  and for storing it, is configuration dependent. Therefore, if you
7321da177e4SLinus Torvalds	  say Y here, you must know the proper physical address where to
7331da177e4SLinus Torvalds	  store the kernel image depending on your own flash memory usage.
7341da177e4SLinus Torvalds
7351da177e4SLinus Torvalds	  Also note that the make target becomes "make xipImage" rather than
7361da177e4SLinus Torvalds	  "make zImage" or "make Image".  The final kernel binary to put in
7371da177e4SLinus Torvalds	  ROM memory will be arch/arm/boot/xipImage.
7381da177e4SLinus Torvalds
7391da177e4SLinus Torvalds	  If unsure, say N.
7401da177e4SLinus Torvalds
7411da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR
7421da177e4SLinus Torvalds	hex "XIP Kernel Physical Location"
7431da177e4SLinus Torvalds	depends on XIP_KERNEL
7441da177e4SLinus Torvalds	default "0x00080000"
7451da177e4SLinus Torvalds	help
7461da177e4SLinus Torvalds	  This is the physical address in your flash memory the kernel will
7471da177e4SLinus Torvalds	  be linked for and stored to.  This address is dependent on your
7481da177e4SLinus Torvalds	  own flash usage.
7491da177e4SLinus Torvalds
7501da177e4SLinus Torvaldsendmenu
7511da177e4SLinus Torvalds
7523c8cd0ccSPavel Pisaif (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX )
7531da177e4SLinus Torvalds
7541da177e4SLinus Torvaldsmenu "CPU Frequency scaling"
7551da177e4SLinus Torvalds
7561da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig"
7571da177e4SLinus Torvalds
7581da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100
7591da177e4SLinus Torvalds	bool
76007c6d48fSVincent Sanders	depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT)
7611da177e4SLinus Torvalds	default y
7621da177e4SLinus Torvalds
7631da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110
7641da177e4SLinus Torvalds	bool
7651da177e4SLinus Torvalds	depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3)
7661da177e4SLinus Torvalds	default y
7671da177e4SLinus Torvalds
7681da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR
7691da177e4SLinus Torvalds	tristate "CPUfreq driver for ARM Integrator CPUs"
7701da177e4SLinus Torvalds	depends on ARCH_INTEGRATOR && CPU_FREQ
7711da177e4SLinus Torvalds	default y
7721da177e4SLinus Torvalds	help
7731da177e4SLinus Torvalds	  This enables the CPUfreq driver for ARM Integrator CPUs.
7741da177e4SLinus Torvalds
7751da177e4SLinus Torvalds	  For details, take a look at <file:Documentation/cpu-freq>.
7761da177e4SLinus Torvalds
7771da177e4SLinus Torvalds	  If in doubt, say Y.
7781da177e4SLinus Torvalds
7793c8cd0ccSPavel Pisaconfig CPU_FREQ_IMX
7803c8cd0ccSPavel Pisa	tristate "CPUfreq driver for i.MX CPUs"
7813c8cd0ccSPavel Pisa	depends on ARCH_IMX && CPU_FREQ
7823c8cd0ccSPavel Pisa	default n
7833c8cd0ccSPavel Pisa	help
7843c8cd0ccSPavel Pisa	  This enables the CPUfreq driver for i.MX CPUs.
7853c8cd0ccSPavel Pisa
7863c8cd0ccSPavel Pisa	  If in doubt, say N.
7873c8cd0ccSPavel Pisa
7881da177e4SLinus Torvaldsendmenu
7891da177e4SLinus Torvalds
7901da177e4SLinus Torvaldsendif
7911da177e4SLinus Torvalds
7921da177e4SLinus Torvaldsmenu "Floating point emulation"
7931da177e4SLinus Torvalds
7941da177e4SLinus Torvaldscomment "At least one emulation must be selected"
7951da177e4SLinus Torvalds
7961da177e4SLinus Torvaldsconfig FPE_NWFPE
7971da177e4SLinus Torvalds	bool "NWFPE math emulation"
7988993a44cSNicolas Pitre	depends on !AEABI || OABI_COMPAT
7991da177e4SLinus Torvalds	---help---
8001da177e4SLinus Torvalds	  Say Y to include the NWFPE floating point emulator in the kernel.
8011da177e4SLinus Torvalds	  This is necessary to run most binaries. Linux does not currently
8021da177e4SLinus Torvalds	  support floating point hardware so you need to say Y here even if
8031da177e4SLinus Torvalds	  your machine has an FPA or floating point co-processor podule.
8041da177e4SLinus Torvalds
8051da177e4SLinus Torvalds	  You may say N here if you are going to load the Acorn FPEmulator
8061da177e4SLinus Torvalds	  early in the bootup.
8071da177e4SLinus Torvalds
8081da177e4SLinus Torvaldsconfig FPE_NWFPE_XP
8091da177e4SLinus Torvalds	bool "Support extended precision"
810bedf142bSLennert Buytenhek	depends on FPE_NWFPE
8111da177e4SLinus Torvalds	help
8121da177e4SLinus Torvalds	  Say Y to include 80-bit support in the kernel floating-point
8131da177e4SLinus Torvalds	  emulator.  Otherwise, only 32 and 64-bit support is compiled in.
8141da177e4SLinus Torvalds	  Note that gcc does not generate 80-bit operations by default,
8151da177e4SLinus Torvalds	  so in most cases this option only enlarges the size of the
8161da177e4SLinus Torvalds	  floating point emulator without any good reason.
8171da177e4SLinus Torvalds
8181da177e4SLinus Torvalds	  You almost surely want to say N here.
8191da177e4SLinus Torvalds
8201da177e4SLinus Torvaldsconfig FPE_FASTFPE
8211da177e4SLinus Torvalds	bool "FastFPE math emulation (EXPERIMENTAL)"
8228993a44cSNicolas Pitre	depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
8231da177e4SLinus Torvalds	---help---
8241da177e4SLinus Torvalds	  Say Y here to include the FAST floating point emulator in the kernel.
8251da177e4SLinus Torvalds	  This is an experimental much faster emulator which now also has full
8261da177e4SLinus Torvalds	  precision for the mantissa.  It does not support any exceptions.
8271da177e4SLinus Torvalds	  It is very simple, and approximately 3-6 times faster than NWFPE.
8281da177e4SLinus Torvalds
8291da177e4SLinus Torvalds	  It should be sufficient for most programs.  It may be not suitable
8301da177e4SLinus Torvalds	  for scientific calculations, but you have to check this for yourself.
8311da177e4SLinus Torvalds	  If you do not feel you need a faster FP emulation you should better
8321da177e4SLinus Torvalds	  choose NWFPE.
8331da177e4SLinus Torvalds
8341da177e4SLinus Torvaldsconfig VFP
8351da177e4SLinus Torvalds	bool "VFP-format floating point maths"
8361da177e4SLinus Torvalds	depends on CPU_V6 || CPU_ARM926T
8371da177e4SLinus Torvalds	help
8381da177e4SLinus Torvalds	  Say Y to include VFP support code in the kernel. This is needed
8391da177e4SLinus Torvalds	  if your hardware includes a VFP unit.
8401da177e4SLinus Torvalds
8411da177e4SLinus Torvalds	  Please see <file:Documentation/arm/VFP/release-notes.txt> for
8421da177e4SLinus Torvalds	  release notes and additional status information.
8431da177e4SLinus Torvalds
8441da177e4SLinus Torvalds	  Say N if your target does not have VFP hardware.
8451da177e4SLinus Torvalds
8461da177e4SLinus Torvaldsendmenu
8471da177e4SLinus Torvalds
8481da177e4SLinus Torvaldsmenu "Userspace binary formats"
8491da177e4SLinus Torvalds
8501da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
8511da177e4SLinus Torvalds
8521da177e4SLinus Torvaldsconfig ARTHUR
8531da177e4SLinus Torvalds	tristate "RISC OS personality"
854704bdda0SNicolas Pitre	depends on !AEABI
8551da177e4SLinus Torvalds	help
8561da177e4SLinus Torvalds	  Say Y here to include the kernel code necessary if you want to run
8571da177e4SLinus Torvalds	  Acorn RISC OS/Arthur binaries under Linux. This code is still very
8581da177e4SLinus Torvalds	  experimental; if this sounds frightening, say N and sleep in peace.
8591da177e4SLinus Torvalds	  You can also say M here to compile this support as a module (which
8601da177e4SLinus Torvalds	  will be called arthur).
8611da177e4SLinus Torvalds
8621da177e4SLinus Torvaldsendmenu
8631da177e4SLinus Torvalds
8641da177e4SLinus Torvaldsmenu "Power management options"
8651da177e4SLinus Torvalds
866eceab4acSRussell Kingsource "kernel/power/Kconfig"
8671da177e4SLinus Torvalds
8681da177e4SLinus Torvaldsconfig APM
8691da177e4SLinus Torvalds	tristate "Advanced Power Management Emulation"
8701da177e4SLinus Torvalds	---help---
8711da177e4SLinus Torvalds	  APM is a BIOS specification for saving power using several different
8721da177e4SLinus Torvalds	  techniques. This is mostly useful for battery powered laptops with
8731da177e4SLinus Torvalds	  APM compliant BIOSes. If you say Y here, the system time will be
8741da177e4SLinus Torvalds	  reset after a RESUME operation, the /proc/apm device will provide
8751da177e4SLinus Torvalds	  battery status information, and user-space programs will receive
8761da177e4SLinus Torvalds	  notification of APM "events" (e.g. battery status change).
8771da177e4SLinus Torvalds
8781da177e4SLinus Torvalds	  In order to use APM, you will need supporting software. For location
8791da177e4SLinus Torvalds	  and more information, read <file:Documentation/pm.txt> and the
8801da177e4SLinus Torvalds	  Battery Powered Linux mini-HOWTO, available from
8811da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
8821da177e4SLinus Torvalds
8831da177e4SLinus Torvalds	  This driver does not spin down disk drives (see the hdparm(8)
8841da177e4SLinus Torvalds	  manpage ("man 8 hdparm") for that), and it doesn't turn off
8851da177e4SLinus Torvalds	  VESA-compliant "green" monitors.
8861da177e4SLinus Torvalds
8871da177e4SLinus Torvalds	  Generally, if you don't have a battery in your machine, there isn't
8881da177e4SLinus Torvalds	  much point in using this driver and you should say N. If you get
8891da177e4SLinus Torvalds	  random kernel OOPSes or reboots that don't seem to be related to
8901da177e4SLinus Torvalds	  anything, try disabling/enabling this option (or disabling/enabling
8911da177e4SLinus Torvalds	  APM in your BIOS).
8921da177e4SLinus Torvalds
8931da177e4SLinus Torvaldsendmenu
8941da177e4SLinus Torvalds
895d5950b43SSam Ravnborgsource "net/Kconfig"
896d5950b43SSam Ravnborg
8971da177e4SLinus Torvaldsmenu "Device Drivers"
8981da177e4SLinus Torvalds
8991da177e4SLinus Torvaldssource "drivers/base/Kconfig"
9001da177e4SLinus Torvalds
901c35bf4a5SPavel Macheksource "drivers/connector/Kconfig"
902c35bf4a5SPavel Machek
903f12d0d7cSHyok S. Choiif ALIGNMENT_TRAP || !CPU_CP15_MMU
9041da177e4SLinus Torvaldssource "drivers/mtd/Kconfig"
9051da177e4SLinus Torvaldsendif
9061da177e4SLinus Torvalds
9071da177e4SLinus Torvaldssource "drivers/parport/Kconfig"
9081da177e4SLinus Torvalds
9091da177e4SLinus Torvaldssource "drivers/pnp/Kconfig"
9101da177e4SLinus Torvalds
9111da177e4SLinus Torvaldssource "drivers/block/Kconfig"
9121da177e4SLinus Torvalds
9131da177e4SLinus Torvaldssource "drivers/acorn/block/Kconfig"
9141da177e4SLinus Torvalds
9153f7e5815SLennert Buytenhekif PCMCIA || ARCH_CLPS7500 || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX \
916bb011b8eSDavid Brownell	|| ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
917c4713074SLennert Buytenhek	|| ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \
918c4713074SLennert Buytenhek	|| ARCH_IXP23XX
9191da177e4SLinus Torvaldssource "drivers/ide/Kconfig"
9201da177e4SLinus Torvaldsendif
9211da177e4SLinus Torvalds
9221da177e4SLinus Torvaldssource "drivers/scsi/Kconfig"
9231da177e4SLinus Torvalds
924eb370f0bSMartin Michlmayrsource "drivers/ata/Kconfig"
925eb370f0bSMartin Michlmayr
9261da177e4SLinus Torvaldssource "drivers/md/Kconfig"
9271da177e4SLinus Torvalds
9281da177e4SLinus Torvaldssource "drivers/message/fusion/Kconfig"
9291da177e4SLinus Torvalds
9301da177e4SLinus Torvaldssource "drivers/ieee1394/Kconfig"
9311da177e4SLinus Torvalds
9321da177e4SLinus Torvaldssource "drivers/message/i2o/Kconfig"
9331da177e4SLinus Torvalds
934d5950b43SSam Ravnborgsource "drivers/net/Kconfig"
9351da177e4SLinus Torvalds
9361da177e4SLinus Torvaldssource "drivers/isdn/Kconfig"
9371da177e4SLinus Torvalds
9381da177e4SLinus Torvalds# input before char - char/joystick depends on it. As does USB.
9391da177e4SLinus Torvalds
9401da177e4SLinus Torvaldssource "drivers/input/Kconfig"
9411da177e4SLinus Torvalds
9421da177e4SLinus Torvaldssource "drivers/char/Kconfig"
9431da177e4SLinus Torvalds
9441da177e4SLinus Torvaldssource "drivers/i2c/Kconfig"
9451da177e4SLinus Torvalds
9468ae12a0dSDavid Brownellsource "drivers/spi/Kconfig"
9478ae12a0dSDavid Brownell
94804916c0eSAlessandro Zummosource "drivers/w1/Kconfig"
94904916c0eSAlessandro Zummo
950ad2f931dSJean Delvaresource "drivers/hwmon/Kconfig"
951ad2f931dSJean Delvare
9521da177e4SLinus Torvalds#source "drivers/l3/Kconfig"
9531da177e4SLinus Torvalds
9541da177e4SLinus Torvaldssource "drivers/misc/Kconfig"
9551da177e4SLinus Torvalds
956a4e137abSRussell Kingsource "drivers/mfd/Kconfig"
957a4e137abSRussell King
958c72a1d60SRichard Purdiesource "drivers/leds/Kconfig"
959c72a1d60SRichard Purdie
9601da177e4SLinus Torvaldssource "drivers/media/Kconfig"
9611da177e4SLinus Torvalds
9621da177e4SLinus Torvaldssource "drivers/video/Kconfig"
9631da177e4SLinus Torvalds
9641da177e4SLinus Torvaldssource "sound/Kconfig"
9651da177e4SLinus Torvalds
966c2dade51SSascha Hauersource "drivers/hid/Kconfig"
967c2dade51SSascha Hauer
9681da177e4SLinus Torvaldssource "drivers/usb/Kconfig"
9691da177e4SLinus Torvalds
9701da177e4SLinus Torvaldssource "drivers/mmc/Kconfig"
9711da177e4SLinus Torvalds
97212b824fbSAlessandro Zummosource "drivers/rtc/Kconfig"
97312b824fbSAlessandro Zummo
9741da177e4SLinus Torvaldsendmenu
9751da177e4SLinus Torvalds
9761da177e4SLinus Torvaldssource "fs/Kconfig"
9771da177e4SLinus Torvalds
9781da177e4SLinus Torvaldssource "arch/arm/oprofile/Kconfig"
9791da177e4SLinus Torvalds
9801da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug"
9811da177e4SLinus Torvalds
9821da177e4SLinus Torvaldssource "security/Kconfig"
9831da177e4SLinus Torvalds
9841da177e4SLinus Torvaldssource "crypto/Kconfig"
9851da177e4SLinus Torvalds
9861da177e4SLinus Torvaldssource "lib/Kconfig"
987