blob: bf856f492eb51e28612d96a76144511ef2ad50bf [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
Will Deacon24b44a62010-01-20 19:05:07 +010015 select GENERIC_ATOMIC64 if (!CPU_32v6K)
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050016 select HAVE_OPROFILE
Jason Wessel5cbad0e2008-02-20 13:33:40 -060017 select HAVE_ARCH_KGDB
Mathieu Desnoyers3f550092008-02-02 15:10:35 -050018 select HAVE_KPROBES if (!XIP_KERNEL)
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080019 select HAVE_KRETPROBES if (HAVE_KPROBES)
Steven Rostedt606576c2008-10-06 19:06:12 -040020 select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
Dmitry Baryshkov1fe53262008-07-18 13:30:14 +040021 select HAVE_GENERIC_DMA_COHERENT
Albin Tonnerree7db7b42010-01-08 14:42:43 -080022 select HAVE_KERNEL_GZIP
23 select HAVE_KERNEL_LZO
Jamie Iles7ada1892010-02-02 20:24:58 +010024 select HAVE_PERF_EVENTS
25 select PERF_USE_VMALLOC
Linus Torvalds1da177e2005-04-16 15:20:36 -070026 help
27 The ARM series is a line of low-power-consumption RISC chip designs
Martin Michlmayrf6c89652006-02-08 21:09:07 +000028 licensed by ARM Ltd and targeted at embedded applications and
Linus Torvalds1da177e2005-04-16 15:20:36 -070029 handhelds such as the Compaq IPAQ. ARM-based PCs are no longer
Martin Michlmayrf6c89652006-02-08 21:09:07 +000030 manufactured, but legacy ARM-based PC hardware remains popular in
Linus Torvalds1da177e2005-04-16 15:20:36 -070031 Europe. There is an ARM Linux project with a web page at
32 <http://www.arm.linux.org.uk/>.
33
Russell King1a189b92008-04-13 21:41:55 +010034config HAVE_PWM
35 bool
36
Ralf Baechle75e71532007-02-09 17:08:58 +000037config SYS_SUPPORTS_APM_EMULATION
38 bool
39
David Brownell0a938b92007-03-05 00:30:18 -080040config GENERIC_GPIO
41 bool
David Brownell0a938b92007-03-05 00:30:18 -080042
Kevin Hilman746140c2006-09-22 00:16:30 +010043config GENERIC_TIME
44 bool
John Stultz5cfc8ee2010-03-24 00:22:36 +000045 default y
46
47config ARCH_USES_GETTIMEOFFSET
48 bool
49 default n
Kevin Hilman746140c2006-09-22 00:16:30 +010050
Kevin Hilman0567a0c2007-03-13 20:29:24 +010051config GENERIC_CLOCKEVENTS
52 bool
Kevin Hilman0567a0c2007-03-13 20:29:24 +010053
Catalin Marinasa8655e82008-02-04 17:30:57 +010054config GENERIC_CLOCKEVENTS_BROADCAST
55 bool
56 depends on GENERIC_CLOCKEVENTS
57 default y if SMP && !LOCAL_TIMERS
58
Linus Walleijbc581772009-09-15 17:30:37 +010059config HAVE_TCM
60 bool
61 select GENERIC_ALLOCATOR
62
Russell Kinge119bff2010-01-10 17:23:29 +000063config HAVE_PROC_CPU
64 bool
65
Al Viro5ea81762007-02-11 15:41:31 +000066config NO_IOPORT
67 bool
Al Viro5ea81762007-02-11 15:41:31 +000068
Linus Torvalds1da177e2005-04-16 15:20:36 -070069config EISA
70 bool
71 ---help---
72 The Extended Industry Standard Architecture (EISA) bus was
73 developed as an open alternative to the IBM MicroChannel bus.
74
75 The EISA bus provided some of the features of the IBM MicroChannel
76 bus while maintaining backward compatibility with cards made for
77 the older ISA bus. The EISA bus saw limited use between 1988 and
78 1995 when it was made obsolete by the PCI bus.
79
80 Say Y here if you are building a kernel for an EISA-based machine.
81
82 Otherwise, say N.
83
84config SBUS
85 bool
86
87config MCA
88 bool
89 help
90 MicroChannel Architecture is found in some IBM PS/2 machines and
91 laptops. It is a bus system similar to PCI or ISA. See
92 <file:Documentation/mca.txt> (and especially the web page given
93 there) before attempting to build an MCA bus kernel.
94
Thomas Gleixner4a2581a2006-07-01 22:30:09 +010095config GENERIC_HARDIRQS
96 bool
97 default y
98
Russell Kingf16fb1e2007-04-28 09:59:37 +010099config STACKTRACE_SUPPORT
100 bool
101 default y
102
Nicolas Pitref76e9152008-04-24 01:31:46 -0400103config HAVE_LATENCYTOP_SUPPORT
104 bool
105 depends on !SMP
106 default y
107
Russell Kingf16fb1e2007-04-28 09:59:37 +0100108config LOCKDEP_SUPPORT
109 bool
110 default y
111
Russell King7ad1bcb2006-08-27 12:07:02 +0100112config TRACE_IRQFLAGS_SUPPORT
113 bool
114 default y
115
Thomas Gleixner4a2581a2006-07-01 22:30:09 +0100116config HARDIRQS_SW_RESEND
117 bool
118 default y
119
120config GENERIC_IRQ_PROBE
121 bool
122 default y
123
Nick Piggin95c354f2008-01-30 13:31:20 +0100124config GENERIC_LOCKBREAK
125 bool
126 default y
127 depends on SMP && PREEMPT
128
Linus Torvalds1da177e2005-04-16 15:20:36 -0700129config RWSEM_GENERIC_SPINLOCK
130 bool
131 default y
132
133config RWSEM_XCHGADD_ALGORITHM
134 bool
135
David Howellsf0d1b0b2006-12-08 02:37:49 -0800136config ARCH_HAS_ILOG2_U32
137 bool
David Howellsf0d1b0b2006-12-08 02:37:49 -0800138
139config ARCH_HAS_ILOG2_U64
140 bool
David Howellsf0d1b0b2006-12-08 02:37:49 -0800141
Ben Dooks89c52ed2009-07-30 23:23:24 +0100142config ARCH_HAS_CPUFREQ
143 bool
144 help
145 Internal node to signify that the ARCH has CPUFREQ support
146 and that the relevant menu configurations are displayed for
147 it.
148
Akinobu Mitab89c3b12006-03-26 01:39:19 -0800149config GENERIC_HWEIGHT
150 bool
151 default y
152
Linus Torvalds1da177e2005-04-16 15:20:36 -0700153config GENERIC_CALIBRATE_DELAY
154 bool
155 default y
156
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100157config ARCH_MAY_HAVE_PC_FDC
158 bool
159
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800160config ZONE_DMA
161 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800162
FUJITA Tomonoriccd7ab72010-03-10 15:23:23 -0800163config NEED_DMA_MAP_STATE
164 def_bool y
165
Linus Torvalds1da177e2005-04-16 15:20:36 -0700166config GENERIC_ISA_DMA
167 bool
168
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169config FIQ
170 bool
171
Al Viro034d2f52005-12-19 16:27:59 -0500172config ARCH_MTD_XIP
173 bool
174
Paulius Zaleckas60a752e2008-06-25 13:33:14 +0100175config GENERIC_HARDIRQS_NO__DO_IRQ
Paulius Zaleckas60a752e2008-06-25 13:33:14 +0100176 def_bool y
177
Kukjin Kimd6d502f2010-02-22 00:02:59 +0100178config ARM_L1_CACHE_SHIFT_6
179 bool
180 help
181 Setting ARM L1 cache line size to 64 Bytes.
182
Mathieu Desnoyersc0ffa3a2008-02-02 15:10:32 -0500183if OPROFILE
184
185config OPROFILE_ARMV6
186 def_bool y
187 depends on CPU_V6 && !SMP
188 select OPROFILE_ARM11_CORE
189
190config OPROFILE_MPCORE
191 def_bool y
192 depends on CPU_V6 && SMP
193 select OPROFILE_ARM11_CORE
194
195config OPROFILE_ARM11_CORE
196 bool
197
Jean PIHETd7ac4e22008-08-12 19:07:39 +0100198config OPROFILE_ARMV7
199 def_bool y
200 depends on CPU_V7 && !SMP
201 bool
202
Mathieu Desnoyersc0ffa3a2008-02-02 15:10:32 -0500203endif
204
Hyok S. Choic760fc12006-03-27 15:18:50 +0100205config VECTORS_BASE
206 hex
Hyok S. Choi6afd6fa2006-09-28 21:46:34 +0900207 default 0xffff0000 if MMU || CPU_HIGH_VECTOR
Hyok S. Choic760fc12006-03-27 15:18:50 +0100208 default DRAM_BASE if REMAP_VECTORS_TO_RAM
209 default 0x00000000
210 help
211 The base address of exception vectors.
212
Linus Torvalds1da177e2005-04-16 15:20:36 -0700213source "init/Kconfig"
214
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700215source "kernel/Kconfig.freezer"
216
Linus Torvalds1da177e2005-04-16 15:20:36 -0700217menu "System Type"
218
Hyok S. Choi3c427972009-07-24 12:35:00 +0100219config MMU
220 bool "MMU-based Paged Memory Management Support"
221 default y
222 help
223 Select if you want MMU-based virtualised addressing space
224 support by paged memory management. If unsure, say 'Y'.
225
Russell Kingccf50e22010-03-15 19:03:06 +0000226#
227# The "ARM system type" choice list is ordered alphabetically by option
228# text. Please add new entries in the option alphabetic order.
229#
Linus Torvalds1da177e2005-04-16 15:20:36 -0700230choice
231 prompt "ARM system type"
Catalin Marinas6a0e2432006-03-07 14:42:27 +0000232 default ARCH_VERSATILE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700233
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100234config ARCH_AAEC2000
235 bool "Agilent AAEC-2000 based"
Russell Kingc7508152008-10-26 10:55:14 +0000236 select CPU_ARM920T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100237 select ARM_AMBA
David Brownell9483a572008-07-23 21:26:48 -0700238 select HAVE_CLK
John Stultz5cfc8ee2010-03-24 00:22:36 +0000239 select ARCH_USES_GETTIMEOFFSET
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100240 help
241 This enables support for systems based on the Agilent AAEC-2000
242
243config ARCH_INTEGRATOR
244 bool "ARM Ltd. Integrator family"
245 select ARM_AMBA
Ben Dooks89c52ed2009-07-30 23:23:24 +0100246 select ARCH_HAS_CPUFREQ
Russell Kingd72fbdf2008-11-08 20:08:08 +0000247 select COMMON_CLKDEV
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100248 select ICST525
249 help
250 Support for ARM's Integrator platform.
251
252config ARCH_REALVIEW
253 bool "ARM Ltd. RealView family"
254 select ARM_AMBA
Russell Kingcf30fb42008-11-08 20:05:55 +0000255 select COMMON_CLKDEV
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100256 select ICST307
Catalin Marinas85802af2008-02-04 17:24:54 +0100257 select GENERIC_TIME
Catalin Marinasae30cea2008-02-04 17:26:55 +0100258 select GENERIC_CLOCKEVENTS
Russell Kingeb7fffa2009-07-05 22:41:31 +0100259 select ARCH_WANT_OPTIONAL_GPIOLIB
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100260 help
261 This enables support for ARM Ltd RealView boards.
262
263config ARCH_VERSATILE
264 bool "ARM Ltd. Versatile family"
265 select ARM_AMBA
266 select ARM_VIC
Russell King71a06da2008-11-08 20:13:53 +0000267 select COMMON_CLKDEV
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100268 select ICST307
Kevin Hilmanb49c87c2007-03-08 20:25:13 +0100269 select GENERIC_TIME
Kevin Hilman89df1272007-03-08 20:30:38 +0100270 select GENERIC_CLOCKEVENTS
Russell Kingbbeddc42009-07-05 22:43:01 +0100271 select ARCH_WANT_OPTIONAL_GPIOLIB
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100272 help
273 This enables support for ARM Ltd Versatile board.
274
Andrew Victor8fc5ffa2006-06-29 16:06:33 +0100275config ARCH_AT91
276 bool "Atmel AT91"
David Brownell0a938b92007-03-05 00:30:18 -0800277 select GENERIC_GPIO
Ryan Mallonf373e8c2009-02-10 21:02:08 +0100278 select ARCH_REQUIRE_GPIOLIB
David Brownell93686ae2008-07-28 15:46:22 -0700279 select HAVE_CLK
John Stultz5cfc8ee2010-03-24 00:22:36 +0000280 select ARCH_USES_GETTIMEOFFSET
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100281 help
Andrew Victor2b3b3512008-01-24 15:10:39 +0100282 This enables support for systems based on the Atmel AT91RM9200,
283 AT91SAM9 and AT91CAP9 processors.
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100284
Russell Kingccf50e22010-03-15 19:03:06 +0000285config ARCH_BCMRING
286 bool "Broadcom BCMRING"
287 depends on MMU
288 select CPU_V6
289 select ARM_AMBA
290 select COMMON_CLKDEV
291 select GENERIC_TIME
292 select GENERIC_CLOCKEVENTS
293 select ARCH_WANT_OPTIONAL_GPIOLIB
294 help
295 Support for Broadcom's BCMRing platform.
296
Linus Torvalds1da177e2005-04-16 15:20:36 -0700297config ARCH_CLPS711X
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100298 bool "Cirrus Logic CLPS711x/EP721x-based"
Russell Kingc7508152008-10-26 10:55:14 +0000299 select CPU_ARM720T
John Stultz5cfc8ee2010-03-24 00:22:36 +0000300 select ARCH_USES_GETTIMEOFFSET
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000301 help
302 Support for Cirrus Logic 711x/721x based boards.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700303
Russell King788c9702009-04-26 14:21:59 +0100304config ARCH_GEMINI
305 bool "Cortina Systems Gemini"
306 select CPU_FA526
307 select GENERIC_GPIO
308 select ARCH_REQUIRE_GPIOLIB
John Stultz5cfc8ee2010-03-24 00:22:36 +0000309 select ARCH_USES_GETTIMEOFFSET
Russell King788c9702009-04-26 14:21:59 +0100310 help
311 Support for the Cortina Systems Gemini family SoCs
312
Linus Torvalds1da177e2005-04-16 15:20:36 -0700313config ARCH_EBSA110
314 bool "EBSA-110"
Russell Kingc7508152008-10-26 10:55:14 +0000315 select CPU_SA110
Russell Kingf7e68bb2005-05-05 14:49:01 +0100316 select ISA
Russell Kingc5eb2a22007-03-03 11:54:19 +0000317 select NO_IOPORT
John Stultz5cfc8ee2010-03-24 00:22:36 +0000318 select ARCH_USES_GETTIMEOFFSET
Linus Torvalds1da177e2005-04-16 15:20:36 -0700319 help
320 This is an evaluation board for the StrongARM processor available
Martin Michlmayrf6c89652006-02-08 21:09:07 +0000321 from Digital. It has limited hardware on-board, including an
Linus Torvalds1da177e2005-04-16 15:20:36 -0700322 Ethernet interface, two PCMCIA sockets, two serial ports and a
323 parallel port.
324
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000325config ARCH_EP93XX
326 bool "EP93xx-based"
Russell Kingc7508152008-10-26 10:55:14 +0000327 select CPU_ARM920T
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000328 select ARM_AMBA
329 select ARM_VIC
Herbert Valerio Riedel4e9f9fd2007-11-26 18:41:02 +0100330 select GENERIC_GPIO
Russell Kingae696fd2008-11-30 17:11:49 +0000331 select COMMON_CLKDEV
Michael Buesch7444a722008-07-25 01:46:11 -0700332 select ARCH_REQUIRE_GPIOLIB
Mel Gormaneb335752009-05-13 17:34:48 +0100333 select ARCH_HAS_HOLES_MEMORYMODEL
John Stultz5cfc8ee2010-03-24 00:22:36 +0000334 select ARCH_USES_GETTIMEOFFSET
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000335 help
336 This enables support for the Cirrus EP93xx series of CPUs.
337
Linus Torvalds1da177e2005-04-16 15:20:36 -0700338config ARCH_FOOTBRIDGE
339 bool "FootBridge"
Russell Kingc7508152008-10-26 10:55:14 +0000340 select CPU_SA110
Linus Torvalds1da177e2005-04-16 15:20:36 -0700341 select FOOTBRIDGE
John Stultz5cfc8ee2010-03-24 00:22:36 +0000342 select ARCH_USES_GETTIMEOFFSET
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000343 help
344 Support for systems based on the DC21285 companion chip
345 ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700346
Russell King788c9702009-04-26 14:21:59 +0100347config ARCH_MXC
348 bool "Freescale MXC/iMX-based"
349 select GENERIC_TIME
350 select GENERIC_CLOCKEVENTS
Russell King788c9702009-04-26 14:21:59 +0100351 select ARCH_REQUIRE_GPIOLIB
Uwe Kleine-König03e09cd2010-02-15 17:10:42 +0100352 select COMMON_CLKDEV
Russell King788c9702009-04-26 14:21:59 +0100353 help
354 Support for Freescale MXC/iMX-based family of processors
355
dmitry pervushin7bd0f2f2009-04-27 10:35:04 +0100356config ARCH_STMP3XXX
357 bool "Freescale STMP3xxx"
358 select CPU_ARM926T
dmitry pervushin7bd0f2f2009-04-27 10:35:04 +0100359 select COMMON_CLKDEV
360 select ARCH_REQUIRE_GPIOLIB
361 select GENERIC_TIME
362 select GENERIC_CLOCKEVENTS
363 select GENERIC_GPIO
364 select USB_ARCH_HAS_EHCI
365 help
366 Support for systems based on the Freescale 3xxx CPUs.
367
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100368config ARCH_NETX
369 bool "Hilscher NetX based"
Russell Kingc7508152008-10-26 10:55:14 +0000370 select CPU_ARM926T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100371 select ARM_VIC
Uwe Kleine-König2fcfe6b2008-12-09 21:57:24 +0100372 select GENERIC_CLOCKEVENTS
Uwe Kleine-König21edecd2008-12-09 21:57:23 +0100373 select GENERIC_TIME
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000374 help
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100375 This enables support for systems based on the Hilscher NetX Soc
376
377config ARCH_H720X
378 bool "Hynix HMS720x-based"
Russell Kingc7508152008-10-26 10:55:14 +0000379 select CPU_ARM720T
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100380 select ISA_DMA_API
John Stultz5cfc8ee2010-03-24 00:22:36 +0000381 select ARCH_USES_GETTIMEOFFSET
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100382 help
383 This enables support for systems based on the Hynix HMS720x
384
Russell King3b938be2007-05-12 11:25:44 +0100385config ARCH_IOP13XX
386 bool "IOP13xx-based"
387 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000388 select CPU_XSC3
Russell King3b938be2007-05-12 11:25:44 +0100389 select PLAT_IOP
390 select PCI
391 select ARCH_SUPPORTS_MSI
Lennert Buytenhek8d5796d2008-08-25 21:03:32 +0100392 select VMSPLIT_1G
Russell King3b938be2007-05-12 11:25:44 +0100393 help
394 Support for Intel's IOP13XX (XScale) family of processors.
395
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100396config ARCH_IOP32X
397 bool "IOP32x-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100398 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000399 select CPU_XSCALE
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100400 select PLAT_IOP
Russell Kingf7e68bb2005-05-05 14:49:01 +0100401 select PCI
Arnaud Patard63f385c2008-07-08 23:07:48 +0100402 select GENERIC_GPIO
Russell Kingbb2b1802008-07-26 15:36:03 +0100403 select ARCH_REQUIRE_GPIOLIB
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000404 help
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100405 Support for Intel's 80219 and IOP32X (XScale) family of
406 processors.
407
408config ARCH_IOP33X
409 bool "IOP33x-based"
410 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000411 select CPU_XSCALE
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100412 select PLAT_IOP
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100413 select PCI
Arnaud Patard63f385c2008-07-08 23:07:48 +0100414 select GENERIC_GPIO
Russell Kingbb2b1802008-07-26 15:36:03 +0100415 select ARCH_REQUIRE_GPIOLIB
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100416 help
417 Support for Intel's IOP33X (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700418
Russell King3b938be2007-05-12 11:25:44 +0100419config ARCH_IXP23XX
420 bool "IXP23XX-based"
Dan Williams588ef762007-02-13 17:12:04 +0100421 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000422 select CPU_XSC3
Russell King3b938be2007-05-12 11:25:44 +0100423 select PCI
John Stultz5cfc8ee2010-03-24 00:22:36 +0000424 select ARCH_USES_GETTIMEOFFSET
Dan Williams285f5fa2006-12-07 02:59:39 +0100425 help
Russell King3b938be2007-05-12 11:25:44 +0100426 Support for Intel's IXP23xx (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700427
428config ARCH_IXP2000
429 bool "IXP2400/2800-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100430 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000431 select CPU_XSCALE
Russell Kingf7e68bb2005-05-05 14:49:01 +0100432 select PCI
John Stultz5cfc8ee2010-03-24 00:22:36 +0000433 select ARCH_USES_GETTIMEOFFSET
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000434 help
435 Support for Intel's IXP2400/2800 (XScale) family of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700436
Russell King3b938be2007-05-12 11:25:44 +0100437config ARCH_IXP4XX
438 bool "IXP4xx-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100439 depends on MMU
Russell Kingc7508152008-10-26 10:55:14 +0000440 select CPU_XSCALE
Milan Svoboda8858e9a2007-05-14 07:50:42 +0100441 select GENERIC_GPIO
Russell King3b938be2007-05-12 11:25:44 +0100442 select GENERIC_TIME
443 select GENERIC_CLOCKEVENTS
Russell King485bdde2008-10-17 14:00:43 +0100444 select DMABOUNCE if PCI
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100445 help
Russell King3b938be2007-05-12 11:25:44 +0100446 Support for Intel's IXP4XX (XScale) family of processors.
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100447
Linus Torvalds1da177e2005-04-16 15:20:36 -0700448config ARCH_L7200
449 bool "LinkUp-L7200"
Russell Kingc7508152008-10-26 10:55:14 +0000450 select CPU_ARM720T
Linus Torvalds1da177e2005-04-16 15:20:36 -0700451 select FIQ
John Stultz5cfc8ee2010-03-24 00:22:36 +0000452 select ARCH_USES_GETTIMEOFFSET
Linus Torvalds1da177e2005-04-16 15:20:36 -0700453 help
454 Say Y here if you intend to run this kernel on a LinkUp Systems
455 L7200 Software Development Board which uses an ARM720T processor.
456 Information on this board can be obtained at:
457
458 <http://www.linkupsys.com/>
459
460 If you have any questions or comments about the Linux kernel port
461 to this board, send e-mail to <sjhill@cotw.com>.
462
Saeed Bisharaedabd382009-08-06 15:12:43 +0300463config ARCH_DOVE
464 bool "Marvell Dove"
465 select PCI
466 select GENERIC_GPIO
467 select ARCH_REQUIRE_GPIOLIB
468 select GENERIC_TIME
469 select GENERIC_CLOCKEVENTS
470 select PLAT_ORION
471 help
472 Support for the Marvell Dove SoC 88AP510
473
Saeed Bishara651c74c2008-06-22 22:45:06 +0200474config ARCH_KIRKWOOD
475 bool "Marvell Kirkwood"
Russell Kingc7508152008-10-26 10:55:14 +0000476 select CPU_FEROCEON
Saeed Bishara651c74c2008-06-22 22:45:06 +0200477 select PCI
Lennert Buytenhek4c213432008-10-20 01:51:04 +0200478 select GENERIC_GPIO
Erik Benadaa8865652009-05-28 17:08:55 -0700479 select ARCH_REQUIRE_GPIOLIB
Saeed Bishara651c74c2008-06-22 22:45:06 +0200480 select GENERIC_TIME
481 select GENERIC_CLOCKEVENTS
482 select PLAT_ORION
483 help
484 Support for the following Marvell Kirkwood series SoCs:
485 88F6180, 88F6192 and 88F6281.
486
Russell King788c9702009-04-26 14:21:59 +0100487config ARCH_LOKI
488 bool "Marvell Loki (88RC8480)"
489 select CPU_FEROCEON
490 select GENERIC_TIME
491 select GENERIC_CLOCKEVENTS
492 select PLAT_ORION
493 help
494 Support for the Marvell Loki (88RC8480) SoC.
495
496config ARCH_MV78XX0
497 bool "Marvell MV78xx0"
498 select CPU_FEROCEON
499 select PCI
500 select GENERIC_GPIO
Erik Benadaa8865652009-05-28 17:08:55 -0700501 select ARCH_REQUIRE_GPIOLIB
Russell King788c9702009-04-26 14:21:59 +0100502 select GENERIC_TIME
503 select GENERIC_CLOCKEVENTS
504 select PLAT_ORION
505 help
506 Support for the following Marvell MV78xx0 series SoCs:
507 MV781x0, MV782x0.
508
509config ARCH_ORION5X
510 bool "Marvell Orion"
511 depends on MMU
512 select CPU_FEROCEON
513 select PCI
514 select GENERIC_GPIO
Erik Benadaa8865652009-05-28 17:08:55 -0700515 select ARCH_REQUIRE_GPIOLIB
Russell King788c9702009-04-26 14:21:59 +0100516 select GENERIC_TIME
517 select GENERIC_CLOCKEVENTS
518 select PLAT_ORION
519 help
520 Support for the following Marvell Orion 5x series SoCs:
521 Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
522 Orion-2 (5281), Orion-1-90 (6183).
523
524config ARCH_MMP
Haojian Zhuang2f7e8fa2009-12-04 09:41:28 -0500525 bool "Marvell PXA168/910/MMP2"
Russell King788c9702009-04-26 14:21:59 +0100526 depends on MMU
527 select GENERIC_GPIO
528 select ARCH_REQUIRE_GPIOLIB
Russell King788c9702009-04-26 14:21:59 +0100529 select COMMON_CLKDEV
530 select GENERIC_TIME
531 select GENERIC_CLOCKEVENTS
532 select TICK_ONESHOT
533 select PLAT_PXA
534 help
Haojian Zhuang2f7e8fa2009-12-04 09:41:28 -0500535 Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.
Russell King788c9702009-04-26 14:21:59 +0100536
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100537config ARCH_KS8695
538 bool "Micrel/Kendin KS8695"
Russell Kingc7508152008-10-26 10:55:14 +0000539 select CPU_ARM922T
Andrew Victor8a87a992007-05-14 14:30:15 +0100540 select GENERIC_GPIO
Daniel Silverstone72880ad2008-12-13 20:44:12 +0000541 select ARCH_REQUIRE_GPIOLIB
John Stultz5cfc8ee2010-03-24 00:22:36 +0000542 select ARCH_USES_GETTIMEOFFSET
Andrew Victorc53c9cf2007-05-11 21:01:28 +0100543 help
544 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
545 System-on-Chip devices.
546
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100547config ARCH_NS9XXX
548 bool "NetSilicon NS9xxx"
Russell Kingc7508152008-10-26 10:55:14 +0000549 select CPU_ARM926T
Uwe Kleine-König689f2a02007-09-30 20:35:09 +0100550 select GENERIC_GPIO
Uwe Kleine-Königcef59752007-09-30 20:35:48 +0100551 select GENERIC_TIME
Uwe Kleine-Königc0bb87f2007-09-30 20:36:00 +0100552 select GENERIC_CLOCKEVENTS
David Brownell9483a572008-07-23 21:26:48 -0700553 select HAVE_CLK
Uwe Kleine-König9918cda2007-02-16 15:36:55 +0100554 help
555 Say Y here if you intend to run this kernel on a NetSilicon NS9xxx
556 System.
557
558 <http://www.digi.com/products/microprocessors/index.jsp>
559
Russell King788c9702009-04-26 14:21:59 +0100560config ARCH_W90X900
561 bool "Nuvoton W90X900 CPU"
562 select CPU_ARM926T
wanzongshunc52d3d62009-06-10 15:49:32 +0100563 select ARCH_REQUIRE_GPIOLIB
564 select GENERIC_GPIO
wanzongshun0e4a34b2009-06-10 15:50:44 +0100565 select COMMON_CLKDEV
wanzongshun58b53692009-08-14 15:36:44 +0100566 select GENERIC_TIME
567 select GENERIC_CLOCKEVENTS
Lennert Buytenhek777f9be2008-06-22 22:45:02 +0200568 help
wanzongshuna8bc4ea2009-08-14 15:38:29 +0100569 Support for Nuvoton (Winbond logic dept.) ARM9 processor,
570 At present, the w90x900 has been renamed nuc900, regarding
571 the ARM series product line, you can login the following
572 link address to know more.
573
574 <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/
575 ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller>
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400576
wanzongshuna62e9032009-12-31 15:06:05 +0100577config ARCH_NUC93X
578 bool "Nuvoton NUC93X CPU"
579 select CPU_ARM926T
wanzongshuna62e9032009-12-31 15:06:05 +0100580 select COMMON_CLKDEV
581 help
582 Support for Nuvoton (Winbond logic dept.) NUC93X MCU,The NUC93X is a
583 low-power and high performance MPEG-4/JPEG multimedia controller chip.
584
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100585config ARCH_PNX4008
586 bool "Philips Nexperia PNX4008 Mobile"
Russell Kingc7508152008-10-26 10:55:14 +0000587 select CPU_ARM926T
Russell King6985a5a2009-11-20 10:32:41 +0000588 select COMMON_CLKDEV
John Stultz5cfc8ee2010-03-24 00:22:36 +0000589 select ARCH_USES_GETTIMEOFFSET
Deepak Saxena4af6fee2006-06-20 21:30:44 +0100590 help
591 This enables support for Philips PNX4008 mobile platform.
592
Linus Torvalds1da177e2005-04-16 15:20:36 -0700593config ARCH_PXA
eric miao2c8086a2007-09-11 19:13:17 -0700594 bool "PXA2xx/PXA3xx-based"
Russell Kinga4f7e762006-06-28 12:52:41 +0100595 depends on MMU
Al Viro034d2f52005-12-19 16:27:59 -0500596 select ARCH_MTD_XIP
Ben Dooks89c52ed2009-07-30 23:23:24 +0100597 select ARCH_HAS_CPUFREQ
David Brownell0a938b92007-03-05 00:30:18 -0800598 select GENERIC_GPIO
Russell King8c3abc72008-11-08 20:25:21 +0000599 select COMMON_CLKDEV
Michael Buesch7444a722008-07-25 01:46:11 -0700600 select ARCH_REQUIRE_GPIOLIB
Nicolas Pitre45cf5ee2007-02-05 22:37:07 +0100601 select GENERIC_TIME
Eric Miao981d0f32007-07-24 01:22:43 +0100602 select GENERIC_CLOCKEVENTS
Russell Kinga88264c2007-11-12 22:45:16 +0000603 select TICK_ONESHOT
Eric Miaobd5ce432009-01-20 12:06:01 +0800604 select PLAT_PXA
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000605 help
eric miao2c8086a2007-09-11 19:13:17 -0700606 Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700607
Russell King788c9702009-04-26 14:21:59 +0100608config ARCH_MSM
609 bool "Qualcomm MSM"
610 select CPU_V6
Eric Miao49cbe782009-01-20 14:15:18 +0800611 select GENERIC_TIME
612 select GENERIC_CLOCKEVENTS
Eric Miao49cbe782009-01-20 14:15:18 +0800613 help
Russell King788c9702009-04-26 14:21:59 +0100614 Support for Qualcomm MSM7K based systems. This runs on the ARM11
615 apps processor of the MSM7K and depends on a shared memory
616 interface to the ARM9 modem processor which runs the baseband stack
617 and controls some vital subsystems (clock and power control, etc).
Eric Miao49cbe782009-01-20 14:15:18 +0800618
Magnus Dammc793c1b2010-02-05 11:14:49 +0000619config ARCH_SHMOBILE
620 bool "Renesas SH-Mobile"
621 help
622 Support for Renesas's SH-Mobile ARM platforms
623
Linus Torvalds1da177e2005-04-16 15:20:36 -0700624config ARCH_RPC
625 bool "RiscPC"
626 select ARCH_ACORN
627 select FIQ
628 select TIMER_ACORN
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100629 select ARCH_MAY_HAVE_PC_FDC
Ben Dooks341eb782008-07-01 14:16:49 +0100630 select HAVE_PATA_PLATFORM
Russell King065909b2006-01-04 15:44:16 +0000631 select ISA_DMA_API
Al Viro5ea81762007-02-11 15:41:31 +0000632 select NO_IOPORT
Russell King07f841b2008-10-01 17:11:06 +0100633 select ARCH_SPARSEMEM_ENABLE
John Stultz5cfc8ee2010-03-24 00:22:36 +0000634 select ARCH_USES_GETTIMEOFFSET
Linus Torvalds1da177e2005-04-16 15:20:36 -0700635 help
636 On the Acorn Risc-PC, Linux can support the internal IDE disk and
637 CD-ROM interface, serial and parallel port, and the floppy drive.
638
639config ARCH_SA1100
640 bool "SA1100-based"
Russell Kingc7508152008-10-26 10:55:14 +0000641 select CPU_SA1100
Russell Kingf7e68bb2005-05-05 14:49:01 +0100642 select ISA
Russell King05944d72006-11-30 20:43:51 +0000643 select ARCH_SPARSEMEM_ENABLE
Al Viro034d2f52005-12-19 16:27:59 -0500644 select ARCH_MTD_XIP
Ben Dooks89c52ed2009-07-30 23:23:24 +0100645 select ARCH_HAS_CPUFREQ
Russell King1937f5b2009-12-12 16:20:57 +0000646 select CPU_FREQ
David Brownell0a938b92007-03-05 00:30:18 -0800647 select GENERIC_GPIO
Russell Kingd142b6e2007-11-12 21:55:12 +0000648 select GENERIC_TIME
Russell King3e238be2008-04-14 23:03:10 +0100649 select GENERIC_CLOCKEVENTS
David Brownell9483a572008-07-23 21:26:48 -0700650 select HAVE_CLK
Russell King3e238be2008-04-14 23:03:10 +0100651 select TICK_ONESHOT
Michael Buesch7444a722008-07-25 01:46:11 -0700652 select ARCH_REQUIRE_GPIOLIB
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000653 help
654 Support for StrongARM 11x0 based boards.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700655
656config ARCH_S3C2410
Ben Dookse4d06e32007-02-16 12:12:31 +0100657 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
David Brownell0a938b92007-03-05 00:30:18 -0800658 select GENERIC_GPIO
Ben Dooks9d56c022009-07-30 23:23:25 +0100659 select ARCH_HAS_CPUFREQ
David Brownell9483a572008-07-23 21:26:48 -0700660 select HAVE_CLK
John Stultz5cfc8ee2010-03-24 00:22:36 +0000661 select ARCH_USES_GETTIMEOFFSET
Linus Torvalds1da177e2005-04-16 15:20:36 -0700662 help
663 Samsung S3C2410X CPU based systems, such as the Simtec Electronics
664 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
Martin Michlmayrf6c89652006-02-08 21:09:07 +0000665 the Samsung SMDK2410 development board (and derivatives).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700666
Ben Dooksa08ab632008-10-21 14:06:39 +0100667config ARCH_S3C64XX
668 bool "Samsung S3C64XX"
Ben Dooks89f1fa02010-01-29 09:02:17 +0000669 select PLAT_SAMSUNG
Ben Dooks89f0ce72010-01-26 15:49:15 +0900670 select CPU_V6
Ben Dooksa08ab632008-10-21 14:06:39 +0100671 select GENERIC_GPIO
Ben Dooks89f0ce72010-01-26 15:49:15 +0900672 select ARM_VIC
Ben Dooksa08ab632008-10-21 14:06:39 +0100673 select HAVE_CLK
Ben Dooks89f0ce72010-01-26 15:49:15 +0900674 select NO_IOPORT
John Stultz5cfc8ee2010-03-24 00:22:36 +0000675 select ARCH_USES_GETTIMEOFFSET
Ben Dooks89c52ed2009-07-30 23:23:24 +0100676 select ARCH_HAS_CPUFREQ
Ben Dooks89f0ce72010-01-26 15:49:15 +0900677 select ARCH_REQUIRE_GPIOLIB
678 select SAMSUNG_CLKSRC
679 select SAMSUNG_IRQ_VIC_TIMER
680 select SAMSUNG_IRQ_UART
681 select S3C_GPIO_TRACK
682 select S3C_GPIO_PULL_UPDOWN
683 select S3C_GPIO_CFG_S3C24XX
684 select S3C_GPIO_CFG_S3C64XX
685 select S3C_DEV_NAND
686 select USB_ARCH_HAS_OHCI
687 select SAMSUNG_GPIOLIB_4BIT
Ben Dooksa08ab632008-10-21 14:06:39 +0100688 help
689 Samsung S3C64XX series based systems
690
Kukjin Kimc4ffccd2010-01-14 08:19:36 +0900691config ARCH_S5P6440
692 bool "Samsung S5P6440"
693 select CPU_V6
694 select GENERIC_GPIO
695 select HAVE_CLK
696 help
697 Samsung S5P6440 CPU based systems
698
Kukjin Kim550db7f2010-01-29 10:19:26 +0900699config ARCH_S5P6442
700 bool "Samsung S5P6442"
701 select CPU_V6
702 select GENERIC_GPIO
703 select HAVE_CLK
704 help
705 Samsung S5P6442 CPU based systems
706
Byungho Min5a7652f2009-06-23 21:39:42 +0900707config ARCH_S5PC1XX
708 bool "Samsung S5PC1XX"
709 select GENERIC_GPIO
710 select HAVE_CLK
711 select CPU_V7
Kukjin Kimd6d502f2010-02-22 00:02:59 +0100712 select ARM_L1_CACHE_SHIFT_6
Byungho Min5a7652f2009-06-23 21:39:42 +0900713 help
714 Samsung S5PC1XX series based systems
715
Kukjin Kim170f4e42010-02-24 16:40:44 +0900716config ARCH_S5PV210
717 bool "Samsung S5PV210/S5PC110"
718 select CPU_V7
719 select GENERIC_GPIO
720 select HAVE_CLK
721 select ARM_L1_CACHE_SHIFT_6
722 help
723 Samsung S5PV210/S5PC110 series based systems
724
Linus Torvalds1da177e2005-04-16 15:20:36 -0700725config ARCH_SHARK
726 bool "Shark"
Russell Kingc7508152008-10-26 10:55:14 +0000727 select CPU_SA110
Russell Kingf7e68bb2005-05-05 14:49:01 +0100728 select ISA
729 select ISA_DMA
Nicolas Pitre3bca1032008-10-07 20:14:55 +0100730 select ZONE_DMA
Russell Kingf7e68bb2005-05-05 14:49:01 +0100731 select PCI
John Stultz5cfc8ee2010-03-24 00:22:36 +0000732 select ARCH_USES_GETTIMEOFFSET
Martin Michlmayrf999b8b2006-02-08 21:09:05 +0000733 help
734 Support for the StrongARM based Digital DNARD machine, also known
735 as "Shark" (<http://www.shark-linux.de/shark.html>).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700736
737config ARCH_LH7A40X
738 bool "Sharp LH7A40X"
Russell Kingc7508152008-10-26 10:55:14 +0000739 select CPU_ARM922T
Russell King4ba3f7c2008-10-01 21:38:23 +0100740 select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM
741 select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM
John Stultz5cfc8ee2010-03-24 00:22:36 +0000742 select ARCH_USES_GETTIMEOFFSET
Linus Torvalds1da177e2005-04-16 15:20:36 -0700743 help
744 Say Y here for systems based on one of the Sharp LH7A40X
745 System on a Chip processors. These CPUs include an ARM922T
746 core with a wide array of integrated devices for
747 hand-held and low-power applications.
748
Linus Walleijd98aac72009-04-27 10:21:46 +0100749config ARCH_U300
750 bool "ST-Ericsson U300 Series"
751 depends on MMU
752 select CPU_ARM926T
Linus Walleijbc581772009-09-15 17:30:37 +0100753 select HAVE_TCM
Linus Walleijd98aac72009-04-27 10:21:46 +0100754 select ARM_AMBA
755 select ARM_VIC
756 select GENERIC_TIME
757 select GENERIC_CLOCKEVENTS
Linus Walleijd98aac72009-04-27 10:21:46 +0100758 select COMMON_CLKDEV
759 select GENERIC_GPIO
760 help
761 Support for ST-Ericsson U300 series mobile platforms.
762
Russell Kingccf50e22010-03-15 19:03:06 +0000763config ARCH_U8500
764 bool "ST-Ericsson U8500 Series"
765 select CPU_V7
766 select ARM_AMBA
767 select GENERIC_TIME
768 select GENERIC_CLOCKEVENTS
769 select COMMON_CLKDEV
770 help
771 Support for ST-Ericsson's Ux500 architecture
772
773config ARCH_NOMADIK
774 bool "STMicroelectronics Nomadik"
775 select ARM_AMBA
776 select ARM_VIC
777 select CPU_ARM926T
Russell Kingccf50e22010-03-15 19:03:06 +0000778 select COMMON_CLKDEV
779 select GENERIC_TIME
780 select GENERIC_CLOCKEVENTS
781 select GENERIC_GPIO
782 select ARCH_REQUIRE_GPIOLIB
783 help
784 Support for the Nomadik platform by ST-Ericsson
785
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100786config ARCH_DAVINCI
787 bool "TI DaVinci"
Russell Kingc7508152008-10-26 10:55:14 +0000788 select CPU_ARM926T
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100789 select GENERIC_TIME
790 select GENERIC_CLOCKEVENTS
Vladimir Barinov3d9edf02007-07-10 13:03:43 +0100791 select GENERIC_GPIO
David Brownelldce11152008-09-07 23:41:04 -0700792 select ARCH_REQUIRE_GPIOLIB
Nicolas Pitre3bca1032008-10-07 20:14:55 +0100793 select ZONE_DMA
Kevin Hilman9232fcc2009-04-08 14:49:38 -0700794 select HAVE_IDE
Kevin Hilmanc5b736d2009-03-20 17:29:01 -0700795 select COMMON_CLKDEV
David Brownell20e99692009-05-07 09:31:42 -0700796 select GENERIC_ALLOCATOR
Sekhar Noriae88e052009-11-19 15:34:01 +0530797 select ARCH_HAS_HOLES_MEMORYMODEL
Kevin Hilman7c6337e2007-04-30 19:37:19 +0100798 help
799 Support for TI's DaVinci platform.
800
Russell King3b938be2007-05-12 11:25:44 +0100801config ARCH_OMAP
802 bool "TI OMAP"
803 select GENERIC_GPIO
David Brownell9483a572008-07-23 21:26:48 -0700804 select HAVE_CLK
Michael Buesch7444a722008-07-25 01:46:11 -0700805 select ARCH_REQUIRE_GPIOLIB
Ben Dooks89c52ed2009-07-30 23:23:24 +0100806 select ARCH_HAS_CPUFREQ
Russell King3b938be2007-05-12 11:25:44 +0100807 select GENERIC_TIME
Kevin Hilman06cad092007-10-18 23:04:43 -0700808 select GENERIC_CLOCKEVENTS
Sriram9af915d2010-01-29 14:20:05 -0800809 select ARCH_HAS_HOLES_MEMORYMODEL
Russell King3b938be2007-05-12 11:25:44 +0100810 help
811 Support for TI's OMAP platform (OMAP1 and OMAP2).
812
Linus Torvalds1da177e2005-04-16 15:20:36 -0700813endchoice
814
Russell Kingccf50e22010-03-15 19:03:06 +0000815#
816# This is sorted alphabetically by mach-* pathname. However, plat-*
817# Kconfigs may be included either alphabetically (according to the
818# plat- suffix) or along side the corresponding mach-* source.
819#
Russell King95b8f202010-01-14 11:43:54 +0000820source "arch/arm/mach-aaec2000/Kconfig"
821
822source "arch/arm/mach-at91/Kconfig"
823
824source "arch/arm/mach-bcmring/Kconfig"
825
Linus Torvalds1da177e2005-04-16 15:20:36 -0700826source "arch/arm/mach-clps711x/Kconfig"
827
Russell King95b8f202010-01-14 11:43:54 +0000828source "arch/arm/mach-davinci/Kconfig"
829
830source "arch/arm/mach-dove/Kconfig"
831
Lennert Buytenheke7736d42006-03-20 17:10:13 +0000832source "arch/arm/mach-ep93xx/Kconfig"
833
Linus Torvalds1da177e2005-04-16 15:20:36 -0700834source "arch/arm/mach-footbridge/Kconfig"
835
Paulius Zaleckas59d3a192009-03-26 10:06:08 +0200836source "arch/arm/mach-gemini/Kconfig"
837
Russell King95b8f202010-01-14 11:43:54 +0000838source "arch/arm/mach-h720x/Kconfig"
839
Linus Torvalds1da177e2005-04-16 15:20:36 -0700840source "arch/arm/mach-integrator/Kconfig"
841
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +0100842source "arch/arm/mach-iop32x/Kconfig"
843
844source "arch/arm/mach-iop33x/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700845
Dan Williams285f5fa2006-12-07 02:59:39 +0100846source "arch/arm/mach-iop13xx/Kconfig"
847
Linus Torvalds1da177e2005-04-16 15:20:36 -0700848source "arch/arm/mach-ixp4xx/Kconfig"
849
850source "arch/arm/mach-ixp2000/Kconfig"
851
Lennert Buytenhekc4713072006-03-28 21:18:54 +0100852source "arch/arm/mach-ixp23xx/Kconfig"
853
Russell King95b8f202010-01-14 11:43:54 +0000854source "arch/arm/mach-kirkwood/Kconfig"
855
856source "arch/arm/mach-ks8695/Kconfig"
857
858source "arch/arm/mach-lh7a40x/Kconfig"
859
Lennert Buytenhek777f9be2008-06-22 22:45:02 +0200860source "arch/arm/mach-loki/Kconfig"
861
Russell King95b8f202010-01-14 11:43:54 +0000862source "arch/arm/mach-msm/Kconfig"
863
Stanislav Samsonov794d15b2008-06-22 22:45:10 +0200864source "arch/arm/mach-mv78xx0/Kconfig"
865
Russell King95b8f202010-01-14 11:43:54 +0000866source "arch/arm/plat-mxc/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700867
Russell King95b8f202010-01-14 11:43:54 +0000868source "arch/arm/mach-netx/Kconfig"
Eric Miao49cbe782009-01-20 14:15:18 +0800869
Russell King95b8f202010-01-14 11:43:54 +0000870source "arch/arm/mach-nomadik/Kconfig"
871source "arch/arm/plat-nomadik/Kconfig"
872
873source "arch/arm/mach-ns9xxx/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700874
Russell Kingd91a89102010-02-04 18:13:17 +0000875source "arch/arm/mach-nuc93x/Kconfig"
876
Tony Lindgrend48af152005-07-10 19:58:17 +0100877source "arch/arm/plat-omap/Kconfig"
878
879source "arch/arm/mach-omap1/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700880
Tony Lindgren1dbae812005-11-10 14:26:51 +0000881source "arch/arm/mach-omap2/Kconfig"
882
Lennert Buytenhek9dd0b192008-03-27 14:51:41 -0400883source "arch/arm/mach-orion5x/Kconfig"
Tzachi Perelstein585cf172007-10-23 15:14:41 -0400884
Russell King95b8f202010-01-14 11:43:54 +0000885source "arch/arm/mach-pxa/Kconfig"
886source "arch/arm/plat-pxa/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700887
Russell King95b8f202010-01-14 11:43:54 +0000888source "arch/arm/mach-mmp/Kconfig"
889
890source "arch/arm/mach-realview/Kconfig"
891
892source "arch/arm/mach-sa1100/Kconfig"
Saeed Bisharaedabd382009-08-06 15:12:43 +0300893
Ben Dookscf383672009-11-10 00:14:58 +0000894source "arch/arm/plat-samsung/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100895source "arch/arm/plat-s3c24xx/Kconfig"
Kukjin Kimc4ffccd2010-01-14 08:19:36 +0900896source "arch/arm/plat-s5p/Kconfig"
Byungho Min5a7652f2009-06-23 21:39:42 +0900897source "arch/arm/plat-s5pc1xx/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100898
899if ARCH_S3C2410
900source "arch/arm/mach-s3c2400/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700901source "arch/arm/mach-s3c2410/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100902source "arch/arm/mach-s3c2412/Kconfig"
903source "arch/arm/mach-s3c2440/Kconfig"
Ben Dookse4d06e32007-02-16 12:12:31 +0100904source "arch/arm/mach-s3c2443/Kconfig"
Ben Dooksa21765a2007-02-11 18:31:01 +0100905endif
Linus Torvalds1da177e2005-04-16 15:20:36 -0700906
Ben Dooksa08ab632008-10-21 14:06:39 +0100907if ARCH_S3C64XX
Ben Dooks431107e2010-01-26 10:11:04 +0900908source "arch/arm/mach-s3c64xx/Kconfig"
Ben Dooksa08ab632008-10-21 14:06:39 +0100909endif
910
Kukjin Kimc4ffccd2010-01-14 08:19:36 +0900911source "arch/arm/mach-s5p6440/Kconfig"
912
Kukjin Kim550db7f2010-01-29 10:19:26 +0900913source "arch/arm/mach-s5p6442/Kconfig"
dmitry pervushin7bd0f2f2009-04-27 10:35:04 +0100914
Byungho Min5a7652f2009-06-23 21:39:42 +0900915if ARCH_S5PC1XX
916source "arch/arm/mach-s5pc100/Kconfig"
917endif
918
Kukjin Kim170f4e42010-02-24 16:40:44 +0900919source "arch/arm/mach-s5pv210/Kconfig"
920
Russell King882d01f2010-03-02 23:40:15 +0000921source "arch/arm/mach-shmobile/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700922
Russell King882d01f2010-03-02 23:40:15 +0000923source "arch/arm/plat-stmp3xxx/Kconfig"
Brian Swetland9e73c842007-11-26 04:12:13 -0800924
Russell King95b8f202010-01-14 11:43:54 +0000925source "arch/arm/mach-u300/Kconfig"
Quinn Jensen52c543f2007-07-09 22:06:53 +0100926
Russell King95b8f202010-01-14 11:43:54 +0000927source "arch/arm/mach-ux500/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700928
929source "arch/arm/mach-versatile/Kconfig"
930
wanzongshun7ec80dd2008-12-03 03:55:38 +0100931source "arch/arm/mach-w90x900/Kconfig"
932
Linus Torvalds1da177e2005-04-16 15:20:36 -0700933# Definitions to make life easier
934config ARCH_ACORN
935 bool
936
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100937config PLAT_IOP
938 bool
Mikael Pettersson469d30442009-10-29 11:46:54 -0700939 select GENERIC_CLOCKEVENTS
Mikael Pettersson980f2292009-10-29 11:46:55 -0700940 select GENERIC_TIME
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +0100941
Lennert Buytenhek69b02f62008-03-27 14:51:39 -0400942config PLAT_ORION
943 bool
944
Eric Miaobd5ce432009-01-20 12:06:01 +0800945config PLAT_PXA
946 bool
947
Linus Torvalds1da177e2005-04-16 15:20:36 -0700948source arch/arm/mm/Kconfig
949
Lennert Buytenhekafe4b252006-12-03 18:51:14 +0100950config IWMMXT
951 bool "Enable iWMMXt support"
Eric Miao40305a52009-02-26 09:34:35 +0800952 depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK
953 default y if PXA27x || PXA3xx || ARCH_MMP
Lennert Buytenhekafe4b252006-12-03 18:51:14 +0100954 help
955 Enable support for iWMMXt context switching at run time if
956 running on a CPU that supports it.
957
Linus Torvalds1da177e2005-04-16 15:20:36 -0700958# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
959config XSCALE_PMU
960 bool
961 depends on CPU_XSCALE && !XSCALE_PMU_TIMER
962 default y
963
Jamie Iles0f4f0672010-02-02 20:23:15 +0100964config CPU_HAS_PMU
965 depends on CPU_V6 || CPU_V7 || XSCALE_PMU
966 default y
967 bool
968
Hyok S. Choi3b93e7b2006-06-22 11:48:56 +0100969if !MMU
970source "arch/arm/Kconfig-nommu"
971endif
972
Catalin Marinas9cba3cc2009-04-30 17:06:03 +0100973config ARM_ERRATA_411920
974 bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
975 depends on CPU_V6 && !SMP
976 help
977 Invalidation of the Instruction Cache operation can
978 fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
979 It does not affect the MPCore. This option enables the ARM Ltd.
980 recommended workaround.
981
Catalin Marinas7ce236f2009-04-30 17:06:09 +0100982config ARM_ERRATA_430973
983 bool "ARM errata: Stale prediction on replaced interworking branch"
984 depends on CPU_V7
985 help
986 This option enables the workaround for the 430973 Cortex-A8
987 (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb
988 interworking branch is replaced with another code sequence at the
989 same virtual address, whether due to self-modifying code or virtual
990 to physical address re-mapping, Cortex-A8 does not recover from the
991 stale interworking branch prediction. This results in Cortex-A8
992 executing the new code sequence in the incorrect ARM or Thumb state.
993 The workaround enables the BTB/BTAC operations by setting ACTLR.IBE
994 and also flushes the branch target cache at every context switch.
995 Note that setting specific bits in the ACTLR register may not be
996 available in non-secure mode.
997
Catalin Marinas855c5512009-04-30 17:06:15 +0100998config ARM_ERRATA_458693
999 bool "ARM errata: Processor deadlock when a false hazard is created"
1000 depends on CPU_V7
1001 help
1002 This option enables the workaround for the 458693 Cortex-A8 (r2p0)
1003 erratum. For very specific sequences of memory operations, it is
1004 possible for a hazard condition intended for a cache line to instead
1005 be incorrectly associated with a different cache line. This false
1006 hazard might then cause a processor deadlock. The workaround enables
1007 the L1 caching of the NEON accesses and disables the PLD instruction
1008 in the ACTLR register. Note that setting specific bits in the ACTLR
1009 register may not be available in non-secure mode.
1010
Catalin Marinas0516e462009-04-30 17:06:20 +01001011config ARM_ERRATA_460075
1012 bool "ARM errata: Data written to the L2 cache can be overwritten with stale data"
1013 depends on CPU_V7
1014 help
1015 This option enables the workaround for the 460075 Cortex-A8 (r2p0)
1016 erratum. Any asynchronous access to the L2 cache may encounter a
1017 situation in which recent store transactions to the L2 cache are lost
1018 and overwritten with stale memory contents from external memory. The
1019 workaround disables the write-allocate mode for the L2 cache via the
1020 ACTLR register. Note that setting specific bits in the ACTLR register
1021 may not be available in non-secure mode.
1022
Santosh Shilimkar9e655822010-02-04 19:42:42 +01001023config PL310_ERRATA_588369
1024 bool "Clean & Invalidate maintenance operations do not invalidate clean lines"
1025 depends on CACHE_L2X0 && ARCH_OMAP4
1026 help
1027 The PL310 L2 cache controller implements three types of Clean &
1028 Invalidate maintenance operations: by Physical Address
1029 (offset 0x7F0), by Index/Way (0x7F8) and by Way (0x7FC).
1030 They are architecturally defined to behave as the execution of a
1031 clean operation followed immediately by an invalidate operation,
1032 both performing to the same memory location. This functionality
1033 is not correctly implemented in PL310 as clean lines are not
1034 invalidated as a result of these operations. Note that this errata
1035 uses Texas Instrument's secure monitor api.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001036endmenu
1037
1038source "arch/arm/common/Kconfig"
1039
1040config FORCE_MAX_ZONEORDER
1041 int
1042 depends on SA1111
1043 default "9"
1044
1045menu "Bus support"
1046
1047config ARM_AMBA
1048 bool
1049
1050config ISA
1051 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001052 help
1053 Find out whether you have ISA slots on your motherboard. ISA is the
1054 name of a bus system, i.e. the way the CPU talks to the other stuff
1055 inside your box. Other bus systems are PCI, EISA, MicroChannel
1056 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
1057 newer boards don't support it. If you have ISA, say Y, otherwise N.
1058
Russell King065909b2006-01-04 15:44:16 +00001059# Select ISA DMA controller support
Linus Torvalds1da177e2005-04-16 15:20:36 -07001060config ISA_DMA
1061 bool
Russell King065909b2006-01-04 15:44:16 +00001062 select ISA_DMA_API
Linus Torvalds1da177e2005-04-16 15:20:36 -07001063
Russell King065909b2006-01-04 15:44:16 +00001064# Select ISA DMA interface
Al Viro5cae8412005-05-04 05:39:22 +01001065config ISA_DMA_API
1066 bool
Al Viro5cae8412005-05-04 05:39:22 +01001067
Linus Torvalds1da177e2005-04-16 15:20:36 -07001068config PCI
Mike Rapoporta0113a92007-11-25 08:55:34 +01001069 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE
Linus Torvalds1da177e2005-04-16 15:20:36 -07001070 help
1071 Find out whether you have a PCI motherboard. PCI is the name of a
1072 bus system, i.e. the way the CPU talks to the other stuff inside
1073 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
1074 VESA. If you have PCI, say Y, otherwise N.
1075
Matthew Wilcox36e23592007-07-10 10:54:40 -06001076config PCI_SYSCALL
1077 def_bool PCI
1078
Linus Torvalds1da177e2005-04-16 15:20:36 -07001079# Select the host bridge type
1080config PCI_HOST_VIA82C505
1081 bool
1082 depends on PCI && ARCH_SHARK
1083 default y
1084
Mike Rapoporta0113a92007-11-25 08:55:34 +01001085config PCI_HOST_ITE8152
1086 bool
1087 depends on PCI && MACH_ARMCORE
1088 default y
1089 select DMABOUNCE
1090
Linus Torvalds1da177e2005-04-16 15:20:36 -07001091source "drivers/pci/Kconfig"
1092
1093source "drivers/pcmcia/Kconfig"
1094
1095endmenu
1096
1097menu "Kernel Features"
1098
Kevin Hilman0567a0c2007-03-13 20:29:24 +01001099source "kernel/time/Kconfig"
1100
Linus Torvalds1da177e2005-04-16 15:20:36 -07001101config SMP
1102 bool "Symmetric Multi-Processing (EXPERIMENTAL)"
Russell King42578c82009-06-11 15:35:00 +01001103 depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\
Srinidhi Kasagar850265e2009-11-28 08:24:47 +01001104 MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500)
Russell Kingbc282482009-05-17 18:58:34 +01001105 depends on GENERIC_CLOCKEVENTS
Jens Axboef6dd9fa2008-06-10 20:48:30 +02001106 select USE_GENERIC_SMP_HELPERS
Srinidhi Kasagar850265e2009-11-28 08:24:47 +01001107 select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500)
Linus Torvalds1da177e2005-04-16 15:20:36 -07001108 help
1109 This enables support for systems with more than one CPU. If you have
1110 a system with only one CPU, like most personal computers, say N. If
1111 you have a system with more than one CPU, say Y.
1112
1113 If you say N here, the kernel will run on single and multiprocessor
1114 machines, but will use only one CPU of a multiprocessor machine. If
1115 you say Y here, the kernel will run on many, but not all, single
1116 processor machines. On a single processor machine, the kernel will
1117 run faster if you say N here.
1118
Adrian Bunk03502fa2008-02-03 15:50:21 +02001119 See also <file:Documentation/i386/IO-APIC.txt>,
Linus Torvalds1da177e2005-04-16 15:20:36 -07001120 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
1121 <http://www.linuxdoc.org/docs.html#howto>.
1122
1123 If you don't know what to do here, say N.
1124
Russell Kinga8cbcd92009-05-16 11:51:14 +01001125config HAVE_ARM_SCU
1126 bool
1127 depends on SMP
1128 help
1129 This option enables support for the ARM system coherency unit
1130
Russell Kingf32f4ce2009-05-16 12:14:21 +01001131config HAVE_ARM_TWD
1132 bool
1133 depends on SMP
1134 help
1135 This options enables support for the ARM timer and watchdog unit
1136
Lennert Buytenhek8d5796d2008-08-25 21:03:32 +01001137choice
1138 prompt "Memory split"
1139 default VMSPLIT_3G
1140 help
1141 Select the desired split between kernel and user memory.
1142
1143 If you are not absolutely sure what you are doing, leave this
1144 option alone!
1145
1146 config VMSPLIT_3G
1147 bool "3G/1G user/kernel split"
1148 config VMSPLIT_2G
1149 bool "2G/2G user/kernel split"
1150 config VMSPLIT_1G
1151 bool "1G/3G user/kernel split"
1152endchoice
1153
1154config PAGE_OFFSET
1155 hex
1156 default 0x40000000 if VMSPLIT_1G
1157 default 0x80000000 if VMSPLIT_2G
1158 default 0xC0000000
1159
Linus Torvalds1da177e2005-04-16 15:20:36 -07001160config NR_CPUS
1161 int "Maximum number of CPUs (2-32)"
1162 range 2 32
1163 depends on SMP
1164 default "4"
1165
Russell Kinga054a812005-11-02 22:24:33 +00001166config HOTPLUG_CPU
1167 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
1168 depends on SMP && HOTPLUG && EXPERIMENTAL
1169 help
1170 Say Y here to experiment with turning CPUs off and on. CPUs
1171 can be controlled through /sys/devices/system/cpu.
1172
Russell King37ee16a2005-11-08 19:08:05 +00001173config LOCAL_TIMERS
1174 bool "Use local timer interrupts"
Russell King42578c82009-06-11 15:35:00 +01001175 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \
Srinidhi Kasagar850265e2009-11-28 08:24:47 +01001176 REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500)
Russell King37ee16a2005-11-08 19:08:05 +00001177 default y
Srinidhi Kasagar850265e2009-11-28 08:24:47 +01001178 select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500)
Russell King37ee16a2005-11-08 19:08:05 +00001179 help
1180 Enable support for local timers on SMP platforms, rather then the
1181 legacy IPI broadcast method. Local timers allows the system
1182 accounting to be spread across the timer interval, preventing a
1183 "thundering herd" at every timer tick.
1184
Uwe Kleine-Königd45a3982009-08-13 20:38:17 +02001185source kernel/Kconfig.preempt
Linus Torvalds1da177e2005-04-16 15:20:36 -07001186
Russell Kingf8065812006-03-02 22:41:59 +00001187config HZ
1188 int
1189 default 128 if ARCH_L7200
Kukjin Kim170f4e42010-02-24 16:40:44 +09001190 default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || ARCH_S5P6442 || ARCH_S5PV210
Russell Kingbfe65702006-03-04 11:01:53 +00001191 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
David Brownell5248c652007-11-12 17:59:10 +01001192 default AT91_TIMER_HZ if ARCH_AT91
Russell Kingf8065812006-03-02 22:41:59 +00001193 default 100
1194
Catalin Marinas16c79652009-07-24 12:33:02 +01001195config THUMB2_KERNEL
1196 bool "Compile the kernel in Thumb-2 mode"
1197 depends on CPU_V7 && EXPERIMENTAL
1198 select AEABI
1199 select ARM_ASM_UNIFIED
1200 help
1201 By enabling this option, the kernel will be compiled in
1202 Thumb-2 mode. A compiler/assembler that understand the unified
1203 ARM-Thumb syntax is needed.
1204
1205 If unsure, say N.
1206
Catalin Marinas0becb082009-07-24 12:32:53 +01001207config ARM_ASM_UNIFIED
1208 bool
1209
Nicolas Pitre704bdda2006-01-14 16:33:50 +00001210config AEABI
1211 bool "Use the ARM EABI to compile the kernel"
1212 help
1213 This option allows for the kernel to be compiled using the latest
1214 ARM ABI (aka EABI). This is only useful if you are using a user
1215 space environment that is also compiled with EABI.
1216
1217 Since there are major incompatibilities between the legacy ABI and
1218 EABI, especially with regard to structure member alignment, this
1219 option also changes the kernel syscall calling convention to
1220 disambiguate both ABIs and allow for backward compatibility support
1221 (selected with CONFIG_OABI_COMPAT).
1222
1223 To use this you need GCC version 4.0.0 or later.
1224
Nicolas Pitre6c90c872006-01-14 16:37:15 +00001225config OABI_COMPAT
Russell Kinga73a3ff2006-02-08 21:09:55 +00001226 bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
Nicolas Pitre61c484d2006-02-08 21:09:08 +00001227 depends on AEABI && EXPERIMENTAL
Nicolas Pitre6c90c872006-01-14 16:37:15 +00001228 default y
1229 help
1230 This option preserves the old syscall interface along with the
1231 new (ARM EABI) one. It also provides a compatibility layer to
1232 intercept syscalls that have structure arguments which layout
1233 in memory differs between the legacy ABI and the new ARM EABI
1234 (only for non "thumb" binaries). This option adds a tiny
1235 overhead to all syscalls and produces a slightly larger kernel.
1236 If you know you'll be using only pure EABI user space then you
1237 can say N here. If this option is not selected and you attempt
1238 to execute a legacy ABI binary then the result will be
1239 UNPREDICTABLE (in fact it can be predicted that it won't work
1240 at all). If in doubt say Y.
1241
Mel Gormaneb335752009-05-13 17:34:48 +01001242config ARCH_HAS_HOLES_MEMORYMODEL
Mel Gormane80d6a22008-08-14 11:10:14 +01001243 bool
Mel Gormane80d6a22008-08-14 11:10:14 +01001244
Russell King07a2f732008-10-01 21:39:58 +01001245# Discontigmem is deprecated
Dave Hansen3f22ab22005-06-23 00:07:43 -07001246config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -07001247 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001248
Russell King05944d72006-11-30 20:43:51 +00001249config ARCH_SPARSEMEM_ENABLE
1250 bool
1251
Russell King07a2f732008-10-01 21:39:58 +01001252config ARCH_SPARSEMEM_DEFAULT
1253 def_bool ARCH_SPARSEMEM_ENABLE
1254
Russell King05944d72006-11-30 20:43:51 +00001255config ARCH_SELECT_MEMORY_MODEL
Russell King07a2f732008-10-01 21:39:58 +01001256 def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE
Russell King05944d72006-11-30 20:43:51 +00001257
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001258config NODES_SHIFT
1259 int
1260 default "4" if ARCH_LH7A40X
1261 default "2"
1262 depends on NEED_MULTIPLE_NODES
1263
Nicolas Pitre053a96c2008-09-19 00:36:12 -04001264config HIGHMEM
1265 bool "High Memory Support (EXPERIMENTAL)"
1266 depends on MMU && EXPERIMENTAL
1267 help
1268 The address space of ARM processors is only 4 Gigabytes large
1269 and it has to accommodate user address space, kernel address
1270 space as well as some memory mapped IO. That means that, if you
1271 have a large amount of physical memory and/or IO, not all of the
1272 memory can be "permanently mapped" by the kernel. The physical
1273 memory that is not permanently mapped is called "high memory".
1274
1275 Depending on the selected kernel/user memory split, minimum
1276 vmalloc space and actual amount of RAM, you may not need this
1277 option which should result in a slightly faster kernel.
1278
1279 If unsure, say n.
1280
Russell King65cec8e2009-08-17 20:02:06 +01001281config HIGHPTE
1282 bool "Allocate 2nd-level pagetables from highmem"
1283 depends on HIGHMEM
1284 depends on !OUTER_CACHE
1285
Jamie Iles1b8873a2010-02-02 20:25:44 +01001286config HW_PERF_EVENTS
1287 bool "Enable hardware performance counter support for perf events"
Jean PIHET796d1292010-01-26 18:51:05 +01001288 depends on PERF_EVENTS && CPU_HAS_PMU && (CPU_V6 || CPU_V7)
Jamie Iles1b8873a2010-02-02 20:25:44 +01001289 default y
1290 help
1291 Enable hardware performance counter support for perf events. If
1292 disabled, perf events will use software events only.
1293
Dave Hansen3f22ab22005-06-23 00:07:43 -07001294source "mm/Kconfig"
1295
Linus Torvalds1da177e2005-04-16 15:20:36 -07001296config LEDS
1297 bool "Timer and CPU usage LEDs"
Adrian Bunke055d5bf2008-04-22 01:43:27 +01001298 depends on ARCH_CDB89712 || ARCH_EBSA110 || \
Sascha Hauer8c8fdbc2009-04-01 12:40:15 +02001299 ARCH_EBSA285 || ARCH_INTEGRATOR || \
Linus Torvalds1da177e2005-04-16 15:20:36 -07001300 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
1301 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
SAN People73a59c12006-01-09 17:05:41 +00001302 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
Jürgen Schindele25329672008-09-16 21:36:30 +01001303 ARCH_AT91 || ARCH_DAVINCI || \
Colin Tuckleyff3042f2009-05-30 13:56:13 +01001304 ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW
Linus Torvalds1da177e2005-04-16 15:20:36 -07001305 help
1306 If you say Y here, the LEDs on your machine will be used
1307 to provide useful information about your current system status.
1308
1309 If you are compiling a kernel for a NetWinder or EBSA-285, you will
1310 be able to select which LEDs are active using the options below. If
1311 you are compiling a kernel for the EBSA-110 or the LART however, the
1312 red LED will simply flash regularly to indicate that the system is
1313 still functional. It is safe to say Y here if you have a CATS
1314 system, but the driver will do nothing.
1315
1316config LEDS_TIMER
1317 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
David Brownelleebdf7d72007-04-02 12:48:10 -07001318 OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1319 || MACH_OMAP_PERSEUS2
Linus Torvalds1da177e2005-04-16 15:20:36 -07001320 depends on LEDS
Kevin Hilman0567a0c2007-03-13 20:29:24 +01001321 depends on !GENERIC_CLOCKEVENTS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001322 default y if ARCH_EBSA110
1323 help
1324 If you say Y here, one of the system LEDs (the green one on the
1325 NetWinder, the amber one on the EBSA285, or the red one on the LART)
1326 will flash regularly to indicate that the system is still
1327 operational. This is mainly useful to kernel hackers who are
1328 debugging unstable kernels.
1329
1330 The LART uses the same LED for both Timer LED and CPU usage LED
1331 functions. You may choose to use both, but the Timer LED function
1332 will overrule the CPU usage LED.
1333
1334config LEDS_CPU
1335 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
David Brownelleebdf7d72007-04-02 12:48:10 -07001336 !ARCH_OMAP) \
1337 || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1338 || MACH_OMAP_PERSEUS2
Linus Torvalds1da177e2005-04-16 15:20:36 -07001339 depends on LEDS
1340 help
1341 If you say Y here, the red LED will be used to give a good real
1342 time indication of CPU usage, by lighting whenever the idle task
1343 is not currently executing.
1344
1345 The LART uses the same LED for both Timer LED and CPU usage LED
1346 functions. You may choose to use both, but the Timer LED function
1347 will overrule the CPU usage LED.
1348
1349config ALIGNMENT_TRAP
1350 bool
Hyok S. Choif12d0d72006-09-26 17:36:37 +09001351 depends on CPU_CP15_MMU
Linus Torvalds1da177e2005-04-16 15:20:36 -07001352 default y if !ARCH_EBSA110
Russell Kinge119bff2010-01-10 17:23:29 +00001353 select HAVE_PROC_CPU if PROC_FS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001354 help
Matt LaPlante84eb8d02006-10-03 22:53:09 +02001355 ARM processors cannot fetch/store information which is not
Linus Torvalds1da177e2005-04-16 15:20:36 -07001356 naturally aligned on the bus, i.e., a 4 byte fetch must start at an
1357 address divisible by 4. On 32-bit ARM processors, these non-aligned
1358 fetch/store instructions will be emulated in software if you say
1359 here, which has a severe performance impact. This is necessary for
1360 correct operation of some network protocols. With an IP-only
1361 configuration it is safe to say N, otherwise say Y.
1362
Lennert Buytenhek39ec58f2009-03-09 14:30:09 -04001363config UACCESS_WITH_MEMCPY
1364 bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)"
1365 depends on MMU && EXPERIMENTAL
1366 default y if CPU_FEROCEON
1367 help
1368 Implement faster copy_to_user and clear_user methods for CPU
1369 cores where a 8-word STM instruction give significantly higher
1370 memory write throughput than a sequence of individual 32bit stores.
1371
1372 A possible side effect is a slight increase in scheduling latency
1373 between threads sharing the same address space if they invoke
1374 such copy operations with large buffers.
1375
1376 However, if the CPU data cache is using a write-allocate mode,
1377 this option is unlikely to provide any performance gain.
1378
Linus Torvalds1da177e2005-04-16 15:20:36 -07001379endmenu
1380
1381menu "Boot options"
1382
1383# Compressed boot loader in ROM. Yes, we really want to ask about
1384# TEXT and BSS so we preserve their values in the config files.
1385config ZBOOT_ROM_TEXT
1386 hex "Compressed ROM boot loader base address"
1387 default "0"
1388 help
1389 The physical address at which the ROM-able zImage is to be
1390 placed in the target. Platforms which normally make use of
1391 ROM-able zImage formats normally set this to a suitable
1392 value in their defconfig file.
1393
1394 If ZBOOT_ROM is not enabled, this has no effect.
1395
1396config ZBOOT_ROM_BSS
1397 hex "Compressed ROM boot loader BSS address"
1398 default "0"
1399 help
Dan Fandrichf8c440b2006-09-20 23:28:51 +01001400 The base address of an area of read/write memory in the target
1401 for the ROM-able zImage which must be available while the
1402 decompressor is running. It must be large enough to hold the
1403 entire decompressed kernel plus an additional 128 KiB.
1404 Platforms which normally make use of ROM-able zImage formats
1405 normally set this to a suitable value in their defconfig file.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001406
1407 If ZBOOT_ROM is not enabled, this has no effect.
1408
1409config ZBOOT_ROM
1410 bool "Compressed boot loader in ROM/flash"
1411 depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
1412 help
1413 Say Y here if you intend to execute your compressed kernel image
1414 (zImage) directly from ROM or flash. If unsure, say N.
1415
1416config CMDLINE
1417 string "Default kernel command string"
1418 default ""
1419 help
1420 On some architectures (EBSA110 and CATS), there is currently no way
1421 for the boot loader to pass arguments to the kernel. For these
1422 architectures, you should supply some command-line options at build
1423 time by entering them here. As a minimum, you should specify the
1424 memory size and the root device (e.g., mem=64M root=/dev/nfs).
1425
1426config XIP_KERNEL
1427 bool "Kernel Execute-In-Place from ROM"
1428 depends on !ZBOOT_ROM
1429 help
1430 Execute-In-Place allows the kernel to run from non-volatile storage
1431 directly addressable by the CPU, such as NOR flash. This saves RAM
1432 space since the text section of the kernel is not loaded from flash
1433 to RAM. Read-write sections, such as the data section and stack,
1434 are still copied to RAM. The XIP kernel is not compressed since
1435 it has to run directly from flash, so it will take more space to
1436 store it. The flash address used to link the kernel object files,
1437 and for storing it, is configuration dependent. Therefore, if you
1438 say Y here, you must know the proper physical address where to
1439 store the kernel image depending on your own flash memory usage.
1440
1441 Also note that the make target becomes "make xipImage" rather than
1442 "make zImage" or "make Image". The final kernel binary to put in
1443 ROM memory will be arch/arm/boot/xipImage.
1444
1445 If unsure, say N.
1446
1447config XIP_PHYS_ADDR
1448 hex "XIP Kernel Physical Location"
1449 depends on XIP_KERNEL
1450 default "0x00080000"
1451 help
1452 This is the physical address in your flash memory the kernel will
1453 be linked for and stored to. This address is dependent on your
1454 own flash usage.
1455
Richard Purdiec587e4a2007-02-06 21:29:00 +01001456config KEXEC
1457 bool "Kexec system call (EXPERIMENTAL)"
1458 depends on EXPERIMENTAL
1459 help
1460 kexec is a system call that implements the ability to shutdown your
1461 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02001462 but it is independent of the system firmware. And like a reboot
Richard Purdiec587e4a2007-02-06 21:29:00 +01001463 you can start any kernel with it, not just Linux.
1464
1465 It is an ongoing process to be certain the hardware in a machine
1466 is properly shutdown, so do not be surprised if this code does not
1467 initially work for you. It may help to enable device hotplugging
1468 support.
1469
Richard Purdie4cd9d6f2008-01-02 00:56:46 +01001470config ATAGS_PROC
1471 bool "Export atags in procfs"
Uli Luckasb98d7292008-02-22 16:45:18 +01001472 depends on KEXEC
1473 default y
Richard Purdie4cd9d6f2008-01-02 00:56:46 +01001474 help
1475 Should the atags used to boot the kernel be exported in an "atags"
1476 file in procfs. Useful with kexec.
1477
Linus Torvalds1da177e2005-04-16 15:20:36 -07001478endmenu
1479
Russell Kingac9d7ef2008-08-18 17:26:00 +01001480menu "CPU Power Management"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001481
Ben Dooks89c52ed2009-07-30 23:23:24 +01001482if ARCH_HAS_CPUFREQ
Linus Torvalds1da177e2005-04-16 15:20:36 -07001483
1484source "drivers/cpufreq/Kconfig"
1485
1486config CPU_FREQ_SA1100
1487 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001488
1489config CPU_FREQ_SA1110
1490 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001491
1492config CPU_FREQ_INTEGRATOR
1493 tristate "CPUfreq driver for ARM Integrator CPUs"
1494 depends on ARCH_INTEGRATOR && CPU_FREQ
1495 default y
1496 help
1497 This enables the CPUfreq driver for ARM Integrator CPUs.
1498
1499 For details, take a look at <file:Documentation/cpu-freq>.
1500
1501 If in doubt, say Y.
1502
Russell King9e2697f2007-12-14 13:30:14 +00001503config CPU_FREQ_PXA
1504 bool
1505 depends on CPU_FREQ && ARCH_PXA && PXA25x
1506 default y
1507 select CPU_FREQ_DEFAULT_GOV_USERSPACE
1508
Mark Brownb3748dd2009-06-15 11:23:20 +01001509config CPU_FREQ_S3C64XX
1510 bool "CPUfreq support for Samsung S3C64XX CPUs"
1511 depends on CPU_FREQ && CPU_S3C6410
1512
Ben Dooks9d56c022009-07-30 23:23:25 +01001513config CPU_FREQ_S3C
1514 bool
1515 help
1516 Internal configuration node for common cpufreq on Samsung SoC
1517
1518config CPU_FREQ_S3C24XX
1519 bool "CPUfreq driver for Samsung S3C24XX series CPUs"
1520 depends on ARCH_S3C2410 && CPU_FREQ && EXPERIMENTAL
1521 select CPU_FREQ_S3C
1522 help
1523 This enables the CPUfreq driver for the Samsung S3C24XX family
1524 of CPUs.
1525
1526 For details, take a look at <file:Documentation/cpu-freq>.
1527
1528 If in doubt, say N.
1529
1530config CPU_FREQ_S3C24XX_PLL
1531 bool "Support CPUfreq changing of PLL frequency"
1532 depends on CPU_FREQ_S3C24XX && EXPERIMENTAL
1533 help
1534 Compile in support for changing the PLL frequency from the
1535 S3C24XX series CPUfreq driver. The PLL takes time to settle
1536 after a frequency change, so by default it is not enabled.
1537
1538 This also means that the PLL tables for the selected CPU(s) will
1539 be built which may increase the size of the kernel image.
1540
1541config CPU_FREQ_S3C24XX_DEBUG
1542 bool "Debug CPUfreq Samsung driver core"
1543 depends on CPU_FREQ_S3C24XX
1544 help
1545 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
1546
1547config CPU_FREQ_S3C24XX_IODEBUG
1548 bool "Debug CPUfreq Samsung driver IO timing"
1549 depends on CPU_FREQ_S3C24XX
1550 help
1551 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
1552
Ben Dookse6d197a2009-07-30 23:23:42 +01001553config CPU_FREQ_S3C24XX_DEBUGFS
1554 bool "Export debugfs for CPUFreq"
1555 depends on CPU_FREQ_S3C24XX && DEBUG_FS
1556 help
1557 Export status information via debugfs.
1558
Linus Torvalds1da177e2005-04-16 15:20:36 -07001559endif
1560
Russell Kingac9d7ef2008-08-18 17:26:00 +01001561source "drivers/cpuidle/Kconfig"
1562
1563endmenu
1564
Linus Torvalds1da177e2005-04-16 15:20:36 -07001565menu "Floating point emulation"
1566
1567comment "At least one emulation must be selected"
1568
1569config FPE_NWFPE
1570 bool "NWFPE math emulation"
Nicolas Pitre8993a442006-01-14 16:36:50 +00001571 depends on !AEABI || OABI_COMPAT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001572 ---help---
1573 Say Y to include the NWFPE floating point emulator in the kernel.
1574 This is necessary to run most binaries. Linux does not currently
1575 support floating point hardware so you need to say Y here even if
1576 your machine has an FPA or floating point co-processor podule.
1577
1578 You may say N here if you are going to load the Acorn FPEmulator
1579 early in the bootup.
1580
1581config FPE_NWFPE_XP
1582 bool "Support extended precision"
Lennert Buytenhekbedf1422005-11-07 21:12:08 +00001583 depends on FPE_NWFPE
Linus Torvalds1da177e2005-04-16 15:20:36 -07001584 help
1585 Say Y to include 80-bit support in the kernel floating-point
1586 emulator. Otherwise, only 32 and 64-bit support is compiled in.
1587 Note that gcc does not generate 80-bit operations by default,
1588 so in most cases this option only enlarges the size of the
1589 floating point emulator without any good reason.
1590
1591 You almost surely want to say N here.
1592
1593config FPE_FASTFPE
1594 bool "FastFPE math emulation (EXPERIMENTAL)"
Nicolas Pitre8993a442006-01-14 16:36:50 +00001595 depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001596 ---help---
1597 Say Y here to include the FAST floating point emulator in the kernel.
1598 This is an experimental much faster emulator which now also has full
1599 precision for the mantissa. It does not support any exceptions.
1600 It is very simple, and approximately 3-6 times faster than NWFPE.
1601
1602 It should be sufficient for most programs. It may be not suitable
1603 for scientific calculations, but you have to check this for yourself.
1604 If you do not feel you need a faster FP emulation you should better
1605 choose NWFPE.
1606
1607config VFP
1608 bool "VFP-format floating point maths"
Russell Kingc00d4ff2008-01-28 13:21:30 +00001609 depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001610 help
1611 Say Y to include VFP support code in the kernel. This is needed
1612 if your hardware includes a VFP unit.
1613
1614 Please see <file:Documentation/arm/VFP/release-notes.txt> for
1615 release notes and additional status information.
1616
1617 Say N if your target does not have VFP hardware.
1618
Catalin Marinas25ebee02007-09-25 15:22:24 +01001619config VFPv3
1620 bool
1621 depends on VFP
1622 default y if CPU_V7
1623
Catalin Marinasb5872db2008-01-10 19:16:17 +01001624config NEON
1625 bool "Advanced SIMD (NEON) Extension support"
1626 depends on VFPv3 && CPU_V7
1627 help
1628 Say Y to include support code for NEON, the ARMv7 Advanced SIMD
1629 Extension.
1630
Linus Torvalds1da177e2005-04-16 15:20:36 -07001631endmenu
1632
1633menu "Userspace binary formats"
1634
1635source "fs/Kconfig.binfmt"
1636
1637config ARTHUR
1638 tristate "RISC OS personality"
Nicolas Pitre704bdda2006-01-14 16:33:50 +00001639 depends on !AEABI
Linus Torvalds1da177e2005-04-16 15:20:36 -07001640 help
1641 Say Y here to include the kernel code necessary if you want to run
1642 Acorn RISC OS/Arthur binaries under Linux. This code is still very
1643 experimental; if this sounds frightening, say N and sleep in peace.
1644 You can also say M here to compile this support as a module (which
1645 will be called arthur).
1646
1647endmenu
1648
1649menu "Power management options"
1650
Russell Kingeceab4a2005-11-15 11:31:41 +00001651source "kernel/power/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001652
Johannes Bergf4cb5702007-12-08 02:14:00 +01001653config ARCH_SUSPEND_POSSIBLE
1654 def_bool y
1655
Linus Torvalds1da177e2005-04-16 15:20:36 -07001656endmenu
1657
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001658source "net/Kconfig"
1659
Uwe Kleine-Königac251502009-08-13 21:09:21 +02001660source "drivers/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001661
1662source "fs/Kconfig"
1663
Linus Torvalds1da177e2005-04-16 15:20:36 -07001664source "arch/arm/Kconfig.debug"
1665
1666source "security/Kconfig"
1667
1668source "crypto/Kconfig"
1669
1670source "lib/Kconfig"