Kconfig 64.5 KB
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
1
2
3
config ARM
	bool
	default y
4
	select HAVE_AOUT
5
	select HAVE_DMA_API_DEBUG
6
	select HAVE_IDE if PCI || ISA || PCMCIA
Russell King's avatar
Russell King committed
7
	select HAVE_MEMBLOCK
8
	select RTC_LIB
9
	select SYS_SUPPORTS_APM_EMULATION
10
	select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI)
11
	select HAVE_OPROFILE if (HAVE_PERF_EVENTS)
Jason Wessel's avatar
Jason Wessel committed
12
	select HAVE_ARCH_KGDB
13
	select HAVE_KPROBES if !XIP_KERNEL
14
	select HAVE_KRETPROBES if (HAVE_KPROBES)
15
	select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
16
17
	select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL)
	select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL)
18
	select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL)
19
	select ARCH_BINFMT_ELF_RANDOMIZE_PIE
20
	select HAVE_GENERIC_DMA_COHERENT
21
22
	select HAVE_KERNEL_GZIP
	select HAVE_KERNEL_LZO
23
	select HAVE_KERNEL_LZMA
24
	select HAVE_IRQ_WORK
25
26
	select HAVE_PERF_EVENTS
	select PERF_USE_VMALLOC
27
	select HAVE_REGS_AND_STACK_ACCESS_API
28
	select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
29
	select HAVE_C_RECORDMCOUNT
30
31
	select HAVE_GENERIC_HARDIRQS
	select HAVE_SPARSE_IRQ
32
	select GENERIC_IRQ_SHOW
33
	select CPU_PM if (SUSPEND || CPU_IDLE)
34
	select GENERIC_PCI_IOMAP
Linus Torvalds's avatar
Linus Torvalds committed
35
36
	help
	  The ARM series is a line of low-power-consumption RISC chip designs
37
	  licensed by ARM Ltd and targeted at embedded applications and
Linus Torvalds's avatar
Linus Torvalds committed
38
	  handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
39
	  manufactured, but legacy ARM-based PC hardware remains popular in
Linus Torvalds's avatar
Linus Torvalds committed
40
41
42
	  Europe.  There is an ARM Linux project with a web page at
	  <http://www.arm.linux.org.uk/>.

43
44
45
config ARM_HAS_SG_CHAIN
	bool

46
47
48
config HAVE_PWM
	bool

49
50
51
config MIGHT_HAVE_PCI
	bool

52
53
54
config SYS_SUPPORTS_APM_EMULATION
	bool

55
56
57
config HAVE_SCHED_CLOCK
	bool

58
59
60
config GENERIC_GPIO
	bool

61
62
63
config ARCH_USES_GETTIMEOFFSET
	bool
	default n
64

65
66
67
config GENERIC_CLOCKEVENTS
	bool

68
69
70
config GENERIC_CLOCKEVENTS_BROADCAST
	bool
	depends on GENERIC_CLOCKEVENTS
71
	default y if SMP
72

73
74
75
76
config KTIME_SCALAR
	bool
	default y

77
78
79
80
config HAVE_TCM
	bool
	select GENERIC_ALLOCATOR

81
82
83
config HAVE_PROC_CPU
	bool

Al Viro's avatar
Al Viro committed
84
85
86
config NO_IOPORT
	bool

Linus Torvalds's avatar
Linus Torvalds committed
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
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.

113
114
115
116
config STACKTRACE_SUPPORT
	bool
	default y

Nicolas Pitre's avatar
Nicolas Pitre committed
117
118
119
120
121
config HAVE_LATENCYTOP_SUPPORT
	bool
	depends on !SMP
	default y

122
123
124
125
config LOCKDEP_SUPPORT
	bool
	default y

Russell King's avatar
Russell King committed
126
127
128
129
config TRACE_IRQFLAGS_SUPPORT
	bool
	default y

130
131
132
133
134
135
136
137
config HARDIRQS_SW_RESEND
	bool
	default y

config GENERIC_IRQ_PROBE
	bool
	default y

