xref: /linux/arch/arm/Kconfig (revision c587e4a6a4d808fd2a1c4e7fb2d5a3a31e300d23)
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
306cd701aa2SBen Dooks	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442"
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
3661da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig"
3671da177e4SLinus Torvalds
3681da177e4SLinus Torvaldssource "arch/arm/mach-lh7a40x/Kconfig"
3691da177e4SLinus Torvalds
3701da177e4SLinus Torvaldssource "arch/arm/mach-imx/Kconfig"
3711da177e4SLinus Torvalds
3721da177e4SLinus Torvaldssource "arch/arm/mach-h720x/Kconfig"
3731da177e4SLinus Torvalds
3741da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig"
3751da177e4SLinus Torvalds
376038c5b60SBellido Nicolassource "arch/arm/mach-aaec2000/Kconfig"
377038c5b60SBellido Nicolas
3788ad68bbfSCatalin Marinassource "arch/arm/mach-realview/Kconfig"
3798ad68bbfSCatalin Marinas
38073a59c1cSSAN Peoplesource "arch/arm/mach-at91rm9200/Kconfig"
38173a59c1cSSAN People
382bb6d8c88SSascha Hauersource "arch/arm/mach-netx/Kconfig"
383bb6d8c88SSascha Hauer
3841da177e4SLinus Torvalds# Definitions to make life easier
3851da177e4SLinus Torvaldsconfig ARCH_ACORN
3861da177e4SLinus Torvalds	bool
3871da177e4SLinus Torvalds
3887ae1f7ecSLennert Buytenhekconfig PLAT_IOP
3897ae1f7ecSLennert Buytenhek	bool
3907ae1f7ecSLennert Buytenhek
3911da177e4SLinus Torvaldssource arch/arm/mm/Kconfig
3921da177e4SLinus Torvalds
393afe4b25eSLennert Buytenhekconfig IWMMXT
394afe4b25eSLennert Buytenhek	bool "Enable iWMMXt support"
395afe4b25eSLennert Buytenhek	depends CPU_XSCALE || CPU_XSC3
396afe4b25eSLennert Buytenhek	default y if PXA27x
397afe4b25eSLennert Buytenhek	help
398afe4b25eSLennert Buytenhek	  Enable support for iWMMXt context switching at run time if
399afe4b25eSLennert Buytenhek	  running on a CPU that supports it.
400afe4b25eSLennert Buytenhek
4011da177e4SLinus Torvalds#  bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
4021da177e4SLinus Torvaldsconfig XSCALE_PMU
4031da177e4SLinus Torvalds	bool
4041da177e4SLinus Torvalds	depends on CPU_XSCALE && !XSCALE_PMU_TIMER
4051da177e4SLinus Torvalds	default y
4061da177e4SLinus Torvalds
4073b93e7b0SHyok S. Choiif !MMU
4083b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu"
4093b93e7b0SHyok S. Choiendif
4103b93e7b0SHyok S. Choi
4111da177e4SLinus Torvaldsendmenu
4121da177e4SLinus Torvalds
4131da177e4SLinus Torvaldssource "arch/arm/common/Kconfig"
4141da177e4SLinus Torvalds
4151da177e4SLinus Torvaldsconfig FORCE_MAX_ZONEORDER
4161da177e4SLinus Torvalds	int
4171da177e4SLinus Torvalds	depends on SA1111
4181da177e4SLinus Torvalds	default "9"
4191da177e4SLinus Torvalds
4201da177e4SLinus Torvaldsmenu "Bus support"
4211da177e4SLinus Torvalds
4221da177e4SLinus Torvaldsconfig ARM_AMBA
4231da177e4SLinus Torvalds	bool
4241da177e4SLinus Torvalds
4251da177e4SLinus Torvaldsconfig ISA
4261da177e4SLinus Torvalds	bool
4271da177e4SLinus Torvalds	help
4281da177e4SLinus Torvalds	  Find out whether you have ISA slots on your motherboard.  ISA is the
4291da177e4SLinus Torvalds	  name of a bus system, i.e. the way the CPU talks to the other stuff
4301da177e4SLinus Torvalds	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
4311da177e4SLinus Torvalds	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
4321da177e4SLinus Torvalds	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
4331da177e4SLinus Torvalds
434065909b9SRussell King# Select ISA DMA controller support
4351da177e4SLinus Torvaldsconfig ISA_DMA
4361da177e4SLinus Torvalds	bool
437065909b9SRussell King	select ISA_DMA_API
4381da177e4SLinus Torvalds
439065909b9SRussell King# Select ISA DMA interface
4405cae841bSAl Viroconfig ISA_DMA_API
4415cae841bSAl Viro	bool
4425cae841bSAl Viro
4431da177e4SLinus Torvaldsconfig PCI
44468939121SMilan Svoboda	bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX
4451da177e4SLinus Torvalds	help
4461da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
4471da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
4481da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
4491da177e4SLinus Torvalds	  VESA. If you have PCI, say Y, otherwise N.
4501da177e4SLinus Torvalds
4511da177e4SLinus Torvalds	  The PCI-HOWTO, available from
4521da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>, contains valuable
4531da177e4SLinus Torvalds	  information about which PCI hardware does work under Linux and which
4541da177e4SLinus Torvalds	  doesn't.
4551da177e4SLinus Torvalds
4561da177e4SLinus Torvalds# Select the host bridge type
4571da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505
4581da177e4SLinus Torvalds	bool
4591da177e4SLinus Torvalds	depends on PCI && ARCH_SHARK
4601da177e4SLinus Torvalds	default y
4611da177e4SLinus Torvalds
4621da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
4631da177e4SLinus Torvalds
4641da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
4651da177e4SLinus Torvalds
4661da177e4SLinus Torvaldsendmenu
4671da177e4SLinus Torvalds
4681da177e4SLinus Torvaldsmenu "Kernel Features"
4691da177e4SLinus Torvalds
4701da177e4SLinus Torvaldsconfig SMP
4711da177e4SLinus Torvalds	bool "Symmetric Multi-Processing (EXPERIMENTAL)"
472f6db449cSRussell King	depends on EXPERIMENTAL && REALVIEW_MPCORE
4731da177e4SLinus Torvalds	help
4741da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
4751da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
4761da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
4771da177e4SLinus Torvalds
4781da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
4791da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
4801da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all, single
4811da177e4SLinus Torvalds	  processor machines. On a single processor machine, the kernel will
4821da177e4SLinus Torvalds	  run faster if you say N here.
4831da177e4SLinus Torvalds
48412c62c2eSArthur Othieno	  See also the <file:Documentation/smp.txt>,
48512c62c2eSArthur Othieno	  <file:Documentation/i386/IO-APIC.txt>,
4861da177e4SLinus Torvalds	  <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
4871da177e4SLinus Torvalds	  <http://www.linuxdoc.org/docs.html#howto>.
4881da177e4SLinus Torvalds
4891da177e4SLinus Torvalds	  If you don't know what to do here, say N.
4901da177e4SLinus Torvalds
4911da177e4SLinus Torvaldsconfig NR_CPUS
4921da177e4SLinus Torvalds	int "Maximum number of CPUs (2-32)"
4931da177e4SLinus Torvalds	range 2 32
4941da177e4SLinus Torvalds	depends on SMP
4951da177e4SLinus Torvalds	default "4"
4961da177e4SLinus Torvalds
497a054a811SRussell Kingconfig HOTPLUG_CPU
498a054a811SRussell King	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
499a054a811SRussell King	depends on SMP && HOTPLUG && EXPERIMENTAL
500a054a811SRussell King	help
501a054a811SRussell King	  Say Y here to experiment with turning CPUs off and on.  CPUs
502a054a811SRussell King	  can be controlled through /sys/devices/system/cpu.
503a054a811SRussell King
50437ee16aeSRussell Kingconfig LOCAL_TIMERS
50537ee16aeSRussell King	bool "Use local timer interrupts"
5062a98beb6SRussell King	depends on SMP && REALVIEW_MPCORE
50737ee16aeSRussell King	default y
50837ee16aeSRussell King	help
50937ee16aeSRussell King	  Enable support for local timers on SMP platforms, rather then the
51037ee16aeSRussell King	  legacy IPI broadcast method.  Local timers allows the system
51137ee16aeSRussell King	  accounting to be spread across the timer interval, preventing a
51237ee16aeSRussell King	  "thundering herd" at every timer tick.
51337ee16aeSRussell King
5141da177e4SLinus Torvaldsconfig PREEMPT
5151da177e4SLinus Torvalds	bool "Preemptible Kernel (EXPERIMENTAL)"
5161da177e4SLinus Torvalds	depends on EXPERIMENTAL
5171da177e4SLinus Torvalds	help
5181da177e4SLinus Torvalds	  This option reduces the latency of the kernel when reacting to
5191da177e4SLinus Torvalds	  real-time or interactive events by allowing a low priority process to
5201da177e4SLinus Torvalds	  be preempted even if it is in kernel mode executing a system call.
5211da177e4SLinus Torvalds	  This allows applications to run more reliably even when the system is
5221da177e4SLinus Torvalds	  under load.
5231da177e4SLinus Torvalds
5241da177e4SLinus Torvalds	  Say Y here if you are building a kernel for a desktop, embedded
5251da177e4SLinus Torvalds	  or real-time system.  Say N if you are unsure.
5261da177e4SLinus Torvalds
5278749af68SRussell Kingconfig NO_IDLE_HZ
5288749af68SRussell King	bool "Dynamic tick timer"
5298749af68SRussell King	help
5308749af68SRussell King	  Select this option if you want to disable continuous timer ticks
5318749af68SRussell King	  and have them programmed to occur as required. This option saves
5328749af68SRussell King	  power as the system can remain in idle state for longer.
5338749af68SRussell King
5348749af68SRussell King	  By default dynamic tick is disabled during the boot, and can be
5358749af68SRussell King	  manually enabled with:
5368749af68SRussell King
5378749af68SRussell King	    echo 1 > /sys/devices/system/timer/timer0/dyn_tick
5388749af68SRussell King
5398749af68SRussell King	  Alternatively, if you want dynamic tick automatically enabled
5408749af68SRussell King	  during boot, pass "dyntick=enable" via the kernel command string.
5418749af68SRussell King
542f2be64b3STony Lindgren	  Please note that dynamic tick may affect the accuracy of
543f2be64b3STony Lindgren	  timekeeping on some platforms depending on the implementation.
544569d2c34SNicolas Pitre	  Currently at least OMAP, PXA2xx and SA11x0 platforms are known
545569d2c34SNicolas Pitre	  to have accurate timekeeping with dynamic tick.
546f2be64b3STony Lindgren
547f8065813SRussell Kingconfig HZ
548f8065813SRussell King	int
549f8065813SRussell King	default 128 if ARCH_L7200
550f8065813SRussell King	default 200 if ARCH_EBSA110 || ARCH_S3C2410
551bfe65704SRussell King	default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
552f8065813SRussell King	default 100
553f8065813SRussell King
554704bdda0SNicolas Pitreconfig AEABI
555704bdda0SNicolas Pitre	bool "Use the ARM EABI to compile the kernel"
556704bdda0SNicolas Pitre	help
557704bdda0SNicolas Pitre	  This option allows for the kernel to be compiled using the latest
558704bdda0SNicolas Pitre	  ARM ABI (aka EABI).  This is only useful if you are using a user
559704bdda0SNicolas Pitre	  space environment that is also compiled with EABI.
560704bdda0SNicolas Pitre
561704bdda0SNicolas Pitre	  Since there are major incompatibilities between the legacy ABI and
562704bdda0SNicolas Pitre	  EABI, especially with regard to structure member alignment, this
563704bdda0SNicolas Pitre	  option also changes the kernel syscall calling convention to
564704bdda0SNicolas Pitre	  disambiguate both ABIs and allow for backward compatibility support
565704bdda0SNicolas Pitre	  (selected with CONFIG_OABI_COMPAT).
566704bdda0SNicolas Pitre
567704bdda0SNicolas Pitre	  To use this you need GCC version 4.0.0 or later.
568704bdda0SNicolas Pitre
5696c90c872SNicolas Pitreconfig OABI_COMPAT
570a73a3ff1SRussell King	bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
57161c484d4SNicolas Pitre	depends on AEABI && EXPERIMENTAL
5726c90c872SNicolas Pitre	default y
5736c90c872SNicolas Pitre	help
5746c90c872SNicolas Pitre	  This option preserves the old syscall interface along with the
5756c90c872SNicolas Pitre	  new (ARM EABI) one. It also provides a compatibility layer to
5766c90c872SNicolas Pitre	  intercept syscalls that have structure arguments which layout
5776c90c872SNicolas Pitre	  in memory differs between the legacy ABI and the new ARM EABI
5786c90c872SNicolas Pitre	  (only for non "thumb" binaries). This option adds a tiny
5796c90c872SNicolas Pitre	  overhead to all syscalls and produces a slightly larger kernel.
5806c90c872SNicolas Pitre	  If you know you'll be using only pure EABI user space then you
5816c90c872SNicolas Pitre	  can say N here. If this option is not selected and you attempt
5826c90c872SNicolas Pitre	  to execute a legacy ABI binary then the result will be
5836c90c872SNicolas Pitre	  UNPREDICTABLE (in fact it can be predicted that it won't work
5846c90c872SNicolas Pitre	  at all). If in doubt say Y.
5856c90c872SNicolas Pitre
5863f22ab27SDave Hansenconfig ARCH_DISCONTIGMEM_ENABLE
5871da177e4SLinus Torvalds	bool
588f7e68bbfSRussell King	default (ARCH_LH7A40X && !LH7A40X_CONTIGMEM)
5891da177e4SLinus Torvalds	help
5901da177e4SLinus Torvalds	  Say Y to support efficient handling of discontiguous physical memory,
5911da177e4SLinus Torvalds	  for architectures which are either NUMA (Non-Uniform Memory Access)
5921da177e4SLinus Torvalds	  or have huge holes in the physical address space for other reasons.
5931da177e4SLinus Torvalds	  See <file:Documentation/vm/numa> for more.
5941da177e4SLinus Torvalds
595c80d79d7SYasunori Gotoconfig NODES_SHIFT
596c80d79d7SYasunori Goto	int
597c80d79d7SYasunori Goto	default "4" if ARCH_LH7A40X
598c80d79d7SYasunori Goto	default "2"
599c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
600c80d79d7SYasunori Goto
6013f22ab27SDave Hansensource "mm/Kconfig"
6023f22ab27SDave Hansen
6031da177e4SLinus Torvaldsconfig LEDS
6041da177e4SLinus Torvalds	bool "Timer and CPU usage LEDs"
6051da177e4SLinus Torvalds	depends on ARCH_CDB89712 || ARCH_CO285 || ARCH_EBSA110 || \
6061da177e4SLinus Torvalds		   ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \
6071da177e4SLinus Torvalds		   ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
6081da177e4SLinus Torvalds		   ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
60973a59c1cSSAN People		   ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
61058a0cd78SAndrew Victor		   ARCH_AT91 || MACH_TRIZEPS4
6111da177e4SLinus Torvalds	help
6121da177e4SLinus Torvalds	  If you say Y here, the LEDs on your machine will be used
6131da177e4SLinus Torvalds	  to provide useful information about your current system status.
6141da177e4SLinus Torvalds
6151da177e4SLinus Torvalds	  If you are compiling a kernel for a NetWinder or EBSA-285, you will
6161da177e4SLinus Torvalds	  be able to select which LEDs are active using the options below. If
6171da177e4SLinus Torvalds	  you are compiling a kernel for the EBSA-110 or the LART however, the
6181da177e4SLinus Torvalds	  red LED will simply flash regularly to indicate that the system is
6191da177e4SLinus Torvalds	  still functional. It is safe to say Y here if you have a CATS
6201da177e4SLinus Torvalds	  system, but the driver will do nothing.
6211da177e4SLinus Torvalds
6221da177e4SLinus Torvaldsconfig LEDS_TIMER
6231da177e4SLinus Torvalds	bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
6241da177e4SLinus Torvalds			    MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
6251da177e4SLinus Torvalds	depends on LEDS
6261da177e4SLinus Torvalds	default y if ARCH_EBSA110
6271da177e4SLinus Torvalds	help
6281da177e4SLinus Torvalds	  If you say Y here, one of the system LEDs (the green one on the
6291da177e4SLinus Torvalds	  NetWinder, the amber one on the EBSA285, or the red one on the LART)
6301da177e4SLinus Torvalds	  will flash regularly to indicate that the system is still
6311da177e4SLinus Torvalds	  operational. This is mainly useful to kernel hackers who are
6321da177e4SLinus Torvalds	  debugging unstable kernels.
6331da177e4SLinus Torvalds
6341da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
6351da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
6361da177e4SLinus Torvalds	  will overrule the CPU usage LED.
6371da177e4SLinus Torvalds
6381da177e4SLinus Torvaldsconfig LEDS_CPU
6391da177e4SLinus Torvalds	bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
6401da177e4SLinus Torvalds			!ARCH_OMAP) || MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
6411da177e4SLinus Torvalds	depends on LEDS
6421da177e4SLinus Torvalds	help
6431da177e4SLinus Torvalds	  If you say Y here, the red LED will be used to give a good real
6441da177e4SLinus Torvalds	  time indication of CPU usage, by lighting whenever the idle task
6451da177e4SLinus Torvalds	  is not currently executing.
6461da177e4SLinus Torvalds
6471da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
6481da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
6491da177e4SLinus Torvalds	  will overrule the CPU usage LED.
6501da177e4SLinus Torvalds
6511da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP
6521da177e4SLinus Torvalds	bool
653f12d0d7cSHyok S. Choi	depends on CPU_CP15_MMU
6541da177e4SLinus Torvalds	default y if !ARCH_EBSA110
6551da177e4SLinus Torvalds	help
6561da177e4SLinus Torvalds	  ARM processors cannot fetch/store information which is not
6571da177e4SLinus Torvalds	  naturally aligned on the bus, i.e., a 4 byte fetch must start at an
6581da177e4SLinus Torvalds	  address divisible by 4. On 32-bit ARM processors, these non-aligned
6591da177e4SLinus Torvalds	  fetch/store instructions will be emulated in software if you say
6601da177e4SLinus Torvalds	  here, which has a severe performance impact. This is necessary for
6611da177e4SLinus Torvalds	  correct operation of some network protocols. With an IP-only
6621da177e4SLinus Torvalds	  configuration it is safe to say N, otherwise say Y.
6631da177e4SLinus Torvalds
6641da177e4SLinus Torvaldsendmenu
6651da177e4SLinus Torvalds
6661da177e4SLinus Torvaldsmenu "Boot options"
6671da177e4SLinus Torvalds
6681da177e4SLinus Torvalds# Compressed boot loader in ROM.  Yes, we really want to ask about
6691da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files.
6701da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT
6711da177e4SLinus Torvalds	hex "Compressed ROM boot loader base address"
6721da177e4SLinus Torvalds	default "0"
6731da177e4SLinus Torvalds	help
6741da177e4SLinus Torvalds	  The physical address at which the ROM-able zImage is to be
6751da177e4SLinus Torvalds	  placed in the target.  Platforms which normally make use of
6761da177e4SLinus Torvalds	  ROM-able zImage formats normally set this to a suitable
6771da177e4SLinus Torvalds	  value in their defconfig file.
6781da177e4SLinus Torvalds
6791da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
6801da177e4SLinus Torvalds
6811da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS
6821da177e4SLinus Torvalds	hex "Compressed ROM boot loader BSS address"
6831da177e4SLinus Torvalds	default "0"
6841da177e4SLinus Torvalds	help
685f8c440b2SDan Fandrich	  The base address of an area of read/write memory in the target
686f8c440b2SDan Fandrich	  for the ROM-able zImage which must be available while the
687f8c440b2SDan Fandrich	  decompressor is running. It must be large enough to hold the
688f8c440b2SDan Fandrich	  entire decompressed kernel plus an additional 128 KiB.
689f8c440b2SDan Fandrich	  Platforms which normally make use of ROM-able zImage formats
690f8c440b2SDan Fandrich	  normally set this to a suitable value in their defconfig file.
6911da177e4SLinus Torvalds
6921da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
6931da177e4SLinus Torvalds
6941da177e4SLinus Torvaldsconfig ZBOOT_ROM
6951da177e4SLinus Torvalds	bool "Compressed boot loader in ROM/flash"
6961da177e4SLinus Torvalds	depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
6971da177e4SLinus Torvalds	help
6981da177e4SLinus Torvalds	  Say Y here if you intend to execute your compressed kernel image
6991da177e4SLinus Torvalds	  (zImage) directly from ROM or flash.  If unsure, say N.
7001da177e4SLinus Torvalds
7011da177e4SLinus Torvaldsconfig CMDLINE
7021da177e4SLinus Torvalds	string "Default kernel command string"
7031da177e4SLinus Torvalds	default ""
7041da177e4SLinus Torvalds	help
7051da177e4SLinus Torvalds	  On some architectures (EBSA110 and CATS), there is currently no way
7061da177e4SLinus Torvalds	  for the boot loader to pass arguments to the kernel. For these
7071da177e4SLinus Torvalds	  architectures, you should supply some command-line options at build
7081da177e4SLinus Torvalds	  time by entering them here. As a minimum, you should specify the
7091da177e4SLinus Torvalds	  memory size and the root device (e.g., mem=64M root=/dev/nfs).
7101da177e4SLinus Torvalds
7111da177e4SLinus Torvaldsconfig XIP_KERNEL
7121da177e4SLinus Torvalds	bool "Kernel Execute-In-Place from ROM"
7131da177e4SLinus Torvalds	depends on !ZBOOT_ROM
7141da177e4SLinus Torvalds	help
7151da177e4SLinus Torvalds	  Execute-In-Place allows the kernel to run from non-volatile storage
7161da177e4SLinus Torvalds	  directly addressable by the CPU, such as NOR flash. This saves RAM
7171da177e4SLinus Torvalds	  space since the text section of the kernel is not loaded from flash
7181da177e4SLinus Torvalds	  to RAM.  Read-write sections, such as the data section and stack,
7191da177e4SLinus Torvalds	  are still copied to RAM.  The XIP kernel is not compressed since
7201da177e4SLinus Torvalds	  it has to run directly from flash, so it will take more space to
7211da177e4SLinus Torvalds	  store it.  The flash address used to link the kernel object files,
7221da177e4SLinus Torvalds	  and for storing it, is configuration dependent. Therefore, if you
7231da177e4SLinus Torvalds	  say Y here, you must know the proper physical address where to
7241da177e4SLinus Torvalds	  store the kernel image depending on your own flash memory usage.
7251da177e4SLinus Torvalds
7261da177e4SLinus Torvalds	  Also note that the make target becomes "make xipImage" rather than
7271da177e4SLinus Torvalds	  "make zImage" or "make Image".  The final kernel binary to put in
7281da177e4SLinus Torvalds	  ROM memory will be arch/arm/boot/xipImage.
7291da177e4SLinus Torvalds
7301da177e4SLinus Torvalds	  If unsure, say N.
7311da177e4SLinus Torvalds
7321da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR
7331da177e4SLinus Torvalds	hex "XIP Kernel Physical Location"
7341da177e4SLinus Torvalds	depends on XIP_KERNEL
7351da177e4SLinus Torvalds	default "0x00080000"
7361da177e4SLinus Torvalds	help
7371da177e4SLinus Torvalds	  This is the physical address in your flash memory the kernel will
7381da177e4SLinus Torvalds	  be linked for and stored to.  This address is dependent on your
7391da177e4SLinus Torvalds	  own flash usage.
7401da177e4SLinus Torvalds
741*c587e4a6SRichard Purdieconfig KEXEC
742*c587e4a6SRichard Purdie	bool "Kexec system call (EXPERIMENTAL)"
743*c587e4a6SRichard Purdie	depends on EXPERIMENTAL
744*c587e4a6SRichard Purdie	help
745*c587e4a6SRichard Purdie	  kexec is a system call that implements the ability to shutdown your
746*c587e4a6SRichard Purdie	  current kernel, and to start another kernel.  It is like a reboot
747*c587e4a6SRichard Purdie	  but it is indepedent of the system firmware.   And like a reboot
748*c587e4a6SRichard Purdie	  you can start any kernel with it, not just Linux.
749*c587e4a6SRichard Purdie
750*c587e4a6SRichard Purdie	  It is an ongoing process to be certain the hardware in a machine
751*c587e4a6SRichard Purdie	  is properly shutdown, so do not be surprised if this code does not
752*c587e4a6SRichard Purdie	  initially work for you.  It may help to enable device hotplugging
753*c587e4a6SRichard Purdie	  support.
754*c587e4a6SRichard Purdie
7551da177e4SLinus Torvaldsendmenu
7561da177e4SLinus Torvalds
7573c8cd0ccSPavel Pisaif (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX )
7581da177e4SLinus Torvalds
7591da177e4SLinus Torvaldsmenu "CPU Frequency scaling"
7601da177e4SLinus Torvalds
7611da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig"
7621da177e4SLinus Torvalds
7631da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100
7641da177e4SLinus Torvalds	bool
76507c6d48fSVincent Sanders	depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT)
7661da177e4SLinus Torvalds	default y
7671da177e4SLinus Torvalds
7681da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110
7691da177e4SLinus Torvalds	bool
7701da177e4SLinus Torvalds	depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3)
7711da177e4SLinus Torvalds	default y
7721da177e4SLinus Torvalds
7731da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR
7741da177e4SLinus Torvalds	tristate "CPUfreq driver for ARM Integrator CPUs"
7751da177e4SLinus Torvalds	depends on ARCH_INTEGRATOR && CPU_FREQ
7761da177e4SLinus Torvalds	default y
7771da177e4SLinus Torvalds	help
7781da177e4SLinus Torvalds	  This enables the CPUfreq driver for ARM Integrator CPUs.
7791da177e4SLinus Torvalds
7801da177e4SLinus Torvalds	  For details, take a look at <file:Documentation/cpu-freq>.
7811da177e4SLinus Torvalds
7821da177e4SLinus Torvalds	  If in doubt, say Y.
7831da177e4SLinus Torvalds
7843c8cd0ccSPavel Pisaconfig CPU_FREQ_IMX
7853c8cd0ccSPavel Pisa	tristate "CPUfreq driver for i.MX CPUs"
7863c8cd0ccSPavel Pisa	depends on ARCH_IMX && CPU_FREQ
7873c8cd0ccSPavel Pisa	default n
7883c8cd0ccSPavel Pisa	help
7893c8cd0ccSPavel Pisa	  This enables the CPUfreq driver for i.MX CPUs.
7903c8cd0ccSPavel Pisa
7913c8cd0ccSPavel Pisa	  If in doubt, say N.
7923c8cd0ccSPavel Pisa
7931da177e4SLinus Torvaldsendmenu
7941da177e4SLinus Torvalds
7951da177e4SLinus Torvaldsendif
7961da177e4SLinus Torvalds
7971da177e4SLinus Torvaldsmenu "Floating point emulation"
7981da177e4SLinus Torvalds
7991da177e4SLinus Torvaldscomment "At least one emulation must be selected"
8001da177e4SLinus Torvalds
8011da177e4SLinus Torvaldsconfig FPE_NWFPE
8021da177e4SLinus Torvalds	bool "NWFPE math emulation"
8038993a44cSNicolas Pitre	depends on !AEABI || OABI_COMPAT
8041da177e4SLinus Torvalds	---help---
8051da177e4SLinus Torvalds	  Say Y to include the NWFPE floating point emulator in the kernel.
8061da177e4SLinus Torvalds	  This is necessary to run most binaries. Linux does not currently
8071da177e4SLinus Torvalds	  support floating point hardware so you need to say Y here even if
8081da177e4SLinus Torvalds	  your machine has an FPA or floating point co-processor podule.
8091da177e4SLinus Torvalds
8101da177e4SLinus Torvalds	  You may say N here if you are going to load the Acorn FPEmulator
8111da177e4SLinus Torvalds	  early in the bootup.
8121da177e4SLinus Torvalds
8131da177e4SLinus Torvaldsconfig FPE_NWFPE_XP
8141da177e4SLinus Torvalds	bool "Support extended precision"
815bedf142bSLennert Buytenhek	depends on FPE_NWFPE
8161da177e4SLinus Torvalds	help
8171da177e4SLinus Torvalds	  Say Y to include 80-bit support in the kernel floating-point
8181da177e4SLinus Torvalds	  emulator.  Otherwise, only 32 and 64-bit support is compiled in.
8191da177e4SLinus Torvalds	  Note that gcc does not generate 80-bit operations by default,
8201da177e4SLinus Torvalds	  so in most cases this option only enlarges the size of the
8211da177e4SLinus Torvalds	  floating point emulator without any good reason.
8221da177e4SLinus Torvalds
8231da177e4SLinus Torvalds	  You almost surely want to say N here.
8241da177e4SLinus Torvalds
8251da177e4SLinus Torvaldsconfig FPE_FASTFPE
8261da177e4SLinus Torvalds	bool "FastFPE math emulation (EXPERIMENTAL)"
8278993a44cSNicolas Pitre	depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
8281da177e4SLinus Torvalds	---help---
8291da177e4SLinus Torvalds	  Say Y here to include the FAST floating point emulator in the kernel.
8301da177e4SLinus Torvalds	  This is an experimental much faster emulator which now also has full
8311da177e4SLinus Torvalds	  precision for the mantissa.  It does not support any exceptions.
8321da177e4SLinus Torvalds	  It is very simple, and approximately 3-6 times faster than NWFPE.
8331da177e4SLinus Torvalds
8341da177e4SLinus Torvalds	  It should be sufficient for most programs.  It may be not suitable
8351da177e4SLinus Torvalds	  for scientific calculations, but you have to check this for yourself.
8361da177e4SLinus Torvalds	  If you do not feel you need a faster FP emulation you should better
8371da177e4SLinus Torvalds	  choose NWFPE.
8381da177e4SLinus Torvalds
8391da177e4SLinus Torvaldsconfig VFP
8401da177e4SLinus Torvalds	bool "VFP-format floating point maths"
8411da177e4SLinus Torvalds	depends on CPU_V6 || CPU_ARM926T
8421da177e4SLinus Torvalds	help
8431da177e4SLinus Torvalds	  Say Y to include VFP support code in the kernel. This is needed
8441da177e4SLinus Torvalds	  if your hardware includes a VFP unit.
8451da177e4SLinus Torvalds
8461da177e4SLinus Torvalds	  Please see <file:Documentation/arm/VFP/release-notes.txt> for
8471da177e4SLinus Torvalds	  release notes and additional status information.
8481da177e4SLinus Torvalds
8491da177e4SLinus Torvalds	  Say N if your target does not have VFP hardware.
8501da177e4SLinus Torvalds
8511da177e4SLinus Torvaldsendmenu
8521da177e4SLinus Torvalds
8531da177e4SLinus Torvaldsmenu "Userspace binary formats"
8541da177e4SLinus Torvalds
8551da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
8561da177e4SLinus Torvalds
8571da177e4SLinus Torvaldsconfig ARTHUR
8581da177e4SLinus Torvalds	tristate "RISC OS personality"
859704bdda0SNicolas Pitre	depends on !AEABI
8601da177e4SLinus Torvalds	help
8611da177e4SLinus Torvalds	  Say Y here to include the kernel code necessary if you want to run
8621da177e4SLinus Torvalds	  Acorn RISC OS/Arthur binaries under Linux. This code is still very
8631da177e4SLinus Torvalds	  experimental; if this sounds frightening, say N and sleep in peace.
8641da177e4SLinus Torvalds	  You can also say M here to compile this support as a module (which
8651da177e4SLinus Torvalds	  will be called arthur).
8661da177e4SLinus Torvalds
8671da177e4SLinus Torvaldsendmenu
8681da177e4SLinus Torvalds
8691da177e4SLinus Torvaldsmenu "Power management options"
8701da177e4SLinus Torvalds
871eceab4acSRussell Kingsource "kernel/power/Kconfig"
8721da177e4SLinus Torvalds
8731da177e4SLinus Torvaldsconfig APM
8741da177e4SLinus Torvalds	tristate "Advanced Power Management Emulation"
8751da177e4SLinus Torvalds	---help---
8761da177e4SLinus Torvalds	  APM is a BIOS specification for saving power using several different
8771da177e4SLinus Torvalds	  techniques. This is mostly useful for battery powered laptops with
8781da177e4SLinus Torvalds	  APM compliant BIOSes. If you say Y here, the system time will be
8791da177e4SLinus Torvalds	  reset after a RESUME operation, the /proc/apm device will provide
8801da177e4SLinus Torvalds	  battery status information, and user-space programs will receive
8811da177e4SLinus Torvalds	  notification of APM "events" (e.g. battery status change).
8821da177e4SLinus Torvalds
8831da177e4SLinus Torvalds	  In order to use APM, you will need supporting software. For location
8841da177e4SLinus Torvalds	  and more information, read <file:Documentation/pm.txt> and the
8851da177e4SLinus Torvalds	  Battery Powered Linux mini-HOWTO, available from
8861da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
8871da177e4SLinus Torvalds
8881da177e4SLinus Torvalds	  This driver does not spin down disk drives (see the hdparm(8)
8891da177e4SLinus Torvalds	  manpage ("man 8 hdparm") for that), and it doesn't turn off
8901da177e4SLinus Torvalds	  VESA-compliant "green" monitors.
8911da177e4SLinus Torvalds
8921da177e4SLinus Torvalds	  Generally, if you don't have a battery in your machine, there isn't
8931da177e4SLinus Torvalds	  much point in using this driver and you should say N. If you get
8941da177e4SLinus Torvalds	  random kernel OOPSes or reboots that don't seem to be related to
8951da177e4SLinus Torvalds	  anything, try disabling/enabling this option (or disabling/enabling
8961da177e4SLinus Torvalds	  APM in your BIOS).
8971da177e4SLinus Torvalds
8981da177e4SLinus Torvaldsendmenu
8991da177e4SLinus Torvalds
900d5950b43SSam Ravnborgsource "net/Kconfig"
901d5950b43SSam Ravnborg
9021da177e4SLinus Torvaldsmenu "Device Drivers"
9031da177e4SLinus Torvalds
9041da177e4SLinus Torvaldssource "drivers/base/Kconfig"
9051da177e4SLinus Torvalds
906c35bf4a5SPavel Macheksource "drivers/connector/Kconfig"
907c35bf4a5SPavel Machek
908f12d0d7cSHyok S. Choiif ALIGNMENT_TRAP || !CPU_CP15_MMU
9091da177e4SLinus Torvaldssource "drivers/mtd/Kconfig"
9101da177e4SLinus Torvaldsendif
9111da177e4SLinus Torvalds
9121da177e4SLinus Torvaldssource "drivers/parport/Kconfig"
9131da177e4SLinus Torvalds
9141da177e4SLinus Torvaldssource "drivers/pnp/Kconfig"
9151da177e4SLinus Torvalds
9161da177e4SLinus Torvaldssource "drivers/block/Kconfig"
9171da177e4SLinus Torvalds
9181da177e4SLinus Torvaldssource "drivers/acorn/block/Kconfig"
9191da177e4SLinus Torvalds
9203f7e5815SLennert Buytenhekif PCMCIA || ARCH_CLPS7500 || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX \
921bb011b8eSDavid Brownell	|| ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
922c4713074SLennert Buytenhek	|| ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \
923c4713074SLennert Buytenhek	|| ARCH_IXP23XX
9241da177e4SLinus Torvaldssource "drivers/ide/Kconfig"
9251da177e4SLinus Torvaldsendif
9261da177e4SLinus Torvalds
9271da177e4SLinus Torvaldssource "drivers/scsi/Kconfig"
9281da177e4SLinus Torvalds
929eb370f0bSMartin Michlmayrsource "drivers/ata/Kconfig"
930eb370f0bSMartin Michlmayr
9311da177e4SLinus Torvaldssource "drivers/md/Kconfig"
9321da177e4SLinus Torvalds
9331da177e4SLinus Torvaldssource "drivers/message/fusion/Kconfig"
9341da177e4SLinus Torvalds
9351da177e4SLinus Torvaldssource "drivers/ieee1394/Kconfig"
9361da177e4SLinus Torvalds
9371da177e4SLinus Torvaldssource "drivers/message/i2o/Kconfig"
9381da177e4SLinus Torvalds
939d5950b43SSam Ravnborgsource "drivers/net/Kconfig"
9401da177e4SLinus Torvalds
9411da177e4SLinus Torvaldssource "drivers/isdn/Kconfig"
9421da177e4SLinus Torvalds
9431da177e4SLinus Torvalds# input before char - char/joystick depends on it. As does USB.
9441da177e4SLinus Torvalds
9451da177e4SLinus Torvaldssource "drivers/input/Kconfig"
9461da177e4SLinus Torvalds
9471da177e4SLinus Torvaldssource "drivers/char/Kconfig"
9481da177e4SLinus Torvalds
9491da177e4SLinus Torvaldssource "drivers/i2c/Kconfig"
9501da177e4SLinus Torvalds
9518ae12a0dSDavid Brownellsource "drivers/spi/Kconfig"
9528ae12a0dSDavid Brownell
95304916c0eSAlessandro Zummosource "drivers/w1/Kconfig"
95404916c0eSAlessandro Zummo
955ad2f931dSJean Delvaresource "drivers/hwmon/Kconfig"
956ad2f931dSJean Delvare
9571da177e4SLinus Torvalds#source "drivers/l3/Kconfig"
9581da177e4SLinus Torvalds
9591da177e4SLinus Torvaldssource "drivers/misc/Kconfig"
9601da177e4SLinus Torvalds
961a4e137abSRussell Kingsource "drivers/mfd/Kconfig"
962a4e137abSRussell King
963c72a1d60SRichard Purdiesource "drivers/leds/Kconfig"
964c72a1d60SRichard Purdie
9651da177e4SLinus Torvaldssource "drivers/media/Kconfig"
9661da177e4SLinus Torvalds
9671da177e4SLinus Torvaldssource "drivers/video/Kconfig"
9681da177e4SLinus Torvalds
9691da177e4SLinus Torvaldssource "sound/Kconfig"
9701da177e4SLinus Torvalds
971c2dade51SSascha Hauersource "drivers/hid/Kconfig"
972c2dade51SSascha Hauer
9731da177e4SLinus Torvaldssource "drivers/usb/Kconfig"
9741da177e4SLinus Torvalds
9751da177e4SLinus Torvaldssource "drivers/mmc/Kconfig"
9761da177e4SLinus Torvalds
97712b824fbSAlessandro Zummosource "drivers/rtc/Kconfig"
97812b824fbSAlessandro Zummo
9791da177e4SLinus Torvaldsendmenu
9801da177e4SLinus Torvalds
9811da177e4SLinus Torvaldssource "fs/Kconfig"
9821da177e4SLinus Torvalds
9831da177e4SLinus Torvaldssource "arch/arm/oprofile/Kconfig"
9841da177e4SLinus Torvalds
9851da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug"
9861da177e4SLinus Torvalds
9871da177e4SLinus Torvaldssource "security/Kconfig"
9881da177e4SLinus Torvalds
9891da177e4SLinus Torvaldssource "crypto/Kconfig"
9901da177e4SLinus Torvalds
9911da177e4SLinus Torvaldssource "lib/Kconfig"
992