Blame view

arch/arm/Kconfig 64.5 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
  config ARM
  	bool
  	default y
e17c6d561   David Woodhouse   Introduce HAVE_AO...
4
  	select HAVE_AOUT
24056f525   Russell King   ARM: DMA: add sup...
5
  	select HAVE_DMA_API_DEBUG
d0ee9f404   Arnd Bergmann   ARM: limit CONFIG...
6
  	select HAVE_IDE if PCI || ISA || PCMCIA
2778f6205   Russell King   ARM: initial LMB ...
7
  	select HAVE_MEMBLOCK
12b824fb1   Alessandro Zummo   [PATCH] RTC subsy...
8
  	select RTC_LIB
75e7153ab   Ralf Baechle   [APM] ARM: Conver...
9
  	select SYS_SUPPORTS_APM_EMULATION
a41297a0f   Russell King   ARM: v6k: select ...
10
  	select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI)
fe166148f   Will Deacon   ARM: 6073/1: opro...
11
  	select HAVE_OPROFILE if (HAVE_PERF_EVENTS)
5cbad0ebf   Jason Wessel   kgdb: support for...
12
  	select HAVE_ARCH_KGDB
856bc3563   Jon Medhurst   ARM: Kconfig: All...
13
  	select HAVE_KPROBES if !XIP_KERNEL
9edddaa20   Ananth N Mavinakayanahalli   Kprobes: indicate...
14
  	select HAVE_KRETPROBES if (HAVE_KPROBES)
606576ce8   Steven Rostedt   ftrace: rename FT...
15
  	select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
80be7a7f6   Rabin Vincent   ARM: 6320/1: ftra...
16
17
  	select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL)
  	select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL)
0e341af83   Rabin Vincent   ARM: ftrace: enab...
18
  	select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL)
e39f56023   David Daney   fs: binfmt_elf: c...
19
  	select ARCH_BINFMT_ELF_RANDOMIZE_PIE
1fe532685   Dmitry Eremin-Solenikov   ARM: support gene...
20
  	select HAVE_GENERIC_DMA_COHERENT
e7db7b427   Albin Tonnerre   arm: add support ...
21
22
  	select HAVE_KERNEL_GZIP
  	select HAVE_KERNEL_LZO
6e8699f7d   Albin Tonnerre   ARM: 6026/1: ARM:...
23
  	select HAVE_KERNEL_LZMA
e360adbe2   Peter Zijlstra   irq_work: Add gen...
24
  	select HAVE_IRQ_WORK
7ada189f5   Jamie Iles   ARM: 5900/2: arm:...
25
26
  	select HAVE_PERF_EVENTS
  	select PERF_USE_VMALLOC
e513f8bf2   Will Deacon   ARM: 6199/1: Add ...
27
  	select HAVE_REGS_AND_STACK_ACCESS_API
e399b1a4e   Russell King   ARM: v6k: introdu...
28
  	select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
ed60453fa   Rabin Vincent   ARM: 6511/1: ftra...
29
  	select HAVE_C_RECORDMCOUNT
e2a93ecc7   Lennert Buytenhek   ARM: Use genirq d...
30
31
  	select HAVE_GENERIC_HARDIRQS
  	select HAVE_SPARSE_IRQ
25a5662a1   Thomas Gleixner   arm: Use generic ...
32
  	select GENERIC_IRQ_SHOW
1fb902634   Santosh Shilimkar   ARM: Enable CPU_P...
33
  	select CPU_PM if (SUSPEND || CPU_IDLE)
e5bfb72ce   Michael S. Tsirkin   arm: switch to GE...
34
  	select GENERIC_PCI_IOMAP
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
35
36
  	help
  	  The ARM series is a line of low-power-consumption RISC chip designs
f6c8965ab   Martin Michlmayr   [ARM] 3305/1: Min...
37
  	  licensed by ARM Ltd and targeted at embedded applications and
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
38
  	  handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
f6c8965ab   Martin Michlmayr   [ARM] 3305/1: Min...
39
  	  manufactured, but legacy ARM-based PC hardware remains popular in
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
40
41
  	  Europe.  There is an ARM Linux project with a web page at
  	  <http://www.arm.linux.org.uk/>.
74facffec   Russell King   ARM: Allow SoCs t...
42
43
  config ARM_HAS_SG_CHAIN
  	bool
1a189b971   Russell King   [ARM] pxa: Add ba...
44
45
  config HAVE_PWM
  	bool
0b05da720   Hans Ulli Kroll   ARM: 6520/1: Kcon...
46
47
  config MIGHT_HAVE_PCI
  	bool
75e7153ab   Ralf Baechle   [APM] ARM: Conver...
48
49
  config SYS_SUPPORTS_APM_EMULATION
  	bool
112f38a4a   Russell King   ARM: sched_clock:...
50
51
  config HAVE_SCHED_CLOCK
  	bool
0a938b976   David Brownell   [PATCH] add CONFI...
52
53
  config GENERIC_GPIO
  	bool
0a938b976   David Brownell   [PATCH] add CONFI...
54

5cfc8ee0b   John Stultz   ARM: convert arm ...
55
56
57
  config ARCH_USES_GETTIMEOFFSET
  	bool
  	default n
746140c71   Kevin Hilman   [ARM] 3855/1: Add...
58

0567a0c02   Kevin Hilman   [ARM] 4257/2: Kco...
59
60
  config GENERIC_CLOCKEVENTS
  	bool
0567a0c02   Kevin Hilman   [ARM] 4257/2: Kco...
61

a8655e83f   Catalin Marinas   [ARM] 4814/1: Rea...
62
63
64
  config GENERIC_CLOCKEVENTS_BROADCAST
  	bool
  	depends on GENERIC_CLOCKEVENTS
5388a6b26   Russell King   ARM: SMP: Always ...
65
  	default y if SMP
a8655e83f   Catalin Marinas   [ARM] 4814/1: Rea...
66

bf9dd3609   Rob Herring   ARM: 6786/1: enab...
67
68
69
  config KTIME_SCALAR
  	bool
  	default y
bc581770c   Linus Walleij   ARM: 5580/2: ARM ...
70
71
72
  config HAVE_TCM
  	bool
  	select GENERIC_ALLOCATOR
e119bfff1   Russell King   ARM: Move creatio...
73
74
  config HAVE_PROC_CPU
  	bool
5ea817699   Al Viro   [PATCH] sort the ...
75
76
  config NO_IOPORT
  	bool
5ea817699   Al Viro   [PATCH] sort the ...
77

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
  config EISA
  	bool
  	---help---
  	  The Extended Industry Standard Architecture (EISA) bus was
  	  developed as an open alternative to the IBM MicroChannel bus.
  
  	  The EISA bus provided some of the features of the IBM MicroChannel
  	  bus while maintaining backward compatibility with cards made for
  	  the older ISA bus.  The EISA bus saw limited use between 1988 and
  	  1995 when it was made obsolete by the PCI bus.
  
  	  Say Y here if you are building a kernel for an EISA-based machine.
  
  	  Otherwise, say N.
  
  config SBUS
  	bool
  
  config MCA
  	bool
  	help
  	  MicroChannel Architecture is found in some IBM PS/2 machines and
  	  laptops.  It is a bus system similar to PCI or ISA. See
  	  <file:Documentation/mca.txt> (and especially the web page given
  	  there) before attempting to build an MCA bus kernel.
f16fb1ecc   Russell King   [ARM] Add stacktr...
103
104
105
  config STACKTRACE_SUPPORT
  	bool
  	default y
f76e91547   Nicolas Pitre   [ARM] latencytop ...
106
107
108
109
  config HAVE_LATENCYTOP_SUPPORT
  	bool
  	depends on !SMP
  	default y
f16fb1ecc   Russell King   [ARM] Add stacktr...
110
111
112
  config LOCKDEP_SUPPORT
  	bool
  	default y
7ad1bcb25   Russell King   [ARM] Add ARM irq...
113
114
115
  config TRACE_IRQFLAGS_SUPPORT
  	bool
  	default y
4a2581a08   Thomas Gleixner   [ARM] 3692/1: ARM...
116
117
118
119
120
121
122
  config HARDIRQS_SW_RESEND
  	bool
  	default y
  
  config GENERIC_IRQ_PROBE
  	bool
  	default y
95c354fe9   Nick Piggin   spinlock: lockbre...
123
124
125
126
  config GENERIC_LOCKBREAK
  	bool
  	default y
  	depends on SMP && PREEMPT
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
127
128
129
130
131
132
  config RWSEM_GENERIC_SPINLOCK
  	bool
  	default y
  
  config RWSEM_XCHGADD_ALGORITHM
  	bool
f0d1b0b30   David Howells   [PATCH] LOG2: Imp...
133
134
  config ARCH_HAS_ILOG2_U32
  	bool
f0d1b0b30   David Howells   [PATCH] LOG2: Imp...
135
136
137
  
  config ARCH_HAS_ILOG2_U64
  	bool
f0d1b0b30   David Howells   [PATCH] LOG2: Imp...
138

89c52ed46   Ben Dooks   ARM: Add ARCH_HAS...
139
140
141
142
143
144
  config ARCH_HAS_CPUFREQ
  	bool
  	help
  	  Internal node to signify that the ARCH has CPUFREQ support
  	  and that the relevant menu configurations are displayed for
  	  it.
c7b0aff44   Kevin Hilman   ARM: 6428/1: add ...
145
146
  config ARCH_HAS_CPU_IDLE_WAIT
         def_bool y
b89c3b165   Akinobu Mita   [PATCH] bitops: a...
147
148
149
  config GENERIC_HWEIGHT
  	bool
  	default y
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
150
151
152
  config GENERIC_CALIBRATE_DELAY
  	bool
  	default y
a08b6b796   Al Viro   [PATCH] Kconfig f...
153
154
  config ARCH_MAY_HAVE_PC_FDC
  	bool
5ac6da669   Christoph Lameter   [PATCH] Set CONFI...
155
156
  config ZONE_DMA
  	bool
5ac6da669   Christoph Lameter   [PATCH] Set CONFI...
157

ccd7ab7f7   FUJITA Tomonori   pci-dma: arm: use...
158
159
  config NEED_DMA_MAP_STATE
         def_bool y
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
160
161
  config GENERIC_ISA_DMA
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
162
163
  config FIQ
  	bool
034d2f5af   Al Viro   [PATCH] arm: fix ...
164
165
  config ARCH_MTD_XIP
  	bool
c760fc199   Hyok S. Choi   [ARM] nommu: fixu...
166
167
  config VECTORS_BASE
  	hex
6afd6fae1   Hyok S. Choi   [ARM] nommu: conf...
168
  	default 0xffff0000 if MMU || CPU_HIGH_VECTOR
c760fc199   Hyok S. Choi   [ARM] nommu: fixu...
169
170
171
172
  	default DRAM_BASE if REMAP_VECTORS_TO_RAM
  	default 0x00000000
  	help
  	  The base address of exception vectors.
dc21af99f   Russell King   ARM: P2V: introdu...
173
  config ARM_PATCH_PHYS_VIRT
c1becedc8   Russell King   ARM: enable ARM_P...
174
175
  	bool "Patch physical to virtual translations at runtime" if EMBEDDED
  	default y
b511d75d6   Nicolas Pitre   ARM: 6747/1: P2V:...
176
  	depends on !XIP_KERNEL && MMU
dc21af99f   Russell King   ARM: P2V: introdu...
177
178
  	depends on !ARCH_REALVIEW || !SPARSEMEM
  	help
111e9a5ce   Russell King   ARM: phys-to-virt...
179
180
181
  	  Patch phys-to-virt and virt-to-phys translation functions at
  	  boot and module load time according to the position of the
  	  kernel in system memory.
dc21af99f   Russell King   ARM: P2V: introdu...
182

111e9a5ce   Russell King   ARM: phys-to-virt...
183
  	  This can only be used with non-XIP MMU kernels where the base
daece5968   Nicolas Pitre   ARM: 7013/1: P2V:...
184
  	  of physical memory is at a 16MB boundary.
dc21af99f   Russell King   ARM: P2V: introdu...
185

c1becedc8   Russell King   ARM: enable ARM_P...
186
187
188
  	  Only disable this option if you know that you do not require
  	  this feature (eg, building a kernel for a single machine) and
  	  you need to shrink the kernel to the minimal size.
dc21af99f   Russell King   ARM: P2V: introdu...
189

0cdc8b921   Nicolas Pitre   ARM: switch from ...
190
  config NEED_MACH_MEMORY_H
1b9f95f8a   Nicolas Pitre   ARM: prepare for ...
191
192
  	bool
  	help
0cdc8b921   Nicolas Pitre   ARM: switch from ...
193
194
195
  	  Select this when mach/memory.h is required to provide special
  	  definitions for this platform.  The need for mach/memory.h should
  	  be avoided when possible.
dc21af99f   Russell King   ARM: P2V: introdu...
196

1b9f95f8a   Nicolas Pitre   ARM: prepare for ...
197
  config PHYS_OFFSET
974c07249   Nicolas Pitre   ARM: 7186/1: fix ...
198
  	hex "Physical address of main memory" if MMU
0cdc8b921   Nicolas Pitre   ARM: switch from ...
199
  	depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H
974c07249   Nicolas Pitre   ARM: 7186/1: fix ...
200
  	default DRAM_BASE if !MMU
111e9a5ce   Russell King   ARM: phys-to-virt...
201
  	help
1b9f95f8a   Nicolas Pitre   ARM: prepare for ...
202
203
  	  Please provide the physical address corresponding to the
  	  location of main memory in your system.
cada3c084   Russell King   ARM: P2V: extend ...
204

87e040b64   Simon Glass   ARM: 7017/1: Use ...
205
206
207
  config GENERIC_BUG
  	def_bool y
  	depends on BUG
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
208
  source "init/Kconfig"
dc52ddc0e   Matt Helsley   container freezer...
209
  source "kernel/Kconfig.freezer"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
210
  menu "System Type"
3c4279750   Hyok S. Choi   nommu: Enables to...
211
212
213
214
215
216
  config MMU
  	bool "MMU-based Paged Memory Management Support"
  	default y
  	help
  	  Select if you want MMU-based virtualised addressing space
  	  support by paged memory management. If unsure, say 'Y'.
ccf50e234   Russell King   ARM: Fix sorting ...
217
218
219
220
  #
  # The "ARM system type" choice list is ordered alphabetically by option
  # text.  Please add new entries in the option alphabetic order.
  #
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
221
222
  choice
  	prompt "ARM system type"
6a0e24306   Catalin Marinas   [ARM] 3352/1: DSB...
223
  	default ARCH_VERSATILE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
224

4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
225
226
227
  config ARCH_INTEGRATOR
  	bool "ARM Ltd. Integrator family"
  	select ARM_AMBA
89c52ed46   Ben Dooks   ARM: Add ARCH_HAS...
228
  	select ARCH_HAS_CPUFREQ
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
229
  	select CLKDEV_LOOKUP
aa3831cf9   Kyungmin Park   ARM: Consolidate ...
230
  	select HAVE_MACH_CLKDEV
9904f7933   Linus Walleij   ARM: 7200/1: acti...
231
  	select HAVE_TCM
c5a0adb51   Russell King   ARM: ICST: kill d...
232
  	select ICST
13edd86d7   Russell King   ARM: Integrator: ...
233
  	select GENERIC_CLOCKEVENTS
f4b8b319b   Russell King   ARM: Realview/Ver...
234
  	select PLAT_VERSATILE
c41b16f8c   Russell King   ARM: integrator/v...
235
  	select PLAT_VERSATILE_FPGA_IRQ
0cdc8b921   Nicolas Pitre   ARM: switch from ...
236
  	select NEED_MACH_MEMORY_H
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
237
238
239
240
241
242
  	help
  	  Support for ARM's Integrator platform.
  
  config ARCH_REALVIEW
  	bool "ARM Ltd. RealView family"
  	select ARM_AMBA
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
243
  	select CLKDEV_LOOKUP
aa3831cf9   Kyungmin Park   ARM: Consolidate ...
244
  	select HAVE_MACH_CLKDEV
c5a0adb51   Russell King   ARM: ICST: kill d...
245
  	select ICST
ae30ceac3   Catalin Marinas   [ARM] 4812/1: Rea...
246
  	select GENERIC_CLOCKEVENTS
eb7fffa39   Russell King   [ARM] realview: a...
247
  	select ARCH_WANT_OPTIONAL_GPIOLIB
f4b8b319b   Russell King   ARM: Realview/Ver...
248
  	select PLAT_VERSATILE
3cb5ee496   Russell King   ARM: realview: sw...
249
  	select PLAT_VERSATILE_CLCD
e38877145   Russell King   ARM: Realview/Ver...
250
  	select ARM_TIMER_SP804
b56ba8aa6   Colin Tuckley   ARM: 5957/1: ARM:...
251
  	select GPIO_PL061 if GPIOLIB
0cdc8b921   Nicolas Pitre   ARM: switch from ...
252
  	select NEED_MACH_MEMORY_H
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
253
254
255
256
257
258
259
  	help
  	  This enables support for ARM Ltd RealView boards.
  
  config ARCH_VERSATILE
  	bool "ARM Ltd. Versatile family"
  	select ARM_AMBA
  	select ARM_VIC
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
260
  	select CLKDEV_LOOKUP
aa3831cf9   Kyungmin Park   ARM: Consolidate ...
261
  	select HAVE_MACH_CLKDEV
c5a0adb51   Russell King   ARM: ICST: kill d...
262
  	select ICST
89df12724   Kevin Hilman   [ARM] 4261/1: clo...
263
  	select GENERIC_CLOCKEVENTS
bbeddc43e   Russell King   [ARM] versatile: ...
264
  	select ARCH_WANT_OPTIONAL_GPIOLIB
f4b8b319b   Russell King   ARM: Realview/Ver...
265
  	select PLAT_VERSATILE