Nick Piggin's avatar
Nick Piggin committed
138
139
140
141
142
config GENERIC_LOCKBREAK
	bool
	default y
	depends on SMP && PREEMPT

Linus Torvalds's avatar
Linus Torvalds committed
143
144
145
146
147
148
149
config RWSEM_GENERIC_SPINLOCK
	bool
	default y

config RWSEM_XCHGADD_ALGORITHM
	bool

150
151
152
153
154
155
config ARCH_HAS_ILOG2_U32
	bool

config ARCH_HAS_ILOG2_U64
	bool

156
157
158
159
160
161
162
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.

163
164
165
config ARCH_HAS_CPU_IDLE_WAIT
       def_bool y

166
167
168
169
config GENERIC_HWEIGHT
	bool
	default y

Linus Torvalds's avatar
Linus Torvalds committed
170
171
172
173
config GENERIC_CALIBRATE_DELAY
	bool
	default y

174
175
176
config ARCH_MAY_HAVE_PC_FDC
	bool

177
178
179
config ZONE_DMA
	bool

180
181
182
config NEED_DMA_MAP_STATE
       def_bool y

Linus Torvalds's avatar
Linus Torvalds committed
183
184
185
186
187
188
config GENERIC_ISA_DMA
	bool

config FIQ
	bool

189
190
191
config ARCH_MTD_XIP
	bool

192
193
config VECTORS_BASE
	hex
194
	default 0xffff0000 if MMU || CPU_HIGH_VECTOR
195
196
197
198
199
	default DRAM_BASE if REMAP_VECTORS_TO_RAM
	default 0x00000000
	help
	  The base address of exception vectors.

200
config ARM_PATCH_PHYS_VIRT
201
202
	bool "Patch physical to virtual translations at runtime" if EMBEDDED
	default y
203
	depends on !XIP_KERNEL && MMU
204
205
	depends on !ARCH_REALVIEW || !SPARSEMEM
	help
206
207
208
	  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.
209

210
	  This can only be used with non-XIP MMU kernels where the base
211
	  of physical memory is at a 16MB boundary.
212

213
214
215
	  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.
216

217
config NEED_MACH_MEMORY_H
218
219
	bool
	help
220
221
222
	  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.
223

224
config PHYS_OFFSET
225
	hex "Physical address of main memory" if MMU
226
	depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H
227
	default DRAM_BASE if !MMU
228
	help
229
230
	  Please provide the physical address corresponding to the
	  location of main memory in your system.
231

232
233
234
235
config GENERIC_BUG
	def_bool y
	depends on BUG

Linus Torvalds's avatar
Linus Torvalds committed
236
237
source "init/Kconfig"

238
239
source "kernel/Kconfig.freezer"

Linus Torvalds's avatar
Linus Torvalds committed
240
241
menu "System Type"

242
243
244
245
246
247
248
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'.

249
250
251
252
#
# The "ARM system type" choice list is ordered alphabetically by option
# text.  Please add new entries in the option alphabetic order.
#
Linus Torvalds's avatar
Linus Torvalds committed
253
254
choice
	prompt "ARM system type"
255
	default ARCH_VERSATILE
Linus Torvalds's avatar
Linus Torvalds committed
256

257
258
259
config ARCH_INTEGRATOR
	bool "ARM Ltd. Integrator family"
	select ARM_AMBA
260
	select ARCH_HAS_CPUFREQ
261
	select CLKDEV_LOOKUP
262
	select HAVE_MACH_CLKDEV
263
	select HAVE_TCM
264
	select ICST
265
	select GENERIC_CLOCKEVENTS
266
	select PLAT_VERSATILE
267
	select PLAT_VERSATILE_FPGA_IRQ
268
	select NEED_MACH_MEMORY_H
269
270
271
272
273
274
	help
	  Support for ARM's Integrator platform.

config ARCH_REALVIEW
	bool "ARM Ltd. RealView family"
	select ARM_AMBA
275
	select CLKDEV_LOOKUP
276
	select HAVE_MACH_CLKDEV
