xref: /linux/arch/arm/Kconfig (revision 3d9edf09d4525dad95f98b31f31aa86b8071fab9)
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
1275e7153aSRalf Baechle	select SYS_SUPPORTS_APM_EMULATION
131da177e4SLinus Torvalds	help
141da177e4SLinus Torvalds	  The ARM series is a line of low-power-consumption RISC chip designs
15f6c8965aSMartin Michlmayr	  licensed by ARM Ltd and targeted at embedded applications and
161da177e4SLinus Torvalds	  handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
171da177e4SLinus Torvalds	  manufactured, but legacy ARM-based PC hardware remains popular in
181da177e4SLinus Torvalds	  Europe.  There is an ARM Linux project with a web page at
191da177e4SLinus Torvalds	  <http://www.arm.linux.org.uk/>.
201da177e4SLinus Torvalds
2175e7153aSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION
2275e7153aSRalf Baechle	bool
2375e7153aSRalf Baechle
240a938b97SDavid Brownellconfig GENERIC_GPIO
250a938b97SDavid Brownell	bool
260a938b97SDavid Brownell	default n
270a938b97SDavid Brownell
28746140c7SKevin Hilmanconfig GENERIC_TIME
29746140c7SKevin Hilman	bool
30746140c7SKevin Hilman	default n
31746140c7SKevin Hilman
320567a0c0SKevin Hilmanconfig GENERIC_CLOCKEVENTS
330567a0c0SKevin Hilman	bool
340567a0c0SKevin Hilman	default n
350567a0c0SKevin Hilman
361da177e4SLinus Torvaldsconfig MMU
371da177e4SLinus Torvalds	bool
381da177e4SLinus Torvalds	default y
391da177e4SLinus Torvalds
405ea81769SAl Viroconfig NO_IOPORT
415ea81769SAl Viro	bool
425ea81769SAl Viro	default n
435ea81769SAl Viro
441da177e4SLinus Torvaldsconfig EISA
451da177e4SLinus Torvalds	bool
461da177e4SLinus Torvalds	---help---
471da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
481da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
491da177e4SLinus Torvalds
501da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
511da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
521da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
531da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
541da177e4SLinus Torvalds
551da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
561da177e4SLinus Torvalds
571da177e4SLinus Torvalds	  Otherwise, say N.
581da177e4SLinus Torvalds
591da177e4SLinus Torvaldsconfig SBUS
601da177e4SLinus Torvalds	bool
611da177e4SLinus Torvalds
621da177e4SLinus Torvaldsconfig MCA
631da177e4SLinus Torvalds	bool
641da177e4SLinus Torvalds	help
651da177e4SLinus Torvalds	  MicroChannel Architecture is found in some IBM PS/2 machines and
661da177e4SLinus Torvalds	  laptops.  It is a bus system similar to PCI or ISA. See
671da177e4SLinus Torvalds	  <file:Documentation/mca.txt> (and especially the web page given
681da177e4SLinus Torvalds	  there) before attempting to build an MCA bus kernel.
691da177e4SLinus Torvalds
704a2581a0SThomas Gleixnerconfig GENERIC_HARDIRQS
714a2581a0SThomas Gleixner	bool
724a2581a0SThomas Gleixner	default y
734a2581a0SThomas Gleixner
74f16fb1ecSRussell Kingconfig STACKTRACE_SUPPORT
75f16fb1ecSRussell King	bool
76f16fb1ecSRussell King	default y
77f16fb1ecSRussell King
78f16fb1ecSRussell Kingconfig LOCKDEP_SUPPORT
79f16fb1ecSRussell King	bool
80f16fb1ecSRussell King	default y
81f16fb1ecSRussell King
827ad1bcb2SRussell Kingconfig TRACE_IRQFLAGS_SUPPORT
837ad1bcb2SRussell King	bool
847ad1bcb2SRussell King	default y
857ad1bcb2SRussell King
864a2581a0SThomas Gleixnerconfig HARDIRQS_SW_RESEND
874a2581a0SThomas Gleixner	bool
884a2581a0SThomas Gleixner	default y
894a2581a0SThomas Gleixner
904a2581a0SThomas Gleixnerconfig GENERIC_IRQ_PROBE
914a2581a0SThomas Gleixner	bool
924a2581a0SThomas Gleixner	default y
934a2581a0SThomas Gleixner
941da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
951da177e4SLinus Torvalds	bool
961da177e4SLinus Torvalds	default y
971da177e4SLinus Torvalds
981da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
991da177e4SLinus Torvalds	bool
1001da177e4SLinus Torvalds
101f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
102f0d1b0b3SDavid Howells	bool
103f0d1b0b3SDavid Howells	default n
104f0d1b0b3SDavid Howells
105f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
106f0d1b0b3SDavid Howells	bool
107f0d1b0b3SDavid Howells	default n
108f0d1b0b3SDavid Howells
109b89c3b16SAkinobu Mitaconfig GENERIC_HWEIGHT
110b89c3b16SAkinobu Mita	bool
111b89c3b16SAkinobu Mita	default y
112b89c3b16SAkinobu Mita
1131da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
1141da177e4SLinus Torvalds	bool
1151da177e4SLinus Torvalds	default y
1161da177e4SLinus Torvalds
117a08b6b79Sviro@ZenIV.linux.org.ukconfig ARCH_MAY_HAVE_PC_FDC
118a08b6b79Sviro@ZenIV.linux.org.uk	bool
119a08b6b79Sviro@ZenIV.linux.org.uk
1205ac6da66SChristoph Lameterconfig ZONE_DMA
1215ac6da66SChristoph Lameter	bool
1225ac6da66SChristoph Lameter	default y
1235ac6da66SChristoph Lameter
1241da177e4SLinus Torvaldsconfig GENERIC_ISA_DMA
1251da177e4SLinus Torvalds	bool
1261da177e4SLinus Torvalds
1271da177e4SLinus Torvaldsconfig FIQ
1281da177e4SLinus Torvalds	bool
1291da177e4SLinus Torvalds
130034d2f5aSAl Viroconfig ARCH_MTD_XIP
131034d2f5aSAl Viro	bool
132034d2f5aSAl Viro
133c760fc19SHyok S. Choiconfig VECTORS_BASE
134c760fc19SHyok S. Choi	hex
1356afd6faeSHyok S. Choi	default 0xffff0000 if MMU || CPU_HIGH_VECTOR
136c760fc19SHyok S. Choi	default DRAM_BASE if REMAP_VECTORS_TO_RAM
137c760fc19SHyok S. Choi	default 0x00000000
138c760fc19SHyok S. Choi	help
139c760fc19SHyok S. Choi	  The base address of exception vectors.
140c760fc19SHyok S. Choi
1411da177e4SLinus Torvaldssource "init/Kconfig"
1421da177e4SLinus Torvalds
1431da177e4SLinus Torvaldsmenu "System Type"
1441da177e4SLinus Torvalds
1451da177e4SLinus Torvaldschoice
1461da177e4SLinus Torvalds	prompt "ARM system type"
1476a0e2430SCatalin Marinas	default ARCH_VERSATILE
1481da177e4SLinus Torvalds
1494af6fee1SDeepak Saxenaconfig ARCH_AAEC2000
1504af6fee1SDeepak Saxena	bool "Agilent AAEC-2000 based"
1514af6fee1SDeepak Saxena	select ARM_AMBA
1524af6fee1SDeepak Saxena	help
1534af6fee1SDeepak Saxena	  This enables support for systems based on the Agilent AAEC-2000
1544af6fee1SDeepak Saxena
1554af6fee1SDeepak Saxenaconfig ARCH_INTEGRATOR
1564af6fee1SDeepak Saxena	bool "ARM Ltd. Integrator family"
1574af6fee1SDeepak Saxena	select ARM_AMBA
1584af6fee1SDeepak Saxena	select ICST525
1594af6fee1SDeepak Saxena	help
1604af6fee1SDeepak Saxena	  Support for ARM's Integrator platform.
1614af6fee1SDeepak Saxena
1624af6fee1SDeepak Saxenaconfig ARCH_REALVIEW
1634af6fee1SDeepak Saxena	bool "ARM Ltd. RealView family"
1644af6fee1SDeepak Saxena	select ARM_AMBA
1654af6fee1SDeepak Saxena	select ICST307
1664af6fee1SDeepak Saxena	help
1674af6fee1SDeepak Saxena	  This enables support for ARM Ltd RealView boards.
1684af6fee1SDeepak Saxena
1694af6fee1SDeepak Saxenaconfig ARCH_VERSATILE
1704af6fee1SDeepak Saxena	bool "ARM Ltd. Versatile family"
1714af6fee1SDeepak Saxena	select ARM_AMBA
1724af6fee1SDeepak Saxena	select ARM_VIC
1734af6fee1SDeepak Saxena	select ICST307
174b49c87c2SKevin Hilman	select GENERIC_TIME
17589df1272SKevin Hilman	select GENERIC_CLOCKEVENTS
1764af6fee1SDeepak Saxena	help
1774af6fee1SDeepak Saxena	  This enables support for ARM Ltd Versatile board.
1784af6fee1SDeepak Saxena
1798fc5ffa0SAndrew Victorconfig ARCH_AT91
1808fc5ffa0SAndrew Victor	bool "Atmel AT91"
1810a938b97SDavid Brownell	select GENERIC_GPIO
1824af6fee1SDeepak Saxena	help
1838fc5ffa0SAndrew Victor	  This enables support for systems based on the Atmel AT91RM9200
1848fc5ffa0SAndrew Victor	  and AT91SAM9xxx processors.
1854af6fee1SDeepak Saxena
1861da177e4SLinus Torvaldsconfig ARCH_CLPS7500
1874af6fee1SDeepak Saxena	bool "Cirrus CL-PS7500FE"
1881da177e4SLinus Torvalds	select TIMER_ACORN
189f7e68bbfSRussell King	select ISA
190e4169889SRussell King	select NO_IOPORT
191f999b8bdSMartin Michlmayr	help
192f999b8bdSMartin Michlmayr	  Support for the Cirrus Logic PS7500FE system-on-a-chip.
1931da177e4SLinus Torvalds
1941da177e4SLinus Torvaldsconfig ARCH_CLPS711X
1954af6fee1SDeepak Saxena	bool "Cirrus Logic CLPS711x/EP721x-based"
196f999b8bdSMartin Michlmayr	help
197f999b8bdSMartin Michlmayr	  Support for Cirrus Logic 711x/721x based boards.
1981da177e4SLinus Torvalds
1991da177e4SLinus Torvaldsconfig ARCH_CO285
2001da177e4SLinus Torvalds	bool "Co-EBSA285"
2011da177e4SLinus Torvalds	select FOOTBRIDGE
2021da177e4SLinus Torvalds	select FOOTBRIDGE_ADDIN
203f999b8bdSMartin Michlmayr	help
204f999b8bdSMartin Michlmayr	  Support for Intel's EBSA285 companion chip.
2051da177e4SLinus Torvalds
2061da177e4SLinus Torvaldsconfig ARCH_EBSA110
2071da177e4SLinus Torvalds	bool "EBSA-110"
208f7e68bbfSRussell King	select ISA
209c5eb2a2bSRussell King	select NO_IOPORT
2101da177e4SLinus Torvalds	help
2111da177e4SLinus Torvalds	  This is an evaluation board for the StrongARM processor available
212f6c8965aSMartin Michlmayr	  from Digital. It has limited hardware on-board, including an
2131da177e4SLinus Torvalds	  Ethernet interface, two PCMCIA sockets, two serial ports and a
2141da177e4SLinus Torvalds	  parallel port.
2151da177e4SLinus Torvalds
216e7736d47SLennert Buytenhekconfig ARCH_EP93XX
217e7736d47SLennert Buytenhek	bool "EP93xx-based"
218e7736d47SLennert Buytenhek	select ARM_AMBA
219e7736d47SLennert Buytenhek	select ARM_VIC
220e7736d47SLennert Buytenhek	help
221e7736d47SLennert Buytenhek	  This enables support for the Cirrus EP93xx series of CPUs.
222e7736d47SLennert Buytenhek
2231da177e4SLinus Torvaldsconfig ARCH_FOOTBRIDGE
2241da177e4SLinus Torvalds	bool "FootBridge"
2251da177e4SLinus Torvalds	select FOOTBRIDGE
226f999b8bdSMartin Michlmayr	help
227f999b8bdSMartin Michlmayr	  Support for systems based on the DC21285 companion chip
228f999b8bdSMartin Michlmayr	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
2291da177e4SLinus Torvalds
2304af6fee1SDeepak Saxenaconfig ARCH_NETX
2314af6fee1SDeepak Saxena	bool "Hilscher NetX based"
2324af6fee1SDeepak Saxena	select ARM_VIC
233f999b8bdSMartin Michlmayr	help
2344af6fee1SDeepak Saxena	  This enables support for systems based on the Hilscher NetX Soc
2354af6fee1SDeepak Saxena
2364af6fee1SDeepak Saxenaconfig ARCH_H720X
2374af6fee1SDeepak Saxena	bool "Hynix HMS720x-based"
2384af6fee1SDeepak Saxena	select ISA_DMA_API
2394af6fee1SDeepak Saxena	help
2404af6fee1SDeepak Saxena	  This enables support for systems based on the Hynix HMS720x
2414af6fee1SDeepak Saxena
2424af6fee1SDeepak Saxenaconfig ARCH_IMX
2434af6fee1SDeepak Saxena	bool "IMX"
2444af6fee1SDeepak Saxena	help
2454af6fee1SDeepak Saxena	  Support for Motorola's i.MX family of processors (MX1, MXL).
2461da177e4SLinus Torvalds
2473b938be6SRussell Kingconfig ARCH_IOP13XX
2483b938be6SRussell King	bool "IOP13xx-based"
2493b938be6SRussell King	depends on MMU
2503b938be6SRussell King	select PLAT_IOP
2513b938be6SRussell King	select PCI
2523b938be6SRussell King	select ARCH_SUPPORTS_MSI
2533b938be6SRussell King	help
2543b938be6SRussell King	  Support for Intel's IOP13XX (XScale) family of processors.
2553b938be6SRussell King
2563f7e5815SLennert Buytenhekconfig ARCH_IOP32X
2573f7e5815SLennert Buytenhek	bool "IOP32x-based"
258a4f7e763SRussell King	depends on MMU
2597ae1f7ecSLennert Buytenhek	select PLAT_IOP
260f7e68bbfSRussell King	select PCI
261f999b8bdSMartin Michlmayr	help
2623f7e5815SLennert Buytenhek	  Support for Intel's 80219 and IOP32X (XScale) family of
2633f7e5815SLennert Buytenhek	  processors.
2643f7e5815SLennert Buytenhek
2653f7e5815SLennert Buytenhekconfig ARCH_IOP33X
2663f7e5815SLennert Buytenhek	bool "IOP33x-based"
2673f7e5815SLennert Buytenhek	depends on MMU
2687ae1f7ecSLennert Buytenhek	select PLAT_IOP
2693f7e5815SLennert Buytenhek	select PCI
2703f7e5815SLennert Buytenhek	help
2713f7e5815SLennert Buytenhek	  Support for Intel's IOP33X (XScale) family of processors.
2721da177e4SLinus Torvalds
2733b938be6SRussell Kingconfig ARCH_IXP23XX
2743b938be6SRussell King 	bool "IXP23XX-based"
275588ef769SDan Williams	depends on MMU
276285f5fa7SDan Williams 	select PCI
277285f5fa7SDan Williams	help
2783b938be6SRussell King	  Support for Intel's IXP23xx (XScale) family of processors.
2791da177e4SLinus Torvalds
2801da177e4SLinus Torvaldsconfig ARCH_IXP2000
2811da177e4SLinus Torvalds	bool "IXP2400/2800-based"
282a4f7e763SRussell King	depends on MMU
283f7e68bbfSRussell King	select PCI
284f999b8bdSMartin Michlmayr	help
285f999b8bdSMartin Michlmayr	  Support for Intel's IXP2400/2800 (XScale) family of processors.
2861da177e4SLinus Torvalds
2873b938be6SRussell Kingconfig ARCH_IXP4XX
2883b938be6SRussell King	bool "IXP4xx-based"
289a4f7e763SRussell King	depends on MMU
2908858e9afSMilan Svoboda	select GENERIC_GPIO
2913b938be6SRussell King	select GENERIC_TIME
2923b938be6SRussell King	select GENERIC_CLOCKEVENTS
293c4713074SLennert Buytenhek	help
2943b938be6SRussell King	  Support for Intel's IXP4XX (XScale) family of processors.
295c4713074SLennert Buytenhek
2961da177e4SLinus Torvaldsconfig ARCH_L7200
2971da177e4SLinus Torvalds	bool "LinkUp-L7200"
2981da177e4SLinus Torvalds	select FIQ
2991da177e4SLinus Torvalds	help
3001da177e4SLinus Torvalds	  Say Y here if you intend to run this kernel on a LinkUp Systems
3011da177e4SLinus Torvalds	  L7200 Software Development Board which uses an ARM720T processor.
3021da177e4SLinus Torvalds	  Information on this board can be obtained at:
3031da177e4SLinus Torvalds
3041da177e4SLinus Torvalds	  <http://www.linkupsys.com/>
3051da177e4SLinus Torvalds
3061da177e4SLinus Torvalds	  If you have any questions or comments about the Linux kernel port
3071da177e4SLinus Torvalds	  to this board, send e-mail to <sjhill@cotw.com>.
3081da177e4SLinus Torvalds
309c53c9cf6SAndrew Victorconfig ARCH_KS8695
310c53c9cf6SAndrew Victor	bool "Micrel/Kendin KS8695"
311c53c9cf6SAndrew Victor	help
312c53c9cf6SAndrew Victor	  Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
313c53c9cf6SAndrew Victor	  System-on-Chip devices.
314c53c9cf6SAndrew Victor
3159918cda5SUwe Kleine-Königconfig ARCH_NS9XXX
3169918cda5SUwe Kleine-König	bool "NetSilicon NS9xxx"
3179918cda5SUwe Kleine-König	help
3189918cda5SUwe Kleine-König	  Say Y here if you intend to run this kernel on a NetSilicon NS9xxx
3199918cda5SUwe Kleine-König	  System.
3209918cda5SUwe Kleine-König
3219918cda5SUwe Kleine-König	  <http://www.digi.com/products/microprocessors/index.jsp>
3229918cda5SUwe Kleine-König
3234af6fee1SDeepak Saxenaconfig ARCH_PNX4008
3244af6fee1SDeepak Saxena	bool "Philips Nexperia PNX4008 Mobile"
3254af6fee1SDeepak Saxena	help
3264af6fee1SDeepak Saxena	  This enables support for Philips PNX4008 mobile platform.
3274af6fee1SDeepak Saxena
3281da177e4SLinus Torvaldsconfig ARCH_PXA
3291da177e4SLinus Torvalds	bool "PXA2xx-based"
330a4f7e763SRussell King	depends on MMU
331034d2f5aSAl Viro	select ARCH_MTD_XIP
3320a938b97SDavid Brownell	select GENERIC_GPIO
33345cf5eefSNicolas Pitre	select GENERIC_TIME
334f999b8bdSMartin Michlmayr	help
335f999b8bdSMartin Michlmayr	  Support for Intel's PXA2XX processor line.
3361da177e4SLinus Torvalds
3371da177e4SLinus Torvaldsconfig ARCH_RPC
3381da177e4SLinus Torvalds	bool "RiscPC"
3391da177e4SLinus Torvalds	select ARCH_ACORN
3401da177e4SLinus Torvalds	select FIQ
3411da177e4SLinus Torvalds	select TIMER_ACORN
342a08b6b79Sviro@ZenIV.linux.org.uk	select ARCH_MAY_HAVE_PC_FDC
343065909b9SRussell King	select ISA_DMA_API
3445ea81769SAl Viro	select NO_IOPORT
3451da177e4SLinus Torvalds	help
3461da177e4SLinus Torvalds	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
3471da177e4SLinus Torvalds	  CD-ROM interface, serial and parallel port, and the floppy drive.
3481da177e4SLinus Torvalds
3491da177e4SLinus Torvaldsconfig ARCH_SA1100
3501da177e4SLinus Torvalds	bool "SA1100-based"
351f7e68bbfSRussell King	select ISA
3523cd9e19eSRussell King	select ARCH_DISCONTIGMEM_ENABLE
353034d2f5aSAl Viro	select ARCH_MTD_XIP
3540a938b97SDavid Brownell	select GENERIC_GPIO
355f999b8bdSMartin Michlmayr	help
356f999b8bdSMartin Michlmayr	  Support for StrongARM 11x0 based boards.
3571da177e4SLinus Torvalds
3581da177e4SLinus Torvaldsconfig ARCH_S3C2410
359e4d06e39SBen Dooks	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
3600a938b97SDavid Brownell	select GENERIC_GPIO
3611da177e4SLinus Torvalds	help
3621da177e4SLinus Torvalds	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
3631da177e4SLinus Torvalds	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
364f6c8965aSMartin Michlmayr	  the Samsung SMDK2410 development board (and derivatives).
3651da177e4SLinus Torvalds
3661da177e4SLinus Torvaldsconfig ARCH_SHARK
3671da177e4SLinus Torvalds	bool "Shark"
368f7e68bbfSRussell King	select ISA
369f7e68bbfSRussell King	select ISA_DMA
370f7e68bbfSRussell King	select PCI
371f999b8bdSMartin Michlmayr	help
372f999b8bdSMartin Michlmayr	  Support for the StrongARM based Digital DNARD machine, also known
373f999b8bdSMartin Michlmayr	  as "Shark" (<http://www.shark-linux.de/shark.html>).
3741da177e4SLinus Torvalds
3751da177e4SLinus Torvaldsconfig ARCH_LH7A40X
3761da177e4SLinus Torvalds	bool "Sharp LH7A40X"
3771da177e4SLinus Torvalds	help
3781da177e4SLinus Torvalds	  Say Y here for systems based on one of the Sharp LH7A40X
3791da177e4SLinus Torvalds	  System on a Chip processors.  These CPUs include an ARM922T
3801da177e4SLinus Torvalds	  core with a wide array of integrated devices for
3811da177e4SLinus Torvalds	  hand-held and low-power applications.
3821da177e4SLinus Torvalds
3837c6337e2SKevin Hilmanconfig ARCH_DAVINCI
3847c6337e2SKevin Hilman	bool "TI DaVinci"
3857c6337e2SKevin Hilman	select GENERIC_TIME
3867c6337e2SKevin Hilman	select GENERIC_CLOCKEVENTS
387*3d9edf09SVladimir Barinov	select GENERIC_GPIO
3887c6337e2SKevin Hilman	help
3897c6337e2SKevin Hilman	  Support for TI's DaVinci platform.
3907c6337e2SKevin Hilman
3913b938be6SRussell Kingconfig ARCH_OMAP
3923b938be6SRussell King	bool "TI OMAP"
3933b938be6SRussell King	select GENERIC_GPIO
3943b938be6SRussell King	select GENERIC_TIME
3953b938be6SRussell King	help
3963b938be6SRussell King	  Support for TI's OMAP platform (OMAP1 and OMAP2).
3973b938be6SRussell King
3981da177e4SLinus Torvaldsendchoice
3991da177e4SLinus Torvalds
4001da177e4SLinus Torvaldssource "arch/arm/mach-clps711x/Kconfig"
4011da177e4SLinus Torvalds
402e7736d47SLennert Buytenheksource "arch/arm/mach-ep93xx/Kconfig"
403e7736d47SLennert Buytenhek
4041da177e4SLinus Torvaldssource "arch/arm/mach-footbridge/Kconfig"
4051da177e4SLinus Torvalds
4061da177e4SLinus Torvaldssource "arch/arm/mach-integrator/Kconfig"
4071da177e4SLinus Torvalds
4083f7e5815SLennert Buytenheksource "arch/arm/mach-iop32x/Kconfig"
4093f7e5815SLennert Buytenhek
4103f7e5815SLennert Buytenheksource "arch/arm/mach-iop33x/Kconfig"
4111da177e4SLinus Torvalds
412285f5fa7SDan Williamssource "arch/arm/mach-iop13xx/Kconfig"
413285f5fa7SDan Williams
4141da177e4SLinus Torvaldssource "arch/arm/mach-ixp4xx/Kconfig"
4151da177e4SLinus Torvalds
4161da177e4SLinus Torvaldssource "arch/arm/mach-ixp2000/Kconfig"
4171da177e4SLinus Torvalds
418c4713074SLennert Buytenheksource "arch/arm/mach-ixp23xx/Kconfig"
419c4713074SLennert Buytenhek
4201da177e4SLinus Torvaldssource "arch/arm/mach-pxa/Kconfig"
4211da177e4SLinus Torvalds
4221da177e4SLinus Torvaldssource "arch/arm/mach-sa1100/Kconfig"
4231da177e4SLinus Torvalds
424d48af15eSTony Lindgrensource "arch/arm/plat-omap/Kconfig"
425d48af15eSTony Lindgren
426d48af15eSTony Lindgrensource "arch/arm/mach-omap1/Kconfig"
4271da177e4SLinus Torvalds
4281dbae815STony Lindgrensource "arch/arm/mach-omap2/Kconfig"
4291dbae815STony Lindgren
430a21765a7SBen Dookssource "arch/arm/plat-s3c24xx/Kconfig"
431a21765a7SBen Dooks
432a21765a7SBen Dooksif ARCH_S3C2410
433a21765a7SBen Dookssource "arch/arm/mach-s3c2400/Kconfig"
4341da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig"
435a21765a7SBen Dookssource "arch/arm/mach-s3c2412/Kconfig"
436a21765a7SBen Dookssource "arch/arm/mach-s3c2440/Kconfig"
437a21765a7SBen Dookssource "arch/arm/mach-s3c2442/Kconfig"
438e4d06e39SBen Dookssource "arch/arm/mach-s3c2443/Kconfig"
439a21765a7SBen Dooksendif
4401da177e4SLinus Torvalds
4411da177e4SLinus Torvaldssource "arch/arm/mach-lh7a40x/Kconfig"
4421da177e4SLinus Torvalds
4431da177e4SLinus Torvaldssource "arch/arm/mach-imx/Kconfig"
4441da177e4SLinus Torvalds
4451da177e4SLinus Torvaldssource "arch/arm/mach-h720x/Kconfig"
4461da177e4SLinus Torvalds
4471da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig"
4481da177e4SLinus Torvalds
449038c5b60SBellido Nicolassource "arch/arm/mach-aaec2000/Kconfig"
450038c5b60SBellido Nicolas
4518ad68bbfSCatalin Marinassource "arch/arm/mach-realview/Kconfig"
4528ad68bbfSCatalin Marinas
4539d041268SAndrew Victorsource "arch/arm/mach-at91/Kconfig"
45473a59c1cSSAN People
455bb6d8c88SSascha Hauersource "arch/arm/mach-netx/Kconfig"
456bb6d8c88SSascha Hauer
4579918cda5SUwe Kleine-Königsource "arch/arm/mach-ns9xxx/Kconfig"
4589918cda5SUwe Kleine-König
4597c6337e2SKevin Hilmansource "arch/arm/mach-davinci/Kconfig"
4607c6337e2SKevin Hilman
461c53c9cf6SAndrew Victorsource "arch/arm/mach-ks8695/Kconfig"
462c53c9cf6SAndrew Victor
4631da177e4SLinus Torvalds# Definitions to make life easier
4641da177e4SLinus Torvaldsconfig ARCH_ACORN
4651da177e4SLinus Torvalds	bool
4661da177e4SLinus Torvalds
4677ae1f7ecSLennert Buytenhekconfig PLAT_IOP
4687ae1f7ecSLennert Buytenhek	bool
4697ae1f7ecSLennert Buytenhek
4701da177e4SLinus Torvaldssource arch/arm/mm/Kconfig
4711da177e4SLinus Torvalds
472afe4b25eSLennert Buytenhekconfig IWMMXT
473afe4b25eSLennert Buytenhek	bool "Enable iWMMXt support"
4746340aa61SRobert P. J. Day	depends on CPU_XSCALE || CPU_XSC3
475afe4b25eSLennert Buytenhek	default y if PXA27x
476afe4b25eSLennert Buytenhek	help
477afe4b25eSLennert Buytenhek	  Enable support for iWMMXt context switching at run time if
478afe4b25eSLennert Buytenhek	  running on a CPU that supports it.
479afe4b25eSLennert Buytenhek
4801da177e4SLinus Torvalds#  bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
4811da177e4SLinus Torvaldsconfig XSCALE_PMU
4821da177e4SLinus Torvalds	bool
4831da177e4SLinus Torvalds	depends on CPU_XSCALE && !XSCALE_PMU_TIMER
4841da177e4SLinus Torvalds	default y
4851da177e4SLinus Torvalds
4863b93e7b0SHyok S. Choiif !MMU
4873b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu"
4883b93e7b0SHyok S. Choiendif
4893b93e7b0SHyok S. Choi
4901da177e4SLinus Torvaldsendmenu
4911da177e4SLinus Torvalds
4921da177e4SLinus Torvaldssource "arch/arm/common/Kconfig"
4931da177e4SLinus Torvalds
4941da177e4SLinus Torvaldsconfig FORCE_MAX_ZONEORDER
4951da177e4SLinus Torvalds	int
4961da177e4SLinus Torvalds	depends on SA1111
4971da177e4SLinus Torvalds	default "9"
4981da177e4SLinus Torvalds
4991da177e4SLinus Torvaldsmenu "Bus support"
5001da177e4SLinus Torvalds
5011da177e4SLinus Torvaldsconfig ARM_AMBA
5021da177e4SLinus Torvalds	bool
5031da177e4SLinus Torvalds
5041da177e4SLinus Torvaldsconfig ISA
5051da177e4SLinus Torvalds	bool
5061da177e4SLinus Torvalds	help
5071da177e4SLinus Torvalds	  Find out whether you have ISA slots on your motherboard.  ISA is the
5081da177e4SLinus Torvalds	  name of a bus system, i.e. the way the CPU talks to the other stuff
5091da177e4SLinus Torvalds	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
5101da177e4SLinus Torvalds	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
5111da177e4SLinus Torvalds	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
5121da177e4SLinus Torvalds
513065909b9SRussell King# Select ISA DMA controller support
5141da177e4SLinus Torvaldsconfig ISA_DMA
5151da177e4SLinus Torvalds	bool
516065909b9SRussell King	select ISA_DMA_API
5171da177e4SLinus Torvalds
518065909b9SRussell King# Select ISA DMA interface
5195cae841bSAl Viroconfig ISA_DMA_API
5205cae841bSAl Viro	bool
5215cae841bSAl Viro
5221da177e4SLinus Torvaldsconfig PCI
523c53c9cf6SAndrew Victor	bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695
5241da177e4SLinus Torvalds	help
5251da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
5261da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
5271da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
5281da177e4SLinus Torvalds	  VESA. If you have PCI, say Y, otherwise N.
5291da177e4SLinus Torvalds
5301da177e4SLinus Torvalds	  The PCI-HOWTO, available from
5311da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>, contains valuable
5321da177e4SLinus Torvalds	  information about which PCI hardware does work under Linux and which
5331da177e4SLinus Torvalds	  doesn't.
5341da177e4SLinus Torvalds
5351da177e4SLinus Torvalds# Select the host bridge type
5361da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505
5371da177e4SLinus Torvalds	bool
5381da177e4SLinus Torvalds	depends on PCI && ARCH_SHARK
5391da177e4SLinus Torvalds	default y
5401da177e4SLinus Torvalds
5411da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
5421da177e4SLinus Torvalds
5431da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
5441da177e4SLinus Torvalds
5451da177e4SLinus Torvaldsendmenu
5461da177e4SLinus Torvalds
5471da177e4SLinus Torvaldsmenu "Kernel Features"
5481da177e4SLinus Torvalds
5490567a0c0SKevin Hilmansource "kernel/time/Kconfig"
5500567a0c0SKevin Hilman
5511da177e4SLinus Torvaldsconfig SMP
5521da177e4SLinus Torvalds	bool "Symmetric Multi-Processing (EXPERIMENTAL)"
553f6db449cSRussell King	depends on EXPERIMENTAL && REALVIEW_MPCORE
5541da177e4SLinus Torvalds	help
5551da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
5561da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
5571da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
5581da177e4SLinus Torvalds
5591da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
5601da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
5611da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all, single
5621da177e4SLinus Torvalds	  processor machines. On a single processor machine, the kernel will
5631da177e4SLinus Torvalds	  run faster if you say N here.
5641da177e4SLinus Torvalds
56512c62c2eSArthur Othieno	  See also the <file:Documentation/smp.txt>,
56612c62c2eSArthur Othieno	  <file:Documentation/i386/IO-APIC.txt>,
5671da177e4SLinus Torvalds	  <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
5681da177e4SLinus Torvalds	  <http://www.linuxdoc.org/docs.html#howto>.
5691da177e4SLinus Torvalds
5701da177e4SLinus Torvalds	  If you don't know what to do here, say N.
5711da177e4SLinus Torvalds
5721da177e4SLinus Torvaldsconfig NR_CPUS
5731da177e4SLinus Torvalds	int "Maximum number of CPUs (2-32)"
5741da177e4SLinus Torvalds	range 2 32
5751da177e4SLinus Torvalds	depends on SMP
5761da177e4SLinus Torvalds	default "4"
5771da177e4SLinus Torvalds
578a054a811SRussell Kingconfig HOTPLUG_CPU
579a054a811SRussell King	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
580a054a811SRussell King	depends on SMP && HOTPLUG && EXPERIMENTAL
581a054a811SRussell King	help
582a054a811SRussell King	  Say Y here to experiment with turning CPUs off and on.  CPUs
583a054a811SRussell King	  can be controlled through /sys/devices/system/cpu.
584a054a811SRussell King
58537ee16aeSRussell Kingconfig LOCAL_TIMERS
58637ee16aeSRussell King	bool "Use local timer interrupts"
5872a98beb6SRussell King	depends on SMP && REALVIEW_MPCORE
58837ee16aeSRussell King	default y
58937ee16aeSRussell King	help
59037ee16aeSRussell King	  Enable support for local timers on SMP platforms, rather then the
59137ee16aeSRussell King	  legacy IPI broadcast method.  Local timers allows the system
59237ee16aeSRussell King	  accounting to be spread across the timer interval, preventing a
59337ee16aeSRussell King	  "thundering herd" at every timer tick.
59437ee16aeSRussell King
5951da177e4SLinus Torvaldsconfig PREEMPT
5961da177e4SLinus Torvalds	bool "Preemptible Kernel (EXPERIMENTAL)"
5971da177e4SLinus Torvalds	depends on EXPERIMENTAL
5981da177e4SLinus Torvalds	help
5991da177e4SLinus Torvalds	  This option reduces the latency of the kernel when reacting to
6001da177e4SLinus Torvalds	  real-time or interactive events by allowing a low priority process to
6011da177e4SLinus Torvalds	  be preempted even if it is in kernel mode executing a system call.
6021da177e4SLinus Torvalds	  This allows applications to run more reliably even when the system is
6031da177e4SLinus Torvalds	  under load.
6041da177e4SLinus Torvalds
6051da177e4SLinus Torvalds	  Say Y here if you are building a kernel for a desktop, embedded
6061da177e4SLinus Torvalds	  or real-time system.  Say N if you are unsure.
6071da177e4SLinus Torvalds
6088749af68SRussell Kingconfig NO_IDLE_HZ
6098749af68SRussell King	bool "Dynamic tick timer"
6100567a0c0SKevin Hilman	depends on !GENERIC_CLOCKEVENTS
6118749af68SRussell King	help
6128749af68SRussell King	  Select this option if you want to disable continuous timer ticks
6138749af68SRussell King	  and have them programmed to occur as required. This option saves
6148749af68SRussell King	  power as the system can remain in idle state for longer.
6158749af68SRussell King
6168749af68SRussell King	  By default dynamic tick is disabled during the boot, and can be
6178749af68SRussell King	  manually enabled with:
6188749af68SRussell King
6198749af68SRussell King	    echo 1 > /sys/devices/system/timer/timer0/dyn_tick
6208749af68SRussell King
6218749af68SRussell King	  Alternatively, if you want dynamic tick automatically enabled
6228749af68SRussell King	  during boot, pass "dyntick=enable" via the kernel command string.
6238749af68SRussell King
624f2be64b3STony Lindgren	  Please note that dynamic tick may affect the accuracy of
625f2be64b3STony Lindgren	  timekeeping on some platforms depending on the implementation.
626569d2c34SNicolas Pitre	  Currently at least OMAP, PXA2xx and SA11x0 platforms are known
627569d2c34SNicolas Pitre	  to have accurate timekeeping with dynamic tick.
628f2be64b3STony Lindgren
629f8065813SRussell Kingconfig HZ
630f8065813SRussell King	int
631f8065813SRussell King	default 128 if ARCH_L7200
632f8065813SRussell King	default 200 if ARCH_EBSA110 || ARCH_S3C2410
633bfe65704SRussell King	default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
634f8065813SRussell King	default 100
635f8065813SRussell King
636704bdda0SNicolas Pitreconfig AEABI
637704bdda0SNicolas Pitre	bool "Use the ARM EABI to compile the kernel"
638704bdda0SNicolas Pitre	help
639704bdda0SNicolas Pitre	  This option allows for the kernel to be compiled using the latest
640704bdda0SNicolas Pitre	  ARM ABI (aka EABI).  This is only useful if you are using a user
641704bdda0SNicolas Pitre	  space environment that is also compiled with EABI.
642704bdda0SNicolas Pitre
643704bdda0SNicolas Pitre	  Since there are major incompatibilities between the legacy ABI and
644704bdda0SNicolas Pitre	  EABI, especially with regard to structure member alignment, this
645704bdda0SNicolas Pitre	  option also changes the kernel syscall calling convention to
646704bdda0SNicolas Pitre	  disambiguate both ABIs and allow for backward compatibility support
647704bdda0SNicolas Pitre	  (selected with CONFIG_OABI_COMPAT).
648704bdda0SNicolas Pitre
649704bdda0SNicolas Pitre	  To use this you need GCC version 4.0.0 or later.
650704bdda0SNicolas Pitre
6516c90c872SNicolas Pitreconfig OABI_COMPAT
652a73a3ff1SRussell King	bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
65361c484d4SNicolas Pitre	depends on AEABI && EXPERIMENTAL
6546c90c872SNicolas Pitre	default y
6556c90c872SNicolas Pitre	help
6566c90c872SNicolas Pitre	  This option preserves the old syscall interface along with the
6576c90c872SNicolas Pitre	  new (ARM EABI) one. It also provides a compatibility layer to
6586c90c872SNicolas Pitre	  intercept syscalls that have structure arguments which layout
6596c90c872SNicolas Pitre	  in memory differs between the legacy ABI and the new ARM EABI
6606c90c872SNicolas Pitre	  (only for non "thumb" binaries). This option adds a tiny
6616c90c872SNicolas Pitre	  overhead to all syscalls and produces a slightly larger kernel.
6626c90c872SNicolas Pitre	  If you know you'll be using only pure EABI user space then you
6636c90c872SNicolas Pitre	  can say N here. If this option is not selected and you attempt
6646c90c872SNicolas Pitre	  to execute a legacy ABI binary then the result will be
6656c90c872SNicolas Pitre	  UNPREDICTABLE (in fact it can be predicted that it won't work
6666c90c872SNicolas Pitre	  at all). If in doubt say Y.
6676c90c872SNicolas Pitre
6683f22ab27SDave Hansenconfig ARCH_DISCONTIGMEM_ENABLE
6691da177e4SLinus Torvalds	bool
670f7e68bbfSRussell King	default (ARCH_LH7A40X && !LH7A40X_CONTIGMEM)
6711da177e4SLinus Torvalds	help
6721da177e4SLinus Torvalds	  Say Y to support efficient handling of discontiguous physical memory,
6731da177e4SLinus Torvalds	  for architectures which are either NUMA (Non-Uniform Memory Access)
6741da177e4SLinus Torvalds	  or have huge holes in the physical address space for other reasons.
6751da177e4SLinus Torvalds	  See <file:Documentation/vm/numa> for more.
6761da177e4SLinus Torvalds
677c80d79d7SYasunori Gotoconfig NODES_SHIFT
678c80d79d7SYasunori Goto	int
679c80d79d7SYasunori Goto	default "4" if ARCH_LH7A40X
680c80d79d7SYasunori Goto	default "2"
681c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
682c80d79d7SYasunori Goto
6833f22ab27SDave Hansensource "mm/Kconfig"
6843f22ab27SDave Hansen
6851da177e4SLinus Torvaldsconfig LEDS
6861da177e4SLinus Torvalds	bool "Timer and CPU usage LEDs"
6871da177e4SLinus Torvalds	depends on ARCH_CDB89712 || ARCH_CO285 || ARCH_EBSA110 || \
6881da177e4SLinus Torvalds		   ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \
6891da177e4SLinus Torvalds		   ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
6901da177e4SLinus Torvalds		   ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
69173a59c1cSSAN People		   ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
692c53c9cf6SAndrew Victor		   ARCH_AT91 || MACH_TRIZEPS4 || ARCH_DAVINCI || \
693c53c9cf6SAndrew Victor		   ARCH_KS8695
6941da177e4SLinus Torvalds	help
6951da177e4SLinus Torvalds	  If you say Y here, the LEDs on your machine will be used
6961da177e4SLinus Torvalds	  to provide useful information about your current system status.
6971da177e4SLinus Torvalds
6981da177e4SLinus Torvalds	  If you are compiling a kernel for a NetWinder or EBSA-285, you will
6991da177e4SLinus Torvalds	  be able to select which LEDs are active using the options below. If
7001da177e4SLinus Torvalds	  you are compiling a kernel for the EBSA-110 or the LART however, the
7011da177e4SLinus Torvalds	  red LED will simply flash regularly to indicate that the system is
7021da177e4SLinus Torvalds	  still functional. It is safe to say Y here if you have a CATS
7031da177e4SLinus Torvalds	  system, but the driver will do nothing.
7041da177e4SLinus Torvalds
7051da177e4SLinus Torvaldsconfig LEDS_TIMER
7061da177e4SLinus Torvalds	bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
7071da177e4SLinus Torvalds			    MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
7081da177e4SLinus Torvalds	depends on LEDS
7090567a0c0SKevin Hilman	depends on !GENERIC_CLOCKEVENTS
7101da177e4SLinus Torvalds	default y if ARCH_EBSA110
7111da177e4SLinus Torvalds	help
7121da177e4SLinus Torvalds	  If you say Y here, one of the system LEDs (the green one on the
7131da177e4SLinus Torvalds	  NetWinder, the amber one on the EBSA285, or the red one on the LART)
7141da177e4SLinus Torvalds	  will flash regularly to indicate that the system is still
7151da177e4SLinus Torvalds	  operational. This is mainly useful to kernel hackers who are
7161da177e4SLinus Torvalds	  debugging unstable kernels.
7171da177e4SLinus Torvalds
7181da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
7191da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
7201da177e4SLinus Torvalds	  will overrule the CPU usage LED.
7211da177e4SLinus Torvalds
7221da177e4SLinus Torvaldsconfig LEDS_CPU
7231da177e4SLinus Torvalds	bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
7241da177e4SLinus Torvalds			!ARCH_OMAP) || MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
7251da177e4SLinus Torvalds	depends on LEDS
7261da177e4SLinus Torvalds	help
7271da177e4SLinus Torvalds	  If you say Y here, the red LED will be used to give a good real
7281da177e4SLinus Torvalds	  time indication of CPU usage, by lighting whenever the idle task
7291da177e4SLinus Torvalds	  is not currently executing.
7301da177e4SLinus Torvalds
7311da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
7321da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
7331da177e4SLinus Torvalds	  will overrule the CPU usage LED.
7341da177e4SLinus Torvalds
7351da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP
7361da177e4SLinus Torvalds	bool
737f12d0d7cSHyok S. Choi	depends on CPU_CP15_MMU
7381da177e4SLinus Torvalds	default y if !ARCH_EBSA110
7391da177e4SLinus Torvalds	help
7401da177e4SLinus Torvalds	  ARM processors cannot fetch/store information which is not
7411da177e4SLinus Torvalds	  naturally aligned on the bus, i.e., a 4 byte fetch must start at an
7421da177e4SLinus Torvalds	  address divisible by 4. On 32-bit ARM processors, these non-aligned
7431da177e4SLinus Torvalds	  fetch/store instructions will be emulated in software if you say
7441da177e4SLinus Torvalds	  here, which has a severe performance impact. This is necessary for
7451da177e4SLinus Torvalds	  correct operation of some network protocols. With an IP-only
7461da177e4SLinus Torvalds	  configuration it is safe to say N, otherwise say Y.
7471da177e4SLinus Torvalds
7481da177e4SLinus Torvaldsendmenu
7491da177e4SLinus Torvalds
7501da177e4SLinus Torvaldsmenu "Boot options"
7511da177e4SLinus Torvalds
7521da177e4SLinus Torvalds# Compressed boot loader in ROM.  Yes, we really want to ask about
7531da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files.
7541da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT
7551da177e4SLinus Torvalds	hex "Compressed ROM boot loader base address"
7561da177e4SLinus Torvalds	default "0"
7571da177e4SLinus Torvalds	help
7581da177e4SLinus Torvalds	  The physical address at which the ROM-able zImage is to be
7591da177e4SLinus Torvalds	  placed in the target.  Platforms which normally make use of
7601da177e4SLinus Torvalds	  ROM-able zImage formats normally set this to a suitable
7611da177e4SLinus Torvalds	  value in their defconfig file.
7621da177e4SLinus Torvalds
7631da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
7641da177e4SLinus Torvalds
7651da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS
7661da177e4SLinus Torvalds	hex "Compressed ROM boot loader BSS address"
7671da177e4SLinus Torvalds	default "0"
7681da177e4SLinus Torvalds	help
769f8c440b2SDan Fandrich	  The base address of an area of read/write memory in the target
770f8c440b2SDan Fandrich	  for the ROM-able zImage which must be available while the
771f8c440b2SDan Fandrich	  decompressor is running. It must be large enough to hold the
772f8c440b2SDan Fandrich	  entire decompressed kernel plus an additional 128 KiB.
773f8c440b2SDan Fandrich	  Platforms which normally make use of ROM-able zImage formats
774f8c440b2SDan Fandrich	  normally set this to a suitable value in their defconfig file.
7751da177e4SLinus Torvalds
7761da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
7771da177e4SLinus Torvalds
7781da177e4SLinus Torvaldsconfig ZBOOT_ROM
7791da177e4SLinus Torvalds	bool "Compressed boot loader in ROM/flash"
7801da177e4SLinus Torvalds	depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
7811da177e4SLinus Torvalds	help
7821da177e4SLinus Torvalds	  Say Y here if you intend to execute your compressed kernel image
7831da177e4SLinus Torvalds	  (zImage) directly from ROM or flash.  If unsure, say N.
7841da177e4SLinus Torvalds
7851da177e4SLinus Torvaldsconfig CMDLINE
7861da177e4SLinus Torvalds	string "Default kernel command string"
7871da177e4SLinus Torvalds	default ""
7881da177e4SLinus Torvalds	help
7891da177e4SLinus Torvalds	  On some architectures (EBSA110 and CATS), there is currently no way
7901da177e4SLinus Torvalds	  for the boot loader to pass arguments to the kernel. For these
7911da177e4SLinus Torvalds	  architectures, you should supply some command-line options at build
7921da177e4SLinus Torvalds	  time by entering them here. As a minimum, you should specify the
7931da177e4SLinus Torvalds	  memory size and the root device (e.g., mem=64M root=/dev/nfs).
7941da177e4SLinus Torvalds
7951da177e4SLinus Torvaldsconfig XIP_KERNEL
7961da177e4SLinus Torvalds	bool "Kernel Execute-In-Place from ROM"
7971da177e4SLinus Torvalds	depends on !ZBOOT_ROM
7981da177e4SLinus Torvalds	help
7991da177e4SLinus Torvalds	  Execute-In-Place allows the kernel to run from non-volatile storage
8001da177e4SLinus Torvalds	  directly addressable by the CPU, such as NOR flash. This saves RAM
8011da177e4SLinus Torvalds	  space since the text section of the kernel is not loaded from flash
8021da177e4SLinus Torvalds	  to RAM.  Read-write sections, such as the data section and stack,
8031da177e4SLinus Torvalds	  are still copied to RAM.  The XIP kernel is not compressed since
8041da177e4SLinus Torvalds	  it has to run directly from flash, so it will take more space to
8051da177e4SLinus Torvalds	  store it.  The flash address used to link the kernel object files,
8061da177e4SLinus Torvalds	  and for storing it, is configuration dependent. Therefore, if you
8071da177e4SLinus Torvalds	  say Y here, you must know the proper physical address where to
8081da177e4SLinus Torvalds	  store the kernel image depending on your own flash memory usage.
8091da177e4SLinus Torvalds
8101da177e4SLinus Torvalds	  Also note that the make target becomes "make xipImage" rather than
8111da177e4SLinus Torvalds	  "make zImage" or "make Image".  The final kernel binary to put in
8121da177e4SLinus Torvalds	  ROM memory will be arch/arm/boot/xipImage.
8131da177e4SLinus Torvalds
8141da177e4SLinus Torvalds	  If unsure, say N.
8151da177e4SLinus Torvalds
8161da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR
8171da177e4SLinus Torvalds	hex "XIP Kernel Physical Location"
8181da177e4SLinus Torvalds	depends on XIP_KERNEL
8191da177e4SLinus Torvalds	default "0x00080000"
8201da177e4SLinus Torvalds	help
8211da177e4SLinus Torvalds	  This is the physical address in your flash memory the kernel will
8221da177e4SLinus Torvalds	  be linked for and stored to.  This address is dependent on your
8231da177e4SLinus Torvalds	  own flash usage.
8241da177e4SLinus Torvalds
825c587e4a6SRichard Purdieconfig KEXEC
826c587e4a6SRichard Purdie	bool "Kexec system call (EXPERIMENTAL)"
827c587e4a6SRichard Purdie	depends on EXPERIMENTAL
828c587e4a6SRichard Purdie	help
829c587e4a6SRichard Purdie	  kexec is a system call that implements the ability to shutdown your
830c587e4a6SRichard Purdie	  current kernel, and to start another kernel.  It is like a reboot
831c587e4a6SRichard Purdie	  but it is indepedent of the system firmware.   And like a reboot
832c587e4a6SRichard Purdie	  you can start any kernel with it, not just Linux.
833c587e4a6SRichard Purdie
834c587e4a6SRichard Purdie	  It is an ongoing process to be certain the hardware in a machine
835c587e4a6SRichard Purdie	  is properly shutdown, so do not be surprised if this code does not
836c587e4a6SRichard Purdie	  initially work for you.  It may help to enable device hotplugging
837c587e4a6SRichard Purdie	  support.
838c587e4a6SRichard Purdie
8391da177e4SLinus Torvaldsendmenu
8401da177e4SLinus Torvalds
8413c8cd0ccSPavel Pisaif (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX )
8421da177e4SLinus Torvalds
8431da177e4SLinus Torvaldsmenu "CPU Frequency scaling"
8441da177e4SLinus Torvalds
8451da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig"
8461da177e4SLinus Torvalds
8471da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100
8481da177e4SLinus Torvalds	bool
84907c6d48fSVincent Sanders	depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT)
8501da177e4SLinus Torvalds	default y
8511da177e4SLinus Torvalds
8521da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110
8531da177e4SLinus Torvalds	bool
8541da177e4SLinus Torvalds	depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3)
8551da177e4SLinus Torvalds	default y
8561da177e4SLinus Torvalds
8571da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR
8581da177e4SLinus Torvalds	tristate "CPUfreq driver for ARM Integrator CPUs"
8591da177e4SLinus Torvalds	depends on ARCH_INTEGRATOR && CPU_FREQ
8601da177e4SLinus Torvalds	default y
8611da177e4SLinus Torvalds	help
8621da177e4SLinus Torvalds	  This enables the CPUfreq driver for ARM Integrator CPUs.
8631da177e4SLinus Torvalds
8641da177e4SLinus Torvalds	  For details, take a look at <file:Documentation/cpu-freq>.
8651da177e4SLinus Torvalds
8661da177e4SLinus Torvalds	  If in doubt, say Y.
8671da177e4SLinus Torvalds
8683c8cd0ccSPavel Pisaconfig CPU_FREQ_IMX
8693c8cd0ccSPavel Pisa	tristate "CPUfreq driver for i.MX CPUs"
8703c8cd0ccSPavel Pisa	depends on ARCH_IMX && CPU_FREQ
8713c8cd0ccSPavel Pisa	default n
8723c8cd0ccSPavel Pisa	help
8733c8cd0ccSPavel Pisa	  This enables the CPUfreq driver for i.MX CPUs.
8743c8cd0ccSPavel Pisa
8753c8cd0ccSPavel Pisa	  If in doubt, say N.
8763c8cd0ccSPavel Pisa
8771da177e4SLinus Torvaldsendmenu
8781da177e4SLinus Torvalds
8791da177e4SLinus Torvaldsendif
8801da177e4SLinus Torvalds
8811da177e4SLinus Torvaldsmenu "Floating point emulation"
8821da177e4SLinus Torvalds
8831da177e4SLinus Torvaldscomment "At least one emulation must be selected"
8841da177e4SLinus Torvalds
8851da177e4SLinus Torvaldsconfig FPE_NWFPE
8861da177e4SLinus Torvalds	bool "NWFPE math emulation"
8878993a44cSNicolas Pitre	depends on !AEABI || OABI_COMPAT
8881da177e4SLinus Torvalds	---help---
8891da177e4SLinus Torvalds	  Say Y to include the NWFPE floating point emulator in the kernel.
8901da177e4SLinus Torvalds	  This is necessary to run most binaries. Linux does not currently
8911da177e4SLinus Torvalds	  support floating point hardware so you need to say Y here even if
8921da177e4SLinus Torvalds	  your machine has an FPA or floating point co-processor podule.
8931da177e4SLinus Torvalds
8941da177e4SLinus Torvalds	  You may say N here if you are going to load the Acorn FPEmulator
8951da177e4SLinus Torvalds	  early in the bootup.
8961da177e4SLinus Torvalds
8971da177e4SLinus Torvaldsconfig FPE_NWFPE_XP
8981da177e4SLinus Torvalds	bool "Support extended precision"
899bedf142bSLennert Buytenhek	depends on FPE_NWFPE
9001da177e4SLinus Torvalds	help
9011da177e4SLinus Torvalds	  Say Y to include 80-bit support in the kernel floating-point
9021da177e4SLinus Torvalds	  emulator.  Otherwise, only 32 and 64-bit support is compiled in.
9031da177e4SLinus Torvalds	  Note that gcc does not generate 80-bit operations by default,
9041da177e4SLinus Torvalds	  so in most cases this option only enlarges the size of the
9051da177e4SLinus Torvalds	  floating point emulator without any good reason.
9061da177e4SLinus Torvalds
9071da177e4SLinus Torvalds	  You almost surely want to say N here.
9081da177e4SLinus Torvalds
9091da177e4SLinus Torvaldsconfig FPE_FASTFPE
9101da177e4SLinus Torvalds	bool "FastFPE math emulation (EXPERIMENTAL)"
9118993a44cSNicolas Pitre	depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
9121da177e4SLinus Torvalds	---help---
9131da177e4SLinus Torvalds	  Say Y here to include the FAST floating point emulator in the kernel.
9141da177e4SLinus Torvalds	  This is an experimental much faster emulator which now also has full
9151da177e4SLinus Torvalds	  precision for the mantissa.  It does not support any exceptions.
9161da177e4SLinus Torvalds	  It is very simple, and approximately 3-6 times faster than NWFPE.
9171da177e4SLinus Torvalds
9181da177e4SLinus Torvalds	  It should be sufficient for most programs.  It may be not suitable
9191da177e4SLinus Torvalds	  for scientific calculations, but you have to check this for yourself.
9201da177e4SLinus Torvalds	  If you do not feel you need a faster FP emulation you should better
9211da177e4SLinus Torvalds	  choose NWFPE.
9221da177e4SLinus Torvalds
9231da177e4SLinus Torvaldsconfig VFP
9241da177e4SLinus Torvalds	bool "VFP-format floating point maths"
9251da177e4SLinus Torvalds	depends on CPU_V6 || CPU_ARM926T
9261da177e4SLinus Torvalds	help
9271da177e4SLinus Torvalds	  Say Y to include VFP support code in the kernel. This is needed
9281da177e4SLinus Torvalds	  if your hardware includes a VFP unit.
9291da177e4SLinus Torvalds
9301da177e4SLinus Torvalds	  Please see <file:Documentation/arm/VFP/release-notes.txt> for
9311da177e4SLinus Torvalds	  release notes and additional status information.
9321da177e4SLinus Torvalds
9331da177e4SLinus Torvalds	  Say N if your target does not have VFP hardware.
9341da177e4SLinus Torvalds
9351da177e4SLinus Torvaldsendmenu
9361da177e4SLinus Torvalds
9371da177e4SLinus Torvaldsmenu "Userspace binary formats"
9381da177e4SLinus Torvalds
9391da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
9401da177e4SLinus Torvalds
9411da177e4SLinus Torvaldsconfig ARTHUR
9421da177e4SLinus Torvalds	tristate "RISC OS personality"
943704bdda0SNicolas Pitre	depends on !AEABI
9441da177e4SLinus Torvalds	help
9451da177e4SLinus Torvalds	  Say Y here to include the kernel code necessary if you want to run
9461da177e4SLinus Torvalds	  Acorn RISC OS/Arthur binaries under Linux. This code is still very
9471da177e4SLinus Torvalds	  experimental; if this sounds frightening, say N and sleep in peace.
9481da177e4SLinus Torvalds	  You can also say M here to compile this support as a module (which
9491da177e4SLinus Torvalds	  will be called arthur).
9501da177e4SLinus Torvalds
9511da177e4SLinus Torvaldsendmenu
9521da177e4SLinus Torvalds
9531da177e4SLinus Torvaldsmenu "Power management options"
9541da177e4SLinus Torvalds
955eceab4acSRussell Kingsource "kernel/power/Kconfig"
9561da177e4SLinus Torvalds
9571da177e4SLinus Torvaldsendmenu
9581da177e4SLinus Torvalds
959d5950b43SSam Ravnborgsource "net/Kconfig"
960d5950b43SSam Ravnborg
9611da177e4SLinus Torvaldsmenu "Device Drivers"
9621da177e4SLinus Torvalds
9631da177e4SLinus Torvaldssource "drivers/base/Kconfig"
9641da177e4SLinus Torvalds
965c35bf4a5SPavel Macheksource "drivers/connector/Kconfig"
966c35bf4a5SPavel Machek
967f12d0d7cSHyok S. Choiif ALIGNMENT_TRAP || !CPU_CP15_MMU
9681da177e4SLinus Torvaldssource "drivers/mtd/Kconfig"
9691da177e4SLinus Torvaldsendif
9701da177e4SLinus Torvalds
9711da177e4SLinus Torvaldssource "drivers/parport/Kconfig"
9721da177e4SLinus Torvalds
9731da177e4SLinus Torvaldssource "drivers/pnp/Kconfig"
9741da177e4SLinus Torvalds
9751da177e4SLinus Torvaldssource "drivers/block/Kconfig"
9761da177e4SLinus Torvalds
9771da177e4SLinus Torvaldssource "drivers/acorn/block/Kconfig"
9781da177e4SLinus Torvalds
9793f7e5815SLennert Buytenhekif PCMCIA || ARCH_CLPS7500 || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX \
980bb011b8eSDavid Brownell	|| ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
981c4713074SLennert Buytenhek	|| ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \
982c4713074SLennert Buytenhek	|| ARCH_IXP23XX
9831da177e4SLinus Torvaldssource "drivers/ide/Kconfig"
9841da177e4SLinus Torvaldsendif
9851da177e4SLinus Torvalds
9861da177e4SLinus Torvaldssource "drivers/scsi/Kconfig"
9871da177e4SLinus Torvalds
988eb370f0bSMartin Michlmayrsource "drivers/ata/Kconfig"
989eb370f0bSMartin Michlmayr
9901da177e4SLinus Torvaldssource "drivers/md/Kconfig"
9911da177e4SLinus Torvalds
9921da177e4SLinus Torvaldssource "drivers/message/fusion/Kconfig"
9931da177e4SLinus Torvalds
9941da177e4SLinus Torvaldssource "drivers/ieee1394/Kconfig"
9951da177e4SLinus Torvalds
9961da177e4SLinus Torvaldssource "drivers/message/i2o/Kconfig"
9971da177e4SLinus Torvalds
998d5950b43SSam Ravnborgsource "drivers/net/Kconfig"
9991da177e4SLinus Torvalds
10001da177e4SLinus Torvaldssource "drivers/isdn/Kconfig"
10011da177e4SLinus Torvalds
10021da177e4SLinus Torvalds# input before char - char/joystick depends on it. As does USB.
10031da177e4SLinus Torvalds
10041da177e4SLinus Torvaldssource "drivers/input/Kconfig"
10051da177e4SLinus Torvalds
10061da177e4SLinus Torvaldssource "drivers/char/Kconfig"
10071da177e4SLinus Torvalds
10081da177e4SLinus Torvaldssource "drivers/i2c/Kconfig"
10091da177e4SLinus Torvalds
10108ae12a0dSDavid Brownellsource "drivers/spi/Kconfig"
10118ae12a0dSDavid Brownell
101204916c0eSAlessandro Zummosource "drivers/w1/Kconfig"
101304916c0eSAlessandro Zummo
1014ad2f931dSJean Delvaresource "drivers/hwmon/Kconfig"
1015ad2f931dSJean Delvare
10161da177e4SLinus Torvalds#source "drivers/l3/Kconfig"
10171da177e4SLinus Torvalds
10181da177e4SLinus Torvaldssource "drivers/misc/Kconfig"
10191da177e4SLinus Torvalds
1020a4e137abSRussell Kingsource "drivers/mfd/Kconfig"
1021a4e137abSRussell King
1022c72a1d60SRichard Purdiesource "drivers/leds/Kconfig"
1023c72a1d60SRichard Purdie
10241da177e4SLinus Torvaldssource "drivers/media/Kconfig"
10251da177e4SLinus Torvalds
10261da177e4SLinus Torvaldssource "drivers/video/Kconfig"
10271da177e4SLinus Torvalds
10281da177e4SLinus Torvaldssource "sound/Kconfig"
10291da177e4SLinus Torvalds
1030c2dade51SSascha Hauersource "drivers/hid/Kconfig"
1031c2dade51SSascha Hauer
10321da177e4SLinus Torvaldssource "drivers/usb/Kconfig"
10331da177e4SLinus Torvalds
10341da177e4SLinus Torvaldssource "drivers/mmc/Kconfig"
10351da177e4SLinus Torvalds
103612b824fbSAlessandro Zummosource "drivers/rtc/Kconfig"
103712b824fbSAlessandro Zummo
10381da177e4SLinus Torvaldsendmenu
10391da177e4SLinus Torvalds
10401da177e4SLinus Torvaldssource "fs/Kconfig"
10411da177e4SLinus Torvalds
10421da177e4SLinus Torvaldssource "arch/arm/oprofile/Kconfig"
10431da177e4SLinus Torvalds
10441da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug"
10451da177e4SLinus Torvalds
10461da177e4SLinus Torvaldssource "security/Kconfig"
10471da177e4SLinus Torvalds
10481da177e4SLinus Torvaldssource "crypto/Kconfig"
10491da177e4SLinus Torvalds
10501da177e4SLinus Torvaldssource "lib/Kconfig"
1051