3414ba8c8   Russell King   ARM: versatile: s...
266
  	select PLAT_VERSATILE_CLCD
c41b16f8c   Russell King   ARM: integrator/v...
267
  	select PLAT_VERSATILE_FPGA_IRQ
e38877145   Russell King   ARM: Realview/Ver...
268
  	select ARM_TIMER_SP804
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
269
270
  	help
  	  This enables support for ARM Ltd Versatile board.
ceade897f   Russell King   ARM: Add Versatil...
271
272
273
274
275
  config ARCH_VEXPRESS
  	bool "ARM Ltd. Versatile Express family"
  	select ARCH_WANT_OPTIONAL_GPIOLIB
  	select ARM_AMBA
  	select ARM_TIMER_SP804
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
276
  	select CLKDEV_LOOKUP
aa3831cf9   Kyungmin Park   ARM: Consolidate ...
277
  	select HAVE_MACH_CLKDEV
ceade897f   Russell King   ARM: Add Versatil...
278
  	select GENERIC_CLOCKEVENTS
ceade897f   Russell King   ARM: Add Versatil...
279
  	select HAVE_CLK
95c34f831   Nick Bowler   ARM: 6633/1: vexp...
280
  	select HAVE_PATA_PLATFORM
ceade897f   Russell King   ARM: Add Versatil...
281
282
  	select ICST
  	select PLAT_VERSATILE
0fb44b910   Russell King   ARM: vexpress: sw...
283
  	select PLAT_VERSATILE_CLCD
ceade897f   Russell King   ARM: Add Versatil...
284
285
  	help
  	  This enables support for the ARM Ltd Versatile Express boards.
8fc5ffa06   Andrew Victor   [ARM] 3675/2: Pre...
286
287
  config ARCH_AT91
  	bool "Atmel AT91"
f373e8c06   Ryan Mallon   [ARM] 5373/2: Add...
288
  	select ARCH_REQUIRE_GPIOLIB
93686ae83   David Brownell   arm: fix HAVE_CLK...
289
  	select HAVE_CLK
bd6029959   Jean-Christophe PLAGNIOL-VILLARD   at91: switch to C...
290
  	select CLKDEV_LOOKUP
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
291
  	help