277
	select ICST
278
	select GENERIC_CLOCKEVENTS
279
	select ARCH_WANT_OPTIONAL_GPIOLIB
280
	select PLAT_VERSATILE
281
	select PLAT_VERSATILE_CLCD
282
	select ARM_TIMER_SP804
283
	select GPIO_PL061 if GPIOLIB
284
	select NEED_MACH_MEMORY_H
285
286
287
288
289
290
291
	help
	  This enables support for ARM Ltd RealView boards.

config ARCH_VERSATILE
	bool "ARM Ltd. Versatile family"
	select ARM_AMBA
	select ARM_VIC
292
	select CLKDEV_LOOKUP
293
	select HAVE_MACH_CLKDEV
294
	select ICST
295
	select GENERIC_CLOCKEVENTS
296
	select ARCH_WANT_OPTIONAL_GPIOLIB
297
	select PLAT_VERSATILE
298
	select PLAT_VERSATILE_CLCD
299
	select PLAT_VERSATILE_FPGA_IRQ
300
	select ARM_TIMER_SP804
301
302
303
	help
	  This enables support for ARM Ltd Versatile board.

304
305
306
307
308
config ARCH_VEXPRESS
	bool "ARM Ltd. Versatile Express family"
	select ARCH_WANT_OPTIONAL_GPIOLIB
	select ARM_AMBA
	select ARM_TIMER_SP804
309
	select CLKDEV_LOOKUP
310
	select HAVE_MACH_CLKDEV
311
312
	select GENERIC_CLOCKEVENTS
	select HAVE_CLK
313
	select HAVE_PATA_PLATFORM
314
315
	select ICST
	select PLAT_VERSATILE
316
	select PLAT_VERSATILE_CLCD
317
318
319
	help
	  This enables support for the ARM Ltd Versatile Express boards.

320
321
config ARCH_AT91
	bool "Atmel AT91"
322
	select ARCH_REQUIRE_GPIOLIB
David Brownell's avatar
David Brownell committed
323
	select HAVE_CLK
324
	select CLKDEV_LOOKUP
325
	help
326
327
	  This enables support for systems based on the Atmel AT91RM9200,
	  AT91SAM9 and AT91CAP9 processors.
328

329
330
331
332
333
config ARCH_BCMRING
	bool "Broadcom BCMRING"
	depends on MMU
	select CPU_V6
	select ARM_AMBA
334
	select ARM_TIMER_SP804
335
	select CLKDEV_LOOKUP
336
337
338
339
340
	select GENERIC_CLOCKEVENTS
	select ARCH_WANT_OPTIONAL_GPIOLIB
	help
	  Support for Broadcom's BCMRing platform.

341
342
343
344
345
346
config ARCH_HIGHBANK
	bool "Calxeda Highbank-based"
	select ARCH_WANT_OPTIONAL_GPIOLIB
	select ARM_AMBA
	select ARM_GIC
	select ARM_TIMER_SP804
347
	select CACHE_L2X0
348
349
350
351
	select CLKDEV_LOOKUP
	select CPU_V7
	select GENERIC_CLOCKEVENTS
	select HAVE_ARM_SCU
352
	select HAVE_SMP
353
354
355
356
	select USE_OF
	help
	  Support for the Calxeda Highbank SoC based boards.

Linus Torvalds's avatar
Linus Torvalds committed
357
config ARCH_CLPS711X
358
	bool "Cirrus Logic CLPS711x/EP721x-based"
359
	select CPU_ARM720T
360
	select ARCH_USES_GETTIMEOFFSET
361
	select NEED_MACH_MEMORY_H
362
363
	help
	  Support for Cirrus Logic 711x/721x based boards.
Linus Torvalds's avatar
Linus Torvalds committed
364

365
366
config ARCH_CNS3XXX
	bool "Cavium Networks CNS3XXX family"
367
	select CPU_V6K
368
369
	select GENERIC_CLOCKEVENTS
	select ARM_GIC
370
	select MIGHT_HAVE_CACHE_L2X0
