blob: 60a09fcc4af886896df8b2d14cf7335dad320616 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5
6mainmenu "Linux Kernel Configuration"
7
8config ARM
9 bool
10 default y
David Woodhousee17c6d52008-06-17 12:19:34 +010011 select HAVE_AOUT
Adrian Bunk2064c942008-04-28 23:44:43 +020012 select HAVE_IDE
Alessandro Zummo12b824f2006-03-27 01:16:35 -080013 select RTC_LIB
Ralf Baechle75e71532007-02-09 17:08:58 +000014 select SYS_SUPPORTS_APM_EMULATION
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050015 select HAVE_OPROFILE
Jason Wessel5cbad0e2008-02-20 13:33:40 -060016 select HAVE_ARCH_KGDB
Mathieu Desnoyers3f550092008-02-02 15:10:35 -050017 select HAVE_KPROBES if (!XIP_KERNEL)
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080018 select HAVE_KRETPROBES if (HAVE_KPROBES)
Steven Rostedt606576c2008-10-06 19:06:12 -040019 select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
Dmitry Baryshkov1fe53262008-07-18 13:30:14 +040020 select HAVE_GENERIC_DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -070021 help
22 The ARM series is a line of low-power-consumption RISC chip designs
Martin Michlmayrf6c89652006-02-08 21:09:07 +000023 licensed by ARM Ltd and targeted at embedded applications and
Linus Torvalds1da177e2005-04-16 15:20:36 -070024 handhelds such as the Compaq IPAQ. ARM-based PCs are no longer
Martin Michlmayrf6c89652006-02-08 21:09:07 +000025 manufactured, but legacy ARM-based PC hardware remains popular in
Linus Torvalds1da177e2005-04-16 15:20:36 -070026 Europe. There is an ARM Linux project with a web page at
27 <http://www.arm.linux.org.uk/>.
28
Russell King1a189b92008-04-13 21:41:55 +010029config HAVE_PWM
30 bool
31
Ralf Baechle75e71532007-02-09 17:08:58 +000032config SYS_SUPPORTS_APM_EMULATION
33 bool
34
David Brownell0a938b92007-03-05 00:30:18 -080035config GENERIC_GPIO
36 bool
37 default n
38
Kevin Hilman746140c2006-09-22 00:16:30 +010039config GENERIC_TIME
40 bool
41 default n
42
Kevin Hilman0567a0c2007-03-13 20:29:24 +010043config GENERIC_CLOCKEVENTS
44 bool
45 default n
46
Catalin Marinasa8655e82008-02-04 17:30:57 +010047config GENERIC_CLOCKEVENTS_BROADCAST
48 bool
49 depends on GENERIC_CLOCKEVENTS
50 default y if SMP && !LOCAL_TIMERS
51
Linus Torvalds1da177e2005-04-16 15:20:36 -070052config MMU
53 bool
54 default y
55
Al Viro5ea81762007-02-11 15:41:31 +000056config NO_IOPORT
57 bool
58 default n
59
Linus Torvalds1da177e2005-04-16 15:20:36 -070060config EISA
61 bool
62 ---help---
63 The Extended Industry Standard Architecture (EISA) bus was
64 developed as an open alternative to the IBM MicroChannel bus.
65
66 The EISA bus provided some of the features of the IBM MicroChannel
67 bus while maintaining backward compatibility with cards made for
68 the older ISA bus. The EISA bus saw limited use between 1988 and
69 1995 when it was made obsolete by the PCI bus.
70
71 Say Y here if you are building a kernel for an EISA-based machine.
72
73 Otherwise, say N.
74
75config SBUS
76 bool
77
78config MCA
79 bool
80 help
81 MicroChannel Architecture is found in some IBM PS/2 machines and
82 laptops. It is a bus system similar to PCI or ISA. See
83 <file:Documentation/mca.txt> (and especially the web page given
84 there) before attempting to build an MCA bus kernel.
85
Thomas Gleixner4a2581a2006-07-01 22:30:09 +010086config GENERIC_HARDIRQS
87 bool
88 default y
89
Russell Kingf16fb1e2007-04-28 09:59:37 +010090config STACKTRACE_SUPPORT
91 bool
92 default y
93
Nicolas Pitref76e9152008-04-24 01:31:46 -040094config HAVE_LATENCYTOP_SUPPORT
95 bool
96 depends on !SMP
97 default y
98
Russell Kingf16fb1e2007-04-28 09:59:37 +010099config LOCKDEP_SUPPORT
100 bool
101 default y
102
Russell King7ad1bcb2006-08-27 12:07:02 +0100103config TRACE_IRQFLAGS_SUPPORT
104 bool
105 default y
106
Thomas Gleixner4a2581a2006-07-01 22:30:09 +0100107config HARDIRQS_SW_RESEND
108 bool
109 default y
110
111config GENERIC_IRQ_PROBE
112 bool
113 default y
114
Nick Piggin95c354f2008-01-30 13:31:20 +0100115config GENERIC_LOCKBREAK
116 bool
117 default y
118 depends on SMP && PREEMPT
119
Linus Torvalds1da177e2005-04-16 15:20:36 -0700120config RWSEM_GENERIC_SPINLOCK
121 bool
122 default y
123
124config RWSEM_XCHGADD_ALGORITHM
125 bool
126
David Howellsf0d1b0b2006-12-08 02:37:49 -0800127config ARCH_HAS_ILOG2_U32
128 bool
129 default n
130
131config ARCH_HAS_ILOG2_U64
132 bool
133 default n
134
Akinobu Mitab89c3b12006-03-26 01:39:19 -0800135config GENERIC_HWEIGHT
136 bool
137 default y
138
Linus Torvalds1da177e2005-04-16 15:20:36 -0700139config GENERIC_CALIBRATE_DELAY
140 bool
141 default y
142
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100143config ARCH_MAY_HAVE_PC_FDC
144 bool
145
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800146config ZONE_DMA
147 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800148
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149config GENERIC_ISA_DMA
150 bool
151
Linus Torvalds1da177e2005-04-16 15:20:36 -0700152config FIQ
153 bool
154
Al Viro034d2f52005-12-19 16:27:59 -0500155config ARCH_MTD_XIP
156 bool
157
Paulius Zaleckas60a752e2008-06-25 13:33:14 +0100158config GENERIC_HARDIRQS_NO__DO_IRQ
159 bool
160 def_bool y
161
Mathieu Desnoyersc0ffa3a2008-02-02 15:10:32 -0500162if OPROFILE
163
164config OPROFILE_ARMV6
165 def_bool y
166 depends on CPU_V6 && !SMP
167 select OPROFILE_ARM11_CORE
168
169config OPROFILE_MPCORE
170 def_bool y
171 depends on CPU_V6 && SMP
172 select OPROFILE_ARM11_CORE
173
174config OPROFILE_ARM11_CORE
175 bool
176
Jean PIHETd7ac4e22008-08-12 19:07:39 +0100177config OPROFILE_ARMV7
178 def_bool y
179 depends on CPU_V7 && !SMP
180 bool
181
Mathieu Desnoyersc0ffa3a2008-02-02 15:10:32 -0500182endif
183
Hyok S. Choic760fc12006-03-27 15:18:50 +0100184config VECTORS_BASE
185 hex
Hyok S. Choi6afd6fa2006-09-28 21:46:34 +0900186 default 0xffff0000 if MMU || CPU_HIGH_VECTOR
Hyok S. Choic760fc12006-03-27 15:18:50 +0100187 default DRAM_BASE if REMAP_VECTORS_TO_RAM
188 default 0x00000000
189 help
190 The base address of exception vectors.
191
Linus Torvalds1da177e2005-04-16 15:20:36 -0700192source "init/Kconfig"
193
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700194source "kernel/Kconfig.freezer"
195
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196menu "System Type"
197
198choice
199 prompt "ARM system type"
Catalin Marinas6a0e2432006-03-07 14:42:27 +0000200 default ARCH_VERSATILE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100202config ARCH_AAEC2000
203 bool "Agilent AAEC-2000 based"
Russell Kingc7508152008-10-26 10:55:14 +0000204 select CPU_ARM920T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100205 select ARM_AMBA
David Brownell9483a572008-07-23 21:26:48 -0700206 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100207 help
208 This enables support for systems based on the Agilent AAEC-2000
209
210config ARCH_INTEGRATOR
211 bool "ARM Ltd. Integrator family"
212 select ARM_AMBA
David Brownell9483a572008-07-23 21:26:48 -0700213 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100214 select ICST525
215 help
216 Support for ARM's Integrator platform.
217
218config ARCH_REALVIEW
219 bool "ARM Ltd. RealView family"
220 select ARM_AMBA
David Brownell9483a572008-07-23 21:26:48 -0700221 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100222 select ICST307
Catalin Marinas85802af2008-02-04 17:24:54 +0100223 select GENERIC_TIME
Catalin Marinasae30cea2008-02-04 17:26:55 +0100224 select GENERIC_CLOCKEVENTS
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100225 help
226 This enables support for ARM Ltd RealView boards.
227
228config ARCH_VERSATILE
229 bool "ARM Ltd. Versatile family"
230 select ARM_AMBA
231 select ARM_VIC
David Brownell9483a572008-07-23 21:26:48 -0700232 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100233 select ICST307
Kevin Hilmanb49c87c2007-03-08 20:25:13 +0100234 select GENERIC_TIME
Kevin Hilman89df1272007-03-08 20:30:38 +0100235 select GENERIC_CLOCKEVENTS
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100236 help
237 This enables support for ARM Ltd Versatile board.
238
Andrew Victor8fc5ffa2006-06-29 16:06:33 +0100239config ARCH_AT91
240 bool "Atmel AT91"
David Brownell0a938b92007-03-05 00:30:18 -0800241 select GENERIC_GPIO
David Brownell93686ae2008-07-28 15:46:22 -0700242 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100243 help
Andrew Victor2b3b3512008-01-24 15:10:39 +0100244 This enables support for systems based on the Atmel AT91RM9200,
245 AT91SAM9 and AT91CAP9 processors.
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100246
Linus Torvalds1da177e2005-04-16 15:20:36 -0700247config ARCH_CLPS7500
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100248 bool "Cirrus CL-PS7500FE"
Russell Kingc7508152008-10-26 10:55:14 +0000249 select CPU_ARM710
Linus Torvalds1da177e2005-04-16 15:20:36 -0700250 select TIMER_ACORN
Russell Kingf7e68bb2005-05-05 14:49:01 +0100251 select ISA
Russell Kinge4169882007-02-26 21:07:30 +0000252 select NO_IOPORT
Russell King07f841b2008-10-01 17:11:06 +0100253 select ARCH_SPARSEMEM_ENABLE
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000254 help
255 Support for the Cirrus Logic PS7500FE system-on-a-chip.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700256
257config ARCH_CLPS711X
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100258 bool "Cirrus Logic CLPS711x/EP721x-based"
Russell Kingc7508152008-10-26 10:55:14 +0000259 select CPU_ARM720T
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000260 help
261 Support for Cirrus Logic 711x/721x based boards.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700262
Linus Torvalds1da177e2005-04-16 15:20:36 -0700263config ARCH_EBSA110
264 bool "EBSA-110"
Russell Kingc7508152008-10-26 10:55:14 +0000265 select CPU_SA110
Russell Kingf7e68bb2005-05-05 14:49:01 +0100266 select ISA
Russell Kingc5eb2a22007-03-03 11:54:19 +0000267 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700268 help
269 This is an evaluation board for the StrongARM processor available
Martin Michlmayrf6c89652006-02-08 21:09:07 +0000270 from Digital. It has limited hardware on-board, including an
Linus Torvalds1da177e2005-04-16 15:20:36 -0700271 Ethernet interface, two PCMCIA sockets, two serial ports and a
272 parallel port.
273
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000274config ARCH_EP93XX
275 bool "EP93xx-based"
Russell Kingc7508152008-10-26 10:55:14 +0000276 select CPU_ARM920T
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000277 select ARM_AMBA
278 select ARM_VIC
Herbert Valerio Riedel4e9f9fd2007-11-26 18:41:02 +0100279 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700280 select HAVE_CLK
Michael Buesch7444a722008-07-25 01:46:11 -0700281 select ARCH_REQUIRE_GPIOLIB
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000282 help
283 This enables support for the Cirrus EP93xx series of CPUs.
284
Linus Torvalds1da177e2005-04-16 15:20:36 -0700285config ARCH_FOOTBRIDGE
286 bool "FootBridge"
Russell Kingc7508152008-10-26 10:55:14 +0000287 select CPU_SA110
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288 select FOOTBRIDGE
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000289 help
290 Support for systems based on the DC21285 companion chip
291 ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700292
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100293config ARCH_NETX
294 bool "Hilscher NetX based"
Russell Kingc7508152008-10-26 10:55:14 +0000295 select CPU_ARM926T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100296 select ARM_VIC
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000297 help
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100298 This enables support for systems based on the Hilscher NetX Soc
299
300config ARCH_H720X
301 bool "Hynix HMS720x-based"
Russell Kingc7508152008-10-26 10:55:14 +0000302 select CPU_ARM720T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100303 select ISA_DMA_API
304 help
305 This enables support for systems based on the Hynix HMS720x
306
307config ARCH_IMX
308 bool "IMX"
Russell Kingc7508152008-10-26 10:55:14 +0000309 select CPU_ARM920T
Pavel Pisab3e6a502007-05-12 14:31:17 +0100310 select GENERIC_GPIO
Pavel Pisa89bba432007-05-13 17:37:33 +0100311 select GENERIC_TIME
312 select GENERIC_CLOCKEVENTS
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100313 help
314 Support for Motorola's i.MX family of processors (MX1, MXL).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700315
Russell King3b938be2007-05-12 11:25:44 +0100316config ARCH_IOP13XX
317 bool "IOP13xx-based"
318 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000319 select CPU_XSC3
Russell King3b938be2007-05-12 11:25:44 +0100320 select PLAT_IOP
321 select PCI
322 select ARCH_SUPPORTS_MSI
Lennert Buytenhek8d5796d2008-08-25 21:03:32 +0100323 select VMSPLIT_1G
Russell King3b938be2007-05-12 11:25:44 +0100324 help
325 Support for Intel's IOP13XX (XScale) family of processors.
326
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100327config ARCH_IOP32X
328 bool "IOP32x-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100329 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000330 select CPU_XSCALE
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100331 select PLAT_IOP
Russell Kingf7e68bb2005-05-05 14:49:01 +0100332 select PCI
Arnaud Patard63f385c2008-07-08 23:07:48 +0100333 select GENERIC_GPIO
Russell Kingbb2b1802008-07-26 15:36:03 +0100334 select ARCH_REQUIRE_GPIOLIB
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000335 help
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100336 Support for Intel's 80219 and IOP32X (XScale) family of
337 processors.
338
339config ARCH_IOP33X
340 bool "IOP33x-based"
341 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000342 select CPU_XSCALE
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100343 select PLAT_IOP
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100344 select PCI
Arnaud Patard63f385c2008-07-08 23:07:48 +0100345 select GENERIC_GPIO
Russell Kingbb2b1802008-07-26 15:36:03 +0100346 select ARCH_REQUIRE_GPIOLIB
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100347 help
348 Support for Intel's IOP33X (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700349
Russell King3b938be2007-05-12 11:25:44 +0100350config ARCH_IXP23XX
351 bool "IXP23XX-based"
Dan Williams588ef762007-02-13 17:12:04 +0100352 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000353 select CPU_XSC3
Russell King3b938be2007-05-12 11:25:44 +0100354 select PCI
Dan Williams285f5fa2006-12-07 02:59:39 +0100355 help
Russell King3b938be2007-05-12 11:25:44 +0100356 Support for Intel's IXP23xx (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700357
358config ARCH_IXP2000
359 bool "IXP2400/2800-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100360 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000361 select CPU_XSCALE
Russell Kingf7e68bb2005-05-05 14:49:01 +0100362 select PCI
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000363 help
364 Support for Intel's IXP2400/2800 (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700365
Russell King3b938be2007-05-12 11:25:44 +0100366config ARCH_IXP4XX
367 bool "IXP4xx-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100368 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000369 select CPU_XSCALE
Milan Svoboda8858e9a2007-05-14 07:50:42 +0100370 select GENERIC_GPIO
Russell King3b938be2007-05-12 11:25:44 +0100371 select GENERIC_TIME
372 select GENERIC_CLOCKEVENTS
Russell King485bdde2008-10-17 14:00:43 +0100373 select DMABOUNCE if PCI
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100374 help
Russell King3b938be2007-05-12 11:25:44 +0100375 Support for Intel's IXP4XX (XScale) family of processors.
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100376
Linus Torvalds1da177e2005-04-16 15:20:36 -0700377config ARCH_L7200
378 bool "LinkUp-L7200"
Russell Kingc7508152008-10-26 10:55:14 +0000379 select CPU_ARM720T
Linus Torvalds1da177e2005-04-16 15:20:36 -0700380 select FIQ
381 help
382 Say Y here if you intend to run this kernel on a LinkUp Systems
383 L7200 Software Development Board which uses an ARM720T processor.
384 Information on this board can be obtained at:
385
386 <http://www.linkupsys.com/>
387
388 If you have any questions or comments about the Linux kernel port
389 to this board, send e-mail to <sjhill@cotw.com>.
390
Saeed Bishara651c74c2008-06-22 22:45:06 +0200391config ARCH_KIRKWOOD
392 bool "Marvell Kirkwood"
Russell Kingc7508152008-10-26 10:55:14 +0000393 select CPU_FEROCEON
Saeed Bishara651c74c2008-06-22 22:45:06 +0200394 select PCI
395 select GENERIC_TIME
396 select GENERIC_CLOCKEVENTS
397 select PLAT_ORION
398 help
399 Support for the following Marvell Kirkwood series SoCs:
400 88F6180, 88F6192 and 88F6281.
401
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100402config ARCH_KS8695
403 bool "Micrel/Kendin KS8695"
Russell Kingc7508152008-10-26 10:55:14 +0000404 select CPU_ARM922T
Andrew Victor8a87a992007-05-14 14:30:15 +0100405 select GENERIC_GPIO
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100406 help
407 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
408 System-on-Chip devices.
409
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100410config ARCH_NS9XXX
411 bool "NetSilicon NS9xxx"
Russell Kingc7508152008-10-26 10:55:14 +0000412 select CPU_ARM926T
Uwe Kleine-König689f2a02007-09-30 20:35:09 +0100413 select GENERIC_GPIO
Uwe Kleine-Königcef59752007-09-30 20:35:48 +0100414 select GENERIC_TIME
Uwe Kleine-Königc0bb87f2007-09-30 20:36:00 +0100415 select GENERIC_CLOCKEVENTS
David Brownell9483a572008-07-23 21:26:48 -0700416 select HAVE_CLK
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100417 help
418 Say Y here if you intend to run this kernel on a NetSilicon NS9xxx
419 System.
420
421 <http://www.digi.com/products/microprocessors/index.jsp>
422
Lennert Buytenhek777f9be2008-06-22 22:45:02 +0200423config ARCH_LOKI
424 bool "Marvell Loki (88RC8480)"
Russell Kingc7508152008-10-26 10:55:14 +0000425 select CPU_FEROCEON
Lennert Buytenhek777f9be2008-06-22 22:45:02 +0200426 select GENERIC_TIME
427 select GENERIC_CLOCKEVENTS
428 select PLAT_ORION
429 help
430 Support for the Marvell Loki (88RC8480) SoC.
431
Stanislav Samsonov794d15b2008-06-22 22:45:10 +0200432config ARCH_MV78XX0
433 bool "Marvell MV78xx0"
Russell Kingc7508152008-10-26 10:55:14 +0000434 select CPU_FEROCEON
Stanislav Samsonov794d15b2008-06-22 22:45:10 +0200435 select PCI
436 select GENERIC_TIME
437 select GENERIC_CLOCKEVENTS
438 select PLAT_ORION
439 help
440 Support for the following Marvell MV78xx0 series SoCs:
441 MV781x0, MV782x0.
442
Quinn Jensen52c543f2007-07-09 22:06:53 +0100443config ARCH_MXC
444 bool "Freescale MXC/iMX-based"
Juergen Beisertd0f349f2008-07-05 10:02:50 +0200445 select GENERIC_TIME
446 select GENERIC_CLOCKEVENTS
Quinn Jensen52c543f2007-07-09 22:06:53 +0100447 select ARCH_MTD_XIP
Juergen Beisert07bd1a62008-07-05 10:02:49 +0200448 select GENERIC_GPIO
Russell Kingbb2b1802008-07-26 15:36:03 +0100449 select ARCH_REQUIRE_GPIOLIB
Quinn Jensen52c543f2007-07-09 22:06:53 +0100450 help
451 Support for Freescale MXC/iMX-based family of processors
452
Lennert Buytenhek9dd0b192008-03-27 14:51:41 -0400453config ARCH_ORION5X
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400454 bool "Marvell Orion"
455 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000456 select CPU_FEROCEON
Tzachi Perelstein038ee082007-10-23 15:14:42 -0400457 select PCI
Tzachi Perelstein01af72e2007-10-23 15:14:42 -0400458 select GENERIC_GPIO
Tzachi Perelstein51cbff12007-10-23 15:14:42 -0400459 select GENERIC_TIME
460 select GENERIC_CLOCKEVENTS
Lennert Buytenhek69b02f62008-03-27 14:51:39 -0400461 select PLAT_ORION
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400462 help
Lennert Buytenhek9dd0b192008-03-27 14:51:41 -0400463 Support for the following Marvell Orion 5x series SoCs:
Lennert Buytenhekd2b2a6b2008-05-31 08:30:40 +0200464 Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
Lennert Buytenhekd323ade2008-08-29 06:55:06 +0200465 Orion-2 (5281), Orion-1-90 (6183).
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400466
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100467config ARCH_PNX4008
468 bool "Philips Nexperia PNX4008 Mobile"
Russell Kingc7508152008-10-26 10:55:14 +0000469 select CPU_ARM926T
David Brownell9483a572008-07-23 21:26:48 -0700470 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100471 help
472 This enables support for Philips PNX4008 mobile platform.
473
Linus Torvalds1da177e2005-04-16 15:20:36 -0700474config ARCH_PXA
eric miao2c8086a2007-09-11 19:13:17 -0700475 bool "PXA2xx/PXA3xx-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100476 depends on MMU
Al Viro034d2f52005-12-19 16:27:59 -0500477 select ARCH_MTD_XIP
David Brownell0a938b92007-03-05 00:30:18 -0800478 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700479 select HAVE_CLK
Michael Buesch7444a722008-07-25 01:46:11 -0700480 select ARCH_REQUIRE_GPIOLIB
Nicolas Pitre45cf5ee2007-02-05 22:37:07 +0100481 select GENERIC_TIME
Eric Miao981d0f32007-07-24 01:22:43 +0100482 select GENERIC_CLOCKEVENTS
Russell Kinga88264c2007-11-12 22:45:16 +0000483 select TICK_ONESHOT
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000484 help
eric miao2c8086a2007-09-11 19:13:17 -0700485 Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700486
487config ARCH_RPC
488 bool "RiscPC"
489 select ARCH_ACORN
490 select FIQ
491 select TIMER_ACORN
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100492 select ARCH_MAY_HAVE_PC_FDC
Ben Dooks341eb782008-07-01 14:16:49 +0100493 select HAVE_PATA_PLATFORM
Russell King065909b2006-01-04 15:44:16 +0000494 select ISA_DMA_API
Al Viro5ea81762007-02-11 15:41:31 +0000495 select NO_IOPORT
Russell King07f841b2008-10-01 17:11:06 +0100496 select ARCH_SPARSEMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700497 help
498 On the Acorn Risc-PC, Linux can support the internal IDE disk and
499 CD-ROM interface, serial and parallel port, and the floppy drive.
500
501config ARCH_SA1100
502 bool "SA1100-based"
Russell Kingc7508152008-10-26 10:55:14 +0000503 select CPU_SA1100
Russell Kingf7e68bb2005-05-05 14:49:01 +0100504 select ISA
Russell King05944d72006-11-30 20:43:51 +0000505 select ARCH_SPARSEMEM_ENABLE
Al Viro034d2f52005-12-19 16:27:59 -0500506 select ARCH_MTD_XIP
David Brownell0a938b92007-03-05 00:30:18 -0800507 select GENERIC_GPIO
Russell Kingd142b6e2007-11-12 21:55:12 +0000508 select GENERIC_TIME
Russell King3e238be2008-04-14 23:03:10 +0100509 select GENERIC_CLOCKEVENTS
David Brownell9483a572008-07-23 21:26:48 -0700510 select HAVE_CLK
Russell King3e238be2008-04-14 23:03:10 +0100511 select TICK_ONESHOT
Michael Buesch7444a722008-07-25 01:46:11 -0700512 select ARCH_REQUIRE_GPIOLIB
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000513 help
514 Support for StrongARM 11x0 based boards.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700515
516config ARCH_S3C2410
Ben Dookse4d06e32007-02-16 12:12:31 +0100517 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
David Brownell0a938b92007-03-05 00:30:18 -0800518 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700519 select HAVE_CLK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700520 help
521 Samsung S3C2410X CPU based systems, such as the Simtec Electronics
522 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
Martin Michlmayrf6c89652006-02-08 21:09:07 +0000523 the Samsung SMDK2410 development board (and derivatives).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700524
525config ARCH_SHARK
526 bool "Shark"
Russell Kingc7508152008-10-26 10:55:14 +0000527 select CPU_SA110
Russell Kingf7e68bb2005-05-05 14:49:01 +0100528 select ISA
529 select ISA_DMA
Nicolas Pitre3bca1032008-10-07 20:14:55 +0100530 select ZONE_DMA
Russell Kingf7e68bb2005-05-05 14:49:01 +0100531 select PCI
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000532 help
533 Support for the StrongARM based Digital DNARD machine, also known
534 as "Shark" (<http://www.shark-linux.de/shark.html>).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700535
536config ARCH_LH7A40X
537 bool "Sharp LH7A40X"
Russell Kingc7508152008-10-26 10:55:14 +0000538 select CPU_ARM922T
Russell King4ba3f7c2008-10-01 21:38:23 +0100539 select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM
540 select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700541 help
542 Say Y here for systems based on one of the Sharp LH7A40X
543 System on a Chip processors. These CPUs include an ARM922T
544 core with a wide array of integrated devices for
545 hand-held and low-power applications.
546
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100547config ARCH_DAVINCI
548 bool "TI DaVinci"
Russell Kingc7508152008-10-26 10:55:14 +0000549 select CPU_ARM926T
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100550 select GENERIC_TIME
551 select GENERIC_CLOCKEVENTS
Vladimir Barinov3d9edf02007-07-10 13:03:43 +0100552 select GENERIC_GPIO
David Brownelldce11152008-09-07 23:41:04 -0700553 select ARCH_REQUIRE_GPIOLIB
David Brownell9483a572008-07-23 21:26:48 -0700554 select HAVE_CLK
Nicolas Pitre3bca1032008-10-07 20:14:55 +0100555 select ZONE_DMA
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100556 help
557 Support for TI's DaVinci platform.
558
Russell King3b938be2007-05-12 11:25:44 +0100559config ARCH_OMAP
560 bool "TI OMAP"
561 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700562 select HAVE_CLK
Michael Buesch7444a722008-07-25 01:46:11 -0700563 select ARCH_REQUIRE_GPIOLIB
Russell King3b938be2007-05-12 11:25:44 +0100564 select GENERIC_TIME
Kevin Hilman06cad092007-10-18 23:04:43 -0700565 select GENERIC_CLOCKEVENTS
Russell King3b938be2007-05-12 11:25:44 +0100566 help
567 Support for TI's OMAP platform (OMAP1 and OMAP2).
568
Brian Swetland1637de02008-09-09 07:13:33 -0700569config ARCH_MSM
570 bool "Qualcomm MSM"
Russell Kingc7508152008-10-26 10:55:14 +0000571 select CPU_V6
Brian Swetland30421022007-11-26 04:11:43 -0800572 select GENERIC_TIME
573 select GENERIC_CLOCKEVENTS
574 help
Brian Swetland1637de02008-09-09 07:13:33 -0700575 Support for Qualcomm MSM7K based systems. This runs on the ARM11
576 apps processor of the MSM7K and depends on a shared memory
Brian Swetland30421022007-11-26 04:11:43 -0800577 interface to the ARM9 modem processor which runs the baseband stack
578 and controls some vital subsystems (clock and power control, etc).
Brian Swetland30421022007-11-26 04:11:43 -0800579
Linus Torvalds1da177e2005-04-16 15:20:36 -0700580endchoice
581
582source "arch/arm/mach-clps711x/Kconfig"
583
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000584source "arch/arm/mach-ep93xx/Kconfig"
585
Linus Torvalds1da177e2005-04-16 15:20:36 -0700586source "arch/arm/mach-footbridge/Kconfig"
587
588source "arch/arm/mach-integrator/Kconfig"
589
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100590source "arch/arm/mach-iop32x/Kconfig"
591
592source "arch/arm/mach-iop33x/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700593
Dan Williams285f5fa2006-12-07 02:59:39 +0100594source "arch/arm/mach-iop13xx/Kconfig"
595
Linus Torvalds1da177e2005-04-16 15:20:36 -0700596source "arch/arm/mach-ixp4xx/Kconfig"
597
598source "arch/arm/mach-ixp2000/Kconfig"
599
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100600source "arch/arm/mach-ixp23xx/Kconfig"
601
Lennert Buytenhek777f9be2008-06-22 22:45:02 +0200602source "arch/arm/mach-loki/Kconfig"
603
Stanislav Samsonov794d15b2008-06-22 22:45:10 +0200604source "arch/arm/mach-mv78xx0/Kconfig"
605
Linus Torvalds1da177e2005-04-16 15:20:36 -0700606source "arch/arm/mach-pxa/Kconfig"
607
608source "arch/arm/mach-sa1100/Kconfig"
609
Tony Lindgrend48af152005-07-10 19:58:17 +0100610source "arch/arm/plat-omap/Kconfig"
611
612source "arch/arm/mach-omap1/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700613
Tony Lindgren1dbae812005-11-10 14:26:51 +0000614source "arch/arm/mach-omap2/Kconfig"
615
Lennert Buytenhek9dd0b192008-03-27 14:51:41 -0400616source "arch/arm/mach-orion5x/Kconfig"
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400617
Saeed Bishara651c74c2008-06-22 22:45:06 +0200618source "arch/arm/mach-kirkwood/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700619
Ben Dooksa21765a2007-02-11 18:31:01 +0100620source "arch/arm/plat-s3c24xx/Kconfig"
Ben Dooksd58153d2007-07-22 16:07:09 +0100621source "arch/arm/plat-s3c/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100622
623if ARCH_S3C2410
624source "arch/arm/mach-s3c2400/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700625source "arch/arm/mach-s3c2410/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100626source "arch/arm/mach-s3c2412/Kconfig"
627source "arch/arm/mach-s3c2440/Kconfig"
628source "arch/arm/mach-s3c2442/Kconfig"
Ben Dookse4d06e32007-02-16 12:12:31 +0100629source "arch/arm/mach-s3c2443/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100630endif
Linus Torvalds1da177e2005-04-16 15:20:36 -0700631
632source "arch/arm/mach-lh7a40x/Kconfig"
633
634source "arch/arm/mach-imx/Kconfig"
635
636source "arch/arm/mach-h720x/Kconfig"
637
638source "arch/arm/mach-versatile/Kconfig"
639
Bellido Nicolas038c5b62005-06-20 18:51:05 +0100640source "arch/arm/mach-aaec2000/Kconfig"
641
Catalin Marinas8ad68bb2005-10-31 14:25:02 +0000642source "arch/arm/mach-realview/Kconfig"
643
Andrew Victor9d041262007-02-05 11:42:07 +0100644source "arch/arm/mach-at91/Kconfig"
SAN People73a59c12006-01-09 17:05:41 +0000645
Quinn Jensen52c543f2007-07-09 22:06:53 +0100646source "arch/arm/plat-mxc/Kconfig"
647
Sascha Hauerbb6d8c82006-06-19 15:27:53 +0100648source "arch/arm/mach-netx/Kconfig"
649
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100650source "arch/arm/mach-ns9xxx/Kconfig"
651
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100652source "arch/arm/mach-davinci/Kconfig"
653
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100654source "arch/arm/mach-ks8695/Kconfig"
655
Brian Swetland9e73c842007-11-26 04:12:13 -0800656source "arch/arm/mach-msm/Kconfig"
657
Linus Torvalds1da177e2005-04-16 15:20:36 -0700658# Definitions to make life easier
659config ARCH_ACORN
660 bool
661
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100662config PLAT_IOP
663 bool
664
Lennert Buytenhek69b02f62008-03-27 14:51:39 -0400665config PLAT_ORION
666 bool
667
Linus Torvalds1da177e2005-04-16 15:20:36 -0700668source arch/arm/mm/Kconfig
669
Lennert Buytenhekafe4b252006-12-03 18:51:14 +0100670config IWMMXT
671 bool "Enable iWMMXt support"
Robert P. J. Day6340aa62007-02-17 19:05:24 +0100672 depends on CPU_XSCALE || CPU_XSC3
eric miao2c8086a2007-09-11 19:13:17 -0700673 default y if PXA27x || PXA3xx
Lennert Buytenhekafe4b252006-12-03 18:51:14 +0100674 help
675 Enable support for iWMMXt context switching at run time if
676 running on a CPU that supports it.
677
Linus Torvalds1da177e2005-04-16 15:20:36 -0700678# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
679config XSCALE_PMU
680 bool
681 depends on CPU_XSCALE && !XSCALE_PMU_TIMER
682 default y
683
Hyok S. Choi3b93e7b2006-06-22 11:48:56 +0100684if !MMU
685source "arch/arm/Kconfig-nommu"
686endif
687
Linus Torvalds1da177e2005-04-16 15:20:36 -0700688endmenu
689
690source "arch/arm/common/Kconfig"
691
692config FORCE_MAX_ZONEORDER
693 int
694 depends on SA1111
695 default "9"
696
697menu "Bus support"
698
699config ARM_AMBA
700 bool
701
702config ISA
703 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700704 help
705 Find out whether you have ISA slots on your motherboard. ISA is the
706 name of a bus system, i.e. the way the CPU talks to the other stuff
707 inside your box. Other bus systems are PCI, EISA, MicroChannel
708 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
709 newer boards don't support it. If you have ISA, say Y, otherwise N.
710
Russell King065909b2006-01-04 15:44:16 +0000711# Select ISA DMA controller support
Linus Torvalds1da177e2005-04-16 15:20:36 -0700712config ISA_DMA
713 bool
Russell King065909b2006-01-04 15:44:16 +0000714 select ISA_DMA_API
Linus Torvalds1da177e2005-04-16 15:20:36 -0700715
Russell King065909b2006-01-04 15:44:16 +0000716# Select ISA DMA interface
Al Viro5cae8412005-05-04 05:39:22 +0100717config ISA_DMA_API
718 bool
Al Viro5cae8412005-05-04 05:39:22 +0100719
Linus Torvalds1da177e2005-04-16 15:20:36 -0700720config PCI
Mike Rapoporta0113a92007-11-25 08:55:34 +0100721 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700722 help
723 Find out whether you have a PCI motherboard. PCI is the name of a
724 bus system, i.e. the way the CPU talks to the other stuff inside
725 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
726 VESA. If you have PCI, say Y, otherwise N.
727
Matthew Wilcox36e23592007-07-10 10:54:40 -0600728config PCI_SYSCALL
729 def_bool PCI
730
Linus Torvalds1da177e2005-04-16 15:20:36 -0700731# Select the host bridge type
732config PCI_HOST_VIA82C505
733 bool
734 depends on PCI && ARCH_SHARK
735 default y
736
Mike Rapoporta0113a92007-11-25 08:55:34 +0100737config PCI_HOST_ITE8152
738 bool
739 depends on PCI && MACH_ARMCORE
740 default y
741 select DMABOUNCE
742
Linus Torvalds1da177e2005-04-16 15:20:36 -0700743source "drivers/pci/Kconfig"
744
745source "drivers/pcmcia/Kconfig"
746
747endmenu
748
749menu "Kernel Features"
750
Kevin Hilman0567a0c2007-03-13 20:29:24 +0100751source "kernel/time/Kconfig"
752
Linus Torvalds1da177e2005-04-16 15:20:36 -0700753config SMP
754 bool "Symmetric Multi-Processing (EXPERIMENTAL)"
Bahadir Balban78fdcb42008-04-18 22:43:14 +0100755 depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP)
Jens Axboef6dd9fa2008-06-10 20:48:30 +0200756 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700757 help
758 This enables support for systems with more than one CPU. If you have
759 a system with only one CPU, like most personal computers, say N. If
760 you have a system with more than one CPU, say Y.
761
762 If you say N here, the kernel will run on single and multiprocessor
763 machines, but will use only one CPU of a multiprocessor machine. If
764 you say Y here, the kernel will run on many, but not all, single
765 processor machines. On a single processor machine, the kernel will
766 run faster if you say N here.
767
Adrian Bunk03502fa2008-02-03 15:50:21 +0200768 See also <file:Documentation/i386/IO-APIC.txt>,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700769 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
770 <http://www.linuxdoc.org/docs.html#howto>.
771
772 If you don't know what to do here, say N.
773
Lennert Buytenhek8d5796d2008-08-25 21:03:32 +0100774choice
775 prompt "Memory split"
776 default VMSPLIT_3G
777 help
778 Select the desired split between kernel and user memory.
779
780 If you are not absolutely sure what you are doing, leave this
781 option alone!
782
783 config VMSPLIT_3G
784 bool "3G/1G user/kernel split"
785 config VMSPLIT_2G
786 bool "2G/2G user/kernel split"
787 config VMSPLIT_1G
788 bool "1G/3G user/kernel split"
789endchoice
790
791config PAGE_OFFSET
792 hex
793 default 0x40000000 if VMSPLIT_1G
794 default 0x80000000 if VMSPLIT_2G
795 default 0xC0000000
796
Linus Torvalds1da177e2005-04-16 15:20:36 -0700797config NR_CPUS
798 int "Maximum number of CPUs (2-32)"
799 range 2 32
800 depends on SMP
801 default "4"
802
Russell Kinga054a812005-11-02 22:24:33 +0000803config HOTPLUG_CPU
804 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
805 depends on SMP && HOTPLUG && EXPERIMENTAL
806 help
807 Say Y here to experiment with turning CPUs off and on. CPUs
808 can be controlled through /sys/devices/system/cpu.
809
Russell King37ee16a2005-11-08 19:08:05 +0000810config LOCAL_TIMERS
811 bool "Use local timer interrupts"
Bahadir Balban78fdcb42008-04-18 22:43:14 +0100812 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP)
Russell King37ee16a2005-11-08 19:08:05 +0000813 default y
814 help
815 Enable support for local timers on SMP platforms, rather then the
816 legacy IPI broadcast method. Local timers allows the system
817 accounting to be spread across the timer interval, preventing a
818 "thundering herd" at every timer tick.
819
Linus Torvalds1da177e2005-04-16 15:20:36 -0700820config PREEMPT
821 bool "Preemptible Kernel (EXPERIMENTAL)"
822 depends on EXPERIMENTAL
823 help
824 This option reduces the latency of the kernel when reacting to
825 real-time or interactive events by allowing a low priority process to
826 be preempted even if it is in kernel mode executing a system call.
827 This allows applications to run more reliably even when the system is
828 under load.
829
830 Say Y here if you are building a kernel for a desktop, embedded
831 or real-time system. Say N if you are unsure.
832
Russell Kingf8065812006-03-02 22:41:59 +0000833config HZ
834 int
835 default 128 if ARCH_L7200
836 default 200 if ARCH_EBSA110 || ARCH_S3C2410
Russell Kingbfe65702006-03-04 11:01:53 +0000837 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
David Brownell5248c652007-11-12 17:59:10 +0100838 default AT91_TIMER_HZ if ARCH_AT91
Russell Kingf8065812006-03-02 22:41:59 +0000839 default 100
840
Nicolas Pitre704bdda02006-01-14 16:33:50 +0000841config AEABI
842 bool "Use the ARM EABI to compile the kernel"
843 help
844 This option allows for the kernel to be compiled using the latest
845 ARM ABI (aka EABI). This is only useful if you are using a user
846 space environment that is also compiled with EABI.
847
848 Since there are major incompatibilities between the legacy ABI and
849 EABI, especially with regard to structure member alignment, this
850 option also changes the kernel syscall calling convention to
851 disambiguate both ABIs and allow for backward compatibility support
852 (selected with CONFIG_OABI_COMPAT).
853
854 To use this you need GCC version 4.0.0 or later.
855
Nicolas Pitre6c90c872006-01-14 16:37:15 +0000856config OABI_COMPAT
Russell Kinga73a3ff2006-02-08 21:09:55 +0000857 bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
Nicolas Pitre61c484d2006-02-08 21:09:08 +0000858 depends on AEABI && EXPERIMENTAL
Nicolas Pitre6c90c872006-01-14 16:37:15 +0000859 default y
860 help
861 This option preserves the old syscall interface along with the
862 new (ARM EABI) one. It also provides a compatibility layer to
863 intercept syscalls that have structure arguments which layout
864 in memory differs between the legacy ABI and the new ARM EABI
865 (only for non "thumb" binaries). This option adds a tiny
866 overhead to all syscalls and produces a slightly larger kernel.
867 If you know you'll be using only pure EABI user space then you
868 can say N here. If this option is not selected and you attempt
869 to execute a legacy ABI binary then the result will be
870 UNPREDICTABLE (in fact it can be predicted that it won't work
871 at all). If in doubt say Y.
872
Mel Gormane80d6a22008-08-14 11:10:14 +0100873config ARCH_FLATMEM_HAS_HOLES
874 bool
875 default y
876 depends on FLATMEM
877
Russell King07a2f732008-10-01 21:39:58 +0100878# Discontigmem is deprecated
Dave Hansen3f22ab22005-06-23 00:07:43 -0700879config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700880 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700881
Russell King05944d72006-11-30 20:43:51 +0000882config ARCH_SPARSEMEM_ENABLE
883 bool
884
Russell King07a2f732008-10-01 21:39:58 +0100885config ARCH_SPARSEMEM_DEFAULT
886 def_bool ARCH_SPARSEMEM_ENABLE
887
Russell King05944d72006-11-30 20:43:51 +0000888config ARCH_SELECT_MEMORY_MODEL
Russell King07a2f732008-10-01 21:39:58 +0100889 def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE
Russell King05944d72006-11-30 20:43:51 +0000890
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700891config NODES_SHIFT
892 int
893 default "4" if ARCH_LH7A40X
894 default "2"
895 depends on NEED_MULTIPLE_NODES
896
Dave Hansen3f22ab22005-06-23 00:07:43 -0700897source "mm/Kconfig"
898
Linus Torvalds1da177e2005-04-16 15:20:36 -0700899config LEDS
900 bool "Timer and CPU usage LEDs"
Adrian Bunke055d5bf2008-04-22 01:43:27 +0100901 depends on ARCH_CDB89712 || ARCH_EBSA110 || \
Linus Torvalds1da177e2005-04-16 15:20:36 -0700902 ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \
903 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
904 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
SAN People73a59c12006-01-09 17:05:41 +0000905 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
Jürgen Schindele25329672008-09-16 21:36:30 +0100906 ARCH_AT91 || ARCH_DAVINCI || \
Ronen Shitrit817eb212007-10-17 14:51:34 -0400907 ARCH_KS8695 || MACH_RD88F5182
Linus Torvalds1da177e2005-04-16 15:20:36 -0700908 help
909 If you say Y here, the LEDs on your machine will be used
910 to provide useful information about your current system status.
911
912 If you are compiling a kernel for a NetWinder or EBSA-285, you will
913 be able to select which LEDs are active using the options below. If
914 you are compiling a kernel for the EBSA-110 or the LART however, the
915 red LED will simply flash regularly to indicate that the system is
916 still functional. It is safe to say Y here if you have a CATS
917 system, but the driver will do nothing.
918
919config LEDS_TIMER
920 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
David Brownelleebdf7d72007-04-02 12:48:10 -0700921 OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
922 || MACH_OMAP_PERSEUS2
Linus Torvalds1da177e2005-04-16 15:20:36 -0700923 depends on LEDS
Kevin Hilman0567a0c2007-03-13 20:29:24 +0100924 depends on !GENERIC_CLOCKEVENTS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700925 default y if ARCH_EBSA110
926 help
927 If you say Y here, one of the system LEDs (the green one on the
928 NetWinder, the amber one on the EBSA285, or the red one on the LART)
929 will flash regularly to indicate that the system is still
930 operational. This is mainly useful to kernel hackers who are
931 debugging unstable kernels.
932
933 The LART uses the same LED for both Timer LED and CPU usage LED
934 functions. You may choose to use both, but the Timer LED function
935 will overrule the CPU usage LED.
936
937config LEDS_CPU
938 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
David Brownelleebdf7d72007-04-02 12:48:10 -0700939 !ARCH_OMAP) \
940 || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
941 || MACH_OMAP_PERSEUS2
Linus Torvalds1da177e2005-04-16 15:20:36 -0700942 depends on LEDS
943 help
944 If you say Y here, the red LED will be used to give a good real
945 time indication of CPU usage, by lighting whenever the idle task
946 is not currently executing.
947
948 The LART uses the same LED for both Timer LED and CPU usage LED
949 functions. You may choose to use both, but the Timer LED function
950 will overrule the CPU usage LED.
951
952config ALIGNMENT_TRAP
953 bool
Hyok S. Choif12d0d72006-09-26 17:36:37 +0900954 depends on CPU_CP15_MMU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700955 default y if !ARCH_EBSA110
956 help
Matt LaPlante84eb8d02006-10-03 22:53:09 +0200957 ARM processors cannot fetch/store information which is not
Linus Torvalds1da177e2005-04-16 15:20:36 -0700958 naturally aligned on the bus, i.e., a 4 byte fetch must start at an
959 address divisible by 4. On 32-bit ARM processors, these non-aligned
960 fetch/store instructions will be emulated in software if you say
961 here, which has a severe performance impact. This is necessary for
962 correct operation of some network protocols. With an IP-only
963 configuration it is safe to say N, otherwise say Y.
964
965endmenu
966
967menu "Boot options"
968
969# Compressed boot loader in ROM. Yes, we really want to ask about
970# TEXT and BSS so we preserve their values in the config files.
971config ZBOOT_ROM_TEXT
972 hex "Compressed ROM boot loader base address"
973 default "0"
974 help
975 The physical address at which the ROM-able zImage is to be
976 placed in the target. Platforms which normally make use of
977 ROM-able zImage formats normally set this to a suitable
978 value in their defconfig file.
979
980 If ZBOOT_ROM is not enabled, this has no effect.
981
982config ZBOOT_ROM_BSS
983 hex "Compressed ROM boot loader BSS address"
984 default "0"
985 help
Dan Fandrichf8c440b2006-09-20 23:28:51 +0100986 The base address of an area of read/write memory in the target
987 for the ROM-able zImage which must be available while the
988 decompressor is running. It must be large enough to hold the
989 entire decompressed kernel plus an additional 128 KiB.
990 Platforms which normally make use of ROM-able zImage formats
991 normally set this to a suitable value in their defconfig file.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700992
993 If ZBOOT_ROM is not enabled, this has no effect.
994
995config ZBOOT_ROM
996 bool "Compressed boot loader in ROM/flash"
997 depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
998 help
999 Say Y here if you intend to execute your compressed kernel image
1000 (zImage) directly from ROM or flash. If unsure, say N.
1001
1002config CMDLINE
1003 string "Default kernel command string"
1004 default ""
1005 help
1006 On some architectures (EBSA110 and CATS), there is currently no way
1007 for the boot loader to pass arguments to the kernel. For these
1008 architectures, you should supply some command-line options at build
1009 time by entering them here. As a minimum, you should specify the
1010 memory size and the root device (e.g., mem=64M root=/dev/nfs).
1011
1012config XIP_KERNEL
1013 bool "Kernel Execute-In-Place from ROM"
1014 depends on !ZBOOT_ROM
1015 help
1016 Execute-In-Place allows the kernel to run from non-volatile storage
1017 directly addressable by the CPU, such as NOR flash. This saves RAM
1018 space since the text section of the kernel is not loaded from flash
1019 to RAM. Read-write sections, such as the data section and stack,
1020 are still copied to RAM. The XIP kernel is not compressed since
1021 it has to run directly from flash, so it will take more space to
1022 store it. The flash address used to link the kernel object files,
1023 and for storing it, is configuration dependent. Therefore, if you
1024 say Y here, you must know the proper physical address where to
1025 store the kernel image depending on your own flash memory usage.
1026
1027 Also note that the make target becomes "make xipImage" rather than
1028 "make zImage" or "make Image". The final kernel binary to put in
1029 ROM memory will be arch/arm/boot/xipImage.
1030
1031 If unsure, say N.
1032
1033config XIP_PHYS_ADDR
1034 hex "XIP Kernel Physical Location"
1035 depends on XIP_KERNEL
1036 default "0x00080000"
1037 help
1038 This is the physical address in your flash memory the kernel will
1039 be linked for and stored to. This address is dependent on your
1040 own flash usage.
1041
Richard Purdiec587e4a2007-02-06 21:29:00 +01001042config KEXEC
1043 bool "Kexec system call (EXPERIMENTAL)"
1044 depends on EXPERIMENTAL
1045 help
1046 kexec is a system call that implements the ability to shutdown your
1047 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02001048 but it is independent of the system firmware. And like a reboot
Richard Purdiec587e4a2007-02-06 21:29:00 +01001049 you can start any kernel with it, not just Linux.
1050
1051 It is an ongoing process to be certain the hardware in a machine
1052 is properly shutdown, so do not be surprised if this code does not
1053 initially work for you. It may help to enable device hotplugging
1054 support.
1055
Richard Purdie4cd9d6f2008-01-02 00:56:46 +01001056config ATAGS_PROC
1057 bool "Export atags in procfs"
Uli Luckasb98d7292008-02-22 16:45:18 +01001058 depends on KEXEC
1059 default y
Richard Purdie4cd9d6f2008-01-02 00:56:46 +01001060 help
1061 Should the atags used to boot the kernel be exported in an "atags"
1062 file in procfs. Useful with kexec.
1063
Linus Torvalds1da177e2005-04-16 15:20:36 -07001064endmenu
1065
Russell Kingac9d7ef2008-08-18 17:26:00 +01001066menu "CPU Power Management"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001067
Russell Kingac9d7ef2008-08-18 17:26:00 +01001068if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX || ARCH_PXA)
Linus Torvalds1da177e2005-04-16 15:20:36 -07001069
1070source "drivers/cpufreq/Kconfig"
1071
1072config CPU_FREQ_SA1100
1073 bool
Vincent Sanders07c6d482005-06-09 21:59:22 +01001074 depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT)
Linus Torvalds1da177e2005-04-16 15:20:36 -07001075 default y
1076
1077config CPU_FREQ_SA1110
1078 bool
1079 depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3)
1080 default y
1081
1082config CPU_FREQ_INTEGRATOR
1083 tristate "CPUfreq driver for ARM Integrator CPUs"
1084 depends on ARCH_INTEGRATOR && CPU_FREQ
1085 default y
1086 help
1087 This enables the CPUfreq driver for ARM Integrator CPUs.
1088
1089 For details, take a look at <file:Documentation/cpu-freq>.
1090
1091 If in doubt, say Y.
1092
Pavel Pisa3c8cd0c2006-12-06 17:25:04 +01001093config CPU_FREQ_IMX
1094 tristate "CPUfreq driver for i.MX CPUs"
1095 depends on ARCH_IMX && CPU_FREQ
1096 default n
1097 help
1098 This enables the CPUfreq driver for i.MX CPUs.
1099
1100 If in doubt, say N.
1101
Russell King9e2697f2007-12-14 13:30:14 +00001102config CPU_FREQ_PXA
1103 bool
1104 depends on CPU_FREQ && ARCH_PXA && PXA25x
1105 default y
1106 select CPU_FREQ_DEFAULT_GOV_USERSPACE
1107
Linus Torvalds1da177e2005-04-16 15:20:36 -07001108endif
1109
Russell Kingac9d7ef2008-08-18 17:26:00 +01001110source "drivers/cpuidle/Kconfig"
1111
1112endmenu
1113
Linus Torvalds1da177e2005-04-16 15:20:36 -07001114menu "Floating point emulation"
1115
1116comment "At least one emulation must be selected"
1117
1118config FPE_NWFPE
1119 bool "NWFPE math emulation"
Nicolas Pitre8993a442006-01-14 16:36:50 +00001120 depends on !AEABI || OABI_COMPAT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001121 ---help---
1122 Say Y to include the NWFPE floating point emulator in the kernel.
1123 This is necessary to run most binaries. Linux does not currently
1124 support floating point hardware so you need to say Y here even if
1125 your machine has an FPA or floating point co-processor podule.
1126
1127 You may say N here if you are going to load the Acorn FPEmulator
1128 early in the bootup.
1129
1130config FPE_NWFPE_XP
1131 bool "Support extended precision"
Lennert Buytenhekbedf1422005-11-07 21:12:08 +00001132 depends on FPE_NWFPE
Linus Torvalds1da177e2005-04-16 15:20:36 -07001133 help
1134 Say Y to include 80-bit support in the kernel floating-point
1135 emulator. Otherwise, only 32 and 64-bit support is compiled in.
1136 Note that gcc does not generate 80-bit operations by default,
1137 so in most cases this option only enlarges the size of the
1138 floating point emulator without any good reason.
1139
1140 You almost surely want to say N here.
1141
1142config FPE_FASTFPE
1143 bool "FastFPE math emulation (EXPERIMENTAL)"
Nicolas Pitre8993a442006-01-14 16:36:50 +00001144 depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001145 ---help---
1146 Say Y here to include the FAST floating point emulator in the kernel.
1147 This is an experimental much faster emulator which now also has full
1148 precision for the mantissa. It does not support any exceptions.
1149 It is very simple, and approximately 3-6 times faster than NWFPE.
1150
1151 It should be sufficient for most programs. It may be not suitable
1152 for scientific calculations, but you have to check this for yourself.
1153 If you do not feel you need a faster FP emulation you should better
1154 choose NWFPE.
1155
1156config VFP
1157 bool "VFP-format floating point maths"
Russell Kingc00d4ff2008-01-28 13:21:30 +00001158 depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001159 help
1160 Say Y to include VFP support code in the kernel. This is needed
1161 if your hardware includes a VFP unit.
1162
1163 Please see <file:Documentation/arm/VFP/release-notes.txt> for
1164 release notes and additional status information.
1165
1166 Say N if your target does not have VFP hardware.
1167
Catalin Marinas25ebee02007-09-25 15:22:24 +01001168config VFPv3
1169 bool
1170 depends on VFP
1171 default y if CPU_V7
1172
Catalin Marinasb5872db2008-01-10 19:16:17 +01001173config NEON
1174 bool "Advanced SIMD (NEON) Extension support"
1175 depends on VFPv3 && CPU_V7
1176 help
1177 Say Y to include support code for NEON, the ARMv7 Advanced SIMD
1178 Extension.
1179
Linus Torvalds1da177e2005-04-16 15:20:36 -07001180endmenu
1181
1182menu "Userspace binary formats"
1183
1184source "fs/Kconfig.binfmt"
1185
1186config ARTHUR
1187 tristate "RISC OS personality"
Nicolas Pitre704bdda02006-01-14 16:33:50 +00001188 depends on !AEABI
Linus Torvalds1da177e2005-04-16 15:20:36 -07001189 help
1190 Say Y here to include the kernel code necessary if you want to run
1191 Acorn RISC OS/Arthur binaries under Linux. This code is still very
1192 experimental; if this sounds frightening, say N and sleep in peace.
1193 You can also say M here to compile this support as a module (which
1194 will be called arthur).
1195
1196endmenu
1197
1198menu "Power management options"
1199
Russell Kingeceab4a2005-11-15 11:31:41 +00001200source "kernel/power/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001201
Johannes Bergf4cb5702007-12-08 02:14:00 +01001202config ARCH_SUSPEND_POSSIBLE
1203 def_bool y
1204
Linus Torvalds1da177e2005-04-16 15:20:36 -07001205endmenu
1206
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001207source "net/Kconfig"
1208
Linus Torvalds1da177e2005-04-16 15:20:36 -07001209menu "Device Drivers"
1210
1211source "drivers/base/Kconfig"
1212
Pavel Machekc35bf4a2005-11-12 20:25:25 +00001213source "drivers/connector/Kconfig"
1214
Hyok S. Choif12d0d72006-09-26 17:36:37 +09001215if ALIGNMENT_TRAP || !CPU_CP15_MMU
Linus Torvalds1da177e2005-04-16 15:20:36 -07001216source "drivers/mtd/Kconfig"
1217endif
1218
1219source "drivers/parport/Kconfig"
1220
1221source "drivers/pnp/Kconfig"
1222
1223source "drivers/block/Kconfig"
1224
Russell King58273e52007-10-12 22:24:09 +01001225# misc before ide - BLK_DEV_SGIIOC4 depends on SGI_IOC4
1226
1227source "drivers/misc/Kconfig"
1228
Linus Torvalds1da177e2005-04-16 15:20:36 -07001229source "drivers/ide/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001230
1231source "drivers/scsi/Kconfig"
1232
Martin Michlmayreb370f02006-11-17 00:14:35 +01001233source "drivers/ata/Kconfig"
1234
Linus Torvalds1da177e2005-04-16 15:20:36 -07001235source "drivers/md/Kconfig"
1236
1237source "drivers/message/fusion/Kconfig"
1238
1239source "drivers/ieee1394/Kconfig"
1240
1241source "drivers/message/i2o/Kconfig"
1242
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001243source "drivers/net/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001244
1245source "drivers/isdn/Kconfig"
1246
1247# input before char - char/joystick depends on it. As does USB.
1248
1249source "drivers/input/Kconfig"
1250
1251source "drivers/char/Kconfig"
1252
1253source "drivers/i2c/Kconfig"
1254
David Brownell8ae12a02006-01-08 13:34:19 -08001255source "drivers/spi/Kconfig"
1256
David Brownella9c5fff2008-02-04 22:28:17 -08001257source "drivers/gpio/Kconfig"
1258
Alessandro Zummo04916c02006-03-10 22:30:01 +00001259source "drivers/w1/Kconfig"
1260
Russell King58273e52007-10-12 22:24:09 +01001261source "drivers/power/Kconfig"
1262
Jean Delvaread2f9312005-07-02 18:15:49 +02001263source "drivers/hwmon/Kconfig"
1264
Russell Kingac9d7ef2008-08-18 17:26:00 +01001265source "drivers/thermal/Kconfig"
1266
Russell King70dfa3f2007-11-07 14:13:35 +00001267source "drivers/watchdog/Kconfig"
1268
Russell King58273e52007-10-12 22:24:09 +01001269source "drivers/ssb/Kconfig"
1270
Linus Torvalds1da177e2005-04-16 15:20:36 -07001271#source "drivers/l3/Kconfig"
1272
Russell Kinga4e137a2005-08-18 10:06:59 +01001273source "drivers/mfd/Kconfig"
1274
Linus Torvalds1da177e2005-04-16 15:20:36 -07001275source "drivers/media/Kconfig"
1276
1277source "drivers/video/Kconfig"
1278
1279source "sound/Kconfig"
1280
Sascha Hauerc2dade52006-12-12 10:32:42 +01001281source "drivers/hid/Kconfig"
1282
Linus Torvalds1da177e2005-04-16 15:20:36 -07001283source "drivers/usb/Kconfig"
1284
Greg Kroah-Hartman2f86c3e2008-09-17 16:34:11 +01001285source "drivers/uwb/Kconfig"
1286
Linus Torvalds1da177e2005-04-16 15:20:36 -07001287source "drivers/mmc/Kconfig"
1288
Russell Kingac9d7ef2008-08-18 17:26:00 +01001289source "drivers/memstick/Kconfig"
1290
1291source "drivers/accessibility/Kconfig"
1292
Russell King58273e52007-10-12 22:24:09 +01001293source "drivers/leds/Kconfig"
1294
Alessandro Zummo12b824f2006-03-27 01:16:35 -08001295source "drivers/rtc/Kconfig"
1296
Dan Williams58168152007-01-02 11:10:43 -07001297source "drivers/dma/Kconfig"
1298
Dan Williamsabf07b12008-01-18 23:26:10 +01001299source "drivers/dca/Kconfig"
1300
Russell Kingac9d7ef2008-08-18 17:26:00 +01001301source "drivers/auxdisplay/Kconfig"
1302
Liam Girdwoodba7e4762008-04-30 17:13:42 +01001303source "drivers/regulator/Kconfig"
1304
Hans-Jürgen Koch2dc034a2008-02-19 21:07:19 +01001305source "drivers/uio/Kconfig"
1306
Linus Torvalds1da177e2005-04-16 15:20:36 -07001307endmenu
1308
1309source "fs/Kconfig"
1310
Linus Torvalds1da177e2005-04-16 15:20:36 -07001311source "arch/arm/Kconfig.debug"
1312
1313source "security/Kconfig"
1314
1315source "crypto/Kconfig"
1316
1317source "lib/Kconfig"