2b3b3516b   Andrew Victor   [ARM] 4764/1: [AT...
292
293
  	  This enables support for systems based on the Atmel AT91RM9200,
  	  AT91SAM9 and AT91CAP9 processors.
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
294

ccf50e234   Russell King   ARM: Fix sorting ...
295
296
297
298
299
  config ARCH_BCMRING
  	bool "Broadcom BCMRING"
  	depends on MMU
  	select CPU_V6
  	select ARM_AMBA
82d63734e   Russell King   ARM: bcmring: con...
300
  	select ARM_TIMER_SP804
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
301
  	select CLKDEV_LOOKUP
ccf50e234   Russell King   ARM: Fix sorting ...
302
303
304
305
  	select GENERIC_CLOCKEVENTS
  	select ARCH_WANT_OPTIONAL_GPIOLIB
  	help
  	  Support for Broadcom's BCMRing platform.
220e6cf7b   Rob Herring   ARM: add Highbank...
306
307
308
309
310
311
  config ARCH_HIGHBANK
  	bool "Calxeda Highbank-based"
  	select ARCH_WANT_OPTIONAL_GPIOLIB
  	select ARM_AMBA
  	select ARM_GIC
  	select ARM_TIMER_SP804
22d80379e   Dave Martin   highbank: Uncondi...
312
  	select CACHE_L2X0
220e6cf7b   Rob Herring   ARM: add Highbank...
313
314
315
316
  	select CLKDEV_LOOKUP
  	select CPU_V7
  	select GENERIC_CLOCKEVENTS
  	select HAVE_ARM_SCU
3b55658ae   Dave Martin   ARM: SMP: Refacto...
317
  	select HAVE_SMP
220e6cf7b   Rob Herring   ARM: add Highbank...
318
319
320
  	select USE_OF
  	help
  	  Support for the Calxeda Highbank SoC based boards.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
321
  config ARCH_CLPS711X
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
322
  	bool "Cirrus Logic CLPS711x/EP721x-based"
c750815e2   Russell King   [ARM] Arrange for...
323
  	select CPU_ARM720T
5cfc8ee0b   John Stultz   ARM: convert arm ...
324
  	select ARCH_USES_GETTIMEOFFSET
0cdc8b921   Nicolas Pitre   ARM: switch from ...
325
  	select NEED_MACH_MEMORY_H
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
326
327
  	help
  	  Support for Cirrus Logic 711x/721x based boards.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
328

d94f944e1   Anton Vorontsov   ARM: cns3xxx: Add...
329
330
  config ARCH_CNS3XXX
  	bool "Cavium Networks CNS3XXX family"
00d2711d7   Imre Kaloz   ARM: cns3xxx: Sho...
331
  	select CPU_V6K
d94f944e1   Anton Vorontsov   ARM: cns3xxx: Add...
332
333
  	select GENERIC_CLOCKEVENTS
  	select ARM_GIC
ce5ea9f37   Dave Martin   ARM: l2x0/pl310: ...
334
  	select MIGHT_HAVE_CACHE_L2X0
0b05da720   Hans Ulli Kroll   ARM: 6520/1: Kcon...
335
  	select MIGHT_HAVE_PCI
5f32f7a02   Anton Vorontsov   ARM: cns3xxx: Add...
336
  	select PCI_DOMAINS if PCI
d94f944e1   Anton Vorontsov   ARM: cns3xxx: Add...
337
338
  	help
  	  Support for Cavium Networks CNS3XXX platform.
788c9700e   Russell King   [ARM] Kconfig: so...
339
340
341
  config ARCH_GEMINI
  	bool "Cortina Systems Gemini"
  	select CPU_FA526
788c9700e   Russell King   [ARM] Kconfig: so...
342
  	select ARCH_REQUIRE_GPIOLIB
5cfc8ee0b   John Stultz   ARM: convert arm ...
343
  	select ARCH_USES_GETTIMEOFFSET
788c9700e   Russell King   [ARM] Kconfig: so...
344
345
  	help
  	  Support for the Cortina Systems Gemini family SoCs
3a6cb8ce0   Arnd Bergmann   Merge branch 'zyn...
346
347
348
  config ARCH_PRIMA2
  	bool "CSR SiRFSoC PRIMA2 ARM Cortex A9 Platform"
  	select CPU_V7
3a6cb8ce0   Arnd Bergmann   Merge branch 'zyn...
349
350
351
352
  	select NO_IOPORT
  	select GENERIC_CLOCKEVENTS
  	select CLKDEV_LOOKUP
  	select GENERIC_IRQ_CHIP
ce5ea9f37   Dave Martin   ARM: l2x0/pl310: ...
353
  	select MIGHT_HAVE_CACHE_L2X0
3a6cb8ce0   Arnd Bergmann   Merge branch 'zyn...
354
355
356
357
  	select USE_OF
  	select ZONE_DMA
  	help
            Support for CSR SiRFSoC ARM Cortex A9 Platform
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
358
359
  config ARCH_EBSA110
  	bool "EBSA-110"
c750815e2   Russell King   [ARM] Arrange for...
360
  	select CPU_SA110
f7e68bbf4   Russell King   [PATCH] ARM: sele...
361
  	select ISA
c5eb2a2b6   Russell King   [ARM] EBSA110: Wo...
362
  	select NO_IOPORT
5cfc8ee0b   John Stultz   ARM: convert arm ...
363
  	select ARCH_USES_GETTIMEOFFSET
0cdc8b921   Nicolas Pitre   ARM: switch from ...
364
  	select NEED_MACH_MEMORY_H
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
365
366
  	help
  	  This is an evaluation board for the StrongARM processor available
f6c8965ab   Martin Michlmayr   [ARM] 3305/1: Min...
367
  	  from Digital. It has limited hardware on-board, including an
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
368
369
  	  Ethernet interface, two PCMCIA sockets, two serial ports and a
  	  parallel port.
e7736d47a   Lennert Buytenhek   [ARM] 3369/1: ep9...
370
371
  config ARCH_EP93XX
  	bool "EP93xx-based"
c750815e2   Russell King   [ARM] Arrange for...
372
  	select CPU_ARM920T
e7736d47a   Lennert Buytenhek   [ARM] 3369/1: ep9...
373
374
  	select ARM_AMBA
  	select ARM_VIC
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
375
  	select CLKDEV_LOOKUP
7444a72ef   Michael Buesch   gpiolib: allow us...
376
  	select ARCH_REQUIRE_GPIOLIB
eb33575cf   Mel Gorman   [ARM] Double chec...
377
  	select ARCH_HAS_HOLES_MEMORYMODEL
5cfc8ee0b   John Stultz   ARM: convert arm ...
378
  	select ARCH_USES_GETTIMEOFFSET
5725aeae5   Arnd Bergmann   Merge branch 'dep...
379
  	select NEED_MACH_MEMORY_H
e7736d47a   Lennert Buytenhek   [ARM] 3369/1: ep9...
380
381
  	help
  	  This enables support for the Cirrus EP93xx series of CPUs.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
382
383
  config ARCH_FOOTBRIDGE
  	bool "FootBridge"
c750815e2   Russell King   [ARM] Arrange for...
384
  	select CPU_SA110
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
385
  	select FOOTBRIDGE
4e8d76373   Russell King   ARM: footbridge: ...
386
  	select GENERIC_CLOCKEVENTS
d0ee9f404   Arnd Bergmann   ARM: limit CONFIG...
387
  	select HAVE_IDE
0cdc8b921   Nicolas Pitre   ARM: switch from ...
388
  	select NEED_MACH_MEMORY_H
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
389
390
391
  	help
  	  Support for systems based on the DC21285 companion chip
  	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
392

788c9700e   Russell King   [ARM] Kconfig: so...
393
394
  config ARCH_MXC
  	bool "Freescale MXC/iMX-based"
788c9700e   Russell King   [ARM] Kconfig: so...
395
  	select GENERIC_CLOCKEVENTS
788c9700e   Russell King   [ARM] Kconfig: so...
396
  	select ARCH_REQUIRE_GPIOLIB
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
397
  	select CLKDEV_LOOKUP
234b6cedd   Russell King   clocksource: conv...
398
  	select CLKSRC_MMIO
8b6c44f10   Shawn Guo   ARM: mxc: convert...
399
  	select GENERIC_IRQ_CHIP
c124befc0   Jan Weitzel   ARM: mxc: Add sch...
400
  	select HAVE_SCHED_CLOCK
ffa2ea3f5   Sascha Hauer   ARM i.MX boards: ...
401
  	select MULTI_IRQ_HANDLER
788c9700e   Russell King   [ARM] Kconfig: so...
402
403
  	help
  	  Support for Freescale MXC/iMX-based family of processors
1d3f33d54   Shawn Guo   ARM: mxs: Add bui...
404
405
406
407
  config ARCH_MXS
  	bool "Freescale MXS-based"
  	select GENERIC_CLOCKEVENTS
  	select ARCH_REQUIRE_GPIOLIB
b9214b978   Sascha Hauer   ARM mxs: clkdev r...
408
  	select CLKDEV_LOOKUP
5c61ddcfa   Russell King   clocksource: conv...
409
  	select CLKSRC_MMIO
6abda3e12   Shawn Guo   ARM: mxs: select ...
410
  	select HAVE_CLK_PREPARE
1d3f33d54   Shawn Guo   ARM: mxs: Add bui...
411
412
  	help
  	  Support for Freescale MXS-based family of processors
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
413
414
  config ARCH_NETX
  	bool "Hilscher NetX based"
234b6cedd   Russell King   clocksource: conv...
415
  	select CLKSRC_MMIO
c750815e2   Russell King   [ARM] Arrange for...
416
  	select CPU_ARM926T
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
417
  	select ARM_VIC
2fcfe6b87   Uwe Kleine-König   netx: add support...
418
  	select GENERIC_CLOCKEVENTS
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
419
  	help
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
420
421
422
423
  	  This enables support for systems based on the Hilscher NetX Soc
  
  config ARCH_H720X
  	bool "Hynix HMS720x-based"
c750815e2   Russell King   [ARM] Arrange for...
424
  	select CPU_ARM720T
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
425
  	select ISA_DMA_API
5cfc8ee0b   John Stultz   ARM: convert arm ...
426
  	select ARCH_USES_GETTIMEOFFSET
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
427
428
  	help
  	  This enables support for systems based on the Hynix HMS720x
3b938be69   Russell King   [ARM] Ensure mach...
429
430
431
  config ARCH_IOP13XX
  	bool "IOP13xx-based"
  	depends on MMU
c750815e2   Russell King   [ARM] Arrange for...
432
  	select CPU_XSC3
3b938be69   Russell King   [ARM] Ensure mach...
433
434
435
  	select PLAT_IOP
  	select PCI
  	select ARCH_SUPPORTS_MSI
8d5796d2e   Lennert Buytenhek   [ARM] 5222/1: All...
436
  	select VMSPLIT_1G
0cdc8b921   Nicolas Pitre   ARM: switch from ...
437
  	select NEED_MACH_MEMORY_H
3b938be69   Russell King   [ARM] Ensure mach...
438
439
  	help
  	  Support for Intel's IOP13XX (XScale) family of processors.
3f7e5815f   Lennert Buytenhek   [ARM] 3817/1: iop...
440
441
  config ARCH_IOP32X
  	bool "IOP32x-based"
a4f7e7636   Russell King   [ARM] nommu: prev...
442
  	depends on MMU
c750815e2   Russell King   [ARM] Arrange for...
443
  	select CPU_XSCALE
7ae1f7ec5   Lennert Buytenhek   [ARM] 3818/1: iop...
444
  	select PLAT_IOP
f7e68bbf4   Russell King   [PATCH] ARM: sele...
445
  	select PCI
bb2b180ca   Russell King   [ARM] fix IOP32x,...
446
  	select ARCH_REQUIRE_GPIOLIB
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
447
  	help
3f7e5815f   Lennert Buytenhek   [ARM] 3817/1: iop...
448
449
450
451
452
453
  	  Support for Intel's 80219 and IOP32X (XScale) family of
  	  processors.
  
  config ARCH_IOP33X
  	bool "IOP33x-based"
  	depends on MMU
c750815e2   Russell King   [ARM] Arrange for...
454
  	select CPU_XSCALE
7ae1f7ec5   Lennert Buytenhek   [ARM] 3818/1: iop...
455
  	select PLAT_IOP
3f7e5815f   Lennert Buytenhek   [ARM] 3817/1: iop...
456
  	select PCI
bb2b180ca   Russell King   [ARM] fix IOP32x,...
457
  	select ARCH_REQUIRE_GPIOLIB
3f7e5815f   Lennert Buytenhek   [ARM] 3817/1: iop...
458
459
  	help
  	  Support for Intel's IOP33X (XScale) family of processors.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
460

3b938be69   Russell King   [ARM] Ensure mach...
461
462
  config ARCH_IXP23XX
   	bool "IXP23XX-based"
a4f7e7636   Russell King   [ARM] nommu: prev...
463
  	depends on MMU
c750815e2   Russell King   [ARM] Arrange for...
464
  	select CPU_XSC3
3b938be69   Russell King   [ARM] Ensure mach...
465
   	select PCI
5cfc8ee0b   John Stultz   ARM: convert arm ...
466
  	select ARCH_USES_GETTIMEOFFSET
0cdc8b921   Nicolas Pitre   ARM: switch from ...
467
  	select NEED_MACH_MEMORY_H
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
468
  	help
3b938be69   Russell King   [ARM] Ensure mach...
469
  	  Support for Intel's IXP23xx (XScale) family of processors.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
470
471
472
  
  config ARCH_IXP2000
  	bool "IXP2400/2800-based"
a4f7e7636   Russell King   [ARM] nommu: prev...
473
  	depends on MMU
c750815e2   Russell King   [ARM] Arrange for...
474
  	select CPU_XSCALE
f7e68bbf4   Russell King   [PATCH] ARM: sele...
475
  	select PCI
5cfc8ee0b   John Stultz   ARM: convert arm ...
476
  	select ARCH_USES_GETTIMEOFFSET
0cdc8b921   Nicolas Pitre   ARM: switch from ...
477
  	select NEED_MACH_MEMORY_H
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
478
479
  	help
  	  Support for Intel's IXP2400/2800 (XScale) family of processors.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
480

3b938be69   Russell King   [ARM] Ensure mach...
481
482
  config ARCH_IXP4XX
  	bool "IXP4xx-based"
a4f7e7636   Russell King   [ARM] nommu: prev...
483
  	depends on MMU
234b6cedd   Russell King   clocksource: conv...
484
  	select CLKSRC_MMIO
c750815e2   Russell King   [ARM] Arrange for...
485
  	select CPU_XSCALE
8858e9afd   Milan Svoboda   [ARM] 4376/1: Sel...
486
  	select GENERIC_GPIO
3b938be69   Russell King   [ARM] Ensure mach...
487
  	select GENERIC_CLOCKEVENTS
5b0d495c0   Russell King   ARM: ixp4xx: conv...
488
  	select HAVE_SCHED_CLOCK
0b05da720   Hans Ulli Kroll   ARM: 6520/1: Kcon...
489
  	select MIGHT_HAVE_PCI
485bdde78   Russell King   [ARM] dmabounce r...
490
  	select DMABOUNCE if PCI
c47130743   Lennert Buytenhek   [ARM] 3388/1: ixp...
491
  	help
3b938be69   Russell King   [ARM] Ensure mach...
492
  	  Support for Intel's IXP4XX (XScale) family of processors.
c47130743   Lennert Buytenhek   [ARM] 3388/1: ixp...
493

edabd38e1   Saeed Bishara   ARM: add base sup...
494
495
  config ARCH_DOVE
  	bool "Marvell Dove"
7b769bb3e   Konstantin Porotchkin   ARM: Moving Marve...
496
  	select CPU_V7
edabd38e1   Saeed Bishara   ARM: add base sup...
497
  	select PCI
edabd38e1   Saeed Bishara   ARM: add base sup...
498
  	select ARCH_REQUIRE_GPIOLIB
edabd38e1   Saeed Bishara   ARM: add base sup...
499
500
501
502
  	select GENERIC_CLOCKEVENTS
  	select PLAT_ORION
  	help
  	  Support for the Marvell Dove SoC 88AP510
651c74c74   Saeed Bishara   [ARM] add Marvell...
503
504
  config ARCH_KIRKWOOD
  	bool "Marvell Kirkwood"
c750815e2   Russell King   [ARM] Arrange for...
505
  	select CPU_FEROCEON
651c74c74   Saeed Bishara   [ARM] add Marvell...
506
  	select PCI
a88656553   Erik Benada   [ARM] orion: conv...
507
  	select ARCH_REQUIRE_GPIOLIB
651c74c74   Saeed Bishara   [ARM] add Marvell...
508
509
510
511
512
  	select GENERIC_CLOCKEVENTS
  	select PLAT_ORION
  	help
  	  Support for the following Marvell Kirkwood series SoCs:
  	  88F6180, 88F6192 and 88F6281.
408059495   Kevin Wells   ARM: Add support ...
513
514
  config ARCH_LPC32XX
  	bool "NXP LPC32XX"
234b6cedd   Russell King   clocksource: conv...
515
  	select CLKSRC_MMIO
408059495   Kevin Wells   ARM: Add support ...
516
517
518
519
520
  	select CPU_ARM926T
  	select ARCH_REQUIRE_GPIOLIB
  	select HAVE_IDE
  	select ARM_AMBA
  	select USB_ARCH_HAS_OHCI
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
521
  	select CLKDEV_LOOKUP
408059495   Kevin Wells   ARM: Add support ...
522
523
524
  	select GENERIC_CLOCKEVENTS
  	help
  	  Support for the NXP LPC32XX family of processors
794d15b25   Stanislav Samsonov   [ARM] add Marvell...
525
526
  config ARCH_MV78XX0
  	bool "Marvell MV78xx0"
c750815e2   Russell King   [ARM] Arrange for...
527
  	select CPU_FEROCEON
794d15b25   Stanislav Samsonov   [ARM] add Marvell...
528
  	select PCI
a88656553   Erik Benada   [ARM] orion: conv...
529
  	select ARCH_REQUIRE_GPIOLIB
794d15b25   Stanislav Samsonov   [ARM] add Marvell...
530
531
532
533
534
  	select GENERIC_CLOCKEVENTS
  	select PLAT_ORION
  	help
  	  Support for the following Marvell MV78xx0 series SoCs:
  	  MV781x0, MV782x0.
9dd0b194b   Lennert Buytenhek   Orion: orion -> o...
535
  config ARCH_ORION5X
585cf1756   Tzachi Perelstein   [ARM] basic suppo...
536
537
  	bool "Marvell Orion"
  	depends on MMU
c750815e2   Russell King   [ARM] Arrange for...
538
  	select CPU_FEROCEON
038ee0832   Tzachi Perelstein   [ARM] Orion: PCI ...
539
  	select PCI
a88656553   Erik Benada   [ARM] orion: conv...
540
  	select ARCH_REQUIRE_GPIOLIB
51cbff1d6   Tzachi Perelstein   [ARM] Orion: syst...
541
  	select GENERIC_CLOCKEVENTS
69b02f6a9   Lennert Buytenhek   plat-orion: intro...
542
  	select PLAT_ORION
585cf1756   Tzachi Perelstein   [ARM] basic suppo...
543
  	help
9dd0b194b   Lennert Buytenhek   Orion: orion -> o...
544
  	  Support for the following Marvell Orion 5x series SoCs:
d2b2a6bbc   Lennert Buytenhek   [ARM] Orion: add ...
545
  	  Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
d323ade13   Lennert Buytenhek   [ARM] Orion: add ...
546
  	  Orion-2 (5281), Orion-1-90 (6183).
585cf1756   Tzachi Perelstein   [ARM] basic suppo...
547

788c9700e   Russell King   [ARM] Kconfig: so...
548
  config ARCH_MMP
2f7e8faef   Haojian Zhuang   [ARM] mmp: add su...
549
  	bool "Marvell PXA168/910/MMP2"
788c9700e   Russell King   [ARM] Kconfig: so...
550
  	depends on MMU
788c9700e   Russell King   [ARM] Kconfig: so...
551
  	select ARCH_REQUIRE_GPIOLIB
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
552
  	select CLKDEV_LOOKUP
788c9700e   Russell King   [ARM] Kconfig: so...
553
  	select GENERIC_CLOCKEVENTS
157d2644c   Haojian Zhuang   ARM: pxa: change ...
554
  	select GPIO_PXA
28bb7bc61   Russell King   ARM: mmp: convert...
555
  	select HAVE_SCHED_CLOCK
788c9700e   Russell King   [ARM] Kconfig: so...
556
557
  	select TICK_ONESHOT
  	select PLAT_PXA
0bd869611   Haojian Zhuang   ARM: mmp: support...
558
  	select SPARSE_IRQ
3c7241bd3   Leo Yan   ARM: mmp: add sra...
559
  	select GENERIC_ALLOCATOR
788c9700e   Russell King   [ARM] Kconfig: so...
560
  	help
2f7e8faef   Haojian Zhuang   [ARM] mmp: add su...
561
  	  Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.
788c9700e   Russell King   [ARM] Kconfig: so...
562
563
564
565
  
  config ARCH_KS8695
  	bool "Micrel/Kendin KS8695"
  	select CPU_ARM922T
98830bc99   Hartley Sweeten   ARM: 6136/1: ARCH...
566
  	select ARCH_REQUIRE_GPIOLIB
5cfc8ee0b   John Stultz   ARM: convert arm ...
567
  	select ARCH_USES_GETTIMEOFFSET
0cdc8b921   Nicolas Pitre   ARM: switch from ...
568
  	select NEED_MACH_MEMORY_H
788c9700e   Russell King   [ARM] Kconfig: so...
569
570
571
  	help
  	  Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
  	  System-on-Chip devices.
788c9700e   Russell King   [ARM] Kconfig: so...
572
573
574
  config ARCH_W90X900
  	bool "Nuvoton W90X900 CPU"
  	select CPU_ARM926T
c52d3d688   wanzongshun   [ARM] 5548/1: Add...
575
  	select ARCH_REQUIRE_GPIOLIB
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
576
  	select CLKDEV_LOOKUP
6fa5d5f76   Russell King   clocksource: conv...
577
  	select CLKSRC_MMIO
58b5369e6   wanzongshun   ARM: 5674/1: Add ...
578
  	select GENERIC_CLOCKEVENTS
788c9700e   Russell King   [ARM] Kconfig: so...
579
  	help
a8bc4eadd   wanzongshun   ARM: 5676/1: Prov...
580
581
582
583
584
585
586
  	  Support for Nuvoton (Winbond logic dept.) ARM9 processor,
  	  At present, the w90x900 has been renamed nuc900, regarding
  	  the ARM series product line, you can login the following
  	  link address to know more.
  
  	  <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/
  		ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller>
788c9700e   Russell King   [ARM] Kconfig: so...
587

c5f800656   Erik Gilling   [ARM] tegra: init...
588
589
  config ARCH_TEGRA
  	bool "NVIDIA Tegra"
4073723ac   Russell King   Merge branch 'mis...
590
  	select CLKDEV_LOOKUP
234b6cedd   Russell King   clocksource: conv...
591
  	select CLKSRC_MMIO
c5f800656   Erik Gilling   [ARM] tegra: init...
592
593
594
  	select GENERIC_CLOCKEVENTS
  	select GENERIC_GPIO
  	select HAVE_CLK
e3f4c0ab9   Russell King   ARM: tegra: conve...
595
  	select HAVE_SCHED_CLOCK
3b55658ae   Dave Martin   ARM: SMP: Refacto...
596
  	select HAVE_SMP
ce5ea9f37   Dave Martin   ARM: l2x0/pl310: ...
597
  	select MIGHT_HAVE_CACHE_L2X0
7056d423f   Colin Cross   [ARM] tegra: Add ...
598
  	select ARCH_HAS_CPUFREQ
c5f800656   Erik Gilling   [ARM] tegra: init...
599
600
601
  	help
  	  This enables support for NVIDIA Tegra based systems (Tegra APX,
  	  Tegra 6xx and Tegra 2 series).
af75655c0   Jamie Iles   picoxcell: suppor...
602
603
604
605
606
607
608
609
610
611
612
613
  config ARCH_PICOXCELL
  	bool "Picochip picoXcell"
  	select ARCH_REQUIRE_GPIOLIB
  	select ARM_PATCH_PHYS_VIRT
  	select ARM_VIC
  	select CPU_V6K
  	select DW_APB_TIMER
  	select GENERIC_CLOCKEVENTS
  	select GENERIC_GPIO
  	select HAVE_SCHED_CLOCK
  	select HAVE_TCM
  	select NO_IOPORT
98e27a5c1   Jamie Iles   ARM: picoxcell: d...
614
  	select SPARSE_IRQ
af75655c0   Jamie Iles   picoxcell: suppor...
615
616
617
618
619
  	select USE_OF
  	help
  	  This enables support for systems based on the Picochip picoXcell
  	  family of Femtocell devices.  The picoxcell support requires device tree
  	  for all boards.
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
620
621
  config ARCH_PNX4008
  	bool "Philips Nexperia PNX4008 Mobile"
c750815e2   Russell King   [ARM] Arrange for...
622
  	select CPU_ARM926T
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
623
  	select CLKDEV_LOOKUP
5cfc8ee0b   John Stultz   ARM: convert arm ...
624
  	select ARCH_USES_GETTIMEOFFSET
4af6fee18   Deepak Saxena   [ARM] 3610/1: Mak...
625
626
  	help
  	  This enables support for Philips PNX4008 mobile platform.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
627
  config ARCH_PXA
2c8086a5d   eric miao   [ARM] pxa: PXA3xx...
628
  	bool "PXA2xx/PXA3xx-based"
a4f7e7636   Russell King   [ARM] nommu: prev...
629
  	depends on MMU
034d2f5af   Al Viro   [PATCH] arm: fix ...
630
  	select ARCH_MTD_XIP
89c52ed46   Ben Dooks   ARM: Add ARCH_HAS...
631
  	select ARCH_HAS_CPUFREQ
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
632
  	select CLKDEV_LOOKUP
234b6cedd   Russell King   clocksource: conv...
633
  	select CLKSRC_MMIO
7444a72ef   Michael Buesch   gpiolib: allow us...
634
  	select ARCH_REQUIRE_GPIOLIB
981d0f395   Eric Miao   [ARM] 4526/1: pxa...
635
  	select GENERIC_CLOCKEVENTS
157d2644c   Haojian Zhuang   ARM: pxa: change ...
636
  	select GPIO_PXA
7ce830188   Russell King   ARM: pxa: convert...
637
  	select HAVE_SCHED_CLOCK
a88264c24   Russell King   [ARM] pxa: remove...
638
  	select TICK_ONESHOT
bd5ce4332   Eric Miao   [ARM] pxa: introd...
639
  	select PLAT_PXA
6ac6b817f   Haojian Zhuang   ARM: pxa: encode ...
640
  	select SPARSE_IRQ
4e234cc0e   Eric Miao   ARM: pxa: enable ...
641
  	select AUTO_ZRELADDR
8a97ae2f5   Eric Miao   ARM: pxa: enable ...
642
  	select MULTI_IRQ_HANDLER
15e0d9e37   Arnd Bergmann   ARM: pm: let plat...
643
  	select ARM_CPU_SUSPEND if PM
d0ee9f404   Arnd Bergmann   ARM: limit CONFIG...
644
  	select HAVE_IDE
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
645
  	help
2c8086a5d   eric miao   [ARM] pxa: PXA3xx...
646
  	  Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
647

788c9700e   Russell King   [ARM] Kconfig: so...
648
649
  config ARCH_MSM
  	bool "Qualcomm MSM"
4b536b8d9   Steve Muckle   arm: msm: define ...
650
  	select HAVE_CLK
49cbe7863   Eric Miao   [ARM] pxa: add ba...
651
  	select GENERIC_CLOCKEVENTS
923a081c7   Pavel Machek   Add GPIO support ...
652
  	select ARCH_REQUIRE_GPIOLIB
bd32344a6   Stephen Boyd   msm: clock: Migra...
653
  	select CLKDEV_LOOKUP
49cbe7863   Eric Miao   [ARM] pxa: add ba...
654
  	help
4b53eb4f5   Daniel Walker   arm: msm: allow A...
655
656
657
658
659
  	  Support for Qualcomm MSM/QSD based systems.  This runs on the
  	  apps processor of the MSM/QSD and depends on a shared memory
  	  interface to the modem processor which runs the baseband
  	  stack and controls some vital subsystems
  	  (clock and power control, etc).
49cbe7863   Eric Miao   [ARM] pxa: add ba...
660

c793c1b0c   Magnus Damm   ARM: mach-shmobil...
661
  config ARCH_SHMOBILE
6d72ad35f   Paul Mundt   ARM: mach-shmobil...
662
663
  	bool "Renesas SH-Mobile / R-Mobile"
  	select HAVE_CLK
5e93c6b4e   Paul Mundt   Merge branch 'mas...
664
  	select CLKDEV_LOOKUP
aa3831cf9   Kyungmin Park   ARM: Consolidate ...
665
  	select HAVE_MACH_CLKDEV
3b55658ae   Dave Martin   ARM: SMP: Refacto...
666
  	select HAVE_SMP
6d72ad35f   Paul Mundt   ARM: mach-shmobil...
667
  	select GENERIC_CLOCKEVENTS
ce5ea9f37   Dave Martin   ARM: l2x0/pl310: ...
668
  	select MIGHT_HAVE_CACHE_L2X0
6d72ad35f   Paul Mundt   ARM: mach-shmobil...
669
670
  	select NO_IOPORT
  	select SPARSE_IRQ
60f1435c3   Magnus Damm   ARM: mach-shmobil...
671
  	select MULTI_IRQ_HANDLER
e3e010913   Rafael J. Wysocki   ARM / shmobile: S...
672
  	select PM_GENERIC_DOMAINS if PM
0cdc8b921   Nicolas Pitre   ARM: switch from ...
673
  	select NEED_MACH_MEMORY_H
c793c1b0c   Magnus Damm   ARM: mach-shmobil...
674
  	help
6d72ad35f   Paul Mundt   ARM: mach-shmobil...
675
  	  Support for Renesas's SH-Mobile and R-Mobile ARM platforms.
c793c1b0c   Magnus Damm   ARM: mach-shmobil...
676

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
677
678
679
680
681
  config ARCH_RPC
  	bool "RiscPC"
  	select ARCH_ACORN
  	select FIQ
  	select TIMER_ACORN
a08b6b796   Al Viro   [PATCH] Kconfig f...
682
  	select ARCH_MAY_HAVE_PC_FDC
341eb7810   Ben Dooks   [ARM] 5140/1: RPC...
683
  	select HAVE_PATA_PLATFORM
065909b91   Russell King   [ARM] Refine sele...
684
  	select ISA_DMA_API
5ea817699   Al Viro   [PATCH] sort the ...
685
  	select NO_IOPORT
07f841b7c   Russell King   [ARM] mm: enable ...
686
  	select ARCH_SPARSEMEM_ENABLE
5cfc8ee0b   John Stultz   ARM: convert arm ...
687
  	select ARCH_USES_GETTIMEOFFSET
d0ee9f404   Arnd Bergmann   ARM: limit CONFIG...
688
  	select HAVE_IDE
0cdc8b921   Nicolas Pitre   ARM: switch from ...
689
  	select NEED_MACH_MEMORY_H
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
690
691
692
693
694
695
  	help
  	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
  	  CD-ROM interface, serial and parallel port, and the floppy drive.
  
  config ARCH_SA1100
  	bool "SA1100-based"
234b6cedd   Russell King   clocksource: conv...
696
  	select CLKSRC_MMIO
c750815e2   Russell King   [ARM] Arrange for...
697
  	select CPU_SA1100
f7e68bbf4   Russell King   [PATCH] ARM: sele...
698
  	select ISA
05944d74b   Russell King   [ARM] Add initial...
699
  	select ARCH_SPARSEMEM_ENABLE
034d2f5af   Al Viro   [PATCH] arm: fix ...
700
  	select ARCH_MTD_XIP
89c52ed46   Ben Dooks   ARM: Add ARCH_HAS...
701
  	select ARCH_HAS_CPUFREQ
1937f5b91   Russell King   ARM: fix sa1100 b...
702
  	select CPU_FREQ
3e238be2f   Russell King   [ARM] sa1100: add...
703
  	select GENERIC_CLOCKEVENTS
edf3ff5ba   Jett.Zhou   ARM: sa1100: clea...
704
  	select CLKDEV_LOOKUP
5094b92f1   Russell King   ARM: sa1100: conv...
705
  	select HAVE_SCHED_CLOCK
3e238be2f   Russell King   [ARM] sa1100: add...
706
  	select TICK_ONESHOT
7444a72ef   Michael Buesch   gpiolib: allow us...
707
  	select ARCH_REQUIRE_GPIOLIB
d0ee9f404   Arnd Bergmann   ARM: limit CONFIG...
708
  	select HAVE_IDE
0cdc8b921   Nicolas Pitre   ARM: switch from ...
709
  	select NEED_MACH_MEMORY_H
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
710
711
  	help
  	  Support for StrongARM 11x0 based boards.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
712
713
  
  config ARCH_S3C2410
63b1f51b2   Ben Dooks   ARM: SAMSUNG: Upd...
714
  	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443, S3C2450"
0a938b976   David Brownell   [PATCH] add CONFI...
715
  	select GENERIC_GPIO
9d56c02a5   Ben Dooks   ARM: Add S3C24XX ...
716
  	select ARCH_HAS_CPUFREQ
9483a578d   David Brownell   add HAVE_CLK to K...
717
  	select HAVE_CLK
e83626f2f   Thomas Abraham   ARM: S3C24XX: Add...
718
  	select CLKDEV_LOOKUP
5cfc8ee0b   John Stultz   ARM: convert arm ...
719
  	select ARCH_USES_GETTIMEOFFSET
20676c15e   Kukjin Kim   ARM: SAMSUNG: Fix...
720
  	select HAVE_S3C2410_I2C if I2C
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
721
722
723
  	help
  	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
  	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
f6c8965ab   Martin Michlmayr   [ARM] 3305/1: Min...
724
  	  the Samsung SMDK2410 development board (and derivatives).
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
725

63b1f51b2   Ben Dooks   ARM: SAMSUNG: Upd...
726
  	  Note, the S3C2416 and the S3C2450 are so close that they even share
25985edce   Lucas De Marchi   Fix common misspe...
727
  	  the same SoC ID code. This means that there is no separate machine
63b1f51b2   Ben Dooks   ARM: SAMSUNG: Upd...
728
  	  directory (no arch/arm/mach-s3c2450) as the S3C2416 was first.
a08ab6376   Ben Dooks   [ARM] S3C64XX: In...
729
730
  config ARCH_S3C64XX
  	bool "Samsung S3C64XX"
89f1fa080   Ben Dooks   ARM: SAMSUNG: Mov...
731
  	select PLAT_SAMSUNG
89f0ce721   Ben Dooks   ARM: S3C64XX: Rem...
732
  	select CPU_V6
89f0ce721   Ben Dooks   ARM: S3C64XX: Rem...
733
  	select ARM_VIC
a08ab6376   Ben Dooks   [ARM] S3C64XX: In...
734
  	select HAVE_CLK
6700397a8   Mark Brown   ARM: S3C64XX: Ena...
735
  	select HAVE_TCM
226e85f4d   Thomas Abraham   ARM: S3C64XX: Add...
736
  	select CLKDEV_LOOKUP
89f0ce721   Ben Dooks   ARM: S3C64XX: Rem...
737
  	select NO_IOPORT
5cfc8ee0b   John Stultz   ARM: convert arm ...
738
  	select ARCH_USES_GETTIMEOFFSET
89c52ed46   Ben Dooks   ARM: Add ARCH_HAS...
739
  	select ARCH_HAS_CPUFREQ
89f0ce721   Ben Dooks   ARM: S3C64XX: Rem...
740
741
742
  	select ARCH_REQUIRE_GPIOLIB
  	select SAMSUNG_CLKSRC
  	select SAMSUNG_IRQ_VIC_TIMER
89f0ce721   Ben Dooks   ARM: S3C64XX: Rem...
743
  	select S3C_GPIO_TRACK
89f0ce721   Ben Dooks   ARM: S3C64XX: Rem...
744
745
746
  	select S3C_DEV_NAND
  	select USB_ARCH_HAS_OHCI
  	select SAMSUNG_GPIOLIB_4BIT
20676c15e   Kukjin Kim   ARM: SAMSUNG: Fix...
747
  	select HAVE_S3C2410_I2C if I2C
c39d8d558   Kyungmin Park   ARM: SAMSUNG: Fix...
748
  	select HAVE_S3C2410_WATCHDOG if WATCHDOG
a08ab6376   Ben Dooks   [ARM] S3C64XX: In...
749
750
  	help
  	  Samsung S3C64XX series based systems
49b7a491b   Kukjin Kim   ARM: S5P64X0: Upd...
751
752
  config ARCH_S5P64X0
  	bool "Samsung S5P6440 S5P6450"
c4ffccddd   Kukjin Kim   ARM: S5P6440: Add...
753
754
755
  	select CPU_V6
  	select GENERIC_GPIO
  	select HAVE_CLK
d8b22d25b   Thomas Abraham   ARM: S5P64X0: Add...
756
  	select CLKDEV_LOOKUP
0665ccc4c   Chanwoo Choi   clocksource: conv...
757
  	select CLKSRC_MMIO
c39d8d558   Kyungmin Park   ARM: SAMSUNG: Fix...
758
  	select HAVE_S3C2410_WATCHDOG if WATCHDOG
9e65bbf21   Sangbeom Kim   ARM: S5P: Update ...
759
760
  	select GENERIC_CLOCKEVENTS
  	select HAVE_SCHED_CLOCK
20676c15e   Kukjin Kim   ARM: SAMSUNG: Fix...
761
  	select HAVE_S3C2410_I2C if I2C
754961a8e   Kukjin Kim   ARM: SAMSUNG: Fix...
762
  	select HAVE_S3C_RTC if RTC_CLASS
c4ffccddd   Kukjin Kim   ARM: S5P6440: Add...
763
  	help
49b7a491b   Kukjin Kim   ARM: S5P64X0: Upd...
764
765
  	  Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440,
  	  SMDK6450.
c4ffccddd   Kukjin Kim   ARM: S5P6440: Add...
766

acc84707d   Marek Szyprowski   ARM: SAMSUNG: mov...
767
768
  config ARCH_S5PC100
  	bool "Samsung S5PC100"
5a7652f20   James Min   ARM: S5PC100: Kco...
769
770
  	select GENERIC_GPIO
  	select HAVE_CLK
29e8eb0fd   Thomas Abraham   ARM: S5PC100: Add...
771
  	select CLKDEV_LOOKUP
5a7652f20   James Min   ARM: S5PC100: Kco...
772
  	select CPU_V7
d6d502fa4   Kukjin Kim   ARM: 5952/1: ARM:...
773
  	select ARM_L1_CACHE_SHIFT_6
925c68cdc   Ben Dooks   ARM: SAMSUNG: Fix...
774
  	select ARCH_USES_GETTIMEOFFSET
20676c15e   Kukjin Kim   ARM: SAMSUNG: Fix...
775
  	select HAVE_S3C2410_I2C if I2C
754961a8e   Kukjin Kim   ARM: SAMSUNG: Fix...
776
  	select HAVE_S3C_RTC if RTC_CLASS
c39d8d558   Kyungmin Park   ARM: SAMSUNG: Fix...
777
  	select HAVE_S3C2410_WATCHDOG if WATCHDOG
5a7652f20   James Min   ARM: S5PC100: Kco...
778
  	help
acc84707d   Marek Szyprowski   ARM: SAMSUNG: mov...
779
  	  Samsung S5PC100 series based systems
5a7652f20   James Min   ARM: S5PC100: Kco...
780

170f4e425   Kukjin Kim   ARM: S5PV210: Upd...
781
782
783
  config ARCH_S5PV210
  	bool "Samsung S5PV210/S5PC110"
  	select CPU_V7
eecb6a842   Kyungmin Park   ARM: S5PV210: Pla...
784
  	select ARCH_SPARSEMEM_ENABLE
0f75a96bc   Kamil Debski   ARM: S5P: Add sup...
785
  	select ARCH_HAS_HOLES_MEMORYMODEL
170f4e425   Kukjin Kim   ARM: S5PV210: Upd...
786
787
  	select GENERIC_GPIO
  	select HAVE_CLK
b2a9dd466   Thomas Abraham   ARM: S5PV210: Add...
788
  	select CLKDEV_LOOKUP
0665ccc4c   Chanwoo Choi   clocksource: conv...
789
  	select CLKSRC_MMIO
170f4e425   Kukjin Kim   ARM: S5PV210: Upd...
790
  	select ARM_L1_CACHE_SHIFT_6
d8144aea5   Jaecheol Lee   ARM: S5PV210: Upd...
791
  	select ARCH_HAS_CPUFREQ
9e65bbf21   Sangbeom Kim   ARM: S5P: Update ...
792
793
  	select GENERIC_CLOCKEVENTS
  	select HAVE_SCHED_CLOCK
20676c15e   Kukjin Kim   ARM: SAMSUNG: Fix...
794
  	select HAVE_S3C2410_I2C if I2C
754961a8e   Kukjin Kim   ARM: SAMSUNG: Fix...
795
  	select HAVE_S3C_RTC if RTC_CLASS
c39d8d558   Kyungmin Park   ARM: SAMSUNG: Fix...
796
  	select HAVE_S3C2410_WATCHDOG if WATCHDOG
0cdc8b921   Nicolas Pitre   ARM: switch from ...
797
  	select NEED_MACH_MEMORY_H
170f4e425   Kukjin Kim   ARM: S5PV210: Upd...
798
799
  	help
  	  Samsung S5PV210/S5PC110 series based systems
830145796   Kukjin Kim   ARM: EXYNOS: Add ...
800
801
  config ARCH_EXYNOS
  	bool "SAMSUNG EXYNOS"
cc0e72b87   Changhwan Youn   ARM: S5PV310: Add...
802
  	select CPU_V7
f567fa6f6   Kyungmin Park   ARM: S5PV310: Pla...
803
  	select ARCH_SPARSEMEM_ENABLE
0f75a96bc   Kamil Debski   ARM: S5P: Add sup...
804
  	select ARCH_HAS_HOLES_MEMORYMODEL
cc0e72b87   Changhwan Youn   ARM: S5PV310: Add...
805
806
  	select GENERIC_GPIO
  	select HAVE_CLK
badc4f2d6   Thomas Abraham   ARM: EXYNOS4: Add...
807
  	select CLKDEV_LOOKUP
b333fb16d   Sunyoung Kang   ARM: S5PV310: Upd...
808
  	select ARCH_HAS_CPUFREQ
cc0e72b87   Changhwan Youn   ARM: S5PV310: Add...
809
  	select GENERIC_CLOCKEVENTS
754961a8e   Kukjin Kim   ARM: SAMSUNG: Fix...
810
  	select HAVE_S3C_RTC if RTC_CLASS
20676c15e   Kukjin Kim   ARM: SAMSUNG: Fix...
811
  	select HAVE_S3C2410_I2C if I2C
c39d8d558   Kyungmin Park   ARM: SAMSUNG: Fix...
812
  	select HAVE_S3C2410_WATCHDOG if WATCHDOG
0cdc8b921   Nicolas Pitre   ARM: switch from ...
813
  	select NEED_MACH_MEMORY_H
cc0e72b87   Changhwan Youn   ARM: S5PV310: Add...
814
  	help
830145796   Kukjin Kim   ARM: EXYNOS: Add ...
815
  	  Support for SAMSUNG's EXYNOS SoCs (EXYNOS4/5)
cc0e72b87   Changhwan Youn   ARM: S5PV310: Add...
816

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
817
818
  config ARCH_SHARK
  	bool "Shark"
c750815e2   Russell King   [ARM] Arrange for...
819
  	select CPU_SA110
f7e68bbf4   Russell King   [PATCH] ARM: sele...
820
821
  	select ISA
  	select ISA_DMA
3bca103a1   Nicolas Pitre   [ARM] 5295/1: mak...
822
  	select ZONE_DMA
f7e68bbf4   Russell King   [PATCH] ARM: sele...
823
  	select PCI
5cfc8ee0b   John Stultz   ARM: convert arm ...
824
  	select ARCH_USES_GETTIMEOFFSET
0cdc8b921   Nicolas Pitre   ARM: switch from ...
825
  	select NEED_MACH_MEMORY_H
f999b8bde   Martin Michlmayr   [ARM] 3304/1: Add...
826
827
828
  	help
  	  Support for the StrongARM based Digital DNARD machine, also known
  	  as "Shark" (<http://www.shark-linux.de/shark.html>).
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
829

d98aac759   Linus Walleij   [ARM] 5480/1: U30...
830
831
832
  config ARCH_U300
  	bool "ST-Ericsson U300 Series"
  	depends on MMU
234b6cedd   Russell King   clocksource: conv...
833
  	select CLKSRC_MMIO
d98aac759   Linus Walleij   [ARM] 5480/1: U30...
834
  	select CPU_ARM926T
5c21b7ca2   Russell King   ARM: u300: conver...
835
  	select HAVE_SCHED_CLOCK
bc581770c   Linus Walleij   ARM: 5580/2: ARM ...
836
  	select HAVE_TCM
d98aac759   Linus Walleij   [ARM] 5480/1: U30...
837
  	select ARM_AMBA
5485c1e09   Linus Walleij   mach-u300: patch ...
838
  	select ARM_PATCH_PHYS_VIRT
d98aac759   Linus Walleij   [ARM] 5480/1: U30...
839
  	select ARM_VIC
d98aac759   Linus Walleij   [ARM] 5480/1: U30...
840
  	select GENERIC_CLOCKEVENTS
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
841
  	select CLKDEV_LOOKUP
aa3831cf9   Kyungmin Park   ARM: Consolidate ...
842
  	select HAVE_MACH_CLKDEV
d98aac759   Linus Walleij   [ARM] 5480/1: U30...
843
  	select GENERIC_GPIO
cc890cd78   Linus Walleij   ARM: 7083/1: rewr...
844
  	select ARCH_REQUIRE_GPIOLIB
d98aac759   Linus Walleij   [ARM] 5480/1: U30...
845
846
  	help
  	  Support for ST-Ericsson U300 series mobile platforms.
ccf50e234   Russell King   ARM: Fix sorting ...
847
848
849
850
  config ARCH_U8500
  	bool "ST-Ericsson U8500 Series"
  	select CPU_V7
  	select ARM_AMBA
ccf50e234   Russell King   ARM: Fix sorting ...
851
  	select GENERIC_CLOCKEVENTS
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
852
  	select CLKDEV_LOOKUP
94bdc0e2d   Rabin Vincent   ARM: 5973/1: ux50...
853
  	select ARCH_REQUIRE_GPIOLIB
7c1a70e99   Martin Persson   ux500: Add cpufre...
854
  	select ARCH_HAS_CPUFREQ
3b55658ae   Dave Martin   ARM: SMP: Refacto...
855
  	select HAVE_SMP
ce5ea9f37   Dave Martin   ARM: l2x0/pl310: ...
856
  	select MIGHT_HAVE_CACHE_L2X0
ccf50e234   Russell King   ARM: Fix sorting ...
857
858
859
860
861
862
863
864
  	help
  	  Support for ST-Ericsson's Ux500 architecture
  
  config ARCH_NOMADIK
  	bool "STMicroelectronics Nomadik"
  	select ARM_AMBA
  	select ARM_VIC
  	select CPU_ARM926T
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
865
  	select CLKDEV_LOOKUP
ccf50e234   Russell King   ARM: Fix sorting ...
866
  	select GENERIC_CLOCKEVENTS
ce5ea9f37   Dave Martin   ARM: l2x0/pl310: ...
867
  	select MIGHT_HAVE_CACHE_L2X0
ccf50e234   Russell King   ARM: Fix sorting ...
868
869
870
  	select ARCH_REQUIRE_GPIOLIB
  	help
  	  Support for the Nomadik platform by ST-Ericsson
7c6337e22   Kevin Hilman   [ARM] 4303/3: bas...
871
872
  config ARCH_DAVINCI
  	bool "TI DaVinci"
7c6337e22   Kevin Hilman   [ARM] 4303/3: bas...
873
  	select GENERIC_CLOCKEVENTS
dce1115bc   David Brownell   ARM: DaVinci: SOC...
874
  	select ARCH_REQUIRE_GPIOLIB
3bca103a1   Nicolas Pitre   [ARM] 5295/1: mak...
875
  	select ZONE_DMA
9232fcc99   Kevin Hilman   davinci: add defa...
876
  	select HAVE_IDE
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
877
  	select CLKDEV_LOOKUP
20e9969b3   David Brownell   davinci: add SRAM...
878
  	select GENERIC_ALLOCATOR
dc7ad3b3d   Russell King   ARM: Fix generic ...
879
  	select GENERIC_IRQ_CHIP
ae88e05a5   Sekhar Nori   davinci: enable A...
880
  	select ARCH_HAS_HOLES_MEMORYMODEL
7c6337e22   Kevin Hilman   [ARM] 4303/3: bas...
881
882
  	help
  	  Support for TI's DaVinci platform.
3b938be69   Russell King   [ARM] Ensure mach...
883
884
  config ARCH_OMAP
  	bool "TI OMAP"
9483a578d   David Brownell   add HAVE_CLK to K...
885
  	select HAVE_CLK
7444a72ef   Michael Buesch   gpiolib: allow us...
886
  	select ARCH_REQUIRE_GPIOLIB
89c52ed46   Ben Dooks   ARM: Add ARCH_HAS...
887
  	select ARCH_HAS_CPUFREQ
354a183f5   Russell King - ARM Linux   Convert OMAPs 32k...
888
  	select CLKSRC_MMIO
06cad098d   Kevin Hilman   ARM: OMAP: Fix cl...
889
  	select GENERIC_CLOCKEVENTS
dc548fbbd   Russell King   ARM: omap: conver...
890
  	select HAVE_SCHED_CLOCK
9af915da2   Sriram   ARCH OMAP : enabl...
891
  	select ARCH_HAS_HOLES_MEMORYMODEL
3b938be69   Russell King   [ARM] Ensure mach...
892
  	help
6e457bb05   Lennert Buytenhek   update OMAP Kconf...
893
  	  Support for TI's OMAP platform (OMAP1/2/3/4).
3b938be69   Russell King   [ARM] Ensure mach...
894

cee37e501   viresh kumar   ARM: 6016/1: ST S...
895
896
897
898
  config PLAT_SPEAR
  	bool "ST SPEAr"
  	select ARM_AMBA
  	select ARCH_REQUIRE_GPIOLIB
6d803ba73   Jean-Christop PLAGNIOL-VILLARD   ARM: 6483/1: arm ...
899
  	select CLKDEV_LOOKUP
d6e15d785   Russell King   clocksource: conv...
900
  	select CLKSRC_MMIO
cee37e501   viresh kumar   ARM: 6016/1: ST S...
901
  	select GENERIC_CLOCKEVENTS
cee37e501   viresh kumar   ARM: 6016/1: ST S...
902
903
904
  	select HAVE_CLK
  	help
  	  Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx).
21f47fbc5   Alexey Charkov   ARM: 6597/1: Add ...
905
906
907
908
909
910
911
912
913
914
  config ARCH_VT8500
  	bool "VIA/WonderMedia 85xx"
  	select CPU_ARM926T
  	select GENERIC_GPIO
  	select ARCH_HAS_CPUFREQ
  	select GENERIC_CLOCKEVENTS
  	select ARCH_REQUIRE_GPIOLIB
  	select HAVE_PWM
  	help
  	  Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip.
02c981c07   Binghua Duan   ARM: CSR: Adding ...
915

b85a3ef4a   John Linn   ARM: Xilinx: Addi...
916
917
  config ARCH_ZYNQ
  	bool "Xilinx Zynq ARM Cortex A9 Platform"
02c981c07   Binghua Duan   ARM: CSR: Adding ...
918
  	select CPU_V7
02c981c07   Binghua Duan   ARM: CSR: Adding ...
919
920
  	select GENERIC_CLOCKEVENTS
  	select CLKDEV_LOOKUP
b85a3ef4a   John Linn   ARM: Xilinx: Addi...
921
922
923
  	select ARM_GIC
  	select ARM_AMBA
  	select ICST
ce5ea9f37   Dave Martin   ARM: l2x0/pl310: ...
924
  	select MIGHT_HAVE_CACHE_L2X0
02c981c07   Binghua Duan   ARM: CSR: Adding ...
925
  	select USE_OF
02c981c07   Binghua Duan   ARM: CSR: Adding ...
926
  	help
b85a3ef4a   John Linn   ARM: Xilinx: Addi...
927
  	  Support for Xilinx Zynq ARM Cortex A9 Platform
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
928
  endchoice
ccf50e234   Russell King   ARM: Fix sorting ...
929
930
931
932
933
  #
  # This is sorted alphabetically by mach-* pathname.  However, plat-*
  # Kconfigs may be included either alphabetically (according to the
  # plat- suffix) or along side the corresponding mach-* source.
  #
95b8f20fd   Russell King   ARM: fix badly pl...
934
935
936
  source "arch/arm/mach-at91/Kconfig"
  
  source "arch/arm/mach-bcmring/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
937
  source "arch/arm/mach-clps711x/Kconfig"
d94f944e1   Anton Vorontsov   ARM: cns3xxx: Add...
938
  source "arch/arm/mach-cns3xxx/Kconfig"
95b8f20fd   Russell King   ARM: fix badly pl...
939
940
941
  source "arch/arm/mach-davinci/Kconfig"
  
  source "arch/arm/mach-dove/Kconfig"
e7736d47a   Lennert Buytenhek   [ARM] 3369/1: ep9...
942
  source "arch/arm/mach-ep93xx/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
943
  source "arch/arm/mach-footbridge/Kconfig"
59d3a193f   Paulius Zaleckas   ARM: Add Gemini a...
944
  source "arch/arm/mach-gemini/Kconfig"
95b8f20fd   Russell King   ARM: fix badly pl...
945
  source "arch/arm/mach-h720x/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
946
  source "arch/arm/mach-integrator/Kconfig"
3f7e5815f   Lennert Buytenhek   [ARM] 3817/1: iop...
947
948
949
  source "arch/arm/mach-iop32x/Kconfig"
  
  source "arch/arm/mach-iop33x/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
950

285f5fa7e   Dan Williams   [ARM] 3995/1: iop...
951
  source "arch/arm/mach-iop13xx/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
952
953
954
  source "arch/arm/mach-ixp4xx/Kconfig"
  
  source "arch/arm/mach-ixp2000/Kconfig"
c47130743   Lennert Buytenhek   [ARM] 3388/1: ixp...
955
  source "arch/arm/mach-ixp23xx/Kconfig"
95b8f20fd   Russell King   ARM: fix badly pl...
956
957
958
  source "arch/arm/mach-kirkwood/Kconfig"
  
  source "arch/arm/mach-ks8695/Kconfig"
408059495   Kevin Wells   ARM: Add support ...
959
  source "arch/arm/mach-lpc32xx/Kconfig"
95b8f20fd   Russell King   ARM: fix badly pl...
960
  source "arch/arm/mach-msm/Kconfig"
794d15b25   Stanislav Samsonov   [ARM] add Marvell...
961
  source "arch/arm/mach-mv78xx0/Kconfig"
95b8f20fd   Russell King   ARM: fix badly pl...
962
  source "arch/arm/plat-mxc/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
963

1d3f33d54   Shawn Guo   ARM: mxs: Add bui...
964
  source "arch/arm/mach-mxs/Kconfig"
95b8f20fd   Russell King   ARM: fix badly pl...
965
  source "arch/arm/mach-netx/Kconfig"
49cbe7863   Eric Miao   [ARM] pxa: add ba...
966

95b8f20fd   Russell King   ARM: fix badly pl...
967
968
  source "arch/arm/mach-nomadik/Kconfig"
  source "arch/arm/plat-nomadik/Kconfig"
d48af15ea   Tony Lindgren   [PATCH] ARM: 2802...
969
970
971
  source "arch/arm/plat-omap/Kconfig"
  
  source "arch/arm/mach-omap1/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
972

1dbae815a   Tony Lindgren   [ARM] 3145/1: OMA...
973
  source "arch/arm/mach-omap2/Kconfig"
9dd0b194b   Lennert Buytenhek   Orion: orion -> o...
974
  source "arch/arm/mach-orion5x/Kconfig"
585cf1756   Tzachi Perelstein   [ARM] basic suppo...
975

95b8f20fd   Russell King   ARM: fix badly pl...
976
977
  source "arch/arm/mach-pxa/Kconfig"
  source "arch/arm/plat-pxa/Kconfig"
585cf1756   Tzachi Perelstein   [ARM] basic suppo...
978

95b8f20fd   Russell King   ARM: fix badly pl...
979
980
981
982
983
  source "arch/arm/mach-mmp/Kconfig"
  
  source "arch/arm/mach-realview/Kconfig"
  
  source "arch/arm/mach-sa1100/Kconfig"
edabd38e1   Saeed Bishara   ARM: add base sup...
984

cf3836782   Ben Dooks   ARM: SAMSUNG: Add...
985
  source "arch/arm/plat-samsung/Kconfig"
a21765a70   Ben Dooks   [ARM] 4157/2: S3C...
986
  source "arch/arm/plat-s3c24xx/Kconfig"
c4ffccddd   Kukjin Kim   ARM: S5P6440: Add...
987
  source "arch/arm/plat-s5p/Kconfig"
a21765a70   Ben Dooks   [ARM] 4157/2: S3C...
988

cee37e501   viresh kumar   ARM: 6016/1: ST S...
989
  source "arch/arm/plat-spear/Kconfig"
a21765a70   Ben Dooks   [ARM] 4157/2: S3C...
990
991
  
  if ARCH_S3C2410
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
992
  source "arch/arm/mach-s3c2410/Kconfig"
a21765a70   Ben Dooks   [ARM] 4157/2: S3C...
993
  source "arch/arm/mach-s3c2412/Kconfig"
f1290a49c   Yauhen Kharuzhy   ARM: S3C2416: Add...
994
  source "arch/arm/mach-s3c2416/Kconfig"
a21765a70   Ben Dooks   [ARM] 4157/2: S3C...
995
  source "arch/arm/mach-s3c2440/Kconfig"
e4d06e395   Ben Dooks   [ARM] 4198/2: S3C...
996
  source "arch/arm/mach-s3c2443/Kconfig"
a21765a70   Ben Dooks   [ARM] 4157/2: S3C...
997
  endif
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
998

a08ab6376   Ben Dooks   [ARM] S3C64XX: In...
999
  if ARCH_S3C64XX
431107ea5   Ben Dooks   ARM: S3C64XX: Mer...
1000
  source "arch/arm/mach-s3c64xx/Kconfig"
a08ab6376   Ben Dooks   [ARM] S3C64XX: In...
1001
  endif
49b7a491b   Kukjin Kim   ARM: S5P64X0: Upd...
1002
  source "arch/arm/mach-s5p64x0/Kconfig"
c4ffccddd   Kukjin Kim   ARM: S5P6440: Add...
1003

5a7652f20   James Min   ARM: S5PC100: Kco...
1004
  source "arch/arm/mach-s5pc100/Kconfig"
5a7652f20   James Min   ARM: S5PC100: Kco...
1005

170f4e425   Kukjin Kim   ARM: S5PV210: Upd...
1006
  source "arch/arm/mach-s5pv210/Kconfig"
830145796   Kukjin Kim   ARM: EXYNOS: Add ...
1007
  source "arch/arm/mach-exynos/Kconfig"
cc0e72b87   Changhwan Youn   ARM: S5PV310: Add...
1008

882d01f96   Russell King   Merge branch 'for...
1009
  source "arch/arm/mach-shmobile/Kconfig"
52c543f90   Quinn Jensen   [ARM] 4461/1: MXC...
1010

c5f800656   Erik Gilling   [ARM] tegra: init...
1011
  source "arch/arm/mach-tegra/Kconfig"
95b8f20fd   Russell King   ARM: fix badly pl...
1012
  source "arch/arm/mach-u300/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1013

95b8f20fd   Russell King   ARM: fix badly pl...
1014
  source "arch/arm/mach-ux500/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1015
1016
  
  source "arch/arm/mach-versatile/Kconfig"
ceade897f   Russell King   ARM: Add Versatil...
1017
  source "arch/arm/mach-vexpress/Kconfig"
420c34e4c   Russell King   ARM: add versatil...
1018
  source "arch/arm/plat-versatile/Kconfig"
ceade897f   Russell King   ARM: Add Versatil...
1019

21f47fbc5   Alexey Charkov   ARM: 6597/1: Add ...
1020
  source "arch/arm/mach-vt8500/Kconfig"
7ec80ddf0   wanzongshun   [ARM] 5338/1: Add...
1021
  source "arch/arm/mach-w90x900/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1022
1023
1024
  # Definitions to make life easier
  config ARCH_ACORN
  	bool
7ae1f7ec5   Lennert Buytenhek   [ARM] 3818/1: iop...
1025
1026
  config PLAT_IOP
  	bool
469d30448   Mikael Pettersson   iop: clockevent s...
1027
  	select GENERIC_CLOCKEVENTS
08f26b1ef   Russell King   ARM: iop: convert...
1028
  	select HAVE_SCHED_CLOCK
7ae1f7ec5   Lennert Buytenhek   [ARM] 3818/1: iop...
1029

69b02f6a9   Lennert Buytenhek   plat-orion: intro...
1030
1031
  config PLAT_ORION
  	bool
bfe45e0be   Russell King   clocksource: conv...
1032
  	select CLKSRC_MMIO
dc7ad3b3d   Russell King   ARM: Fix generic ...
1033
  	select GENERIC_IRQ_CHIP
f06a16246   Russell King   ARM: orion: conve...
1034
  	select HAVE_SCHED_CLOCK
69b02f6a9   Lennert Buytenhek   plat-orion: intro...
1035

bd5ce4332   Eric Miao   [ARM] pxa: introd...
1036
1037
  config PLAT_PXA
  	bool
f4b8b319b   Russell King   ARM: Realview/Ver...
1038
1039
  config PLAT_VERSATILE
  	bool
e38877145   Russell King   ARM: Realview/Ver...
1040
1041
  config ARM_TIMER_SP804
  	bool
bfe45e0be   Russell King   clocksource: conv...
1042
  	select CLKSRC_MMIO
e38877145   Russell King   ARM: Realview/Ver...
1043

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1044
  source arch/arm/mm/Kconfig
958cab0fb   Russell King   ARM: Allow Kconfi...
1045
1046
1047
1048
  config ARM_NR_BANKS
  	int
  	default 16 if ARCH_EP93XX
  	default 8
afe4b25e7   Lennert Buytenhek   [ARM] 3881/4: xsc...
1049
1050
  config IWMMXT
  	bool "Enable iWMMXt support"
ef6c84454   Haojian Zhuang   ARM: pxa: add iwm...
1051
1052
  	depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_PJ4
  	default y if PXA27x || PXA3xx || PXA95x || ARCH_MMP
afe4b25e7   Lennert Buytenhek   [ARM] 3881/4: xsc...
1053
1054
1055
  	help
  	  Enable support for iWMMXt context switching at run time if
  	  running on a CPU that supports it.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1056
1057
  config XSCALE_PMU
  	bool
bfc994b5f   Paul Bolle   Kconfig: remove a...
1058
  	depends on CPU_XSCALE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1059
  	default y
0f4f0672a   Jamie Iles   ARM: 5899/2: arm:...
1060
  config CPU_HAS_PMU
e399b1a4e   Russell King   ARM: v6k: introdu...
1061
  	depends on (CPU_V6 || CPU_V6K || CPU_V7 || XSCALE_PMU) && \
8954bb0da   Will Deacon   ARM: 6195/1: OMAP...
1062
  		   (!ARCH_OMAP3 || OMAP3_EMU)
0f4f0672a   Jamie Iles   ARM: 5899/2: arm:...
1063
1064
  	default y
  	bool
521086412   eric miao   ARM: 6532/1: Allo...
1065
1066
1067
1068
  config MULTI_IRQ_HANDLER
  	bool
  	help
  	  Allow each machine to specify it's own IRQ handler at run time.
3b93e7b08   Hyok S. Choi   [ARM] nommu: add ...
1069
1070
1071
  if !MMU
  source "arch/arm/Kconfig-nommu"
  endif
9cba3ccc8   Catalin Marinas   [ARM] 5488/1: ARM...
1072
1073
  config ARM_ERRATA_411920
  	bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
e399b1a4e   Russell King   ARM: v6k: introdu...
1074
  	depends on CPU_V6 || CPU_V6K
9cba3ccc8   Catalin Marinas   [ARM] 5488/1: ARM...
1075
1076
1077
1078
1079
  	help
  	  Invalidation of the Instruction Cache operation can
  	  fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
  	  It does not affect the MPCore. This option enables the ARM Ltd.
  	  recommended workaround.
7ce236fcd   Catalin Marinas   [ARM] 5487/1: ARM...
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
  config ARM_ERRATA_430973
  	bool "ARM errata: Stale prediction on replaced interworking branch"
  	depends on CPU_V7
  	help
  	  This option enables the workaround for the 430973 Cortex-A8
  	  (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb
  	  interworking branch is replaced with another code sequence at the
  	  same virtual address, whether due to self-modifying code or virtual
  	  to physical address re-mapping, Cortex-A8 does not recover from the
  	  stale interworking branch prediction. This results in Cortex-A8
  	  executing the new code sequence in the incorrect ARM or Thumb state.
  	  The workaround enables the BTB/BTAC operations by setting ACTLR.IBE
  	  and also flushes the branch target cache at every context switch.
  	  Note that setting specific bits in the ACTLR register may not be
  	  available in non-secure mode.
855c551f5   Catalin Marinas   [ARM] 5490/1: ARM...
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
  config ARM_ERRATA_458693
  	bool "ARM errata: Processor deadlock when a false hazard is created"
  	depends on CPU_V7
  	help
  	  This option enables the workaround for the 458693 Cortex-A8 (r2p0)
  	  erratum. For very specific sequences of memory operations, it is
  	  possible for a hazard condition intended for a cache line to instead
  	  be incorrectly associated with a different cache line. This false
  	  hazard might then cause a processor deadlock. The workaround enables
  	  the L1 caching of the NEON accesses and disables the PLD instruction
  	  in the ACTLR register. Note that setting specific bits in the ACTLR
  	  register may not be available in non-secure mode.
0516e4643   Catalin Marinas   [ARM] 5489/1: ARM...
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
  config ARM_ERRATA_460075
  	bool "ARM errata: Data written to the L2 cache can be overwritten with stale data"
  	depends on CPU_V7
  	help
  	  This option enables the workaround for the 460075 Cortex-A8 (r2p0)
  	  erratum. Any asynchronous access to the L2 cache may encounter a
  	  situation in which recent store transactions to the L2 cache are lost
  	  and overwritten with stale memory contents from external memory. The
  	  workaround disables the write-allocate mode for the L2 cache via the
  	  ACTLR register. Note that setting specific bits in the ACTLR register
  	  may not be available in non-secure mode.
9f05027c7   Will Deacon   ARM: 6388/1: erra...
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
  config ARM_ERRATA_742230
  	bool "ARM errata: DMB operation may be faulty"
  	depends on CPU_V7 && SMP
  	help
  	  This option enables the workaround for the 742230 Cortex-A9
  	  (r1p0..r2p2) erratum. Under rare circumstances, a DMB instruction
  	  between two write operations may not ensure the correct visibility
  	  ordering of the two writes. This workaround sets a specific bit in
  	  the diagnostic register of the Cortex-A9 which causes the DMB
  	  instruction to behave as a DSB, ensuring the correct behaviour of
  	  the two writes.
a672e99b1   Will Deacon   ARM: 6389/1: erra...
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
  config ARM_ERRATA_742231
  	bool "ARM errata: Incorrect hazard handling in the SCU may lead to data corruption"
  	depends on CPU_V7 && SMP
  	help
  	  This option enables the workaround for the 742231 Cortex-A9
  	  (r2p0..r2p2) erratum. Under certain conditions, specific to the
  	  Cortex-A9 MPCore micro-architecture, two CPUs working in SMP mode,
  	  accessing some data located in the same cache line, may get corrupted
  	  data due to bad handling of the address hazard when the line gets
  	  replaced from one of the CPUs at the same time as another CPU is
  	  accessing it. This workaround sets specific bits in the diagnostic
  	  register of the Cortex-A9 which reduces the linefill issuing
  	  capabilities of the processor.
9e65582a8   Santosh Shilimkar   ARM: 5919/1: ARM:...
1142
  config PL310_ERRATA_588369
fa0ce4035   Will Deacon   ARM: 7162/1: erra...
1143
  	bool "PL310 errata: Clean & Invalidate maintenance operations do not invalidate clean lines"
2839e06c9   Santosh Shilimkar   ARM: 6795/1: l2x0...
1144
  	depends on CACHE_L2X0
9e65582a8   Santosh Shilimkar   ARM: 5919/1: ARM:...
1145
1146
1147
1148
1149
1150
1151
1152
  	help
  	   The PL310 L2 cache controller implements three types of Clean &
  	   Invalidate maintenance operations: by Physical Address
  	   (offset 0x7F0), by Index/Way (0x7F8) and by Way (0x7FC).
  	   They are architecturally defined to behave as the execution of a
  	   clean operation followed immediately by an invalidate operation,
  	   both performing to the same memory location. This functionality
  	   is not correctly implemented in PL310 as clean lines are not
2839e06c9   Santosh Shilimkar   ARM: 6795/1: l2x0...
1153
  	   invalidated as a result of these operations.
cdf357f1e   Will Deacon   ARM: 6299/1: erra...
1154
1155
1156
  
  config ARM_ERRATA_720789
  	bool "ARM errata: TLBIASIDIS and TLBIMVAIS operations can broadcast a faulty ASID"
e66dc7452   Dave Martin   ARM: 7196/1: erra...
1157
  	depends on CPU_V7
cdf357f1e   Will Deacon   ARM: 6299/1: erra...
1158
1159
1160
1161
1162
1163
1164
1165
  	help
  	  This option enables the workaround for the 720789 Cortex-A9 (prior to
  	  r2p0) erratum. A faulty ASID can be sent to the other CPUs for the
  	  broadcasted CP15 TLB maintenance operations TLBIASIDIS and TLBIMVAIS.
  	  As a consequence of this erratum, some TLB entries which should be
  	  invalidated are not, resulting in an incoherency in the system page
  	  tables. The workaround changes the TLB flushing routines to invalidate
  	  entries regardless of the ASID.
475d92fc6   Will Deacon   ARM: 6416/1: erra...
1166

1f0090a1e   Russell King   Merge branch 'mis...
1167
  config PL310_ERRATA_727915
fa0ce4035   Will Deacon   ARM: 7162/1: erra...
1168
  	bool "PL310 errata: Background Clean & Invalidate by Way operation can cause data corruption"
1f0090a1e   Russell King   Merge branch 'mis...
1169
1170
1171
1172
1173
1174
1175
1176
  	depends on CACHE_L2X0
  	help
  	  PL310 implements the Clean & Invalidate by Way L2 cache maintenance
  	  operation (offset 0x7FC). This operation runs in background so that
  	  PL310 can handle normal accesses while it is in progress. Under very
  	  rare circumstances, due to this erratum, write data can be lost when
  	  PL310 treats a cacheable write transaction during a Clean &
  	  Invalidate by Way operation.
475d92fc6   Will Deacon   ARM: 6416/1: erra...
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
  config ARM_ERRATA_743622
  	bool "ARM errata: Faulty hazard checking in the Store Buffer may lead to data corruption"
  	depends on CPU_V7
  	help
  	  This option enables the workaround for the 743622 Cortex-A9
  	  (r2p0..r2p2) erratum. Under very rare conditions, a faulty
  	  optimisation in the Cortex-A9 Store Buffer may lead to data
  	  corruption. This workaround sets a specific bit in the diagnostic
  	  register of the Cortex-A9 which disables the Store Buffer
  	  optimisation, preventing the defect from occurring. This has no
  	  visible impact on the overall performance or power consumption of the
  	  processor.
9a27c27ce   Will Deacon   ARM: 6743/1: erra...
1189
1190
  config ARM_ERRATA_751472
  	bool "ARM errata: Interrupted ICIALLUIS may prevent completion of broadcasted operation"
ba90c516b   Dave Martin   ARM: 7197/1: erra...
1191
  	depends on CPU_V7
9a27c27ce   Will Deacon   ARM: 6743/1: erra...
1192
1193
1194
1195
1196
1197
  	help
  	  This option enables the workaround for the 751472 Cortex-A9 (prior
  	  to r3p0) erratum. An interrupted ICIALLUIS operation may prevent the
  	  completion of a following broadcasted operation if the second
  	  operation is received by a CPU before the ICIALLUIS has completed,
  	  potentially leading to corrupted entries in the cache or TLB.
fa0ce4035   Will Deacon   ARM: 7162/1: erra...
1198
1199
  config PL310_ERRATA_753970
  	bool "PL310 errata: cache sync operation may be faulty"
885028e4b   Srinidhi Kasagar   ARM: 6741/1: erra...
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
  	depends on CACHE_PL310
  	help
  	  This option enables the workaround for the 753970 PL310 (r3p0) erratum.
  
  	  Under some condition the effect of cache sync operation on
  	  the store buffer still remains when the operation completes.
  	  This means that the store buffer is always asked to drain and
  	  this prevents it from merging any further writes. The workaround
  	  is to replace the normal offset of cache sync operation (0x730)
  	  by another offset targeting an unmapped PL310 register 0x740.
  	  This has the same effect as the cache sync operation: store buffer
  	  drain and waiting for all buffers empty.
fcbdc5fe6   Will Deacon   ARM: 6772/1: erra...
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
  config ARM_ERRATA_754322
  	bool "ARM errata: possible faulty MMU translations following an ASID switch"
  	depends on CPU_V7
  	help
  	  This option enables the workaround for the 754322 Cortex-A9 (r2p*,
  	  r3p*) erratum. A speculative memory access may cause a page table walk
  	  which starts prior to an ASID switch but completes afterwards. This
  	  can populate the micro-TLB with a stale entry which may be hit with
  	  the new ASID. This workaround places two dsb instructions in the mm
  	  switching code so that no page table walks can cross the ASID switch.
5dab26af1   Will Deacon   ARM: 6784/1: erra...
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
  config ARM_ERRATA_754327
  	bool "ARM errata: no automatic Store Buffer drain"
  	depends on CPU_V7 && SMP
  	help
  	  This option enables the workaround for the 754327 Cortex-A9 (prior to
  	  r2p0) erratum. The Store Buffer does not have any automatic draining
  	  mechanism and therefore a livelock may occur if an external agent
  	  continuously polls a memory location waiting to observe an update.
  	  This workaround defines cpu_relax() as smp_mb(), preventing correctly
  	  written polling loops from denying visibility of updates to memory.
145e10e17   Catalin Marinas   ARM: 7015/1: ARM ...
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
  config ARM_ERRATA_364296
  	bool "ARM errata: Possible cache data corruption with hit-under-miss enabled"
  	depends on CPU_V6 && !SMP
  	help
  	  This options enables the workaround for the 364296 ARM1136
  	  r0p2 erratum (possible cache data corruption with
  	  hit-under-miss enabled). It sets the undocumented bit 31 in
  	  the auxiliary control register and the FI bit in the control
  	  register, thus disabling hit-under-miss without putting the
  	  processor into full low interrupt latency mode. ARM11MPCore
  	  is not affected.
f630c1bdf   Will Deacon   ARM: 7091/1: erra...
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
  config ARM_ERRATA_764369
  	bool "ARM errata: Data cache line maintenance operation by MVA may not succeed"
  	depends on CPU_V7 && SMP
  	help
  	  This option enables the workaround for erratum 764369
  	  affecting Cortex-A9 MPCore with two or more processors (all
  	  current revisions). Under certain timing circumstances, a data
  	  cache line maintenance operation by MVA targeting an Inner
  	  Shareable memory region may fail to proceed up to either the
  	  Point of Coherency or to the Point of Unification of the
  	  system. This workaround adds a DSB instruction before the
  	  relevant cache maintenance functions and sets a specific bit
  	  in the diagnostic control register of the SCU.
11ed0ba17   Will Deacon   ARM: 7161/1: erra...
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
  config PL310_ERRATA_769419
  	bool "PL310 errata: no automatic Store Buffer drain"
  	depends on CACHE_L2X0
  	help
  	  On revisions of the PL310 prior to r3p2, the Store Buffer does
  	  not automatically drain. This can cause normal, non-cacheable
  	  writes to be retained when the memory system is idle, leading
  	  to suboptimal I/O performance for drivers using coherent DMA.
  	  This option adds a write barrier to the cpu_idle loop so that,
  	  on systems with an outer cache, the store buffer is drained
  	  explicitly.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1267
1268
1269
  endmenu
  
  source "arch/arm/common/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1270
1271
1272
1273
1274
1275
1276
  menu "Bus support"
  
  config ARM_AMBA
  	bool
  
  config ISA
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1277
1278
1279
1280
1281
1282
  	help
  	  Find out whether you have ISA slots on your motherboard.  ISA is the
  	  name of a bus system, i.e. the way the CPU talks to the other stuff
  	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
  	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
  	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
065909b91   Russell King   [ARM] Refine sele...
1283
  # Select ISA DMA controller support
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1284
1285
  config ISA_DMA
  	bool
065909b91   Russell King   [ARM] Refine sele...
1286
  	select ISA_DMA_API
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1287

065909b91   Russell King   [ARM] Refine sele...
1288
  # Select ISA DMA interface
5cae841b1   Al Viro   [PATCH] ISA DMA K...
1289
1290
  config ISA_DMA_API
  	bool
5cae841b1   Al Viro   [PATCH] ISA DMA K...
1291

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1292
  config PCI
0b05da720   Hans Ulli Kroll   ARM: 6520/1: Kcon...
1293
  	bool "PCI support" if MIGHT_HAVE_PCI
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1294
1295
1296
1297
1298
  	help
  	  Find out whether you have a PCI motherboard. PCI is the name of a
  	  bus system, i.e. the way the CPU talks to the other stuff inside
  	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
  	  VESA. If you have PCI, say Y, otherwise N.
52882173c   Anton Vorontsov   ARM: 6058/1: Add ...
1299
1300
1301
  config PCI_DOMAINS
  	bool
  	depends on PCI
b080ac8ad   Marcelo Roberto Jimenez   ARM: 6459/2: sa11...
1302
1303
1304
1305
1306
  config PCI_NANOENGINE
  	bool "BSE nanoEngine PCI support"
  	depends on SA1100_NANOENGINE
  	help
  	  Enable PCI on the BSE nanoEngine board.
36e235901   Matthew Wilcox   PCI: Only build P...
1307
1308
  config PCI_SYSCALL
  	def_bool PCI
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1309
1310
1311
1312
1313
  # Select the host bridge type
  config PCI_HOST_VIA82C505
  	bool
  	depends on PCI && ARCH_SHARK
  	default y
a0113a99c   Mike Rapoport   [ARM] 4667/1: CM-...
1314
1315
1316
1317
1318
  config PCI_HOST_ITE8152
  	bool
  	depends on PCI && MACH_ARMCORE
  	default y
  	select DMABOUNCE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1319
1320
1321
1322
1323
1324
1325
  source "drivers/pci/Kconfig"
  
  source "drivers/pcmcia/Kconfig"
  
  endmenu
  
  menu "Kernel Features"
0567a0c02   Kevin Hilman   [ARM] 4257/2: Kco...
1326
  source "kernel/time/Kconfig"
3b55658ae   Dave Martin   ARM: SMP: Refacto...
1327
1328
1329
1330
1331
1332
1333
1334
  config HAVE_SMP
  	bool
  	help
  	  This option should be selected by machines which have an SMP-
  	  capable CPU.
  
  	  The only effect of this option is to make the SMP-related
  	  options available to the user for configuration.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1335
  config SMP
bb2d8130d   Russell King   ARM: SMP: drop ex...
1336
  	bool "Symmetric Multi-Processing"
fbb4ddacb   Russell King   ARM: v6k: only al...
1337
  	depends on CPU_V6K || CPU_V7
bc28248ee   Russell King   [ARM] smp: move c...
1338
  	depends on GENERIC_CLOCKEVENTS
3b55658ae   Dave Martin   ARM: SMP: Refacto...
1339
  	depends on HAVE_SMP
9934ebb8f   Arnd Bergmann   ARM: SMP depends ...
1340
  	depends on MMU
f6dd9fa5a   Jens Axboe   arm: convert to g...
1341
  	select USE_GENERIC_SMP_HELPERS
89c3dedf4   Daniel Walker   arm: kconfig: ena...
1342
  	select HAVE_ARM_SCU if !ARCH_MSM_SCORPIONMP
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
  	help
  	  This enables support for systems with more than one CPU. If you have
  	  a system with only one CPU, like most personal computers, say N. If
  	  you have a system with more than one CPU, say Y.
  
  	  If you say N here, the kernel will run on single and multiprocessor
  	  machines, but will use only one CPU of a multiprocessor machine. If
  	  you say Y here, the kernel will run on many, but not all, single
  	  processor machines. On a single processor machine, the kernel will
  	  run faster if you say N here.
395cf9691   Paul Bolle   doc: fix broken r...
1353
  	  See also <file:Documentation/x86/i386/IO-APIC.txt>,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1354
  	  <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
50a23e6ee   Justin P. Mattock   Update broken web...
1355
  	  <http://tldp.org/HOWTO/SMP-HOWTO.html>.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1356
1357
  
  	  If you don't know what to do here, say N.
f00ec48fa   Russell King   ARM: Allow SMP ke...
1358
1359
1360
  config SMP_ON_UP
  	bool "Allow booting SMP kernel on uniprocessor systems (EXPERIMENTAL)"
  	depends on EXPERIMENTAL
4d2692a73   Nicolas Pitre   ARM: 6624/1: fix ...
1361
  	depends on SMP && !XIP_KERNEL
f00ec48fa   Russell King   ARM: Allow SMP ke...
1362
1363
1364
1365
1366
1367
1368
1369
  	default y
  	help
  	  SMP kernels contain instructions which fail on non-SMP processors.
  	  Enabling this option allows the kernel to modify itself to make
  	  these instructions safe.  Disabling it allows about 1K of space
  	  savings.
  
  	  If you don't know what to do here, say Y.
c9018aab8   Vincent Guittot   ARM: 7011/1: Add ...
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
  config ARM_CPU_TOPOLOGY
  	bool "Support cpu topology definition"
  	depends on SMP && CPU_V7
  	default y
  	help
  	  Support ARM cpu topology definition. The MPIDR register defines
  	  affinity between processors which is then used to describe the cpu
  	  topology of an ARM System.
  
  config SCHED_MC
  	bool "Multi-core scheduler support"
  	depends on ARM_CPU_TOPOLOGY
  	help
  	  Multi-core scheduler support improves the CPU scheduler's decision
  	  making when dealing with multi-core CPU chips at a cost of slightly
  	  increased overhead in some places. If unsure say N here.
  
  config SCHED_SMT
  	bool "SMT scheduler support"
  	depends on ARM_CPU_TOPOLOGY
  	help
  	  Improves the CPU scheduler's decision making when dealing with
  	  MultiThreading at a cost of slightly increased overhead in some
  	  places. If unsure say N here.
a8cbcd92b   Russell King   [ARM] smp: separa...
1394
1395
  config HAVE_ARM_SCU
  	bool
a8cbcd92b   Russell King   [ARM] smp: separa...
1396
1397
  	help
  	  This option enables support for the ARM system coherency unit
f32f4ce25   Russell King   [ARM] smp: allow ...
1398
1399
1400
  config HAVE_ARM_TWD
  	bool
  	depends on SMP
15095bb0f   Russell King   ARM: TWD: enable ...
1401
  	select TICK_ONESHOT
f32f4ce25   Russell King   [ARM] smp: allow ...
1402
1403
  	help
  	  This options enables support for the ARM timer and watchdog unit
8d5796d2e   Lennert Buytenhek   [ARM] 5222/1: All...
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
  choice
  	prompt "Memory split"
  	default VMSPLIT_3G
  	help
  	  Select the desired split between kernel and user memory.
  
  	  If you are not absolutely sure what you are doing, leave this
  	  option alone!
  
  	config VMSPLIT_3G
  		bool "3G/1G user/kernel split"
  	config VMSPLIT_2G
  		bool "2G/2G user/kernel split"
  	config VMSPLIT_1G
  		bool "1G/3G user/kernel split"
  endchoice
  
  config PAGE_OFFSET
  	hex
  	default 0x40000000 if VMSPLIT_1G
  	default 0x80000000 if VMSPLIT_2G
  	default 0xC0000000
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1426
1427
1428
1429
1430
  config NR_CPUS
  	int "Maximum number of CPUs (2-32)"
  	range 2 32
  	depends on SMP
  	default "4"
a054a8115   Russell King   [ARM SMP] Add hot...
1431
1432
1433
1434
1435
1436
  config HOTPLUG_CPU
  	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
  	depends on SMP && HOTPLUG && EXPERIMENTAL
  	help
  	  Say Y here to experiment with turning CPUs off and on.  CPUs
  	  can be controlled through /sys/devices/system/cpu.
37ee16ae9   Russell King   [ARM SMP] Add cor...
1437
1438
  config LOCAL_TIMERS
  	bool "Use local timer interrupts"
971acb9b4   Russell King   ARM: Simplify SMP...
1439
  	depends on SMP
37ee16ae9   Russell King   [ARM SMP] Add cor...
1440
  	default y
30d8bead5   Changhwan Youn   ARM: EXYNOS4: Imp...
1441
  	select HAVE_ARM_TWD if (!ARCH_MSM_SCORPIONMP && !EXYNOS4_MCT)
37ee16ae9   Russell King   [ARM SMP] Add cor...
1442
1443
1444
1445
1446
  	help
  	  Enable support for local timers on SMP platforms, rather then the
  	  legacy IPI broadcast method.  Local timers allows the system
  	  accounting to be spread across the timer interval, preventing a
  	  "thundering herd" at every timer tick.
44986ab05   Peter De Schrijver (NVIDIA)   ARM: 7240/1: Make...
1447
1448
  config ARCH_NR_GPIO
  	int
3dea19e82   Peter De Schrijver (NVIDIA)   ARM: 7244/1: mach...
1449
  	default 1024 if ARCH_SHMOBILE || ARCH_TEGRA
4f3f25821   Peter De Schrijver (NVIDIA)   ARM: 7241/1: mach...
1450
  	default 350 if ARCH_U8500
44986ab05   Peter De Schrijver (NVIDIA)   ARM: 7240/1: Make...
1451
1452
1453
1454
1455
  	default 0
  	help
  	  Maximum number of GPIOs in the system.
  
  	  If unsure, leave the default value.
d45a398fc   Uwe Kleine-König   Use kernel/Kconfi...
1456
  source kernel/Kconfig.preempt
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1457

f80658137   Russell King   [ARM] Move HZ def...
1458
1459
  config HZ
  	int
49b7a491b   Kukjin Kim   ARM: S5P64X0: Upd...
1460
  	default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P64X0 || \
a73ddc61e   Kukjin Kim   ARM: S5P6442: Rem...
1461
  		ARCH_S5PV210 || ARCH_EXYNOS4
bfe657048   Russell King   [ARM] Fix HZ defi...
1462
  	default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
5248c6578   David Brownell   [ARM] 4646/1: AT9...
1463
  	default AT91_TIMER_HZ if ARCH_AT91
5da3e714e   Magnus Damm   ARM: 6277/1: mach...
1464
  	default SHMOBILE_TIMER_HZ if ARCH_SHMOBILE
f80658137   Russell King   [ARM] Move HZ def...
1465
  	default 100
16c79651a   Catalin Marinas   Thumb-2: Add Thum...
1466
  config THUMB2_KERNEL
4a50bfe36   Russell King   ARM: Ensure exper...
1467
  	bool "Compile the kernel in Thumb-2 mode (EXPERIMENTAL)"
e399b1a4e   Russell King   ARM: v6k: introdu...
1468
  	depends on CPU_V7 && !CPU_V6 && !CPU_V6K && EXPERIMENTAL
16c79651a   Catalin Marinas   Thumb-2: Add Thum...
1469
1470
  	select AEABI
  	select ARM_ASM_UNIFIED
89bace652   Arnd Bergmann   ARM: always use A...
1471
  	select ARM_UNWIND
16c79651a   Catalin Marinas   Thumb-2: Add Thum...
1472
1473
1474
1475
1476
1477
  	help
  	  By enabling this option, the kernel will be compiled in
  	  Thumb-2 mode. A compiler/assembler that understand the unified
  	  ARM-Thumb syntax is needed.
  
  	  If unsure, say N.
6f685c5cd   Dave Martin   ARM: 6781/1: Thum...
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
  config THUMB2_AVOID_R_ARM_THM_JUMP11
  	bool "Work around buggy Thumb-2 short branch relocations in gas"
  	depends on THUMB2_KERNEL && MODULES
  	default y
  	help
  	  Various binutils versions can resolve Thumb-2 branches to
  	  locally-defined, preemptible global symbols as short-range "b.n"
  	  branch instructions.
  
  	  This is a problem, because there's no guarantee the final
  	  destination of the symbol, or any candidate locations for a
  	  trampoline, are within range of the branch.  For this reason, the
  	  kernel does not support fixing up the R_ARM_THM_JUMP11 (102)
  	  relocation in modules at all, and it makes little sense to add
  	  support.
  
  	  The symptom is that the kernel fails with an "unsupported
  	  relocation" error when loading some modules.
  
  	  Until fixed tools are available, passing
  	  -fno-optimize-sibling-calls to gcc should prevent gcc generating
  	  code which hits this problem, at the cost of a bit of extra runtime
  	  stack usage in some cases.
  
  	  The problem is described in more detail at:
  	      https://bugs.launchpad.net/binutils-linaro/+bug/725126
  
  	  Only Thumb-2 kernels are affected.
  
  	  Unless you are sure your tools don't have this problem, say Y.
0becb0885   Catalin Marinas   Thumb-2: Add macr...
1508
1509
  config ARM_ASM_UNIFIED
  	bool
704bdda03   Nicolas Pitre   [ARM] 3107/3: ARM...
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
  config AEABI
  	bool "Use the ARM EABI to compile the kernel"
  	help
  	  This option allows for the kernel to be compiled using the latest
  	  ARM ABI (aka EABI).  This is only useful if you are using a user
  	  space environment that is also compiled with EABI.
  
  	  Since there are major incompatibilities between the legacy ABI and
  	  EABI, especially with regard to structure member alignment, this
  	  option also changes the kernel syscall calling convention to
  	  disambiguate both ABIs and allow for backward compatibility support
  	  (selected with CONFIG_OABI_COMPAT).
  
  	  To use this you need GCC version 4.0.0 or later.
6c90c8720   Nicolas Pitre   [ARM] 3112/1: old...
1524
  config OABI_COMPAT
a73a3ff12   Russell King   [ARM] Experimenta...
1525
  	bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
9bc433a1d   Dave Martin   ARM: 6659/1: Thum...
1526
  	depends on AEABI && EXPERIMENTAL && !THUMB2_KERNEL
6c90c8720   Nicolas Pitre   [ARM] 3112/1: old...
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
  	default y
  	help
  	  This option preserves the old syscall interface along with the
  	  new (ARM EABI) one. It also provides a compatibility layer to
  	  intercept syscalls that have structure arguments which layout
  	  in memory differs between the legacy ABI and the new ARM EABI
  	  (only for non "thumb" binaries). This option adds a tiny
  	  overhead to all syscalls and produces a slightly larger kernel.
  	  If you know you'll be using only pure EABI user space then you
  	  can say N here. If this option is not selected and you attempt
  	  to execute a legacy ABI binary then the result will be
  	  UNPREDICTABLE (in fact it can be predicted that it won't work
  	  at all). If in doubt say Y.
eb33575cf   Mel Gorman   [ARM] Double chec...
1540
  config ARCH_HAS_HOLES_MEMORYMODEL
e80d6a248   Mel Gorman   [ARM] Skip memory...
1541
  	bool
e80d6a248   Mel Gorman   [ARM] Skip memory...
1542

05944d74b   Russell King   [ARM] Add initial...
1543
1544
  config ARCH_SPARSEMEM_ENABLE
  	bool
07a2f737b   Russell King   [ARM] mm: depreca...
1545
1546
  config ARCH_SPARSEMEM_DEFAULT
  	def_bool ARCH_SPARSEMEM_ENABLE
05944d74b   Russell King   [ARM] Add initial...
1547
  config ARCH_SELECT_MEMORY_MODEL
be3703027   Russell King   ARM: Remove DISCO...
1548
  	def_bool ARCH_SPARSEMEM_ENABLE
c80d79d74   Yasunori Goto   [PATCH] Configura...
1549

7b7bf499f   Will Deacon   ARM: 6913/1: spar...
1550
1551
  config HAVE_ARCH_PFN_VALID
  	def_bool ARCH_HAS_HOLES_MEMORYMODEL || !SPARSEMEM
053a96ca1   Nicolas Pitre   [ARM] add CONFIG_...
1552
  config HIGHMEM
e8db89a24   Russell King   ARM: Highmem: dro...
1553
1554
  	bool "High Memory Support"
  	depends on MMU
053a96ca1   Nicolas Pitre   [ARM] add CONFIG_...
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
  	help
  	  The address space of ARM processors is only 4 Gigabytes large
  	  and it has to accommodate user address space, kernel address
  	  space as well as some memory mapped IO. That means that, if you
  	  have a large amount of physical memory and/or IO, not all of the
  	  memory can be "permanently mapped" by the kernel. The physical
  	  memory that is not permanently mapped is called "high memory".
  
  	  Depending on the selected kernel/user memory split, minimum
  	  vmalloc space and actual amount of RAM, you may not need this
  	  option which should result in a slightly faster kernel.
  
  	  If unsure, say n.
65cec8e3d   Russell King   ARM: implement hi...
1568
1569
1570
  config HIGHPTE
  	bool "Allocate 2nd-level pagetables from highmem"
  	depends on HIGHMEM
65cec8e3d   Russell King   ARM: implement hi...
1571

1b8873a0c   Jamie Iles   ARM: 5902/4: arm/...
1572
1573
  config HW_PERF_EVENTS
  	bool "Enable hardware performance counter support for perf events"
fe166148f   Will Deacon   ARM: 6073/1: opro...
1574
  	depends on PERF_EVENTS && CPU_HAS_PMU
1b8873a0c   Jamie Iles   ARM: 5902/4: arm/...
1575
1576
1577
1578
  	default y
  	help
  	  Enable hardware performance counter support for perf events. If
  	  disabled, perf events will use software events only.
3f22ab276   Dave Hansen   [PATCH] make each...
1579
  source "mm/Kconfig"
c1b2d9704   Magnus Damm   ARM: 6206/1: CONF...
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
  config FORCE_MAX_ZONEORDER
  	int "Maximum zone order" if ARCH_SHMOBILE
  	range 11 64 if ARCH_SHMOBILE
  	default "9" if SA1111
  	default "11"
  	help
  	  The kernel memory allocator divides physically contiguous memory
  	  blocks into "zones", where each zone is a power of two number of
  	  pages.  This option selects the largest power of two that the kernel
  	  keeps in the memory allocator.  If you need to allocate very large
  	  blocks of physically contiguous memory, then you may need to
  	  increase this value.
  
  	  This config option is actually maximum order plus one. For example,
  	  a value of 11 means that the largest free memory block is 2^10 pages.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1595
1596
  config LEDS
  	bool "Timer and CPU usage LEDs"
e055d5bff   Adrian Bunk   [ARM] 5015/1: arm...
1597
  	depends on ARCH_CDB89712 || ARCH_EBSA110 || \
8c8fdbc9b   Sascha Hauer   [ARM] Remove arch...
1598
  		   ARCH_EBSA285 || ARCH_INTEGRATOR || \
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1599
1600
  		   ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
  		   ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
73a59c1c4   SAN People   [ARM] 3240/2: AT9...
1601
  		   ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
253296714   Jürgen Schindele   [ARM] 5251/1: rem...
1602
  		   ARCH_AT91 || ARCH_DAVINCI || \
ff3042fb6   Colin Tuckley   RealView: Allow C...
1603
  		   ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
  	help
  	  If you say Y here, the LEDs on your machine will be used
  	  to provide useful information about your current system status.
  
  	  If you are compiling a kernel for a NetWinder or EBSA-285, you will
  	  be able to select which LEDs are active using the options below. If
  	  you are compiling a kernel for the EBSA-110 or the LART however, the
  	  red LED will simply flash regularly to indicate that the system is
  	  still functional. It is safe to say Y here if you have a CATS
  	  system, but the driver will do nothing.
  
  config LEDS_TIMER
  	bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
eebdf7d7c   David Brownell   ARM: OMAP: OSK le...
1617
1618
  			    OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
  			    || MACH_OMAP_PERSEUS2
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1619
  	depends on LEDS
0567a0c02   Kevin Hilman   [ARM] 4257/2: Kco...
1620
  	depends on !GENERIC_CLOCKEVENTS
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
  	default y if ARCH_EBSA110
  	help
  	  If you say Y here, one of the system LEDs (the green one on the
  	  NetWinder, the amber one on the EBSA285, or the red one on the LART)
  	  will flash regularly to indicate that the system is still
  	  operational. This is mainly useful to kernel hackers who are
  	  debugging unstable kernels.
  
  	  The LART uses the same LED for both Timer LED and CPU usage LED
  	  functions. You may choose to use both, but the Timer LED function
  	  will overrule the CPU usage LED.
  
  config LEDS_CPU
  	bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
eebdf7d7c   David Brownell   ARM: OMAP: OSK le...
1635
1636
1637
  			!ARCH_OMAP) \
  			|| OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
  			|| MACH_OMAP_PERSEUS2
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
  	depends on LEDS
  	help
  	  If you say Y here, the red LED will be used to give a good real
  	  time indication of CPU usage, by lighting whenever the idle task
  	  is not currently executing.
  
  	  The LART uses the same LED for both Timer LED and CPU usage LED
  	  functions. You may choose to use both, but the Timer LED function
  	  will overrule the CPU usage LED.
  
  config ALIGNMENT_TRAP
  	bool
f12d0d7c7   Hyok S. Choi   [ARM] nommu: mana...
1650
  	depends on CPU_CP15_MMU
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1651
  	default y if !ARCH_EBSA110
e119bfff1   Russell King   ARM: Move creatio...
1652
  	select HAVE_PROC_CPU if PROC_FS
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1653
  	help
84eb8d060   Matt LaPlante   Fix "can not" in ...
1654
  	  ARM processors cannot fetch/store information which is not
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1655
1656
1657
1658
1659
1660
  	  naturally aligned on the bus, i.e., a 4 byte fetch must start at an
  	  address divisible by 4. On 32-bit ARM processors, these non-aligned
  	  fetch/store instructions will be emulated in software if you say
  	  here, which has a severe performance impact. This is necessary for
  	  correct operation of some network protocols. With an IP-only
  	  configuration it is safe to say N, otherwise say Y.
39ec58f3f   Lennert Buytenhek   [ARM] alternative...
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
  config UACCESS_WITH_MEMCPY
  	bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)"
  	depends on MMU && EXPERIMENTAL
  	default y if CPU_FEROCEON
  	help
  	  Implement faster copy_to_user and clear_user methods for CPU
  	  cores where a 8-word STM instruction give significantly higher
  	  memory write throughput than a sequence of individual 32bit stores.
  
  	  A possible side effect is a slight increase in scheduling latency
  	  between threads sharing the same address space if they invoke
  	  such copy operations with large buffers.
  
  	  However, if the CPU data cache is using a write-allocate mode,
  	  this option is unlikely to provide any performance gain.