371
	select MIGHT_HAVE_PCI
372
	select PCI_DOMAINS if PCI
373
374
375
	help
	  Support for Cavium Networks CNS3XXX platform.

376
377
378
379
config ARCH_GEMINI
	bool "Cortina Systems Gemini"
	select CPU_FA526
	select ARCH_REQUIRE_GPIOLIB
380
	select ARCH_USES_GETTIMEOFFSET
381
382
383
	help
	  Support for the Cortina Systems Gemini family SoCs

384
385
386
387
388
389
390
config ARCH_PRIMA2
	bool "CSR SiRFSoC PRIMA2 ARM Cortex A9 Platform"
	select CPU_V7
	select NO_IOPORT
	select GENERIC_CLOCKEVENTS
	select CLKDEV_LOOKUP
	select GENERIC_IRQ_CHIP
391
	select HAVE_SCHED_CLOCK
392
	select MIGHT_HAVE_CACHE_L2X0
393
394
395
396
397
	select USE_OF
	select ZONE_DMA
	help
          Support for CSR SiRFSoC ARM Cortex A9 Platform

Linus Torvalds's avatar
Linus Torvalds committed
398
399
config ARCH_EBSA110
	bool "EBSA-110"
400
	select CPU_SA110
401
	select ISA
402
	select NO_IOPORT
403
	select ARCH_USES_GETTIMEOFFSET
404
	select NEED_MACH_MEMORY_H
Linus Torvalds's avatar
Linus Torvalds committed
405
406
	help
	  This is an evaluation board for the StrongARM processor available
407
	  from Digital. It has limited hardware on-board, including an
Linus Torvalds's avatar
Linus Torvalds committed
408
409
410
	  Ethernet interface, two PCMCIA sockets, two serial ports and a
	  parallel port.

411
412
config ARCH_EP93XX
	bool "EP93xx-based"
413
	select CPU_ARM920T
414
415
	select ARM_AMBA
	select ARM_VIC
416
	select CLKDEV_LOOKUP
Michael Buesch's avatar
Michael Buesch committed
417
	select ARCH_REQUIRE_GPIOLIB
418
	select ARCH_HAS_HOLES_MEMORYMODEL
419
	select ARCH_USES_GETTIMEOFFSET
420
	select NEED_MACH_MEMORY_H
421
422
423
	help
	  This enables support for the Cirrus EP93xx series of CPUs.

Linus Torvalds's avatar
Linus Torvalds committed
424
425
config ARCH_FOOTBRIDGE
	bool "FootBridge"
426
	select CPU_SA110
Linus Torvalds's avatar
Linus Torvalds committed
427
	select FOOTBRIDGE
428
	select GENERIC_CLOCKEVENTS
429
	select HAVE_IDE
430
	select NEED_MACH_MEMORY_H
431
432
433
	help
	  Support for systems based on the DC21285 companion chip
	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
Linus Torvalds's avatar
Linus Torvalds committed
434

435
436
437
438
config ARCH_MXC
	bool "Freescale MXC/iMX-based"
	select GENERIC_CLOCKEVENTS
	select ARCH_REQUIRE_GPIOLIB
439
	select CLKDEV_LOOKUP
440
	select CLKSRC_MMIO
441
	select GENERIC_IRQ_CHIP
442
	select HAVE_SCHED_CLOCK
443
	select MULTI_IRQ_HANDLER
444
445
446
	help
	  Support for Freescale MXC/iMX-based family of processors

447
448
449
450
config ARCH_MXS
	bool "Freescale MXS-based"
	select GENERIC_CLOCKEVENTS
	select ARCH_REQUIRE_GPIOLIB
451
	select CLKDEV_LOOKUP
452
	select CLKSRC_MMIO
453
	select HAVE_CLK_PREPARE
454
455
456
	help
	  Support for Freescale MXS-based family of processors

457
458
config ARCH_NETX
	bool "Hilscher NetX based"
459
	select CLKSRC_MMIO
460
	select CPU_ARM926T
461
	select ARM_VIC
