blob: b224216c11db4111757bca3603769b901342806f [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
Albin Tonnerree7db7b42010-01-08 14:42:43 -080021 select HAVE_KERNEL_GZIP
22 select HAVE_KERNEL_LZO
Linus Torvalds1da177e2005-04-16 15:20:36 -070023 help
24 The ARM series is a line of low-power-consumption RISC chip designs
Martin Michlmayrf6c89652006-02-08 21:09:07 +000025 licensed by ARM Ltd and targeted at embedded applications and
Linus Torvalds1da177e2005-04-16 15:20:36 -070026 handhelds such as the Compaq IPAQ. ARM-based PCs are no longer
Martin Michlmayrf6c89652006-02-08 21:09:07 +000027 manufactured, but legacy ARM-based PC hardware remains popular in
Linus Torvalds1da177e2005-04-16 15:20:36 -070028 Europe. There is an ARM Linux project with a web page at
29 <http://www.arm.linux.org.uk/>.
30
Russell King1a189b92008-04-13 21:41:55 +010031config HAVE_PWM
32 bool
33
Ralf Baechle75e71532007-02-09 17:08:58 +000034config SYS_SUPPORTS_APM_EMULATION
35 bool
36
David Brownell0a938b92007-03-05 00:30:18 -080037config GENERIC_GPIO
38 bool
David Brownell0a938b92007-03-05 00:30:18 -080039
Kevin Hilman746140c2006-09-22 00:16:30 +010040config GENERIC_TIME
41 bool
Kevin Hilman746140c2006-09-22 00:16:30 +010042
Kevin Hilman0567a0c2007-03-13 20:29:24 +010043config GENERIC_CLOCKEVENTS
44 bool
Kevin Hilman0567a0c2007-03-13 20:29:24 +010045
Catalin Marinasa8655e82008-02-04 17:30:57 +010046config GENERIC_CLOCKEVENTS_BROADCAST
47 bool
48 depends on GENERIC_CLOCKEVENTS
49 default y if SMP && !LOCAL_TIMERS
50
Linus Walleijbc581772009-09-15 17:30:37 +010051config HAVE_TCM
52 bool
53 select GENERIC_ALLOCATOR
54
Russell Kinge119bff2010-01-10 17:23:29 +000055config HAVE_PROC_CPU
56 bool
57
Al Viro5ea81762007-02-11 15:41:31 +000058config NO_IOPORT
59 bool
Al Viro5ea81762007-02-11 15:41:31 +000060
Linus Torvalds1da177e2005-04-16 15:20:36 -070061config EISA
62 bool
63 ---help---
64 The Extended Industry Standard Architecture (EISA) bus was
65 developed as an open alternative to the IBM MicroChannel bus.
66
67 The EISA bus provided some of the features of the IBM MicroChannel
68 bus while maintaining backward compatibility with cards made for
69 the older ISA bus. The EISA bus saw limited use between 1988 and
70 1995 when it was made obsolete by the PCI bus.
71
72 Say Y here if you are building a kernel for an EISA-based machine.
73
74 Otherwise, say N.
75
76config SBUS
77 bool
78
79config MCA
80 bool
81 help
82 MicroChannel Architecture is found in some IBM PS/2 machines and
83 laptops. It is a bus system similar to PCI or ISA. See
84 <file:Documentation/mca.txt> (and especially the web page given
85 there) before attempting to build an MCA bus kernel.
86
Thomas Gleixner4a2581a2006-07-01 22:30:09 +010087config GENERIC_HARDIRQS
88 bool
89 default y
90
Russell Kingf16fb1e2007-04-28 09:59:37 +010091config STACKTRACE_SUPPORT
92 bool
93 default y
94
Nicolas Pitref76e9152008-04-24 01:31:46 -040095config HAVE_LATENCYTOP_SUPPORT
96 bool
97 depends on !SMP
98 default y
99
Russell Kingf16fb1e2007-04-28 09:59:37 +0100100config LOCKDEP_SUPPORT
101 bool
102 default y
103
Russell King7ad1bcb2006-08-27 12:07:02 +0100104config TRACE_IRQFLAGS_SUPPORT
105 bool
106 default y
107
Thomas Gleixner4a2581a2006-07-01 22:30:09 +0100108config HARDIRQS_SW_RESEND
109 bool
110 default y
111
112config GENERIC_IRQ_PROBE
113 bool
114 default y
115
Nick Piggin95c354f2008-01-30 13:31:20 +0100116config GENERIC_LOCKBREAK
117 bool
118 default y
119 depends on SMP && PREEMPT
120
Linus Torvalds1da177e2005-04-16 15:20:36 -0700121config RWSEM_GENERIC_SPINLOCK
122 bool
123 default y
124
125config RWSEM_XCHGADD_ALGORITHM
126 bool
127
David Howellsf0d1b0b2006-12-08 02:37:49 -0800128config ARCH_HAS_ILOG2_U32
129 bool
David Howellsf0d1b0b2006-12-08 02:37:49 -0800130
131config ARCH_HAS_ILOG2_U64
132 bool
David Howellsf0d1b0b2006-12-08 02:37:49 -0800133
Ben Dooks89c52ed2009-07-30 23:23:24 +0100134config ARCH_HAS_CPUFREQ
135 bool
136 help
137 Internal node to signify that the ARCH has CPUFREQ support
138 and that the relevant menu configurations are displayed for
139 it.
140
Akinobu Mitab89c3b12006-03-26 01:39:19 -0800141config GENERIC_HWEIGHT
142 bool
143 default y
144
Linus Torvalds1da177e2005-04-16 15:20:36 -0700145config GENERIC_CALIBRATE_DELAY
146 bool
147 default y
148
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100149config ARCH_MAY_HAVE_PC_FDC
150 bool
151
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800152config ZONE_DMA
153 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800154
Linus Torvalds1da177e2005-04-16 15:20:36 -0700155config GENERIC_ISA_DMA
156 bool
157
Linus Torvalds1da177e2005-04-16 15:20:36 -0700158config FIQ
159 bool
160
Al Viro034d2f52005-12-19 16:27:59 -0500161config ARCH_MTD_XIP
162 bool
163
Paulius Zaleckas60a752e2008-06-25 13:33:14 +0100164config GENERIC_HARDIRQS_NO__DO_IRQ
Paulius Zaleckas60a752e2008-06-25 13:33:14 +0100165 def_bool y
166
Mathieu Desnoyersc0ffa3a2008-02-02 15:10:32 -0500167if OPROFILE
168
169config OPROFILE_ARMV6
170 def_bool y
171 depends on CPU_V6 && !SMP
172 select OPROFILE_ARM11_CORE
173
174config OPROFILE_MPCORE
175 def_bool y
176 depends on CPU_V6 && SMP
177 select OPROFILE_ARM11_CORE
178
179config OPROFILE_ARM11_CORE
180 bool
181
Jean PIHETd7ac4e22008-08-12 19:07:39 +0100182config OPROFILE_ARMV7
183 def_bool y
184 depends on CPU_V7 && !SMP
185 bool
186
Mathieu Desnoyersc0ffa3a2008-02-02 15:10:32 -0500187endif
188
Hyok S. Choic760fc12006-03-27 15:18:50 +0100189config VECTORS_BASE
190 hex
Hyok S. Choi6afd6fa2006-09-28 21:46:34 +0900191 default 0xffff0000 if MMU || CPU_HIGH_VECTOR
Hyok S. Choic760fc12006-03-27 15:18:50 +0100192 default DRAM_BASE if REMAP_VECTORS_TO_RAM
193 default 0x00000000
194 help
195 The base address of exception vectors.
196
Linus Torvalds1da177e2005-04-16 15:20:36 -0700197source "init/Kconfig"
198
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700199source "kernel/Kconfig.freezer"
200
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201menu "System Type"
202
Hyok S. Choi3c427972009-07-24 12:35:00 +0100203config MMU
204 bool "MMU-based Paged Memory Management Support"
205 default y
206 help
207 Select if you want MMU-based virtualised addressing space
208 support by paged memory management. If unsure, say 'Y'.
209
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210choice
211 prompt "ARM system type"
Catalin Marinas6a0e2432006-03-07 14:42:27 +0000212 default ARCH_VERSATILE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700213
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100214config ARCH_AAEC2000
215 bool "Agilent AAEC-2000 based"
Russell Kingc7508152008-10-26 10:55:14 +0000216 select CPU_ARM920T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100217 select ARM_AMBA
David Brownell9483a572008-07-23 21:26:48 -0700218 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100219 help
220 This enables support for systems based on the Agilent AAEC-2000
221
222config ARCH_INTEGRATOR
223 bool "ARM Ltd. Integrator family"
224 select ARM_AMBA
Ben Dooks89c52ed2009-07-30 23:23:24 +0100225 select ARCH_HAS_CPUFREQ
David Brownell9483a572008-07-23 21:26:48 -0700226 select HAVE_CLK
Russell Kingd72fbdf2008-11-08 20:08:08 +0000227 select COMMON_CLKDEV
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100228 select ICST525
229 help
230 Support for ARM's Integrator platform.
231
232config ARCH_REALVIEW
233 bool "ARM Ltd. RealView family"
234 select ARM_AMBA
David Brownell9483a572008-07-23 21:26:48 -0700235 select HAVE_CLK
Russell Kingcf30fb42008-11-08 20:05:55 +0000236 select COMMON_CLKDEV
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100237 select ICST307
Catalin Marinas85802af2008-02-04 17:24:54 +0100238 select GENERIC_TIME
Catalin Marinasae30cea2008-02-04 17:26:55 +0100239 select GENERIC_CLOCKEVENTS
Russell Kingeb7fffa2009-07-05 22:41:31 +0100240 select ARCH_WANT_OPTIONAL_GPIOLIB
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100241 help
242 This enables support for ARM Ltd RealView boards.
243
244config ARCH_VERSATILE
245 bool "ARM Ltd. Versatile family"
246 select ARM_AMBA
247 select ARM_VIC
David Brownell9483a572008-07-23 21:26:48 -0700248 select HAVE_CLK
Russell King71a06da2008-11-08 20:13:53 +0000249 select COMMON_CLKDEV
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100250 select ICST307
Kevin Hilmanb49c87c2007-03-08 20:25:13 +0100251 select GENERIC_TIME
Kevin Hilman89df1272007-03-08 20:30:38 +0100252 select GENERIC_CLOCKEVENTS
Russell Kingbbeddc42009-07-05 22:43:01 +0100253 select ARCH_WANT_OPTIONAL_GPIOLIB
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100254 help
255 This enables support for ARM Ltd Versatile board.
256
Andrew Victor8fc5ffa2006-06-29 16:06:33 +0100257config ARCH_AT91
258 bool "Atmel AT91"
David Brownell0a938b92007-03-05 00:30:18 -0800259 select GENERIC_GPIO
Ryan Mallonf373e8c2009-02-10 21:02:08 +0100260 select ARCH_REQUIRE_GPIOLIB
David Brownell93686ae2008-07-28 15:46:22 -0700261 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100262 help
Andrew Victor2b3b3512008-01-24 15:10:39 +0100263 This enables support for systems based on the Atmel AT91RM9200,
264 AT91SAM9 and AT91CAP9 processors.
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100265
Linus Torvalds1da177e2005-04-16 15:20:36 -0700266config ARCH_CLPS711X
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100267 bool "Cirrus Logic CLPS711x/EP721x-based"
Russell Kingc7508152008-10-26 10:55:14 +0000268 select CPU_ARM720T
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000269 help
270 Support for Cirrus Logic 711x/721x based boards.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700271
Russell King788c9702009-04-26 14:21:59 +0100272config ARCH_GEMINI
273 bool "Cortina Systems Gemini"
274 select CPU_FA526
275 select GENERIC_GPIO
276 select ARCH_REQUIRE_GPIOLIB
277 help
278 Support for the Cortina Systems Gemini family SoCs
279
Linus Torvalds1da177e2005-04-16 15:20:36 -0700280config ARCH_EBSA110
281 bool "EBSA-110"
Russell Kingc7508152008-10-26 10:55:14 +0000282 select CPU_SA110
Russell Kingf7e68bb2005-05-05 14:49:01 +0100283 select ISA
Russell Kingc5eb2a22007-03-03 11:54:19 +0000284 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700285 help
286 This is an evaluation board for the StrongARM processor available
Martin Michlmayrf6c89652006-02-08 21:09:07 +0000287 from Digital. It has limited hardware on-board, including an
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288 Ethernet interface, two PCMCIA sockets, two serial ports and a
289 parallel port.
290
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000291config ARCH_EP93XX
292 bool "EP93xx-based"
Russell Kingc7508152008-10-26 10:55:14 +0000293 select CPU_ARM920T
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000294 select ARM_AMBA
295 select ARM_VIC
Herbert Valerio Riedel4e9f9fd2007-11-26 18:41:02 +0100296 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700297 select HAVE_CLK
Russell Kingae696fd2008-11-30 17:11:49 +0000298 select COMMON_CLKDEV
Michael Buesch7444a722008-07-25 01:46:11 -0700299 select ARCH_REQUIRE_GPIOLIB
Mel Gormaneb335752009-05-13 17:34:48 +0100300 select ARCH_HAS_HOLES_MEMORYMODEL
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000301 help
302 This enables support for the Cirrus EP93xx series of CPUs.
303
Linus Torvalds1da177e2005-04-16 15:20:36 -0700304config ARCH_FOOTBRIDGE
305 bool "FootBridge"
Russell Kingc7508152008-10-26 10:55:14 +0000306 select CPU_SA110
Linus Torvalds1da177e2005-04-16 15:20:36 -0700307 select FOOTBRIDGE
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000308 help
309 Support for systems based on the DC21285 companion chip
310 ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700311
Russell King788c9702009-04-26 14:21:59 +0100312config ARCH_MXC
313 bool "Freescale MXC/iMX-based"
314 select GENERIC_TIME
315 select GENERIC_CLOCKEVENTS
316 select ARCH_MTD_XIP
317 select GENERIC_GPIO
318 select ARCH_REQUIRE_GPIOLIB
Russell Kinga2ab67f2009-05-23 20:57:31 +0100319 select HAVE_CLK
Russell King788c9702009-04-26 14:21:59 +0100320 help
321 Support for Freescale MXC/iMX-based family of processors
322
dmitry pervushin7bd0f2f2009-04-27 10:35:04 +0100323config ARCH_STMP3XXX
324 bool "Freescale STMP3xxx"
325 select CPU_ARM926T
326 select HAVE_CLK
327 select COMMON_CLKDEV
328 select ARCH_REQUIRE_GPIOLIB
329 select GENERIC_TIME
330 select GENERIC_CLOCKEVENTS
331 select GENERIC_GPIO
332 select USB_ARCH_HAS_EHCI
333 help
334 Support for systems based on the Freescale 3xxx CPUs.
335
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100336config ARCH_NETX
337 bool "Hilscher NetX based"
Russell Kingc7508152008-10-26 10:55:14 +0000338 select CPU_ARM926T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100339 select ARM_VIC
Uwe Kleine-König2fcfe6b2008-12-09 21:57:24 +0100340 select GENERIC_CLOCKEVENTS
Uwe Kleine-König21edecd2008-12-09 21:57:23 +0100341 select GENERIC_TIME
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000342 help
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100343 This enables support for systems based on the Hilscher NetX Soc
344
345config ARCH_H720X
346 bool "Hynix HMS720x-based"
Russell Kingc7508152008-10-26 10:55:14 +0000347 select CPU_ARM720T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100348 select ISA_DMA_API
349 help
350 This enables support for systems based on the Hynix HMS720x
351
Alessandro Rubini28ad94e2009-07-02 19:06:47 +0100352config ARCH_NOMADIK
353 bool "STMicroelectronics Nomadik"
354 select ARM_AMBA
355 select ARM_VIC
356 select CPU_ARM926T
357 select HAVE_CLK
358 select COMMON_CLKDEV
359 select GENERIC_TIME
360 select GENERIC_CLOCKEVENTS
Alessandro Rubini2ec1d352009-07-02 15:29:12 +0100361 select GENERIC_GPIO
362 select ARCH_REQUIRE_GPIOLIB
Alessandro Rubini28ad94e2009-07-02 19:06:47 +0100363 help
364 Support for the Nomadik platform by ST-Ericsson
365
Russell King3b938be2007-05-12 11:25:44 +0100366config ARCH_IOP13XX
367 bool "IOP13xx-based"
368 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000369 select CPU_XSC3
Russell King3b938be2007-05-12 11:25:44 +0100370 select PLAT_IOP
371 select PCI
372 select ARCH_SUPPORTS_MSI
Lennert Buytenhek8d5796d2008-08-25 21:03:32 +0100373 select VMSPLIT_1G
Russell King3b938be2007-05-12 11:25:44 +0100374 help
375 Support for Intel's IOP13XX (XScale) family of processors.
376
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100377config ARCH_IOP32X
378 bool "IOP32x-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100379 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000380 select CPU_XSCALE
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100381 select PLAT_IOP
Russell Kingf7e68bb2005-05-05 14:49:01 +0100382 select PCI
Arnaud Patard63f385c2008-07-08 23:07:48 +0100383 select GENERIC_GPIO
Russell Kingbb2b1802008-07-26 15:36:03 +0100384 select ARCH_REQUIRE_GPIOLIB
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000385 help
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100386 Support for Intel's 80219 and IOP32X (XScale) family of
387 processors.
388
389config ARCH_IOP33X
390 bool "IOP33x-based"
391 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000392 select CPU_XSCALE
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100393 select PLAT_IOP
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100394 select PCI
Arnaud Patard63f385c2008-07-08 23:07:48 +0100395 select GENERIC_GPIO
Russell Kingbb2b1802008-07-26 15:36:03 +0100396 select ARCH_REQUIRE_GPIOLIB
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100397 help
398 Support for Intel's IOP33X (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700399
Russell King3b938be2007-05-12 11:25:44 +0100400config ARCH_IXP23XX
401 bool "IXP23XX-based"
Dan Williams588ef762007-02-13 17:12:04 +0100402 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000403 select CPU_XSC3
Russell King3b938be2007-05-12 11:25:44 +0100404 select PCI
Dan Williams285f5fa2006-12-07 02:59:39 +0100405 help
Russell King3b938be2007-05-12 11:25:44 +0100406 Support for Intel's IXP23xx (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700407
408config ARCH_IXP2000
409 bool "IXP2400/2800-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100410 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000411 select CPU_XSCALE
Russell Kingf7e68bb2005-05-05 14:49:01 +0100412 select PCI
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000413 help
414 Support for Intel's IXP2400/2800 (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700415
Russell King3b938be2007-05-12 11:25:44 +0100416config ARCH_IXP4XX
417 bool "IXP4xx-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100418 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000419 select CPU_XSCALE
Milan Svoboda8858e9a2007-05-14 07:50:42 +0100420 select GENERIC_GPIO
Russell King3b938be2007-05-12 11:25:44 +0100421 select GENERIC_TIME
422 select GENERIC_CLOCKEVENTS
Russell King485bdde2008-10-17 14:00:43 +0100423 select DMABOUNCE if PCI
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100424 help
Russell King3b938be2007-05-12 11:25:44 +0100425 Support for Intel's IXP4XX (XScale) family of processors.
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100426
Linus Torvalds1da177e2005-04-16 15:20:36 -0700427config ARCH_L7200
428 bool "LinkUp-L7200"
Russell Kingc7508152008-10-26 10:55:14 +0000429 select CPU_ARM720T
Linus Torvalds1da177e2005-04-16 15:20:36 -0700430 select FIQ
431 help
432 Say Y here if you intend to run this kernel on a LinkUp Systems
433 L7200 Software Development Board which uses an ARM720T processor.
434 Information on this board can be obtained at:
435
436 <http://www.linkupsys.com/>
437
438 If you have any questions or comments about the Linux kernel port
439 to this board, send e-mail to <sjhill@cotw.com>.
440
Saeed Bisharaedabd382009-08-06 15:12:43 +0300441config ARCH_DOVE
442 bool "Marvell Dove"
443 select PCI
444 select GENERIC_GPIO
445 select ARCH_REQUIRE_GPIOLIB
446 select GENERIC_TIME
447 select GENERIC_CLOCKEVENTS
448 select PLAT_ORION
449 help
450 Support for the Marvell Dove SoC 88AP510
451
Saeed Bishara651c74c2008-06-22 22:45:06 +0200452config ARCH_KIRKWOOD
453 bool "Marvell Kirkwood"
Russell Kingc7508152008-10-26 10:55:14 +0000454 select CPU_FEROCEON
Saeed Bishara651c74c2008-06-22 22:45:06 +0200455 select PCI
Lennert Buytenhek4c213432008-10-20 01:51:04 +0200456 select GENERIC_GPIO
Erik Benadaa8865652009-05-28 17:08:55 -0700457 select ARCH_REQUIRE_GPIOLIB
Saeed Bishara651c74c2008-06-22 22:45:06 +0200458 select GENERIC_TIME
459 select GENERIC_CLOCKEVENTS
460 select PLAT_ORION
461 help
462 Support for the following Marvell Kirkwood series SoCs:
463 88F6180, 88F6192 and 88F6281.
464
Russell King788c9702009-04-26 14:21:59 +0100465config ARCH_LOKI
466 bool "Marvell Loki (88RC8480)"
467 select CPU_FEROCEON
468 select GENERIC_TIME
469 select GENERIC_CLOCKEVENTS
470 select PLAT_ORION
471 help
472 Support for the Marvell Loki (88RC8480) SoC.
473
474config ARCH_MV78XX0
475 bool "Marvell MV78xx0"
476 select CPU_FEROCEON
477 select PCI
478 select GENERIC_GPIO
Erik Benadaa8865652009-05-28 17:08:55 -0700479 select ARCH_REQUIRE_GPIOLIB
Russell King788c9702009-04-26 14:21:59 +0100480 select GENERIC_TIME
481 select GENERIC_CLOCKEVENTS
482 select PLAT_ORION
483 help
484 Support for the following Marvell MV78xx0 series SoCs:
485 MV781x0, MV782x0.
486
487config ARCH_ORION5X
488 bool "Marvell Orion"
489 depends on MMU
490 select CPU_FEROCEON
491 select PCI
492 select GENERIC_GPIO
Erik Benadaa8865652009-05-28 17:08:55 -0700493 select ARCH_REQUIRE_GPIOLIB
Russell King788c9702009-04-26 14:21:59 +0100494 select GENERIC_TIME
495 select GENERIC_CLOCKEVENTS
496 select PLAT_ORION
497 help
498 Support for the following Marvell Orion 5x series SoCs:
499 Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
500 Orion-2 (5281), Orion-1-90 (6183).
501
502config ARCH_MMP
503 bool "Marvell PXA168/910"
504 depends on MMU
505 select GENERIC_GPIO
506 select ARCH_REQUIRE_GPIOLIB
507 select HAVE_CLK
508 select COMMON_CLKDEV
509 select GENERIC_TIME
510 select GENERIC_CLOCKEVENTS
511 select TICK_ONESHOT
512 select PLAT_PXA
513 help
514 Support for Marvell's PXA168/910 processor line.
515
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100516config ARCH_KS8695
517 bool "Micrel/Kendin KS8695"
Russell Kingc7508152008-10-26 10:55:14 +0000518 select CPU_ARM922T
Andrew Victor8a87a992007-05-14 14:30:15 +0100519 select GENERIC_GPIO
Daniel Silverstone72880ad2008-12-13 20:44:12 +0000520 select ARCH_REQUIRE_GPIOLIB
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100521 help
522 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
523 System-on-Chip devices.
524
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100525config ARCH_NS9XXX
526 bool "NetSilicon NS9xxx"
Russell Kingc7508152008-10-26 10:55:14 +0000527 select CPU_ARM926T
Uwe Kleine-König689f2a02007-09-30 20:35:09 +0100528 select GENERIC_GPIO
Uwe Kleine-Königcef59752007-09-30 20:35:48 +0100529 select GENERIC_TIME
Uwe Kleine-Königc0bb87f2007-09-30 20:36:00 +0100530 select GENERIC_CLOCKEVENTS
David Brownell9483a572008-07-23 21:26:48 -0700531 select HAVE_CLK
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100532 help
533 Say Y here if you intend to run this kernel on a NetSilicon NS9xxx
534 System.
535
536 <http://www.digi.com/products/microprocessors/index.jsp>
537
Russell King788c9702009-04-26 14:21:59 +0100538config ARCH_W90X900
539 bool "Nuvoton W90X900 CPU"
540 select CPU_ARM926T
wanzongshunc52d3d62009-06-10 15:49:32 +0100541 select ARCH_REQUIRE_GPIOLIB
542 select GENERIC_GPIO
wanzongshund2c24192009-07-14 15:09:54 +0100543 select HAVE_CLK
wanzongshun0e4a34b2009-06-10 15:50:44 +0100544 select COMMON_CLKDEV
wanzongshun58b53692009-08-14 15:36:44 +0100545 select GENERIC_TIME
546 select GENERIC_CLOCKEVENTS
Lennert Buytenhek777f9be2008-06-22 22:45:02 +0200547 help
wanzongshuna8bc4ea2009-08-14 15:38:29 +0100548 Support for Nuvoton (Winbond logic dept.) ARM9 processor,
549 At present, the w90x900 has been renamed nuc900, regarding
550 the ARM series product line, you can login the following
551 link address to know more.
552
553 <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/
554 ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller>
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400555
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100556config ARCH_PNX4008
557 bool "Philips Nexperia PNX4008 Mobile"
Russell Kingc7508152008-10-26 10:55:14 +0000558 select CPU_ARM926T
David Brownell9483a572008-07-23 21:26:48 -0700559 select HAVE_CLK
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100560 help
561 This enables support for Philips PNX4008 mobile platform.
562
Linus Torvalds1da177e2005-04-16 15:20:36 -0700563config ARCH_PXA
eric miao2c8086a2007-09-11 19:13:17 -0700564 bool "PXA2xx/PXA3xx-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100565 depends on MMU
Al Viro034d2f52005-12-19 16:27:59 -0500566 select ARCH_MTD_XIP
Ben Dooks89c52ed2009-07-30 23:23:24 +0100567 select ARCH_HAS_CPUFREQ
David Brownell0a938b92007-03-05 00:30:18 -0800568 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700569 select HAVE_CLK
Russell King8c3abc72008-11-08 20:25:21 +0000570 select COMMON_CLKDEV
Michael Buesch7444a722008-07-25 01:46:11 -0700571 select ARCH_REQUIRE_GPIOLIB
Nicolas Pitre45cf5ee2007-02-05 22:37:07 +0100572 select GENERIC_TIME
Eric Miao981d0f32007-07-24 01:22:43 +0100573 select GENERIC_CLOCKEVENTS
Russell Kinga88264c2007-11-12 22:45:16 +0000574 select TICK_ONESHOT
Eric Miaobd5ce432009-01-20 12:06:01 +0800575 select PLAT_PXA
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000576 help
eric miao2c8086a2007-09-11 19:13:17 -0700577 Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700578
Russell King788c9702009-04-26 14:21:59 +0100579config ARCH_MSM
580 bool "Qualcomm MSM"
581 select CPU_V6
Eric Miao49cbe782009-01-20 14:15:18 +0800582 select GENERIC_TIME
583 select GENERIC_CLOCKEVENTS
Eric Miao49cbe782009-01-20 14:15:18 +0800584 help
Russell King788c9702009-04-26 14:21:59 +0100585 Support for Qualcomm MSM7K based systems. This runs on the ARM11
586 apps processor of the MSM7K and depends on a shared memory
587 interface to the ARM9 modem processor which runs the baseband stack
588 and controls some vital subsystems (clock and power control, etc).
Eric Miao49cbe782009-01-20 14:15:18 +0800589
Linus Torvalds1da177e2005-04-16 15:20:36 -0700590config ARCH_RPC
591 bool "RiscPC"
592 select ARCH_ACORN
593 select FIQ
594 select TIMER_ACORN
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100595 select ARCH_MAY_HAVE_PC_FDC
Ben Dooks341eb782008-07-01 14:16:49 +0100596 select HAVE_PATA_PLATFORM
Russell King065909b2006-01-04 15:44:16 +0000597 select ISA_DMA_API
Al Viro5ea81762007-02-11 15:41:31 +0000598 select NO_IOPORT
Russell King07f841b2008-10-01 17:11:06 +0100599 select ARCH_SPARSEMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700600 help
601 On the Acorn Risc-PC, Linux can support the internal IDE disk and
602 CD-ROM interface, serial and parallel port, and the floppy drive.
603
604config ARCH_SA1100
605 bool "SA1100-based"
Russell Kingc7508152008-10-26 10:55:14 +0000606 select CPU_SA1100
Russell Kingf7e68bb2005-05-05 14:49:01 +0100607 select ISA
Russell King05944d72006-11-30 20:43:51 +0000608 select ARCH_SPARSEMEM_ENABLE
Al Viro034d2f52005-12-19 16:27:59 -0500609 select ARCH_MTD_XIP
Ben Dooks89c52ed2009-07-30 23:23:24 +0100610 select ARCH_HAS_CPUFREQ
Russell King1937f5b2009-12-12 16:20:57 +0000611 select CPU_FREQ
David Brownell0a938b92007-03-05 00:30:18 -0800612 select GENERIC_GPIO
Russell Kingd142b6e2007-11-12 21:55:12 +0000613 select GENERIC_TIME
Russell King3e238be2008-04-14 23:03:10 +0100614 select GENERIC_CLOCKEVENTS
David Brownell9483a572008-07-23 21:26:48 -0700615 select HAVE_CLK
Russell King3e238be2008-04-14 23:03:10 +0100616 select TICK_ONESHOT
Michael Buesch7444a722008-07-25 01:46:11 -0700617 select ARCH_REQUIRE_GPIOLIB
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000618 help
619 Support for StrongARM 11x0 based boards.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700620
621config ARCH_S3C2410
Ben Dookse4d06e32007-02-16 12:12:31 +0100622 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
David Brownell0a938b92007-03-05 00:30:18 -0800623 select GENERIC_GPIO
Ben Dooks9d56c022009-07-30 23:23:25 +0100624 select ARCH_HAS_CPUFREQ
David Brownell9483a572008-07-23 21:26:48 -0700625 select HAVE_CLK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700626 help
627 Samsung S3C2410X CPU based systems, such as the Simtec Electronics
628 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
Martin Michlmayrf6c89652006-02-08 21:09:07 +0000629 the Samsung SMDK2410 development board (and derivatives).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700630
Ben Dooksa08ab632008-10-21 14:06:39 +0100631config ARCH_S3C64XX
632 bool "Samsung S3C64XX"
633 select GENERIC_GPIO
634 select HAVE_CLK
Ben Dooks89c52ed2009-07-30 23:23:24 +0100635 select ARCH_HAS_CPUFREQ
Ben Dooksa08ab632008-10-21 14:06:39 +0100636 help
637 Samsung S3C64XX series based systems
638
Byungho Min5a7652f2009-06-23 21:39:42 +0900639config ARCH_S5PC1XX
640 bool "Samsung S5PC1XX"
641 select GENERIC_GPIO
642 select HAVE_CLK
643 select CPU_V7
644 help
645 Samsung S5PC1XX series based systems
646
Linus Torvalds1da177e2005-04-16 15:20:36 -0700647config ARCH_SHARK
648 bool "Shark"
Russell Kingc7508152008-10-26 10:55:14 +0000649 select CPU_SA110
Russell Kingf7e68bb2005-05-05 14:49:01 +0100650 select ISA
651 select ISA_DMA
Nicolas Pitre3bca1032008-10-07 20:14:55 +0100652 select ZONE_DMA
Russell Kingf7e68bb2005-05-05 14:49:01 +0100653 select PCI
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000654 help
655 Support for the StrongARM based Digital DNARD machine, also known
656 as "Shark" (<http://www.shark-linux.de/shark.html>).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700657
658config ARCH_LH7A40X
659 bool "Sharp LH7A40X"
Russell Kingc7508152008-10-26 10:55:14 +0000660 select CPU_ARM922T
Russell King4ba3f7c2008-10-01 21:38:23 +0100661 select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM
662 select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700663 help
664 Say Y here for systems based on one of the Sharp LH7A40X
665 System on a Chip processors. These CPUs include an ARM922T
666 core with a wide array of integrated devices for
667 hand-held and low-power applications.
668
Linus Walleijd98aac72009-04-27 10:21:46 +0100669config ARCH_U300
670 bool "ST-Ericsson U300 Series"
671 depends on MMU
672 select CPU_ARM926T
Linus Walleijbc581772009-09-15 17:30:37 +0100673 select HAVE_TCM
Linus Walleijd98aac72009-04-27 10:21:46 +0100674 select ARM_AMBA
675 select ARM_VIC
676 select GENERIC_TIME
677 select GENERIC_CLOCKEVENTS
678 select HAVE_CLK
679 select COMMON_CLKDEV
680 select GENERIC_GPIO
681 help
682 Support for ST-Ericsson U300 series mobile platforms.
683
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100684config ARCH_DAVINCI
685 bool "TI DaVinci"
Russell Kingc7508152008-10-26 10:55:14 +0000686 select CPU_ARM926T
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100687 select GENERIC_TIME
688 select GENERIC_CLOCKEVENTS
Vladimir Barinov3d9edf02007-07-10 13:03:43 +0100689 select GENERIC_GPIO
David Brownelldce11152008-09-07 23:41:04 -0700690 select ARCH_REQUIRE_GPIOLIB
David Brownell9483a572008-07-23 21:26:48 -0700691 select HAVE_CLK
Nicolas Pitre3bca1032008-10-07 20:14:55 +0100692 select ZONE_DMA
Kevin Hilman9232fcc2009-04-08 14:49:38 -0700693 select HAVE_IDE
Kevin Hilmanc5b736d2009-03-20 17:29:01 -0700694 select COMMON_CLKDEV
David Brownell20e99692009-05-07 09:31:42 -0700695 select GENERIC_ALLOCATOR
Sekhar Noriae88e052009-11-19 15:34:01 +0530696 select ARCH_HAS_HOLES_MEMORYMODEL
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100697 help
698 Support for TI's DaVinci platform.
699
Russell King3b938be2007-05-12 11:25:44 +0100700config ARCH_OMAP
701 bool "TI OMAP"
702 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700703 select HAVE_CLK
Michael Buesch7444a722008-07-25 01:46:11 -0700704 select ARCH_REQUIRE_GPIOLIB
Ben Dooks89c52ed2009-07-30 23:23:24 +0100705 select ARCH_HAS_CPUFREQ
Russell King3b938be2007-05-12 11:25:44 +0100706 select GENERIC_TIME
Kevin Hilman06cad092007-10-18 23:04:43 -0700707 select GENERIC_CLOCKEVENTS
Russell King3b938be2007-05-12 11:25:44 +0100708 help
709 Support for TI's OMAP platform (OMAP1 and OMAP2).
710
Leo Chen6288e282009-08-07 19:46:15 +0100711config ARCH_BCMRING
712 bool "Broadcom BCMRING"
713 depends on MMU
714 select CPU_V6
715 select ARM_AMBA
716 select COMMON_CLKDEV
717 select GENERIC_TIME
718 select GENERIC_CLOCKEVENTS
719 select ARCH_WANT_OPTIONAL_GPIOLIB
720 help
721 Support for Broadcom's BCMRing platform.
722
Srinidhi Kasagar850265e2009-11-28 08:24:47 +0100723config ARCH_U8500
724 bool "ST-Ericsson U8500 Series"
725 select CPU_V7
726 select ARM_AMBA
727 select GENERIC_TIME
728 select GENERIC_CLOCKEVENTS
729 select COMMON_CLKDEV
730 help
731 Support for ST-Ericsson's Ux500 architecture
732
Linus Torvalds1da177e2005-04-16 15:20:36 -0700733endchoice
734
735source "arch/arm/mach-clps711x/Kconfig"
736
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000737source "arch/arm/mach-ep93xx/Kconfig"
738
Linus Torvalds1da177e2005-04-16 15:20:36 -0700739source "arch/arm/mach-footbridge/Kconfig"
740
Paulius Zaleckas59d3a192009-03-26 10:06:08 +0200741source "arch/arm/mach-gemini/Kconfig"
742
Linus Torvalds1da177e2005-04-16 15:20:36 -0700743source "arch/arm/mach-integrator/Kconfig"
744
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100745source "arch/arm/mach-iop32x/Kconfig"
746
747source "arch/arm/mach-iop33x/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700748
Dan Williams285f5fa2006-12-07 02:59:39 +0100749source "arch/arm/mach-iop13xx/Kconfig"
750
Linus Torvalds1da177e2005-04-16 15:20:36 -0700751source "arch/arm/mach-ixp4xx/Kconfig"
752
753source "arch/arm/mach-ixp2000/Kconfig"
754
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100755source "arch/arm/mach-ixp23xx/Kconfig"
756
Lennert Buytenhek777f9be2008-06-22 22:45:02 +0200757source "arch/arm/mach-loki/Kconfig"
758
Stanislav Samsonov794d15b2008-06-22 22:45:10 +0200759source "arch/arm/mach-mv78xx0/Kconfig"
760
Linus Torvalds1da177e2005-04-16 15:20:36 -0700761source "arch/arm/mach-pxa/Kconfig"
Eric Miaobd5ce432009-01-20 12:06:01 +0800762source "arch/arm/plat-pxa/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700763
Eric Miao49cbe782009-01-20 14:15:18 +0800764source "arch/arm/mach-mmp/Kconfig"
765
Linus Torvalds1da177e2005-04-16 15:20:36 -0700766source "arch/arm/mach-sa1100/Kconfig"
767
Tony Lindgrend48af152005-07-10 19:58:17 +0100768source "arch/arm/plat-omap/Kconfig"
769
770source "arch/arm/mach-omap1/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700771
Tony Lindgren1dbae812005-11-10 14:26:51 +0000772source "arch/arm/mach-omap2/Kconfig"
773
Lennert Buytenhek9dd0b192008-03-27 14:51:41 -0400774source "arch/arm/mach-orion5x/Kconfig"
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400775
Saeed Bishara651c74c2008-06-22 22:45:06 +0200776source "arch/arm/mach-kirkwood/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700777
Saeed Bisharaedabd382009-08-06 15:12:43 +0300778source "arch/arm/mach-dove/Kconfig"
779
Ben Dookscf383672009-11-10 00:14:58 +0000780source "arch/arm/plat-samsung/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100781source "arch/arm/plat-s3c24xx/Kconfig"
Ben Dooksa08ab632008-10-21 14:06:39 +0100782source "arch/arm/plat-s3c64xx/Kconfig"
Ben Dooksd58153d2007-07-22 16:07:09 +0100783source "arch/arm/plat-s3c/Kconfig"
Byungho Min5a7652f2009-06-23 21:39:42 +0900784source "arch/arm/plat-s5pc1xx/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100785
786if ARCH_S3C2410
787source "arch/arm/mach-s3c2400/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700788source "arch/arm/mach-s3c2410/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100789source "arch/arm/mach-s3c2412/Kconfig"
790source "arch/arm/mach-s3c2440/Kconfig"
791source "arch/arm/mach-s3c2442/Kconfig"
Ben Dookse4d06e32007-02-16 12:12:31 +0100792source "arch/arm/mach-s3c2443/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100793endif
Linus Torvalds1da177e2005-04-16 15:20:36 -0700794
Ben Dooksa08ab632008-10-21 14:06:39 +0100795if ARCH_S3C64XX
796source "arch/arm/mach-s3c6400/Kconfig"
797source "arch/arm/mach-s3c6410/Kconfig"
798endif
799
dmitry pervushin7bd0f2f2009-04-27 10:35:04 +0100800source "arch/arm/plat-stmp3xxx/Kconfig"
801
Byungho Min5a7652f2009-06-23 21:39:42 +0900802if ARCH_S5PC1XX
803source "arch/arm/mach-s5pc100/Kconfig"
804endif
805
Linus Torvalds1da177e2005-04-16 15:20:36 -0700806source "arch/arm/mach-lh7a40x/Kconfig"
807
Linus Torvalds1da177e2005-04-16 15:20:36 -0700808source "arch/arm/mach-h720x/Kconfig"
809
810source "arch/arm/mach-versatile/Kconfig"
811
Bellido Nicolas038c5b62005-06-20 18:51:05 +0100812source "arch/arm/mach-aaec2000/Kconfig"
813
Catalin Marinas8ad68bb2005-10-31 14:25:02 +0000814source "arch/arm/mach-realview/Kconfig"
815
Andrew Victor9d041262007-02-05 11:42:07 +0100816source "arch/arm/mach-at91/Kconfig"
SAN People73a59c12006-01-09 17:05:41 +0000817
Quinn Jensen52c543f2007-07-09 22:06:53 +0100818source "arch/arm/plat-mxc/Kconfig"
819
Alessandro Rubini28ad94e2009-07-02 19:06:47 +0100820source "arch/arm/mach-nomadik/Kconfig"
Srinidhi Kasagar59b559d2009-11-12 06:20:54 +0100821source "arch/arm/plat-nomadik/Kconfig"
Alessandro Rubini28ad94e2009-07-02 19:06:47 +0100822
Sascha Hauerbb6d8c82006-06-19 15:27:53 +0100823source "arch/arm/mach-netx/Kconfig"
824
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100825source "arch/arm/mach-ns9xxx/Kconfig"
826
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100827source "arch/arm/mach-davinci/Kconfig"
828
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100829source "arch/arm/mach-ks8695/Kconfig"
830
Brian Swetland9e73c842007-11-26 04:12:13 -0800831source "arch/arm/mach-msm/Kconfig"
832
Linus Walleijd98aac72009-04-27 10:21:46 +0100833source "arch/arm/mach-u300/Kconfig"
834
wanzongshun7ec80dd2008-12-03 03:55:38 +0100835source "arch/arm/mach-w90x900/Kconfig"
836
Leo Chen6288e282009-08-07 19:46:15 +0100837source "arch/arm/mach-bcmring/Kconfig"
838
Srinidhi Kasagar850265e2009-11-28 08:24:47 +0100839source "arch/arm/mach-ux500/Kconfig"
840
Linus Torvalds1da177e2005-04-16 15:20:36 -0700841# Definitions to make life easier
842config ARCH_ACORN
843 bool
844
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100845config PLAT_IOP
846 bool
Mikael Pettersson469d30442009-10-29 11:46:54 -0700847 select GENERIC_CLOCKEVENTS
Mikael Pettersson980f2292009-10-29 11:46:55 -0700848 select GENERIC_TIME
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100849
Lennert Buytenhek69b02f62008-03-27 14:51:39 -0400850config PLAT_ORION
851 bool
852
Eric Miaobd5ce432009-01-20 12:06:01 +0800853config PLAT_PXA
854 bool
855
Linus Torvalds1da177e2005-04-16 15:20:36 -0700856source arch/arm/mm/Kconfig
857
Lennert Buytenhekafe4b252006-12-03 18:51:14 +0100858config IWMMXT
859 bool "Enable iWMMXt support"
Eric Miao40305a52009-02-26 09:34:35 +0800860 depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK
861 default y if PXA27x || PXA3xx || ARCH_MMP
Lennert Buytenhekafe4b252006-12-03 18:51:14 +0100862 help
863 Enable support for iWMMXt context switching at run time if
864 running on a CPU that supports it.
865
Linus Torvalds1da177e2005-04-16 15:20:36 -0700866# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
867config XSCALE_PMU
868 bool
869 depends on CPU_XSCALE && !XSCALE_PMU_TIMER
870 default y
871
Hyok S. Choi3b93e7b2006-06-22 11:48:56 +0100872if !MMU
873source "arch/arm/Kconfig-nommu"
874endif
875
Catalin Marinas9cba3cc2009-04-30 17:06:03 +0100876config ARM_ERRATA_411920
877 bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
878 depends on CPU_V6 && !SMP
879 help
880 Invalidation of the Instruction Cache operation can
881 fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
882 It does not affect the MPCore. This option enables the ARM Ltd.
883 recommended workaround.
884
Catalin Marinas7ce236f2009-04-30 17:06:09 +0100885config ARM_ERRATA_430973
886 bool "ARM errata: Stale prediction on replaced interworking branch"
887 depends on CPU_V7
888 help
889 This option enables the workaround for the 430973 Cortex-A8
890 (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb
891 interworking branch is replaced with another code sequence at the
892 same virtual address, whether due to self-modifying code or virtual
893 to physical address re-mapping, Cortex-A8 does not recover from the
894 stale interworking branch prediction. This results in Cortex-A8
895 executing the new code sequence in the incorrect ARM or Thumb state.
896 The workaround enables the BTB/BTAC operations by setting ACTLR.IBE
897 and also flushes the branch target cache at every context switch.
898 Note that setting specific bits in the ACTLR register may not be
899 available in non-secure mode.
900
Catalin Marinas855c5512009-04-30 17:06:15 +0100901config ARM_ERRATA_458693
902 bool "ARM errata: Processor deadlock when a false hazard is created"
903 depends on CPU_V7
904 help
905 This option enables the workaround for the 458693 Cortex-A8 (r2p0)
906 erratum. For very specific sequences of memory operations, it is
907 possible for a hazard condition intended for a cache line to instead
908 be incorrectly associated with a different cache line. This false
909 hazard might then cause a processor deadlock. The workaround enables
910 the L1 caching of the NEON accesses and disables the PLD instruction
911 in the ACTLR register. Note that setting specific bits in the ACTLR
912 register may not be available in non-secure mode.
913
Catalin Marinas0516e462009-04-30 17:06:20 +0100914config ARM_ERRATA_460075
915 bool "ARM errata: Data written to the L2 cache can be overwritten with stale data"
916 depends on CPU_V7
917 help
918 This option enables the workaround for the 460075 Cortex-A8 (r2p0)
919 erratum. Any asynchronous access to the L2 cache may encounter a
920 situation in which recent store transactions to the L2 cache are lost
921 and overwritten with stale memory contents from external memory. The
922 workaround disables the write-allocate mode for the L2 cache via the
923 ACTLR register. Note that setting specific bits in the ACTLR register
924 may not be available in non-secure mode.
925
Linus Torvalds1da177e2005-04-16 15:20:36 -0700926endmenu
927
928source "arch/arm/common/Kconfig"
929
930config FORCE_MAX_ZONEORDER
931 int
932 depends on SA1111
933 default "9"
934
935menu "Bus support"
936
937config ARM_AMBA
938 bool
939
940config ISA
941 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700942 help
943 Find out whether you have ISA slots on your motherboard. ISA is the
944 name of a bus system, i.e. the way the CPU talks to the other stuff
945 inside your box. Other bus systems are PCI, EISA, MicroChannel
946 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
947 newer boards don't support it. If you have ISA, say Y, otherwise N.
948
Russell King065909b2006-01-04 15:44:16 +0000949# Select ISA DMA controller support
Linus Torvalds1da177e2005-04-16 15:20:36 -0700950config ISA_DMA
951 bool
Russell King065909b2006-01-04 15:44:16 +0000952 select ISA_DMA_API
Linus Torvalds1da177e2005-04-16 15:20:36 -0700953
Russell King065909b2006-01-04 15:44:16 +0000954# Select ISA DMA interface
Al Viro5cae8412005-05-04 05:39:22 +0100955config ISA_DMA_API
956 bool
Al Viro5cae8412005-05-04 05:39:22 +0100957
Linus Torvalds1da177e2005-04-16 15:20:36 -0700958config PCI
Mike Rapoporta0113a92007-11-25 08:55:34 +0100959 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700960 help
961 Find out whether you have a PCI motherboard. PCI is the name of a
962 bus system, i.e. the way the CPU talks to the other stuff inside
963 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
964 VESA. If you have PCI, say Y, otherwise N.
965
Matthew Wilcox36e23592007-07-10 10:54:40 -0600966config PCI_SYSCALL
967 def_bool PCI
968
Linus Torvalds1da177e2005-04-16 15:20:36 -0700969# Select the host bridge type
970config PCI_HOST_VIA82C505
971 bool
972 depends on PCI && ARCH_SHARK
973 default y
974
Mike Rapoporta0113a92007-11-25 08:55:34 +0100975config PCI_HOST_ITE8152
976 bool
977 depends on PCI && MACH_ARMCORE
978 default y
979 select DMABOUNCE
980
Linus Torvalds1da177e2005-04-16 15:20:36 -0700981source "drivers/pci/Kconfig"
982
983source "drivers/pcmcia/Kconfig"
984
985endmenu
986
987menu "Kernel Features"
988
Kevin Hilman0567a0c2007-03-13 20:29:24 +0100989source "kernel/time/Kconfig"
990
Linus Torvalds1da177e2005-04-16 15:20:36 -0700991config SMP
992 bool "Symmetric Multi-Processing (EXPERIMENTAL)"
Russell King42578c82009-06-11 15:35:00 +0100993 depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\
Srinidhi Kasagar850265e2009-11-28 08:24:47 +0100994 MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500)
Russell Kingbc282482009-05-17 18:58:34 +0100995 depends on GENERIC_CLOCKEVENTS
Jens Axboef6dd9fa2008-06-10 20:48:30 +0200996 select USE_GENERIC_SMP_HELPERS
Srinidhi Kasagar850265e2009-11-28 08:24:47 +0100997 select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700998 help
999 This enables support for systems with more than one CPU. If you have
1000 a system with only one CPU, like most personal computers, say N. If
1001 you have a system with more than one CPU, say Y.
1002
1003 If you say N here, the kernel will run on single and multiprocessor
1004 machines, but will use only one CPU of a multiprocessor machine. If
1005 you say Y here, the kernel will run on many, but not all, single
1006 processor machines. On a single processor machine, the kernel will
1007 run faster if you say N here.
1008
Adrian Bunk03502fa2008-02-03 15:50:21 +02001009 See also <file:Documentation/i386/IO-APIC.txt>,
Linus Torvalds1da177e2005-04-16 15:20:36 -07001010 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
1011 <http://www.linuxdoc.org/docs.html#howto>.
1012
1013 If you don't know what to do here, say N.
1014
Russell Kinga8cbcd92009-05-16 11:51:14 +01001015config HAVE_ARM_SCU
1016 bool
1017 depends on SMP
1018 help
1019 This option enables support for the ARM system coherency unit
1020
Russell Kingf32f4ce2009-05-16 12:14:21 +01001021config HAVE_ARM_TWD
1022 bool
1023 depends on SMP
1024 help
1025 This options enables support for the ARM timer and watchdog unit
1026
Lennert Buytenhek8d5796d2008-08-25 21:03:32 +01001027choice
1028 prompt "Memory split"
1029 default VMSPLIT_3G
1030 help
1031 Select the desired split between kernel and user memory.
1032
1033 If you are not absolutely sure what you are doing, leave this
1034 option alone!
1035
1036 config VMSPLIT_3G
1037 bool "3G/1G user/kernel split"
1038 config VMSPLIT_2G
1039 bool "2G/2G user/kernel split"
1040 config VMSPLIT_1G
1041 bool "1G/3G user/kernel split"
1042endchoice
1043
1044config PAGE_OFFSET
1045 hex
1046 default 0x40000000 if VMSPLIT_1G
1047 default 0x80000000 if VMSPLIT_2G
1048 default 0xC0000000
1049
Linus Torvalds1da177e2005-04-16 15:20:36 -07001050config NR_CPUS
1051 int "Maximum number of CPUs (2-32)"
1052 range 2 32
1053 depends on SMP
1054 default "4"
1055
Russell Kinga054a812005-11-02 22:24:33 +00001056config HOTPLUG_CPU
1057 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
1058 depends on SMP && HOTPLUG && EXPERIMENTAL
1059 help
1060 Say Y here to experiment with turning CPUs off and on. CPUs
1061 can be controlled through /sys/devices/system/cpu.
1062
Russell King37ee16a2005-11-08 19:08:05 +00001063config LOCAL_TIMERS
1064 bool "Use local timer interrupts"
Russell King42578c82009-06-11 15:35:00 +01001065 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \
Srinidhi Kasagar850265e2009-11-28 08:24:47 +01001066 REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500)
Russell King37ee16a2005-11-08 19:08:05 +00001067 default y
Srinidhi Kasagar850265e2009-11-28 08:24:47 +01001068 select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500)
Russell King37ee16a2005-11-08 19:08:05 +00001069 help
1070 Enable support for local timers on SMP platforms, rather then the
1071 legacy IPI broadcast method. Local timers allows the system
1072 accounting to be spread across the timer interval, preventing a
1073 "thundering herd" at every timer tick.
1074
Uwe Kleine-Königd45a3982009-08-13 20:38:17 +02001075source kernel/Kconfig.preempt
Linus Torvalds1da177e2005-04-16 15:20:36 -07001076
Russell Kingf8065812006-03-02 22:41:59 +00001077config HZ
1078 int
1079 default 128 if ARCH_L7200
1080 default 200 if ARCH_EBSA110 || ARCH_S3C2410
Russell Kingbfe65702006-03-04 11:01:53 +00001081 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
David Brownell5248c652007-11-12 17:59:10 +01001082 default AT91_TIMER_HZ if ARCH_AT91
Russell Kingf8065812006-03-02 22:41:59 +00001083 default 100
1084
Catalin Marinas16c79652009-07-24 12:33:02 +01001085config THUMB2_KERNEL
1086 bool "Compile the kernel in Thumb-2 mode"
1087 depends on CPU_V7 && EXPERIMENTAL
1088 select AEABI
1089 select ARM_ASM_UNIFIED
1090 help
1091 By enabling this option, the kernel will be compiled in
1092 Thumb-2 mode. A compiler/assembler that understand the unified
1093 ARM-Thumb syntax is needed.
1094
1095 If unsure, say N.
1096
Catalin Marinas0becb082009-07-24 12:32:53 +01001097config ARM_ASM_UNIFIED
1098 bool
1099
Nicolas Pitre704bdda2006-01-14 16:33:50 +00001100config AEABI
1101 bool "Use the ARM EABI to compile the kernel"
1102 help
1103 This option allows for the kernel to be compiled using the latest
1104 ARM ABI (aka EABI). This is only useful if you are using a user
1105 space environment that is also compiled with EABI.
1106
1107 Since there are major incompatibilities between the legacy ABI and
1108 EABI, especially with regard to structure member alignment, this
1109 option also changes the kernel syscall calling convention to
1110 disambiguate both ABIs and allow for backward compatibility support
1111 (selected with CONFIG_OABI_COMPAT).
1112
1113 To use this you need GCC version 4.0.0 or later.
1114
Nicolas Pitre6c90c872006-01-14 16:37:15 +00001115config OABI_COMPAT
Russell Kinga73a3ff2006-02-08 21:09:55 +00001116 bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
Nicolas Pitre61c484d2006-02-08 21:09:08 +00001117 depends on AEABI && EXPERIMENTAL
Nicolas Pitre6c90c872006-01-14 16:37:15 +00001118 default y
1119 help
1120 This option preserves the old syscall interface along with the
1121 new (ARM EABI) one. It also provides a compatibility layer to
1122 intercept syscalls that have structure arguments which layout
1123 in memory differs between the legacy ABI and the new ARM EABI
1124 (only for non "thumb" binaries). This option adds a tiny
1125 overhead to all syscalls and produces a slightly larger kernel.
1126 If you know you'll be using only pure EABI user space then you
1127 can say N here. If this option is not selected and you attempt
1128 to execute a legacy ABI binary then the result will be
1129 UNPREDICTABLE (in fact it can be predicted that it won't work
1130 at all). If in doubt say Y.
1131
Mel Gormaneb335752009-05-13 17:34:48 +01001132config ARCH_HAS_HOLES_MEMORYMODEL
Mel Gormane80d6a22008-08-14 11:10:14 +01001133 bool
Mel Gormane80d6a22008-08-14 11:10:14 +01001134
Russell King07a2f732008-10-01 21:39:58 +01001135# Discontigmem is deprecated
Dave Hansen3f22ab22005-06-23 00:07:43 -07001136config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -07001137 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001138
Russell King05944d72006-11-30 20:43:51 +00001139config ARCH_SPARSEMEM_ENABLE
1140 bool
1141
Russell King07a2f732008-10-01 21:39:58 +01001142config ARCH_SPARSEMEM_DEFAULT
1143 def_bool ARCH_SPARSEMEM_ENABLE
1144
Russell King05944d72006-11-30 20:43:51 +00001145config ARCH_SELECT_MEMORY_MODEL
Russell King07a2f732008-10-01 21:39:58 +01001146 def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE
Russell King05944d72006-11-30 20:43:51 +00001147
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001148config NODES_SHIFT
1149 int
1150 default "4" if ARCH_LH7A40X
1151 default "2"
1152 depends on NEED_MULTIPLE_NODES
1153
Nicolas Pitre053a96c2008-09-19 00:36:12 -04001154config HIGHMEM
1155 bool "High Memory Support (EXPERIMENTAL)"
1156 depends on MMU && EXPERIMENTAL
1157 help
1158 The address space of ARM processors is only 4 Gigabytes large
1159 and it has to accommodate user address space, kernel address
1160 space as well as some memory mapped IO. That means that, if you
1161 have a large amount of physical memory and/or IO, not all of the
1162 memory can be "permanently mapped" by the kernel. The physical
1163 memory that is not permanently mapped is called "high memory".
1164
1165 Depending on the selected kernel/user memory split, minimum
1166 vmalloc space and actual amount of RAM, you may not need this
1167 option which should result in a slightly faster kernel.
1168
1169 If unsure, say n.
1170
Russell King65cec8e2009-08-17 20:02:06 +01001171config HIGHPTE
1172 bool "Allocate 2nd-level pagetables from highmem"
1173 depends on HIGHMEM
1174 depends on !OUTER_CACHE
1175
Dave Hansen3f22ab22005-06-23 00:07:43 -07001176source "mm/Kconfig"
1177
Linus Torvalds1da177e2005-04-16 15:20:36 -07001178config LEDS
1179 bool "Timer and CPU usage LEDs"
Adrian Bunke055d5bf2008-04-22 01:43:27 +01001180 depends on ARCH_CDB89712 || ARCH_EBSA110 || \
Sascha Hauer8c8fdbc2009-04-01 12:40:15 +02001181 ARCH_EBSA285 || ARCH_INTEGRATOR || \
Linus Torvalds1da177e2005-04-16 15:20:36 -07001182 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
1183 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
SAN People73a59c12006-01-09 17:05:41 +00001184 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
Jürgen Schindele25329672008-09-16 21:36:30 +01001185 ARCH_AT91 || ARCH_DAVINCI || \
Colin Tuckleyff3042f2009-05-30 13:56:13 +01001186 ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW
Linus Torvalds1da177e2005-04-16 15:20:36 -07001187 help
1188 If you say Y here, the LEDs on your machine will be used
1189 to provide useful information about your current system status.
1190
1191 If you are compiling a kernel for a NetWinder or EBSA-285, you will
1192 be able to select which LEDs are active using the options below. If
1193 you are compiling a kernel for the EBSA-110 or the LART however, the
1194 red LED will simply flash regularly to indicate that the system is
1195 still functional. It is safe to say Y here if you have a CATS
1196 system, but the driver will do nothing.
1197
1198config LEDS_TIMER
1199 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
David Brownelleebdf7d72007-04-02 12:48:10 -07001200 OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1201 || MACH_OMAP_PERSEUS2
Linus Torvalds1da177e2005-04-16 15:20:36 -07001202 depends on LEDS
Kevin Hilman0567a0c2007-03-13 20:29:24 +01001203 depends on !GENERIC_CLOCKEVENTS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001204 default y if ARCH_EBSA110
1205 help
1206 If you say Y here, one of the system LEDs (the green one on the
1207 NetWinder, the amber one on the EBSA285, or the red one on the LART)
1208 will flash regularly to indicate that the system is still
1209 operational. This is mainly useful to kernel hackers who are
1210 debugging unstable kernels.
1211
1212 The LART uses the same LED for both Timer LED and CPU usage LED
1213 functions. You may choose to use both, but the Timer LED function
1214 will overrule the CPU usage LED.
1215
1216config LEDS_CPU
1217 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
David Brownelleebdf7d72007-04-02 12:48:10 -07001218 !ARCH_OMAP) \
1219 || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1220 || MACH_OMAP_PERSEUS2
Linus Torvalds1da177e2005-04-16 15:20:36 -07001221 depends on LEDS
1222 help
1223 If you say Y here, the red LED will be used to give a good real
1224 time indication of CPU usage, by lighting whenever the idle task
1225 is not currently executing.
1226
1227 The LART uses the same LED for both Timer LED and CPU usage LED
1228 functions. You may choose to use both, but the Timer LED function
1229 will overrule the CPU usage LED.
1230
1231config ALIGNMENT_TRAP
1232 bool
Hyok S. Choif12d0d72006-09-26 17:36:37 +09001233 depends on CPU_CP15_MMU
Linus Torvalds1da177e2005-04-16 15:20:36 -07001234 default y if !ARCH_EBSA110
Russell Kinge119bff2010-01-10 17:23:29 +00001235 select HAVE_PROC_CPU if PROC_FS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001236 help
Matt LaPlante84eb8d02006-10-03 22:53:09 +02001237 ARM processors cannot fetch/store information which is not
Linus Torvalds1da177e2005-04-16 15:20:36 -07001238 naturally aligned on the bus, i.e., a 4 byte fetch must start at an
1239 address divisible by 4. On 32-bit ARM processors, these non-aligned
1240 fetch/store instructions will be emulated in software if you say
1241 here, which has a severe performance impact. This is necessary for
1242 correct operation of some network protocols. With an IP-only
1243 configuration it is safe to say N, otherwise say Y.
1244
Lennert Buytenhek39ec58f2009-03-09 14:30:09 -04001245config UACCESS_WITH_MEMCPY
1246 bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)"
1247 depends on MMU && EXPERIMENTAL
1248 default y if CPU_FEROCEON
1249 help
1250 Implement faster copy_to_user and clear_user methods for CPU
1251 cores where a 8-word STM instruction give significantly higher
1252 memory write throughput than a sequence of individual 32bit stores.
1253
1254 A possible side effect is a slight increase in scheduling latency
1255 between threads sharing the same address space if they invoke
1256 such copy operations with large buffers.
1257
1258 However, if the CPU data cache is using a write-allocate mode,
1259 this option is unlikely to provide any performance gain.
1260
Linus Torvalds1da177e2005-04-16 15:20:36 -07001261endmenu
1262
1263menu "Boot options"
1264
1265# Compressed boot loader in ROM. Yes, we really want to ask about
1266# TEXT and BSS so we preserve their values in the config files.
1267config ZBOOT_ROM_TEXT
1268 hex "Compressed ROM boot loader base address"
1269 default "0"
1270 help
1271 The physical address at which the ROM-able zImage is to be
1272 placed in the target. Platforms which normally make use of
1273 ROM-able zImage formats normally set this to a suitable
1274 value in their defconfig file.
1275
1276 If ZBOOT_ROM is not enabled, this has no effect.
1277
1278config ZBOOT_ROM_BSS
1279 hex "Compressed ROM boot loader BSS address"
1280 default "0"
1281 help
Dan Fandrichf8c440b2006-09-20 23:28:51 +01001282 The base address of an area of read/write memory in the target
1283 for the ROM-able zImage which must be available while the
1284 decompressor is running. It must be large enough to hold the
1285 entire decompressed kernel plus an additional 128 KiB.
1286 Platforms which normally make use of ROM-able zImage formats
1287 normally set this to a suitable value in their defconfig file.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001288
1289 If ZBOOT_ROM is not enabled, this has no effect.
1290
1291config ZBOOT_ROM
1292 bool "Compressed boot loader in ROM/flash"
1293 depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
1294 help
1295 Say Y here if you intend to execute your compressed kernel image
1296 (zImage) directly from ROM or flash. If unsure, say N.
1297
1298config CMDLINE
1299 string "Default kernel command string"
1300 default ""
1301 help
1302 On some architectures (EBSA110 and CATS), there is currently no way
1303 for the boot loader to pass arguments to the kernel. For these
1304 architectures, you should supply some command-line options at build
1305 time by entering them here. As a minimum, you should specify the
1306 memory size and the root device (e.g., mem=64M root=/dev/nfs).
1307
1308config XIP_KERNEL
1309 bool "Kernel Execute-In-Place from ROM"
1310 depends on !ZBOOT_ROM
1311 help
1312 Execute-In-Place allows the kernel to run from non-volatile storage
1313 directly addressable by the CPU, such as NOR flash. This saves RAM
1314 space since the text section of the kernel is not loaded from flash
1315 to RAM. Read-write sections, such as the data section and stack,
1316 are still copied to RAM. The XIP kernel is not compressed since
1317 it has to run directly from flash, so it will take more space to
1318 store it. The flash address used to link the kernel object files,
1319 and for storing it, is configuration dependent. Therefore, if you
1320 say Y here, you must know the proper physical address where to
1321 store the kernel image depending on your own flash memory usage.
1322
1323 Also note that the make target becomes "make xipImage" rather than
1324 "make zImage" or "make Image". The final kernel binary to put in
1325 ROM memory will be arch/arm/boot/xipImage.
1326
1327 If unsure, say N.
1328
1329config XIP_PHYS_ADDR
1330 hex "XIP Kernel Physical Location"
1331 depends on XIP_KERNEL
1332 default "0x00080000"
1333 help
1334 This is the physical address in your flash memory the kernel will
1335 be linked for and stored to. This address is dependent on your
1336 own flash usage.
1337
Richard Purdiec587e4a2007-02-06 21:29:00 +01001338config KEXEC
1339 bool "Kexec system call (EXPERIMENTAL)"
1340 depends on EXPERIMENTAL
1341 help
1342 kexec is a system call that implements the ability to shutdown your
1343 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02001344 but it is independent of the system firmware. And like a reboot
Richard Purdiec587e4a2007-02-06 21:29:00 +01001345 you can start any kernel with it, not just Linux.
1346
1347 It is an ongoing process to be certain the hardware in a machine
1348 is properly shutdown, so do not be surprised if this code does not
1349 initially work for you. It may help to enable device hotplugging
1350 support.
1351
Richard Purdie4cd9d6f2008-01-02 00:56:46 +01001352config ATAGS_PROC
1353 bool "Export atags in procfs"
Uli Luckasb98d7292008-02-22 16:45:18 +01001354 depends on KEXEC
1355 default y
Richard Purdie4cd9d6f2008-01-02 00:56:46 +01001356 help
1357 Should the atags used to boot the kernel be exported in an "atags"
1358 file in procfs. Useful with kexec.
1359
Linus Torvalds1da177e2005-04-16 15:20:36 -07001360endmenu
1361
Russell Kingac9d7ef2008-08-18 17:26:00 +01001362menu "CPU Power Management"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001363
Ben Dooks89c52ed2009-07-30 23:23:24 +01001364if ARCH_HAS_CPUFREQ
Linus Torvalds1da177e2005-04-16 15:20:36 -07001365
1366source "drivers/cpufreq/Kconfig"
1367
1368config CPU_FREQ_SA1100
1369 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001370
1371config CPU_FREQ_SA1110
1372 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001373
1374config CPU_FREQ_INTEGRATOR
1375 tristate "CPUfreq driver for ARM Integrator CPUs"
1376 depends on ARCH_INTEGRATOR && CPU_FREQ
1377 default y
1378 help
1379 This enables the CPUfreq driver for ARM Integrator CPUs.
1380
1381 For details, take a look at <file:Documentation/cpu-freq>.
1382
1383 If in doubt, say Y.
1384
Russell King9e2697f2007-12-14 13:30:14 +00001385config CPU_FREQ_PXA
1386 bool
1387 depends on CPU_FREQ && ARCH_PXA && PXA25x
1388 default y
1389 select CPU_FREQ_DEFAULT_GOV_USERSPACE
1390
Mark Brownb3748dd2009-06-15 11:23:20 +01001391config CPU_FREQ_S3C64XX
1392 bool "CPUfreq support for Samsung S3C64XX CPUs"
1393 depends on CPU_FREQ && CPU_S3C6410
1394
Ben Dooks9d56c022009-07-30 23:23:25 +01001395config CPU_FREQ_S3C
1396 bool
1397 help
1398 Internal configuration node for common cpufreq on Samsung SoC
1399
1400config CPU_FREQ_S3C24XX
1401 bool "CPUfreq driver for Samsung S3C24XX series CPUs"
1402 depends on ARCH_S3C2410 && CPU_FREQ && EXPERIMENTAL
1403 select CPU_FREQ_S3C
1404 help
1405 This enables the CPUfreq driver for the Samsung S3C24XX family
1406 of CPUs.
1407
1408 For details, take a look at <file:Documentation/cpu-freq>.
1409
1410 If in doubt, say N.
1411
1412config CPU_FREQ_S3C24XX_PLL
1413 bool "Support CPUfreq changing of PLL frequency"
1414 depends on CPU_FREQ_S3C24XX && EXPERIMENTAL
1415 help
1416 Compile in support for changing the PLL frequency from the
1417 S3C24XX series CPUfreq driver. The PLL takes time to settle
1418 after a frequency change, so by default it is not enabled.
1419
1420 This also means that the PLL tables for the selected CPU(s) will
1421 be built which may increase the size of the kernel image.
1422
1423config CPU_FREQ_S3C24XX_DEBUG
1424 bool "Debug CPUfreq Samsung driver core"
1425 depends on CPU_FREQ_S3C24XX
1426 help
1427 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
1428
1429config CPU_FREQ_S3C24XX_IODEBUG
1430 bool "Debug CPUfreq Samsung driver IO timing"
1431 depends on CPU_FREQ_S3C24XX
1432 help
1433 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
1434
Ben Dookse6d197a2009-07-30 23:23:42 +01001435config CPU_FREQ_S3C24XX_DEBUGFS
1436 bool "Export debugfs for CPUFreq"
1437 depends on CPU_FREQ_S3C24XX && DEBUG_FS
1438 help
1439 Export status information via debugfs.
1440
Linus Torvalds1da177e2005-04-16 15:20:36 -07001441endif
1442
Russell Kingac9d7ef2008-08-18 17:26:00 +01001443source "drivers/cpuidle/Kconfig"
1444
1445endmenu
1446
Linus Torvalds1da177e2005-04-16 15:20:36 -07001447menu "Floating point emulation"
1448
1449comment "At least one emulation must be selected"
1450
1451config FPE_NWFPE
1452 bool "NWFPE math emulation"
Nicolas Pitre8993a442006-01-14 16:36:50 +00001453 depends on !AEABI || OABI_COMPAT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001454 ---help---
1455 Say Y to include the NWFPE floating point emulator in the kernel.
1456 This is necessary to run most binaries. Linux does not currently
1457 support floating point hardware so you need to say Y here even if
1458 your machine has an FPA or floating point co-processor podule.
1459
1460 You may say N here if you are going to load the Acorn FPEmulator
1461 early in the bootup.
1462
1463config FPE_NWFPE_XP
1464 bool "Support extended precision"
Lennert Buytenhekbedf1422005-11-07 21:12:08 +00001465 depends on FPE_NWFPE
Linus Torvalds1da177e2005-04-16 15:20:36 -07001466 help
1467 Say Y to include 80-bit support in the kernel floating-point
1468 emulator. Otherwise, only 32 and 64-bit support is compiled in.
1469 Note that gcc does not generate 80-bit operations by default,
1470 so in most cases this option only enlarges the size of the
1471 floating point emulator without any good reason.
1472
1473 You almost surely want to say N here.
1474
1475config FPE_FASTFPE
1476 bool "FastFPE math emulation (EXPERIMENTAL)"
Nicolas Pitre8993a442006-01-14 16:36:50 +00001477 depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001478 ---help---
1479 Say Y here to include the FAST floating point emulator in the kernel.
1480 This is an experimental much faster emulator which now also has full
1481 precision for the mantissa. It does not support any exceptions.
1482 It is very simple, and approximately 3-6 times faster than NWFPE.
1483
1484 It should be sufficient for most programs. It may be not suitable
1485 for scientific calculations, but you have to check this for yourself.
1486 If you do not feel you need a faster FP emulation you should better
1487 choose NWFPE.
1488
1489config VFP
1490 bool "VFP-format floating point maths"
Russell Kingc00d4ff2008-01-28 13:21:30 +00001491 depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001492 help
1493 Say Y to include VFP support code in the kernel. This is needed
1494 if your hardware includes a VFP unit.
1495
1496 Please see <file:Documentation/arm/VFP/release-notes.txt> for
1497 release notes and additional status information.
1498
1499 Say N if your target does not have VFP hardware.
1500
Catalin Marinas25ebee02007-09-25 15:22:24 +01001501config VFPv3
1502 bool
1503 depends on VFP
1504 default y if CPU_V7
1505
Catalin Marinasb5872db2008-01-10 19:16:17 +01001506config NEON
1507 bool "Advanced SIMD (NEON) Extension support"
1508 depends on VFPv3 && CPU_V7
1509 help
1510 Say Y to include support code for NEON, the ARMv7 Advanced SIMD
1511 Extension.
1512
Linus Torvalds1da177e2005-04-16 15:20:36 -07001513endmenu
1514
1515menu "Userspace binary formats"
1516
1517source "fs/Kconfig.binfmt"
1518
1519config ARTHUR
1520 tristate "RISC OS personality"
Nicolas Pitre704bdda2006-01-14 16:33:50 +00001521 depends on !AEABI
Linus Torvalds1da177e2005-04-16 15:20:36 -07001522 help
1523 Say Y here to include the kernel code necessary if you want to run
1524 Acorn RISC OS/Arthur binaries under Linux. This code is still very
1525 experimental; if this sounds frightening, say N and sleep in peace.
1526 You can also say M here to compile this support as a module (which
1527 will be called arthur).
1528
1529endmenu
1530
1531menu "Power management options"
1532
Russell Kingeceab4a2005-11-15 11:31:41 +00001533source "kernel/power/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001534
Johannes Bergf4cb5702007-12-08 02:14:00 +01001535config ARCH_SUSPEND_POSSIBLE
1536 def_bool y
1537
Linus Torvalds1da177e2005-04-16 15:20:36 -07001538endmenu
1539
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001540source "net/Kconfig"
1541
Uwe Kleine-Königac251502009-08-13 21:09:21 +02001542source "drivers/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001543
1544source "fs/Kconfig"
1545
Linus Torvalds1da177e2005-04-16 15:20:36 -07001546source "arch/arm/Kconfig.debug"
1547
1548source "security/Kconfig"
1549
1550source "crypto/Kconfig"
1551
1552source "lib/Kconfig"