70c70d978   Nicolas Pitre   ARM: SECCOMP support
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
  config SECCOMP
  	bool
  	prompt "Enable seccomp to safely compute untrusted bytecode"
  	---help---
  	  This kernel feature is useful for number crunching applications
  	  that may need to compute untrusted bytecode during their
  	  execution. By using pipes or other transports made available to
  	  the process as file descriptors supporting the read/write
  	  syscalls, it's possible to isolate those applications in
  	  their own address space using seccomp. Once seccomp is
  	  enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
  	  and the task is only allowed to execute a few safe syscalls
  	  defined by each seccomp mode.
c743f3801   Nicolas Pitre   ARM: initial stac...
1689
1690
  config CC_STACKPROTECTOR
  	bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
4a50bfe36   Russell King   ARM: Ensure exper...
1691
  	depends on EXPERIMENTAL
c743f3801   Nicolas Pitre   ARM: initial stac...
1692
1693
1694
1695
1696
1697
1698
1699
1700
  	help
  	  This option turns on the -fstack-protector GCC feature. This
  	  feature puts, at the beginning of functions, a canary value on
  	  the stack just before the return address, and validates
  	  the value just before actually returning.  Stack based buffer
  	  overflows (that need to overwrite this return address) now also
  	  overwrite the canary, which gets detected and the attack is then
  	  neutralized via a kernel panic.
  	  This feature requires gcc version 4.2 or above.