462
	select GENERIC_CLOCKEVENTS
463
	help
464
465
466
467
	  This enables support for systems based on the Hilscher NetX Soc

config ARCH_H720X
	bool "Hynix HMS720x-based"
468
	select CPU_ARM720T
469
	select ISA_DMA_API
470
	select ARCH_USES_GETTIMEOFFSET
471
472
473
	help
	  This enables support for systems based on the Hynix HMS720x

474
475
476
config ARCH_IOP13XX
	bool "IOP13xx-based"
	depends on MMU
477
	select CPU_XSC3
478
479
480
	select PLAT_IOP
	select PCI
	select ARCH_SUPPORTS_MSI
481
	select VMSPLIT_1G
482
	select NEED_MACH_MEMORY_H
483
484
485
	help
	  Support for Intel's IOP13XX (XScale) family of processors.

486
487
config ARCH_IOP32X
	bool "IOP32x-based"
488
	depends on MMU
489
	select CPU_XSCALE
490
	select PLAT_IOP
491
	select PCI
492
	select ARCH_REQUIRE_GPIOLIB
493
	help
494
495
496
497
498
499
	  Support for Intel's 80219 and IOP32X (XScale) family of
	  processors.

config ARCH_IOP33X
	bool "IOP33x-based"
	depends on MMU
500
	select CPU_XSCALE
501
	select PLAT_IOP
502
	select PCI
503
	select ARCH_REQUIRE_GPIOLIB
504
505
	help
	  Support for Intel's IOP33X (XScale) family of processors.
Linus Torvalds's avatar
Linus Torvalds committed
506

507
508
config ARCH_IXP23XX
 	bool "IXP23XX-based"
509
	depends on MMU
510
	select CPU_XSC3
511
 	select PCI
512
	select ARCH_USES_GETTIMEOFFSET
513
	select NEED_MACH_MEMORY_H
514
	help
515
	  Support for Intel's IXP23xx (XScale) family of processors.
Linus Torvalds's avatar
Linus Torvalds committed
516
517
518

config ARCH_IXP2000
	bool "IXP2400/2800-based"
519
	depends on MMU
520
	select CPU_XSCALE
521
	select PCI
522
	select ARCH_USES_GETTIMEOFFSET
523
	select NEED_MACH_MEMORY_H
524
525
	help
	  Support for Intel's IXP2400/2800 (XScale) family of processors.
Linus Torvalds's avatar
Linus Torvalds committed
526

527
528
config ARCH_IXP4XX
	bool "IXP4xx-based"
529
	depends on MMU
530
	select CLKSRC_MMIO
531
	select CPU_XSCALE
532
	select GENERIC_GPIO
533
	select GENERIC_CLOCKEVENTS
534
	select HAVE_SCHED_CLOCK
535
	select MIGHT_HAVE_PCI
536
	select DMABOUNCE if PCI
537
	help
538
	  Support for Intel's IXP4XX (XScale) family of processors.
539

540
541
config ARCH_DOVE
	bool "Marvell Dove"
542
	select CPU_V7
543
544
545
546
547
548
549
	select PCI
	select ARCH_REQUIRE_GPIOLIB
	select GENERIC_CLOCKEVENTS
	select PLAT_ORION
	help
	  Support for the Marvell Dove SoC 88AP510

550
551
config ARCH_KIRKWOOD
	bool "Marvell Kirkwood"
552
	select CPU_FEROCEON
553
	select PCI
554
	select ARCH_REQUIRE_GPIOLIB
555
556
557
558
559
560
	select GENERIC_CLOCKEVENTS
	select PLAT_ORION
	help
	  Support for the following Marvell Kirkwood series SoCs:
	  88F6180, 88F6192 and 88F6281.

561
562
config ARCH_LPC32XX
	bool "NXP LPC32XX"
563
	select CLKSRC_MMIO
564
565
566
567
568
	select CPU_ARM926T
	select ARCH_REQUIRE_GPIOLIB
	select HAVE_IDE
	select ARM_AMBA
	select USB_ARCH_HAS_OHCI
569
	select CLKDEV_LOOKUP
570
571
572
573
	select GENERIC_CLOCKEVENTS
	help
	  Support for the NXP LPC32XX family of processors

574
575
config ARCH_MV78XX0
	bool "Marvell MV78xx0"
576
	select CPU_FEROCEON
577
	select PCI
578
	select ARCH_REQUIRE_GPIOLIB
579
580
581
582
583
584
	select GENERIC_CLOCKEVENTS
	select PLAT_ORION
	help
	  Support for the following Marvell MV78xx0 series SoCs:
	  MV781x0, MV782x0.

585
config ARCH_ORION5X
586
587
	bool "Marvell Orion"
	depends on MMU
588
	select CPU_FEROCEON
Tzachi Perelstein's avatar
Tzachi Perelstein committed
589
	select PCI
590
	select ARCH_REQUIRE_GPIOLIB
591
	select GENERIC_CLOCKEVENTS
Lennert Buytenhek's avatar
Lennert Buytenhek committed
592
	select PLAT_ORION
593
	help
594
	  Support for the following Marvell Orion 5x series SoCs:
595
	  Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
596
	  Orion-2 (5281), Orion-1-90 (6183).
597

598
config ARCH_MMP
599
	bool "Marvell PXA168/910/MMP2"
600
601
	depends on MMU
	select ARCH_REQUIRE_GPIOLIB
602
	select CLKDEV_LOOKUP
603
	select GENERIC_CLOCKEVENTS
604
	select GPIO_PXA
605
	select HAVE_SCHED_CLOCK
606
607
	select TICK_ONESHOT
	select PLAT_PXA
Haojian Zhuang's avatar
Haojian Zhuang committed
608
	select SPARSE_IRQ
Leo Yan's avatar
Leo Yan committed
609
	select GENERIC_ALLOCATOR
610
	help
611
	  Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.
612
613
614
615

config ARCH_KS8695
	bool "Micrel/Kendin KS8695"
	select CPU_ARM922T
616
	select ARCH_REQUIRE_GPIOLIB
617
	select ARCH_USES_GETTIMEOFFSET
618
	select NEED_MACH_MEMORY_H
619
620
621
622
623
624
625
	help
	  Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
	  System-on-Chip devices.

config ARCH_W90X900
	bool "Nuvoton W90X900 CPU"
	select CPU_ARM926T
626
	select ARCH_REQUIRE_GPIOLIB
627
	select CLKDEV_LOOKUP
628
	select CLKSRC_MMIO
629
	select GENERIC_CLOCKEVENTS
630
	help
631
632
633
634
635
636
637
	  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>
638

639
640
config ARCH_TEGRA
	bool "NVIDIA Tegra"
Russell King's avatar
Russell King committed
641
	select CLKDEV_LOOKUP
642
	select CLKSRC_MMIO
643
644
645
	select GENERIC_CLOCKEVENTS
	select GENERIC_GPIO
	select HAVE_CLK
646
	select HAVE_SCHED_CLOCK
647
	select HAVE_SMP
648
	select MIGHT_HAVE_CACHE_L2X0
Colin Cross's avatar
Colin Cross committed
649
	select ARCH_HAS_CPUFREQ
650
651
652
653
	help
	  This enables support for NVIDIA Tegra based systems (Tegra APX,
	  Tegra 6xx and Tegra 2 series).

654
655
656
657
658
659
660
661
662
663
664
665
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
666
	select SPARSE_IRQ
667
668
669
670
671
672
	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.

673
674
config ARCH_PNX4008
	bool "Philips Nexperia PNX4008 Mobile"
675
	select CPU_ARM926T
676
	select CLKDEV_LOOKUP
677
	select ARCH_USES_GETTIMEOFFSET
678
679
680
	help
	  This enables support for Philips PNX4008 mobile platform.

Linus Torvalds's avatar
Linus Torvalds committed
681
config ARCH_PXA
eric miao's avatar
eric miao committed
682
	bool "PXA2xx/PXA3xx-based"