73a65b3f8   Uwe Kleine-König   ARM: deprecate su...
1701
1702
1703
1704
1705
  config DEPRECATED_PARAM_STRUCT
  	bool "Provide old way to pass kernel parameters"
  	help
  	  This was deprecated in 2001 and announced to live on for 5 years.
  	  Some old boot loaders still use this way.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1706
1707
1708
  endmenu
  
  menu "Boot options"
9eb8f6743   Grant Likely   arm/dt: Allow CON...
1709
1710
1711
1712
  config USE_OF
  	bool "Flattened Device Tree support"
  	select OF
  	select OF_EARLY_FLATTREE
08a543ad3   Grant Likely   irq: add irq_doma...
1713
  	select IRQ_DOMAIN
9eb8f6743   Grant Likely   arm/dt: Allow CON...
1714
1715
  	help
  	  Include support for flattened device tree machine descriptions.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
  # Compressed boot loader in ROM.  Yes, we really want to ask about
  # TEXT and BSS so we preserve their values in the config files.
  config ZBOOT_ROM_TEXT
  	hex "Compressed ROM boot loader base address"
  	default "0"
  	help
  	  The physical address at which the ROM-able zImage is to be
  	  placed in the target.  Platforms which normally make use of
  	  ROM-able zImage formats normally set this to a suitable
  	  value in their defconfig file.
  
  	  If ZBOOT_ROM is not enabled, this has no effect.
  
  config ZBOOT_ROM_BSS
  	hex "Compressed ROM boot loader BSS address"
  	default "0"
  	help