683
	depends on MMU
684
	select ARCH_MTD_XIP
685
	select ARCH_HAS_CPUFREQ
686
	select CLKDEV_LOOKUP
687
	select CLKSRC_MMIO
Michael Buesch's avatar
Michael Buesch committed
688
	select ARCH_REQUIRE_GPIOLIB
689
	select GENERIC_CLOCKEVENTS
690
	select GPIO_PXA
691
	select HAVE_SCHED_CLOCK
692
	select TICK_ONESHOT
693
	select PLAT_PXA
694
	select SPARSE_IRQ
Eric Miao's avatar
Eric Miao committed
695
	select AUTO_ZRELADDR
696
	select MULTI_IRQ_HANDLER
697
	select ARM_CPU_SUSPEND if PM
698
	select HAVE_IDE
699
	help
eric miao's avatar
eric miao committed
700
	  Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
Linus Torvalds's avatar
Linus Torvalds committed
701

702
703
config ARCH_MSM
	bool "Qualcomm MSM"
704
	select HAVE_CLK
705
	select GENERIC_CLOCKEVENTS
Pavel Machek's avatar
Pavel Machek committed
706
	select ARCH_REQUIRE_GPIOLIB
Stephen Boyd's avatar
Stephen Boyd committed
707
	select CLKDEV_LOOKUP
708
	help
709
710
711
712
713
	  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).
714

715
config ARCH_SHMOBILE
716
717
	bool "Renesas SH-Mobile / R-Mobile"
	select HAVE_CLK
Paul Mundt's avatar
Paul Mundt committed
718
	select CLKDEV_LOOKUP
719
	select HAVE_MACH_CLKDEV
720
	select HAVE_SMP
721
	select GENERIC_CLOCKEVENTS
722
	select MIGHT_HAVE_CACHE_L2X0
723
724
	select NO_IOPORT
	select SPARSE_IRQ
725
	select MULTI_IRQ_HANDLER
726
	select PM_GENERIC_DOMAINS if PM
727
	select NEED_MACH_MEMORY_H
728
	help
729
	  Support for Renesas's SH-Mobile and R-Mobile ARM platforms.
730

Linus Torvalds's avatar
Linus Torvalds committed
731
732
733
734
735
config ARCH_RPC
	bool "RiscPC"
	select ARCH_ACORN
	select FIQ
	select TIMER_ACORN
736
	select ARCH_MAY_HAVE_PC_FDC
737
	select HAVE_PATA_PLATFORM
738
	select ISA_DMA_API
Al Viro's avatar
Al Viro committed
739
	select NO_IOPORT
740
	select ARCH_SPARSEMEM_ENABLE
741
	select ARCH_USES_GETTIMEOFFSET
742
	select HAVE_IDE
743
	select NEED_MACH_MEMORY_H
Linus Torvalds's avatar
Linus Torvalds committed
744
745
746
747
748
749
	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"
750
	select CLKSRC_MMIO
751
	select CPU_SA1100
752
	select ISA
753
	select ARCH_SPARSEMEM_ENABLE
754
	select ARCH_MTD_XIP
755
	select ARCH_HAS_CPUFREQ
Russell King's avatar
Russell King committed
756
	select CPU_FREQ
757
	select GENERIC_CLOCKEVENTS
758
	select CLKDEV_LOOKUP
759
	select HAVE_SCHED_CLOCK
760
	select TICK_ONESHOT
Michael Buesch's avatar
Michael Buesch committed
761
	select ARCH_REQUIRE_GPIOLIB
762
	select HAVE_IDE
763
	select NEED_MACH_MEMORY_H
764
765
	help
	  Support for StrongARM 11x0 based boards.
Linus Torvalds's avatar
Linus Torvalds committed
766
767

config ARCH_S3C2410
768
	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443, S3C2450"
769
	select GENERIC_GPIO
770
	select ARCH_HAS_CPUFREQ
771
	select HAVE_CLK
772
	select CLKDEV_LOOKUP
773
	select ARCH_USES_GETTIMEOFFSET