f8c440b20   Dan Fandrich   [ARM] 3792/2: Fix...
1733
1734
1735
1736
1737
1738
  	  The base address of an area of read/write memory in the target
  	  for the ROM-able zImage which must be available while the
  	  decompressor is running. It must be large enough to hold the
  	  entire decompressed kernel plus an additional 128 KiB.
  	  Platforms which normally make use of ROM-able zImage formats
  	  normally set this to a suitable value in their defconfig file.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1739
1740
1741
1742
1743
1744
1745
1746
1747
  
  	  If ZBOOT_ROM is not enabled, this has no effect.
  
  config ZBOOT_ROM
  	bool "Compressed boot loader in ROM/flash"
  	depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
  	help
  	  Say Y here if you intend to execute your compressed kernel image
  	  (zImage) directly from ROM or flash.  If unsure, say N.
090ab3ff8   Simon Horman   ARM: 6886/1: mmc,...
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
  choice
  	prompt "Include SD/MMC loader in zImage (EXPERIMENTAL)"
  	depends on ZBOOT_ROM && ARCH_SH7372 && EXPERIMENTAL
  	default ZBOOT_ROM_NONE
  	help
  	  Include experimental SD/MMC loading code in the ROM-able zImage.
  	  With this enabled it is possible to write the the ROM-able zImage
  	  kernel image to an MMC or SD card and boot the kernel straight
  	  from the reset vector. At reset the processor Mask ROM will load
  	  the first part of the the ROM-able zImage which in turn loads the
  	  rest the kernel image to RAM.
  
  config ZBOOT_ROM_NONE
  	bool "No SD/MMC loader in zImage (EXPERIMENTAL)"
  	help
  	  Do not load image from SD or MMC