774
	select HAVE_S3C2410_I2C if I2C
Linus Torvalds's avatar
Linus Torvalds committed
775
776
777
	help
	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
778
	  the Samsung SMDK2410 development board (and derivatives).
Linus Torvalds's avatar
Linus Torvalds committed
779

780
	  Note, the S3C2416 and the S3C2450 are so close that they even share
Lucas De Marchi's avatar
Lucas De Marchi committed
781
	  the same SoC ID code. This means that there is no separate machine
782
783
	  directory (no arch/arm/mach-s3c2450) as the S3C2416 was first.

784
785
config ARCH_S3C64XX
	bool "Samsung S3C64XX"
786
	select PLAT_SAMSUNG
787
788
	select CPU_V6
	select ARM_VIC
789
	select HAVE_CLK
Mark Brown's avatar
Mark Brown committed
790
	select HAVE_TCM
791
	select CLKDEV_LOOKUP
792
	select NO_IOPORT
793
	select ARCH_USES_GETTIMEOFFSET
794
	select ARCH_HAS_CPUFREQ
795
796
797
798
799
800
801
	select ARCH_REQUIRE_GPIOLIB
	select SAMSUNG_CLKSRC
	select SAMSUNG_IRQ_VIC_TIMER
	select S3C_GPIO_TRACK
	select S3C_DEV_NAND
	select USB_ARCH_HAS_OHCI
	select SAMSUNG_GPIOLIB_4BIT
802
	select HAVE_S3C2410_I2C if I2C
803
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
804
805
806
	help
	  Samsung S3C64XX series based systems

807
808
config ARCH_S5P64X0
	bool "Samsung S5P6440 S5P6450"
809
810
811
	select CPU_V6
	select GENERIC_GPIO
	select HAVE_CLK
812
	select CLKDEV_LOOKUP
813
	select CLKSRC_MMIO
814
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
815
816
	select GENERIC_CLOCKEVENTS
	select HAVE_SCHED_CLOCK
817
	select HAVE_S3C2410_I2C if I2C
818
	select HAVE_S3C_RTC if RTC_CLASS
819
	help
820
821
	  Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440,
	  SMDK6450.
822

823
824
config ARCH_S5PC100
	bool "Samsung S5PC100"
825
826
	select GENERIC_GPIO
	select HAVE_CLK
827
	select CLKDEV_LOOKUP
828
	select CPU_V7
829
	select ARM_L1_CACHE_SHIFT_6
830
	select ARCH_USES_GETTIMEOFFSET
831
	select HAVE_S3C2410_I2C if I2C
832
	select HAVE_S3C_RTC if RTC_CLASS
833
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
834
	help
835
	  Samsung S5PC100 series based systems
836

837
838
839
config ARCH_S5PV210
	bool "Samsung S5PV210/S5PC110"
	select CPU_V7
840
	select ARCH_SPARSEMEM_ENABLE
841
	select ARCH_HAS_HOLES_MEMORYMODEL
842
843
	select GENERIC_GPIO
	select HAVE_CLK
844
	select CLKDEV_LOOKUP
845
	select CLKSRC_MMIO
846
	select ARM_L1_CACHE_SHIFT_6
847
	select ARCH_HAS_CPUFREQ
848
849
	select GENERIC_CLOCKEVENTS
	select HAVE_SCHED_CLOCK
850
	select HAVE_S3C2410_I2C if I2C
851
	select HAVE_S3C_RTC if RTC_CLASS
852
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
853
	select NEED_MACH_MEMORY_H
854
855
856
	help
	  Samsung S5PV210/S5PC110 series based systems

857
858
config ARCH_EXYNOS
	bool "SAMSUNG EXYNOS"
859
	select CPU_V7
860
	select ARCH_SPARSEMEM_ENABLE
861
	select ARCH_HAS_HOLES_MEMORYMODEL
862
863
	select GENERIC_GPIO
	select HAVE_CLK
864
	select CLKDEV_LOOKUP
865
	select ARCH_HAS_CPUFREQ