f45b11499   Simon Horman   ARM: 6617/1: mmc,...
1764
1765
  config ZBOOT_ROM_MMCIF
  	bool "Include MMCIF loader in zImage (EXPERIMENTAL)"
f45b11499   Simon Horman   ARM: 6617/1: mmc,...
1766
  	help
090ab3ff8   Simon Horman   ARM: 6886/1: mmc,...
1767
1768
1769
1770
1771
1772
1773
1774
  	  Load image from MMCIF hardware block.
  
  config ZBOOT_ROM_SH_MOBILE_SDHI
  	bool "Include SuperH Mobile SDHI loader in zImage (EXPERIMENTAL)"
  	help
  	  Load image from SDHI hardware block
  
  endchoice
f45b11499   Simon Horman   ARM: 6617/1: mmc,...
1775

e2a6a3aaf   John Bonesio   ARM: zImage: Allo...
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
  config ARM_APPENDED_DTB
  	bool "Use appended device tree blob to zImage (EXPERIMENTAL)"
  	depends on OF && !ZBOOT_ROM && EXPERIMENTAL
  	help
  	  With this option, the boot code will look for a device tree binary
  	  (DTB) appended to zImage
  	  (e.g. cat zImage <filename>.dtb > zImage_w_dtb).
  
  	  This is meant as a backward compatibility convenience for those
  	  systems with a bootloader that can't be upgraded to accommodate
  	  the documented boot protocol using a device tree.
  
  	  Beware that there is very little in terms of protection against
  	  this option being confused by leftover garbage in memory that might
  	  look like a DTB header after a reboot if no actual DTB is appended
  	  to zImage.  Do not leave this option active in a production kernel
  	  if you don't intend to always append a DTB.  Proper passing of the
  	  location into r2 of a bootloader provided DTB is always preferable
  	  to this option.
b90b9a382   Nicolas Pitre   ARM: zImage: allo...
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
  config ARM_ATAG_DTB_COMPAT
  	bool "Supplement the appended DTB with traditional ATAG information"
  	depends on ARM_APPENDED_DTB
  	help
  	  Some old bootloaders can't be updated to a DTB capable one, yet
  	  they provide ATAGs with memory configuration, the ramdisk address,
  	  the kernel cmdline string, etc.  Such information is dynamically
  	  provided by the bootloader and can't always be stored in a static
  	  DTB.  To allow a device tree enabled kernel to be used with such
  	  bootloaders, this option allows zImage to extract the information
  	  from the ATAG list and store it at run time into the appended DTB.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1806
1807
1808
1809
1810
1811
1812
1813
1814
  config CMDLINE
  	string "Default kernel command string"
  	default ""
  	help
  	  On some architectures (EBSA110 and CATS), there is currently no way
  	  for the boot loader to pass arguments to the kernel. For these
  	  architectures, you should supply some command-line options at build
  	  time by entering them here. As a minimum, you should specify the
  	  memory size and the root device (e.g., mem=64M root=/dev/nfs).
4394c1244   Victor Boivie   ARM: 6893/1: Allo...
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
  choice
  	prompt "Kernel command line type" if CMDLINE != ""
  	default CMDLINE_FROM_BOOTLOADER
  
  config CMDLINE_FROM_BOOTLOADER
  	bool "Use bootloader kernel arguments if available"
  	help
  	  Uses the command-line options passed by the boot loader. If
  	  the boot loader doesn't provide any, the default kernel command
  	  string provided in CMDLINE will be used.
  
  config CMDLINE_EXTEND
  	bool "Extend bootloader kernel arguments"
  	help
  	  The command-line arguments provided by the boot loader will be
  	  appended to the default kernel command string.
92d2040d7   Alexander Holler   ARM: 5939/1: ARM:...
1831
1832
  config CMDLINE_FORCE
  	bool "Always use the default kernel command string"
92d2040d7   Alexander Holler   ARM: 5939/1: ARM:...
1833
1834
1835
1836
1837
  	help
  	  Always use the default kernel command string, even if the boot
  	  loader passes other arguments to the kernel.
  	  This is useful if you cannot or don't want to change the
  	  command-line options your boot loader passes to the kernel.
4394c1244   Victor Boivie   ARM: 6893/1: Allo...
1838
  endchoice
92d2040d7   Alexander Holler   ARM: 5939/1: ARM:...
1839

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1840
1841
  config XIP_KERNEL
  	bool "Kernel Execute-In-Place from ROM"
497b7e943   Catalin Marinas   ARM: LPAE: Add th...
1842
  	depends on !ZBOOT_ROM && !ARM_LPAE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
  	help
  	  Execute-In-Place allows the kernel to run from non-volatile storage
  	  directly addressable by the CPU, such as NOR flash. This saves RAM
  	  space since the text section of the kernel is not loaded from flash
  	  to RAM.  Read-write sections, such as the data section and stack,
  	  are still copied to RAM.  The XIP kernel is not compressed since
  	  it has to run directly from flash, so it will take more space to
  	  store it.  The flash address used to link the kernel object files,
  	  and for storing it, is configuration dependent. Therefore, if you
  	  say Y here, you must know the proper physical address where to
  	  store the kernel image depending on your own flash memory usage.
  
  	  Also note that the make target becomes "make xipImage" rather than
  	  "make zImage" or "make Image".  The final kernel binary to put in
  	  ROM memory will be arch/arm/boot/xipImage.
  
  	  If unsure, say N.
  
  config XIP_PHYS_ADDR
  	hex "XIP Kernel Physical Location"
  	depends on XIP_KERNEL
  	default "0x00080000"
  	help
  	  This is the physical address in your flash memory the kernel will
  	  be linked for and stored to.  This address is dependent on your
  	  own flash usage.
c587e4a6a   Richard Purdie   [ARM] 4137/1: Add...
1869
1870
  config KEXEC
  	bool "Kexec system call (EXPERIMENTAL)"
02b73e2e9   Will Deacon   ARM: stop: execut...
1871
  	depends on EXPERIMENTAL && (!SMP || HOTPLUG_CPU)
c587e4a6a   Richard Purdie   [ARM] 4137/1: Add...
1872
1873
1874
  	help
  	  kexec is a system call that implements the ability to shutdown your
  	  current kernel, and to start another kernel.  It is like a reboot
01dd2fbf0   Matt LaPlante   typo fixes
1875
  	  but it is independent of the system firmware.   And like a reboot
c587e4a6a   Richard Purdie   [ARM] 4137/1: Add...
1876
1877
1878
1879
1880
1881
  	  you can start any kernel with it, not just Linux.
  
  	  It is an ongoing process to be certain the hardware in a machine
  	  is properly shutdown, so do not be surprised if this code does not
  	  initially work for you.  It may help to enable device hotplugging
  	  support.
4cd9d6f77   Richard Purdie   [ARM] 4736/1: Exp...
1882
1883
  config ATAGS_PROC
  	bool "Export atags in procfs"
b98d72918   Uli Luckas   [ARM] 4836/1: Mak...
1884
1885
  	depends on KEXEC
  	default y
4cd9d6f77   Richard Purdie   [ARM] 4736/1: Exp...
1886
1887
1888
  	help
  	  Should the atags used to boot the kernel be exported in an "atags"
  	  file in procfs. Useful with kexec.
cb5d39b3a   Mika Westerberg   ARM: 6487/1: add ...
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
  config CRASH_DUMP
  	bool "Build kdump crash kernel (EXPERIMENTAL)"
  	depends on EXPERIMENTAL
  	help
  	  Generate crash dump after being started by kexec. This should
  	  be normally only set in special crash dump kernels which are
  	  loaded in the main kernel with kexec-tools into a specially
  	  reserved region and then later executed after a crash by
  	  kdump/kexec. The crash dump kernel must be compiled to a
  	  memory address not used by the main kernel
  
  	  For more details see Documentation/kdump/kdump.txt
e69edc793   Eric Miao   ARM: Auto calcula...
1901
1902
1903
1904
1905
1906
1907
1908
1909
  config AUTO_ZRELADDR
  	bool "Auto calculation of the decompressed kernel image address"
  	depends on !ZBOOT_ROM && !ARCH_U300
  	help
  	  ZRELADDR is the physical address where the decompressed kernel
  	  image will be placed. If AUTO_ZRELADDR is selected, the address
  	  will be determined at run-time by masking the current IP with
  	  0xf8000000. This assumes the zImage being placed in the first 128MB
  	  from start of memory.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1910
  endmenu
ac9d7efc7   Russell King   [ARM] Update arch...
1911
  menu "CPU Power Management"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1912

89c52ed46   Ben Dooks   ARM: Add ARCH_HAS...
1913
  if ARCH_HAS_CPUFREQ
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1914
1915
  
  source "drivers/cpufreq/Kconfig"
64f102b67   Yong Shen   cpufreq for frees...
1916
1917
1918
1919
1920
  config CPU_FREQ_IMX
  	tristate "CPUfreq driver for i.MX CPUs"
  	depends on ARCH_MXC && CPU_FREQ
  	help
  	  This enables the CPUfreq driver for i.MX CPUs.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1921
1922
  config CPU_FREQ_SA1100
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1923
1924
1925
  
  config CPU_FREQ_SA1110
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
  
  config CPU_FREQ_INTEGRATOR
  	tristate "CPUfreq driver for ARM Integrator CPUs"
  	depends on ARCH_INTEGRATOR && CPU_FREQ
  	default y
  	help
  	  This enables the CPUfreq driver for ARM Integrator CPUs.
  
  	  For details, take a look at <file:Documentation/cpu-freq>.
  
  	  If in doubt, say Y.
9e2697ff3   Russell King   [ARM] pxa: add cp...
1937
1938
1939
1940
  config CPU_FREQ_PXA
  	bool
  	depends on CPU_FREQ && ARCH_PXA && PXA25x
  	default y
ca7d156e3   Arnd Bergmann   ARM: pxa: CPU_FRE...
1941
  	select CPU_FREQ_TABLE
9e2697ff3   Russell King   [ARM] pxa: add cp...
1942
  	select CPU_FREQ_DEFAULT_GOV_USERSPACE
9d56c02a5   Ben Dooks   ARM: Add S3C24XX ...
1943
1944
1945
1946
1947
1948
  config CPU_FREQ_S3C
  	bool
  	help
  	  Internal configuration node for common cpufreq on Samsung SoC
  
  config CPU_FREQ_S3C24XX
4a50bfe36   Russell King   ARM: Ensure exper...
1949
  	bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
9d56c02a5   Ben Dooks   ARM: Add S3C24XX ...
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
  	depends on ARCH_S3C2410 && CPU_FREQ && EXPERIMENTAL
  	select CPU_FREQ_S3C
  	help
  	  This enables the CPUfreq driver for the Samsung S3C24XX family
  	  of CPUs.
  
  	  For details, take a look at <file:Documentation/cpu-freq>.
  
  	  If in doubt, say N.
  
  config CPU_FREQ_S3C24XX_PLL
4a50bfe36   Russell King   ARM: Ensure exper...
1961
  	bool "Support CPUfreq changing of PLL frequency (EXPERIMENTAL)"
9d56c02a5   Ben Dooks   ARM: Add S3C24XX ...
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
  	depends on CPU_FREQ_S3C24XX && EXPERIMENTAL
  	help
  	  Compile in support for changing the PLL frequency from the
  	  S3C24XX series CPUfreq driver. The PLL takes time to settle
  	  after a frequency change, so by default it is not enabled.
  
  	  This also means that the PLL tables for the selected CPU(s) will
  	  be built which may increase the size of the kernel image.
  
  config CPU_FREQ_S3C24XX_DEBUG
  	bool "Debug CPUfreq Samsung driver core"
  	depends on CPU_FREQ_S3C24XX
  	help
  	  Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
  
  config CPU_FREQ_S3C24XX_IODEBUG
  	bool "Debug CPUfreq Samsung driver IO timing"
  	depends on CPU_FREQ_S3C24XX
  	help
  	  Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
e6d197a69   Ben Dooks   ARM: S3C: CPUFREQ...
1982
1983
1984
1985
1986
  config CPU_FREQ_S3C24XX_DEBUGFS
  	bool "Export debugfs for CPUFreq"
  	depends on CPU_FREQ_S3C24XX && DEBUG_FS
  	help
  	  Export status information via debugfs.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1987
  endif
ac9d7efc7   Russell King   [ARM] Update arch...
1988
1989
1990
  source "drivers/cpuidle/Kconfig"
  
  endmenu
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1991
1992
1993
1994
1995
1996
  menu "Floating point emulation"
  
  comment "At least one emulation must be selected"
  
  config FPE_NWFPE
  	bool "NWFPE math emulation"
593c252a7   Dave Martin   ARM: 6534/1: Make...
1997
  	depends on (!AEABI || OABI_COMPAT) && !THUMB2_KERNEL
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
  	---help---
  	  Say Y to include the NWFPE floating point emulator in the kernel.
  	  This is necessary to run most binaries. Linux does not currently
  	  support floating point hardware so you need to say Y here even if
  	  your machine has an FPA or floating point co-processor podule.
  
  	  You may say N here if you are going to load the Acorn FPEmulator
  	  early in the bootup.
  
  config FPE_NWFPE_XP
  	bool "Support extended precision"
bedf142b8   Lennert Buytenhek   [ARM] 3118/1: fix...
2009
  	depends on FPE_NWFPE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
  	help
  	  Say Y to include 80-bit support in the kernel floating-point
  	  emulator.  Otherwise, only 32 and 64-bit support is compiled in.
  	  Note that gcc does not generate 80-bit operations by default,
  	  so in most cases this option only enlarges the size of the
  	  floating point emulator without any good reason.
  
  	  You almost surely want to say N here.
  
  config FPE_FASTFPE
  	bool "FastFPE math emulation (EXPERIMENTAL)"
8993a44ce   Nicolas Pitre   [ARM] 3111/2: old...
2021
  	depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
  	---help---
  	  Say Y here to include the FAST floating point emulator in the kernel.
  	  This is an experimental much faster emulator which now also has full
  	  precision for the mantissa.  It does not support any exceptions.
  	  It is very simple, and approximately 3-6 times faster than NWFPE.
  
  	  It should be sufficient for most programs.  It may be not suitable
  	  for scientific calculations, but you have to check this for yourself.
  	  If you do not feel you need a faster FP emulation you should better
  	  choose NWFPE.
  
  config VFP
  	bool "VFP-format floating point maths"
e399b1a4e   Russell King   ARM: v6k: introdu...
2035
  	depends on CPU_V6 || CPU_V6K || CPU_ARM926T || CPU_V7 || CPU_FEROCEON
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2036
2037
2038
2039
2040
2041
2042
2043
  	help
  	  Say Y to include VFP support code in the kernel. This is needed
  	  if your hardware includes a VFP unit.
  
  	  Please see <file:Documentation/arm/VFP/release-notes.txt> for
  	  release notes and additional status information.
  
  	  Say N if your target does not have VFP hardware.
25ebee020   Catalin Marinas   [ARM] 4583/1: ARM...
2044
2045
2046
2047
  config VFPv3
  	bool
  	depends on VFP
  	default y if CPU_V7
b5872db4a   Catalin Marinas   [ARM] 4584/2: ARM...
2048
2049
2050
2051
2052
2053
  config NEON
  	bool "Advanced SIMD (NEON) Extension support"
  	depends on VFPv3 && CPU_V7
  	help
  	  Say Y to include support code for NEON, the ARMv7 Advanced SIMD
  	  Extension.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2054
2055
2056
2057
2058
2059
2060
2061
  endmenu
  
  menu "Userspace binary formats"
  
  source "fs/Kconfig.binfmt"
  
  config ARTHUR
  	tristate "RISC OS personality"
704bdda03   Nicolas Pitre   [ARM] 3107/3: ARM...
2062
  	depends on !AEABI
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
  	help
  	  Say Y here to include the kernel code necessary if you want to run
  	  Acorn RISC OS/Arthur binaries under Linux. This code is still very
  	  experimental; if this sounds frightening, say N and sleep in peace.
  	  You can also say M here to compile this support as a module (which
  	  will be called arthur).
  
  endmenu
  
  menu "Power management options"
eceab4ac8   Russell King   [ARM] Use kernel/...
2073
  source "kernel/power/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2074

f4cb57007   Johannes Berg   Suspend: Clean up...
2075
  config ARCH_SUSPEND_POSSIBLE
6b6844dd5   Abhilash Kesavan   ARM: S5P64X0: Add...
2076
  	depends on !ARCH_S5PC100
6a7861825   Russell King   ARM: Only allow P...
2077
2078
  	depends on CPU_ARM920T || CPU_ARM926T || CPU_SA1100 || \
  		CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE
f4cb57007   Johannes Berg   Suspend: Clean up...
2079
  	def_bool y
15e0d9e37   Arnd Bergmann   ARM: pm: let plat...
2080
2081
  config ARM_CPU_SUSPEND
  	def_bool PM_SLEEP
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2082
  endmenu
d5950b435   Sam Ravnborg   [NET]: add a top-...
2083
  source "net/Kconfig"
ac25150f2   Uwe Kleine-König   [ARM] let arch/ar...
2084
  source "drivers/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2085
2086
  
  source "fs/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2087
2088
2089
2090
2091
2092
2093
  source "arch/arm/Kconfig.debug"
  
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  
  source "lib/Kconfig"