aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-10-13 20:18:53 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-10-13 20:18:53 -0400
commit3d6ee36dfb2d40c72071f68173f67c728a0e19f3 (patch)
tree262130e0f3381c3d409817fdc4abec8852f10e7c /arch
parent0b381a286e5d748b1fd80095d3dd52326819742f (diff)
parent244acb1ba3777c2eb4d33ddc246cab5419656442 (diff)
Merge branch 'late-for-linus' of git://git.linaro.org/people/rmk/linux-arm
Pull ARM update from Russell King: "This is the final round of stuff for ARM, left until the end of the merge window to reduce the number of conflicts. This set contains the ARM part of David Howells UAPI changes, and a fix to the ordering of 'select' statements in ARM Kconfig files (see the appropriate commit for why this happened - thanks to Andrew Morton for pointing out the problem.) I've left this as long as I dare for this window to avoid conflicts, and I regenerated the config patch yesterday, posting it to our mailing list for review and testing. I have several acks which include successful test reports for it. However, today I notice we've got new conflicts with previously unseen code... though that conflict should be trivial (it's my changes vs a one liner.)" * 'late-for-linus' of git://git.linaro.org/people/rmk/linux-arm: ARM: config: make sure that platforms are ordered by option string ARM: config: sort select statements alphanumerically UAPI: (Scripted) Disintegrate arch/arm/include/asm Fix up fairly conflict in arch/arm/Kconfig (the select re-organization vs recent addition of GENERIC_KERNEL_EXECVE)
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/Kconfig461
-rw-r--r--arch/arm/common/Kconfig4
-rw-r--r--arch/arm/include/asm/Kbuild2
-rw-r--r--arch/arm/include/asm/hwcap.h27
-rw-r--r--arch/arm/include/asm/ptrace.h127
-rw-r--r--arch/arm/include/asm/setup.h172
-rw-r--r--arch/arm/include/asm/signal.h127
-rw-r--r--arch/arm/include/asm/swab.h37
-rw-r--r--arch/arm/include/asm/unistd.h440
-rw-r--r--arch/arm/include/uapi/asm/Kbuild16
-rw-r--r--arch/arm/include/uapi/asm/a.out.h (renamed from arch/arm/include/asm/a.out.h)0
-rw-r--r--arch/arm/include/uapi/asm/byteorder.h (renamed from arch/arm/include/asm/byteorder.h)0
-rw-r--r--arch/arm/include/uapi/asm/fcntl.h (renamed from arch/arm/include/asm/fcntl.h)0
-rw-r--r--arch/arm/include/uapi/asm/hwcap.h29
-rw-r--r--arch/arm/include/uapi/asm/ioctls.h (renamed from arch/arm/include/asm/ioctls.h)0
-rw-r--r--arch/arm/include/uapi/asm/kvm_para.h (renamed from arch/arm/include/asm/kvm_para.h)0
-rw-r--r--arch/arm/include/uapi/asm/mman.h (renamed from arch/arm/include/asm/mman.h)0
-rw-r--r--arch/arm/include/uapi/asm/posix_types.h (renamed from arch/arm/include/asm/posix_types.h)0
-rw-r--r--arch/arm/include/uapi/asm/ptrace.h138
-rw-r--r--arch/arm/include/uapi/asm/setup.h187
-rw-r--r--arch/arm/include/uapi/asm/sigcontext.h (renamed from arch/arm/include/asm/sigcontext.h)0
-rw-r--r--arch/arm/include/uapi/asm/signal.h127
-rw-r--r--arch/arm/include/uapi/asm/stat.h (renamed from arch/arm/include/asm/stat.h)0
-rw-r--r--arch/arm/include/uapi/asm/statfs.h (renamed from arch/arm/include/asm/statfs.h)0
-rw-r--r--arch/arm/include/uapi/asm/swab.h53
-rw-r--r--arch/arm/include/uapi/asm/unistd.h450
-rw-r--r--arch/arm/mach-at91/Kconfig26
-rw-r--r--arch/arm/mach-clps711x/Kconfig4
-rw-r--r--arch/arm/mach-davinci/Kconfig16
-rw-r--r--arch/arm/mach-exynos/Kconfig181
-rw-r--r--arch/arm/mach-footbridge/Kconfig2
-rw-r--r--arch/arm/mach-h720x/Kconfig2
-rw-r--r--arch/arm/mach-imx/Kconfig120
-rw-r--r--arch/arm/mach-ixp4xx/Kconfig2
-rw-r--r--arch/arm/mach-mmp/Kconfig6
-rw-r--r--arch/arm/mach-msm/Kconfig28
-rw-r--r--arch/arm/mach-nomadik/Kconfig4
-rw-r--r--arch/arm/mach-omap1/Kconfig8
-rw-r--r--arch/arm/mach-omap2/Kconfig68
-rw-r--r--arch/arm/mach-prima2/Kconfig2
-rw-r--r--arch/arm/mach-pxa/Kconfig120
-rw-r--r--arch/arm/mach-realview/Kconfig12
-rw-r--r--arch/arm/mach-s3c2412/Kconfig2
-rw-r--r--arch/arm/mach-s3c2440/Kconfig2
-rw-r--r--arch/arm/mach-s3c24xx/Kconfig82
-rw-r--r--arch/arm/mach-s3c64xx/Kconfig96
-rw-r--r--arch/arm/mach-s5p64x0/Kconfig28
-rw-r--r--arch/arm/mach-s5pc100/Kconfig12
-rw-r--r--arch/arm/mach-s5pv210/Kconfig50
-rw-r--r--arch/arm/mach-sa1100/Kconfig12
-rw-r--r--arch/arm/mach-shmobile/Kconfig42
-rw-r--r--arch/arm/mach-tegra/Kconfig32
-rw-r--r--arch/arm/mach-u300/Kconfig2
-rw-r--r--arch/arm/mach-ux500/Kconfig16
-rw-r--r--arch/arm/mach-versatile/Kconfig4
-rw-r--r--arch/arm/mm/Kconfig106
-rw-r--r--arch/arm/plat-mxc/Kconfig4
-rw-r--r--arch/arm/plat-mxc/devices/Kconfig2
-rw-r--r--arch/arm/plat-nomadik/Kconfig2
-rw-r--r--arch/arm/plat-omap/Kconfig10
-rw-r--r--arch/arm/plat-s3c24xx/Kconfig2
-rw-r--r--arch/arm/plat-samsung/Kconfig14
-rw-r--r--arch/arm/plat-spear/Kconfig4
63 files changed, 1800 insertions, 1722 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 431c3753145a..261fdd085bb9 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1,59 +1,58 @@
1config ARM 1config ARM
2 bool 2 bool
3 default y 3 default y
4 select ARCH_BINFMT_ELF_RANDOMIZE_PIE
5 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
4 select ARCH_HAVE_CUSTOM_GPIO_H 6 select ARCH_HAVE_CUSTOM_GPIO_H
5 select HAVE_AOUT 7 select ARCH_WANT_IPC_PARSE_VERSION
6 select HAVE_DMA_API_DEBUG 8 select CPU_PM if (SUSPEND || CPU_IDLE)
7 select HAVE_IDE if PCI || ISA || PCMCIA 9 select DCACHE_WORD_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && !CPU_BIG_ENDIAN
8 select HAVE_DMA_ATTRS
9 select HAVE_DMA_CONTIGUOUS if MMU
10 select HAVE_MEMBLOCK
11 select RTC_LIB
12 select SYS_SUPPORTS_APM_EMULATION
13 select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI) 10 select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI)
14 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE 11 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
15 select HAVE_OPROFILE if (HAVE_PERF_EVENTS) 12 select GENERIC_IRQ_PROBE
13 select GENERIC_IRQ_SHOW
14 select GENERIC_KERNEL_THREAD
15 select GENERIC_KERNEL_EXECVE
16 select GENERIC_PCI_IOMAP
17 select GENERIC_SMP_IDLE_THREAD
18 select GENERIC_STRNCPY_FROM_USER
19 select GENERIC_STRNLEN_USER
20 select HARDIRQS_SW_RESEND
21 select HAVE_AOUT
16 select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL 22 select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL
17 select HAVE_ARCH_KGDB 23 select HAVE_ARCH_KGDB
18 select HAVE_ARCH_TRACEHOOK 24 select HAVE_ARCH_TRACEHOOK
19 select HAVE_SYSCALL_TRACEPOINTS 25 select HAVE_BPF_JIT
20 select HAVE_KPROBES if !XIP_KERNEL 26 select HAVE_C_RECORDMCOUNT
21 select HAVE_KRETPROBES if (HAVE_KPROBES) 27 select HAVE_DEBUG_KMEMLEAK
22 select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) 28 select HAVE_DMA_API_DEBUG
23 select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL) 29 select HAVE_DMA_ATTRS
30 select HAVE_DMA_CONTIGUOUS if MMU
24 select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL) 31 select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL)
32 select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL)
25 select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL) 33 select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL)
26 select ARCH_BINFMT_ELF_RANDOMIZE_PIE 34 select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
27 select HAVE_GENERIC_DMA_COHERENT 35 select HAVE_GENERIC_DMA_COHERENT
28 select HAVE_DEBUG_KMEMLEAK 36 select HAVE_GENERIC_HARDIRQS
37 select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
38 select HAVE_IDE if PCI || ISA || PCMCIA
39 select HAVE_IRQ_WORK
29 select HAVE_KERNEL_GZIP 40 select HAVE_KERNEL_GZIP
30 select HAVE_KERNEL_LZO
31 select HAVE_KERNEL_LZMA 41 select HAVE_KERNEL_LZMA
42 select HAVE_KERNEL_LZO
32 select HAVE_KERNEL_XZ 43 select HAVE_KERNEL_XZ
33 select HAVE_IRQ_WORK 44 select HAVE_KPROBES if !XIP_KERNEL
45 select HAVE_KRETPROBES if (HAVE_KPROBES)
46 select HAVE_MEMBLOCK
47 select HAVE_OPROFILE if (HAVE_PERF_EVENTS)
34 select HAVE_PERF_EVENTS 48 select HAVE_PERF_EVENTS
35 select PERF_USE_VMALLOC
36 select HAVE_REGS_AND_STACK_ACCESS_API 49 select HAVE_REGS_AND_STACK_ACCESS_API
37 select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7)) 50 select HAVE_SYSCALL_TRACEPOINTS
38 select HAVE_C_RECORDMCOUNT
39 select HAVE_GENERIC_HARDIRQS
40 select HARDIRQS_SW_RESEND
41 select GENERIC_IRQ_PROBE
42 select GENERIC_IRQ_SHOW
43 select HAVE_UID16 51 select HAVE_UID16
44 select ARCH_WANT_IPC_PARSE_VERSION
45 select HARDIRQS_SW_RESEND
46 select CPU_PM if (SUSPEND || CPU_IDLE)
47 select GENERIC_PCI_IOMAP
48 select HAVE_BPF_JIT
49 select GENERIC_SMP_IDLE_THREAD
50 select KTIME_SCALAR 52 select KTIME_SCALAR
51 select GENERIC_CLOCKEVENTS_BROADCAST if SMP 53 select PERF_USE_VMALLOC
52 select GENERIC_STRNCPY_FROM_USER 54 select RTC_LIB
53 select GENERIC_STRNLEN_USER 55 select SYS_SUPPORTS_APM_EMULATION
54 select DCACHE_WORD_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && !CPU_BIG_ENDIAN
55 select GENERIC_KERNEL_THREAD
56 select GENERIC_KERNEL_EXECVE
57 help 56 help
58 The ARM series is a line of low-power-consumption RISC chip designs 57 The ARM series is a line of low-power-consumption RISC chip designs
59 licensed by ARM Ltd and targeted at embedded applications and 58 licensed by ARM Ltd and targeted at embedded applications and
@@ -69,9 +68,9 @@ config NEED_SG_DMA_LENGTH
69 bool 68 bool
70 69
71config ARM_DMA_USE_IOMMU 70config ARM_DMA_USE_IOMMU
72 select NEED_SG_DMA_LENGTH
73 select ARM_HAS_SG_CHAIN
74 bool 71 bool
72 select ARM_HAS_SG_CHAIN
73 select NEED_SG_DMA_LENGTH
75 74
76config HAVE_PWM 75config HAVE_PWM
77 bool 76 bool
@@ -263,69 +262,69 @@ choice
263 262
264config ARCH_MULTIPLATFORM 263config ARCH_MULTIPLATFORM
265 bool "Allow multiple platforms to be selected" 264 bool "Allow multiple platforms to be selected"
265 depends on MMU
266 select ARM_PATCH_PHYS_VIRT 266 select ARM_PATCH_PHYS_VIRT
267 select AUTO_ZRELADDR 267 select AUTO_ZRELADDR
268 select COMMON_CLK 268 select COMMON_CLK
269 select MULTI_IRQ_HANDLER 269 select MULTI_IRQ_HANDLER
270 select SPARSE_IRQ 270 select SPARSE_IRQ
271 select USE_OF 271 select USE_OF
272 depends on MMU
273 272
274config ARCH_INTEGRATOR 273config ARCH_INTEGRATOR
275 bool "ARM Ltd. Integrator family" 274 bool "ARM Ltd. Integrator family"
276 select ARM_AMBA
277 select ARCH_HAS_CPUFREQ 275 select ARCH_HAS_CPUFREQ
276 select ARM_AMBA
278 select COMMON_CLK 277 select COMMON_CLK
279 select COMMON_CLK_VERSATILE 278 select COMMON_CLK_VERSATILE
279 select GENERIC_CLOCKEVENTS
280 select HAVE_TCM 280 select HAVE_TCM
281 select ICST 281 select ICST
282 select GENERIC_CLOCKEVENTS 282 select MULTI_IRQ_HANDLER
283 select NEED_MACH_MEMORY_H
283 select PLAT_VERSATILE 284 select PLAT_VERSATILE
284 select PLAT_VERSATILE_FPGA_IRQ 285 select PLAT_VERSATILE_FPGA_IRQ
285 select NEED_MACH_MEMORY_H
286 select SPARSE_IRQ 286 select SPARSE_IRQ
287 select MULTI_IRQ_HANDLER
288 help 287 help
289 Support for ARM's Integrator platform. 288 Support for ARM's Integrator platform.
290 289
291config ARCH_REALVIEW 290config ARCH_REALVIEW
292 bool "ARM Ltd. RealView family" 291 bool "ARM Ltd. RealView family"
292 select ARCH_WANT_OPTIONAL_GPIOLIB
293 select ARM_AMBA 293 select ARM_AMBA
294 select ARM_TIMER_SP804
294 select COMMON_CLK 295 select COMMON_CLK
295 select COMMON_CLK_VERSATILE 296 select COMMON_CLK_VERSATILE
296 select ICST
297 select GENERIC_CLOCKEVENTS 297 select GENERIC_CLOCKEVENTS
298 select ARCH_WANT_OPTIONAL_GPIOLIB
299 select PLAT_VERSATILE
300 select PLAT_VERSATILE_CLCD
301 select ARM_TIMER_SP804
302 select GPIO_PL061 if GPIOLIB 298 select GPIO_PL061 if GPIOLIB
299 select ICST
303 select NEED_MACH_MEMORY_H 300 select NEED_MACH_MEMORY_H
301 select PLAT_VERSATILE
302 select PLAT_VERSATILE_CLCD
304 help 303 help
305 This enables support for ARM Ltd RealView boards. 304 This enables support for ARM Ltd RealView boards.
306 305
307config ARCH_VERSATILE 306config ARCH_VERSATILE
308 bool "ARM Ltd. Versatile family" 307 bool "ARM Ltd. Versatile family"
308 select ARCH_WANT_OPTIONAL_GPIOLIB
309 select ARM_AMBA 309 select ARM_AMBA
310 select ARM_TIMER_SP804
310 select ARM_VIC 311 select ARM_VIC
311 select CLKDEV_LOOKUP 312 select CLKDEV_LOOKUP
313 select GENERIC_CLOCKEVENTS
312 select HAVE_MACH_CLKDEV 314 select HAVE_MACH_CLKDEV
313 select ICST 315 select ICST
314 select GENERIC_CLOCKEVENTS
315 select ARCH_WANT_OPTIONAL_GPIOLIB
316 select PLAT_VERSATILE 316 select PLAT_VERSATILE
317 select PLAT_VERSATILE_CLOCK
318 select PLAT_VERSATILE_CLCD 317 select PLAT_VERSATILE_CLCD
318 select PLAT_VERSATILE_CLOCK
319 select PLAT_VERSATILE_FPGA_IRQ 319 select PLAT_VERSATILE_FPGA_IRQ
320 select ARM_TIMER_SP804
321 help 320 help
322 This enables support for ARM Ltd Versatile board. 321 This enables support for ARM Ltd Versatile board.
323 322
324config ARCH_AT91 323config ARCH_AT91
325 bool "Atmel AT91" 324 bool "Atmel AT91"
326 select ARCH_REQUIRE_GPIOLIB 325 select ARCH_REQUIRE_GPIOLIB
327 select HAVE_CLK
328 select CLKDEV_LOOKUP 326 select CLKDEV_LOOKUP
327 select HAVE_CLK
329 select IRQ_DOMAIN 328 select IRQ_DOMAIN
330 select NEED_MACH_GPIO_H 329 select NEED_MACH_GPIO_H
331 select NEED_MACH_IO_H if PCCARD 330 select NEED_MACH_IO_H if PCCARD
@@ -350,43 +349,43 @@ config ARCH_BCM2835
350 This enables support for the Broadcom BCM2835 SoC. This SoC is 349 This enables support for the Broadcom BCM2835 SoC. This SoC is
351 use in the Raspberry Pi, and Roku 2 devices. 350 use in the Raspberry Pi, and Roku 2 devices.
352 351
353config ARCH_CLPS711X
354 bool "Cirrus Logic CLPS711x/EP721x/EP731x-based"
355 select CPU_ARM720T
356 select ARCH_USES_GETTIMEOFFSET
357 select COMMON_CLK
358 select CLKDEV_LOOKUP
359 select NEED_MACH_MEMORY_H
360 help
361 Support for Cirrus Logic 711x/721x/731x based boards.
362
363config ARCH_CNS3XXX 352config ARCH_CNS3XXX
364 bool "Cavium Networks CNS3XXX family" 353 bool "Cavium Networks CNS3XXX family"
354 select ARM_GIC
365 select CPU_V6K 355 select CPU_V6K
366 select GENERIC_CLOCKEVENTS 356 select GENERIC_CLOCKEVENTS
367 select ARM_GIC
368 select MIGHT_HAVE_CACHE_L2X0 357 select MIGHT_HAVE_CACHE_L2X0
369 select MIGHT_HAVE_PCI 358 select MIGHT_HAVE_PCI
370 select PCI_DOMAINS if PCI 359 select PCI_DOMAINS if PCI
371 help 360 help
372 Support for Cavium Networks CNS3XXX platform. 361 Support for Cavium Networks CNS3XXX platform.
373 362
363config ARCH_CLPS711X
364 bool "Cirrus Logic CLPS711x/EP721x/EP731x-based"
365 select ARCH_USES_GETTIMEOFFSET
366 select CLKDEV_LOOKUP
367 select COMMON_CLK
368 select CPU_ARM720T
369 select NEED_MACH_MEMORY_H
370 help
371 Support for Cirrus Logic 711x/721x/731x based boards.
372
374config ARCH_GEMINI 373config ARCH_GEMINI
375 bool "Cortina Systems Gemini" 374 bool "Cortina Systems Gemini"
376 select CPU_FA526
377 select ARCH_REQUIRE_GPIOLIB 375 select ARCH_REQUIRE_GPIOLIB
378 select ARCH_USES_GETTIMEOFFSET 376 select ARCH_USES_GETTIMEOFFSET
377 select CPU_FA526
379 help 378 help
380 Support for the Cortina Systems Gemini family SoCs 379 Support for the Cortina Systems Gemini family SoCs
381 380
382config ARCH_SIRF 381config ARCH_SIRF
383 bool "CSR SiRF" 382 bool "CSR SiRF"
384 select NO_IOPORT
385 select ARCH_REQUIRE_GPIOLIB 383 select ARCH_REQUIRE_GPIOLIB
386 select GENERIC_CLOCKEVENTS
387 select COMMON_CLK 384 select COMMON_CLK
385 select GENERIC_CLOCKEVENTS
388 select GENERIC_IRQ_CHIP 386 select GENERIC_IRQ_CHIP
389 select MIGHT_HAVE_CACHE_L2X0 387 select MIGHT_HAVE_CACHE_L2X0
388 select NO_IOPORT
390 select PINCTRL 389 select PINCTRL
391 select PINCTRL_SIRF 390 select PINCTRL_SIRF
392 select USE_OF 391 select USE_OF
@@ -395,12 +394,12 @@ config ARCH_SIRF
395 394
396config ARCH_EBSA110 395config ARCH_EBSA110
397 bool "EBSA-110" 396 bool "EBSA-110"
397 select ARCH_USES_GETTIMEOFFSET
398 select CPU_SA110 398 select CPU_SA110
399 select ISA 399 select ISA
400 select NO_IOPORT
401 select ARCH_USES_GETTIMEOFFSET
402 select NEED_MACH_IO_H 400 select NEED_MACH_IO_H
403 select NEED_MACH_MEMORY_H 401 select NEED_MACH_MEMORY_H
402 select NO_IOPORT
404 help 403 help
405 This is an evaluation board for the StrongARM processor available 404 This is an evaluation board for the StrongARM processor available
406 from Digital. It has limited hardware on-board, including an 405 from Digital. It has limited hardware on-board, including an
@@ -409,13 +408,13 @@ config ARCH_EBSA110
409 408
410config ARCH_EP93XX 409config ARCH_EP93XX
411 bool "EP93xx-based" 410 bool "EP93xx-based"
412 select CPU_ARM920T 411 select ARCH_HAS_HOLES_MEMORYMODEL
412 select ARCH_REQUIRE_GPIOLIB
413 select ARCH_USES_GETTIMEOFFSET
413 select ARM_AMBA 414 select ARM_AMBA
414 select ARM_VIC 415 select ARM_VIC
415 select CLKDEV_LOOKUP 416 select CLKDEV_LOOKUP
416 select ARCH_REQUIRE_GPIOLIB 417 select CPU_ARM920T
417 select ARCH_HAS_HOLES_MEMORYMODEL
418 select ARCH_USES_GETTIMEOFFSET
419 select NEED_MACH_MEMORY_H 418 select NEED_MACH_MEMORY_H
420 help 419 help
421 This enables support for the Cirrus EP93xx series of CPUs. 420 This enables support for the Cirrus EP93xx series of CPUs.
@@ -434,10 +433,10 @@ config ARCH_FOOTBRIDGE
434 433
435config ARCH_MXC 434config ARCH_MXC
436 bool "Freescale MXC/iMX-based" 435 bool "Freescale MXC/iMX-based"
437 select GENERIC_CLOCKEVENTS
438 select ARCH_REQUIRE_GPIOLIB 436 select ARCH_REQUIRE_GPIOLIB
439 select CLKDEV_LOOKUP 437 select CLKDEV_LOOKUP
440 select CLKSRC_MMIO 438 select CLKSRC_MMIO
439 select GENERIC_CLOCKEVENTS
441 select GENERIC_IRQ_CHIP 440 select GENERIC_IRQ_CHIP
442 select MULTI_IRQ_HANDLER 441 select MULTI_IRQ_HANDLER
443 select SPARSE_IRQ 442 select SPARSE_IRQ
@@ -447,11 +446,11 @@ config ARCH_MXC
447 446
448config ARCH_MXS 447config ARCH_MXS
449 bool "Freescale MXS-based" 448 bool "Freescale MXS-based"
450 select GENERIC_CLOCKEVENTS
451 select ARCH_REQUIRE_GPIOLIB 449 select ARCH_REQUIRE_GPIOLIB
452 select CLKDEV_LOOKUP 450 select CLKDEV_LOOKUP
453 select CLKSRC_MMIO 451 select CLKSRC_MMIO
454 select COMMON_CLK 452 select COMMON_CLK
453 select GENERIC_CLOCKEVENTS
455 select HAVE_CLK_PREPARE 454 select HAVE_CLK_PREPARE
456 select MULTI_IRQ_HANDLER 455 select MULTI_IRQ_HANDLER
457 select PINCTRL 456 select PINCTRL
@@ -462,43 +461,43 @@ config ARCH_MXS
462 461
463config ARCH_NETX 462config ARCH_NETX
464 bool "Hilscher NetX based" 463 bool "Hilscher NetX based"
464 select ARM_VIC
465 select CLKSRC_MMIO 465 select CLKSRC_MMIO
466 select CPU_ARM926T 466 select CPU_ARM926T
467 select ARM_VIC
468 select GENERIC_CLOCKEVENTS 467 select GENERIC_CLOCKEVENTS
469 help 468 help
470 This enables support for systems based on the Hilscher NetX Soc 469 This enables support for systems based on the Hilscher NetX Soc
471 470
472config ARCH_H720X 471config ARCH_H720X
473 bool "Hynix HMS720x-based" 472 bool "Hynix HMS720x-based"
473 select ARCH_USES_GETTIMEOFFSET
474 select CPU_ARM720T 474 select CPU_ARM720T
475 select ISA_DMA_API 475 select ISA_DMA_API
476 select ARCH_USES_GETTIMEOFFSET
477 help 476 help
478 This enables support for systems based on the Hynix HMS720x 477 This enables support for systems based on the Hynix HMS720x
479 478
480config ARCH_IOP13XX 479config ARCH_IOP13XX
481 bool "IOP13xx-based" 480 bool "IOP13xx-based"
482 depends on MMU 481 depends on MMU
483 select CPU_XSC3
484 select PLAT_IOP
485 select PCI
486 select ARCH_SUPPORTS_MSI 482 select ARCH_SUPPORTS_MSI
487 select VMSPLIT_1G 483 select CPU_XSC3
488 select NEED_MACH_MEMORY_H 484 select NEED_MACH_MEMORY_H
489 select NEED_RET_TO_USER 485 select NEED_RET_TO_USER
486 select PCI
487 select PLAT_IOP
488 select VMSPLIT_1G
490 help 489 help
491 Support for Intel's IOP13XX (XScale) family of processors. 490 Support for Intel's IOP13XX (XScale) family of processors.
492 491
493config ARCH_IOP32X 492config ARCH_IOP32X
494 bool "IOP32x-based" 493 bool "IOP32x-based"
495 depends on MMU 494 depends on MMU
495 select ARCH_REQUIRE_GPIOLIB
496 select CPU_XSCALE 496 select CPU_XSCALE
497 select NEED_MACH_GPIO_H 497 select NEED_MACH_GPIO_H
498 select NEED_RET_TO_USER 498 select NEED_RET_TO_USER
499 select PLAT_IOP
500 select PCI 499 select PCI
501 select ARCH_REQUIRE_GPIOLIB 500 select PLAT_IOP
502 help 501 help
503 Support for Intel's 80219 and IOP32X (XScale) family of 502 Support for Intel's 80219 and IOP32X (XScale) family of
504 processors. 503 processors.
@@ -506,12 +505,12 @@ config ARCH_IOP32X
506config ARCH_IOP33X 505config ARCH_IOP33X
507 bool "IOP33x-based" 506 bool "IOP33x-based"
508 depends on MMU 507 depends on MMU
508 select ARCH_REQUIRE_GPIOLIB
509 select CPU_XSCALE 509 select CPU_XSCALE
510 select NEED_MACH_GPIO_H 510 select NEED_MACH_GPIO_H
511 select NEED_RET_TO_USER 511 select NEED_RET_TO_USER
512 select PLAT_IOP
513 select PCI 512 select PCI
514 select ARCH_REQUIRE_GPIOLIB 513 select PLAT_IOP
515 help 514 help
516 Support for Intel's IOP33X (XScale) family of processors. 515 Support for Intel's IOP33X (XScale) family of processors.
517 516
@@ -519,20 +518,20 @@ config ARCH_IXP4XX
519 bool "IXP4xx-based" 518 bool "IXP4xx-based"
520 depends on MMU 519 depends on MMU
521 select ARCH_HAS_DMA_SET_COHERENT_MASK 520 select ARCH_HAS_DMA_SET_COHERENT_MASK
521 select ARCH_REQUIRE_GPIOLIB
522 select CLKSRC_MMIO 522 select CLKSRC_MMIO
523 select CPU_XSCALE 523 select CPU_XSCALE
524 select ARCH_REQUIRE_GPIOLIB 524 select DMABOUNCE if PCI
525 select GENERIC_CLOCKEVENTS 525 select GENERIC_CLOCKEVENTS
526 select MIGHT_HAVE_PCI 526 select MIGHT_HAVE_PCI
527 select NEED_MACH_IO_H 527 select NEED_MACH_IO_H
528 select DMABOUNCE if PCI
529 help 528 help
530 Support for Intel's IXP4XX (XScale) family of processors. 529 Support for Intel's IXP4XX (XScale) family of processors.
531 530
532config ARCH_DOVE 531config ARCH_DOVE
533 bool "Marvell Dove" 532 bool "Marvell Dove"
534 select CPU_V7
535 select ARCH_REQUIRE_GPIOLIB 533 select ARCH_REQUIRE_GPIOLIB
534 select CPU_V7
536 select GENERIC_CLOCKEVENTS 535 select GENERIC_CLOCKEVENTS
537 select MIGHT_HAVE_PCI 536 select MIGHT_HAVE_PCI
538 select PLAT_ORION_LEGACY 537 select PLAT_ORION_LEGACY
@@ -542,36 +541,21 @@ config ARCH_DOVE
542 541
543config ARCH_KIRKWOOD 542config ARCH_KIRKWOOD
544 bool "Marvell Kirkwood" 543 bool "Marvell Kirkwood"
545 select CPU_FEROCEON
546 select PCI
547 select ARCH_REQUIRE_GPIOLIB 544 select ARCH_REQUIRE_GPIOLIB
545 select CPU_FEROCEON
548 select GENERIC_CLOCKEVENTS 546 select GENERIC_CLOCKEVENTS
547 select PCI
549 select PLAT_ORION_LEGACY 548 select PLAT_ORION_LEGACY
550 help 549 help
551 Support for the following Marvell Kirkwood series SoCs: 550 Support for the following Marvell Kirkwood series SoCs:
552 88F6180, 88F6192 and 88F6281. 551 88F6180, 88F6192 and 88F6281.
553 552
554config ARCH_LPC32XX
555 bool "NXP LPC32XX"
556 select CLKSRC_MMIO
557 select CPU_ARM926T
558 select ARCH_REQUIRE_GPIOLIB
559 select HAVE_IDE
560 select ARM_AMBA
561 select USB_ARCH_HAS_OHCI
562 select CLKDEV_LOOKUP
563 select GENERIC_CLOCKEVENTS
564 select USE_OF
565 select HAVE_PWM
566 help
567 Support for the NXP LPC32XX family of processors
568
569config ARCH_MV78XX0 553config ARCH_MV78XX0
570 bool "Marvell MV78xx0" 554 bool "Marvell MV78xx0"
571 select CPU_FEROCEON
572 select PCI
573 select ARCH_REQUIRE_GPIOLIB 555 select ARCH_REQUIRE_GPIOLIB
556 select CPU_FEROCEON
574 select GENERIC_CLOCKEVENTS 557 select GENERIC_CLOCKEVENTS
558 select PCI
575 select PLAT_ORION_LEGACY 559 select PLAT_ORION_LEGACY
576 help 560 help
577 Support for the following Marvell MV78xx0 series SoCs: 561 Support for the following Marvell MV78xx0 series SoCs:
@@ -580,10 +564,10 @@ config ARCH_MV78XX0
580config ARCH_ORION5X 564config ARCH_ORION5X
581 bool "Marvell Orion" 565 bool "Marvell Orion"
582 depends on MMU 566 depends on MMU
583 select CPU_FEROCEON
584 select PCI
585 select ARCH_REQUIRE_GPIOLIB 567 select ARCH_REQUIRE_GPIOLIB
568 select CPU_FEROCEON
586 select GENERIC_CLOCKEVENTS 569 select GENERIC_CLOCKEVENTS
570 select PCI
587 select PLAT_ORION_LEGACY 571 select PLAT_ORION_LEGACY
588 help 572 help
589 Support for the following Marvell Orion 5x series SoCs: 573 Support for the following Marvell Orion 5x series SoCs:
@@ -595,33 +579,33 @@ config ARCH_MMP
595 depends on MMU 579 depends on MMU
596 select ARCH_REQUIRE_GPIOLIB 580 select ARCH_REQUIRE_GPIOLIB
597 select CLKDEV_LOOKUP 581 select CLKDEV_LOOKUP
582 select GENERIC_ALLOCATOR
598 select GENERIC_CLOCKEVENTS 583 select GENERIC_CLOCKEVENTS
599 select GPIO_PXA 584 select GPIO_PXA
600 select IRQ_DOMAIN 585 select IRQ_DOMAIN
586 select NEED_MACH_GPIO_H
601 select PLAT_PXA 587 select PLAT_PXA
602 select SPARSE_IRQ 588 select SPARSE_IRQ
603 select GENERIC_ALLOCATOR
604 select NEED_MACH_GPIO_H
605 help 589 help
606 Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line. 590 Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.
607 591
608config ARCH_KS8695 592config ARCH_KS8695
609 bool "Micrel/Kendin KS8695" 593 bool "Micrel/Kendin KS8695"
610 select CPU_ARM922T
611 select ARCH_REQUIRE_GPIOLIB 594 select ARCH_REQUIRE_GPIOLIB
612 select NEED_MACH_MEMORY_H
613 select CLKSRC_MMIO 595 select CLKSRC_MMIO
596 select CPU_ARM922T
614 select GENERIC_CLOCKEVENTS 597 select GENERIC_CLOCKEVENTS
598 select NEED_MACH_MEMORY_H
615 help 599 help
616 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based 600 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
617 System-on-Chip devices. 601 System-on-Chip devices.
618 602
619config ARCH_W90X900 603config ARCH_W90X900
620 bool "Nuvoton W90X900 CPU" 604 bool "Nuvoton W90X900 CPU"
621 select CPU_ARM926T
622 select ARCH_REQUIRE_GPIOLIB 605 select ARCH_REQUIRE_GPIOLIB
623 select CLKDEV_LOOKUP 606 select CLKDEV_LOOKUP
624 select CLKSRC_MMIO 607 select CLKSRC_MMIO
608 select CPU_ARM926T
625 select GENERIC_CLOCKEVENTS 609 select GENERIC_CLOCKEVENTS
626 help 610 help
627 Support for Nuvoton (Winbond logic dept.) ARM9 processor, 611 Support for Nuvoton (Winbond logic dept.) ARM9 processor,
@@ -632,18 +616,33 @@ config ARCH_W90X900
632 <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/ 616 <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/
633 ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller> 617 ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller>
634 618
619config ARCH_LPC32XX
620 bool "NXP LPC32XX"
621 select ARCH_REQUIRE_GPIOLIB
622 select ARM_AMBA
623 select CLKDEV_LOOKUP
624 select CLKSRC_MMIO
625 select CPU_ARM926T
626 select GENERIC_CLOCKEVENTS
627 select HAVE_IDE
628 select HAVE_PWM
629 select USB_ARCH_HAS_OHCI
630 select USE_OF
631 help
632 Support for the NXP LPC32XX family of processors
633
635config ARCH_TEGRA 634config ARCH_TEGRA
636 bool "NVIDIA Tegra" 635 bool "NVIDIA Tegra"
636 select ARCH_HAS_CPUFREQ
637 select CLKDEV_LOOKUP 637 select CLKDEV_LOOKUP
638 select CLKSRC_MMIO 638 select CLKSRC_MMIO
639 select COMMON_CLK
639 select GENERIC_CLOCKEVENTS 640 select GENERIC_CLOCKEVENTS
640 select GENERIC_GPIO 641 select GENERIC_GPIO
641 select HAVE_CLK 642 select HAVE_CLK
642 select HAVE_SMP 643 select HAVE_SMP
643 select MIGHT_HAVE_CACHE_L2X0 644 select MIGHT_HAVE_CACHE_L2X0
644 select ARCH_HAS_CPUFREQ
645 select USE_OF 645 select USE_OF
646 select COMMON_CLK
647 help 646 help
648 This enables support for NVIDIA Tegra based systems (Tegra APX, 647 This enables support for NVIDIA Tegra based systems (Tegra APX,
649 Tegra 6xx and Tegra 2 series). 648 Tegra 6xx and Tegra 2 series).
@@ -651,29 +650,29 @@ config ARCH_TEGRA
651config ARCH_PXA 650config ARCH_PXA
652 bool "PXA2xx/PXA3xx-based" 651 bool "PXA2xx/PXA3xx-based"
653 depends on MMU 652 depends on MMU
654 select ARCH_MTD_XIP
655 select ARCH_HAS_CPUFREQ 653 select ARCH_HAS_CPUFREQ
654 select ARCH_MTD_XIP
655 select ARCH_REQUIRE_GPIOLIB
656 select ARM_CPU_SUSPEND if PM
657 select AUTO_ZRELADDR
656 select CLKDEV_LOOKUP 658 select CLKDEV_LOOKUP
657 select CLKSRC_MMIO 659 select CLKSRC_MMIO
658 select ARCH_REQUIRE_GPIOLIB
659 select GENERIC_CLOCKEVENTS 660 select GENERIC_CLOCKEVENTS
660 select GPIO_PXA 661 select GPIO_PXA
661 select PLAT_PXA
662 select SPARSE_IRQ
663 select AUTO_ZRELADDR
664 select MULTI_IRQ_HANDLER
665 select ARM_CPU_SUSPEND if PM
666 select HAVE_IDE 662 select HAVE_IDE
663 select MULTI_IRQ_HANDLER
667 select NEED_MACH_GPIO_H 664 select NEED_MACH_GPIO_H
665 select PLAT_PXA
666 select SPARSE_IRQ
668 help 667 help
669 Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 668 Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
670 669
671config ARCH_MSM 670config ARCH_MSM
672 bool "Qualcomm MSM" 671 bool "Qualcomm MSM"
673 select HAVE_CLK
674 select GENERIC_CLOCKEVENTS
675 select ARCH_REQUIRE_GPIOLIB 672 select ARCH_REQUIRE_GPIOLIB
676 select CLKDEV_LOOKUP 673 select CLKDEV_LOOKUP
674 select GENERIC_CLOCKEVENTS
675 select HAVE_CLK
677 help 676 help
678 Support for Qualcomm MSM/QSD based systems. This runs on the 677 Support for Qualcomm MSM/QSD based systems. This runs on the
679 apps processor of the MSM/QSD and depends on a shared memory 678 apps processor of the MSM/QSD and depends on a shared memory
@@ -683,50 +682,50 @@ config ARCH_MSM
683 682
684config ARCH_SHMOBILE 683config ARCH_SHMOBILE
685 bool "Renesas SH-Mobile / R-Mobile" 684 bool "Renesas SH-Mobile / R-Mobile"
686 select HAVE_CLK
687 select CLKDEV_LOOKUP 685 select CLKDEV_LOOKUP
686 select GENERIC_CLOCKEVENTS
687 select HAVE_CLK
688 select HAVE_MACH_CLKDEV 688 select HAVE_MACH_CLKDEV
689 select HAVE_SMP 689 select HAVE_SMP
690 select GENERIC_CLOCKEVENTS
691 select MIGHT_HAVE_CACHE_L2X0 690 select MIGHT_HAVE_CACHE_L2X0
692 select NO_IOPORT
693 select SPARSE_IRQ
694 select MULTI_IRQ_HANDLER 691 select MULTI_IRQ_HANDLER
695 select PM_GENERIC_DOMAINS if PM
696 select NEED_MACH_MEMORY_H 692 select NEED_MACH_MEMORY_H
693 select NO_IOPORT
694 select PM_GENERIC_DOMAINS if PM
695 select SPARSE_IRQ
697 help 696 help
698 Support for Renesas's SH-Mobile and R-Mobile ARM platforms. 697 Support for Renesas's SH-Mobile and R-Mobile ARM platforms.
699 698
700config ARCH_RPC 699config ARCH_RPC
701 bool "RiscPC" 700 bool "RiscPC"
702 select ARCH_ACORN 701 select ARCH_ACORN
703 select FIQ
704 select ARCH_MAY_HAVE_PC_FDC 702 select ARCH_MAY_HAVE_PC_FDC
705 select HAVE_PATA_PLATFORM
706 select ISA_DMA_API
707 select NO_IOPORT
708 select ARCH_SPARSEMEM_ENABLE 703 select ARCH_SPARSEMEM_ENABLE
709 select ARCH_USES_GETTIMEOFFSET 704 select ARCH_USES_GETTIMEOFFSET
705 select FIQ
710 select HAVE_IDE 706 select HAVE_IDE
707 select HAVE_PATA_PLATFORM
708 select ISA_DMA_API
711 select NEED_MACH_IO_H 709 select NEED_MACH_IO_H
712 select NEED_MACH_MEMORY_H 710 select NEED_MACH_MEMORY_H
711 select NO_IOPORT
713 help 712 help
714 On the Acorn Risc-PC, Linux can support the internal IDE disk and 713 On the Acorn Risc-PC, Linux can support the internal IDE disk and
715 CD-ROM interface, serial and parallel port, and the floppy drive. 714 CD-ROM interface, serial and parallel port, and the floppy drive.
716 715
717config ARCH_SA1100 716config ARCH_SA1100
718 bool "SA1100-based" 717 bool "SA1100-based"
719 select CLKSRC_MMIO
720 select CPU_SA1100
721 select ISA
722 select ARCH_SPARSEMEM_ENABLE
723 select ARCH_MTD_XIP
724 select ARCH_HAS_CPUFREQ 718 select ARCH_HAS_CPUFREQ
719 select ARCH_MTD_XIP
720 select ARCH_REQUIRE_GPIOLIB
721 select ARCH_SPARSEMEM_ENABLE
722 select CLKDEV_LOOKUP
723 select CLKSRC_MMIO
725 select CPU_FREQ 724 select CPU_FREQ
725 select CPU_SA1100
726 select GENERIC_CLOCKEVENTS 726 select GENERIC_CLOCKEVENTS
727 select CLKDEV_LOOKUP
728 select ARCH_REQUIRE_GPIOLIB
729 select HAVE_IDE 727 select HAVE_IDE
728 select ISA
730 select NEED_MACH_GPIO_H 729 select NEED_MACH_GPIO_H
731 select NEED_MACH_MEMORY_H 730 select NEED_MACH_MEMORY_H
732 select SPARSE_IRQ 731 select SPARSE_IRQ
@@ -735,14 +734,14 @@ config ARCH_SA1100
735 734
736config ARCH_S3C24XX 735config ARCH_S3C24XX
737 bool "Samsung S3C24XX SoCs" 736 bool "Samsung S3C24XX SoCs"
738 select GENERIC_GPIO
739 select ARCH_HAS_CPUFREQ 737 select ARCH_HAS_CPUFREQ
740 select HAVE_CLK
741 select CLKDEV_LOOKUP
742 select ARCH_USES_GETTIMEOFFSET 738 select ARCH_USES_GETTIMEOFFSET
739 select CLKDEV_LOOKUP
740 select GENERIC_GPIO
741 select HAVE_CLK
743 select HAVE_S3C2410_I2C if I2C 742 select HAVE_S3C2410_I2C if I2C
744 select HAVE_S3C_RTC if RTC_CLASS
745 select HAVE_S3C2410_WATCHDOG if WATCHDOG 743 select HAVE_S3C2410_WATCHDOG if WATCHDOG
744 select HAVE_S3C_RTC if RTC_CLASS
746 select NEED_MACH_GPIO_H 745 select NEED_MACH_GPIO_H
747 select NEED_MACH_IO_H 746 select NEED_MACH_IO_H
748 help 747 help
@@ -753,38 +752,38 @@ config ARCH_S3C24XX
753 752
754config ARCH_S3C64XX 753config ARCH_S3C64XX
755 bool "Samsung S3C64XX" 754 bool "Samsung S3C64XX"
756 select PLAT_SAMSUNG 755 select ARCH_HAS_CPUFREQ
757 select CPU_V6 756 select ARCH_REQUIRE_GPIOLIB
757 select ARCH_USES_GETTIMEOFFSET
758 select ARM_VIC 758 select ARM_VIC
759 select CLKDEV_LOOKUP
760 select CPU_V6
759 select HAVE_CLK 761 select HAVE_CLK
762 select HAVE_S3C2410_I2C if I2C
763 select HAVE_S3C2410_WATCHDOG if WATCHDOG
760 select HAVE_TCM 764 select HAVE_TCM
761 select CLKDEV_LOOKUP 765 select NEED_MACH_GPIO_H
762 select NO_IOPORT 766 select NO_IOPORT
763 select ARCH_USES_GETTIMEOFFSET 767 select PLAT_SAMSUNG
764 select ARCH_HAS_CPUFREQ 768 select S3C_DEV_NAND
765 select ARCH_REQUIRE_GPIOLIB 769 select S3C_GPIO_TRACK
766 select SAMSUNG_CLKSRC 770 select SAMSUNG_CLKSRC
771 select SAMSUNG_GPIOLIB_4BIT
767 select SAMSUNG_IRQ_VIC_TIMER 772 select SAMSUNG_IRQ_VIC_TIMER
768 select S3C_GPIO_TRACK
769 select S3C_DEV_NAND
770 select USB_ARCH_HAS_OHCI 773 select USB_ARCH_HAS_OHCI
771 select SAMSUNG_GPIOLIB_4BIT
772 select HAVE_S3C2410_I2C if I2C
773 select HAVE_S3C2410_WATCHDOG if WATCHDOG
774 select NEED_MACH_GPIO_H
775 help 774 help
776 Samsung S3C64XX series based systems 775 Samsung S3C64XX series based systems
777 776
778config ARCH_S5P64X0 777config ARCH_S5P64X0
779 bool "Samsung S5P6440 S5P6450" 778 bool "Samsung S5P6440 S5P6450"
780 select CPU_V6
781 select GENERIC_GPIO
782 select HAVE_CLK
783 select CLKDEV_LOOKUP 779 select CLKDEV_LOOKUP
784 select CLKSRC_MMIO 780 select CLKSRC_MMIO
785 select HAVE_S3C2410_WATCHDOG if WATCHDOG 781 select CPU_V6
786 select GENERIC_CLOCKEVENTS 782 select GENERIC_CLOCKEVENTS
783 select GENERIC_GPIO
784 select HAVE_CLK
787 select HAVE_S3C2410_I2C if I2C 785 select HAVE_S3C2410_I2C if I2C
786 select HAVE_S3C2410_WATCHDOG if WATCHDOG
788 select HAVE_S3C_RTC if RTC_CLASS 787 select HAVE_S3C_RTC if RTC_CLASS
789 select NEED_MACH_GPIO_H 788 select NEED_MACH_GPIO_H
790 help 789 help
@@ -793,50 +792,50 @@ config ARCH_S5P64X0
793 792
794config ARCH_S5PC100 793config ARCH_S5PC100
795 bool "Samsung S5PC100" 794 bool "Samsung S5PC100"
796 select GENERIC_GPIO 795 select ARCH_USES_GETTIMEOFFSET
797 select HAVE_CLK
798 select CLKDEV_LOOKUP 796 select CLKDEV_LOOKUP
799 select CPU_V7 797 select CPU_V7
800 select ARCH_USES_GETTIMEOFFSET 798 select GENERIC_GPIO
799 select HAVE_CLK
801 select HAVE_S3C2410_I2C if I2C 800 select HAVE_S3C2410_I2C if I2C
802 select HAVE_S3C_RTC if RTC_CLASS
803 select HAVE_S3C2410_WATCHDOG if WATCHDOG 801 select HAVE_S3C2410_WATCHDOG if WATCHDOG
802 select HAVE_S3C_RTC if RTC_CLASS
804 select NEED_MACH_GPIO_H 803 select NEED_MACH_GPIO_H
805 help 804 help
806 Samsung S5PC100 series based systems 805 Samsung S5PC100 series based systems
807 806
808config ARCH_S5PV210 807config ARCH_S5PV210
809 bool "Samsung S5PV210/S5PC110" 808 bool "Samsung S5PV210/S5PC110"
810 select CPU_V7 809 select ARCH_HAS_CPUFREQ
811 select ARCH_SPARSEMEM_ENABLE
812 select ARCH_HAS_HOLES_MEMORYMODEL 810 select ARCH_HAS_HOLES_MEMORYMODEL
813 select GENERIC_GPIO 811 select ARCH_SPARSEMEM_ENABLE
814 select HAVE_CLK
815 select CLKDEV_LOOKUP 812 select CLKDEV_LOOKUP
816 select CLKSRC_MMIO 813 select CLKSRC_MMIO
817 select ARCH_HAS_CPUFREQ 814 select CPU_V7
818 select GENERIC_CLOCKEVENTS 815 select GENERIC_CLOCKEVENTS
816 select GENERIC_GPIO
817 select HAVE_CLK
819 select HAVE_S3C2410_I2C if I2C 818 select HAVE_S3C2410_I2C if I2C
820 select HAVE_S3C_RTC if RTC_CLASS
821 select HAVE_S3C2410_WATCHDOG if WATCHDOG 819 select HAVE_S3C2410_WATCHDOG if WATCHDOG
820 select HAVE_S3C_RTC if RTC_CLASS
822 select NEED_MACH_GPIO_H 821 select NEED_MACH_GPIO_H
823 select NEED_MACH_MEMORY_H 822 select NEED_MACH_MEMORY_H
824 help 823 help
825 Samsung S5PV210/S5PC110 series based systems 824 Samsung S5PV210/S5PC110 series based systems
826 825
827config ARCH_EXYNOS 826config ARCH_EXYNOS
828 bool "SAMSUNG EXYNOS" 827 bool "Samsung EXYNOS"
829 select CPU_V7 828 select ARCH_HAS_CPUFREQ
830 select ARCH_SPARSEMEM_ENABLE
831 select ARCH_HAS_HOLES_MEMORYMODEL 829 select ARCH_HAS_HOLES_MEMORYMODEL
832 select GENERIC_GPIO 830 select ARCH_SPARSEMEM_ENABLE
833 select HAVE_CLK
834 select CLKDEV_LOOKUP 831 select CLKDEV_LOOKUP
835 select ARCH_HAS_CPUFREQ 832 select CPU_V7
836 select GENERIC_CLOCKEVENTS 833 select GENERIC_CLOCKEVENTS
837 select HAVE_S3C_RTC if RTC_CLASS 834 select GENERIC_GPIO
835 select HAVE_CLK
838 select HAVE_S3C2410_I2C if I2C 836 select HAVE_S3C2410_I2C if I2C
839 select HAVE_S3C2410_WATCHDOG if WATCHDOG 837 select HAVE_S3C2410_WATCHDOG if WATCHDOG
838 select HAVE_S3C_RTC if RTC_CLASS
840 select NEED_MACH_GPIO_H 839 select NEED_MACH_GPIO_H
841 select NEED_MACH_MEMORY_H 840 select NEED_MACH_MEMORY_H
842 help 841 help
@@ -844,13 +843,13 @@ config ARCH_EXYNOS
844 843
845config ARCH_SHARK 844config ARCH_SHARK
846 bool "Shark" 845 bool "Shark"
846 select ARCH_USES_GETTIMEOFFSET
847 select CPU_SA110 847 select CPU_SA110
848 select ISA 848 select ISA
849 select ISA_DMA 849 select ISA_DMA
850 select ZONE_DMA
851 select PCI
852 select ARCH_USES_GETTIMEOFFSET
853 select NEED_MACH_MEMORY_H 850 select NEED_MACH_MEMORY_H
851 select PCI
852 select ZONE_DMA
854 help 853 help
855 Support for the StrongARM based Digital DNARD machine, also known 854 Support for the StrongARM based Digital DNARD machine, also known
856 as "Shark" (<http://www.shark-linux.de/shark.html>). 855 as "Shark" (<http://www.shark-linux.de/shark.html>).
@@ -858,17 +857,17 @@ config ARCH_SHARK
858config ARCH_U300 857config ARCH_U300
859 bool "ST-Ericsson U300 Series" 858 bool "ST-Ericsson U300 Series"
860 depends on MMU 859 depends on MMU
861 select CLKSRC_MMIO 860 select ARCH_REQUIRE_GPIOLIB
862 select CPU_ARM926T
863 select HAVE_TCM
864 select ARM_AMBA 861 select ARM_AMBA
865 select ARM_PATCH_PHYS_VIRT 862 select ARM_PATCH_PHYS_VIRT
866 select ARM_VIC 863 select ARM_VIC
867 select GENERIC_CLOCKEVENTS
868 select CLKDEV_LOOKUP 864 select CLKDEV_LOOKUP
865 select CLKSRC_MMIO
869 select COMMON_CLK 866 select COMMON_CLK
867 select CPU_ARM926T
868 select GENERIC_CLOCKEVENTS
870 select GENERIC_GPIO 869 select GENERIC_GPIO
871 select ARCH_REQUIRE_GPIOLIB 870 select HAVE_TCM
872 select SPARSE_IRQ 871 select SPARSE_IRQ
873 help 872 help
874 Support for ST-Ericsson U300 series mobile platforms. 873 Support for ST-Ericsson U300 series mobile platforms.
@@ -876,12 +875,12 @@ config ARCH_U300
876config ARCH_U8500 875config ARCH_U8500
877 bool "ST-Ericsson U8500 Series" 876 bool "ST-Ericsson U8500 Series"
878 depends on MMU 877 depends on MMU
879 select CPU_V7 878 select ARCH_HAS_CPUFREQ
879 select ARCH_REQUIRE_GPIOLIB
880 select ARM_AMBA 880 select ARM_AMBA
881 select GENERIC_CLOCKEVENTS
882 select CLKDEV_LOOKUP 881 select CLKDEV_LOOKUP
883 select ARCH_REQUIRE_GPIOLIB 882 select CPU_V7
884 select ARCH_HAS_CPUFREQ 883 select GENERIC_CLOCKEVENTS
885 select HAVE_SMP 884 select HAVE_SMP
886 select MIGHT_HAVE_CACHE_L2X0 885 select MIGHT_HAVE_CACHE_L2X0
887 help 886 help
@@ -889,78 +888,78 @@ config ARCH_U8500
889 888
890config ARCH_NOMADIK 889config ARCH_NOMADIK
891 bool "STMicroelectronics Nomadik" 890 bool "STMicroelectronics Nomadik"
891 select ARCH_REQUIRE_GPIOLIB
892 select ARM_AMBA 892 select ARM_AMBA
893 select ARM_VIC 893 select ARM_VIC
894 select CPU_ARM926T
895 select COMMON_CLK 894 select COMMON_CLK
895 select CPU_ARM926T
896 select GENERIC_CLOCKEVENTS 896 select GENERIC_CLOCKEVENTS
897 select MIGHT_HAVE_CACHE_L2X0
897 select PINCTRL 898 select PINCTRL
898 select PINCTRL_STN8815 899 select PINCTRL_STN8815
899 select MIGHT_HAVE_CACHE_L2X0
900 select ARCH_REQUIRE_GPIOLIB
901 help 900 help
902 Support for the Nomadik platform by ST-Ericsson 901 Support for the Nomadik platform by ST-Ericsson
903 902
903config PLAT_SPEAR
904 bool "ST SPEAr"
905 select ARCH_REQUIRE_GPIOLIB
906 select ARM_AMBA
907 select CLKDEV_LOOKUP
908 select CLKSRC_MMIO
909 select COMMON_CLK
910 select GENERIC_CLOCKEVENTS
911 select HAVE_CLK
912 help
913 Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx).
914
904config ARCH_DAVINCI 915config ARCH_DAVINCI
905 bool "TI DaVinci" 916 bool "TI DaVinci"
906 select GENERIC_CLOCKEVENTS 917 select ARCH_HAS_HOLES_MEMORYMODEL
907 select ARCH_REQUIRE_GPIOLIB 918 select ARCH_REQUIRE_GPIOLIB
908 select ZONE_DMA
909 select HAVE_IDE
910 select CLKDEV_LOOKUP 919 select CLKDEV_LOOKUP
911 select GENERIC_ALLOCATOR 920 select GENERIC_ALLOCATOR
921 select GENERIC_CLOCKEVENTS
912 select GENERIC_IRQ_CHIP 922 select GENERIC_IRQ_CHIP
913 select ARCH_HAS_HOLES_MEMORYMODEL 923 select HAVE_IDE
914 select NEED_MACH_GPIO_H 924 select NEED_MACH_GPIO_H
925 select ZONE_DMA
915 help 926 help
916 Support for TI's DaVinci platform. 927 Support for TI's DaVinci platform.
917 928
918config ARCH_OMAP 929config ARCH_OMAP
919 bool "TI OMAP" 930 bool "TI OMAP"
920 depends on MMU 931 depends on MMU
921 select HAVE_CLK
922 select ARCH_REQUIRE_GPIOLIB
923 select ARCH_HAS_CPUFREQ 932 select ARCH_HAS_CPUFREQ
924 select CLKSRC_MMIO
925 select GENERIC_CLOCKEVENTS
926 select ARCH_HAS_HOLES_MEMORYMODEL 933 select ARCH_HAS_HOLES_MEMORYMODEL
927 select NEED_MACH_GPIO_H
928 help
929 Support for TI's OMAP platform (OMAP1/2/3/4).
930
931config PLAT_SPEAR
932 bool "ST SPEAr"
933 select ARM_AMBA
934 select ARCH_REQUIRE_GPIOLIB 934 select ARCH_REQUIRE_GPIOLIB
935 select CLKDEV_LOOKUP
936 select COMMON_CLK
937 select CLKSRC_MMIO 935 select CLKSRC_MMIO
938 select GENERIC_CLOCKEVENTS 936 select GENERIC_CLOCKEVENTS
939 select HAVE_CLK 937 select HAVE_CLK
938 select NEED_MACH_GPIO_H
940 help 939 help
941 Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx). 940 Support for TI's OMAP platform (OMAP1/2/3/4).
942 941
943config ARCH_VT8500 942config ARCH_VT8500
944 bool "VIA/WonderMedia 85xx" 943 bool "VIA/WonderMedia 85xx"
945 select CPU_ARM926T
946 select GENERIC_GPIO
947 select ARCH_HAS_CPUFREQ 944 select ARCH_HAS_CPUFREQ
948 select GENERIC_CLOCKEVENTS
949 select ARCH_REQUIRE_GPIOLIB 945 select ARCH_REQUIRE_GPIOLIB
950 select USE_OF 946 select CLKDEV_LOOKUP
951 select COMMON_CLK 947 select COMMON_CLK
948 select CPU_ARM926T
949 select GENERIC_CLOCKEVENTS
950 select GENERIC_GPIO
952 select HAVE_CLK 951 select HAVE_CLK
953 select CLKDEV_LOOKUP 952 select USE_OF
954 help 953 help
955 Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip. 954 Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip.
956 955
957config ARCH_ZYNQ 956config ARCH_ZYNQ
958 bool "Xilinx Zynq ARM Cortex A9 Platform" 957 bool "Xilinx Zynq ARM Cortex A9 Platform"
958 select ARM_AMBA
959 select ARM_GIC
960 select CLKDEV_LOOKUP
959 select CPU_V7 961 select CPU_V7
960 select GENERIC_CLOCKEVENTS 962 select GENERIC_CLOCKEVENTS
961 select CLKDEV_LOOKUP
962 select ARM_GIC
963 select ARM_AMBA
964 select ICST 963 select ICST
965 select MIGHT_HAVE_CACHE_L2X0 964 select MIGHT_HAVE_CACHE_L2X0
966 select USE_OF 965 select USE_OF
@@ -975,33 +974,33 @@ comment "CPU Core family selection"
975 974
976config ARCH_MULTI_V4 975config ARCH_MULTI_V4
977 bool "ARMv4 based platforms (FA526, StrongARM)" 976 bool "ARMv4 based platforms (FA526, StrongARM)"
978 select ARCH_MULTI_V4_V5
979 depends on !ARCH_MULTI_V6_V7 977 depends on !ARCH_MULTI_V6_V7
978 select ARCH_MULTI_V4_V5
980 979
981config ARCH_MULTI_V4T 980config ARCH_MULTI_V4T
982 bool "ARMv4T based platforms (ARM720T, ARM920T, ...)" 981 bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
983 select ARCH_MULTI_V4_V5
984 depends on !ARCH_MULTI_V6_V7 982 depends on !ARCH_MULTI_V6_V7
983 select ARCH_MULTI_V4_V5
985 984
986config ARCH_MULTI_V5 985config ARCH_MULTI_V5
987 bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)" 986 bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
988 select ARCH_MULTI_V4_V5
989 depends on !ARCH_MULTI_V6_V7 987 depends on !ARCH_MULTI_V6_V7
988 select ARCH_MULTI_V4_V5
990 989
991config ARCH_MULTI_V4_V5 990config ARCH_MULTI_V4_V5
992 bool 991 bool
993 992
994config ARCH_MULTI_V6 993config ARCH_MULTI_V6
995 bool "ARMv6 based platforms (ARM11, Scorpion, ...)" 994 bool "ARMv6 based platforms (ARM11, Scorpion, ...)"
996 select CPU_V6
997 select ARCH_MULTI_V6_V7 995 select ARCH_MULTI_V6_V7
996 select CPU_V6
998 997
999config ARCH_MULTI_V7 998config ARCH_MULTI_V7
1000 bool "ARMv7 based platforms (Cortex-A, PJ4, Krait)" 999 bool "ARMv7 based platforms (Cortex-A, PJ4, Krait)"
1001 select CPU_V7
1002 select ARCH_VEXPRESS
1003 default y 1000 default y
1004 select ARCH_MULTI_V6_V7 1001 select ARCH_MULTI_V6_V7
1002 select ARCH_VEXPRESS
1003 select CPU_V7
1005 1004
1006config ARCH_MULTI_V6_V7 1005config ARCH_MULTI_V6_V7
1007 bool 1006 bool
@@ -1138,9 +1137,9 @@ config PLAT_IOP
1138config PLAT_ORION 1137config PLAT_ORION
1139 bool 1138 bool
1140 select CLKSRC_MMIO 1139 select CLKSRC_MMIO
1140 select COMMON_CLK
1141 select GENERIC_IRQ_CHIP 1141 select GENERIC_IRQ_CHIP
1142 select IRQ_DOMAIN 1142 select IRQ_DOMAIN
1143 select COMMON_CLK
1144 1143
1145config PLAT_ORION_LEGACY 1144config PLAT_ORION_LEGACY
1146 bool 1145 bool
@@ -1498,8 +1497,8 @@ config SMP
1498 depends on GENERIC_CLOCKEVENTS 1497 depends on GENERIC_CLOCKEVENTS
1499 depends on HAVE_SMP 1498 depends on HAVE_SMP
1500 depends on MMU 1499 depends on MMU
1501 select USE_GENERIC_SMP_HELPERS
1502 select HAVE_ARM_SCU if !ARCH_MSM_SCORPIONMP 1500 select HAVE_ARM_SCU if !ARCH_MSM_SCORPIONMP
1501 select USE_GENERIC_SMP_HELPERS
1503 help 1502 help
1504 This enables support for systems with more than one CPU. If you have 1503 This enables support for systems with more than one CPU. If you have
1505 a system with only one CPU, like most personal computers, say N. If 1504 a system with only one CPU, like most personal computers, say N. If
@@ -1858,9 +1857,9 @@ menu "Boot options"
1858 1857
1859config USE_OF 1858config USE_OF
1860 bool "Flattened Device Tree support" 1859 bool "Flattened Device Tree support"
1860 select IRQ_DOMAIN
1861 select OF 1861 select OF
1862 select OF_EARLY_FLATTREE 1862 select OF_EARLY_FLATTREE
1863 select IRQ_DOMAIN
1864 help 1863 help
1865 Include support for flattened device tree machine descriptions. 1864 Include support for flattened device tree machine descriptions.
1866 1865
@@ -2142,8 +2141,8 @@ config CPU_FREQ_PXA
2142 bool 2141 bool
2143 depends on CPU_FREQ && ARCH_PXA && PXA25x 2142 depends on CPU_FREQ && ARCH_PXA && PXA25x
2144 default y 2143 default y
2145 select CPU_FREQ_TABLE
2146 select CPU_FREQ_DEFAULT_GOV_USERSPACE 2144 select CPU_FREQ_DEFAULT_GOV_USERSPACE
2145 select CPU_FREQ_TABLE
2147 2146
2148config CPU_FREQ_S3C 2147config CPU_FREQ_S3C
2149 bool 2148 bool
diff --git a/arch/arm/common/Kconfig b/arch/arm/common/Kconfig
index 283fa1d804f4..45ceeb0e93e0 100644
--- a/arch/arm/common/Kconfig
+++ b/arch/arm/common/Kconfig
@@ -1,15 +1,15 @@
1config ARM_GIC 1config ARM_GIC
2 bool
2 select IRQ_DOMAIN 3 select IRQ_DOMAIN
3 select MULTI_IRQ_HANDLER 4 select MULTI_IRQ_HANDLER
4 bool
5 5
6config GIC_NON_BANKED 6config GIC_NON_BANKED
7 bool 7 bool
8 8
9config ARM_VIC 9config ARM_VIC
10 bool
10 select IRQ_DOMAIN 11 select IRQ_DOMAIN
11 select MULTI_IRQ_HANDLER 12 select MULTI_IRQ_HANDLER
12 bool
13 13
14config ARM_VIC_NR 14config ARM_VIC_NR
15 int 15 int
diff --git a/arch/arm/include/asm/Kbuild b/arch/arm/include/asm/Kbuild
index 8a7196ca5106..f70ae175a3d6 100644
--- a/arch/arm/include/asm/Kbuild
+++ b/arch/arm/include/asm/Kbuild
@@ -1,6 +1,4 @@
1include include/asm-generic/Kbuild.asm
2 1
3header-y += hwcap.h
4 2
5generic-y += auxvec.h 3generic-y += auxvec.h
6generic-y += bitsperlong.h 4generic-y += bitsperlong.h
diff --git a/arch/arm/include/asm/hwcap.h b/arch/arm/include/asm/hwcap.h
index 917626128a1d..6ff56eca3f1f 100644
--- a/arch/arm/include/asm/hwcap.h
+++ b/arch/arm/include/asm/hwcap.h
@@ -1,31 +1,8 @@
1#ifndef __ASMARM_HWCAP_H 1#ifndef __ASMARM_HWCAP_H
2#define __ASMARM_HWCAP_H 2#define __ASMARM_HWCAP_H
3 3
4/* 4#include <uapi/asm/hwcap.h>
5 * HWCAP flags - for elf_hwcap (in kernel) and AT_HWCAP
6 */
7#define HWCAP_SWP (1 << 0)
8#define HWCAP_HALF (1 << 1)
9#define HWCAP_THUMB (1 << 2)
10#define HWCAP_26BIT (1 << 3) /* Play it safe */
11#define HWCAP_FAST_MULT (1 << 4)
12#define HWCAP_FPA (1 << 5)
13#define HWCAP_VFP (1 << 6)
14#define HWCAP_EDSP (1 << 7)
15#define HWCAP_JAVA (1 << 8)
16#define HWCAP_IWMMXT (1 << 9)
17#define HWCAP_CRUNCH (1 << 10)
18#define HWCAP_THUMBEE (1 << 11)
19#define HWCAP_NEON (1 << 12)
20#define HWCAP_VFPv3 (1 << 13)
21#define HWCAP_VFPv3D16 (1 << 14)
22#define HWCAP_TLS (1 << 15)
23#define HWCAP_VFPv4 (1 << 16)
24#define HWCAP_IDIVA (1 << 17)
25#define HWCAP_IDIVT (1 << 18)
26#define HWCAP_IDIV (HWCAP_IDIVA | HWCAP_IDIVT)
27 5
28#if defined(__KERNEL__)
29#if !defined(__ASSEMBLY__) 6#if !defined(__ASSEMBLY__)
30/* 7/*
31 * This yields a mask that user programs can use to figure out what 8 * This yields a mask that user programs can use to figure out what
@@ -35,5 +12,3 @@
35extern unsigned int elf_hwcap; 12extern unsigned int elf_hwcap;
36#endif 13#endif
37#endif 14#endif
38
39#endif
diff --git a/arch/arm/include/asm/ptrace.h b/arch/arm/include/asm/ptrace.h
index 142d6ae41231..3d52ee1bfb31 100644
--- a/arch/arm/include/asm/ptrace.h
+++ b/arch/arm/include/asm/ptrace.h
@@ -10,133 +10,12 @@
10#ifndef __ASM_ARM_PTRACE_H 10#ifndef __ASM_ARM_PTRACE_H
11#define __ASM_ARM_PTRACE_H 11#define __ASM_ARM_PTRACE_H
12 12
13#include <asm/hwcap.h> 13#include <uapi/asm/ptrace.h>
14
15#define PTRACE_GETREGS 12
16#define PTRACE_SETREGS 13
17#define PTRACE_GETFPREGS 14
18#define PTRACE_SETFPREGS 15
19/* PTRACE_ATTACH is 16 */
20/* PTRACE_DETACH is 17 */
21#define PTRACE_GETWMMXREGS 18
22#define PTRACE_SETWMMXREGS 19
23/* 20 is unused */
24#define PTRACE_OLDSETOPTIONS 21
25#define PTRACE_GET_THREAD_AREA 22
26#define PTRACE_SET_SYSCALL 23
27/* PTRACE_SYSCALL is 24 */
28#define PTRACE_GETCRUNCHREGS 25
29#define PTRACE_SETCRUNCHREGS 26
30#define PTRACE_GETVFPREGS 27
31#define PTRACE_SETVFPREGS 28
32#define PTRACE_GETHBPREGS 29
33#define PTRACE_SETHBPREGS 30
34
35/*
36 * PSR bits
37 */
38#define USR26_MODE 0x00000000
39#define FIQ26_MODE 0x00000001
40#define IRQ26_MODE 0x00000002
41#define SVC26_MODE 0x00000003
42#define USR_MODE 0x00000010
43#define FIQ_MODE 0x00000011
44#define IRQ_MODE 0x00000012
45#define SVC_MODE 0x00000013
46#define ABT_MODE 0x00000017
47#define HYP_MODE 0x0000001a
48#define UND_MODE 0x0000001b
49#define SYSTEM_MODE 0x0000001f
50#define MODE32_BIT 0x00000010
51#define MODE_MASK 0x0000001f
52#define PSR_T_BIT 0x00000020
53#define PSR_F_BIT 0x00000040
54#define PSR_I_BIT 0x00000080
55#define PSR_A_BIT 0x00000100
56#define PSR_E_BIT 0x00000200
57#define PSR_J_BIT 0x01000000
58#define PSR_Q_BIT 0x08000000
59#define PSR_V_BIT 0x10000000
60#define PSR_C_BIT 0x20000000
61#define PSR_Z_BIT 0x40000000
62#define PSR_N_BIT 0x80000000
63
64/*
65 * Groups of PSR bits
66 */
67#define PSR_f 0xff000000 /* Flags */
68#define PSR_s 0x00ff0000 /* Status */
69#define PSR_x 0x0000ff00 /* Extension */
70#define PSR_c 0x000000ff /* Control */
71
72/*
73 * ARMv7 groups of PSR bits
74 */
75#define APSR_MASK 0xf80f0000 /* N, Z, C, V, Q and GE flags */
76#define PSR_ISET_MASK 0x01000010 /* ISA state (J, T) mask */
77#define PSR_IT_MASK 0x0600fc00 /* If-Then execution state mask */
78#define PSR_ENDIAN_MASK 0x00000200 /* Endianness state mask */
79
80/*
81 * Default endianness state
82 */
83#ifdef CONFIG_CPU_ENDIAN_BE8
84#define PSR_ENDSTATE PSR_E_BIT
85#else
86#define PSR_ENDSTATE 0
87#endif
88
89/*
90 * These are 'magic' values for PTRACE_PEEKUSR that return info about where a
91 * process is located in memory.
92 */
93#define PT_TEXT_ADDR 0x10000
94#define PT_DATA_ADDR 0x10004
95#define PT_TEXT_END_ADDR 0x10008
96 14
97#ifndef __ASSEMBLY__ 15#ifndef __ASSEMBLY__
98
99/*
100 * This struct defines the way the registers are stored on the
101 * stack during a system call. Note that sizeof(struct pt_regs)
102 * has to be a multiple of 8.
103 */
104#ifndef __KERNEL__
105struct pt_regs {
106 long uregs[18];
107};
108#else /* __KERNEL__ */
109struct pt_regs { 16struct pt_regs {
110 unsigned long uregs[18]; 17 unsigned long uregs[18];
111}; 18};
112#endif /* __KERNEL__ */
113
114#define ARM_cpsr uregs[16]
115#define ARM_pc uregs[15]
116#define ARM_lr uregs[14]
117#define ARM_sp uregs[13]
118#define ARM_ip uregs[12]
119#define ARM_fp uregs[11]
120#define ARM_r10 uregs[10]
121#define ARM_r9 uregs[9]
122#define ARM_r8 uregs[8]
123#define ARM_r7 uregs[7]
124#define ARM_r6 uregs[6]
125#define ARM_r5 uregs[5]
126#define ARM_r4 uregs[4]
127#define ARM_r3 uregs[3]
128#define ARM_r2 uregs[2]
129#define ARM_r1 uregs[1]
130#define ARM_r0 uregs[0]
131#define ARM_ORIG_r0 uregs[17]
132
133/*
134 * The size of the user-visible VFP state as seen by PTRACE_GET/SETVFPREGS
135 * and core dumps.
136 */
137#define ARM_VFPREGS_SIZE ( 32 * 8 /*fpregs*/ + 4 /*fpscr*/ )
138
139#ifdef __KERNEL__
140 19
141#define user_mode(regs) \ 20#define user_mode(regs) \
142 (((regs)->ARM_cpsr & 0xf) == 0) 21 (((regs)->ARM_cpsr & 0xf) == 0)
@@ -260,9 +139,5 @@ static inline unsigned long user_stack_pointer(struct pt_regs *regs)
260 (struct pt_regs *)((sp | (THREAD_SIZE - 1)) - 7) - 1; \ 139 (struct pt_regs *)((sp | (THREAD_SIZE - 1)) - 7) - 1; \
261}) 140})
262 141
263#endif /* __KERNEL__ */
264
265#endif /* __ASSEMBLY__ */ 142#endif /* __ASSEMBLY__ */
266
267#endif 143#endif
268
diff --git a/arch/arm/include/asm/setup.h b/arch/arm/include/asm/setup.h
index 24d284a1bfc7..c50f05609501 100644
--- a/arch/arm/include/asm/setup.h
+++ b/arch/arm/include/asm/setup.h
@@ -14,176 +14,8 @@
14#ifndef __ASMARM_SETUP_H 14#ifndef __ASMARM_SETUP_H
15#define __ASMARM_SETUP_H 15#define __ASMARM_SETUP_H
16 16
17#include <linux/types.h> 17#include <uapi/asm/setup.h>
18 18
19#define COMMAND_LINE_SIZE 1024
20
21/* The list ends with an ATAG_NONE node. */
22#define ATAG_NONE 0x00000000
23
24struct tag_header {
25 __u32 size;
26 __u32 tag;
27};
28
29/* The list must start with an ATAG_CORE node */
30#define ATAG_CORE 0x54410001
31
32struct tag_core {
33 __u32 flags; /* bit 0 = read-only */
34 __u32 pagesize;
35 __u32 rootdev;
36};
37
38/* it is allowed to have multiple ATAG_MEM nodes */
39#define ATAG_MEM 0x54410002
40
41struct tag_mem32 {
42 __u32 size;
43 __u32 start; /* physical start address */
44};
45
46/* VGA text type displays */
47#define ATAG_VIDEOTEXT 0x54410003
48
49struct tag_videotext {
50 __u8 x;
51 __u8 y;
52 __u16 video_page;
53 __u8 video_mode;
54 __u8 video_cols;
55 __u16 video_ega_bx;
56 __u8 video_lines;
57 __u8 video_isvga;
58 __u16 video_points;
59};
60
61/* describes how the ramdisk will be used in kernel */
62#define ATAG_RAMDISK 0x54410004
63
64struct tag_ramdisk {
65 __u32 flags; /* bit 0 = load, bit 1 = prompt */
66 __u32 size; /* decompressed ramdisk size in _kilo_ bytes */
67 __u32 start; /* starting block of floppy-based RAM disk image */
68};
69
70/* describes where the compressed ramdisk image lives (virtual address) */
71/*
72 * this one accidentally used virtual addresses - as such,
73 * it's deprecated.
74 */
75#define ATAG_INITRD 0x54410005
76
77/* describes where the compressed ramdisk image lives (physical address) */
78#define ATAG_INITRD2 0x54420005
79
80struct tag_initrd {
81 __u32 start; /* physical start address */
82 __u32 size; /* size of compressed ramdisk image in bytes */
83};
84
85/* board serial number. "64 bits should be enough for everybody" */
86#define ATAG_SERIAL 0x54410006
87
88struct tag_serialnr {
89 __u32 low;
90 __u32 high;
91};
92
93/* board revision */
94#define ATAG_REVISION 0x54410007
95
96struct tag_revision {
97 __u32 rev;
98};
99
100/* initial values for vesafb-type framebuffers. see struct screen_info
101 * in include/linux/tty.h
102 */
103#define ATAG_VIDEOLFB 0x54410008
104
105struct tag_videolfb {
106 __u16 lfb_width;
107 __u16 lfb_height;
108 __u16 lfb_depth;
109 __u16 lfb_linelength;
110 __u32 lfb_base;
111 __u32 lfb_size;
112 __u8 red_size;
113 __u8 red_pos;
114 __u8 green_size;
115 __u8 green_pos;
116 __u8 blue_size;
117 __u8 blue_pos;
118 __u8 rsvd_size;
119 __u8 rsvd_pos;
120};
121
122/* command line: \0 terminated string */
123#define ATAG_CMDLINE 0x54410009
124
125struct tag_cmdline {
126 char cmdline[1]; /* this is the minimum size */
127};
128
129/* acorn RiscPC specific information */
130#define ATAG_ACORN 0x41000101
131
132struct tag_acorn {
133 __u32 memc_control_reg;
134 __u32 vram_pages;
135 __u8 sounddefault;
136 __u8 adfsdrives;
137};
138
139/* footbridge memory clock, see arch/arm/mach-footbridge/arch.c */
140#define ATAG_MEMCLK 0x41000402
141
142struct tag_memclk {
143 __u32 fmemclk;
144};
145
146struct tag {
147 struct tag_header hdr;
148 union {
149 struct tag_core core;
150 struct tag_mem32 mem;
151 struct tag_videotext videotext;
152 struct tag_ramdisk ramdisk;
153 struct tag_initrd initrd;
154 struct tag_serialnr serialnr;
155 struct tag_revision revision;
156 struct tag_videolfb videolfb;
157 struct tag_cmdline cmdline;
158
159 /*
160 * Acorn specific
161 */
162 struct tag_acorn acorn;
163
164 /*
165 * DC21285 specific
166 */
167 struct tag_memclk memclk;
168 } u;
169};
170
171struct tagtable {
172 __u32 tag;
173 int (*parse)(const struct tag *);
174};
175
176#define tag_member_present(tag,member) \
177 ((unsigned long)(&((struct tag *)0L)->member + 1) \
178 <= (tag)->hdr.size * 4)
179
180#define tag_next(t) ((struct tag *)((__u32 *)(t) + (t)->hdr.size))
181#define tag_size(type) ((sizeof(struct tag_header) + sizeof(struct type)) >> 2)
182
183#define for_each_tag(t,base) \
184 for (t = base; t->hdr.size; t = tag_next(t))
185
186#ifdef __KERNEL__
187 19
188#define __tag __used __attribute__((__section__(".taglist.init"))) 20#define __tag __used __attribute__((__section__(".taglist.init")))
189#define __tagtable(tag, fn) \ 21#define __tagtable(tag, fn) \
@@ -221,6 +53,4 @@ extern int arm_add_memory(phys_addr_t start, phys_addr_t size);
221extern void early_print(const char *str, ...); 53extern void early_print(const char *str, ...);
222extern void dump_machine_table(void); 54extern void dump_machine_table(void);
223 55
224#endif /* __KERNEL__ */
225
226#endif 56#endif
diff --git a/arch/arm/include/asm/signal.h b/arch/arm/include/asm/signal.h
index 43ba0fb1c8ad..5a7963dbd3fb 100644
--- a/arch/arm/include/asm/signal.h
+++ b/arch/arm/include/asm/signal.h
@@ -1,12 +1,8 @@
1#ifndef _ASMARM_SIGNAL_H 1#ifndef _ASMARM_SIGNAL_H
2#define _ASMARM_SIGNAL_H 2#define _ASMARM_SIGNAL_H
3 3
4#include <linux/types.h> 4#include <uapi/asm/signal.h>
5 5
6/* Avoid too many header ordering problems. */
7struct siginfo;
8
9#ifdef __KERNEL__
10/* Most things should be clean enough to redefine this at will, if care 6/* Most things should be clean enough to redefine this at will, if care
11 is taken to make libc match. */ 7 is taken to make libc match. */
12 8
@@ -20,100 +16,6 @@ typedef struct {
20 unsigned long sig[_NSIG_WORDS]; 16 unsigned long sig[_NSIG_WORDS];
21} sigset_t; 17} sigset_t;
22 18
23#else
24/* Here we must cater to libcs that poke about in kernel headers. */
25
26#define NSIG 32
27typedef unsigned long sigset_t;
28
29#endif /* __KERNEL__ */
30
31#define SIGHUP 1
32#define SIGINT 2
33#define SIGQUIT 3
34#define SIGILL 4
35#define SIGTRAP 5
36#define SIGABRT 6
37#define SIGIOT 6
38#define SIGBUS 7
39#define SIGFPE 8
40#define SIGKILL 9
41#define SIGUSR1 10
42#define SIGSEGV 11
43#define SIGUSR2 12
44#define SIGPIPE 13
45#define SIGALRM 14
46#define SIGTERM 15
47#define SIGSTKFLT 16
48#define SIGCHLD 17
49#define SIGCONT 18
50#define SIGSTOP 19
51#define SIGTSTP 20
52#define SIGTTIN 21
53#define SIGTTOU 22
54#define SIGURG 23
55#define SIGXCPU 24
56#define SIGXFSZ 25
57#define SIGVTALRM 26
58#define SIGPROF 27
59#define SIGWINCH 28
60#define SIGIO 29
61#define SIGPOLL SIGIO
62/*
63#define SIGLOST 29
64*/
65#define SIGPWR 30
66#define SIGSYS 31
67#define SIGUNUSED 31
68
69/* These should not be considered constants from userland. */
70#define SIGRTMIN 32
71#define SIGRTMAX _NSIG
72
73#define SIGSWI 32
74
75/*
76 * SA_FLAGS values:
77 *
78 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
79 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
80 * SA_SIGINFO deliver the signal with SIGINFO structs
81 * SA_THIRTYTWO delivers the signal in 32-bit mode, even if the task
82 * is running in 26-bit.
83 * SA_ONSTACK allows alternate signal stacks (see sigaltstack(2)).
84 * SA_RESTART flag to get restarting signals (which were the default long ago)
85 * SA_NODEFER prevents the current signal from being masked in the handler.
86 * SA_RESETHAND clears the handler when the signal is delivered.
87 *
88 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
89 * Unix names RESETHAND and NODEFER respectively.
90 */
91#define SA_NOCLDSTOP 0x00000001
92#define SA_NOCLDWAIT 0x00000002
93#define SA_SIGINFO 0x00000004
94#define SA_THIRTYTWO 0x02000000
95#define SA_RESTORER 0x04000000
96#define SA_ONSTACK 0x08000000
97#define SA_RESTART 0x10000000
98#define SA_NODEFER 0x40000000
99#define SA_RESETHAND 0x80000000
100
101#define SA_NOMASK SA_NODEFER
102#define SA_ONESHOT SA_RESETHAND
103
104
105/*
106 * sigaltstack controls
107 */
108#define SS_ONSTACK 1
109#define SS_DISABLE 2
110
111#define MINSIGSTKSZ 2048
112#define SIGSTKSZ 8192
113
114#include <asm-generic/signal-defs.h>
115
116#ifdef __KERNEL__
117struct old_sigaction { 19struct old_sigaction {
118 __sighandler_t sa_handler; 20 __sighandler_t sa_handler;
119 old_sigset_t sa_mask; 21 old_sigset_t sa_mask;
@@ -132,33 +34,6 @@ struct k_sigaction {
132 struct sigaction sa; 34 struct sigaction sa;
133}; 35};
134 36
135#else
136/* Here we must cater to libcs that poke about in kernel headers. */
137
138struct sigaction {
139 union {
140 __sighandler_t _sa_handler;
141 void (*_sa_sigaction)(int, struct siginfo *, void *);
142 } _u;
143 sigset_t sa_mask;
144 unsigned long sa_flags;
145 void (*sa_restorer)(void);
146};
147
148#define sa_handler _u._sa_handler
149#define sa_sigaction _u._sa_sigaction
150
151#endif /* __KERNEL__ */
152
153typedef struct sigaltstack {
154 void __user *ss_sp;
155 int ss_flags;
156 size_t ss_size;
157} stack_t;
158
159#ifdef __KERNEL__
160#include <asm/sigcontext.h> 37#include <asm/sigcontext.h>
161#define ptrace_signal_deliver(regs, cookie) do { } while (0) 38#define ptrace_signal_deliver(regs, cookie) do { } while (0)
162#endif 39#endif
163
164#endif
diff --git a/arch/arm/include/asm/swab.h b/arch/arm/include/asm/swab.h
index b859d82e30ca..537fc9b91889 100644
--- a/arch/arm/include/asm/swab.h
+++ b/arch/arm/include/asm/swab.h
@@ -15,14 +15,8 @@
15#ifndef __ASM_ARM_SWAB_H 15#ifndef __ASM_ARM_SWAB_H
16#define __ASM_ARM_SWAB_H 16#define __ASM_ARM_SWAB_H
17 17
18#include <linux/compiler.h> 18#include <uapi/asm/swab.h>
19#include <linux/types.h>
20 19
21#if !defined(__STRICT_ANSI__) || defined(__KERNEL__)
22# define __SWAB_64_THRU_32__
23#endif
24
25#if defined(__KERNEL__)
26#if __LINUX_ARM_ARCH__ >= 6 20#if __LINUX_ARM_ARCH__ >= 6
27 21
28static inline __attribute_const__ __u32 __arch_swahb32(__u32 x) 22static inline __attribute_const__ __u32 __arch_swahb32(__u32 x)
@@ -42,32 +36,3 @@ static inline __attribute_const__ __u32 __arch_swab32(__u32 x)
42 36
43#endif 37#endif
44#endif 38#endif
45
46#if !defined(__KERNEL__) || __LINUX_ARM_ARCH__ < 6
47static inline __attribute_const__ __u32 __arch_swab32(__u32 x)
48{
49 __u32 t;
50
51#ifndef __thumb__
52 if (!__builtin_constant_p(x)) {
53 /*
54 * The compiler needs a bit of a hint here to always do the
55 * right thing and not screw it up to different degrees
56 * depending on the gcc version.
57 */
58 asm ("eor\t%0, %1, %1, ror #16" : "=r" (t) : "r" (x));
59 } else
60#endif
61 t = x ^ ((x << 16) | (x >> 16)); /* eor r1,r0,r0,ror #16 */
62
63 x = (x << 24) | (x >> 8); /* mov r0,r0,ror #8 */
64 t &= ~0x00FF0000; /* bic r1,r1,#0x00FF0000 */
65 x ^= (t >> 8); /* eor r0,r0,r1,lsr #8 */
66
67 return x;
68}
69#define __arch_swab32 __arch_swab32
70
71#endif
72
73#endif
diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index 91819ad54424..8f60b6e6bd41 100644
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -13,447 +13,10 @@
13#ifndef __ASM_ARM_UNISTD_H 13#ifndef __ASM_ARM_UNISTD_H
14#define __ASM_ARM_UNISTD_H 14#define __ASM_ARM_UNISTD_H
15 15
16#define __NR_OABI_SYSCALL_BASE 0x900000 16#include <uapi/asm/unistd.h>
17 17
18#if defined(__thumb__) || defined(__ARM_EABI__)
19#define __NR_SYSCALL_BASE 0
20#else
21#define __NR_SYSCALL_BASE __NR_OABI_SYSCALL_BASE
22#endif
23
24/*
25 * This file contains the system call numbers.
26 */
27
28#define __NR_restart_syscall (__NR_SYSCALL_BASE+ 0)
29#define __NR_exit (__NR_SYSCALL_BASE+ 1)
30#define __NR_fork (__NR_SYSCALL_BASE+ 2)
31#define __NR_read (__NR_SYSCALL_BASE+ 3)
32#define __NR_write (__NR_SYSCALL_BASE+ 4)
33#define __NR_open (__NR_SYSCALL_BASE+ 5)
34#define __NR_close (__NR_SYSCALL_BASE+ 6)
35 /* 7 was sys_waitpid */
36#define __NR_creat (__NR_SYSCALL_BASE+ 8)
37#define __NR_link (__NR_SYSCALL_BASE+ 9)
38#define __NR_unlink (__NR_SYSCALL_BASE+ 10)
39#define __NR_execve (__NR_SYSCALL_BASE+ 11)
40#define __NR_chdir (__NR_SYSCALL_BASE+ 12)
41#define __NR_time (__NR_SYSCALL_BASE+ 13)
42#define __NR_mknod (__NR_SYSCALL_BASE+ 14)
43#define __NR_chmod (__NR_SYSCALL_BASE+ 15)
44#define __NR_lchown (__NR_SYSCALL_BASE+ 16)
45 /* 17 was sys_break */
46 /* 18 was sys_stat */
47#define __NR_lseek (__NR_SYSCALL_BASE+ 19)
48#define __NR_getpid (__NR_SYSCALL_BASE+ 20)
49#define __NR_mount (__NR_SYSCALL_BASE+ 21)
50#define __NR_umount (__NR_SYSCALL_BASE+ 22)
51#define __NR_setuid (__NR_SYSCALL_BASE+ 23)
52#define __NR_getuid (__NR_SYSCALL_BASE+ 24)
53#define __NR_stime (__NR_SYSCALL_BASE+ 25)
54#define __NR_ptrace (__NR_SYSCALL_BASE+ 26)
55#define __NR_alarm (__NR_SYSCALL_BASE+ 27)
56 /* 28 was sys_fstat */
57#define __NR_pause (__NR_SYSCALL_BASE+ 29)
58#define __NR_utime (__NR_SYSCALL_BASE+ 30)
59 /* 31 was sys_stty */
60 /* 32 was sys_gtty */
61#define __NR_access (__NR_SYSCALL_BASE+ 33)
62#define __NR_nice (__NR_SYSCALL_BASE+ 34)
63 /* 35 was sys_ftime */
64#define __NR_sync (__NR_SYSCALL_BASE+ 36)
65#define __NR_kill (__NR_SYSCALL_BASE+ 37)
66#define __NR_rename (__NR_SYSCALL_BASE+ 38)
67#define __NR_mkdir (__NR_SYSCALL_BASE+ 39)
68#define __NR_rmdir (__NR_SYSCALL_BASE+ 40)
69#define __NR_dup (__NR_SYSCALL_BASE+ 41)
70#define __NR_pipe (__NR_SYSCALL_BASE+ 42)
71#define __NR_times (__NR_SYSCALL_BASE+ 43)
72 /* 44 was sys_prof */
73#define __NR_brk (__NR_SYSCALL_BASE+ 45)
74#define __NR_setgid (__NR_SYSCALL_BASE+ 46)
75#define __NR_getgid (__NR_SYSCALL_BASE+ 47)
76 /* 48 was sys_signal */
77#define __NR_geteuid (__NR_SYSCALL_BASE+ 49)
78#define __NR_getegid (__NR_SYSCALL_BASE+ 50)
79#define __NR_acct (__NR_SYSCALL_BASE+ 51)
80#define __NR_umount2 (__NR_SYSCALL_BASE+ 52)
81 /* 53 was sys_lock */
82#define __NR_ioctl (__NR_SYSCALL_BASE+ 54)
83#define __NR_fcntl (__NR_SYSCALL_BASE+ 55)
84 /* 56 was sys_mpx */
85#define __NR_setpgid (__NR_SYSCALL_BASE+ 57)
86 /* 58 was sys_ulimit */
87 /* 59 was sys_olduname */
88#define __NR_umask (__NR_SYSCALL_BASE+ 60)
89#define __NR_chroot (__NR_SYSCALL_BASE+ 61)
90#define __NR_ustat (__NR_SYSCALL_BASE+ 62)
91#define __NR_dup2 (__NR_SYSCALL_BASE+ 63)
92#define __NR_getppid (__NR_SYSCALL_BASE+ 64)
93#define __NR_getpgrp (__NR_SYSCALL_BASE+ 65)
94#define __NR_setsid (__NR_SYSCALL_BASE+ 66)
95#define __NR_sigaction (__NR_SYSCALL_BASE+ 67)
96 /* 68 was sys_sgetmask */
97 /* 69 was sys_ssetmask */
98#define __NR_setreuid (__NR_SYSCALL_BASE+ 70)
99#define __NR_setregid (__NR_SYSCALL_BASE+ 71)
100#define __NR_sigsuspend (__NR_SYSCALL_BASE+ 72)
101#define __NR_sigpending (__NR_SYSCALL_BASE+ 73)
102#define __NR_sethostname (__NR_SYSCALL_BASE+ 74)
103#define __NR_setrlimit (__NR_SYSCALL_BASE+ 75)
104#define __NR_getrlimit (__NR_SYSCALL_BASE+ 76) /* Back compat 2GB limited rlimit */
105#define __NR_getrusage (__NR_SYSCALL_BASE+ 77)
106#define __NR_gettimeofday (__NR_SYSCALL_BASE+ 78)
107#define __NR_settimeofday (__NR_SYSCALL_BASE+ 79)
108#define __NR_getgroups (__NR_SYSCALL_BASE+ 80)
109#define __NR_setgroups (__NR_SYSCALL_BASE+ 81)
110#define __NR_select (__NR_SYSCALL_BASE+ 82)
111#define __NR_symlink (__NR_SYSCALL_BASE+ 83)
112 /* 84 was sys_lstat */
113#define __NR_readlink (__NR_SYSCALL_BASE+ 85)
114#define __NR_uselib (__NR_SYSCALL_BASE+ 86)
115#define __NR_swapon (__NR_SYSCALL_BASE+ 87)
116#define __NR_reboot (__NR_SYSCALL_BASE+ 88)
117#define __NR_readdir (__NR_SYSCALL_BASE+ 89)
118#define __NR_mmap (__NR_SYSCALL_BASE+ 90)
119#define __NR_munmap (__NR_SYSCALL_BASE+ 91)
120#define __NR_truncate (__NR_SYSCALL_BASE+ 92)
121#define __NR_ftruncate (__NR_SYSCALL_BASE+ 93)
122#define __NR_fchmod (__NR_SYSCALL_BASE+ 94)
123#define __NR_fchown (__NR_SYSCALL_BASE+ 95)
124#define __NR_getpriority (__NR_SYSCALL_BASE+ 96)
125#define __NR_setpriority (__NR_SYSCALL_BASE+ 97)
126 /* 98 was sys_profil */
127#define __NR_statfs (__NR_SYSCALL_BASE+ 99)
128#define __NR_fstatfs (__NR_SYSCALL_BASE+100)
129 /* 101 was sys_ioperm */
130#define __NR_socketcall (__NR_SYSCALL_BASE+102)
131#define __NR_syslog (__NR_SYSCALL_BASE+103)
132#define __NR_setitimer (__NR_SYSCALL_BASE+104)
133#define __NR_getitimer (__NR_SYSCALL_BASE+105)
134#define __NR_stat (__NR_SYSCALL_BASE+106)
135#define __NR_lstat (__NR_SYSCALL_BASE+107)
136#define __NR_fstat (__NR_SYSCALL_BASE+108)
137 /* 109 was sys_uname */
138 /* 110 was sys_iopl */
139#define __NR_vhangup (__NR_SYSCALL_BASE+111)
140 /* 112 was sys_idle */
141#define __NR_syscall (__NR_SYSCALL_BASE+113) /* syscall to call a syscall! */
142#define __NR_wait4 (__NR_SYSCALL_BASE+114)
143#define __NR_swapoff (__NR_SYSCALL_BASE+115)
144#define __NR_sysinfo (__NR_SYSCALL_BASE+116)
145#define __NR_ipc (__NR_SYSCALL_BASE+117)
146#define __NR_fsync (__NR_SYSCALL_BASE+118)
147#define __NR_sigreturn (__NR_SYSCALL_BASE+119)
148#define __NR_clone (__NR_SYSCALL_BASE+120)
149#define __NR_setdomainname (__NR_SYSCALL_BASE+121)
150#define __NR_uname (__NR_SYSCALL_BASE+122)
151 /* 123 was sys_modify_ldt */
152#define __NR_adjtimex (__NR_SYSCALL_BASE+124)
153#define __NR_mprotect (__NR_SYSCALL_BASE+125)
154#define __NR_sigprocmask (__NR_SYSCALL_BASE+126)
155 /* 127 was sys_create_module */
156#define __NR_init_module (__NR_SYSCALL_BASE+128)
157#define __NR_delete_module (__NR_SYSCALL_BASE+129)
158 /* 130 was sys_get_kernel_syms */
159#define __NR_quotactl (__NR_SYSCALL_BASE+131)
160#define __NR_getpgid (__NR_SYSCALL_BASE+132)
161#define __NR_fchdir (__NR_SYSCALL_BASE+133)
162#define __NR_bdflush (__NR_SYSCALL_BASE+134)
163#define __NR_sysfs (__NR_SYSCALL_BASE+135)
164#define __NR_personality (__NR_SYSCALL_BASE+136)
165 /* 137 was sys_afs_syscall */
166#define __NR_setfsuid (__NR_SYSCALL_BASE+138)
167#define __NR_setfsgid (__NR_SYSCALL_BASE+139)
168#define __NR__llseek (__NR_SYSCALL_BASE+140)
169#define __NR_getdents (__NR_SYSCALL_BASE+141)
170#define __NR__newselect (__NR_SYSCALL_BASE+142)
171#define __NR_flock (__NR_SYSCALL_BASE+143)
172#define __NR_msync (__NR_SYSCALL_BASE+144)
173#define __NR_readv (__NR_SYSCALL_BASE+145)
174#define __NR_writev (__NR_SYSCALL_BASE+146)
175#define __NR_getsid (__NR_SYSCALL_BASE+147)
176#define __NR_fdatasync (__NR_SYSCALL_BASE+148)
177#define __NR__sysctl (__NR_SYSCALL_BASE+149)
178#define __NR_mlock (__NR_SYSCALL_BASE+150)
179#define __NR_munlock (__NR_SYSCALL_BASE+151)
180#define __NR_mlockall (__NR_SYSCALL_BASE+152)
181#define __NR_munlockall (__NR_SYSCALL_BASE+153)
182#define __NR_sched_setparam (__NR_SYSCALL_BASE+154)
183#define __NR_sched_getparam (__NR_SYSCALL_BASE+155)
184#define __NR_sched_setscheduler (__NR_SYSCALL_BASE+156)
185#define __NR_sched_getscheduler (__NR_SYSCALL_BASE+157)
186#define __NR_sched_yield (__NR_SYSCALL_BASE+158)
187#define __NR_sched_get_priority_max (__NR_SYSCALL_BASE+159)
188#define __NR_sched_get_priority_min (__NR_SYSCALL_BASE+160)
189#define __NR_sched_rr_get_interval (__NR_SYSCALL_BASE+161)
190#define __NR_nanosleep (__NR_SYSCALL_BASE+162)
191#define __NR_mremap (__NR_SYSCALL_BASE+163)
192#define __NR_setresuid (__NR_SYSCALL_BASE+164)
193#define __NR_getresuid (__NR_SYSCALL_BASE+165)
194 /* 166 was sys_vm86 */
195 /* 167 was sys_query_module */
196#define __NR_poll (__NR_SYSCALL_BASE+168)
197#define __NR_nfsservctl (__NR_SYSCALL_BASE+169)
198#define __NR_setresgid (__NR_SYSCALL_BASE+170)
199#define __NR_getresgid (__NR_SYSCALL_BASE+171)
200#define __NR_prctl (__NR_SYSCALL_BASE+172)
201#define __NR_rt_sigreturn (__NR_SYSCALL_BASE+173)
202#define __NR_rt_sigaction (__NR_SYSCALL_BASE+174)
203#define __NR_rt_sigprocmask (__NR_SYSCALL_BASE+175)
204#define __NR_rt_sigpending (__NR_SYSCALL_BASE+176)
205#define __NR_rt_sigtimedwait (__NR_SYSCALL_BASE+177)
206#define __NR_rt_sigqueueinfo (__NR_SYSCALL_BASE+178)
207#define __NR_rt_sigsuspend (__NR_SYSCALL_BASE+179)
208#define __NR_pread64 (__NR_SYSCALL_BASE+180)
209#define __NR_pwrite64 (__NR_SYSCALL_BASE+181)
210#define __NR_chown (__NR_SYSCALL_BASE+182)
211#define __NR_getcwd (__NR_SYSCALL_BASE+183)
212#define __NR_capget (__NR_SYSCALL_BASE+184)
213#define __NR_capset (__NR_SYSCALL_BASE+185)
214#define __NR_sigaltstack (__NR_SYSCALL_BASE+186)
215#define __NR_sendfile (__NR_SYSCALL_BASE+187)
216 /* 188 reserved */
217 /* 189 reserved */
218#define __NR_vfork (__NR_SYSCALL_BASE+190)
219#define __NR_ugetrlimit (__NR_SYSCALL_BASE+191) /* SuS compliant getrlimit */
220#define __NR_mmap2 (__NR_SYSCALL_BASE+192)
221#define __NR_truncate64 (__NR_SYSCALL_BASE+193)
222#define __NR_ftruncate64 (__NR_SYSCALL_BASE+194)
223#define __NR_stat64 (__NR_SYSCALL_BASE+195)
224#define __NR_lstat64 (__NR_SYSCALL_BASE+196)
225#define __NR_fstat64 (__NR_SYSCALL_BASE+197)
226#define __NR_lchown32 (__NR_SYSCALL_BASE+198)
227#define __NR_getuid32 (__NR_SYSCALL_BASE+199)
228#define __NR_getgid32 (__NR_SYSCALL_BASE+200)
229#define __NR_geteuid32 (__NR_SYSCALL_BASE+201)
230#define __NR_getegid32 (__NR_SYSCALL_BASE+202)
231#define __NR_setreuid32 (__NR_SYSCALL_BASE+203)
232#define __NR_setregid32 (__NR_SYSCALL_BASE+204)
233#define __NR_getgroups32 (__NR_SYSCALL_BASE+205)
234#define __NR_setgroups32 (__NR_SYSCALL_BASE+206)
235#define __NR_fchown32 (__NR_SYSCALL_BASE+207)
236#define __NR_setresuid32 (__NR_SYSCALL_BASE+208)
237#define __NR_getresuid32 (__NR_SYSCALL_BASE+209)
238#define __NR_setresgid32 (__NR_SYSCALL_BASE+210)
239#define __NR_getresgid32 (__NR_SYSCALL_BASE+211)
240#define __NR_chown32 (__NR_SYSCALL_BASE+212)
241#define __NR_setuid32 (__NR_SYSCALL_BASE+213)
242#define __NR_setgid32 (__NR_SYSCALL_BASE+214)
243#define __NR_setfsuid32 (__NR_SYSCALL_BASE+215)
244#define __NR_setfsgid32 (__NR_SYSCALL_BASE+216)
245#define __NR_getdents64 (__NR_SYSCALL_BASE+217)
246#define __NR_pivot_root (__NR_SYSCALL_BASE+218)
247#define __NR_mincore (__NR_SYSCALL_BASE+219)
248#define __NR_madvise (__NR_SYSCALL_BASE+220)
249#define __NR_fcntl64 (__NR_SYSCALL_BASE+221)
250 /* 222 for tux */
251 /* 223 is unused */
252#define __NR_gettid (__NR_SYSCALL_BASE+224)
253#define __NR_readahead (__NR_SYSCALL_BASE+225)
254#define __NR_setxattr (__NR_SYSCALL_BASE+226)
255#define __NR_lsetxattr (__NR_SYSCALL_BASE+227)
256#define __NR_fsetxattr (__NR_SYSCALL_BASE+228)
257#define __NR_getxattr (__NR_SYSCALL_BASE+229)
258#define __NR_lgetxattr (__NR_SYSCALL_BASE+230)
259#define __NR_fgetxattr (__NR_SYSCALL_BASE+231)
260#define __NR_listxattr (__NR_SYSCALL_BASE+232)
261#define __NR_llistxattr (__NR_SYSCALL_BASE+233)
262#define __NR_flistxattr (__NR_SYSCALL_BASE+234)
263#define __NR_removexattr (__NR_SYSCALL_BASE+235)
264#define __NR_lremovexattr (__NR_SYSCALL_BASE+236)
265#define __NR_fremovexattr (__NR_SYSCALL_BASE+237)
266#define __NR_tkill (__NR_SYSCALL_BASE+238)
267#define __NR_sendfile64 (__NR_SYSCALL_BASE+239)
268#define __NR_futex (__NR_SYSCALL_BASE+240)
269#define __NR_sched_setaffinity (__NR_SYSCALL_BASE+241)
270#define __NR_sched_getaffinity (__NR_SYSCALL_BASE+242)
271#define __NR_io_setup (__NR_SYSCALL_BASE+243)
272#define __NR_io_destroy (__NR_SYSCALL_BASE+244)
273#define __NR_io_getevents (__NR_SYSCALL_BASE+245)
274#define __NR_io_submit (__NR_SYSCALL_BASE+246)
275#define __NR_io_cancel (__NR_SYSCALL_BASE+247)
276#define __NR_exit_group (__NR_SYSCALL_BASE+248)
277#define __NR_lookup_dcookie (__NR_SYSCALL_BASE+249)
278#define __NR_epoll_create (__NR_SYSCALL_BASE+250)
279#define __NR_epoll_ctl (__NR_SYSCALL_BASE+251)
280#define __NR_epoll_wait (__NR_SYSCALL_BASE+252)
281#define __NR_remap_file_pages (__NR_SYSCALL_BASE+253)
282 /* 254 for set_thread_area */
283 /* 255 for get_thread_area */
284#define __NR_set_tid_address (__NR_SYSCALL_BASE+256)
285#define __NR_timer_create (__NR_SYSCALL_BASE+257)
286#define __NR_timer_settime (__NR_SYSCALL_BASE+258)
287#define __NR_timer_gettime (__NR_SYSCALL_BASE+259)
288#define __NR_timer_getoverrun (__NR_SYSCALL_BASE+260)
289#define __NR_timer_delete (__NR_SYSCALL_BASE+261)
290#define __NR_clock_settime (__NR_SYSCALL_BASE+262)
291#define __NR_clock_gettime (__NR_SYSCALL_BASE+263)
292#define __NR_clock_getres (__NR_SYSCALL_BASE+264)
293#define __NR_clock_nanosleep (__NR_SYSCALL_BASE+265)
294#define __NR_statfs64 (__NR_SYSCALL_BASE+266)
295#define __NR_fstatfs64 (__NR_SYSCALL_BASE+267)
296#define __NR_tgkill (__NR_SYSCALL_BASE+268)
297#define __NR_utimes (__NR_SYSCALL_BASE+269)
298#define __NR_arm_fadvise64_64 (__NR_SYSCALL_BASE+270)
299#define __NR_pciconfig_iobase (__NR_SYSCALL_BASE+271)
300#define __NR_pciconfig_read (__NR_SYSCALL_BASE+272)
301#define __NR_pciconfig_write (__NR_SYSCALL_BASE+273)
302#define __NR_mq_open (__NR_SYSCALL_BASE+274)
303#define __NR_mq_unlink (__NR_SYSCALL_BASE+275)
304#define __NR_mq_timedsend (__NR_SYSCALL_BASE+276)
305#define __NR_mq_timedreceive (__NR_SYSCALL_BASE+277)
306#define __NR_mq_notify (__NR_SYSCALL_BASE+278)
307#define __NR_mq_getsetattr (__NR_SYSCALL_BASE+279)
308#define __NR_waitid (__NR_SYSCALL_BASE+280)
309#define __NR_socket (__NR_SYSCALL_BASE+281)
310#define __NR_bind (__NR_SYSCALL_BASE+282)
311#define __NR_connect (__NR_SYSCALL_BASE+283)
312#define __NR_listen (__NR_SYSCALL_BASE+284)
313#define __NR_accept (__NR_SYSCALL_BASE+285)
314#define __NR_getsockname (__NR_SYSCALL_BASE+286)
315#define __NR_getpeername (__NR_SYSCALL_BASE+287)
316#define __NR_socketpair (__NR_SYSCALL_BASE+288)
317#define __NR_send (__NR_SYSCALL_BASE+289)
318#define __NR_sendto (__NR_SYSCALL_BASE+290)
319#define __NR_recv (__NR_SYSCALL_BASE+291)
320#define __NR_recvfrom (__NR_SYSCALL_BASE+292)
321#define __NR_shutdown (__NR_SYSCALL_BASE+293)
322#define __NR_setsockopt (__NR_SYSCALL_BASE+294)
323#define __NR_getsockopt (__NR_SYSCALL_BASE+295)
324#define __NR_sendmsg (__NR_SYSCALL_BASE+296)
325#define __NR_recvmsg (__NR_SYSCALL_BASE+297)
326#define __NR_semop (__NR_SYSCALL_BASE+298)
327#define __NR_semget (__NR_SYSCALL_BASE+299)
328#define __NR_semctl (__NR_SYSCALL_BASE+300)
329#define __NR_msgsnd (__NR_SYSCALL_BASE+301)
330#define __NR_msgrcv (__NR_SYSCALL_BASE+302)
331#define __NR_msgget (__NR_SYSCALL_BASE+303)
332#define __NR_msgctl (__NR_SYSCALL_BASE+304)
333#define __NR_shmat (__NR_SYSCALL_BASE+305)
334#define __NR_shmdt (__NR_SYSCALL_BASE+306)
335#define __NR_shmget (__NR_SYSCALL_BASE+307)
336#define __NR_shmctl (__NR_SYSCALL_BASE+308)
337#define __NR_add_key (__NR_SYSCALL_BASE+309)
338#define __NR_request_key (__NR_SYSCALL_BASE+310)
339#define __NR_keyctl (__NR_SYSCALL_BASE+311)
340#define __NR_semtimedop (__NR_SYSCALL_BASE+312)
341#define __NR_vserver (__NR_SYSCALL_BASE+313)
342#define __NR_ioprio_set (__NR_SYSCALL_BASE+314)
343#define __NR_ioprio_get (__NR_SYSCALL_BASE+315)
344#define __NR_inotify_init (__NR_SYSCALL_BASE+316)
345#define __NR_inotify_add_watch (__NR_SYSCALL_BASE+317)
346#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE+318)
347#define __NR_mbind (__NR_SYSCALL_BASE+319)
348#define __NR_get_mempolicy (__NR_SYSCALL_BASE+320)
349#define __NR_set_mempolicy (__NR_SYSCALL_BASE+321)
350#define __NR_openat (__NR_SYSCALL_BASE+322)
351#define __NR_mkdirat (__NR_SYSCALL_BASE+323)
352#define __NR_mknodat (__NR_SYSCALL_BASE+324)
353#define __NR_fchownat (__NR_SYSCALL_BASE+325)
354#define __NR_futimesat (__NR_SYSCALL_BASE+326)
355#define __NR_fstatat64 (__NR_SYSCALL_BASE+327)
356#define __NR_unlinkat (__NR_SYSCALL_BASE+328)
357#define __NR_renameat (__NR_SYSCALL_BASE+329)
358#define __NR_linkat (__NR_SYSCALL_BASE+330)
359#define __NR_symlinkat (__NR_SYSCALL_BASE+331)
360#define __NR_readlinkat (__NR_SYSCALL_BASE+332)
361#define __NR_fchmodat (__NR_SYSCALL_BASE+333)
362#define __NR_faccessat (__NR_SYSCALL_BASE+334)
363#define __NR_pselect6 (__NR_SYSCALL_BASE+335)
364#define __NR_ppoll (__NR_SYSCALL_BASE+336)
365#define __NR_unshare (__NR_SYSCALL_BASE+337)
366#define __NR_set_robust_list (__NR_SYSCALL_BASE+338)
367#define __NR_get_robust_list (__NR_SYSCALL_BASE+339)
368#define __NR_splice (__NR_SYSCALL_BASE+340)
369#define __NR_arm_sync_file_range (__NR_SYSCALL_BASE+341)
370#define __NR_sync_file_range2 __NR_arm_sync_file_range
371#define __NR_tee (__NR_SYSCALL_BASE+342)
372#define __NR_vmsplice (__NR_SYSCALL_BASE+343)
373#define __NR_move_pages (__NR_SYSCALL_BASE+344)
374#define __NR_getcpu (__NR_SYSCALL_BASE+345)
375#define __NR_epoll_pwait (__NR_SYSCALL_BASE+346)
376#define __NR_kexec_load (__NR_SYSCALL_BASE+347)
377#define __NR_utimensat (__NR_SYSCALL_BASE+348)
378#define __NR_signalfd (__NR_SYSCALL_BASE+349)
379#define __NR_timerfd_create (__NR_SYSCALL_BASE+350)
380#define __NR_eventfd (__NR_SYSCALL_BASE+351)
381#define __NR_fallocate (__NR_SYSCALL_BASE+352)
382#define __NR_timerfd_settime (__NR_SYSCALL_BASE+353)
383#define __NR_timerfd_gettime (__NR_SYSCALL_BASE+354)
384#define __NR_signalfd4 (__NR_SYSCALL_BASE+355)
385#define __NR_eventfd2 (__NR_SYSCALL_BASE+356)
386#define __NR_epoll_create1 (__NR_SYSCALL_BASE+357)
387#define __NR_dup3 (__NR_SYSCALL_BASE+358)
388#define __NR_pipe2 (__NR_SYSCALL_BASE+359)
389#define __NR_inotify_init1 (__NR_SYSCALL_BASE+360)
390#define __NR_preadv (__NR_SYSCALL_BASE+361)
391#define __NR_pwritev (__NR_SYSCALL_BASE+362)
392#define __NR_rt_tgsigqueueinfo (__NR_SYSCALL_BASE+363)
393#define __NR_perf_event_open (__NR_SYSCALL_BASE+364)
394#define __NR_recvmmsg (__NR_SYSCALL_BASE+365)
395#define __NR_accept4 (__NR_SYSCALL_BASE+366)
396#define __NR_fanotify_init (__NR_SYSCALL_BASE+367)
397#define __NR_fanotify_mark (__NR_SYSCALL_BASE+368)
398#define __NR_prlimit64 (__NR_SYSCALL_BASE+369)
399#define __NR_name_to_handle_at (__NR_SYSCALL_BASE+370)
400#define __NR_open_by_handle_at (__NR_SYSCALL_BASE+371)
401#define __NR_clock_adjtime (__NR_SYSCALL_BASE+372)
402#define __NR_syncfs (__NR_SYSCALL_BASE+373)
403#define __NR_sendmmsg (__NR_SYSCALL_BASE+374)
404#define __NR_setns (__NR_SYSCALL_BASE+375)
405#define __NR_process_vm_readv (__NR_SYSCALL_BASE+376)
406#define __NR_process_vm_writev (__NR_SYSCALL_BASE+377)
407 /* 378 for kcmp */
408
409/*
410 * This may need to be greater than __NR_last_syscall+1 in order to
411 * account for the padding in the syscall table
412 */
413#ifdef __KERNEL__
414#define __NR_syscalls (380) 18#define __NR_syscalls (380)
415#endif /* __KERNEL__ */
416
417/*
418 * The following SWIs are ARM private.
419 */
420#define __ARM_NR_BASE (__NR_SYSCALL_BASE+0x0f0000)
421#define __ARM_NR_breakpoint (__ARM_NR_BASE+1)
422#define __ARM_NR_cacheflush (__ARM_NR_BASE+2)
423#define __ARM_NR_usr26 (__ARM_NR_BASE+3)
424#define __ARM_NR_usr32 (__ARM_NR_BASE+4)
425#define __ARM_NR_set_tls (__ARM_NR_BASE+5)
426
427/*
428 * *NOTE*: This is a ghost syscall private to the kernel. Only the
429 * __kuser_cmpxchg code in entry-armv.S should be aware of its
430 * existence. Don't ever use this from user code.
431 */
432#ifdef __KERNEL__
433#define __ARM_NR_cmpxchg (__ARM_NR_BASE+0x00fff0) 19#define __ARM_NR_cmpxchg (__ARM_NR_BASE+0x00fff0)
434#endif
435
436/*
437 * The following syscalls are obsolete and no longer available for EABI.
438 */
439#if !defined(__KERNEL__)
440#if defined(__ARM_EABI__)
441#undef __NR_time
442#undef __NR_umount
443#undef __NR_stime
444#undef __NR_alarm
445#undef __NR_utime
446#undef __NR_getrlimit
447#undef __NR_select
448#undef __NR_readdir
449#undef __NR_mmap
450#undef __NR_socketcall
451#undef __NR_syscall
452#undef __NR_ipc
453#endif
454#endif
455
456#ifdef __KERNEL__
457 20
458#define __ARCH_WANT_STAT64 21#define __ARCH_WANT_STAT64
459#define __ARCH_WANT_SYS_GETHOSTNAME 22#define __ARCH_WANT_SYS_GETHOSTNAME
@@ -495,5 +58,4 @@
495#define __IGNORE_migrate_pages 58#define __IGNORE_migrate_pages
496#define __IGNORE_kcmp 59#define __IGNORE_kcmp
497 60
498#endif /* __KERNEL__ */
499#endif /* __ASM_ARM_UNISTD_H */ 61#endif /* __ASM_ARM_UNISTD_H */
diff --git a/arch/arm/include/uapi/asm/Kbuild b/arch/arm/include/uapi/asm/Kbuild
index baebb3da1d44..47bcb2d254af 100644
--- a/arch/arm/include/uapi/asm/Kbuild
+++ b/arch/arm/include/uapi/asm/Kbuild
@@ -1,3 +1,19 @@
1# UAPI Header export list 1# UAPI Header export list
2include include/uapi/asm-generic/Kbuild.asm 2include include/uapi/asm-generic/Kbuild.asm
3 3
4header-y += a.out.h
5header-y += byteorder.h
6header-y += fcntl.h
7header-y += hwcap.h
8header-y += ioctls.h
9header-y += kvm_para.h
10header-y += mman.h
11header-y += posix_types.h
12header-y += ptrace.h
13header-y += setup.h
14header-y += sigcontext.h
15header-y += signal.h
16header-y += stat.h
17header-y += statfs.h
18header-y += swab.h
19header-y += unistd.h
diff --git a/arch/arm/include/asm/a.out.h b/arch/arm/include/uapi/asm/a.out.h
index 083894b2e3bc..083894b2e3bc 100644
--- a/arch/arm/include/asm/a.out.h
+++ b/arch/arm/include/uapi/asm/a.out.h
diff --git a/arch/arm/include/asm/byteorder.h b/arch/arm/include/uapi/asm/byteorder.h
index 77379748b171..77379748b171 100644
--- a/arch/arm/include/asm/byteorder.h
+++ b/arch/arm/include/uapi/asm/byteorder.h
diff --git a/arch/arm/include/asm/fcntl.h b/arch/arm/include/uapi/asm/fcntl.h
index a80b6607b2ef..a80b6607b2ef 100644
--- a/arch/arm/include/asm/fcntl.h
+++ b/arch/arm/include/uapi/asm/fcntl.h
diff --git a/arch/arm/include/uapi/asm/hwcap.h b/arch/arm/include/uapi/asm/hwcap.h
new file mode 100644
index 000000000000..f254f6503cce
--- /dev/null
+++ b/arch/arm/include/uapi/asm/hwcap.h
@@ -0,0 +1,29 @@
1#ifndef _UAPI__ASMARM_HWCAP_H
2#define _UAPI__ASMARM_HWCAP_H
3
4/*
5 * HWCAP flags - for elf_hwcap (in kernel) and AT_HWCAP
6 */
7#define HWCAP_SWP (1 << 0)
8#define HWCAP_HALF (1 << 1)
9#define HWCAP_THUMB (1 << 2)
10#define HWCAP_26BIT (1 << 3) /* Play it safe */
11#define HWCAP_FAST_MULT (1 << 4)
12#define HWCAP_FPA (1 << 5)
13#define HWCAP_VFP (1 << 6)
14#define HWCAP_EDSP (1 << 7)
15#define HWCAP_JAVA (1 << 8)
16#define HWCAP_IWMMXT (1 << 9)
17#define HWCAP_CRUNCH (1 << 10)
18#define HWCAP_THUMBEE (1 << 11)
19#define HWCAP_NEON (1 << 12)
20#define HWCAP_VFPv3 (1 << 13)
21#define HWCAP_VFPv3D16 (1 << 14)
22#define HWCAP_TLS (1 << 15)
23#define HWCAP_VFPv4 (1 << 16)
24#define HWCAP_IDIVA (1 << 17)
25#define HWCAP_IDIVT (1 << 18)
26#define HWCAP_IDIV (HWCAP_IDIVA | HWCAP_IDIVT)
27
28
29#endif /* _UAPI__ASMARM_HWCAP_H */
diff --git a/arch/arm/include/asm/ioctls.h b/arch/arm/include/uapi/asm/ioctls.h
index 9c9629816128..9c9629816128 100644
--- a/arch/arm/include/asm/ioctls.h
+++ b/arch/arm/include/uapi/asm/ioctls.h
diff --git a/arch/arm/include/asm/kvm_para.h b/arch/arm/include/uapi/asm/kvm_para.h
index 14fab8f0b957..14fab8f0b957 100644
--- a/arch/arm/include/asm/kvm_para.h
+++ b/arch/arm/include/uapi/asm/kvm_para.h
diff --git a/arch/arm/include/asm/mman.h b/arch/arm/include/uapi/asm/mman.h
index 41f99c573b93..41f99c573b93 100644
--- a/arch/arm/include/asm/mman.h
+++ b/arch/arm/include/uapi/asm/mman.h
diff --git a/arch/arm/include/asm/posix_types.h b/arch/arm/include/uapi/asm/posix_types.h
index d2de9cbbcd9b..d2de9cbbcd9b 100644
--- a/arch/arm/include/asm/posix_types.h
+++ b/arch/arm/include/uapi/asm/posix_types.h
diff --git a/arch/arm/include/uapi/asm/ptrace.h b/arch/arm/include/uapi/asm/ptrace.h
new file mode 100644
index 000000000000..96ee0929790f
--- /dev/null
+++ b/arch/arm/include/uapi/asm/ptrace.h
@@ -0,0 +1,138 @@
1/*
2 * arch/arm/include/asm/ptrace.h
3 *
4 * Copyright (C) 1996-2003 Russell King
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10#ifndef _UAPI__ASM_ARM_PTRACE_H
11#define _UAPI__ASM_ARM_PTRACE_H
12
13#include <asm/hwcap.h>
14
15#define PTRACE_GETREGS 12
16#define PTRACE_SETREGS 13
17#define PTRACE_GETFPREGS 14
18#define PTRACE_SETFPREGS 15
19/* PTRACE_ATTACH is 16 */
20/* PTRACE_DETACH is 17 */
21#define PTRACE_GETWMMXREGS 18
22#define PTRACE_SETWMMXREGS 19
23/* 20 is unused */
24#define PTRACE_OLDSETOPTIONS 21
25#define PTRACE_GET_THREAD_AREA 22
26#define PTRACE_SET_SYSCALL 23
27/* PTRACE_SYSCALL is 24 */
28#define PTRACE_GETCRUNCHREGS 25
29#define PTRACE_SETCRUNCHREGS 26
30#define PTRACE_GETVFPREGS 27
31#define PTRACE_SETVFPREGS 28
32#define PTRACE_GETHBPREGS 29
33#define PTRACE_SETHBPREGS 30
34
35/*
36 * PSR bits
37 */
38#define USR26_MODE 0x00000000
39#define FIQ26_MODE 0x00000001
40#define IRQ26_MODE 0x00000002
41#define SVC26_MODE 0x00000003
42#define USR_MODE 0x00000010
43#define FIQ_MODE 0x00000011
44#define IRQ_MODE 0x00000012
45#define SVC_MODE 0x00000013
46#define ABT_MODE 0x00000017
47#define HYP_MODE 0x0000001a
48#define UND_MODE 0x0000001b
49#define SYSTEM_MODE 0x0000001f
50#define MODE32_BIT 0x00000010
51#define MODE_MASK 0x0000001f
52#define PSR_T_BIT 0x00000020
53#define PSR_F_BIT 0x00000040
54#define PSR_I_BIT 0x00000080
55#define PSR_A_BIT 0x00000100
56#define PSR_E_BIT 0x00000200
57#define PSR_J_BIT 0x01000000
58#define PSR_Q_BIT 0x08000000
59#define PSR_V_BIT 0x10000000
60#define PSR_C_BIT 0x20000000
61#define PSR_Z_BIT 0x40000000
62#define PSR_N_BIT 0x80000000
63
64/*
65 * Groups of PSR bits
66 */
67#define PSR_f 0xff000000 /* Flags */
68#define PSR_s 0x00ff0000 /* Status */
69#define PSR_x 0x0000ff00 /* Extension */
70#define PSR_c 0x000000ff /* Control */
71
72/*
73 * ARMv7 groups of PSR bits
74 */
75#define APSR_MASK 0xf80f0000 /* N, Z, C, V, Q and GE flags */
76#define PSR_ISET_MASK 0x01000010 /* ISA state (J, T) mask */
77#define PSR_IT_MASK 0x0600fc00 /* If-Then execution state mask */
78#define PSR_ENDIAN_MASK 0x00000200 /* Endianness state mask */
79
80/*
81 * Default endianness state
82 */
83#ifdef CONFIG_CPU_ENDIAN_BE8
84#define PSR_ENDSTATE PSR_E_BIT
85#else
86#define PSR_ENDSTATE 0
87#endif
88
89/*
90 * These are 'magic' values for PTRACE_PEEKUSR that return info about where a
91 * process is located in memory.
92 */
93#define PT_TEXT_ADDR 0x10000
94#define PT_DATA_ADDR 0x10004
95#define PT_TEXT_END_ADDR 0x10008
96
97#ifndef __ASSEMBLY__
98
99/*
100 * This struct defines the way the registers are stored on the
101 * stack during a system call. Note that sizeof(struct pt_regs)
102 * has to be a multiple of 8.
103 */
104#ifndef __KERNEL__
105struct pt_regs {
106 long uregs[18];
107};
108#endif /* __KERNEL__ */
109
110#define ARM_cpsr uregs[16]
111#define ARM_pc uregs[15]
112#define ARM_lr uregs[14]
113#define ARM_sp uregs[13]
114#define ARM_ip uregs[12]
115#define ARM_fp uregs[11]
116#define ARM_r10 uregs[10]
117#define ARM_r9 uregs[9]
118#define ARM_r8 uregs[8]
119#define ARM_r7 uregs[7]
120#define ARM_r6 uregs[6]
121#define ARM_r5 uregs[5]
122#define ARM_r4 uregs[4]
123#define ARM_r3 uregs[3]
124#define ARM_r2 uregs[2]
125#define ARM_r1 uregs[1]
126#define ARM_r0 uregs[0]
127#define ARM_ORIG_r0 uregs[17]
128
129/*
130 * The size of the user-visible VFP state as seen by PTRACE_GET/SETVFPREGS
131 * and core dumps.
132 */
133#define ARM_VFPREGS_SIZE ( 32 * 8 /*fpregs*/ + 4 /*fpscr*/ )
134
135
136#endif /* __ASSEMBLY__ */
137
138#endif /* _UAPI__ASM_ARM_PTRACE_H */
diff --git a/arch/arm/include/uapi/asm/setup.h b/arch/arm/include/uapi/asm/setup.h
new file mode 100644
index 000000000000..979ff4016404
--- /dev/null
+++ b/arch/arm/include/uapi/asm/setup.h
@@ -0,0 +1,187 @@
1/*
2 * linux/include/asm/setup.h
3 *
4 * Copyright (C) 1997-1999 Russell King
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * Structure passed to kernel to tell it about the
11 * hardware it's running on. See Documentation/arm/Setup
12 * for more info.
13 */
14#ifndef _UAPI__ASMARM_SETUP_H
15#define _UAPI__ASMARM_SETUP_H
16
17#include <linux/types.h>
18
19#define COMMAND_LINE_SIZE 1024
20
21/* The list ends with an ATAG_NONE node. */
22#define ATAG_NONE 0x00000000
23
24struct tag_header {
25 __u32 size;
26 __u32 tag;
27};
28
29/* The list must start with an ATAG_CORE node */
30#define ATAG_CORE 0x54410001
31
32struct tag_core {
33 __u32 flags; /* bit 0 = read-only */
34 __u32 pagesize;
35 __u32 rootdev;
36};
37
38/* it is allowed to have multiple ATAG_MEM nodes */
39#define ATAG_MEM 0x54410002
40
41struct tag_mem32 {
42 __u32 size;
43 __u32 start; /* physical start address */
44};
45
46/* VGA text type displays */
47#define ATAG_VIDEOTEXT 0x54410003
48
49struct tag_videotext {
50 __u8 x;
51 __u8 y;
52 __u16 video_page;
53 __u8 video_mode;
54 __u8 video_cols;
55 __u16 video_ega_bx;
56 __u8 video_lines;
57 __u8 video_isvga;
58 __u16 video_points;
59};
60
61/* describes how the ramdisk will be used in kernel */
62#define ATAG_RAMDISK 0x54410004
63
64struct tag_ramdisk {
65 __u32 flags; /* bit 0 = load, bit 1 = prompt */
66 __u32 size; /* decompressed ramdisk size in _kilo_ bytes */
67 __u32 start; /* starting block of floppy-based RAM disk image */
68};
69
70/* describes where the compressed ramdisk image lives (virtual address) */
71/*
72 * this one accidentally used virtual addresses - as such,
73 * it's deprecated.
74 */
75#define ATAG_INITRD 0x54410005
76
77/* describes where the compressed ramdisk image lives (physical address) */
78#define ATAG_INITRD2 0x54420005
79
80struct tag_initrd {
81 __u32 start; /* physical start address */
82 __u32 size; /* size of compressed ramdisk image in bytes */
83};
84
85/* board serial number. "64 bits should be enough for everybody" */
86#define ATAG_SERIAL 0x54410006
87
88struct tag_serialnr {
89 __u32 low;
90 __u32 high;
91};
92
93/* board revision */
94#define ATAG_REVISION 0x54410007
95
96struct tag_revision {
97 __u32 rev;
98};
99
100/* initial values for vesafb-type framebuffers. see struct screen_info
101 * in include/linux/tty.h
102 */
103#define ATAG_VIDEOLFB 0x54410008
104
105struct tag_videolfb {
106 __u16 lfb_width;
107 __u16 lfb_height;
108 __u16 lfb_depth;
109 __u16 lfb_linelength;
110 __u32 lfb_base;
111 __u32 lfb_size;
112 __u8 red_size;
113 __u8 red_pos;
114 __u8 green_size;
115 __u8 green_pos;
116 __u8 blue_size;
117 __u8 blue_pos;
118 __u8 rsvd_size;
119 __u8 rsvd_pos;
120};
121
122/* command line: \0 terminated string */
123#define ATAG_CMDLINE 0x54410009
124
125struct tag_cmdline {
126 char cmdline[1]; /* this is the minimum size */
127};
128
129/* acorn RiscPC specific information */
130#define ATAG_ACORN 0x41000101
131
132struct tag_acorn {
133 __u32 memc_control_reg;
134 __u32 vram_pages;
135 __u8 sounddefault;
136 __u8 adfsdrives;
137};
138
139/* footbridge memory clock, see arch/arm/mach-footbridge/arch.c */
140#define ATAG_MEMCLK 0x41000402
141
142struct tag_memclk {
143 __u32 fmemclk;
144};
145
146struct tag {
147 struct tag_header hdr;
148 union {
149 struct tag_core core;
150 struct tag_mem32 mem;
151 struct tag_videotext videotext;
152 struct tag_ramdisk ramdisk;
153 struct tag_initrd initrd;
154 struct tag_serialnr serialnr;
155 struct tag_revision revision;
156 struct tag_videolfb videolfb;
157 struct tag_cmdline cmdline;
158
159 /*
160 * Acorn specific
161 */
162 struct tag_acorn acorn;
163
164 /*
165 * DC21285 specific
166 */
167 struct tag_memclk memclk;
168 } u;
169};
170
171struct tagtable {
172 __u32 tag;
173 int (*parse)(const struct tag *);
174};
175
176#define tag_member_present(tag,member) \
177 ((unsigned long)(&((struct tag *)0L)->member + 1) \
178 <= (tag)->hdr.size * 4)
179
180#define tag_next(t) ((struct tag *)((__u32 *)(t) + (t)->hdr.size))
181#define tag_size(type) ((sizeof(struct tag_header) + sizeof(struct type)) >> 2)
182
183#define for_each_tag(t,base) \
184 for (t = base; t->hdr.size; t = tag_next(t))
185
186
187#endif /* _UAPI__ASMARM_SETUP_H */
diff --git a/arch/arm/include/asm/sigcontext.h b/arch/arm/include/uapi/asm/sigcontext.h
index fc0b80b6a6fc..fc0b80b6a6fc 100644
--- a/arch/arm/include/asm/sigcontext.h
+++ b/arch/arm/include/uapi/asm/sigcontext.h
diff --git a/arch/arm/include/uapi/asm/signal.h b/arch/arm/include/uapi/asm/signal.h
new file mode 100644
index 000000000000..921c57fdc52e
--- /dev/null
+++ b/arch/arm/include/uapi/asm/signal.h
@@ -0,0 +1,127 @@
1#ifndef _UAPI_ASMARM_SIGNAL_H
2#define _UAPI_ASMARM_SIGNAL_H
3
4#include <linux/types.h>
5
6/* Avoid too many header ordering problems. */
7struct siginfo;
8
9#ifndef __KERNEL__
10/* Here we must cater to libcs that poke about in kernel headers. */
11
12#define NSIG 32
13typedef unsigned long sigset_t;
14
15#endif /* __KERNEL__ */
16
17#define SIGHUP 1
18#define SIGINT 2
19#define SIGQUIT 3
20#define SIGILL 4
21#define SIGTRAP 5
22#define SIGABRT 6
23#define SIGIOT 6
24#define SIGBUS 7
25#define SIGFPE 8
26#define SIGKILL 9
27#define SIGUSR1 10
28#define SIGSEGV 11
29#define SIGUSR2 12
30#define SIGPIPE 13
31#define SIGALRM 14
32#define SIGTERM 15
33#define SIGSTKFLT 16
34#define SIGCHLD 17
35#define SIGCONT 18
36#define SIGSTOP 19
37#define SIGTSTP 20
38#define SIGTTIN 21
39#define SIGTTOU 22
40#define SIGURG 23
41#define SIGXCPU 24
42#define SIGXFSZ 25
43#define SIGVTALRM 26
44#define SIGPROF 27
45#define SIGWINCH 28
46#define SIGIO 29
47#define SIGPOLL SIGIO
48/*
49#define SIGLOST 29
50*/
51#define SIGPWR 30
52#define SIGSYS 31
53#define SIGUNUSED 31
54
55/* These should not be considered constants from userland. */
56#define SIGRTMIN 32
57#define SIGRTMAX _NSIG
58
59#define SIGSWI 32
60
61/*
62 * SA_FLAGS values:
63 *
64 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
65 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
66 * SA_SIGINFO deliver the signal with SIGINFO structs
67 * SA_THIRTYTWO delivers the signal in 32-bit mode, even if the task
68 * is running in 26-bit.
69 * SA_ONSTACK allows alternate signal stacks (see sigaltstack(2)).
70 * SA_RESTART flag to get restarting signals (which were the default long ago)
71 * SA_NODEFER prevents the current signal from being masked in the handler.
72 * SA_RESETHAND clears the handler when the signal is delivered.
73 *
74 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
75 * Unix names RESETHAND and NODEFER respectively.
76 */
77#define SA_NOCLDSTOP 0x00000001
78#define SA_NOCLDWAIT 0x00000002
79#define SA_SIGINFO 0x00000004
80#define SA_THIRTYTWO 0x02000000
81#define SA_RESTORER 0x04000000
82#define SA_ONSTACK 0x08000000
83#define SA_RESTART 0x10000000
84#define SA_NODEFER 0x40000000
85#define SA_RESETHAND 0x80000000
86
87#define SA_NOMASK SA_NODEFER
88#define SA_ONESHOT SA_RESETHAND
89
90
91/*
92 * sigaltstack controls
93 */
94#define SS_ONSTACK 1
95#define SS_DISABLE 2
96
97#define MINSIGSTKSZ 2048
98#define SIGSTKSZ 8192
99
100#include <asm-generic/signal-defs.h>
101
102#ifndef __KERNEL__
103/* Here we must cater to libcs that poke about in kernel headers. */
104
105struct sigaction {
106 union {
107 __sighandler_t _sa_handler;
108 void (*_sa_sigaction)(int, struct siginfo *, void *);
109 } _u;
110 sigset_t sa_mask;
111 unsigned long sa_flags;
112 void (*sa_restorer)(void);
113};
114
115#define sa_handler _u._sa_handler
116#define sa_sigaction _u._sa_sigaction
117
118#endif /* __KERNEL__ */
119
120typedef struct sigaltstack {
121 void __user *ss_sp;
122 int ss_flags;
123 size_t ss_size;
124} stack_t;
125
126
127#endif /* _UAPI_ASMARM_SIGNAL_H */
diff --git a/arch/arm/include/asm/stat.h b/arch/arm/include/uapi/asm/stat.h
index 42c0c13999d5..42c0c13999d5 100644
--- a/arch/arm/include/asm/stat.h
+++ b/arch/arm/include/uapi/asm/stat.h
diff --git a/arch/arm/include/asm/statfs.h b/arch/arm/include/uapi/asm/statfs.h
index 079447c05ba7..079447c05ba7 100644
--- a/arch/arm/include/asm/statfs.h
+++ b/arch/arm/include/uapi/asm/statfs.h
diff --git a/arch/arm/include/uapi/asm/swab.h b/arch/arm/include/uapi/asm/swab.h
new file mode 100644
index 000000000000..6fcb32a5c453
--- /dev/null
+++ b/arch/arm/include/uapi/asm/swab.h
@@ -0,0 +1,53 @@
1/*
2 * arch/arm/include/asm/byteorder.h
3 *
4 * ARM Endian-ness. In little endian mode, the data bus is connected such
5 * that byte accesses appear as:
6 * 0 = d0...d7, 1 = d8...d15, 2 = d16...d23, 3 = d24...d31
7 * and word accesses (data or instruction) appear as:
8 * d0...d31
9 *
10 * When in big endian mode, byte accesses appear as:
11 * 0 = d24...d31, 1 = d16...d23, 2 = d8...d15, 3 = d0...d7
12 * and word accesses (data or instruction) appear as:
13 * d0...d31
14 */
15#ifndef _UAPI__ASM_ARM_SWAB_H
16#define _UAPI__ASM_ARM_SWAB_H
17
18#include <linux/compiler.h>
19#include <linux/types.h>
20
21#if !defined(__STRICT_ANSI__) || defined(__KERNEL__)
22# define __SWAB_64_THRU_32__
23#endif
24
25
26#if !defined(__KERNEL__) || __LINUX_ARM_ARCH__ < 6
27static inline __attribute_const__ __u32 __arch_swab32(__u32 x)
28{
29 __u32 t;
30
31#ifndef __thumb__
32 if (!__builtin_constant_p(x)) {
33 /*
34 * The compiler needs a bit of a hint here to always do the
35 * right thing and not screw it up to different degrees
36 * depending on the gcc version.
37 */
38 asm ("eor\t%0, %1, %1, ror #16" : "=r" (t) : "r" (x));
39 } else
40#endif
41 t = x ^ ((x << 16) | (x >> 16)); /* eor r1,r0,r0,ror #16 */
42
43 x = (x << 24) | (x >> 8); /* mov r0,r0,ror #8 */
44 t &= ~0x00FF0000; /* bic r1,r1,#0x00FF0000 */
45 x ^= (t >> 8); /* eor r0,r0,r1,lsr #8 */
46
47 return x;
48}
49#define __arch_swab32 __arch_swab32
50
51#endif
52
53#endif /* _UAPI__ASM_ARM_SWAB_H */
diff --git a/arch/arm/include/uapi/asm/unistd.h b/arch/arm/include/uapi/asm/unistd.h
new file mode 100644
index 000000000000..ac03bdb4ae44
--- /dev/null
+++ b/arch/arm/include/uapi/asm/unistd.h
@@ -0,0 +1,450 @@
1/*
2 * arch/arm/include/asm/unistd.h
3 *
4 * Copyright (C) 2001-2005 Russell King
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * Please forward _all_ changes to this file to rmk@arm.linux.org.uk,
11 * no matter what the change is. Thanks!
12 */
13#ifndef _UAPI__ASM_ARM_UNISTD_H
14#define _UAPI__ASM_ARM_UNISTD_H
15
16#define __NR_OABI_SYSCALL_BASE 0x900000
17
18#if defined(__thumb__) || defined(__ARM_EABI__)
19#define __NR_SYSCALL_BASE 0
20#else
21#define __NR_SYSCALL_BASE __NR_OABI_SYSCALL_BASE
22#endif
23
24/*
25 * This file contains the system call numbers.
26 */
27
28#define __NR_restart_syscall (__NR_SYSCALL_BASE+ 0)
29#define __NR_exit (__NR_SYSCALL_BASE+ 1)
30#define __NR_fork (__NR_SYSCALL_BASE+ 2)
31#define __NR_read (__NR_SYSCALL_BASE+ 3)
32#define __NR_write (__NR_SYSCALL_BASE+ 4)
33#define __NR_open (__NR_SYSCALL_BASE+ 5)
34#define __NR_close (__NR_SYSCALL_BASE+ 6)
35 /* 7 was sys_waitpid */
36#define __NR_creat (__NR_SYSCALL_BASE+ 8)
37#define __NR_link (__NR_SYSCALL_BASE+ 9)
38#define __NR_unlink (__NR_SYSCALL_BASE+ 10)
39#define __NR_execve (__NR_SYSCALL_BASE+ 11)
40#define __NR_chdir (__NR_SYSCALL_BASE+ 12)
41#define __NR_time (__NR_SYSCALL_BASE+ 13)
42#define __NR_mknod (__NR_SYSCALL_BASE+ 14)
43#define __NR_chmod (__NR_SYSCALL_BASE+ 15)
44#define __NR_lchown (__NR_SYSCALL_BASE+ 16)
45 /* 17 was sys_break */
46 /* 18 was sys_stat */
47#define __NR_lseek (__NR_SYSCALL_BASE+ 19)
48#define __NR_getpid (__NR_SYSCALL_BASE+ 20)
49#define __NR_mount (__NR_SYSCALL_BASE+ 21)
50#define __NR_umount (__NR_SYSCALL_BASE+ 22)
51#define __NR_setuid (__NR_SYSCALL_BASE+ 23)
52#define __NR_getuid (__NR_SYSCALL_BASE+ 24)
53#define __NR_stime (__NR_SYSCALL_BASE+ 25)
54#define __NR_ptrace (__NR_SYSCALL_BASE+ 26)
55#define __NR_alarm (__NR_SYSCALL_BASE+ 27)
56 /* 28 was sys_fstat */
57#define __NR_pause (__NR_SYSCALL_BASE+ 29)
58#define __NR_utime (__NR_SYSCALL_BASE+ 30)
59 /* 31 was sys_stty */
60 /* 32 was sys_gtty */
61#define __NR_access (__NR_SYSCALL_BASE+ 33)
62#define __NR_nice (__NR_SYSCALL_BASE+ 34)
63 /* 35 was sys_ftime */
64#define __NR_sync (__NR_SYSCALL_BASE+ 36)
65#define __NR_kill (__NR_SYSCALL_BASE+ 37)
66#define __NR_rename (__NR_SYSCALL_BASE+ 38)
67#define __NR_mkdir (__NR_SYSCALL_BASE+ 39)
68#define __NR_rmdir (__NR_SYSCALL_BASE+ 40)
69#define __NR_dup (__NR_SYSCALL_BASE+ 41)
70#define __NR_pipe (__NR_SYSCALL_BASE+ 42)
71#define __NR_times (__NR_SYSCALL_BASE+ 43)
72 /* 44 was sys_prof */
73#define __NR_brk (__NR_SYSCALL_BASE+ 45)
74#define __NR_setgid (__NR_SYSCALL_BASE+ 46)
75#define __NR_getgid (__NR_SYSCALL_BASE+ 47)
76 /* 48 was sys_signal */
77#define __NR_geteuid (__NR_SYSCALL_BASE+ 49)
78#define __NR_getegid (__NR_SYSCALL_BASE+ 50)
79#define __NR_acct (__NR_SYSCALL_BASE+ 51)
80#define __NR_umount2 (__NR_SYSCALL_BASE+ 52)
81 /* 53 was sys_lock */
82#define __NR_ioctl (__NR_SYSCALL_BASE+ 54)
83#define __NR_fcntl (__NR_SYSCALL_BASE+ 55)
84 /* 56 was sys_mpx */
85#define __NR_setpgid (__NR_SYSCALL_BASE+ 57)
86 /* 58 was sys_ulimit */
87 /* 59 was sys_olduname */
88#define __NR_umask (__NR_SYSCALL_BASE+ 60)
89#define __NR_chroot (__NR_SYSCALL_BASE+ 61)
90#define __NR_ustat (__NR_SYSCALL_BASE+ 62)
91#define __NR_dup2 (__NR_SYSCALL_BASE+ 63)
92#define __NR_getppid (__NR_SYSCALL_BASE+ 64)
93#define __NR_getpgrp (__NR_SYSCALL_BASE+ 65)
94#define __NR_setsid (__NR_SYSCALL_BASE+ 66)
95#define __NR_sigaction (__NR_SYSCALL_BASE+ 67)
96 /* 68 was sys_sgetmask */
97 /* 69 was sys_ssetmask */
98#define __NR_setreuid (__NR_SYSCALL_BASE+ 70)
99#define __NR_setregid (__NR_SYSCALL_BASE+ 71)
100#define __NR_sigsuspend (__NR_SYSCALL_BASE+ 72)
101#define __NR_sigpending (__NR_SYSCALL_BASE+ 73)
102#define __NR_sethostname (__NR_SYSCALL_BASE+ 74)
103#define __NR_setrlimit (__NR_SYSCALL_BASE+ 75)
104#define __NR_getrlimit (__NR_SYSCALL_BASE+ 76) /* Back compat 2GB limited rlimit */
105#define __NR_getrusage (__NR_SYSCALL_BASE+ 77)
106#define __NR_gettimeofday (__NR_SYSCALL_BASE+ 78)
107#define __NR_settimeofday (__NR_SYSCALL_BASE+ 79)
108#define __NR_getgroups (__NR_SYSCALL_BASE+ 80)
109#define __NR_setgroups (__NR_SYSCALL_BASE+ 81)
110#define __NR_select (__NR_SYSCALL_BASE+ 82)
111#define __NR_symlink (__NR_SYSCALL_BASE+ 83)
112 /* 84 was sys_lstat */
113#define __NR_readlink (__NR_SYSCALL_BASE+ 85)
114#define __NR_uselib (__NR_SYSCALL_BASE+ 86)
115#define __NR_swapon (__NR_SYSCALL_BASE+ 87)
116#define __NR_reboot (__NR_SYSCALL_BASE+ 88)
117#define __NR_readdir (__NR_SYSCALL_BASE+ 89)
118#define __NR_mmap (__NR_SYSCALL_BASE+ 90)
119#define __NR_munmap (__NR_SYSCALL_BASE+ 91)
120#define __NR_truncate (__NR_SYSCALL_BASE+ 92)
121#define __NR_ftruncate (__NR_SYSCALL_BASE+ 93)
122#define __NR_fchmod (__NR_SYSCALL_BASE+ 94)
123#define __NR_fchown (__NR_SYSCALL_BASE+ 95)
124#define __NR_getpriority (__NR_SYSCALL_BASE+ 96)
125#define __NR_setpriority (__NR_SYSCALL_BASE+ 97)
126 /* 98 was sys_profil */
127#define __NR_statfs (__NR_SYSCALL_BASE+ 99)
128#define __NR_fstatfs (__NR_SYSCALL_BASE+100)
129 /* 101 was sys_ioperm */
130#define __NR_socketcall (__NR_SYSCALL_BASE+102)
131#define __NR_syslog (__NR_SYSCALL_BASE+103)
132#define __NR_setitimer (__NR_SYSCALL_BASE+104)
133#define __NR_getitimer (__NR_SYSCALL_BASE+105)
134#define __NR_stat (__NR_SYSCALL_BASE+106)
135#define __NR_lstat (__NR_SYSCALL_BASE+107)
136#define __NR_fstat (__NR_SYSCALL_BASE+108)
137 /* 109 was sys_uname */
138 /* 110 was sys_iopl */
139#define __NR_vhangup (__NR_SYSCALL_BASE+111)
140 /* 112 was sys_idle */
141#define __NR_syscall (__NR_SYSCALL_BASE+113) /* syscall to call a syscall! */
142#define __NR_wait4 (__NR_SYSCALL_BASE+114)
143#define __NR_swapoff (__NR_SYSCALL_BASE+115)
144#define __NR_sysinfo (__NR_SYSCALL_BASE+116)
145#define __NR_ipc (__NR_SYSCALL_BASE+117)
146#define __NR_fsync (__NR_SYSCALL_BASE+118)
147#define __NR_sigreturn (__NR_SYSCALL_BASE+119)
148#define __NR_clone (__NR_SYSCALL_BASE+120)
149#define __NR_setdomainname (__NR_SYSCALL_BASE+121)
150#define __NR_uname (__NR_SYSCALL_BASE+122)
151 /* 123 was sys_modify_ldt */
152#define __NR_adjtimex (__NR_SYSCALL_BASE+124)
153#define __NR_mprotect (__NR_SYSCALL_BASE+125)
154#define __NR_sigprocmask (__NR_SYSCALL_BASE+126)
155 /* 127 was sys_create_module */
156#define __NR_init_module (__NR_SYSCALL_BASE+128)
157#define __NR_delete_module (__NR_SYSCALL_BASE+129)
158 /* 130 was sys_get_kernel_syms */
159#define __NR_quotactl (__NR_SYSCALL_BASE+131)
160#define __NR_getpgid (__NR_SYSCALL_BASE+132)
161#define __NR_fchdir (__NR_SYSCALL_BASE+133)
162#define __NR_bdflush (__NR_SYSCALL_BASE+134)
163#define __NR_sysfs (__NR_SYSCALL_BASE+135)
164#define __NR_personality (__NR_SYSCALL_BASE+136)
165 /* 137 was sys_afs_syscall */
166#define __NR_setfsuid (__NR_SYSCALL_BASE+138)
167#define __NR_setfsgid (__NR_SYSCALL_BASE+139)
168#define __NR__llseek (__NR_SYSCALL_BASE+140)
169#define __NR_getdents (__NR_SYSCALL_BASE+141)
170#define __NR__newselect (__NR_SYSCALL_BASE+142)
171#define __NR_flock (__NR_SYSCALL_BASE+143)
172#define __NR_msync (__NR_SYSCALL_BASE+144)
173#define __NR_readv (__NR_SYSCALL_BASE+145)
174#define __NR_writev (__NR_SYSCALL_BASE+146)
175#define __NR_getsid (__NR_SYSCALL_BASE+147)
176#define __NR_fdatasync (__NR_SYSCALL_BASE+148)
177#define __NR__sysctl (__NR_SYSCALL_BASE+149)
178#define __NR_mlock (__NR_SYSCALL_BASE+150)
179#define __NR_munlock (__NR_SYSCALL_BASE+151)
180#define __NR_mlockall (__NR_SYSCALL_BASE+152)
181#define __NR_munlockall (__NR_SYSCALL_BASE+153)
182#define __NR_sched_setparam (__NR_SYSCALL_BASE+154)
183#define __NR_sched_getparam (__NR_SYSCALL_BASE+155)
184#define __NR_sched_setscheduler (__NR_SYSCALL_BASE+156)
185#define __NR_sched_getscheduler (__NR_SYSCALL_BASE+157)
186#define __NR_sched_yield (__NR_SYSCALL_BASE+158)
187#define __NR_sched_get_priority_max (__NR_SYSCALL_BASE+159)
188#define __NR_sched_get_priority_min (__NR_SYSCALL_BASE+160)
189#define __NR_sched_rr_get_interval (__NR_SYSCALL_BASE+161)
190#define __NR_nanosleep (__NR_SYSCALL_BASE+162)
191#define __NR_mremap (__NR_SYSCALL_BASE+163)
192#define __NR_setresuid (__NR_SYSCALL_BASE+164)
193#define __NR_getresuid (__NR_SYSCALL_BASE+165)
194 /* 166 was sys_vm86 */
195 /* 167 was sys_query_module */
196#define __NR_poll (__NR_SYSCALL_BASE+168)
197#define __NR_nfsservctl (__NR_SYSCALL_BASE+169)
198#define __NR_setresgid (__NR_SYSCALL_BASE+170)
199#define __NR_getresgid (__NR_SYSCALL_BASE+171)
200#define __NR_prctl (__NR_SYSCALL_BASE+172)
201#define __NR_rt_sigreturn (__NR_SYSCALL_BASE+173)
202#define __NR_rt_sigaction (__NR_SYSCALL_BASE+174)
203#define __NR_rt_sigprocmask (__NR_SYSCALL_BASE+175)
204#define __NR_rt_sigpending (__NR_SYSCALL_BASE+176)
205#define __NR_rt_sigtimedwait (__NR_SYSCALL_BASE+177)
206#define __NR_rt_sigqueueinfo (__NR_SYSCALL_BASE+178)
207#define __NR_rt_sigsuspend (__NR_SYSCALL_BASE+179)
208#define __NR_pread64 (__NR_SYSCALL_BASE+180)
209#define __NR_pwrite64 (__NR_SYSCALL_BASE+181)
210#define __NR_chown (__NR_SYSCALL_BASE+182)
211#define __NR_getcwd (__NR_SYSCALL_BASE+183)
212#define __NR_capget (__NR_SYSCALL_BASE+184)
213#define __NR_capset (__NR_SYSCALL_BASE+185)
214#define __NR_sigaltstack (__NR_SYSCALL_BASE+186)
215#define __NR_sendfile (__NR_SYSCALL_BASE+187)
216 /* 188 reserved */
217 /* 189 reserved */
218#define __NR_vfork (__NR_SYSCALL_BASE+190)
219#define __NR_ugetrlimit (__NR_SYSCALL_BASE+191) /* SuS compliant getrlimit */
220#define __NR_mmap2 (__NR_SYSCALL_BASE+192)
221#define __NR_truncate64 (__NR_SYSCALL_BASE+193)
222#define __NR_ftruncate64 (__NR_SYSCALL_BASE+194)
223#define __NR_stat64 (__NR_SYSCALL_BASE+195)
224#define __NR_lstat64 (__NR_SYSCALL_BASE+196)
225#define __NR_fstat64 (__NR_SYSCALL_BASE+197)
226#define __NR_lchown32 (__NR_SYSCALL_BASE+198)
227#define __NR_getuid32 (__NR_SYSCALL_BASE+199)
228#define __NR_getgid32 (__NR_SYSCALL_BASE+200)
229#define __NR_geteuid32 (__NR_SYSCALL_BASE+201)
230#define __NR_getegid32 (__NR_SYSCALL_BASE+202)
231#define __NR_setreuid32 (__NR_SYSCALL_BASE+203)
232#define __NR_setregid32 (__NR_SYSCALL_BASE+204)
233#define __NR_getgroups32 (__NR_SYSCALL_BASE+205)
234#define __NR_setgroups32 (__NR_SYSCALL_BASE+206)
235#define __NR_fchown32 (__NR_SYSCALL_BASE+207)
236#define __NR_setresuid32 (__NR_SYSCALL_BASE+208)
237#define __NR_getresuid32 (__NR_SYSCALL_BASE+209)
238#define __NR_setresgid32 (__NR_SYSCALL_BASE+210)
239#define __NR_getresgid32 (__NR_SYSCALL_BASE+211)
240#define __NR_chown32 (__NR_SYSCALL_BASE+212)
241#define __NR_setuid32 (__NR_SYSCALL_BASE+213)
242#define __NR_setgid32 (__NR_SYSCALL_BASE+214)
243#define __NR_setfsuid32 (__NR_SYSCALL_BASE+215)
244#define __NR_setfsgid32 (__NR_SYSCALL_BASE+216)
245#define __NR_getdents64 (__NR_SYSCALL_BASE+217)
246#define __NR_pivot_root (__NR_SYSCALL_BASE+218)
247#define __NR_mincore (__NR_SYSCALL_BASE+219)
248#define __NR_madvise (__NR_SYSCALL_BASE+220)
249#define __NR_fcntl64 (__NR_SYSCALL_BASE+221)
250 /* 222 for tux */
251 /* 223 is unused */
252#define __NR_gettid (__NR_SYSCALL_BASE+224)
253#define __NR_readahead (__NR_SYSCALL_BASE+225)
254#define __NR_setxattr (__NR_SYSCALL_BASE+226)
255#define __NR_lsetxattr (__NR_SYSCALL_BASE+227)
256#define __NR_fsetxattr (__NR_SYSCALL_BASE+228)
257#define __NR_getxattr (__NR_SYSCALL_BASE+229)
258#define __NR_lgetxattr (__NR_SYSCALL_BASE+230)
259#define __NR_fgetxattr (__NR_SYSCALL_BASE+231)
260#define __NR_listxattr (__NR_SYSCALL_BASE+232)
261#define __NR_llistxattr (__NR_SYSCALL_BASE+233)
262#define __NR_flistxattr (__NR_SYSCALL_BASE+234)
263#define __NR_removexattr (__NR_SYSCALL_BASE+235)
264#define __NR_lremovexattr (__NR_SYSCALL_BASE+236)
265#define __NR_fremovexattr (__NR_SYSCALL_BASE+237)
266#define __NR_tkill (__NR_SYSCALL_BASE+238)
267#define __NR_sendfile64 (__NR_SYSCALL_BASE+239)
268#define __NR_futex (__NR_SYSCALL_BASE+240)
269#define __NR_sched_setaffinity (__NR_SYSCALL_BASE+241)
270#define __NR_sched_getaffinity (__NR_SYSCALL_BASE+242)
271#define __NR_io_setup (__NR_SYSCALL_BASE+243)
272#define __NR_io_destroy (__NR_SYSCALL_BASE+244)
273#define __NR_io_getevents (__NR_SYSCALL_BASE+245)
274#define __NR_io_submit (__NR_SYSCALL_BASE+246)
275#define __NR_io_cancel (__NR_SYSCALL_BASE+247)
276#define __NR_exit_group (__NR_SYSCALL_BASE+248)
277#define __NR_lookup_dcookie (__NR_SYSCALL_BASE+249)
278#define __NR_epoll_create (__NR_SYSCALL_BASE+250)
279#define __NR_epoll_ctl (__NR_SYSCALL_BASE+251)
280#define __NR_epoll_wait (__NR_SYSCALL_BASE+252)
281#define __NR_remap_file_pages (__NR_SYSCALL_BASE+253)
282 /* 254 for set_thread_area */
283 /* 255 for get_thread_area */
284#define __NR_set_tid_address (__NR_SYSCALL_BASE+256)
285#define __NR_timer_create (__NR_SYSCALL_BASE+257)
286#define __NR_timer_settime (__NR_SYSCALL_BASE+258)
287#define __NR_timer_gettime (__NR_SYSCALL_BASE+259)
288#define __NR_timer_getoverrun (__NR_SYSCALL_BASE+260)
289#define __NR_timer_delete (__NR_SYSCALL_BASE+261)
290#define __NR_clock_settime (__NR_SYSCALL_BASE+262)
291#define __NR_clock_gettime (__NR_SYSCALL_BASE+263)
292#define __NR_clock_getres (__NR_SYSCALL_BASE+264)
293#define __NR_clock_nanosleep (__NR_SYSCALL_BASE+265)
294#define __NR_statfs64 (__NR_SYSCALL_BASE+266)
295#define __NR_fstatfs64 (__NR_SYSCALL_BASE+267)
296#define __NR_tgkill (__NR_SYSCALL_BASE+268)
297#define __NR_utimes (__NR_SYSCALL_BASE+269)
298#define __NR_arm_fadvise64_64 (__NR_SYSCALL_BASE+270)
299#define __NR_pciconfig_iobase (__NR_SYSCALL_BASE+271)
300#define __NR_pciconfig_read (__NR_SYSCALL_BASE+272)
301#define __NR_pciconfig_write (__NR_SYSCALL_BASE+273)
302#define __NR_mq_open (__NR_SYSCALL_BASE+274)
303#define __NR_mq_unlink (__NR_SYSCALL_BASE+275)
304#define __NR_mq_timedsend (__NR_SYSCALL_BASE+276)
305#define __NR_mq_timedreceive (__NR_SYSCALL_BASE+277)
306#define __NR_mq_notify (__NR_SYSCALL_BASE+278)
307#define __NR_mq_getsetattr (__NR_SYSCALL_BASE+279)
308#define __NR_waitid (__NR_SYSCALL_BASE+280)
309#define __NR_socket (__NR_SYSCALL_BASE+281)
310#define __NR_bind (__NR_SYSCALL_BASE+282)
311#define __NR_connect (__NR_SYSCALL_BASE+283)
312#define __NR_listen (__NR_SYSCALL_BASE+284)
313#define __NR_accept (__NR_SYSCALL_BASE+285)
314#define __NR_getsockname (__NR_SYSCALL_BASE+286)
315#define __NR_getpeername (__NR_SYSCALL_BASE+287)
316#define __NR_socketpair (__NR_SYSCALL_BASE+288)
317#define __NR_send (__NR_SYSCALL_BASE+289)
318#define __NR_sendto (__NR_SYSCALL_BASE+290)
319#define __NR_recv (__NR_SYSCALL_BASE+291)
320#define __NR_recvfrom (__NR_SYSCALL_BASE+292)
321#define __NR_shutdown (__NR_SYSCALL_BASE+293)
322#define __NR_setsockopt (__NR_SYSCALL_BASE+294)
323#define __NR_getsockopt (__NR_SYSCALL_BASE+295)
324#define __NR_sendmsg (__NR_SYSCALL_BASE+296)
325#define __NR_recvmsg (__NR_SYSCALL_BASE+297)
326#define __NR_semop (__NR_SYSCALL_BASE+298)
327#define __NR_semget (__NR_SYSCALL_BASE+299)
328#define __NR_semctl (__NR_SYSCALL_BASE+300)
329#define __NR_msgsnd (__NR_SYSCALL_BASE+301)
330#define __NR_msgrcv (__NR_SYSCALL_BASE+302)
331#define __NR_msgget (__NR_SYSCALL_BASE+303)
332#define __NR_msgctl (__NR_SYSCALL_BASE+304)
333#define __NR_shmat (__NR_SYSCALL_BASE+305)
334#define __NR_shmdt (__NR_SYSCALL_BASE+306)
335#define __NR_shmget (__NR_SYSCALL_BASE+307)
336#define __NR_shmctl (__NR_SYSCALL_BASE+308)
337#define __NR_add_key (__NR_SYSCALL_BASE+309)
338#define __NR_request_key (__NR_SYSCALL_BASE+310)
339#define __NR_keyctl (__NR_SYSCALL_BASE+311)
340#define __NR_semtimedop (__NR_SYSCALL_BASE+312)
341#define __NR_vserver (__NR_SYSCALL_BASE+313)
342#define __NR_ioprio_set (__NR_SYSCALL_BASE+314)
343#define __NR_ioprio_get (__NR_SYSCALL_BASE+315)
344#define __NR_inotify_init (__NR_SYSCALL_BASE+316)
345#define __NR_inotify_add_watch (__NR_SYSCALL_BASE+317)
346#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE+318)
347#define __NR_mbind (__NR_SYSCALL_BASE+319)
348#define __NR_get_mempolicy (__NR_SYSCALL_BASE+320)
349#define __NR_set_mempolicy (__NR_SYSCALL_BASE+321)
350#define __NR_openat (__NR_SYSCALL_BASE+322)
351#define __NR_mkdirat (__NR_SYSCALL_BASE+323)
352#define __NR_mknodat (__NR_SYSCALL_BASE+324)
353#define __NR_fchownat (__NR_SYSCALL_BASE+325)
354#define __NR_futimesat (__NR_SYSCALL_BASE+326)
355#define __NR_fstatat64 (__NR_SYSCALL_BASE+327)
356#define __NR_unlinkat (__NR_SYSCALL_BASE+328)
357#define __NR_renameat (__NR_SYSCALL_BASE+329)
358#define __NR_linkat (__NR_SYSCALL_BASE+330)
359#define __NR_symlinkat (__NR_SYSCALL_BASE+331)
360#define __NR_readlinkat (__NR_SYSCALL_BASE+332)
361#define __NR_fchmodat (__NR_SYSCALL_BASE+333)
362#define __NR_faccessat (__NR_SYSCALL_BASE+334)
363#define __NR_pselect6 (__NR_SYSCALL_BASE+335)
364#define __NR_ppoll (__NR_SYSCALL_BASE+336)
365#define __NR_unshare (__NR_SYSCALL_BASE+337)
366#define __NR_set_robust_list (__NR_SYSCALL_BASE+338)
367#define __NR_get_robust_list (__NR_SYSCALL_BASE+339)
368#define __NR_splice (__NR_SYSCALL_BASE+340)
369#define __NR_arm_sync_file_range (__NR_SYSCALL_BASE+341)
370#define __NR_sync_file_range2 __NR_arm_sync_file_range
371#define __NR_tee (__NR_SYSCALL_BASE+342)
372#define __NR_vmsplice (__NR_SYSCALL_BASE+343)
373#define __NR_move_pages (__NR_SYSCALL_BASE+344)
374#define __NR_getcpu (__NR_SYSCALL_BASE+345)
375#define __NR_epoll_pwait (__NR_SYSCALL_BASE+346)
376#define __NR_kexec_load (__NR_SYSCALL_BASE+347)
377#define __NR_utimensat (__NR_SYSCALL_BASE+348)
378#define __NR_signalfd (__NR_SYSCALL_BASE+349)
379#define __NR_timerfd_create (__NR_SYSCALL_BASE+350)
380#define __NR_eventfd (__NR_SYSCALL_BASE+351)
381#define __NR_fallocate (__NR_SYSCALL_BASE+352)
382#define __NR_timerfd_settime (__NR_SYSCALL_BASE+353)
383#define __NR_timerfd_gettime (__NR_SYSCALL_BASE+354)
384#define __NR_signalfd4 (__NR_SYSCALL_BASE+355)
385#define __NR_eventfd2 (__NR_SYSCALL_BASE+356)
386#define __NR_epoll_create1 (__NR_SYSCALL_BASE+357)
387#define __NR_dup3 (__NR_SYSCALL_BASE+358)
388#define __NR_pipe2 (__NR_SYSCALL_BASE+359)
389#define __NR_inotify_init1 (__NR_SYSCALL_BASE+360)
390#define __NR_preadv (__NR_SYSCALL_BASE+361)
391#define __NR_pwritev (__NR_SYSCALL_BASE+362)
392#define __NR_rt_tgsigqueueinfo (__NR_SYSCALL_BASE+363)
393#define __NR_perf_event_open (__NR_SYSCALL_BASE+364)
394#define __NR_recvmmsg (__NR_SYSCALL_BASE+365)
395#define __NR_accept4 (__NR_SYSCALL_BASE+366)
396#define __NR_fanotify_init (__NR_SYSCALL_BASE+367)
397#define __NR_fanotify_mark (__NR_SYSCALL_BASE+368)
398#define __NR_prlimit64 (__NR_SYSCALL_BASE+369)
399#define __NR_name_to_handle_at (__NR_SYSCALL_BASE+370)
400#define __NR_open_by_handle_at (__NR_SYSCALL_BASE+371)
401#define __NR_clock_adjtime (__NR_SYSCALL_BASE+372)
402#define __NR_syncfs (__NR_SYSCALL_BASE+373)
403#define __NR_sendmmsg (__NR_SYSCALL_BASE+374)
404#define __NR_setns (__NR_SYSCALL_BASE+375)
405#define __NR_process_vm_readv (__NR_SYSCALL_BASE+376)
406#define __NR_process_vm_writev (__NR_SYSCALL_BASE+377)
407 /* 378 for kcmp */
408
409/*
410 * This may need to be greater than __NR_last_syscall+1 in order to
411 * account for the padding in the syscall table
412 */
413
414/*
415 * The following SWIs are ARM private.
416 */
417#define __ARM_NR_BASE (__NR_SYSCALL_BASE+0x0f0000)
418#define __ARM_NR_breakpoint (__ARM_NR_BASE+1)
419#define __ARM_NR_cacheflush (__ARM_NR_BASE+2)
420#define __ARM_NR_usr26 (__ARM_NR_BASE+3)
421#define __ARM_NR_usr32 (__ARM_NR_BASE+4)
422#define __ARM_NR_set_tls (__ARM_NR_BASE+5)
423
424/*
425 * *NOTE*: This is a ghost syscall private to the kernel. Only the
426 * __kuser_cmpxchg code in entry-armv.S should be aware of its
427 * existence. Don't ever use this from user code.
428 */
429
430/*
431 * The following syscalls are obsolete and no longer available for EABI.
432 */
433#if !defined(__KERNEL__)
434#if defined(__ARM_EABI__)
435#undef __NR_time
436#undef __NR_umount
437#undef __NR_stime
438#undef __NR_alarm
439#undef __NR_utime
440#undef __NR_getrlimit
441#undef __NR_select
442#undef __NR_readdir
443#undef __NR_mmap
444#undef __NR_socketcall
445#undef __NR_syscall
446#undef __NR_ipc
447#endif
448#endif
449
450#endif /* _UAPI__ASM_ARM_UNISTD_H */
diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig
index c8050b14e615..b14207101938 100644
--- a/arch/arm/mach-at91/Kconfig
+++ b/arch/arm/mach-at91/Kconfig
@@ -19,8 +19,8 @@ config AT91_SAM9G45_RESET
19 19
20config SOC_AT91SAM9 20config SOC_AT91SAM9
21 bool 21 bool
22 select GENERIC_CLOCKEVENTS
23 select CPU_ARM926T 22 select CPU_ARM926T
23 select GENERIC_CLOCKEVENTS
24 24
25menu "Atmel AT91 System-on-Chip" 25menu "Atmel AT91 System-on-Chip"
26 26
@@ -28,66 +28,66 @@ comment "Atmel AT91 Processor"
28 28
29config SOC_AT91SAM9 29config SOC_AT91SAM9
30 bool 30 bool
31 select AT91_SAM9_SMC
32 select AT91_SAM9_TIME
31 select CPU_ARM926T 33 select CPU_ARM926T
32 select MULTI_IRQ_HANDLER 34 select MULTI_IRQ_HANDLER
33 select SPARSE_IRQ 35 select SPARSE_IRQ
34 select AT91_SAM9_TIME
35 select AT91_SAM9_SMC
36 36
37config SOC_AT91RM9200 37config SOC_AT91RM9200
38 bool "AT91RM9200" 38 bool "AT91RM9200"
39 select CPU_ARM920T 39 select CPU_ARM920T
40 select MULTI_IRQ_HANDLER
41 select SPARSE_IRQ
42 select GENERIC_CLOCKEVENTS 40 select GENERIC_CLOCKEVENTS
43 select HAVE_AT91_DBGU0 41 select HAVE_AT91_DBGU0
42 select MULTI_IRQ_HANDLER
43 select SPARSE_IRQ
44 44
45config SOC_AT91SAM9260 45config SOC_AT91SAM9260
46 bool "AT91SAM9260, AT91SAM9XE or AT91SAM9G20" 46 bool "AT91SAM9260, AT91SAM9XE or AT91SAM9G20"
47 select SOC_AT91SAM9
48 select HAVE_AT91_DBGU0 47 select HAVE_AT91_DBGU0
49 select HAVE_NET_MACB 48 select HAVE_NET_MACB
49 select SOC_AT91SAM9
50 help 50 help
51 Select this if you are using one of Atmel's AT91SAM9260, AT91SAM9XE 51 Select this if you are using one of Atmel's AT91SAM9260, AT91SAM9XE
52 or AT91SAM9G20 SoC. 52 or AT91SAM9G20 SoC.
53 53
54config SOC_AT91SAM9261 54config SOC_AT91SAM9261
55 bool "AT91SAM9261 or AT91SAM9G10" 55 bool "AT91SAM9261 or AT91SAM9G10"
56 select SOC_AT91SAM9
57 select HAVE_AT91_DBGU0 56 select HAVE_AT91_DBGU0
58 select HAVE_FB_ATMEL 57 select HAVE_FB_ATMEL
58 select SOC_AT91SAM9
59 help 59 help
60 Select this if you are using one of Atmel's AT91SAM9261 or AT91SAM9G10 SoC. 60 Select this if you are using one of Atmel's AT91SAM9261 or AT91SAM9G10 SoC.
61 61
62config SOC_AT91SAM9263 62config SOC_AT91SAM9263
63 bool "AT91SAM9263" 63 bool "AT91SAM9263"
64 select SOC_AT91SAM9
65 select HAVE_AT91_DBGU1 64 select HAVE_AT91_DBGU1
66 select HAVE_FB_ATMEL 65 select HAVE_FB_ATMEL
67 select HAVE_NET_MACB 66 select HAVE_NET_MACB
67 select SOC_AT91SAM9
68 68
69config SOC_AT91SAM9RL 69config SOC_AT91SAM9RL
70 bool "AT91SAM9RL" 70 bool "AT91SAM9RL"
71 select SOC_AT91SAM9
72 select HAVE_AT91_DBGU0 71 select HAVE_AT91_DBGU0
73 select HAVE_FB_ATMEL 72 select HAVE_FB_ATMEL
73 select SOC_AT91SAM9
74 74
75config SOC_AT91SAM9G45 75config SOC_AT91SAM9G45
76 bool "AT91SAM9G45 or AT91SAM9M10 families" 76 bool "AT91SAM9G45 or AT91SAM9M10 families"
77 select SOC_AT91SAM9
78 select HAVE_AT91_DBGU1 77 select HAVE_AT91_DBGU1
79 select HAVE_FB_ATMEL 78 select HAVE_FB_ATMEL
80 select HAVE_NET_MACB 79 select HAVE_NET_MACB
80 select SOC_AT91SAM9
81 help 81 help
82 Select this if you are using one of Atmel's AT91SAM9G45 family SoC. 82 Select this if you are using one of Atmel's AT91SAM9G45 family SoC.
83 This support covers AT91SAM9G45, AT91SAM9G46, AT91SAM9M10 and AT91SAM9M11. 83 This support covers AT91SAM9G45, AT91SAM9G46, AT91SAM9M10 and AT91SAM9M11.
84 84
85config SOC_AT91SAM9X5 85config SOC_AT91SAM9X5
86 bool "AT91SAM9x5 family" 86 bool "AT91SAM9x5 family"
87 select SOC_AT91SAM9
88 select HAVE_AT91_DBGU0 87 select HAVE_AT91_DBGU0
89 select HAVE_FB_ATMEL 88 select HAVE_FB_ATMEL
90 select HAVE_NET_MACB 89 select HAVE_NET_MACB
90 select SOC_AT91SAM9
91 help 91 help
92 Select this if you are using one of Atmel's AT91SAM9x5 family SoC. 92 Select this if you are using one of Atmel's AT91SAM9x5 family SoC.
93 This means that your SAM9 name finishes with a '5' (except if it is 93 This means that your SAM9 name finishes with a '5' (except if it is
@@ -97,9 +97,9 @@ config SOC_AT91SAM9X5
97 97
98config SOC_AT91SAM9N12 98config SOC_AT91SAM9N12
99 bool "AT91SAM9N12 family" 99 bool "AT91SAM9N12 family"
100 select SOC_AT91SAM9
101 select HAVE_AT91_DBGU0 100 select HAVE_AT91_DBGU0
102 select HAVE_FB_ATMEL 101 select HAVE_FB_ATMEL
102 select SOC_AT91SAM9
103 help 103 help
104 Select this if you are using Atmel's AT91SAM9N12 SoC. 104 Select this if you are using Atmel's AT91SAM9N12 SoC.
105 105
@@ -144,9 +144,9 @@ config ARCH_AT91SAM9G45
144config ARCH_AT91X40 144config ARCH_AT91X40
145 bool "AT91x40" 145 bool "AT91x40"
146 depends on !MMU 146 depends on !MMU
147 select ARCH_USES_GETTIMEOFFSET
147 select MULTI_IRQ_HANDLER 148 select MULTI_IRQ_HANDLER
148 select SPARSE_IRQ 149 select SPARSE_IRQ
149 select ARCH_USES_GETTIMEOFFSET
150 150
151endchoice 151endchoice
152 152
diff --git a/arch/arm/mach-clps711x/Kconfig b/arch/arm/mach-clps711x/Kconfig
index e6135363765a..263242da2cb8 100644
--- a/arch/arm/mach-clps711x/Kconfig
+++ b/arch/arm/mach-clps711x/Kconfig
@@ -23,9 +23,9 @@ config ARCH_CLEP7312
23 23
24config ARCH_EDB7211 24config ARCH_EDB7211
25 bool "EDB7211" 25 bool "EDB7211"
26 select ISA
27 select ARCH_SPARSEMEM_ENABLE
28 select ARCH_SELECT_MEMORY_MODEL 26 select ARCH_SELECT_MEMORY_MODEL
27 select ARCH_SPARSEMEM_ENABLE
28 select ISA
29 help 29 help
30 Say Y here if you intend to run this kernel on a Cirrus Logic EDB-7211 30 Say Y here if you intend to run this kernel on a Cirrus Logic EDB-7211
31 evaluation board. 31 evaluation board.
diff --git a/arch/arm/mach-davinci/Kconfig b/arch/arm/mach-davinci/Kconfig
index 026b4b277ae5..f8eecb959413 100644
--- a/arch/arm/mach-davinci/Kconfig
+++ b/arch/arm/mach-davinci/Kconfig
@@ -4,12 +4,12 @@ config AINTC
4 bool 4 bool
5 5
6config CP_INTC 6config CP_INTC
7 select IRQ_DOMAIN
8 bool 7 bool
8 select IRQ_DOMAIN
9 9
10config ARCH_DAVINCI_DMx 10config ARCH_DAVINCI_DMx
11 select CPU_ARM926T
12 bool 11 bool
12 select CPU_ARM926T
13 13
14menu "TI DaVinci Implementations" 14menu "TI DaVinci Implementations"
15 15
@@ -32,19 +32,19 @@ config ARCH_DAVINCI_DM646x
32 32
33config ARCH_DAVINCI_DA830 33config ARCH_DAVINCI_DA830
34 bool "DA830/OMAP-L137/AM17x based system" 34 bool "DA830/OMAP-L137/AM17x based system"
35 select CP_INTC
36 select ARCH_DAVINCI_DA8XX 35 select ARCH_DAVINCI_DA8XX
37 select CPU_DCACHE_WRITETHROUGH # needed on silicon revs 1.0, 1.1 36 select CPU_DCACHE_WRITETHROUGH # needed on silicon revs 1.0, 1.1
37 select CP_INTC
38 38
39config ARCH_DAVINCI_DA850 39config ARCH_DAVINCI_DA850
40 bool "DA850/OMAP-L138/AM18x based system" 40 bool "DA850/OMAP-L138/AM18x based system"
41 select CP_INTC
42 select ARCH_DAVINCI_DA8XX 41 select ARCH_DAVINCI_DA8XX
43 select ARCH_HAS_CPUFREQ 42 select ARCH_HAS_CPUFREQ
43 select CP_INTC
44 44
45config ARCH_DAVINCI_DA8XX 45config ARCH_DAVINCI_DA8XX
46 select CPU_ARM926T
47 bool 46 bool
47 select CPU_ARM926T
48 48
49config ARCH_DAVINCI_DM365 49config ARCH_DAVINCI_DM365
50 bool "DaVinci 365 based system" 50 bool "DaVinci 365 based system"
@@ -52,9 +52,9 @@ config ARCH_DAVINCI_DM365
52 select ARCH_DAVINCI_DMx 52 select ARCH_DAVINCI_DMx
53 53
54config ARCH_DAVINCI_TNETV107X 54config ARCH_DAVINCI_TNETV107X
55 bool "TNETV107X based system"
55 select CPU_V6 56 select CPU_V6
56 select CP_INTC 57 select CP_INTC
57 bool "TNETV107X based system"
58 58
59comment "DaVinci Board Type" 59comment "DaVinci Board Type"
60 60
@@ -103,9 +103,9 @@ config MACH_DAVINCI_DM6467_EVM
103 bool "TI DM6467 EVM" 103 bool "TI DM6467 EVM"
104 default ARCH_DAVINCI_DM646x 104 default ARCH_DAVINCI_DM646x
105 depends on ARCH_DAVINCI_DM646x 105 depends on ARCH_DAVINCI_DM646x
106 select MACH_DAVINCI_DM6467TEVM
107 select EEPROM_AT24 106 select EEPROM_AT24
108 select I2C 107 select I2C
108 select MACH_DAVINCI_DM6467TEVM
109 help 109 help
110 Configure this option to specify the whether the board used 110 Configure this option to specify the whether the board used
111 for development is a DM6467 EVM 111 for development is a DM6467 EVM
@@ -127,8 +127,8 @@ config MACH_DAVINCI_DA830_EVM
127 bool "TI DA830/OMAP-L137/AM17x Reference Platform" 127 bool "TI DA830/OMAP-L137/AM17x Reference Platform"
128 default ARCH_DAVINCI_DA830 128 default ARCH_DAVINCI_DA830
129 depends on ARCH_DAVINCI_DA830 129 depends on ARCH_DAVINCI_DA830
130 select GPIO_PCF857X
131 select EEPROM_AT24 130 select EEPROM_AT24
131 select GPIO_PCF857X
132 select I2C 132 select I2C
133 help 133 help
134 Say Y here to select the TI DA830/OMAP-L137/AM17x Evaluation Module. 134 Say Y here to select the TI DA830/OMAP-L137/AM17x Evaluation Module.
diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index 4372075c551f..da55107033dd 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -31,11 +31,11 @@ config CPU_EXYNOS4210
31 bool "SAMSUNG EXYNOS4210" 31 bool "SAMSUNG EXYNOS4210"
32 default y 32 default y
33 depends on ARCH_EXYNOS4 33 depends on ARCH_EXYNOS4
34 select SAMSUNG_DMADEV
35 select ARM_CPU_SUSPEND if PM 34 select ARM_CPU_SUSPEND if PM
35 select PM_GENERIC_DOMAINS
36 select S5P_PM if PM 36 select S5P_PM if PM
37 select S5P_SLEEP if PM 37 select S5P_SLEEP if PM
38 select PM_GENERIC_DOMAINS 38 select SAMSUNG_DMADEV
39 help 39 help
40 Enable EXYNOS4210 CPU support 40 Enable EXYNOS4210 CPU support
41 41
@@ -43,9 +43,9 @@ config SOC_EXYNOS4212
43 bool "SAMSUNG EXYNOS4212" 43 bool "SAMSUNG EXYNOS4212"
44 default y 44 default y
45 depends on ARCH_EXYNOS4 45 depends on ARCH_EXYNOS4
46 select SAMSUNG_DMADEV
47 select S5P_PM if PM 46 select S5P_PM if PM
48 select S5P_SLEEP if PM 47 select S5P_SLEEP if PM
48 select SAMSUNG_DMADEV
49 help 49 help
50 Enable EXYNOS4212 SoC support 50 Enable EXYNOS4212 SoC support
51 51
@@ -61,9 +61,9 @@ config SOC_EXYNOS5250
61 bool "SAMSUNG EXYNOS5250" 61 bool "SAMSUNG EXYNOS5250"
62 default y 62 default y
63 depends on ARCH_EXYNOS5 63 depends on ARCH_EXYNOS5
64 select SAMSUNG_DMADEV
65 select S5P_PM if PM 64 select S5P_PM if PM
66 select S5P_SLEEP if PM 65 select S5P_SLEEP if PM
66 select SAMSUNG_DMADEV
67 help 67 help
68 Enable EXYNOS5250 SoC support 68 Enable EXYNOS5250 SoC support
69 69
@@ -189,71 +189,71 @@ config MACH_SMDKC210
189config MACH_SMDKV310 189config MACH_SMDKV310
190 bool "SMDKV310" 190 bool "SMDKV310"
191 select CPU_EXYNOS4210 191 select CPU_EXYNOS4210
192 select S5P_DEV_FIMD0 192 select EXYNOS4_DEV_AHCI
193 select EXYNOS4_DEV_USB_OHCI
194 select EXYNOS4_SETUP_FIMD0
195 select EXYNOS4_SETUP_I2C1
196 select EXYNOS4_SETUP_KEYPAD
197 select EXYNOS4_SETUP_SDHCI
198 select EXYNOS4_SETUP_USB_PHY
199 select EXYNOS_DEV_DMA
200 select EXYNOS_DEV_DRM
201 select EXYNOS_DEV_SYSMMU
202 select S3C24XX_PWM
203 select S3C_DEV_HSMMC
204 select S3C_DEV_HSMMC1
205 select S3C_DEV_HSMMC2
206 select S3C_DEV_HSMMC3
207 select S3C_DEV_I2C1
193 select S3C_DEV_RTC 208 select S3C_DEV_RTC
209 select S3C_DEV_USB_HSOTG
194 select S3C_DEV_WDT 210 select S3C_DEV_WDT
195 select S3C_DEV_I2C1
196 select S5P_DEV_FIMC0 211 select S5P_DEV_FIMC0
197 select S5P_DEV_FIMC1 212 select S5P_DEV_FIMC1
198 select S5P_DEV_FIMC2 213 select S5P_DEV_FIMC2
199 select S5P_DEV_FIMC3 214 select S5P_DEV_FIMC3
215 select S5P_DEV_FIMD0
200 select S5P_DEV_G2D 216 select S5P_DEV_G2D
201 select S5P_DEV_I2C_HDMIPHY 217 select S5P_DEV_I2C_HDMIPHY
202 select S5P_DEV_JPEG 218 select S5P_DEV_JPEG
203 select S5P_DEV_MFC 219 select S5P_DEV_MFC
204 select S5P_DEV_TV 220 select S5P_DEV_TV
205 select S5P_DEV_USB_EHCI 221 select S5P_DEV_USB_EHCI
206 select S3C_DEV_HSMMC
207 select S3C_DEV_HSMMC1
208 select S3C_DEV_HSMMC2
209 select S3C_DEV_HSMMC3
210 select S3C_DEV_USB_HSOTG
211 select SAMSUNG_DEV_BACKLIGHT 222 select SAMSUNG_DEV_BACKLIGHT
212 select EXYNOS_DEV_DRM
213 select EXYNOS_DEV_SYSMMU
214 select EXYNOS4_DEV_AHCI
215 select SAMSUNG_DEV_KEYPAD 223 select SAMSUNG_DEV_KEYPAD
216 select EXYNOS_DEV_DMA
217 select SAMSUNG_DEV_PWM 224 select SAMSUNG_DEV_PWM
218 select EXYNOS4_DEV_USB_OHCI
219 select EXYNOS4_SETUP_FIMD0
220 select EXYNOS4_SETUP_I2C1
221 select EXYNOS4_SETUP_KEYPAD
222 select EXYNOS4_SETUP_SDHCI
223 select EXYNOS4_SETUP_USB_PHY
224 select S3C24XX_PWM
225 help 225 help
226 Machine support for Samsung SMDKV310 226 Machine support for Samsung SMDKV310
227 227
228config MACH_ARMLEX4210 228config MACH_ARMLEX4210
229 bool "ARMLEX4210" 229 bool "ARMLEX4210"
230 select CPU_EXYNOS4210 230 select CPU_EXYNOS4210
231 select S3C_DEV_RTC 231 select EXYNOS4_DEV_AHCI
232 select S3C_DEV_WDT 232 select EXYNOS4_SETUP_SDHCI
233 select EXYNOS_DEV_DMA
233 select S3C_DEV_HSMMC 234 select S3C_DEV_HSMMC
234 select S3C_DEV_HSMMC2 235 select S3C_DEV_HSMMC2
235 select S3C_DEV_HSMMC3 236 select S3C_DEV_HSMMC3
236 select EXYNOS4_DEV_AHCI 237 select S3C_DEV_RTC
237 select EXYNOS_DEV_DMA 238 select S3C_DEV_WDT
238 select EXYNOS4_SETUP_SDHCI
239 help 239 help
240 Machine support for Samsung ARMLEX4210 based on EXYNOS4210 240 Machine support for Samsung ARMLEX4210 based on EXYNOS4210
241 241
242config MACH_UNIVERSAL_C210 242config MACH_UNIVERSAL_C210
243 bool "Mobile UNIVERSAL_C210 Board" 243 bool "Mobile UNIVERSAL_C210 Board"
244 select CPU_EXYNOS4210
245 select S5P_HRT
246 select CLKSRC_MMIO 244 select CLKSRC_MMIO
245 select CPU_EXYNOS4210
246 select EXYNOS4_SETUP_FIMC
247 select EXYNOS4_SETUP_FIMD0
248 select EXYNOS4_SETUP_I2C1
249 select EXYNOS4_SETUP_I2C3
250 select EXYNOS4_SETUP_I2C5
251 select EXYNOS4_SETUP_SDHCI
252 select EXYNOS4_SETUP_USB_PHY
253 select EXYNOS_DEV_DMA
254 select EXYNOS_DEV_DRM
255 select EXYNOS_DEV_SYSMMU
247 select HAVE_SCHED_CLOCK 256 select HAVE_SCHED_CLOCK
248 select S5P_GPIO_INT
249 select S5P_DEV_FIMC0
250 select S5P_DEV_FIMC1
251 select S5P_DEV_FIMC2
252 select S5P_DEV_FIMC3
253 select S5P_DEV_G2D
254 select S5P_DEV_CSIS0
255 select S5P_DEV_JPEG
256 select S5P_DEV_FIMD0
257 select S3C_DEV_HSMMC 257 select S3C_DEV_HSMMC
258 select S3C_DEV_HSMMC2 258 select S3C_DEV_HSMMC2
259 select S3C_DEV_HSMMC3 259 select S3C_DEV_HSMMC3
@@ -261,21 +261,21 @@ config MACH_UNIVERSAL_C210
261 select S3C_DEV_I2C3 261 select S3C_DEV_I2C3
262 select S3C_DEV_I2C5 262 select S3C_DEV_I2C5
263 select S3C_DEV_USB_HSOTG 263 select S3C_DEV_USB_HSOTG
264 select S5P_DEV_CSIS0
265 select S5P_DEV_FIMC0
266 select S5P_DEV_FIMC1
267 select S5P_DEV_FIMC2
268 select S5P_DEV_FIMC3
269 select S5P_DEV_FIMD0
270 select S5P_DEV_G2D
264 select S5P_DEV_I2C_HDMIPHY 271 select S5P_DEV_I2C_HDMIPHY
272 select S5P_DEV_JPEG
265 select S5P_DEV_MFC 273 select S5P_DEV_MFC
266 select S5P_DEV_ONENAND 274 select S5P_DEV_ONENAND
267 select S5P_DEV_TV 275 select S5P_DEV_TV
268 select EXYNOS_DEV_SYSMMU 276 select S5P_GPIO_INT
269 select EXYNOS_DEV_DMA 277 select S5P_HRT
270 select EXYNOS_DEV_DRM
271 select EXYNOS4_SETUP_FIMD0
272 select EXYNOS4_SETUP_I2C1
273 select EXYNOS4_SETUP_I2C3
274 select EXYNOS4_SETUP_I2C5
275 select EXYNOS4_SETUP_SDHCI
276 select EXYNOS4_SETUP_FIMC
277 select S5P_SETUP_MIPIPHY 278 select S5P_SETUP_MIPIPHY
278 select EXYNOS4_SETUP_USB_PHY
279 help 279 help
280 Machine support for Samsung Mobile Universal S5PC210 Reference 280 Machine support for Samsung Mobile Universal S5PC210 Reference
281 Board. 281 Board.
@@ -283,10 +283,16 @@ config MACH_UNIVERSAL_C210
283config MACH_NURI 283config MACH_NURI
284 bool "Mobile NURI Board" 284 bool "Mobile NURI Board"
285 select CPU_EXYNOS4210 285 select CPU_EXYNOS4210
286 select S5P_GPIO_INT 286 select EXYNOS4_SETUP_FIMC
287 select S3C_DEV_WDT 287 select EXYNOS4_SETUP_FIMD0
288 select S3C_DEV_RTC 288 select EXYNOS4_SETUP_I2C1
289 select S5P_DEV_FIMD0 289 select EXYNOS4_SETUP_I2C3
290 select EXYNOS4_SETUP_I2C5
291 select EXYNOS4_SETUP_I2C6
292 select EXYNOS4_SETUP_SDHCI
293 select EXYNOS4_SETUP_USB_PHY
294 select EXYNOS_DEV_DMA
295 select EXYNOS_DEV_DRM
290 select S3C_DEV_HSMMC 296 select S3C_DEV_HSMMC
291 select S3C_DEV_HSMMC2 297 select S3C_DEV_HSMMC2
292 select S3C_DEV_HSMMC3 298 select S3C_DEV_HSMMC3
@@ -294,41 +300,42 @@ config MACH_NURI
294 select S3C_DEV_I2C3 300 select S3C_DEV_I2C3
295 select S3C_DEV_I2C5 301 select S3C_DEV_I2C5
296 select S3C_DEV_I2C6 302 select S3C_DEV_I2C6
303 select S3C_DEV_RTC
297 select S3C_DEV_USB_HSOTG 304 select S3C_DEV_USB_HSOTG
305 select S3C_DEV_WDT
298 select S5P_DEV_CSIS0 306 select S5P_DEV_CSIS0
299 select S5P_DEV_JPEG
300 select S5P_DEV_FIMC0 307 select S5P_DEV_FIMC0
301 select S5P_DEV_FIMC1 308 select S5P_DEV_FIMC1
302 select S5P_DEV_FIMC2 309 select S5P_DEV_FIMC2
303 select S5P_DEV_FIMC3 310 select S5P_DEV_FIMC3
311 select S5P_DEV_FIMD0
304 select S5P_DEV_G2D 312 select S5P_DEV_G2D
313 select S5P_DEV_JPEG
305 select S5P_DEV_MFC 314 select S5P_DEV_MFC
306 select S5P_DEV_USB_EHCI 315 select S5P_DEV_USB_EHCI
316 select S5P_GPIO_INT
307 select S5P_SETUP_MIPIPHY 317 select S5P_SETUP_MIPIPHY
308 select EXYNOS_DEV_DMA
309 select EXYNOS_DEV_DRM
310 select EXYNOS4_SETUP_FIMC
311 select EXYNOS4_SETUP_FIMD0
312 select EXYNOS4_SETUP_I2C1
313 select EXYNOS4_SETUP_I2C3
314 select EXYNOS4_SETUP_I2C5
315 select EXYNOS4_SETUP_I2C6
316 select EXYNOS4_SETUP_SDHCI
317 select EXYNOS4_SETUP_USB_PHY
318 select S5P_SETUP_MIPIPHY
319 select SAMSUNG_DEV_PWM
320 select SAMSUNG_DEV_ADC 318 select SAMSUNG_DEV_ADC
319 select SAMSUNG_DEV_PWM
321 help 320 help
322 Machine support for Samsung Mobile NURI Board. 321 Machine support for Samsung Mobile NURI Board.
323 322
324config MACH_ORIGEN 323config MACH_ORIGEN
325 bool "ORIGEN" 324 bool "ORIGEN"
326 select CPU_EXYNOS4210 325 select CPU_EXYNOS4210
327 select S3C_DEV_RTC 326 select EXYNOS4_DEV_USB_OHCI
328 select S3C_DEV_WDT 327 select EXYNOS4_SETUP_FIMD0
328 select EXYNOS4_SETUP_SDHCI
329 select EXYNOS4_SETUP_USB_PHY
330 select EXYNOS_DEV_DMA
331 select EXYNOS_DEV_DRM
332 select EXYNOS_DEV_SYSMMU
333 select S3C24XX_PWM
329 select S3C_DEV_HSMMC 334 select S3C_DEV_HSMMC
330 select S3C_DEV_HSMMC2 335 select S3C_DEV_HSMMC2
336 select S3C_DEV_RTC
331 select S3C_DEV_USB_HSOTG 337 select S3C_DEV_USB_HSOTG
338 select S3C_DEV_WDT
332 select S5P_DEV_FIMC0 339 select S5P_DEV_FIMC0
333 select S5P_DEV_FIMC1 340 select S5P_DEV_FIMC1
334 select S5P_DEV_FIMC2 341 select S5P_DEV_FIMC2
@@ -342,14 +349,6 @@ config MACH_ORIGEN
342 select S5P_DEV_USB_EHCI 349 select S5P_DEV_USB_EHCI
343 select SAMSUNG_DEV_BACKLIGHT 350 select SAMSUNG_DEV_BACKLIGHT
344 select SAMSUNG_DEV_PWM 351 select SAMSUNG_DEV_PWM
345 select EXYNOS_DEV_DRM
346 select EXYNOS_DEV_SYSMMU
347 select EXYNOS_DEV_DMA
348 select EXYNOS4_DEV_USB_OHCI
349 select EXYNOS4_SETUP_FIMD0
350 select EXYNOS4_SETUP_SDHCI
351 select EXYNOS4_SETUP_USB_PHY
352 select S3C24XX_PWM
353 help 352 help
354 Machine support for ORIGEN based on Samsung EXYNOS4210 353 Machine support for ORIGEN based on Samsung EXYNOS4210
355 354
@@ -357,7 +356,17 @@ comment "EXYNOS4212 Boards"
357 356
358config MACH_SMDK4212 357config MACH_SMDK4212
359 bool "SMDK4212" 358 bool "SMDK4212"
360 select SOC_EXYNOS4212 359 select EXYNOS4_SETUP_FIMD0
360 select EXYNOS4_SETUP_I2C1
361 select EXYNOS4_SETUP_I2C3
362 select EXYNOS4_SETUP_I2C7
363 select EXYNOS4_SETUP_KEYPAD
364 select EXYNOS4_SETUP_SDHCI
365 select EXYNOS4_SETUP_USB_PHY
366 select EXYNOS_DEV_DMA
367 select EXYNOS_DEV_DRM
368 select EXYNOS_DEV_SYSMMU
369 select S3C24XX_PWM
361 select S3C_DEV_HSMMC2 370 select S3C_DEV_HSMMC2
362 select S3C_DEV_HSMMC3 371 select S3C_DEV_HSMMC3
363 select S3C_DEV_I2C1 372 select S3C_DEV_I2C1
@@ -375,17 +384,7 @@ config MACH_SMDK4212
375 select SAMSUNG_DEV_BACKLIGHT 384 select SAMSUNG_DEV_BACKLIGHT
376 select SAMSUNG_DEV_KEYPAD 385 select SAMSUNG_DEV_KEYPAD
377 select SAMSUNG_DEV_PWM 386 select SAMSUNG_DEV_PWM
378 select EXYNOS_DEV_SYSMMU 387 select SOC_EXYNOS4212
379 select EXYNOS_DEV_DMA
380 select EXYNOS_DEV_DRM
381 select EXYNOS4_SETUP_FIMD0
382 select EXYNOS4_SETUP_I2C1
383 select EXYNOS4_SETUP_I2C3
384 select EXYNOS4_SETUP_I2C7
385 select EXYNOS4_SETUP_KEYPAD
386 select EXYNOS4_SETUP_SDHCI
387 select EXYNOS4_SETUP_USB_PHY
388 select S3C24XX_PWM
389 help 388 help
390 Machine support for Samsung SMDK4212 389 Machine support for Samsung SMDK4212
391 390
@@ -393,8 +392,8 @@ comment "EXYNOS4412 Boards"
393 392
394config MACH_SMDK4412 393config MACH_SMDK4412
395 bool "SMDK4412" 394 bool "SMDK4412"
396 select SOC_EXYNOS4412
397 select MACH_SMDK4212 395 select MACH_SMDK4212
396 select SOC_EXYNOS4412
398 help 397 help
399 Machine support for Samsung SMDK4412 398 Machine support for Samsung SMDK4412
400endif 399endif
@@ -404,12 +403,12 @@ comment "Flattened Device Tree based board for EXYNOS SoCs"
404config MACH_EXYNOS4_DT 403config MACH_EXYNOS4_DT
405 bool "Samsung Exynos4 Machine using device tree" 404 bool "Samsung Exynos4 Machine using device tree"
406 depends on ARCH_EXYNOS4 405 depends on ARCH_EXYNOS4
407 select CPU_EXYNOS4210
408 select USE_OF
409 select ARM_AMBA 406 select ARM_AMBA
407 select CPU_EXYNOS4210
410 select HAVE_SAMSUNG_KEYPAD if INPUT_KEYBOARD 408 select HAVE_SAMSUNG_KEYPAD if INPUT_KEYBOARD
411 select PINCTRL 409 select PINCTRL
412 select PINCTRL_EXYNOS4 410 select PINCTRL_EXYNOS4
411 select USE_OF
413 help 412 help
414 Machine support for Samsung Exynos4 machine with device tree enabled. 413 Machine support for Samsung Exynos4 machine with device tree enabled.
415 Select this if a fdt blob is available for the Exynos4 SoC based board. 414 Select this if a fdt blob is available for the Exynos4 SoC based board.
@@ -419,9 +418,9 @@ config MACH_EXYNOS4_DT
419config MACH_EXYNOS5_DT 418config MACH_EXYNOS5_DT
420 bool "SAMSUNG EXYNOS5 Machine using device tree" 419 bool "SAMSUNG EXYNOS5 Machine using device tree"
421 depends on ARCH_EXYNOS5 420 depends on ARCH_EXYNOS5
421 select ARM_AMBA
422 select SOC_EXYNOS5250 422 select SOC_EXYNOS5250
423 select USE_OF 423 select USE_OF
424 select ARM_AMBA
425 help 424 help
426 Machine support for Samsung EXYNOS5 machine with device tree enabled. 425 Machine support for Samsung EXYNOS5 machine with device tree enabled.
427 Select this if a fdt blob is available for the EXYNOS5 SoC based board. 426 Select this if a fdt blob is available for the EXYNOS5 SoC based board.
diff --git a/arch/arm/mach-footbridge/Kconfig b/arch/arm/mach-footbridge/Kconfig
index f643ef819da6..abda5a18a664 100644
--- a/arch/arm/mach-footbridge/Kconfig
+++ b/arch/arm/mach-footbridge/Kconfig
@@ -91,7 +91,7 @@ config FOOTBRIDGE_ADDIN
91 91
92# EBSA285 board in either host or addin mode 92# EBSA285 board in either host or addin mode
93config ARCH_EBSA285 93config ARCH_EBSA285
94 select ARCH_MAY_HAVE_PC_FDC
95 bool 94 bool
95 select ARCH_MAY_HAVE_PC_FDC
96 96
97endif 97endif
diff --git a/arch/arm/mach-h720x/Kconfig b/arch/arm/mach-h720x/Kconfig
index abf356c02343..6bb755bcb6f5 100644
--- a/arch/arm/mach-h720x/Kconfig
+++ b/arch/arm/mach-h720x/Kconfig
@@ -12,9 +12,9 @@ config ARCH_H7201
12 12
13config ARCH_H7202 13config ARCH_H7202
14 bool "hms30c7202" 14 bool "hms30c7202"
15 depends on ARCH_H720X
15 select CPU_H7202 16 select CPU_H7202
16 select ZONE_DMA 17 select ZONE_DMA
17 depends on ARCH_H720X
18 help 18 help
19 Say Y here if you are using the Hynix HMS30C7202 Reference Board 19 Say Y here if you are using the Hynix HMS30C7202 Reference Board
20 20
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 32197c117afe..8d276584650e 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -41,68 +41,68 @@ config SOC_IMX1
41 41
42config SOC_IMX21 42config SOC_IMX21
43 bool 43 bool
44 select MACH_MX21
45 select CPU_ARM926T
46 select COMMON_CLK 44 select COMMON_CLK
45 select CPU_ARM926T
47 select IMX_HAVE_IOMUX_V1 46 select IMX_HAVE_IOMUX_V1
47 select MACH_MX21
48 select MXC_AVIC 48 select MXC_AVIC
49 49
50config SOC_IMX25 50config SOC_IMX25
51 bool 51 bool
52 select ARCH_MX25 52 select ARCH_MX25
53 select ARCH_MXC_IOMUX_V3
53 select COMMON_CLK 54 select COMMON_CLK
54 select CPU_ARM926T 55 select CPU_ARM926T
55 select HAVE_CAN_FLEXCAN if CAN 56 select HAVE_CAN_FLEXCAN if CAN
56 select ARCH_MXC_IOMUX_V3
57 select MXC_AVIC 57 select MXC_AVIC
58 58
59config SOC_IMX27 59config SOC_IMX27
60 bool 60 bool
61 select MACH_MX27
62 select CPU_ARM926T
63 select COMMON_CLK 61 select COMMON_CLK
62 select CPU_ARM926T
64 select IMX_HAVE_IOMUX_V1 63 select IMX_HAVE_IOMUX_V1
64 select MACH_MX27
65 select MXC_AVIC 65 select MXC_AVIC
66 66
67config SOC_IMX31 67config SOC_IMX31
68 bool 68 bool
69 select COMMON_CLK
69 select CPU_V6 70 select CPU_V6
70 select IMX_HAVE_PLATFORM_MXC_RNGA 71 select IMX_HAVE_PLATFORM_MXC_RNGA
71 select MXC_AVIC 72 select MXC_AVIC
72 select COMMON_CLK
73 select SMP_ON_UP if SMP 73 select SMP_ON_UP if SMP
74 74
75config SOC_IMX35 75config SOC_IMX35
76 bool 76 bool
77 select CPU_V6K
78 select ARCH_MXC_IOMUX_V3 77 select ARCH_MXC_IOMUX_V3
79 select COMMON_CLK 78 select COMMON_CLK
79 select CPU_V6K
80 select HAVE_CAN_FLEXCAN if CAN
80 select HAVE_EPIT 81 select HAVE_EPIT
81 select MXC_AVIC 82 select MXC_AVIC
82 select SMP_ON_UP if SMP 83 select SMP_ON_UP if SMP
83 select HAVE_CAN_FLEXCAN if CAN
84 84
85config SOC_IMX5 85config SOC_IMX5
86 select CPU_V7 86 bool
87 select MXC_TZIC
88 select COMMON_CLK
89 select ARCH_MXC_IOMUX_V3
90 select ARCH_HAS_CPUFREQ 87 select ARCH_HAS_CPUFREQ
91 select ARCH_MX5 88 select ARCH_MX5
92 bool 89 select ARCH_MXC_IOMUX_V3
90 select COMMON_CLK
91 select CPU_V7
92 select MXC_TZIC
93 93
94config SOC_IMX50 94config SOC_IMX50
95 bool 95 bool
96 select SOC_IMX5
97 select ARCH_MX50 96 select ARCH_MX50
97 select SOC_IMX5
98 98
99config SOC_IMX51 99config SOC_IMX51
100 bool 100 bool
101 select SOC_IMX5
102 select ARCH_MX5 101 select ARCH_MX5
103 select ARCH_MX51 102 select ARCH_MX51
104 select PINCTRL 103 select PINCTRL
105 select PINCTRL_IMX51 104 select PINCTRL_IMX51
105 select SOC_IMX5
106 106
107if ARCH_IMX_V4_V5 107if ARCH_IMX_V4_V5
108 108
@@ -112,10 +112,10 @@ config MACH_MXLADS
112 112
113config ARCH_MX1ADS 113config ARCH_MX1ADS
114 bool "MX1ADS platform" 114 bool "MX1ADS platform"
115 select MACH_MXLADS
116 select SOC_IMX1
117 select IMX_HAVE_PLATFORM_IMX_I2C 115 select IMX_HAVE_PLATFORM_IMX_I2C
118 select IMX_HAVE_PLATFORM_IMX_UART 116 select IMX_HAVE_PLATFORM_IMX_UART
117 select MACH_MXLADS
118 select SOC_IMX1
119 help 119 help
120 Say Y here if you are using Motorola MX1ADS/MXLADS boards 120 Say Y here if you are using Motorola MX1ADS/MXLADS boards
121 121
@@ -127,9 +127,9 @@ config MACH_SCB9328
127 127
128config MACH_APF9328 128config MACH_APF9328
129 bool "APF9328" 129 bool "APF9328"
130 select SOC_IMX1
131 select IMX_HAVE_PLATFORM_IMX_I2C 130 select IMX_HAVE_PLATFORM_IMX_I2C
132 select IMX_HAVE_PLATFORM_IMX_UART 131 select IMX_HAVE_PLATFORM_IMX_UART
132 select SOC_IMX1
133 help 133 help
134 Say Yes here if you are using the Armadeus APF9328 development board 134 Say Yes here if you are using the Armadeus APF9328 development board
135 135
@@ -137,11 +137,11 @@ comment "MX21 platforms:"
137 137
138config MACH_MX21ADS 138config MACH_MX21ADS
139 bool "MX21ADS platform" 139 bool "MX21ADS platform"
140 select SOC_IMX21
141 select IMX_HAVE_PLATFORM_IMX_FB 140 select IMX_HAVE_PLATFORM_IMX_FB
142 select IMX_HAVE_PLATFORM_IMX_UART 141 select IMX_HAVE_PLATFORM_IMX_UART
143 select IMX_HAVE_PLATFORM_MXC_MMC 142 select IMX_HAVE_PLATFORM_MXC_MMC
144 select IMX_HAVE_PLATFORM_MXC_NAND 143 select IMX_HAVE_PLATFORM_MXC_NAND
144 select SOC_IMX21
145 help 145 help
146 Include support for MX21ADS platform. This includes specific 146 Include support for MX21ADS platform. This includes specific
147 configurations for the board and its peripherals. 147 configurations for the board and its peripherals.
@@ -150,22 +150,21 @@ comment "MX25 platforms:"
150 150
151config MACH_MX25_3DS 151config MACH_MX25_3DS
152 bool "Support MX25PDK (3DS) Platform" 152 bool "Support MX25PDK (3DS) Platform"
153 select SOC_IMX25
154 select IMX_HAVE_PLATFORM_FLEXCAN 153 select IMX_HAVE_PLATFORM_FLEXCAN
155 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 154 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
156 select IMX_HAVE_PLATFORM_IMX2_WDT 155 select IMX_HAVE_PLATFORM_IMX2_WDT
157 select IMX_HAVE_PLATFORM_IMXDI_RTC 156 select IMX_HAVE_PLATFORM_IMXDI_RTC
158 select IMX_HAVE_PLATFORM_IMX_I2C
159 select IMX_HAVE_PLATFORM_IMX_FB 157 select IMX_HAVE_PLATFORM_IMX_FB
158 select IMX_HAVE_PLATFORM_IMX_I2C
160 select IMX_HAVE_PLATFORM_IMX_KEYPAD 159 select IMX_HAVE_PLATFORM_IMX_KEYPAD
161 select IMX_HAVE_PLATFORM_IMX_UART 160 select IMX_HAVE_PLATFORM_IMX_UART
162 select IMX_HAVE_PLATFORM_MXC_EHCI 161 select IMX_HAVE_PLATFORM_MXC_EHCI
163 select IMX_HAVE_PLATFORM_MXC_NAND 162 select IMX_HAVE_PLATFORM_MXC_NAND
164 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 163 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
164 select SOC_IMX25
165 165
166config MACH_EUKREA_CPUIMX25SD 166config MACH_EUKREA_CPUIMX25SD
167 bool "Support Eukrea CPUIMX25 Platform" 167 bool "Support Eukrea CPUIMX25 Platform"
168 select SOC_IMX25
169 select IMX_HAVE_PLATFORM_FLEXCAN 168 select IMX_HAVE_PLATFORM_FLEXCAN
170 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 169 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
171 select IMX_HAVE_PLATFORM_IMX2_WDT 170 select IMX_HAVE_PLATFORM_IMX2_WDT
@@ -177,6 +176,7 @@ config MACH_EUKREA_CPUIMX25SD
177 select IMX_HAVE_PLATFORM_MXC_NAND 176 select IMX_HAVE_PLATFORM_MXC_NAND
178 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 177 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
179 select MXC_ULPI if USB_ULPI 178 select MXC_ULPI if USB_ULPI
179 select SOC_IMX25
180 180
181choice 181choice
182 prompt "Baseboard" 182 prompt "Baseboard"
@@ -199,20 +199,19 @@ comment "MX27 platforms:"
199 199
200config MACH_MX27ADS 200config MACH_MX27ADS
201 bool "MX27ADS platform" 201 bool "MX27ADS platform"
202 select SOC_IMX27
203 select IMX_HAVE_PLATFORM_IMX_FB 202 select IMX_HAVE_PLATFORM_IMX_FB
204 select IMX_HAVE_PLATFORM_IMX_I2C 203 select IMX_HAVE_PLATFORM_IMX_I2C
205 select IMX_HAVE_PLATFORM_IMX_UART 204 select IMX_HAVE_PLATFORM_IMX_UART
206 select IMX_HAVE_PLATFORM_MXC_MMC 205 select IMX_HAVE_PLATFORM_MXC_MMC
207 select IMX_HAVE_PLATFORM_MXC_NAND 206 select IMX_HAVE_PLATFORM_MXC_NAND
208 select IMX_HAVE_PLATFORM_MXC_W1 207 select IMX_HAVE_PLATFORM_MXC_W1
208 select SOC_IMX27
209 help 209 help
210 Include support for MX27ADS platform. This includes specific 210 Include support for MX27ADS platform. This includes specific
211 configurations for the board and its peripherals. 211 configurations for the board and its peripherals.
212 212
213config MACH_PCM038 213config MACH_PCM038
214 bool "Phytec phyCORE-i.MX27 CPU module (pcm038)" 214 bool "Phytec phyCORE-i.MX27 CPU module (pcm038)"
215 select SOC_IMX27
216 select IMX_HAVE_PLATFORM_IMX2_WDT 215 select IMX_HAVE_PLATFORM_IMX2_WDT
217 select IMX_HAVE_PLATFORM_IMX_I2C 216 select IMX_HAVE_PLATFORM_IMX_I2C
218 select IMX_HAVE_PLATFORM_IMX_UART 217 select IMX_HAVE_PLATFORM_IMX_UART
@@ -221,6 +220,7 @@ config MACH_PCM038
221 select IMX_HAVE_PLATFORM_MXC_W1 220 select IMX_HAVE_PLATFORM_MXC_W1
222 select IMX_HAVE_PLATFORM_SPI_IMX 221 select IMX_HAVE_PLATFORM_SPI_IMX
223 select MXC_ULPI if USB_ULPI 222 select MXC_ULPI if USB_ULPI
223 select SOC_IMX27
224 help 224 help
225 Include support for phyCORE-i.MX27 (aka pcm038) platform. This 225 Include support for phyCORE-i.MX27 (aka pcm038) platform. This
226 includes specific configurations for the module and its peripherals. 226 includes specific configurations for the module and its peripherals.
@@ -242,7 +242,6 @@ endchoice
242 242
243config MACH_CPUIMX27 243config MACH_CPUIMX27
244 bool "Eukrea CPUIMX27 module" 244 bool "Eukrea CPUIMX27 module"
245 select SOC_IMX27
246 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 245 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
247 select IMX_HAVE_PLATFORM_IMX2_WDT 246 select IMX_HAVE_PLATFORM_IMX2_WDT
248 select IMX_HAVE_PLATFORM_IMX_I2C 247 select IMX_HAVE_PLATFORM_IMX_I2C
@@ -251,6 +250,7 @@ config MACH_CPUIMX27
251 select IMX_HAVE_PLATFORM_MXC_NAND 250 select IMX_HAVE_PLATFORM_MXC_NAND
252 select IMX_HAVE_PLATFORM_MXC_W1 251 select IMX_HAVE_PLATFORM_MXC_W1
253 select MXC_ULPI if USB_ULPI 252 select MXC_ULPI if USB_ULPI
253 select SOC_IMX27
254 help 254 help
255 Include support for Eukrea CPUIMX27 platform. This includes 255 Include support for Eukrea CPUIMX27 platform. This includes
256 specific configurations for the module and its peripherals. 256 specific configurations for the module and its peripherals.
@@ -292,7 +292,6 @@ endchoice
292 292
293config MACH_MX27_3DS 293config MACH_MX27_3DS
294 bool "MX27PDK platform" 294 bool "MX27PDK platform"
295 select SOC_IMX27
296 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 295 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
297 select IMX_HAVE_PLATFORM_IMX2_WDT 296 select IMX_HAVE_PLATFORM_IMX2_WDT
298 select IMX_HAVE_PLATFORM_IMX_FB 297 select IMX_HAVE_PLATFORM_IMX_FB
@@ -306,13 +305,13 @@ config MACH_MX27_3DS
306 select IMX_HAVE_PLATFORM_SPI_IMX 305 select IMX_HAVE_PLATFORM_SPI_IMX
307 select MXC_DEBUG_BOARD 306 select MXC_DEBUG_BOARD
308 select MXC_ULPI if USB_ULPI 307 select MXC_ULPI if USB_ULPI
308 select SOC_IMX27
309 help 309 help
310 Include support for MX27PDK platform. This includes specific 310 Include support for MX27PDK platform. This includes specific
311 configurations for the board and its peripherals. 311 configurations for the board and its peripherals.
312 312
313config MACH_IMX27_VISSTRIM_M10 313config MACH_IMX27_VISSTRIM_M10
314 bool "Vista Silicon i.MX27 Visstrim_m10" 314 bool "Vista Silicon i.MX27 Visstrim_m10"
315 select SOC_IMX27
316 select IMX_HAVE_PLATFORM_GPIO_KEYS 315 select IMX_HAVE_PLATFORM_GPIO_KEYS
317 select IMX_HAVE_PLATFORM_IMX_I2C 316 select IMX_HAVE_PLATFORM_IMX_I2C
318 select IMX_HAVE_PLATFORM_IMX_SSI 317 select IMX_HAVE_PLATFORM_IMX_SSI
@@ -321,6 +320,7 @@ config MACH_IMX27_VISSTRIM_M10
321 select IMX_HAVE_PLATFORM_MXC_EHCI 320 select IMX_HAVE_PLATFORM_MXC_EHCI
322 select IMX_HAVE_PLATFORM_MXC_MMC 321 select IMX_HAVE_PLATFORM_MXC_MMC
323 select LEDS_GPIO_REGISTER 322 select LEDS_GPIO_REGISTER
323 select SOC_IMX27
324 help 324 help
325 Include support for Visstrim_m10 platform and its different variants. 325 Include support for Visstrim_m10 platform and its different variants.
326 This includes specific configurations for the board and its 326 This includes specific configurations for the board and its
@@ -328,16 +328,15 @@ config MACH_IMX27_VISSTRIM_M10
328 328
329config MACH_IMX27LITE 329config MACH_IMX27LITE
330 bool "LogicPD MX27 LITEKIT platform" 330 bool "LogicPD MX27 LITEKIT platform"
331 select SOC_IMX27
332 select IMX_HAVE_PLATFORM_IMX_UART
333 select IMX_HAVE_PLATFORM_IMX_SSI 331 select IMX_HAVE_PLATFORM_IMX_SSI
332 select IMX_HAVE_PLATFORM_IMX_UART
333 select SOC_IMX27
334 help 334 help
335 Include support for MX27 LITEKIT platform. This includes specific 335 Include support for MX27 LITEKIT platform. This includes specific
336 configurations for the board and its peripherals. 336 configurations for the board and its peripherals.
337 337
338config MACH_PCA100 338config MACH_PCA100
339 bool "Phytec phyCARD-s (pca100)" 339 bool "Phytec phyCARD-s (pca100)"
340 select SOC_IMX27
341 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 340 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
342 select IMX_HAVE_PLATFORM_IMX2_WDT 341 select IMX_HAVE_PLATFORM_IMX2_WDT
343 select IMX_HAVE_PLATFORM_IMX_FB 342 select IMX_HAVE_PLATFORM_IMX_FB
@@ -350,27 +349,28 @@ config MACH_PCA100
350 select IMX_HAVE_PLATFORM_MXC_W1 349 select IMX_HAVE_PLATFORM_MXC_W1
351 select IMX_HAVE_PLATFORM_SPI_IMX 350 select IMX_HAVE_PLATFORM_SPI_IMX
352 select MXC_ULPI if USB_ULPI 351 select MXC_ULPI if USB_ULPI
352 select SOC_IMX27
353 help 353 help
354 Include support for phyCARD-s (aka pca100) platform. This 354 Include support for phyCARD-s (aka pca100) platform. This
355 includes specific configurations for the module and its peripherals. 355 includes specific configurations for the module and its peripherals.
356 356
357config MACH_MXT_TD60 357config MACH_MXT_TD60
358 bool "Maxtrack i-MXT TD60" 358 bool "Maxtrack i-MXT TD60"
359 select SOC_IMX27
360 select IMX_HAVE_PLATFORM_IMX_FB 359 select IMX_HAVE_PLATFORM_IMX_FB
361 select IMX_HAVE_PLATFORM_IMX_I2C 360 select IMX_HAVE_PLATFORM_IMX_I2C
362 select IMX_HAVE_PLATFORM_IMX_UART 361 select IMX_HAVE_PLATFORM_IMX_UART
363 select IMX_HAVE_PLATFORM_MXC_MMC 362 select IMX_HAVE_PLATFORM_MXC_MMC
364 select IMX_HAVE_PLATFORM_MXC_NAND 363 select IMX_HAVE_PLATFORM_MXC_NAND
364 select SOC_IMX27
365 help 365 help
366 Include support for i-MXT (aka td60) platform. This 366 Include support for i-MXT (aka td60) platform. This
367 includes specific configurations for the module and its peripherals. 367 includes specific configurations for the module and its peripherals.
368 368
369config MACH_IMX27IPCAM 369config MACH_IMX27IPCAM
370 bool "IMX27 IPCAM platform" 370 bool "IMX27 IPCAM platform"
371 select SOC_IMX27
372 select IMX_HAVE_PLATFORM_IMX2_WDT 371 select IMX_HAVE_PLATFORM_IMX2_WDT
373 select IMX_HAVE_PLATFORM_IMX_UART 372 select IMX_HAVE_PLATFORM_IMX_UART
373 select SOC_IMX27
374 help 374 help
375 Include support for IMX27 IPCAM platform. This includes specific 375 Include support for IMX27 IPCAM platform. This includes specific
376 configurations for the board and its peripherals. 376 configurations for the board and its peripherals.
@@ -390,11 +390,11 @@ comment "MX31 platforms:"
390 390
391config MACH_MX31ADS 391config MACH_MX31ADS
392 bool "Support MX31ADS platforms" 392 bool "Support MX31ADS platforms"
393 select SOC_IMX31 393 default y
394 select IMX_HAVE_PLATFORM_IMX_I2C 394 select IMX_HAVE_PLATFORM_IMX_I2C
395 select IMX_HAVE_PLATFORM_IMX_SSI 395 select IMX_HAVE_PLATFORM_IMX_SSI
396 select IMX_HAVE_PLATFORM_IMX_UART 396 select IMX_HAVE_PLATFORM_IMX_UART
397 default y 397 select SOC_IMX31
398 help 398 help
399 Include support for MX31ADS platform. This includes specific 399 Include support for MX31ADS platform. This includes specific
400 configurations for the board and its peripherals. 400 configurations for the board and its peripherals.
@@ -412,21 +412,19 @@ config MACH_MX31ADS_WM1133_EV1
412 412
413config MACH_MX31LILLY 413config MACH_MX31LILLY
414 bool "Support MX31 LILLY-1131 platforms (INCO startec)" 414 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
415 select SOC_IMX31
416 select IMX_HAVE_PLATFORM_IMX_UART 415 select IMX_HAVE_PLATFORM_IMX_UART
417 select IMX_HAVE_PLATFORM_IPU_CORE 416 select IMX_HAVE_PLATFORM_IPU_CORE
418 select IMX_HAVE_PLATFORM_MXC_EHCI 417 select IMX_HAVE_PLATFORM_MXC_EHCI
419 select IMX_HAVE_PLATFORM_MXC_MMC 418 select IMX_HAVE_PLATFORM_MXC_MMC
420 select IMX_HAVE_PLATFORM_SPI_IMX 419 select IMX_HAVE_PLATFORM_SPI_IMX
421 select MXC_ULPI if USB_ULPI 420 select MXC_ULPI if USB_ULPI
421 select SOC_IMX31
422 help 422 help
423 Include support for mx31 based LILLY1131 modules. This includes 423 Include support for mx31 based LILLY1131 modules. This includes
424 specific configurations for the board and its peripherals. 424 specific configurations for the board and its peripherals.
425 425
426config MACH_MX31LITE 426config MACH_MX31LITE
427 bool "Support MX31 LITEKIT (LogicPD)" 427 bool "Support MX31 LITEKIT (LogicPD)"
428 select SOC_IMX31
429 select MXC_ULPI if USB_ULPI
430 select IMX_HAVE_PLATFORM_IMX2_WDT 428 select IMX_HAVE_PLATFORM_IMX2_WDT
431 select IMX_HAVE_PLATFORM_IMX_UART 429 select IMX_HAVE_PLATFORM_IMX_UART
432 select IMX_HAVE_PLATFORM_MXC_EHCI 430 select IMX_HAVE_PLATFORM_MXC_EHCI
@@ -435,13 +433,14 @@ config MACH_MX31LITE
435 select IMX_HAVE_PLATFORM_MXC_RTC 433 select IMX_HAVE_PLATFORM_MXC_RTC
436 select IMX_HAVE_PLATFORM_SPI_IMX 434 select IMX_HAVE_PLATFORM_SPI_IMX
437 select LEDS_GPIO_REGISTER 435 select LEDS_GPIO_REGISTER
436 select MXC_ULPI if USB_ULPI
437 select SOC_IMX31
438 help 438 help
439 Include support for MX31 LITEKIT platform. This includes specific 439 Include support for MX31 LITEKIT platform. This includes specific
440 configurations for the board and its peripherals. 440 configurations for the board and its peripherals.
441 441
442config MACH_PCM037 442config MACH_PCM037
443 bool "Support Phytec pcm037 (i.MX31) platforms" 443 bool "Support Phytec pcm037 (i.MX31) platforms"
444 select SOC_IMX31
445 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 444 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
446 select IMX_HAVE_PLATFORM_IMX2_WDT 445 select IMX_HAVE_PLATFORM_IMX2_WDT
447 select IMX_HAVE_PLATFORM_IMX_I2C 446 select IMX_HAVE_PLATFORM_IMX_I2C
@@ -452,6 +451,7 @@ config MACH_PCM037
452 select IMX_HAVE_PLATFORM_MXC_NAND 451 select IMX_HAVE_PLATFORM_MXC_NAND
453 select IMX_HAVE_PLATFORM_MXC_W1 452 select IMX_HAVE_PLATFORM_MXC_W1
454 select MXC_ULPI if USB_ULPI 453 select MXC_ULPI if USB_ULPI
454 select SOC_IMX31
455 help 455 help
456 Include support for Phytec pcm037 platform. This includes 456 Include support for Phytec pcm037 platform. This includes
457 specific configurations for the board and its peripherals. 457 specific configurations for the board and its peripherals.
@@ -468,8 +468,6 @@ config MACH_PCM037_EET
468 468
469config MACH_MX31_3DS 469config MACH_MX31_3DS
470 bool "Support MX31PDK (3DS)" 470 bool "Support MX31PDK (3DS)"
471 select SOC_IMX31
472 select MXC_DEBUG_BOARD
473 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 471 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
474 select IMX_HAVE_PLATFORM_IMX2_WDT 472 select IMX_HAVE_PLATFORM_IMX2_WDT
475 select IMX_HAVE_PLATFORM_IMX_I2C 473 select IMX_HAVE_PLATFORM_IMX_I2C
@@ -481,7 +479,9 @@ config MACH_MX31_3DS
481 select IMX_HAVE_PLATFORM_MXC_MMC 479 select IMX_HAVE_PLATFORM_MXC_MMC
482 select IMX_HAVE_PLATFORM_MXC_NAND 480 select IMX_HAVE_PLATFORM_MXC_NAND
483 select IMX_HAVE_PLATFORM_SPI_IMX 481 select IMX_HAVE_PLATFORM_SPI_IMX
482 select MXC_DEBUG_BOARD
484 select MXC_ULPI if USB_ULPI 483 select MXC_ULPI if USB_ULPI
484 select SOC_IMX31
485 help 485 help
486 Include support for MX31PDK (3DS) platform. This includes specific 486 Include support for MX31PDK (3DS) platform. This includes specific
487 configurations for the board and its peripherals. 487 configurations for the board and its peripherals.
@@ -497,7 +497,6 @@ config MACH_MX31_3DS_MXC_NAND_USE_BBT
497 497
498config MACH_MX31MOBOARD 498config MACH_MX31MOBOARD
499 bool "Support mx31moboard platforms (EPFL Mobots group)" 499 bool "Support mx31moboard platforms (EPFL Mobots group)"
500 select SOC_IMX31
501 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 500 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
502 select IMX_HAVE_PLATFORM_IMX2_WDT 501 select IMX_HAVE_PLATFORM_IMX2_WDT
503 select IMX_HAVE_PLATFORM_IMX_I2C 502 select IMX_HAVE_PLATFORM_IMX_I2C
@@ -509,22 +508,22 @@ config MACH_MX31MOBOARD
509 select IMX_HAVE_PLATFORM_SPI_IMX 508 select IMX_HAVE_PLATFORM_SPI_IMX
510 select LEDS_GPIO_REGISTER 509 select LEDS_GPIO_REGISTER
511 select MXC_ULPI if USB_ULPI 510 select MXC_ULPI if USB_ULPI
511 select SOC_IMX31
512 help 512 help
513 Include support for mx31moboard platform. This includes specific 513 Include support for mx31moboard platform. This includes specific
514 configurations for the board and its peripherals. 514 configurations for the board and its peripherals.
515 515
516config MACH_QONG 516config MACH_QONG
517 bool "Support Dave/DENX QongEVB-LITE platform" 517 bool "Support Dave/DENX QongEVB-LITE platform"
518 select SOC_IMX31
519 select IMX_HAVE_PLATFORM_IMX_UART
520 select IMX_HAVE_PLATFORM_IMX2_WDT 518 select IMX_HAVE_PLATFORM_IMX2_WDT
519 select IMX_HAVE_PLATFORM_IMX_UART
520 select SOC_IMX31
521 help 521 help
522 Include support for Dave/DENX QongEVB-LITE platform. This includes 522 Include support for Dave/DENX QongEVB-LITE platform. This includes
523 specific configurations for the board and its peripherals. 523 specific configurations for the board and its peripherals.
524 524
525config MACH_ARMADILLO5X0 525config MACH_ARMADILLO5X0
526 bool "Support Atmark Armadillo-500 Development Base Board" 526 bool "Support Atmark Armadillo-500 Development Base Board"
527 select SOC_IMX31
528 select IMX_HAVE_PLATFORM_GPIO_KEYS 527 select IMX_HAVE_PLATFORM_GPIO_KEYS
529 select IMX_HAVE_PLATFORM_IMX_I2C 528 select IMX_HAVE_PLATFORM_IMX_I2C
530 select IMX_HAVE_PLATFORM_IMX_UART 529 select IMX_HAVE_PLATFORM_IMX_UART
@@ -533,23 +532,24 @@ config MACH_ARMADILLO5X0
533 select IMX_HAVE_PLATFORM_MXC_MMC 532 select IMX_HAVE_PLATFORM_MXC_MMC
534 select IMX_HAVE_PLATFORM_MXC_NAND 533 select IMX_HAVE_PLATFORM_MXC_NAND
535 select MXC_ULPI if USB_ULPI 534 select MXC_ULPI if USB_ULPI
535 select SOC_IMX31
536 help 536 help
537 Include support for Atmark Armadillo-500 platform. This includes 537 Include support for Atmark Armadillo-500 platform. This includes
538 specific configurations for the board and its peripherals. 538 specific configurations for the board and its peripherals.
539 539
540config MACH_KZM_ARM11_01 540config MACH_KZM_ARM11_01
541 bool "Support KZM-ARM11-01(Kyoto Microcomputer)" 541 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
542 select SOC_IMX31
543 select IMX_HAVE_PLATFORM_IMX_UART 542 select IMX_HAVE_PLATFORM_IMX_UART
543 select SOC_IMX31
544 help 544 help
545 Include support for KZM-ARM11-01. This includes specific 545 Include support for KZM-ARM11-01. This includes specific
546 configurations for the board and its peripherals. 546 configurations for the board and its peripherals.
547 547
548config MACH_BUG 548config MACH_BUG
549 bool "Support Buglabs BUGBase platform" 549 bool "Support Buglabs BUGBase platform"
550 select SOC_IMX31
551 select IMX_HAVE_PLATFORM_IMX_UART
552 default y 550 default y
551 select IMX_HAVE_PLATFORM_IMX_UART
552 select SOC_IMX31
553 help 553 help
554 Include support for BUGBase 1.3 platform. This includes specific 554 Include support for BUGBase 1.3 platform. This includes specific
555 configurations for the board and its peripherals. 555 configurations for the board and its peripherals.
@@ -565,7 +565,6 @@ comment "MX35 platforms:"
565 565
566config MACH_PCM043 566config MACH_PCM043
567 bool "Support Phytec pcm043 (i.MX35) platforms" 567 bool "Support Phytec pcm043 (i.MX35) platforms"
568 select SOC_IMX35
569 select IMX_HAVE_PLATFORM_FLEXCAN 568 select IMX_HAVE_PLATFORM_FLEXCAN
570 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 569 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
571 select IMX_HAVE_PLATFORM_IMX2_WDT 570 select IMX_HAVE_PLATFORM_IMX2_WDT
@@ -577,14 +576,13 @@ config MACH_PCM043
577 select IMX_HAVE_PLATFORM_MXC_NAND 576 select IMX_HAVE_PLATFORM_MXC_NAND
578 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 577 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
579 select MXC_ULPI if USB_ULPI 578 select MXC_ULPI if USB_ULPI
579 select SOC_IMX35
580 help 580 help
581 Include support for Phytec pcm043 platform. This includes 581 Include support for Phytec pcm043 platform. This includes
582 specific configurations for the board and its peripherals. 582 specific configurations for the board and its peripherals.
583 583
584config MACH_MX35_3DS 584config MACH_MX35_3DS
585 bool "Support MX35PDK platform" 585 bool "Support MX35PDK platform"
586 select SOC_IMX35
587 select MXC_DEBUG_BOARD
588 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 586 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
589 select IMX_HAVE_PLATFORM_IMX2_WDT 587 select IMX_HAVE_PLATFORM_IMX2_WDT
590 select IMX_HAVE_PLATFORM_IMX_FB 588 select IMX_HAVE_PLATFORM_IMX_FB
@@ -595,13 +593,14 @@ config MACH_MX35_3DS
595 select IMX_HAVE_PLATFORM_MXC_NAND 593 select IMX_HAVE_PLATFORM_MXC_NAND
596 select IMX_HAVE_PLATFORM_MXC_RTC 594 select IMX_HAVE_PLATFORM_MXC_RTC
597 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 595 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
596 select MXC_DEBUG_BOARD
597 select SOC_IMX35
598 help 598 help
599 Include support for MX35PDK platform. This includes specific 599 Include support for MX35PDK platform. This includes specific
600 configurations for the board and its peripherals. 600 configurations for the board and its peripherals.
601 601
602config MACH_EUKREA_CPUIMX35SD 602config MACH_EUKREA_CPUIMX35SD
603 bool "Support Eukrea CPUIMX35 Platform" 603 bool "Support Eukrea CPUIMX35 Platform"
604 select SOC_IMX35
605 select IMX_HAVE_PLATFORM_FLEXCAN 604 select IMX_HAVE_PLATFORM_FLEXCAN
606 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 605 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
607 select IMX_HAVE_PLATFORM_IMX2_WDT 606 select IMX_HAVE_PLATFORM_IMX2_WDT
@@ -611,6 +610,7 @@ config MACH_EUKREA_CPUIMX35SD
611 select IMX_HAVE_PLATFORM_MXC_NAND 610 select IMX_HAVE_PLATFORM_MXC_NAND
612 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 611 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
613 select MXC_ULPI if USB_ULPI 612 select MXC_ULPI if USB_ULPI
613 select SOC_IMX35
614 help 614 help
615 Include support for Eukrea CPUIMX35 platform. This includes 615 Include support for Eukrea CPUIMX35 platform. This includes
616 specific configurations for the board and its peripherals. 616 specific configurations for the board and its peripherals.
@@ -635,16 +635,16 @@ endchoice
635 635
636config MACH_VPR200 636config MACH_VPR200
637 bool "Support VPR200 platform" 637 bool "Support VPR200 platform"
638 select SOC_IMX35
639 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 638 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
640 select IMX_HAVE_PLATFORM_GPIO_KEYS 639 select IMX_HAVE_PLATFORM_GPIO_KEYS
641 select IMX_HAVE_PLATFORM_IMX2_WDT 640 select IMX_HAVE_PLATFORM_IMX2_WDT
642 select IMX_HAVE_PLATFORM_IMX_UART
643 select IMX_HAVE_PLATFORM_IMX_I2C 641 select IMX_HAVE_PLATFORM_IMX_I2C
642 select IMX_HAVE_PLATFORM_IMX_UART
644 select IMX_HAVE_PLATFORM_IPU_CORE 643 select IMX_HAVE_PLATFORM_IPU_CORE
645 select IMX_HAVE_PLATFORM_MXC_EHCI 644 select IMX_HAVE_PLATFORM_MXC_EHCI
646 select IMX_HAVE_PLATFORM_MXC_NAND 645 select IMX_HAVE_PLATFORM_MXC_NAND
647 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 646 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
647 select SOC_IMX35
648 help 648 help
649 Include support for VPR200 platform. This includes specific 649 Include support for VPR200 platform. This includes specific
650 configurations for the board and its peripherals. 650 configurations for the board and its peripherals.
@@ -654,11 +654,11 @@ comment "i.MX5 platforms:"
654config MACH_MX50_RDP 654config MACH_MX50_RDP
655 bool "Support MX50 reference design platform" 655 bool "Support MX50 reference design platform"
656 depends on BROKEN 656 depends on BROKEN
657 select SOC_IMX50
658 select IMX_HAVE_PLATFORM_IMX_I2C 657 select IMX_HAVE_PLATFORM_IMX_I2C
659 select IMX_HAVE_PLATFORM_IMX_UART 658 select IMX_HAVE_PLATFORM_IMX_UART
660 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 659 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
661 select IMX_HAVE_PLATFORM_SPI_IMX 660 select IMX_HAVE_PLATFORM_SPI_IMX
661 select SOC_IMX50
662 help 662 help
663 Include support for MX50 reference design platform (RDP) board. This 663 Include support for MX50 reference design platform (RDP) board. This
664 includes specific configurations for the board and its peripherals. 664 includes specific configurations for the board and its peripherals.
@@ -667,15 +667,14 @@ comment "i.MX51 machines:"
667 667
668config MACH_IMX51_DT 668config MACH_IMX51_DT
669 bool "Support i.MX51 platforms from device tree" 669 bool "Support i.MX51 platforms from device tree"
670 select SOC_IMX51
671 select MACH_MX51_BABBAGE 670 select MACH_MX51_BABBAGE
671 select SOC_IMX51
672 help 672 help
673 Include support for Freescale i.MX51 based platforms 673 Include support for Freescale i.MX51 based platforms
674 using the device tree for discovery 674 using the device tree for discovery
675 675
676config MACH_MX51_BABBAGE 676config MACH_MX51_BABBAGE
677 bool "Support MX51 BABBAGE platforms" 677 bool "Support MX51 BABBAGE platforms"
678 select SOC_IMX51
679 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 678 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
680 select IMX_HAVE_PLATFORM_IMX2_WDT 679 select IMX_HAVE_PLATFORM_IMX2_WDT
681 select IMX_HAVE_PLATFORM_IMX_I2C 680 select IMX_HAVE_PLATFORM_IMX_I2C
@@ -683,6 +682,7 @@ config MACH_MX51_BABBAGE
683 select IMX_HAVE_PLATFORM_MXC_EHCI 682 select IMX_HAVE_PLATFORM_MXC_EHCI
684 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 683 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
685 select IMX_HAVE_PLATFORM_SPI_IMX 684 select IMX_HAVE_PLATFORM_SPI_IMX
685 select SOC_IMX51
686 help 686 help
687 Include support for MX51 Babbage platform, also known as MX51EVK in 687 Include support for MX51 Babbage platform, also known as MX51EVK in
688 u-boot. This includes specific configurations for the board and its 688 u-boot. This includes specific configurations for the board and its
@@ -690,27 +690,27 @@ config MACH_MX51_BABBAGE
690 690
691config MACH_MX51_3DS 691config MACH_MX51_3DS
692 bool "Support MX51PDK (3DS)" 692 bool "Support MX51PDK (3DS)"
693 select SOC_IMX51
694 select IMX_HAVE_PLATFORM_IMX2_WDT 693 select IMX_HAVE_PLATFORM_IMX2_WDT
695 select IMX_HAVE_PLATFORM_IMX_KEYPAD 694 select IMX_HAVE_PLATFORM_IMX_KEYPAD
696 select IMX_HAVE_PLATFORM_IMX_UART 695 select IMX_HAVE_PLATFORM_IMX_UART
697 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX 696 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
698 select IMX_HAVE_PLATFORM_SPI_IMX 697 select IMX_HAVE_PLATFORM_SPI_IMX
699 select MXC_DEBUG_BOARD 698 select MXC_DEBUG_BOARD
699 select SOC_IMX51
700 help 700 help
701 Include support for MX51PDK (3DS) platform. This includes specific 701 Include support for MX51PDK (3DS) platform. This includes specific
702 configurations for the board and its peripherals. 702 configurations for the board and its peripherals.
703 703
704config MACH_EUKREA_CPUIMX51SD 704config MACH_EUKREA_CPUIMX51SD
705 bool "Support Eukrea CPUIMX51SD module" 705 bool "Support Eukrea CPUIMX51SD module"
706 select SOC_IMX51
707 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 706 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
707 select IMX_HAVE_PLATFORM_IMX2_WDT
708 select IMX_HAVE_PLATFORM_IMX_I2C 708 select IMX_HAVE_PLATFORM_IMX_I2C
709 select IMX_HAVE_PLATFORM_IMX_UART 709 select IMX_HAVE_PLATFORM_IMX_UART
710 select IMX_HAVE_PLATFORM_IMX2_WDT
711 select IMX_HAVE_PLATFORM_MXC_EHCI 710 select IMX_HAVE_PLATFORM_MXC_EHCI
712 select IMX_HAVE_PLATFORM_MXC_NAND 711 select IMX_HAVE_PLATFORM_MXC_NAND
713 select IMX_HAVE_PLATFORM_SPI_IMX 712 select IMX_HAVE_PLATFORM_SPI_IMX
713 select SOC_IMX51
714 help 714 help
715 Include support for Eukrea CPUIMX51SD platform. This includes 715 Include support for Eukrea CPUIMX51SD platform. This includes
716 specific configurations for the module and its peripherals. 716 specific configurations for the module and its peripherals.
@@ -736,12 +736,12 @@ comment "Device tree only"
736 736
737config SOC_IMX53 737config SOC_IMX53
738 bool "i.MX53 support" 738 bool "i.MX53 support"
739 select SOC_IMX5
740 select ARCH_MX5 739 select ARCH_MX5
741 select ARCH_MX53 740 select ARCH_MX53
742 select HAVE_CAN_FLEXCAN if CAN 741 select HAVE_CAN_FLEXCAN if CAN
743 select PINCTRL 742 select PINCTRL
744 select PINCTRL_IMX53 743 select PINCTRL_IMX53
744 select SOC_IMX5
745 745
746 help 746 help
747 This enables support for Freescale i.MX53 processor. 747 This enables support for Freescale i.MX53 processor.
diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig
index fd5e7b6881bf..73a2d905af8a 100644
--- a/arch/arm/mach-ixp4xx/Kconfig
+++ b/arch/arm/mach-ixp4xx/Kconfig
@@ -234,8 +234,8 @@ config IXP4XX_QMGR
234 234
235config IXP4XX_NPE 235config IXP4XX_NPE
236 tristate "IXP4xx Network Processor Engine support" 236 tristate "IXP4xx Network Processor Engine support"
237 select HOTPLUG
238 select FW_LOADER 237 select FW_LOADER
238 select HOTPLUG
239 help 239 help
240 This driver supports IXP4xx built-in network coprocessors 240 This driver supports IXP4xx built-in network coprocessors
241 and is automatically selected by Ethernet and HSS drivers. 241 and is automatically selected by Ethernet and HSS drivers.
diff --git a/arch/arm/mach-mmp/Kconfig b/arch/arm/mach-mmp/Kconfig
index d697d07a1bf0..178d4daa5e1d 100644
--- a/arch/arm/mach-mmp/Kconfig
+++ b/arch/arm/mach-mmp/Kconfig
@@ -107,22 +107,22 @@ endmenu
107 107
108config CPU_PXA168 108config CPU_PXA168
109 bool 109 bool
110 select CPU_MOHAWK
111 select COMMON_CLK 110 select COMMON_CLK
111 select CPU_MOHAWK
112 help 112 help
113 Select code specific to PXA168 113 Select code specific to PXA168
114 114
115config CPU_PXA910 115config CPU_PXA910
116 bool 116 bool
117 select CPU_MOHAWK
118 select COMMON_CLK 117 select COMMON_CLK
118 select CPU_MOHAWK
119 help 119 help
120 Select code specific to PXA910 120 Select code specific to PXA910
121 121
122config CPU_MMP2 122config CPU_MMP2
123 bool 123 bool
124 select CPU_PJ4
125 select COMMON_CLK 124 select COMMON_CLK
125 select CPU_PJ4
126 help 126 help
127 Select code specific to MMP2. MMP2 is ARMv7 compatible. 127 Select code specific to MMP2. MMP2 is ARMv7 compatible.
128 128
diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 7902de151cc5..b61908594b47 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -10,35 +10,35 @@ choice
10 10
11config ARCH_MSM7X00A 11config ARCH_MSM7X00A
12 bool "MSM7x00A / MSM7x01A" 12 bool "MSM7x00A / MSM7x01A"
13 select MACH_TROUT if !MACH_HALIBUT
14 select ARCH_MSM_ARM11 13 select ARCH_MSM_ARM11
15 select MSM_SMD
16 select MSM_SMD_PKG3
17 select CPU_V6 14 select CPU_V6
18 select GPIO_MSM_V1 15 select GPIO_MSM_V1
16 select MACH_TROUT if !MACH_HALIBUT
19 select MSM_PROC_COMM 17 select MSM_PROC_COMM
18 select MSM_SMD
19 select MSM_SMD_PKG3
20 20
21config ARCH_MSM7X30 21config ARCH_MSM7X30
22 bool "MSM7x30" 22 bool "MSM7x30"
23 select MACH_MSM7X30_SURF # if !
24 select ARCH_MSM_SCORPION 23 select ARCH_MSM_SCORPION
25 select MSM_SMD
26 select MSM_VIC
27 select CPU_V7 24 select CPU_V7
28 select MSM_GPIOMUX
29 select GPIO_MSM_V1 25 select GPIO_MSM_V1
26 select MACH_MSM7X30_SURF # if !
27 select MSM_GPIOMUX
30 select MSM_PROC_COMM 28 select MSM_PROC_COMM
29 select MSM_SMD
30 select MSM_VIC
31 31
32config ARCH_QSD8X50 32config ARCH_QSD8X50
33 bool "QSD8X50" 33 bool "QSD8X50"
34 select MACH_QSD8X50_SURF if !MACH_QSD8X50A_ST1_5
35 select ARCH_MSM_SCORPION 34 select ARCH_MSM_SCORPION
36 select MSM_SMD
37 select MSM_VIC
38 select CPU_V7 35 select CPU_V7
39 select MSM_GPIOMUX
40 select GPIO_MSM_V1 36 select GPIO_MSM_V1
37 select MACH_QSD8X50_SURF if !MACH_QSD8X50A_ST1_5
38 select MSM_GPIOMUX
41 select MSM_PROC_COMM 39 select MSM_PROC_COMM
40 select MSM_SMD
41 select MSM_VIC
42 42
43endchoice 43endchoice
44 44
@@ -47,10 +47,10 @@ config ARCH_MSM8X60
47 select ARCH_MSM_SCORPIONMP 47 select ARCH_MSM_SCORPIONMP
48 select ARM_GIC 48 select ARM_GIC
49 select CPU_V7 49 select CPU_V7
50 select MSM_V2_TLMM
51 select GPIO_MSM_V2 50 select GPIO_MSM_V2
52 select MSM_GPIOMUX 51 select MSM_GPIOMUX
53 select MSM_SCM if SMP 52 select MSM_SCM if SMP
53 select MSM_V2_TLMM
54 select USE_OF 54 select USE_OF
55 55
56config ARCH_MSM8960 56config ARCH_MSM8960
@@ -58,9 +58,9 @@ config ARCH_MSM8960
58 select ARCH_MSM_SCORPIONMP 58 select ARCH_MSM_SCORPIONMP
59 select ARM_GIC 59 select ARM_GIC
60 select CPU_V7 60 select CPU_V7
61 select MSM_V2_TLMM
62 select MSM_GPIOMUX 61 select MSM_GPIOMUX
63 select MSM_SCM if SMP 62 select MSM_SCM if SMP
63 select MSM_V2_TLMM
64 select USE_OF 64 select USE_OF
65 65
66config MSM_HAS_DEBUG_UART_HS 66config MSM_HAS_DEBUG_UART_HS
@@ -110,8 +110,8 @@ config MACH_QSD8X50_SURF
110 110
111config MACH_QSD8X50A_ST1_5 111config MACH_QSD8X50A_ST1_5
112 depends on ARCH_QSD8X50 112 depends on ARCH_QSD8X50
113 select MSM_SOC_REV_A
114 bool "QSD8x50A ST1.5" 113 bool "QSD8x50A ST1.5"
114 select MSM_SOC_REV_A
115 help 115 help
116 Support for the Qualcomm ST1.5. 116 Support for the Qualcomm ST1.5.
117 117
diff --git a/arch/arm/mach-nomadik/Kconfig b/arch/arm/mach-nomadik/Kconfig
index 365879b47c0e..c744946ef022 100644
--- a/arch/arm/mach-nomadik/Kconfig
+++ b/arch/arm/mach-nomadik/Kconfig
@@ -4,8 +4,8 @@ menu "Nomadik boards"
4 4
5config MACH_NOMADIK_8815NHK 5config MACH_NOMADIK_8815NHK
6 bool "ST 8815 Nomadik Hardware Kit (evaluation board)" 6 bool "ST 8815 Nomadik Hardware Kit (evaluation board)"
7 select NOMADIK_8815
8 select HAS_MTU 7 select HAS_MTU
8 select NOMADIK_8815
9 9
10endmenu 10endmenu
11 11
@@ -16,7 +16,7 @@ config I2C_BITBANG_8815NHK
16 tristate "Driver for bit-bang busses found on the 8815 NHK" 16 tristate "Driver for bit-bang busses found on the 8815 NHK"
17 depends on I2C && MACH_NOMADIK_8815NHK 17 depends on I2C && MACH_NOMADIK_8815NHK
18 depends on PINCTRL_NOMADIK 18 depends on PINCTRL_NOMADIK
19 select I2C_ALGOBIT
20 default y 19 default y
20 select I2C_ALGOBIT
21 21
22endif 22endif
diff --git a/arch/arm/mach-omap1/Kconfig b/arch/arm/mach-omap1/Kconfig
index cba3f7191cfc..903da8eb886c 100644
--- a/arch/arm/mach-omap1/Kconfig
+++ b/arch/arm/mach-omap1/Kconfig
@@ -8,15 +8,15 @@ comment "OMAP Core Type"
8config ARCH_OMAP730 8config ARCH_OMAP730
9 depends on ARCH_OMAP1 9 depends on ARCH_OMAP1
10 bool "OMAP730 Based System" 10 bool "OMAP730 Based System"
11 select ARCH_OMAP_OTG
11 select CPU_ARM926T 12 select CPU_ARM926T
12 select OMAP_MPU_TIMER 13 select OMAP_MPU_TIMER
13 select ARCH_OMAP_OTG
14 14
15config ARCH_OMAP850 15config ARCH_OMAP850
16 depends on ARCH_OMAP1 16 depends on ARCH_OMAP1
17 bool "OMAP850 Based System" 17 bool "OMAP850 Based System"
18 select CPU_ARM926T
19 select ARCH_OMAP_OTG 18 select ARCH_OMAP_OTG
19 select CPU_ARM926T
20 20
21config ARCH_OMAP15XX 21config ARCH_OMAP15XX
22 depends on ARCH_OMAP1 22 depends on ARCH_OMAP1
@@ -28,8 +28,8 @@ config ARCH_OMAP15XX
28config ARCH_OMAP16XX 28config ARCH_OMAP16XX
29 depends on ARCH_OMAP1 29 depends on ARCH_OMAP1
30 bool "OMAP16xx Based System" 30 bool "OMAP16xx Based System"
31 select CPU_ARM926T
32 select ARCH_OMAP_OTG 31 select ARCH_OMAP_OTG
32 select CPU_ARM926T
33 33
34comment "OMAP Board Type" 34comment "OMAP Board Type"
35 depends on ARCH_OMAP1 35 depends on ARCH_OMAP1
@@ -132,8 +132,8 @@ config MACH_OMAP_PALMTT
132 132
133config MACH_SX1 133config MACH_SX1
134 bool "Siemens SX1" 134 bool "Siemens SX1"
135 select I2C
136 depends on ARCH_OMAP1 && ARCH_OMAP15XX 135 depends on ARCH_OMAP1 && ARCH_OMAP15XX
136 select I2C
137 help 137 help
138 Support for the Siemens SX1 phone. To boot the kernel, 138 Support for the Siemens SX1 phone. To boot the kernel,
139 you'll need a SX1 compatible bootloader; check out 139 you'll need a SX1 compatible bootloader; check out
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index a6219eaf1f68..2a1a898c7f90 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -6,19 +6,19 @@ config ARCH_OMAP2PLUS_TYPICAL
6 bool "Typical OMAP configuration" 6 bool "Typical OMAP configuration"
7 default y 7 default y
8 select AEABI 8 select AEABI
9 select REGULATOR 9 select HIGHMEM
10 select PM_RUNTIME
11 select VFP
12 select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
13 select SERIAL_OMAP
14 select SERIAL_OMAP_CONSOLE
15 select I2C 10 select I2C
16 select I2C_OMAP 11 select I2C_OMAP
17 select MENELAUS if ARCH_OMAP2 12 select MENELAUS if ARCH_OMAP2
13 select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
14 select PINCTRL
15 select PM_RUNTIME
16 select REGULATOR
17 select SERIAL_OMAP
18 select SERIAL_OMAP_CONSOLE
18 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4 19 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
19 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4 20 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
20 select HIGHMEM 21 select VFP
21 select PINCTRL
22 help 22 help
23 Compile a kernel suitable for booting most boards 23 Compile a kernel suitable for booting most boards
24 24
@@ -40,44 +40,44 @@ config ARCH_OMAP3
40 bool "TI OMAP3" 40 bool "TI OMAP3"
41 depends on ARCH_OMAP2PLUS 41 depends on ARCH_OMAP2PLUS
42 default y 42 default y
43 select CPU_V7
44 select USB_ARCH_HAS_EHCI if USB_SUPPORT
45 select ARCH_HAS_OPP 43 select ARCH_HAS_OPP
46 select PM_RUNTIME if CPU_IDLE
47 select PM_OPP if PM
48 select ARM_CPU_SUSPEND if PM 44 select ARM_CPU_SUSPEND if PM
45 select CPU_V7
49 select MULTI_IRQ_HANDLER 46 select MULTI_IRQ_HANDLER
50 select SOC_HAS_OMAP2_SDRC
51 select OMAP_INTERCONNECT 47 select OMAP_INTERCONNECT
48 select PM_OPP if PM
49 select PM_RUNTIME if CPU_IDLE
50 select SOC_HAS_OMAP2_SDRC
51 select USB_ARCH_HAS_EHCI if USB_SUPPORT
52 52
53config ARCH_OMAP4 53config ARCH_OMAP4
54 bool "TI OMAP4" 54 bool "TI OMAP4"
55 default y 55 default y
56 depends on ARCH_OMAP2PLUS 56 depends on ARCH_OMAP2PLUS
57 select ARCH_HAS_OPP
58 select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
59 select ARM_CPU_SUSPEND if PM
60 select ARM_ERRATA_720789
61 select ARM_GIC
57 select CACHE_L2X0 62 select CACHE_L2X0
58 select CPU_V7 63 select CPU_V7
59 select ARM_GIC
60 select HAVE_SMP 64 select HAVE_SMP
61 select LOCAL_TIMERS if SMP 65 select LOCAL_TIMERS if SMP
66 select OMAP_INTERCONNECT
62 select PL310_ERRATA_588369 67 select PL310_ERRATA_588369
63 select PL310_ERRATA_727915 68 select PL310_ERRATA_727915
64 select ARM_ERRATA_720789
65 select ARCH_HAS_OPP
66 select PM_RUNTIME if CPU_IDLE
67 select PM_OPP if PM 69 select PM_OPP if PM
70 select PM_RUNTIME if CPU_IDLE
68 select USB_ARCH_HAS_EHCI if USB_SUPPORT 71 select USB_ARCH_HAS_EHCI if USB_SUPPORT
69 select ARM_CPU_SUSPEND if PM
70 select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
71 select OMAP_INTERCONNECT
72 72
73config SOC_OMAP5 73config SOC_OMAP5
74 bool "TI OMAP5" 74 bool "TI OMAP5"
75 select CPU_V7 75 select ARM_ARCH_TIMER
76 select ARM_CPU_SUSPEND if PM
76 select ARM_GIC 77 select ARM_GIC
78 select CPU_V7
77 select HAVE_SMP 79 select HAVE_SMP
78 select ARM_CPU_SUSPEND if PM
79 select SOC_HAS_REALTIME_COUNTER 80 select SOC_HAS_REALTIME_COUNTER
80 select ARM_ARCH_TIMER
81 81
82comment "OMAP Core Type" 82comment "OMAP Core Type"
83 depends on ARCH_OMAP2 83 depends on ARCH_OMAP2
@@ -109,8 +109,8 @@ config SOC_TI81XX
109config SOC_AM33XX 109config SOC_AM33XX
110 bool "AM33XX support" 110 bool "AM33XX support"
111 default y 111 default y
112 select CPU_V7
113 select ARM_CPU_SUSPEND if PM 112 select ARM_CPU_SUSPEND if PM
113 select CPU_V7
114 select MULTI_IRQ_HANDLER 114 select MULTI_IRQ_HANDLER
115 115
116config OMAP_PACKAGE_ZAF 116config OMAP_PACKAGE_ZAF
@@ -157,8 +157,8 @@ config MACH_OMAP_H4
157 bool "OMAP 2420 H4 board" 157 bool "OMAP 2420 H4 board"
158 depends on SOC_OMAP2420 158 depends on SOC_OMAP2420
159 default y 159 default y
160 select OMAP_PACKAGE_ZAF
161 select OMAP_DEBUG_DEVICES 160 select OMAP_DEBUG_DEVICES
161 select OMAP_PACKAGE_ZAF
162 162
163config MACH_OMAP_APOLLON 163config MACH_OMAP_APOLLON
164 bool "OMAP 2420 Apollon board" 164 bool "OMAP 2420 Apollon board"
@@ -193,8 +193,8 @@ config MACH_OMAP_LDP
193config MACH_OMAP3530_LV_SOM 193config MACH_OMAP3530_LV_SOM
194 bool "OMAP3 Logic 3530 LV SOM board" 194 bool "OMAP3 Logic 3530 LV SOM board"
195 depends on ARCH_OMAP3 195 depends on ARCH_OMAP3
196 select OMAP_PACKAGE_CBB
197 default y 196 default y
197 select OMAP_PACKAGE_CBB
198 help 198 help
199 Support for the LogicPD OMAP3530 SOM Development kit 199 Support for the LogicPD OMAP3530 SOM Development kit
200 for full description please see the products webpage at 200 for full description please see the products webpage at
@@ -203,8 +203,8 @@ config MACH_OMAP3530_LV_SOM
203config MACH_OMAP3_TORPEDO 203config MACH_OMAP3_TORPEDO
204 bool "OMAP3 Logic 35x Torpedo board" 204 bool "OMAP3 Logic 35x Torpedo board"
205 depends on ARCH_OMAP3 205 depends on ARCH_OMAP3
206 select OMAP_PACKAGE_CBB
207 default y 206 default y
207 select OMAP_PACKAGE_CBB
208 help 208 help
209 Support for the LogicPD OMAP35x Torpedo Development kit 209 Support for the LogicPD OMAP35x Torpedo Development kit
210 for full description please see the products webpage at 210 for full description please see the products webpage at
@@ -265,17 +265,17 @@ config MACH_NOKIA_N8X0
265 bool "Nokia N800/N810" 265 bool "Nokia N800/N810"
266 depends on SOC_OMAP2420 266 depends on SOC_OMAP2420
267 default y 267 default y
268 select OMAP_PACKAGE_ZAC
269 select MACH_NOKIA_N800 268 select MACH_NOKIA_N800
270 select MACH_NOKIA_N810 269 select MACH_NOKIA_N810
271 select MACH_NOKIA_N810_WIMAX 270 select MACH_NOKIA_N810_WIMAX
271 select OMAP_PACKAGE_ZAC
272 272
273config MACH_NOKIA_RM680 273config MACH_NOKIA_RM680
274 bool "Nokia RM-680/696 board" 274 bool "Nokia RM-680/696 board"
275 depends on ARCH_OMAP3 275 depends on ARCH_OMAP3
276 default y 276 default y
277 select OMAP_PACKAGE_CBB
278 select MACH_NOKIA_RM696 277 select MACH_NOKIA_RM696
278 select OMAP_PACKAGE_CBB
279 279
280config MACH_NOKIA_RX51 280config MACH_NOKIA_RX51
281 bool "Nokia RX-51 board" 281 bool "Nokia RX-51 board"
@@ -288,20 +288,20 @@ config MACH_OMAP_ZOOM2
288 depends on ARCH_OMAP3 288 depends on ARCH_OMAP3
289 default y 289 default y
290 select OMAP_PACKAGE_CBB 290 select OMAP_PACKAGE_CBB
291 select REGULATOR_FIXED_VOLTAGE if REGULATOR
291 select SERIAL_8250 292 select SERIAL_8250
292 select SERIAL_CORE_CONSOLE
293 select SERIAL_8250_CONSOLE 293 select SERIAL_8250_CONSOLE
294 select REGULATOR_FIXED_VOLTAGE if REGULATOR 294 select SERIAL_CORE_CONSOLE
295 295
296config MACH_OMAP_ZOOM3 296config MACH_OMAP_ZOOM3
297 bool "OMAP3630 Zoom3 board" 297 bool "OMAP3630 Zoom3 board"
298 depends on ARCH_OMAP3 298 depends on ARCH_OMAP3
299 default y 299 default y
300 select OMAP_PACKAGE_CBP 300 select OMAP_PACKAGE_CBP
301 select REGULATOR_FIXED_VOLTAGE if REGULATOR
301 select SERIAL_8250 302 select SERIAL_8250
302 select SERIAL_CORE_CONSOLE
303 select SERIAL_8250_CONSOLE 303 select SERIAL_8250_CONSOLE
304 select REGULATOR_FIXED_VOLTAGE if REGULATOR 304 select SERIAL_CORE_CONSOLE
305 305
306config MACH_CM_T35 306config MACH_CM_T35
307 bool "CompuLab CM-T35/CM-T3730 modules" 307 bool "CompuLab CM-T35/CM-T3730 modules"
@@ -329,8 +329,8 @@ config MACH_IGEP0030
329 bool "IGEP OMAP3 module" 329 bool "IGEP OMAP3 module"
330 depends on ARCH_OMAP3 330 depends on ARCH_OMAP3
331 default y 331 default y
332 select OMAP_PACKAGE_CBB
333 select MACH_IGEP0020 332 select MACH_IGEP0020
333 select OMAP_PACKAGE_CBB
334 334
335config MACH_SBC3530 335config MACH_SBC3530
336 bool "OMAP3 SBC STALKER board" 336 bool "OMAP3 SBC STALKER board"
diff --git a/arch/arm/mach-prima2/Kconfig b/arch/arm/mach-prima2/Kconfig
index 41fc85327673..558ccfb8d458 100644
--- a/arch/arm/mach-prima2/Kconfig
+++ b/arch/arm/mach-prima2/Kconfig
@@ -6,8 +6,8 @@ config ARCH_PRIMA2
6 bool "CSR SiRFSoC PRIMA2 ARM Cortex A9 Platform" 6 bool "CSR SiRFSoC PRIMA2 ARM Cortex A9 Platform"
7 default y 7 default y
8 select CPU_V7 8 select CPU_V7
9 select ZONE_DMA
10 select SIRF_IRQ 9 select SIRF_IRQ
10 select ZONE_DMA
11 help 11 help
12 Support for CSR SiRFSoC ARM Cortex A9 Platform 12 Support for CSR SiRFSoC ARM Cortex A9 Platform
13 13
diff --git a/arch/arm/mach-pxa/Kconfig b/arch/arm/mach-pxa/Kconfig
index 8e6288de69b9..11aa7399dc09 100644
--- a/arch/arm/mach-pxa/Kconfig
+++ b/arch/arm/mach-pxa/Kconfig
@@ -27,10 +27,10 @@ comment "Intel/Marvell Dev Platforms (sorted by hardware release time)"
27 27
28config MACH_PXA3XX_DT 28config MACH_PXA3XX_DT
29 bool "Support PXA3xx platforms from device tree" 29 bool "Support PXA3xx platforms from device tree"
30 select PXA3xx
31 select CPU_PXA300 30 select CPU_PXA300
32 select POWER_SUPPLY
33 select HAVE_PWM 31 select HAVE_PWM
32 select POWER_SUPPLY
33 select PXA3xx
34 select USE_OF 34 select USE_OF
35 help 35 help
36 Include support for Marvell PXA3xx based platforms using 36 Include support for Marvell PXA3xx based platforms using
@@ -44,13 +44,13 @@ config ARCH_LUBBOCK
44 44
45config MACH_MAINSTONE 45config MACH_MAINSTONE
46 bool "Intel HCDDBBVA0 Development Platform (aka Mainstone)" 46 bool "Intel HCDDBBVA0 Development Platform (aka Mainstone)"
47 select PXA27x
48 select HAVE_PWM 47 select HAVE_PWM
48 select PXA27x
49 49
50config MACH_ZYLONITE 50config MACH_ZYLONITE
51 bool 51 bool
52 select PXA3xx
53 select HAVE_PWM 52 select HAVE_PWM
53 select PXA3xx
54 54
55config MACH_ZYLONITE300 55config MACH_ZYLONITE300
56 bool "PXA3xx Development Platform (aka Zylonite) PXA300/310" 56 bool "PXA3xx Development Platform (aka Zylonite) PXA300/310"
@@ -65,19 +65,19 @@ config MACH_ZYLONITE320
65 65
66config MACH_LITTLETON 66config MACH_LITTLETON
67 bool "PXA3xx Form Factor Platform (aka Littleton)" 67 bool "PXA3xx Form Factor Platform (aka Littleton)"
68 select PXA3xx
69 select CPU_PXA300 68 select CPU_PXA300
70 select CPU_PXA310 69 select CPU_PXA310
70 select PXA3xx
71 71
72config MACH_TAVOREVB 72config MACH_TAVOREVB
73 bool "PXA930 Evaluation Board (aka TavorEVB)" 73 bool "PXA930 Evaluation Board (aka TavorEVB)"
74 select PXA3xx
75 select CPU_PXA930 74 select CPU_PXA930
75 select PXA3xx
76 76
77config MACH_SAAR 77config MACH_SAAR
78 bool "PXA930 Handheld Platform (aka SAAR)" 78 bool "PXA930 Handheld Platform (aka SAAR)"
79 select PXA3xx
80 select CPU_PXA930 79 select CPU_PXA930
80 select PXA3xx
81 81
82comment "Third Party Dev Platforms (sorted by vendor name)" 82comment "Third Party Dev Platforms (sorted by vendor name)"
83 83
@@ -87,29 +87,29 @@ config ARCH_PXA_IDP
87 87
88config ARCH_VIPER 88config ARCH_VIPER
89 bool "Arcom/Eurotech VIPER SBC" 89 bool "Arcom/Eurotech VIPER SBC"
90 select PXA25x 90 select ARCOM_PCMCIA
91 select ISA
92 select I2C_GPIO
93 select HAVE_PWM 91 select HAVE_PWM
92 select I2C_GPIO
93 select ISA
94 select PXA25x
94 select PXA_HAVE_ISA_IRQS 95 select PXA_HAVE_ISA_IRQS
95 select ARCOM_PCMCIA
96 96
97config MACH_ARCOM_ZEUS 97config MACH_ARCOM_ZEUS
98 bool "Arcom/Eurotech ZEUS SBC" 98 bool "Arcom/Eurotech ZEUS SBC"
99 select PXA27x 99 select ARCOM_PCMCIA
100 select ISA 100 select ISA
101 select PXA27x
101 select PXA_HAVE_ISA_IRQS 102 select PXA_HAVE_ISA_IRQS
102 select ARCOM_PCMCIA
103 103
104config MACH_BALLOON3 104config MACH_BALLOON3
105 bool "Balloon 3 board" 105 bool "Balloon 3 board"
106 select PXA27x
107 select IWMMXT 106 select IWMMXT
107 select PXA27x
108 108
109config MACH_CSB726 109config MACH_CSB726
110 bool "Enable Cogent CSB726 System On a Module" 110 bool "Enable Cogent CSB726 System On a Module"
111 select PXA27x
112 select IWMMXT 111 select IWMMXT
112 select PXA27x
113 help 113 help
114 Say Y here if you intend to run this kernel on a Cogent 114 Say Y here if you intend to run this kernel on a Cogent
115 CSB726 System On Module. 115 CSB726 System On Module.
@@ -121,11 +121,11 @@ config CSB726_CSB701
121config MACH_ARMCORE 121config MACH_ARMCORE
122 bool "CompuLab CM-X255/CM-X270 modules" 122 bool "CompuLab CM-X255/CM-X270 modules"
123 select ARCH_HAS_DMA_SET_COHERENT_MASK if PCI 123 select ARCH_HAS_DMA_SET_COHERENT_MASK if PCI
124 select PXA27x
125 select IWMMXT 124 select IWMMXT
126 select PXA25x
127 select MIGHT_HAVE_PCI 125 select MIGHT_HAVE_PCI
128 select NEED_MACH_IO_H if PCI 126 select NEED_MACH_IO_H if PCI
127 select PXA25x
128 select PXA27x
129 129
130config MACH_EM_X270 130config MACH_EM_X270
131 bool "CompuLab EM-x270 platform" 131 bool "CompuLab EM-x270 platform"
@@ -137,10 +137,10 @@ config MACH_EXEDA
137 137
138config MACH_CM_X300 138config MACH_CM_X300
139 bool "CompuLab CM-X300 modules" 139 bool "CompuLab CM-X300 modules"
140 select PXA3xx
141 select CPU_PXA300 140 select CPU_PXA300
142 select CPU_PXA310 141 select CPU_PXA310
143 select HAVE_PWM 142 select HAVE_PWM
143 select PXA3xx
144 144
145config MACH_CAPC7117 145config MACH_CAPC7117
146 bool "Embedian CAPC-7117 evaluation kit based on the MXM-8x10 CoM" 146 bool "Embedian CAPC-7117 evaluation kit based on the MXM-8x10 CoM"
@@ -168,22 +168,22 @@ endchoice
168 168
169config MACH_INTELMOTE2 169config MACH_INTELMOTE2
170 bool "Intel Mote 2 Platform" 170 bool "Intel Mote 2 Platform"
171 select PXA27x
172 select IWMMXT 171 select IWMMXT
172 select PXA27x
173 173
174config MACH_STARGATE2 174config MACH_STARGATE2
175 bool "Intel Stargate 2 Platform" 175 bool "Intel Stargate 2 Platform"
176 select PXA27x
177 select IWMMXT 176 select IWMMXT
177 select PXA27x
178 178
179config MACH_XCEP 179config MACH_XCEP
180 bool "Iskratel Electronics XCEP" 180 bool "Iskratel Electronics XCEP"
181 select PXA25x
182 select MTD 181 select MTD
183 select MTD_PHYSMAP
184 select MTD_CFI_INTELEXT
185 select MTD_CFI 182 select MTD_CFI
183 select MTD_CFI_INTELEXT
186 select MTD_CHAR 184 select MTD_CHAR
185 select MTD_PHYSMAP
186 select PXA25x
187 select SMC91X 187 select SMC91X
188 help 188 help
189 PXA255 based Single Board Computer with SMC 91C111 ethernet chip and 64 MB of flash. 189 PXA255 based Single Board Computer with SMC 91C111 ethernet chip and 64 MB of flash.
@@ -195,14 +195,14 @@ config TRIZEPS_PXA
195config MACH_TRIZEPS4 195config MACH_TRIZEPS4
196 bool "Keith und Koep Trizeps4 DIMM-Module" 196 bool "Keith und Koep Trizeps4 DIMM-Module"
197 depends on TRIZEPS_PXA 197 depends on TRIZEPS_PXA
198 select TRIZEPS_PCMCIA
199 select PXA27x 198 select PXA27x
199 select TRIZEPS_PCMCIA
200 200
201config MACH_TRIZEPS4WL 201config MACH_TRIZEPS4WL
202 bool "Keith und Koep Trizeps4-WL DIMM-Module" 202 bool "Keith und Koep Trizeps4-WL DIMM-Module"
203 depends on TRIZEPS_PXA 203 depends on TRIZEPS_PXA
204 select TRIZEPS_PCMCIA
205 select PXA27x 204 select PXA27x
205 select TRIZEPS_PCMCIA
206 206
207choice 207choice
208 prompt "Select base board for Trizeps module" 208 prompt "Select base board for Trizeps module"
@@ -231,18 +231,18 @@ config TRIZEPS_PCMCIA
231 231
232config MACH_LOGICPD_PXA270 232config MACH_LOGICPD_PXA270
233 bool "LogicPD PXA270 Card Engine Development Platform" 233 bool "LogicPD PXA270 Card Engine Development Platform"
234 select PXA27x
235 select HAVE_PWM 234 select HAVE_PWM
235 select PXA27x
236 236
237config MACH_PCM027 237config MACH_PCM027
238 bool "Phytec phyCORE-PXA270 CPU module (PCM-027)" 238 bool "Phytec phyCORE-PXA270 CPU module (PCM-027)"
239 select PXA27x
240 select IWMMXT 239 select IWMMXT
240 select PXA27x
241 241
242config MACH_PCM990_BASEBOARD 242config MACH_PCM990_BASEBOARD
243 bool "PHYTEC PCM-990 development board" 243 bool "PHYTEC PCM-990 development board"
244 select HAVE_PWM
245 depends on MACH_PCM027 244 depends on MACH_PCM027
245 select HAVE_PWM
246 246
247choice 247choice
248 prompt "display on pcm990" 248 prompt "display on pcm990"
@@ -266,19 +266,19 @@ config MACH_COLIBRI
266config MACH_COLIBRI_PXA270_INCOME 266config MACH_COLIBRI_PXA270_INCOME
267 bool "Income s.r.o. PXA270 SBC" 267 bool "Income s.r.o. PXA270 SBC"
268 depends on MACH_COLIBRI 268 depends on MACH_COLIBRI
269 select PXA27x
270 select HAVE_PWM 269 select HAVE_PWM
270 select PXA27x
271 271
272config MACH_COLIBRI300 272config MACH_COLIBRI300
273 bool "Toradex Colibri PXA300/310" 273 bool "Toradex Colibri PXA300/310"
274 select PXA3xx
275 select CPU_PXA300 274 select CPU_PXA300
276 select CPU_PXA310 275 select CPU_PXA310
276 select PXA3xx
277 277
278config MACH_COLIBRI320 278config MACH_COLIBRI320
279 bool "Toradex Colibri PXA320" 279 bool "Toradex Colibri PXA320"
280 select PXA3xx
281 select CPU_PXA320 280 select CPU_PXA320
281 select PXA3xx
282 282
283config MACH_COLIBRI_EVALBOARD 283config MACH_COLIBRI_EVALBOARD
284 bool "Toradex Colibri Evaluation Carrier Board support" 284 bool "Toradex Colibri Evaluation Carrier Board support"
@@ -286,8 +286,8 @@ config MACH_COLIBRI_EVALBOARD
286 286
287config MACH_VPAC270 287config MACH_VPAC270
288 bool "Voipac PXA270" 288 bool "Voipac PXA270"
289 select PXA27x
290 select HAVE_PATA_PLATFORM 289 select HAVE_PATA_PLATFORM
290 select PXA27x
291 help 291 help
292 PXA270 based Single Board Computer. 292 PXA270 based Single Board Computer.
293 293
@@ -295,9 +295,9 @@ comment "End-user Products (sorted by vendor name)"
295 295
296config MACH_H4700 296config MACH_H4700
297 bool "HP iPAQ hx4700" 297 bool "HP iPAQ hx4700"
298 select PXA27x
299 select IWMMXT
300 select HAVE_PWM 298 select HAVE_PWM
299 select IWMMXT
300 select PXA27x
301 301
302config MACH_H5000 302config MACH_H5000
303 bool "HP iPAQ h5000" 303 bool "HP iPAQ h5000"
@@ -309,16 +309,16 @@ config MACH_HIMALAYA
309 309
310config MACH_MAGICIAN 310config MACH_MAGICIAN
311 bool "Enable HTC Magician Support" 311 bool "Enable HTC Magician Support"
312 select PXA27x
313 select IWMMXT
314 select HAVE_PWM 312 select HAVE_PWM
313 select IWMMXT
314 select PXA27x
315 315
316config MACH_MIOA701 316config MACH_MIOA701
317 bool "Mitac Mio A701 Support" 317 bool "Mitac Mio A701 Support"
318 select PXA27x
319 select IWMMXT
320 select HAVE_PWM
321 select GPIO_SYSFS 318 select GPIO_SYSFS
319 select HAVE_PWM
320 select IWMMXT
321 select PXA27x
322 help 322 help
323 Say Y here if you intend to run this kernel on a 323 Say Y here if you intend to run this kernel on a
324 MIO A701. Currently there is only basic support 324 MIO A701. Currently there is only basic support
@@ -326,9 +326,9 @@ config MACH_MIOA701
326 326
327config PXA_EZX 327config PXA_EZX
328 bool "Motorola EZX Platform" 328 bool "Motorola EZX Platform"
329 select PXA27x
330 select IWMMXT
331 select HAVE_PWM 329 select HAVE_PWM
330 select IWMMXT
331 select PXA27x
332 332
333config MACH_EZX_A780 333config MACH_EZX_A780
334 bool "Motorola EZX A780" 334 bool "Motorola EZX A780"
@@ -393,9 +393,9 @@ config MACH_PALMT5
393 bool "Palm Tungsten|T5" 393 bool "Palm Tungsten|T5"
394 default y 394 default y
395 depends on ARCH_PXA_PALM 395 depends on ARCH_PXA_PALM
396 select PXA27x
397 select IWMMXT 396 select IWMMXT
398 select MACH_PALM27X 397 select MACH_PALM27X
398 select PXA27x
399 help 399 help
400 Say Y here if you intend to run this kernel on a Palm Tungsten|T5 400 Say Y here if you intend to run this kernel on a Palm Tungsten|T5
401 handheld computer. 401 handheld computer.
@@ -404,9 +404,9 @@ config MACH_PALMTX
404 bool "Palm T|X" 404 bool "Palm T|X"
405 default y 405 default y
406 depends on ARCH_PXA_PALM 406 depends on ARCH_PXA_PALM
407 select PXA27x
408 select IWMMXT 407 select IWMMXT
409 select MACH_PALM27X 408 select MACH_PALM27X
409 select PXA27x
410 help 410 help
411 Say Y here if you intend to run this kernel on a Palm T|X 411 Say Y here if you intend to run this kernel on a Palm T|X
412 handheld computer. 412 handheld computer.
@@ -415,9 +415,9 @@ config MACH_PALMZ72
415 bool "Palm Zire 72" 415 bool "Palm Zire 72"
416 default y 416 default y
417 depends on ARCH_PXA_PALM 417 depends on ARCH_PXA_PALM
418 select PXA27x
419 select IWMMXT 418 select IWMMXT
420 select MACH_PALM27X 419 select MACH_PALM27X
420 select PXA27x
421 help 421 help
422 Say Y here if you intend to run this kernel on Palm Zire 72 422 Say Y here if you intend to run this kernel on Palm Zire 72
423 handheld computer. 423 handheld computer.
@@ -426,9 +426,9 @@ config MACH_PALMLD
426 bool "Palm LifeDrive" 426 bool "Palm LifeDrive"
427 default y 427 default y
428 depends on ARCH_PXA_PALM 428 depends on ARCH_PXA_PALM
429 select PXA27x
430 select IWMMXT 429 select IWMMXT
431 select MACH_PALM27X 430 select MACH_PALM27X
431 select PXA27x
432 help 432 help
433 Say Y here if you intend to run this kernel on a Palm LifeDrive 433 Say Y here if you intend to run this kernel on a Palm LifeDrive
434 handheld computer. 434 handheld computer.
@@ -441,10 +441,10 @@ config MACH_CENTRO
441 bool "Palm Centro 685 (GSM)" 441 bool "Palm Centro 685 (GSM)"
442 default y 442 default y
443 depends on ARCH_PXA_PALM 443 depends on ARCH_PXA_PALM
444 select MACH_PALM27X
445 select PXA27x
446 select IWMMXT 444 select IWMMXT
445 select MACH_PALM27X
447 select PALM_TREO 446 select PALM_TREO
447 select PXA27x
448 help 448 help
449 Say Y here if you intend to run this kernel on Palm Centro 685 (GSM) 449 Say Y here if you intend to run this kernel on Palm Centro 685 (GSM)
450 smartphone. 450 smartphone.
@@ -453,37 +453,37 @@ config MACH_TREO680
453 bool "Palm Treo 680" 453 bool "Palm Treo 680"
454 default y 454 default y
455 depends on ARCH_PXA_PALM 455 depends on ARCH_PXA_PALM
456 select MACH_PALM27X
457 select PXA27x
458 select IWMMXT 456 select IWMMXT
457 select MACH_PALM27X
459 select PALM_TREO 458 select PALM_TREO
459 select PXA27x
460 help 460 help
461 Say Y here if you intend to run this kernel on Palm Treo 680 461 Say Y here if you intend to run this kernel on Palm Treo 680
462 smartphone. 462 smartphone.
463 463
464config MACH_RAUMFELD_RC 464config MACH_RAUMFELD_RC
465 bool "Raumfeld Controller" 465 bool "Raumfeld Controller"
466 select PXA3xx
467 select CPU_PXA300 466 select CPU_PXA300
468 select POWER_SUPPLY
469 select HAVE_PWM 467 select HAVE_PWM
468 select POWER_SUPPLY
469 select PXA3xx
470 470
471config MACH_RAUMFELD_CONNECTOR 471config MACH_RAUMFELD_CONNECTOR
472 bool "Raumfeld Connector" 472 bool "Raumfeld Connector"
473 select CPU_PXA300
473 select POWER_SUPPLY 474 select POWER_SUPPLY
474 select PXA3xx 475 select PXA3xx
475 select CPU_PXA300
476 476
477config MACH_RAUMFELD_SPEAKER 477config MACH_RAUMFELD_SPEAKER
478 bool "Raumfeld Speaker" 478 bool "Raumfeld Speaker"
479 select CPU_PXA300
479 select POWER_SUPPLY 480 select POWER_SUPPLY
480 select PXA3xx 481 select PXA3xx
481 select CPU_PXA300
482 482
483config PXA_SHARPSL 483config PXA_SHARPSL
484 bool "SHARP Zaurus SL-5600, SL-C7xx and SL-Cxx00 Models" 484 bool "SHARP Zaurus SL-5600, SL-C7xx and SL-Cxx00 Models"
485 select SHARP_SCOOP
486 select SHARP_PARAM 485 select SHARP_PARAM
486 select SHARP_SCOOP
487 help 487 help
488 Say Y here if you intend to run this kernel on a 488 Say Y here if you intend to run this kernel on a
489 Sharp Zaurus SL-5600 (Poodle), SL-C700 (Corgi), 489 Sharp Zaurus SL-5600 (Poodle), SL-C700 (Corgi),
@@ -526,11 +526,11 @@ config MACH_HUSKY
526config MACH_AKITA 526config MACH_AKITA
527 bool "Enable Sharp SL-1000 (Akita) Support" 527 bool "Enable Sharp SL-1000 (Akita) Support"
528 depends on PXA_SHARPSL 528 depends on PXA_SHARPSL
529 select PXA27x
530 select PXA_SHARP_Cxx00
531 select MACH_SPITZ
532 select I2C 529 select I2C
533 select I2C_PXA 530 select I2C_PXA
531 select MACH_SPITZ
532 select PXA27x
533 select PXA_SHARP_Cxx00
534 534
535config MACH_SPITZ 535config MACH_SPITZ
536 bool "Enable Sharp Zaurus SL-3000 (Spitz) Support" 536 bool "Enable Sharp Zaurus SL-3000 (Spitz) Support"
@@ -575,8 +575,8 @@ config MACH_ICONTROL
575 575
576config ARCH_PXA_ESERIES 576config ARCH_PXA_ESERIES
577 bool "PXA based Toshiba e-series PDAs" 577 bool "PXA based Toshiba e-series PDAs"
578 select PXA25x
579 select FB_W100 578 select FB_W100
579 select PXA25x
580 580
581config MACH_E330 581config MACH_E330
582 bool "Toshiba e330" 582 bool "Toshiba e330"
@@ -628,8 +628,8 @@ config MACH_E800
628 628
629config MACH_ZIPIT2 629config MACH_ZIPIT2
630 bool "Zipit Z2 Handheld" 630 bool "Zipit Z2 Handheld"
631 select PXA27x
632 select HAVE_PWM 631 select HAVE_PWM
632 select PXA27x
633endif 633endif
634endmenu 634endmenu
635 635
@@ -720,9 +720,9 @@ config SHARPSL_PM
720config SHARPSL_PM_MAX1111 720config SHARPSL_PM_MAX1111
721 bool 721 bool
722 select HWMON 722 select HWMON
723 select SENSORS_MAX1111
723 select SPI 724 select SPI
724 select SPI_MASTER 725 select SPI_MASTER
725 select SENSORS_MAX1111
726 726
727config PXA_HAVE_ISA_IRQS 727config PXA_HAVE_ISA_IRQS
728 bool 728 bool
diff --git a/arch/arm/mach-realview/Kconfig b/arch/arm/mach-realview/Kconfig
index c593be428b8f..14c1d47e1abf 100644
--- a/arch/arm/mach-realview/Kconfig
+++ b/arch/arm/mach-realview/Kconfig
@@ -21,8 +21,8 @@ config REALVIEW_EB_A9MP
21config REALVIEW_EB_ARM11MP 21config REALVIEW_EB_ARM11MP
22 bool "Support ARM11MPCore Tile" 22 bool "Support ARM11MPCore Tile"
23 depends on MACH_REALVIEW_EB 23 depends on MACH_REALVIEW_EB
24 select CPU_V6K
25 select ARCH_HAS_BARRIERS if SMP 24 select ARCH_HAS_BARRIERS if SMP
25 select CPU_V6K
26 select HAVE_SMP 26 select HAVE_SMP
27 select MIGHT_HAVE_CACHE_L2X0 27 select MIGHT_HAVE_CACHE_L2X0
28 help 28 help
@@ -40,12 +40,12 @@ config REALVIEW_EB_ARM11MP_REVB
40 40
41config MACH_REALVIEW_PB11MP 41config MACH_REALVIEW_PB11MP
42 bool "Support RealView(R) Platform Baseboard for ARM11MPCore" 42 bool "Support RealView(R) Platform Baseboard for ARM11MPCore"
43 select CPU_V6K 43 select ARCH_HAS_BARRIERS if SMP
44 select ARM_GIC 44 select ARM_GIC
45 select CPU_V6K
45 select HAVE_PATA_PLATFORM 46 select HAVE_PATA_PLATFORM
46 select HAVE_SMP 47 select HAVE_SMP
47 select MIGHT_HAVE_CACHE_L2X0 48 select MIGHT_HAVE_CACHE_L2X0
48 select ARCH_HAS_BARRIERS if SMP
49 help 49 help
50 Include support for the ARM(R) RealView(R) Platform Baseboard for 50 Include support for the ARM(R) RealView(R) Platform Baseboard for
51 the ARM11MPCore. This platform has an on-board ARM11MPCore and has 51 the ARM11MPCore. This platform has an on-board ARM11MPCore and has
@@ -54,8 +54,8 @@ config MACH_REALVIEW_PB11MP
54# ARMv6 CPU without K extensions, but does have the new exclusive ops 54# ARMv6 CPU without K extensions, but does have the new exclusive ops
55config MACH_REALVIEW_PB1176 55config MACH_REALVIEW_PB1176
56 bool "Support RealView(R) Platform Baseboard for ARM1176JZF-S" 56 bool "Support RealView(R) Platform Baseboard for ARM1176JZF-S"
57 select CPU_V6
58 select ARM_GIC 57 select ARM_GIC
58 select CPU_V6
59 select HAVE_TCM 59 select HAVE_TCM
60 select MIGHT_HAVE_CACHE_L2X0 60 select MIGHT_HAVE_CACHE_L2X0
61 help 61 help
@@ -73,8 +73,8 @@ config REALVIEW_PB1176_SECURE_FLASH
73 73
74config MACH_REALVIEW_PBA8 74config MACH_REALVIEW_PBA8
75 bool "Support RealView(R) Platform Baseboard for Cortex(tm)-A8 platform" 75 bool "Support RealView(R) Platform Baseboard for Cortex(tm)-A8 platform"
76 select CPU_V7
77 select ARM_GIC 76 select ARM_GIC
77 select CPU_V7
78 select HAVE_PATA_PLATFORM 78 select HAVE_PATA_PLATFORM
79 help 79 help
80 Include support for the ARM(R) RealView Platform Baseboard for 80 Include support for the ARM(R) RealView Platform Baseboard for
@@ -83,11 +83,11 @@ config MACH_REALVIEW_PBA8
83 83
84config MACH_REALVIEW_PBX 84config MACH_REALVIEW_PBX
85 bool "Support RealView(R) Platform Baseboard Explore" 85 bool "Support RealView(R) Platform Baseboard Explore"
86 select ARCH_SPARSEMEM_ENABLE if CPU_V7 && !REALVIEW_HIGH_PHYS_OFFSET
86 select ARM_GIC 87 select ARM_GIC
87 select HAVE_PATA_PLATFORM 88 select HAVE_PATA_PLATFORM
88 select HAVE_SMP 89 select HAVE_SMP
89 select MIGHT_HAVE_CACHE_L2X0 90 select MIGHT_HAVE_CACHE_L2X0
90 select ARCH_SPARSEMEM_ENABLE if CPU_V7 && !REALVIEW_HIGH_PHYS_OFFSET
91 select ZONE_DMA if SPARSEMEM 91 select ZONE_DMA if SPARSEMEM
92 help 92 help
93 Include support for the ARM(R) RealView(R) Platform Baseboard 93 Include support for the ARM(R) RealView(R) Platform Baseboard
diff --git a/arch/arm/mach-s3c2412/Kconfig b/arch/arm/mach-s3c2412/Kconfig
index c5256f4e90bb..495f6928cbaa 100644
--- a/arch/arm/mach-s3c2412/Kconfig
+++ b/arch/arm/mach-s3c2412/Kconfig
@@ -7,7 +7,7 @@
7config S3C2412_CPUFREQ 7config S3C2412_CPUFREQ
8 bool 8 bool
9 depends on CPU_FREQ_S3C24XX && CPU_S3C2412 9 depends on CPU_FREQ_S3C24XX && CPU_S3C2412
10 select S3C2412_IOTIMING
11 default y 10 default y
11 select S3C2412_IOTIMING
12 help 12 help
13 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs. 13 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
diff --git a/arch/arm/mach-s3c2440/Kconfig b/arch/arm/mach-s3c2440/Kconfig
index ece7a10fe3c6..a4d7fd27bec5 100644
--- a/arch/arm/mach-s3c2440/Kconfig
+++ b/arch/arm/mach-s3c2440/Kconfig
@@ -5,8 +5,8 @@
5config S3C2440_CPUFREQ 5config S3C2440_CPUFREQ
6 bool "S3C2440/S3C2442 CPU Frequency scaling support" 6 bool "S3C2440/S3C2442 CPU Frequency scaling support"
7 depends on CPU_FREQ_S3C24XX && (CPU_S3C2440 || CPU_S3C2442) 7 depends on CPU_FREQ_S3C24XX && (CPU_S3C2440 || CPU_S3C2442)
8 select S3C2410_CPUFREQ_UTILS
9 default y 8 default y
9 select S3C2410_CPUFREQ_UTILS
10 help 10 help
11 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs. 11 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
12 12
diff --git a/arch/arm/mach-s3c24xx/Kconfig b/arch/arm/mach-s3c24xx/Kconfig
index d56b0f7f2b20..2b6cb5f29c2d 100644
--- a/arch/arm/mach-s3c24xx/Kconfig
+++ b/arch/arm/mach-s3c24xx/Kconfig
@@ -17,10 +17,10 @@ config CPU_S3C2410
17 bool "SAMSUNG S3C2410" 17 bool "SAMSUNG S3C2410"
18 default y 18 default y
19 select CPU_ARM920T 19 select CPU_ARM920T
20 select S3C2410_CLOCK
21 select CPU_LLSERIAL_S3C2410 20 select CPU_LLSERIAL_S3C2410
22 select S3C2410_PM if PM 21 select S3C2410_CLOCK
23 select S3C2410_CPUFREQ if CPU_FREQ_S3C24XX 22 select S3C2410_CPUFREQ if CPU_FREQ_S3C24XX
23 select S3C2410_PM if PM
24 help 24 help
25 Support for S3C2410 and S3C2410A family from the S3C24XX line 25 Support for S3C2410 and S3C2410A family from the S3C24XX line
26 of Samsung Mobile CPUs. 26 of Samsung Mobile CPUs.
@@ -30,8 +30,8 @@ config CPU_S3C2412
30 depends on ARCH_S3C24XX 30 depends on ARCH_S3C24XX
31 select CPU_ARM926T 31 select CPU_ARM926T
32 select CPU_LLSERIAL_S3C2440 32 select CPU_LLSERIAL_S3C2440
33 select S3C2412_PM if PM
34 select S3C2412_DMA if S3C24XX_DMA 33 select S3C2412_DMA if S3C24XX_DMA
34 select S3C2412_PM if PM
35 help 35 help
36 Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line 36 Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line
37 37
@@ -40,10 +40,10 @@ config CPU_S3C2416
40 depends on ARCH_S3C24XX 40 depends on ARCH_S3C24XX
41 select CPU_ARM926T 41 select CPU_ARM926T
42 select CPU_LLSERIAL_S3C2440 42 select CPU_LLSERIAL_S3C2440
43 select SAMSUNG_CLKSRC 43 select S3C2416_PM if PM
44 select S3C2443_COMMON 44 select S3C2443_COMMON
45 select S3C2443_DMA if S3C24XX_DMA 45 select S3C2443_DMA if S3C24XX_DMA
46 select S3C2416_PM if PM 46 select SAMSUNG_CLKSRC
47 help 47 help
48 Support for the S3C2416 SoC from the S3C24XX line 48 Support for the S3C2416 SoC from the S3C24XX line
49 49
@@ -75,9 +75,9 @@ config CPU_S3C2443
75 depends on ARCH_S3C24XX 75 depends on ARCH_S3C24XX
76 select CPU_ARM920T 76 select CPU_ARM920T
77 select CPU_LLSERIAL_S3C2440 77 select CPU_LLSERIAL_S3C2440
78 select SAMSUNG_CLKSRC
79 select S3C2443_COMMON 78 select S3C2443_COMMON
80 select S3C2443_DMA if S3C24XX_DMA 79 select S3C2443_DMA if S3C24XX_DMA
80 select SAMSUNG_CLKSRC
81 help 81 help
82 Support for the S3C2443 SoC from the S3C24XX line 82 Support for the S3C2443 SoC from the S3C24XX line
83 83
@@ -156,16 +156,16 @@ config MACH_AML_M5900
156 156
157config ARCH_BAST 157config ARCH_BAST
158 bool "Simtec Electronics BAST (EB2410ITX)" 158 bool "Simtec Electronics BAST (EB2410ITX)"
159 select ISA
160 select MACH_BAST_IDE
159 select S3C2410_IOTIMING if S3C2410_CPUFREQ 161 select S3C2410_IOTIMING if S3C2410_CPUFREQ
160 select S3C24XX_SIMTEC_PM if PM 162 select S3C24XX_DCLK
161 select S3C24XX_SIMTEC_NOR 163 select S3C24XX_SIMTEC_NOR
164 select S3C24XX_SIMTEC_PM if PM
162 select S3C24XX_SIMTEC_USB 165 select S3C24XX_SIMTEC_USB
163 select MACH_BAST_IDE
164 select S3C24XX_DCLK
165 select ISA
166 select S3C_DEV_HWMON 166 select S3C_DEV_HWMON
167 select S3C_DEV_USB_HOST
168 select S3C_DEV_NAND 167 select S3C_DEV_NAND
168 select S3C_DEV_USB_HOST
169 help 169 help
170 Say Y here if you are using the Simtec Electronics EB2410ITX 170 Say Y here if you are using the Simtec Electronics EB2410ITX
171 development board (also known as BAST) 171 development board (also known as BAST)
@@ -181,9 +181,9 @@ config BAST_PC104_IRQ
181config ARCH_H1940 181config ARCH_H1940
182 bool "IPAQ H1940" 182 bool "IPAQ H1940"
183 select PM_H1940 if PM 183 select PM_H1940 if PM
184 select S3C_DEV_USB_HOST
185 select S3C_DEV_NAND
186 select S3C24XX_SETUP_TS 184 select S3C24XX_SETUP_TS
185 select S3C_DEV_NAND
186 select S3C_DEV_USB_HOST
187 help 187 help
188 Say Y here if you are using the HP IPAQ H1940 188 Say Y here if you are using the HP IPAQ H1940
189 189
@@ -203,23 +203,23 @@ config PM_H1940
203config MACH_N30 203config MACH_N30
204 bool "Acer N30 family" 204 bool "Acer N30 family"
205 select MACH_N35 205 select MACH_N35
206 select S3C_DEV_USB_HOST
207 select S3C_DEV_NAND 206 select S3C_DEV_NAND
207 select S3C_DEV_USB_HOST
208 help 208 help
209 Say Y here if you want suppt for the Acer N30, Acer N35, 209 Say Y here if you want suppt for the Acer N30, Acer N35,
210 Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs. 210 Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs.
211 211
212config MACH_OTOM 212config MACH_OTOM
213 bool "NexVision OTOM Board" 213 bool "NexVision OTOM Board"
214 select S3C_DEV_USB_HOST
215 select S3C_DEV_NAND 214 select S3C_DEV_NAND
215 select S3C_DEV_USB_HOST
216 help 216 help
217 Say Y here if you are using the Nex Vision OTOM board 217 Say Y here if you are using the Nex Vision OTOM board
218 218
219config MACH_QT2410 219config MACH_QT2410
220 bool "QT2410" 220 bool "QT2410"
221 select S3C_DEV_USB_HOST
222 select S3C_DEV_NAND 221 select S3C_DEV_NAND
222 select S3C_DEV_USB_HOST
223 help 223 help
224 Say Y here if you are using the Armzone QT2410 224 Say Y here if you are using the Armzone QT2410
225 225
@@ -239,12 +239,12 @@ config MACH_TCT_HAMMER
239 239
240config MACH_VR1000 240config MACH_VR1000
241 bool "Thorcom VR1000" 241 bool "Thorcom VR1000"
242 select S3C24XX_SIMTEC_PM if PM 242 select MACH_BAST_IDE
243 select S3C24XX_DCLK 243 select S3C24XX_DCLK
244 select S3C24XX_SIMTEC_NOR 244 select S3C24XX_SIMTEC_NOR
245 select MACH_BAST_IDE 245 select S3C24XX_SIMTEC_PM if PM
246 select S3C_DEV_USB_HOST
247 select S3C24XX_SIMTEC_USB 246 select S3C24XX_SIMTEC_USB
247 select S3C_DEV_USB_HOST
248 help 248 help
249 Say Y here if you are using the Thorcom VR1000 board. 249 Say Y here if you are using the Thorcom VR1000 board.
250 250
@@ -285,8 +285,8 @@ comment "S3C2412 Boards"
285 285
286config MACH_JIVE 286config MACH_JIVE
287 bool "Logitech Jive" 287 bool "Logitech Jive"
288 select S3C_DEV_USB_HOST
289 select S3C_DEV_NAND 288 select S3C_DEV_NAND
289 select S3C_DEV_USB_HOST
290 help 290 help
291 Say Y here if you are using the Logitech Jive. 291 Say Y here if you are using the Logitech Jive.
292 292
@@ -314,15 +314,15 @@ config MACH_SMDK2413
314 bool "SMDK2413" 314 bool "SMDK2413"
315 select MACH_S3C2413 315 select MACH_S3C2413
316 select S3C24XX_SMDK 316 select S3C24XX_SMDK
317 select S3C_DEV_USB_HOST
318 select S3C_DEV_NAND 317 select S3C_DEV_NAND
318 select S3C_DEV_USB_HOST
319 help 319 help
320 Say Y here if you are using an SMDK2413 320 Say Y here if you are using an SMDK2413
321 321
322config MACH_VSTMS 322config MACH_VSTMS
323 bool "VMSTMS" 323 bool "VMSTMS"
324 select S3C_DEV_USB_HOST
325 select S3C_DEV_NAND 324 select S3C_DEV_NAND
325 select S3C_DEV_USB_HOST
326 help 326 help
327 Say Y here if you are using an VSTMS board 327 Say Y here if you are using an VSTMS board
328 328
@@ -351,13 +351,13 @@ comment "S3C2416 Boards"
351 351
352config MACH_SMDK2416 352config MACH_SMDK2416
353 bool "SMDK2416" 353 bool "SMDK2416"
354 select S3C2416_SETUP_SDHCI
354 select S3C24XX_SMDK 355 select S3C24XX_SMDK
355 select S3C_DEV_FB 356 select S3C_DEV_FB
356 select S3C_DEV_HSMMC 357 select S3C_DEV_HSMMC
357 select S3C_DEV_HSMMC1 358 select S3C_DEV_HSMMC1
358 select S3C_DEV_NAND 359 select S3C_DEV_NAND
359 select S3C_DEV_USB_HOST 360 select S3C_DEV_USB_HOST
360 select S3C2416_SETUP_SDHCI
361 help 361 help
362 Say Y here if you are using an SMDK2416 362 Say Y here if you are using an SMDK2416
363 363
@@ -379,11 +379,11 @@ comment "S3C2440 Boards"
379 379
380config MACH_ANUBIS 380config MACH_ANUBIS
381 bool "Simtec Electronics ANUBIS" 381 bool "Simtec Electronics ANUBIS"
382 select S3C24XX_DCLK
383 select S3C24XX_SIMTEC_PM if PM
384 select HAVE_PATA_PLATFORM 382 select HAVE_PATA_PLATFORM
385 select S3C24XX_GPIO_EXTRA64
386 select S3C2440_XTAL_12000000 383 select S3C2440_XTAL_12000000
384 select S3C24XX_DCLK
385 select S3C24XX_GPIO_EXTRA64
386 select S3C24XX_SIMTEC_PM if PM
387 select S3C_DEV_USB_HOST 387 select S3C_DEV_USB_HOST
388 help 388 help
389 Say Y here if you are using the Simtec Electronics ANUBIS 389 Say Y here if you are using the Simtec Electronics ANUBIS
@@ -391,18 +391,18 @@ config MACH_ANUBIS
391 391
392config MACH_AT2440EVB 392config MACH_AT2440EVB
393 bool "Avantech AT2440EVB development board" 393 bool "Avantech AT2440EVB development board"
394 select S3C_DEV_USB_HOST
395 select S3C_DEV_NAND 394 select S3C_DEV_NAND
395 select S3C_DEV_USB_HOST
396 help 396 help
397 Say Y here if you are using the AT2440EVB development board 397 Say Y here if you are using the AT2440EVB development board
398 398
399config MACH_MINI2440 399config MACH_MINI2440
400 bool "MINI2440 development board" 400 bool "MINI2440 development board"
401 select EEPROM_AT24 401 select EEPROM_AT24
402 select NEW_LEDS
403 select LEDS_CLASS 402 select LEDS_CLASS
404 select LEDS_TRIGGER 403 select LEDS_TRIGGER
405 select LEDS_TRIGGER_BACKLIGHT 404 select LEDS_TRIGGER_BACKLIGHT
405 select NEW_LEDS
406 select S3C_DEV_NAND 406 select S3C_DEV_NAND
407 select S3C_DEV_USB_HOST 407 select S3C_DEV_USB_HOST
408 help 408 help
@@ -412,20 +412,20 @@ config MACH_MINI2440
412config MACH_NEXCODER_2440 412config MACH_NEXCODER_2440
413 bool "NexVision NEXCODER 2440 Light Board" 413 bool "NexVision NEXCODER 2440 Light Board"
414 select S3C2440_XTAL_12000000 414 select S3C2440_XTAL_12000000
415 select S3C_DEV_USB_HOST
416 select S3C_DEV_NAND 415 select S3C_DEV_NAND
416 select S3C_DEV_USB_HOST
417 help 417 help
418 Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board 418 Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
419 419
420config MACH_OSIRIS 420config MACH_OSIRIS
421 bool "Simtec IM2440D20 (OSIRIS) module" 421 bool "Simtec IM2440D20 (OSIRIS) module"
422 select S3C2410_IOTIMING if S3C2440_CPUFREQ
423 select S3C2440_XTAL_12000000
422 select S3C24XX_DCLK 424 select S3C24XX_DCLK
423 select S3C24XX_SIMTEC_PM if PM
424 select S3C24XX_GPIO_EXTRA128 425 select S3C24XX_GPIO_EXTRA128
425 select S3C2440_XTAL_12000000 426 select S3C24XX_SIMTEC_PM if PM
426 select S3C2410_IOTIMING if S3C2440_CPUFREQ
427 select S3C_DEV_USB_HOST
428 select S3C_DEV_NAND 427 select S3C_DEV_NAND
428 select S3C_DEV_USB_HOST
429 help 429 help
430 Say Y here if you are using the Simtec IM2440D20 module, also 430 Say Y here if you are using the Simtec IM2440D20 module, also
431 known as the Osiris. 431 known as the Osiris.
@@ -445,8 +445,8 @@ config MACH_OSIRIS_DVS
445 445
446config MACH_RX3715 446config MACH_RX3715
447 bool "HP iPAQ rx3715" 447 bool "HP iPAQ rx3715"
448 select S3C2440_XTAL_16934400
449 select PM_H1940 if PM 448 select PM_H1940 if PM
449 select S3C2440_XTAL_16934400
450 select S3C_DEV_NAND 450 select S3C_DEV_NAND
451 help 451 help
452 Say Y here if you are using the HP iPAQ rx3715. 452 Say Y here if you are using the HP iPAQ rx3715.
@@ -455,8 +455,8 @@ config ARCH_S3C2440
455 bool "SMDK2440" 455 bool "SMDK2440"
456 select S3C2440_XTAL_16934400 456 select S3C2440_XTAL_16934400
457 select S3C24XX_SMDK 457 select S3C24XX_SMDK
458 select S3C_DEV_USB_HOST
459 select S3C_DEV_NAND 458 select S3C_DEV_NAND
459 select S3C_DEV_USB_HOST
460 help 460 help
461 Say Y here if you are using the SMDK2440. 461 Say Y here if you are using the SMDK2440.
462 462
@@ -478,11 +478,11 @@ comment "S3C2442 Boards"
478 478
479config MACH_NEO1973_GTA02 479config MACH_NEO1973_GTA02
480 bool "Openmoko GTA02 / Freerunner phone" 480 bool "Openmoko GTA02 / Freerunner phone"
481 select I2C
482 select MACH_NEO1973
481 select MFD_PCF50633 483 select MFD_PCF50633
482 select PCF50633_GPIO 484 select PCF50633_GPIO
483 select I2C
484 select POWER_SUPPLY 485 select POWER_SUPPLY
485 select MACH_NEO1973
486 select S3C24XX_PWM 486 select S3C24XX_PWM
487 select S3C_DEV_USB_HOST 487 select S3C_DEV_USB_HOST
488 help 488 help
@@ -490,13 +490,13 @@ config MACH_NEO1973_GTA02
490 490
491config MACH_RX1950 491config MACH_RX1950
492 bool "HP iPAQ rx1950" 492 bool "HP iPAQ rx1950"
493 select S3C24XX_DCLK
494 select PM_H1940 if PM
495 select I2C 493 select I2C
496 select S3C24XX_PWM 494 select PM_H1940 if PM
497 select S3C_DEV_NAND
498 select S3C2410_IOTIMING if S3C2440_CPUFREQ 495 select S3C2410_IOTIMING if S3C2440_CPUFREQ
499 select S3C2440_XTAL_16934400 496 select S3C2440_XTAL_16934400
497 select S3C24XX_DCLK
498 select S3C24XX_PWM
499 select S3C_DEV_NAND
500 help 500 help
501 Say Y here if you're using HP iPAQ rx1950 501 Say Y here if you're using HP iPAQ rx1950
502 502
diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig
index 06ca1cd4cae2..63e7ae3ee9e6 100644
--- a/arch/arm/mach-s3c64xx/Kconfig
+++ b/arch/arm/mach-s3c64xx/Kconfig
@@ -7,9 +7,9 @@
7config PLAT_S3C64XX 7config PLAT_S3C64XX
8 bool 8 bool
9 depends on ARCH_S3C64XX 9 depends on ARCH_S3C64XX
10 select SAMSUNG_WAKEMASK
11 select PM_GENERIC_DOMAINS
12 default y 10 default y
11 select PM_GENERIC_DOMAINS
12 select SAMSUNG_WAKEMASK
13 help 13 help
14 Base platform code for any Samsung S3C64XX device 14 Base platform code for any Samsung S3C64XX device
15 15
@@ -31,8 +31,8 @@ config S3C64XX_DMA
31 select S3C_DMA 31 select S3C_DMA
32 32
33config S3C64XX_SETUP_SDHCI 33config S3C64XX_SETUP_SDHCI
34 select S3C64XX_SETUP_SDHCI_GPIO
35 bool 34 bool
35 select S3C64XX_SETUP_SDHCI_GPIO
36 help 36 help
37 Internal configuration for default SDHCI setup for S3C6400 and 37 Internal configuration for default SDHCI setup for S3C6400 and
38 S3C6410 SoCs. 38 S3C6410 SoCs.
@@ -93,9 +93,9 @@ config S3C64XX_SETUP_USB_PHY
93config MACH_SMDK6400 93config MACH_SMDK6400
94 bool "SMDK6400" 94 bool "SMDK6400"
95 select CPU_S3C6400 95 select CPU_S3C6400
96 select S3C64XX_SETUP_SDHCI
96 select S3C_DEV_HSMMC 97 select S3C_DEV_HSMMC
97 select S3C_DEV_NAND 98 select S3C_DEV_NAND
98 select S3C64XX_SETUP_SDHCI
99 help 99 help
100 Machine support for the Samsung SMDK6400 100 Machine support for the Samsung SMDK6400
101 101
@@ -104,21 +104,21 @@ config MACH_SMDK6400
104config MACH_ANW6410 104config MACH_ANW6410
105 bool "A&W6410" 105 bool "A&W6410"
106 select CPU_S3C6410 106 select CPU_S3C6410
107 select S3C_DEV_FB
108 select S3C64XX_SETUP_FB_24BPP 107 select S3C64XX_SETUP_FB_24BPP
108 select S3C_DEV_FB
109 help 109 help
110 Machine support for the A&W6410 110 Machine support for the A&W6410
111 111
112config MACH_MINI6410 112config MACH_MINI6410
113 bool "MINI6410" 113 bool "MINI6410"
114 select CPU_S3C6410 114 select CPU_S3C6410
115 select S3C64XX_SETUP_FB_24BPP
116 select S3C64XX_SETUP_SDHCI
117 select S3C_DEV_FB
115 select S3C_DEV_HSMMC 118 select S3C_DEV_HSMMC
116 select S3C_DEV_HSMMC1 119 select S3C_DEV_HSMMC1
117 select S3C64XX_SETUP_SDHCI
118 select S3C_DEV_USB_HOST
119 select S3C_DEV_NAND 120 select S3C_DEV_NAND
120 select S3C_DEV_FB 121 select S3C_DEV_USB_HOST
121 select S3C64XX_SETUP_FB_24BPP
122 select SAMSUNG_DEV_ADC 122 select SAMSUNG_DEV_ADC
123 select SAMSUNG_DEV_TS 123 select SAMSUNG_DEV_TS
124 help 124 help
@@ -127,42 +127,42 @@ config MACH_MINI6410
127config MACH_REAL6410 127config MACH_REAL6410
128 bool "REAL6410" 128 bool "REAL6410"
129 select CPU_S3C6410 129 select CPU_S3C6410
130 select S3C_DEV_HSMMC 130 select S3C64XX_SETUP_FB_24BPP
131 select S3C_DEV_HSMMC1
132 select S3C64XX_SETUP_SDHCI 131 select S3C64XX_SETUP_SDHCI
133 select S3C_DEV_FB 132 select S3C_DEV_FB
134 select S3C64XX_SETUP_FB_24BPP 133 select S3C_DEV_HSMMC
134 select S3C_DEV_HSMMC1
135 select S3C_DEV_NAND 135 select S3C_DEV_NAND
136 select S3C_DEV_USB_HOST
136 select SAMSUNG_DEV_ADC 137 select SAMSUNG_DEV_ADC
137 select SAMSUNG_DEV_TS 138 select SAMSUNG_DEV_TS
138 select S3C_DEV_USB_HOST
139 help 139 help
140 Machine support for the CoreWind REAL6410 140 Machine support for the CoreWind REAL6410
141 141
142config MACH_SMDK6410 142config MACH_SMDK6410
143 bool "SMDK6410" 143 bool "SMDK6410"
144 select CPU_S3C6410 144 select CPU_S3C6410
145 select SAMSUNG_DEV_ADC 145 select HAVE_S3C2410_WATCHDOG if WATCHDOG
146 select S3C64XX_SETUP_FB_24BPP
147 select S3C64XX_SETUP_I2C1
148 select S3C64XX_SETUP_IDE
149 select S3C64XX_SETUP_KEYPAD
150 select S3C64XX_SETUP_SDHCI
151 select S3C64XX_SETUP_USB_PHY
152 select S3C_DEV_FB
146 select S3C_DEV_HSMMC 153 select S3C_DEV_HSMMC
147 select S3C_DEV_HSMMC1 154 select S3C_DEV_HSMMC1
148 select S3C_DEV_I2C1 155 select S3C_DEV_I2C1
149 select SAMSUNG_DEV_IDE
150 select S3C_DEV_FB
151 select S3C_DEV_RTC 156 select S3C_DEV_RTC
152 select SAMSUNG_DEV_TS
153 select S3C_DEV_USB_HOST 157 select S3C_DEV_USB_HOST
154 select S3C_DEV_USB_HSOTG 158 select S3C_DEV_USB_HSOTG
155 select S3C_DEV_WDT 159 select S3C_DEV_WDT
160 select SAMSUNG_DEV_ADC
156 select SAMSUNG_DEV_BACKLIGHT 161 select SAMSUNG_DEV_BACKLIGHT
162 select SAMSUNG_DEV_IDE
157 select SAMSUNG_DEV_KEYPAD 163 select SAMSUNG_DEV_KEYPAD
158 select SAMSUNG_DEV_PWM 164 select SAMSUNG_DEV_PWM
159 select HAVE_S3C2410_WATCHDOG if WATCHDOG 165 select SAMSUNG_DEV_TS
160 select S3C64XX_SETUP_SDHCI
161 select S3C64XX_SETUP_I2C1
162 select S3C64XX_SETUP_IDE
163 select S3C64XX_SETUP_FB_24BPP
164 select S3C64XX_SETUP_KEYPAD
165 select S3C64XX_SETUP_USB_PHY
166 help 166 help
167 Machine support for the Samsung SMDK6410 167 Machine support for the Samsung SMDK6410
168 168
@@ -198,13 +198,13 @@ endchoice
198config SMDK6410_WM1190_EV1 198config SMDK6410_WM1190_EV1
199 bool "Support Wolfson Microelectronics 1190-EV1 PMIC card" 199 bool "Support Wolfson Microelectronics 1190-EV1 PMIC card"
200 depends on MACH_SMDK6410 200 depends on MACH_SMDK6410
201 select REGULATOR
202 select REGULATOR_WM8350
203 select SAMSUNG_GPIO_EXTRA64
204 select MFD_WM8350_I2C
205 select MFD_WM8350_CONFIG_MODE_0 201 select MFD_WM8350_CONFIG_MODE_0
206 select MFD_WM8350_CONFIG_MODE_3 202 select MFD_WM8350_CONFIG_MODE_3
203 select MFD_WM8350_I2C
207 select MFD_WM8352_CONFIG_MODE_0 204 select MFD_WM8352_CONFIG_MODE_0
205 select REGULATOR
206 select REGULATOR_WM8350
207 select SAMSUNG_GPIO_EXTRA64
208 help 208 help
209 The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC 209 The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC
210 and audio daughtercard for the Samsung SMDK6410 reference 210 and audio daughtercard for the Samsung SMDK6410 reference
@@ -216,11 +216,11 @@ config SMDK6410_WM1190_EV1
216config SMDK6410_WM1192_EV1 216config SMDK6410_WM1192_EV1
217 bool "Support Wolfson Microelectronics 1192-EV1 PMIC card" 217 bool "Support Wolfson Microelectronics 1192-EV1 PMIC card"
218 depends on MACH_SMDK6410 218 depends on MACH_SMDK6410
219 select MFD_WM831X
220 select MFD_WM831X_I2C
219 select REGULATOR 221 select REGULATOR
220 select REGULATOR_WM831X 222 select REGULATOR_WM831X
221 select SAMSUNG_GPIO_EXTRA64 223 select SAMSUNG_GPIO_EXTRA64
222 select MFD_WM831X
223 select MFD_WM831X_I2C
224 help 224 help
225 The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC 225 The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC
226 daughtercard for the Samsung SMDK6410 reference platform. 226 daughtercard for the Samsung SMDK6410 reference platform.
@@ -232,19 +232,19 @@ config SMDK6410_WM1192_EV1
232config MACH_NCP 232config MACH_NCP
233 bool "NCP" 233 bool "NCP"
234 select CPU_S3C6410 234 select CPU_S3C6410
235 select S3C_DEV_I2C1
236 select S3C_DEV_HSMMC1
237 select S3C64XX_SETUP_I2C1 235 select S3C64XX_SETUP_I2C1
236 select S3C_DEV_HSMMC1
237 select S3C_DEV_I2C1
238 help 238 help
239 Machine support for the Samsung NCP 239 Machine support for the Samsung NCP
240 240
241config MACH_HMT 241config MACH_HMT
242 bool "Airgoo HMT" 242 bool "Airgoo HMT"
243 select CPU_S3C6410 243 select CPU_S3C6410
244 select S3C64XX_SETUP_FB_24BPP
244 select S3C_DEV_FB 245 select S3C_DEV_FB
245 select S3C_DEV_NAND 246 select S3C_DEV_NAND
246 select S3C_DEV_USB_HOST 247 select S3C_DEV_USB_HOST
247 select S3C64XX_SETUP_FB_24BPP
248 select SAMSUNG_DEV_PWM 248 select SAMSUNG_DEV_PWM
249 help 249 help
250 Machine support for the Airgoo HMT 250 Machine support for the Airgoo HMT
@@ -252,17 +252,17 @@ config MACH_HMT
252config MACH_SMARTQ 252config MACH_SMARTQ
253 bool 253 bool
254 select CPU_S3C6410 254 select CPU_S3C6410
255 select S3C64XX_SETUP_FB_24BPP
256 select S3C64XX_SETUP_SDHCI
257 select S3C64XX_SETUP_USB_PHY
258 select S3C_DEV_FB
255 select S3C_DEV_HSMMC 259 select S3C_DEV_HSMMC
256 select S3C_DEV_HSMMC1 260 select S3C_DEV_HSMMC1
257 select S3C_DEV_HSMMC2 261 select S3C_DEV_HSMMC2
258 select S3C_DEV_FB
259 select S3C_DEV_HWMON 262 select S3C_DEV_HWMON
260 select S3C_DEV_RTC 263 select S3C_DEV_RTC
261 select S3C_DEV_USB_HSOTG
262 select S3C_DEV_USB_HOST 264 select S3C_DEV_USB_HOST
263 select S3C64XX_SETUP_SDHCI 265 select S3C_DEV_USB_HSOTG
264 select S3C64XX_SETUP_FB_24BPP
265 select S3C64XX_SETUP_USB_PHY
266 select SAMSUNG_DEV_ADC 266 select SAMSUNG_DEV_ADC
267 select SAMSUNG_DEV_PWM 267 select SAMSUNG_DEV_PWM
268 select SAMSUNG_DEV_TS 268 select SAMSUNG_DEV_TS
@@ -284,26 +284,26 @@ config MACH_SMARTQ7
284config MACH_WLF_CRAGG_6410 284config MACH_WLF_CRAGG_6410
285 bool "Wolfson Cragganmore 6410" 285 bool "Wolfson Cragganmore 6410"
286 select CPU_S3C6410 286 select CPU_S3C6410
287 select S3C64XX_SETUP_SDHCI 287 select I2C
288 select LEDS_GPIO_REGISTER
289 select S3C64XX_DEV_SPI0
290 select S3C64XX_SETUP_FB_24BPP
288 select S3C64XX_SETUP_I2C1 291 select S3C64XX_SETUP_I2C1
289 select S3C64XX_SETUP_IDE 292 select S3C64XX_SETUP_IDE
290 select S3C64XX_SETUP_FB_24BPP
291 select S3C64XX_SETUP_KEYPAD 293 select S3C64XX_SETUP_KEYPAD
294 select S3C64XX_SETUP_SDHCI
292 select S3C64XX_SETUP_SPI 295 select S3C64XX_SETUP_SPI
293 select S3C64XX_SETUP_USB_PHY 296 select S3C64XX_SETUP_USB_PHY
294 select SAMSUNG_DEV_ADC
295 select SAMSUNG_DEV_KEYPAD
296 select S3C_DEV_USB_HOST
297 select S3C_DEV_USB_HSOTG
298 select S3C_DEV_HSMMC 297 select S3C_DEV_HSMMC
299 select S3C_DEV_HSMMC1 298 select S3C_DEV_HSMMC1
300 select S3C_DEV_HSMMC2 299 select S3C_DEV_HSMMC2
301 select S3C_DEV_I2C1 300 select S3C_DEV_I2C1
302 select S3C_DEV_WDT
303 select S3C_DEV_RTC 301 select S3C_DEV_RTC
304 select S3C64XX_DEV_SPI0 302 select S3C_DEV_USB_HOST
303 select S3C_DEV_USB_HSOTG
304 select S3C_DEV_WDT
305 select SAMSUNG_DEV_ADC
306 select SAMSUNG_DEV_KEYPAD
305 select SAMSUNG_GPIO_EXTRA128 307 select SAMSUNG_GPIO_EXTRA128
306 select I2C
307 select LEDS_GPIO_REGISTER
308 help 308 help
309 Machine support for the Wolfson Cragganmore S3C6410 variant. 309 Machine support for the Wolfson Cragganmore S3C6410 variant.
diff --git a/arch/arm/mach-s5p64x0/Kconfig b/arch/arm/mach-s5p64x0/Kconfig
index c87f6108eeb1..e8742cb7ddd9 100644
--- a/arch/arm/mach-s5p64x0/Kconfig
+++ b/arch/arm/mach-s5p64x0/Kconfig
@@ -9,18 +9,18 @@ if ARCH_S5P64X0
9 9
10config CPU_S5P6440 10config CPU_S5P6440
11 bool 11 bool
12 select SAMSUNG_DMADEV
13 select S5P_HRT 12 select S5P_HRT
14 select S5P_SLEEP if PM 13 select S5P_SLEEP if PM
14 select SAMSUNG_DMADEV
15 select SAMSUNG_WAKEMASK if PM 15 select SAMSUNG_WAKEMASK if PM
16 help 16 help
17 Enable S5P6440 CPU support 17 Enable S5P6440 CPU support
18 18
19config CPU_S5P6450 19config CPU_S5P6450
20 bool 20 bool
21 select SAMSUNG_DMADEV
22 select S5P_HRT 21 select S5P_HRT
23 select S5P_SLEEP if PM 22 select S5P_SLEEP if PM
23 select SAMSUNG_DMADEV
24 select SAMSUNG_WAKEMASK if PM 24 select SAMSUNG_WAKEMASK if PM
25 help 25 help
26 Enable S5P6450 CPU support 26 Enable S5P6450 CPU support
@@ -52,19 +52,19 @@ config MACH_SMDK6440
52 bool "SMDK6440" 52 bool "SMDK6440"
53 select CPU_S5P6440 53 select CPU_S5P6440
54 select S3C_DEV_FB 54 select S3C_DEV_FB
55 select S3C_DEV_I2C1
56 select S3C_DEV_RTC
57 select S3C_DEV_WDT
58 select S3C_DEV_HSMMC 55 select S3C_DEV_HSMMC
59 select S3C_DEV_HSMMC1 56 select S3C_DEV_HSMMC1
60 select S3C_DEV_HSMMC2 57 select S3C_DEV_HSMMC2
58 select S3C_DEV_I2C1
59 select S3C_DEV_RTC
60 select S3C_DEV_WDT
61 select S5P64X0_SETUP_FB_24BPP
62 select S5P64X0_SETUP_I2C1
63 select S5P64X0_SETUP_SDHCI_GPIO
61 select SAMSUNG_DEV_ADC 64 select SAMSUNG_DEV_ADC
62 select SAMSUNG_DEV_BACKLIGHT 65 select SAMSUNG_DEV_BACKLIGHT
63 select SAMSUNG_DEV_PWM 66 select SAMSUNG_DEV_PWM
64 select SAMSUNG_DEV_TS 67 select SAMSUNG_DEV_TS
65 select S5P64X0_SETUP_FB_24BPP
66 select S5P64X0_SETUP_I2C1
67 select S5P64X0_SETUP_SDHCI_GPIO
68 help 68 help
69 Machine support for the Samsung SMDK6440 69 Machine support for the Samsung SMDK6440
70 70
@@ -72,19 +72,19 @@ config MACH_SMDK6450
72 bool "SMDK6450" 72 bool "SMDK6450"
73 select CPU_S5P6450 73 select CPU_S5P6450
74 select S3C_DEV_FB 74 select S3C_DEV_FB
75 select S3C_DEV_I2C1
76 select S3C_DEV_RTC
77 select S3C_DEV_WDT
78 select S3C_DEV_HSMMC 75 select S3C_DEV_HSMMC
79 select S3C_DEV_HSMMC1 76 select S3C_DEV_HSMMC1
80 select S3C_DEV_HSMMC2 77 select S3C_DEV_HSMMC2
78 select S3C_DEV_I2C1
79 select S3C_DEV_RTC
80 select S3C_DEV_WDT
81 select S5P64X0_SETUP_FB_24BPP
82 select S5P64X0_SETUP_I2C1
83 select S5P64X0_SETUP_SDHCI_GPIO
81 select SAMSUNG_DEV_ADC 84 select SAMSUNG_DEV_ADC
82 select SAMSUNG_DEV_BACKLIGHT 85 select SAMSUNG_DEV_BACKLIGHT
83 select SAMSUNG_DEV_PWM 86 select SAMSUNG_DEV_PWM
84 select SAMSUNG_DEV_TS 87 select SAMSUNG_DEV_TS
85 select S5P64X0_SETUP_FB_24BPP
86 select S5P64X0_SETUP_I2C1
87 select S5P64X0_SETUP_SDHCI_GPIO
88 help 88 help
89 Machine support for the Samsung SMDK6450 89 Machine support for the Samsung SMDK6450
90 90
diff --git a/arch/arm/mach-s5pc100/Kconfig b/arch/arm/mach-s5pc100/Kconfig
index 75a26eaf2633..15170be97a74 100644
--- a/arch/arm/mach-s5pc100/Kconfig
+++ b/arch/arm/mach-s5pc100/Kconfig
@@ -60,12 +60,6 @@ config MACH_SMDKC100
60 select S3C_DEV_I2C1 60 select S3C_DEV_I2C1
61 select S3C_DEV_RTC 61 select S3C_DEV_RTC
62 select S3C_DEV_WDT 62 select S3C_DEV_WDT
63 select SAMSUNG_DEV_ADC
64 select SAMSUNG_DEV_BACKLIGHT
65 select SAMSUNG_DEV_IDE
66 select SAMSUNG_DEV_KEYPAD
67 select SAMSUNG_DEV_PWM
68 select SAMSUNG_DEV_TS
69 select S5PC100_SETUP_FB_24BPP 63 select S5PC100_SETUP_FB_24BPP
70 select S5PC100_SETUP_I2C1 64 select S5PC100_SETUP_I2C1
71 select S5PC100_SETUP_IDE 65 select S5PC100_SETUP_IDE
@@ -74,6 +68,12 @@ config MACH_SMDKC100
74 select S5P_DEV_FIMC0 68 select S5P_DEV_FIMC0
75 select S5P_DEV_FIMC1 69 select S5P_DEV_FIMC1
76 select S5P_DEV_FIMC2 70 select S5P_DEV_FIMC2
71 select SAMSUNG_DEV_ADC
72 select SAMSUNG_DEV_BACKLIGHT
73 select SAMSUNG_DEV_IDE
74 select SAMSUNG_DEV_KEYPAD
75 select SAMSUNG_DEV_PWM
76 select SAMSUNG_DEV_TS
77 help 77 help
78 Machine support for the Samsung SMDKC100 78 Machine support for the Samsung SMDKC100
79 79
diff --git a/arch/arm/mach-s5pv210/Kconfig b/arch/arm/mach-s5pv210/Kconfig
index 77185c38188b..92ad72f0ef98 100644
--- a/arch/arm/mach-s5pv210/Kconfig
+++ b/arch/arm/mach-s5pv210/Kconfig
@@ -11,11 +11,11 @@ if ARCH_S5PV210
11 11
12config CPU_S5PV210 12config CPU_S5PV210
13 bool 13 bool
14 select SAMSUNG_DMADEV
15 select S5P_EXT_INT 14 select S5P_EXT_INT
16 select S5P_HRT 15 select S5P_HRT
17 select S5P_PM if PM 16 select S5P_PM if PM
18 select S5P_SLEEP if PM 17 select S5P_SLEEP if PM
18 select SAMSUNG_DMADEV
19 help 19 help
20 Enable S5PV210 CPU support 20 Enable S5PV210 CPU support
21 21
@@ -76,44 +76,44 @@ config MACH_AQUILA
76 bool "Aquila" 76 bool "Aquila"
77 select CPU_S5PV210 77 select CPU_S5PV210
78 select S3C_DEV_FB 78 select S3C_DEV_FB
79 select S5P_DEV_FIMC0
80 select S5P_DEV_FIMC1
81 select S5P_DEV_FIMC2
82 select S3C_DEV_HSMMC 79 select S3C_DEV_HSMMC
83 select S3C_DEV_HSMMC1 80 select S3C_DEV_HSMMC1
84 select S3C_DEV_HSMMC2 81 select S3C_DEV_HSMMC2
85 select S5P_DEV_ONENAND
86 select S5PV210_SETUP_FB_24BPP 82 select S5PV210_SETUP_FB_24BPP
87 select S5PV210_SETUP_SDHCI 83 select S5PV210_SETUP_SDHCI
88 select S5PV210_SETUP_USB_PHY 84 select S5PV210_SETUP_USB_PHY
85 select S5P_DEV_FIMC0
86 select S5P_DEV_FIMC1
87 select S5P_DEV_FIMC2
88 select S5P_DEV_ONENAND
89 help 89 help
90 Machine support for the Samsung Aquila target based on S5PC110 SoC 90 Machine support for the Samsung Aquila target based on S5PC110 SoC
91 91
92config MACH_GONI 92config MACH_GONI
93 bool "GONI" 93 bool "GONI"
94 select CPU_S5PV210 94 select CPU_S5PV210
95 select S5P_GPIO_INT
96 select S3C_DEV_FB 95 select S3C_DEV_FB
97 select S5P_DEV_FIMC0
98 select S5P_DEV_FIMC1
99 select S5P_DEV_FIMC2
100 select S3C_DEV_HSMMC 96 select S3C_DEV_HSMMC
101 select S3C_DEV_HSMMC1 97 select S3C_DEV_HSMMC1
102 select S3C_DEV_HSMMC2 98 select S3C_DEV_HSMMC2
103 select S3C_DEV_I2C1 99 select S3C_DEV_I2C1
104 select S3C_DEV_I2C2 100 select S3C_DEV_I2C2
105 select S5P_DEV_MFC
106 select S3C_DEV_USB_HSOTG 101 select S3C_DEV_USB_HSOTG
107 select S5P_DEV_ONENAND
108 select SAMSUNG_DEV_KEYPAD
109 select S5P_DEV_TV
110 select S5PV210_SETUP_FB_24BPP 102 select S5PV210_SETUP_FB_24BPP
103 select S5PV210_SETUP_FIMC
111 select S5PV210_SETUP_I2C1 104 select S5PV210_SETUP_I2C1
112 select S5PV210_SETUP_I2C2 105 select S5PV210_SETUP_I2C2
113 select S5PV210_SETUP_KEYPAD 106 select S5PV210_SETUP_KEYPAD
114 select S5PV210_SETUP_SDHCI 107 select S5PV210_SETUP_SDHCI
115 select S5PV210_SETUP_FIMC
116 select S5PV210_SETUP_USB_PHY 108 select S5PV210_SETUP_USB_PHY
109 select S5P_DEV_FIMC0
110 select S5P_DEV_FIMC1
111 select S5P_DEV_FIMC2
112 select S5P_DEV_MFC
113 select S5P_DEV_ONENAND
114 select S5P_DEV_TV
115 select S5P_GPIO_INT
116 select SAMSUNG_DEV_KEYPAD
117 help 117 help
118 Machine support for Samsung GONI board 118 Machine support for Samsung GONI board
119 S5PC110(MCP) is one of package option of S5PV210 119 S5PC110(MCP) is one of package option of S5PV210
@@ -125,14 +125,14 @@ config MACH_SMDKC110
125 select S3C_DEV_I2C2 125 select S3C_DEV_I2C2
126 select S3C_DEV_RTC 126 select S3C_DEV_RTC
127 select S3C_DEV_WDT 127 select S3C_DEV_WDT
128 select S5PV210_SETUP_I2C1
129 select S5PV210_SETUP_I2C2
130 select S5PV210_SETUP_IDE
128 select S5P_DEV_FIMC0 131 select S5P_DEV_FIMC0
129 select S5P_DEV_FIMC1 132 select S5P_DEV_FIMC1
130 select S5P_DEV_FIMC2 133 select S5P_DEV_FIMC2
131 select S5P_DEV_MFC 134 select S5P_DEV_MFC
132 select SAMSUNG_DEV_IDE 135 select SAMSUNG_DEV_IDE
133 select S5PV210_SETUP_I2C1
134 select S5PV210_SETUP_I2C2
135 select S5PV210_SETUP_IDE
136 help 136 help
137 Machine support for Samsung SMDKC110 137 Machine support for Samsung SMDKC110
138 S5PC110(MCP) is one of package option of S5PV210 138 S5PC110(MCP) is one of package option of S5PV210
@@ -154,6 +154,13 @@ config MACH_SMDKV210
154 select S3C_DEV_RTC 154 select S3C_DEV_RTC
155 select S3C_DEV_USB_HSOTG 155 select S3C_DEV_USB_HSOTG
156 select S3C_DEV_WDT 156 select S3C_DEV_WDT
157 select S5PV210_SETUP_FB_24BPP
158 select S5PV210_SETUP_I2C1
159 select S5PV210_SETUP_I2C2
160 select S5PV210_SETUP_IDE
161 select S5PV210_SETUP_KEYPAD
162 select S5PV210_SETUP_SDHCI
163 select S5PV210_SETUP_USB_PHY
157 select S5P_DEV_FIMC0 164 select S5P_DEV_FIMC0
158 select S5P_DEV_FIMC1 165 select S5P_DEV_FIMC1
159 select S5P_DEV_FIMC2 166 select S5P_DEV_FIMC2
@@ -165,20 +172,13 @@ config MACH_SMDKV210
165 select SAMSUNG_DEV_KEYPAD 172 select SAMSUNG_DEV_KEYPAD
166 select SAMSUNG_DEV_PWM 173 select SAMSUNG_DEV_PWM
167 select SAMSUNG_DEV_TS 174 select SAMSUNG_DEV_TS
168 select S5PV210_SETUP_FB_24BPP
169 select S5PV210_SETUP_I2C1
170 select S5PV210_SETUP_I2C2
171 select S5PV210_SETUP_IDE
172 select S5PV210_SETUP_KEYPAD
173 select S5PV210_SETUP_SDHCI
174 select S5PV210_SETUP_USB_PHY
175 help 175 help
176 Machine support for Samsung SMDKV210 176 Machine support for Samsung SMDKV210
177 177
178config MACH_TORBRECK 178config MACH_TORBRECK
179 bool "Torbreck" 179 bool "Torbreck"
180 select CPU_S5PV210
181 select ARCH_SPARSEMEM_ENABLE 180 select ARCH_SPARSEMEM_ENABLE
181 select CPU_S5PV210
182 select S3C_DEV_HSMMC 182 select S3C_DEV_HSMMC
183 select S3C_DEV_HSMMC1 183 select S3C_DEV_HSMMC1
184 select S3C_DEV_HSMMC2 184 select S3C_DEV_HSMMC2
diff --git a/arch/arm/mach-sa1100/Kconfig b/arch/arm/mach-sa1100/Kconfig
index 42625e4d949a..ca14dbdcfb22 100644
--- a/arch/arm/mach-sa1100/Kconfig
+++ b/arch/arm/mach-sa1100/Kconfig
@@ -49,15 +49,15 @@ config SA1100_COLLIE
49 bool "Sharp Zaurus SL5500" 49 bool "Sharp Zaurus SL5500"
50 # FIXME: select CPU_FREQ_SA11x0 50 # FIXME: select CPU_FREQ_SA11x0
51 select SHARP_LOCOMO 51 select SHARP_LOCOMO
52 select SHARP_SCOOP
53 select SHARP_PARAM 52 select SHARP_PARAM
53 select SHARP_SCOOP
54 help 54 help
55 Say Y here to support the Sharp Zaurus SL5500 PDAs. 55 Say Y here to support the Sharp Zaurus SL5500 PDAs.
56 56
57config SA1100_H3100 57config SA1100_H3100
58 bool "Compaq iPAQ H3100" 58 bool "Compaq iPAQ H3100"
59 select HTC_EGPIO
60 select CPU_FREQ_SA1110 59 select CPU_FREQ_SA1110
60 select HTC_EGPIO
61 help 61 help
62 Say Y here if you intend to run this kernel on the Compaq iPAQ 62 Say Y here if you intend to run this kernel on the Compaq iPAQ
63 H3100 handheld computer. Information about this machine and the 63 H3100 handheld computer. Information about this machine and the
@@ -67,8 +67,8 @@ config SA1100_H3100
67 67
68config SA1100_H3600 68config SA1100_H3600
69 bool "Compaq iPAQ H3600/H3700" 69 bool "Compaq iPAQ H3600/H3700"
70 select HTC_EGPIO
71 select CPU_FREQ_SA1110 70 select CPU_FREQ_SA1110
71 select HTC_EGPIO
72 help 72 help
73 Say Y here if you intend to run this kernel on the Compaq iPAQ 73 Say Y here if you intend to run this kernel on the Compaq iPAQ
74 H3600 handheld computer. Information about this machine and the 74 H3600 handheld computer. Information about this machine and the
@@ -78,16 +78,16 @@ config SA1100_H3600
78 78
79config SA1100_BADGE4 79config SA1100_BADGE4
80 bool "HP Labs BadgePAD 4" 80 bool "HP Labs BadgePAD 4"
81 select SA1111
82 select CPU_FREQ_SA1100 81 select CPU_FREQ_SA1100
82 select SA1111
83 help 83 help
84 Say Y here if you want to build a kernel for the HP Laboratories 84 Say Y here if you want to build a kernel for the HP Laboratories
85 BadgePAD 4. 85 BadgePAD 4.
86 86
87config SA1100_JORNADA720 87config SA1100_JORNADA720
88 bool "HP Jornada 720" 88 bool "HP Jornada 720"
89 select SA1111
90 # FIXME: select CPU_FREQ_SA11x0 89 # FIXME: select CPU_FREQ_SA11x0
90 select SA1111
91 help 91 help
92 Say Y here if you want to build a kernel for the HP Jornada 720 92 Say Y here if you want to build a kernel for the HP Jornada 720
93 handheld computer. See 93 handheld computer. See
@@ -95,8 +95,8 @@ config SA1100_JORNADA720
95 95
96config SA1100_JORNADA720_SSP 96config SA1100_JORNADA720_SSP
97 bool "HP Jornada 720 Extended SSP driver" 97 bool "HP Jornada 720 Extended SSP driver"
98 select SA1100_SSP
99 depends on SA1100_JORNADA720 98 depends on SA1100_JORNADA720
99 select SA1100_SSP
100 help 100 help
101 Say Y here if you have a HP Jornada 7xx handheld computer and you 101 Say Y here if you have a HP Jornada 7xx handheld computer and you
102 want to access devices connected to the MCU. Those include the 102 want to access devices connected to the MCU. Those include the
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig
index 4cacc2d22fbe..8ae100cc655c 100644
--- a/arch/arm/mach-shmobile/Kconfig
+++ b/arch/arm/mach-shmobile/Kconfig
@@ -4,49 +4,49 @@ comment "SH-Mobile System Type"
4 4
5config ARCH_SH7367 5config ARCH_SH7367
6 bool "SH-Mobile G3 (SH7367)" 6 bool "SH-Mobile G3 (SH7367)"
7 select ARCH_WANT_OPTIONAL_GPIOLIB
7 select CPU_V6 8 select CPU_V6
8 select SH_CLK_CPG 9 select SH_CLK_CPG
9 select ARCH_WANT_OPTIONAL_GPIOLIB
10 10
11config ARCH_SH7377 11config ARCH_SH7377
12 bool "SH-Mobile G4 (SH7377)" 12 bool "SH-Mobile G4 (SH7377)"
13 select ARCH_WANT_OPTIONAL_GPIOLIB
13 select CPU_V7 14 select CPU_V7
14 select SH_CLK_CPG 15 select SH_CLK_CPG
15 select ARCH_WANT_OPTIONAL_GPIOLIB
16 16
17config ARCH_SH7372 17config ARCH_SH7372
18 bool "SH-Mobile AP4 (SH7372)" 18 bool "SH-Mobile AP4 (SH7372)"
19 select CPU_V7
20 select SH_CLK_CPG
21 select ARCH_WANT_OPTIONAL_GPIOLIB 19 select ARCH_WANT_OPTIONAL_GPIOLIB
22 select ARM_CPU_SUSPEND if PM || CPU_IDLE 20 select ARM_CPU_SUSPEND if PM || CPU_IDLE
21 select CPU_V7
22 select SH_CLK_CPG
23 23
24config ARCH_SH73A0 24config ARCH_SH73A0
25 bool "SH-Mobile AG5 (R8A73A00)" 25 bool "SH-Mobile AG5 (R8A73A00)"
26 select CPU_V7
27 select SH_CLK_CPG
28 select ARCH_WANT_OPTIONAL_GPIOLIB 26 select ARCH_WANT_OPTIONAL_GPIOLIB
29 select ARM_GIC 27 select ARM_GIC
28 select CPU_V7
30 select I2C 29 select I2C
30 select SH_CLK_CPG
31 31
32config ARCH_R8A7740 32config ARCH_R8A7740
33 bool "R-Mobile A1 (R8A77400)" 33 bool "R-Mobile A1 (R8A77400)"
34 select ARCH_WANT_OPTIONAL_GPIOLIB
34 select CPU_V7 35 select CPU_V7
35 select SH_CLK_CPG 36 select SH_CLK_CPG
36 select ARCH_WANT_OPTIONAL_GPIOLIB
37 37
38config ARCH_R8A7779 38config ARCH_R8A7779
39 bool "R-Car H1 (R8A77790)" 39 bool "R-Car H1 (R8A77790)"
40 select ARCH_WANT_OPTIONAL_GPIOLIB
41 select ARM_GIC
40 select CPU_V7 42 select CPU_V7
41 select SH_CLK_CPG 43 select SH_CLK_CPG
42 select ARM_GIC
43 select ARCH_WANT_OPTIONAL_GPIOLIB
44 44
45config ARCH_EMEV2 45config ARCH_EMEV2
46 bool "Emma Mobile EV2" 46 bool "Emma Mobile EV2"
47 select CPU_V7
48 select ARM_GIC
49 select ARCH_WANT_OPTIONAL_GPIOLIB 47 select ARCH_WANT_OPTIONAL_GPIOLIB
48 select ARM_GIC
49 select CPU_V7
50 50
51comment "SH-Mobile Board Type" 51comment "SH-Mobile Board Type"
52 52
@@ -65,9 +65,9 @@ config MACH_AP4EVB
65 bool "AP4EVB board" 65 bool "AP4EVB board"
66 depends on ARCH_SH7372 66 depends on ARCH_SH7372
67 select ARCH_REQUIRE_GPIOLIB 67 select ARCH_REQUIRE_GPIOLIB
68 select REGULATOR_FIXED_VOLTAGE if REGULATOR
68 select SH_LCD_MIPI_DSI 69 select SH_LCD_MIPI_DSI
69 select SND_SOC_AK4642 if SND_SIMPLE_CARD 70 select SND_SOC_AK4642 if SND_SIMPLE_CARD
70 select REGULATOR_FIXED_VOLTAGE if REGULATOR
71 71
72choice 72choice
73 prompt "AP4EVB LCD panel selection" 73 prompt "AP4EVB LCD panel selection"
@@ -84,37 +84,37 @@ endchoice
84 84
85config MACH_AG5EVM 85config MACH_AG5EVM
86 bool "AG5EVM board" 86 bool "AG5EVM board"
87 depends on ARCH_SH73A0
87 select ARCH_REQUIRE_GPIOLIB 88 select ARCH_REQUIRE_GPIOLIB
88 select SH_LCD_MIPI_DSI
89 select REGULATOR_FIXED_VOLTAGE if REGULATOR 89 select REGULATOR_FIXED_VOLTAGE if REGULATOR
90 depends on ARCH_SH73A0 90 select SH_LCD_MIPI_DSI
91 91
92config MACH_MACKEREL 92config MACH_MACKEREL
93 bool "mackerel board" 93 bool "mackerel board"
94 depends on ARCH_SH7372 94 depends on ARCH_SH7372
95 select ARCH_REQUIRE_GPIOLIB 95 select ARCH_REQUIRE_GPIOLIB
96 select SND_SOC_AK4642 if SND_SIMPLE_CARD
97 select REGULATOR_FIXED_VOLTAGE if REGULATOR 96 select REGULATOR_FIXED_VOLTAGE if REGULATOR
97 select SND_SOC_AK4642 if SND_SIMPLE_CARD
98 98
99config MACH_KOTA2 99config MACH_KOTA2
100 bool "KOTA2 board" 100 bool "KOTA2 board"
101 depends on ARCH_SH73A0
101 select ARCH_REQUIRE_GPIOLIB 102 select ARCH_REQUIRE_GPIOLIB
102 select REGULATOR_FIXED_VOLTAGE if REGULATOR 103 select REGULATOR_FIXED_VOLTAGE if REGULATOR
103 depends on ARCH_SH73A0
104 104
105config MACH_BONITO 105config MACH_BONITO
106 bool "bonito board" 106 bool "bonito board"
107 depends on ARCH_R8A7740
107 select ARCH_REQUIRE_GPIOLIB 108 select ARCH_REQUIRE_GPIOLIB
108 select REGULATOR_FIXED_VOLTAGE if REGULATOR 109 select REGULATOR_FIXED_VOLTAGE if REGULATOR
109 depends on ARCH_R8A7740
110 110
111config MACH_ARMADILLO800EVA 111config MACH_ARMADILLO800EVA
112 bool "Armadillo-800 EVA board" 112 bool "Armadillo-800 EVA board"
113 depends on ARCH_R8A7740 113 depends on ARCH_R8A7740
114 select ARCH_REQUIRE_GPIOLIB 114 select ARCH_REQUIRE_GPIOLIB
115 select USE_OF
116 select REGULATOR_FIXED_VOLTAGE if REGULATOR 115 select REGULATOR_FIXED_VOLTAGE if REGULATOR
117 select SND_SOC_WM8978 if SND_SIMPLE_CARD 116 select SND_SOC_WM8978 if SND_SIMPLE_CARD
117 select USE_OF
118 118
119config MACH_MARZEN 119config MACH_MARZEN
120 bool "MARZEN board" 120 bool "MARZEN board"
@@ -125,16 +125,16 @@ config MACH_MARZEN
125config MACH_KZM9D 125config MACH_KZM9D
126 bool "KZM9D board" 126 bool "KZM9D board"
127 depends on ARCH_EMEV2 127 depends on ARCH_EMEV2
128 select USE_OF
129 select REGULATOR_FIXED_VOLTAGE if REGULATOR 128 select REGULATOR_FIXED_VOLTAGE if REGULATOR
129 select USE_OF
130 130
131config MACH_KZM9G 131config MACH_KZM9G
132 bool "KZM-A9-GT board" 132 bool "KZM-A9-GT board"
133 depends on ARCH_SH73A0 133 depends on ARCH_SH73A0
134 select ARCH_REQUIRE_GPIOLIB 134 select ARCH_REQUIRE_GPIOLIB
135 select USE_OF
136 select SND_SOC_AK4642 if SND_SIMPLE_CARD
137 select REGULATOR_FIXED_VOLTAGE if REGULATOR 135 select REGULATOR_FIXED_VOLTAGE if REGULATOR
136 select SND_SOC_AK4642 if SND_SIMPLE_CARD
137 select USE_OF
138 138
139comment "SH-Mobile System Configuration" 139comment "SH-Mobile System Configuration"
140 140
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index 11680c532b38..9ff6f6ea3617 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -4,42 +4,42 @@ comment "NVIDIA Tegra options"
4 4
5config ARCH_TEGRA_2x_SOC 5config ARCH_TEGRA_2x_SOC
6 bool "Enable support for Tegra20 family" 6 bool "Enable support for Tegra20 family"
7 select CPU_V7
8 select ARM_GIC
9 select ARCH_REQUIRE_GPIOLIB 7 select ARCH_REQUIRE_GPIOLIB
10 select PINCTRL
11 select PINCTRL_TEGRA20
12 select USB_ARCH_HAS_EHCI if USB_SUPPORT
13 select USB_ULPI if USB
14 select USB_ULPI_VIEWPORT if USB_SUPPORT
15 select ARM_ERRATA_720789 8 select ARM_ERRATA_720789
16 select ARM_ERRATA_742230 9 select ARM_ERRATA_742230
17 select ARM_ERRATA_751472 10 select ARM_ERRATA_751472
18 select ARM_ERRATA_754327 11 select ARM_ERRATA_754327
19 select ARM_ERRATA_764369 if SMP 12 select ARM_ERRATA_764369 if SMP
13 select ARM_GIC
14 select CPU_FREQ_TABLE if CPU_FREQ
15 select CPU_V7
16 select PINCTRL
17 select PINCTRL_TEGRA20
20 select PL310_ERRATA_727915 if CACHE_L2X0 18 select PL310_ERRATA_727915 if CACHE_L2X0
21 select PL310_ERRATA_769419 if CACHE_L2X0 19 select PL310_ERRATA_769419 if CACHE_L2X0
22 select CPU_FREQ_TABLE if CPU_FREQ 20 select USB_ARCH_HAS_EHCI if USB_SUPPORT
21 select USB_ULPI if USB
22 select USB_ULPI_VIEWPORT if USB_SUPPORT
23 help 23 help
24 Support for NVIDIA Tegra AP20 and T20 processors, based on the 24 Support for NVIDIA Tegra AP20 and T20 processors, based on the
25 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller 25 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
26 26
27config ARCH_TEGRA_3x_SOC 27config ARCH_TEGRA_3x_SOC
28 bool "Enable support for Tegra30 family" 28 bool "Enable support for Tegra30 family"
29 select CPU_V7
30 select ARM_GIC
31 select ARCH_REQUIRE_GPIOLIB 29 select ARCH_REQUIRE_GPIOLIB
32 select PINCTRL
33 select PINCTRL_TEGRA30
34 select USB_ARCH_HAS_EHCI if USB_SUPPORT
35 select USB_ULPI if USB
36 select USB_ULPI_VIEWPORT if USB_SUPPORT
37 select ARM_ERRATA_743622 30 select ARM_ERRATA_743622
38 select ARM_ERRATA_751472 31 select ARM_ERRATA_751472
39 select ARM_ERRATA_754322 32 select ARM_ERRATA_754322
40 select ARM_ERRATA_764369 if SMP 33 select ARM_ERRATA_764369 if SMP
41 select PL310_ERRATA_769419 if CACHE_L2X0 34 select ARM_GIC
42 select CPU_FREQ_TABLE if CPU_FREQ 35 select CPU_FREQ_TABLE if CPU_FREQ
36 select CPU_V7
37 select PINCTRL
38 select PINCTRL_TEGRA30
39 select PL310_ERRATA_769419 if CACHE_L2X0
40 select USB_ARCH_HAS_EHCI if USB_SUPPORT
41 select USB_ULPI if USB
42 select USB_ULPI_VIEWPORT if USB_SUPPORT
43 help 43 help
44 Support for NVIDIA Tegra T30 processor family, based on the 44 Support for NVIDIA Tegra T30 processor family, based on the
45 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller 45 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
diff --git a/arch/arm/mach-u300/Kconfig b/arch/arm/mach-u300/Kconfig
index f7e12ede008c..1f597647d431 100644
--- a/arch/arm/mach-u300/Kconfig
+++ b/arch/arm/mach-u300/Kconfig
@@ -7,8 +7,8 @@ comment "ST-Ericsson Mobile Platform Products"
7config MACH_U300 7config MACH_U300
8 bool "U300" 8 bool "U300"
9 select PINCTRL 9 select PINCTRL
10 select PINCTRL_U300
11 select PINCTRL_COH901 10 select PINCTRL_COH901
11 select PINCTRL_U300
12 12
13comment "ST-Ericsson U300/U335 Feature Selections" 13comment "ST-Ericsson U300/U335 Feature Selections"
14 14
diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index 5848206ee9b9..e8c3f0d70ca6 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -3,33 +3,33 @@ if ARCH_U8500
3config UX500_SOC_COMMON 3config UX500_SOC_COMMON
4 bool 4 bool
5 default y 5 default y
6 select ARM_GIC
7 select HAS_MTU
8 select PL310_ERRATA_753970 if CACHE_PL310
9 select ARM_ERRATA_754322 6 select ARM_ERRATA_754322
10 select ARM_ERRATA_764369 if SMP 7 select ARM_ERRATA_764369 if SMP
8 select ARM_GIC
11 select CACHE_L2X0 9 select CACHE_L2X0
10 select COMMON_CLK
11 select HAS_MTU
12 select PINCTRL 12 select PINCTRL
13 select PINCTRL_NOMADIK 13 select PINCTRL_NOMADIK
14 select COMMON_CLK 14 select PL310_ERRATA_753970 if CACHE_PL310
15 15
16config UX500_SOC_DB8500 16config UX500_SOC_DB8500
17 bool 17 bool
18 select CPU_FREQ_TABLE if CPU_FREQ
18 select MFD_DB8500_PRCMU 19 select MFD_DB8500_PRCMU
20 select PINCTRL_DB8500
19 select REGULATOR 21 select REGULATOR
20 select REGULATOR_DB8500_PRCMU 22 select REGULATOR_DB8500_PRCMU
21 select CPU_FREQ_TABLE if CPU_FREQ
22 select PINCTRL_DB8500
23 23
24menu "Ux500 target platform (boards)" 24menu "Ux500 target platform (boards)"
25 25
26config MACH_MOP500 26config MACH_MOP500
27 bool "U8500 Development platform, MOP500 versions" 27 bool "U8500 Development platform, MOP500 versions"
28 select UX500_SOC_DB8500
29 select I2C 28 select I2C
30 select I2C_NOMADIK 29 select I2C_NOMADIK
31 select SOC_BUS
32 select REGULATOR_FIXED_VOLTAGE 30 select REGULATOR_FIXED_VOLTAGE
31 select SOC_BUS
32 select UX500_SOC_DB8500
33 help 33 help
34 Include support for the MOP500 development platform. 34 Include support for the MOP500 development platform.
35 35
diff --git a/arch/arm/mach-versatile/Kconfig b/arch/arm/mach-versatile/Kconfig
index c1f38f6625b2..63d8e9f81b99 100644
--- a/arch/arm/mach-versatile/Kconfig
+++ b/arch/arm/mach-versatile/Kconfig
@@ -3,9 +3,9 @@ menu "Versatile platform type"
3 3
4config ARCH_VERSATILE_PB 4config ARCH_VERSATILE_PB
5 bool "Support Versatile Platform Baseboard for ARM926EJ-S" 5 bool "Support Versatile Platform Baseboard for ARM926EJ-S"
6 default y
6 select CPU_ARM926T 7 select CPU_ARM926T
7 select MIGHT_HAVE_PCI 8 select MIGHT_HAVE_PCI
8 default y
9 help 9 help
10 Include support for the ARM(R) Versatile Platform Baseboard 10 Include support for the ARM(R) Versatile Platform Baseboard
11 for the ARM926EJ-S. 11 for the ARM926EJ-S.
@@ -19,8 +19,8 @@ config MACH_VERSATILE_AB
19 19
20config MACH_VERSATILE_DT 20config MACH_VERSATILE_DT
21 bool "Support Versatile platform from device tree" 21 bool "Support Versatile platform from device tree"
22 select USE_OF
23 select CPU_ARM926T 22 select CPU_ARM926T
23 select USE_OF
24 help 24 help
25 Include support for the ARM(R) Versatile/PB platform, 25 Include support for the ARM(R) Versatile/PB platform,
26 using the device tree for discovery 26 using the device tree for discovery
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index c9a4963b5c3d..94186b6c685f 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -10,8 +10,8 @@ config CPU_ARM7TDMI
10 depends on !MMU 10 depends on !MMU
11 select CPU_32v4T 11 select CPU_32v4T
12 select CPU_ABRT_LV4T 12 select CPU_ABRT_LV4T
13 select CPU_PABRT_LEGACY
14 select CPU_CACHE_V4 13 select CPU_CACHE_V4
14 select CPU_PABRT_LEGACY
15 help 15 help
16 A 32-bit RISC microprocessor based on the ARM7 processor core 16 A 32-bit RISC microprocessor based on the ARM7 processor core
17 which has no memory control unit and cache. 17 which has no memory control unit and cache.
@@ -24,11 +24,11 @@ config CPU_ARM720T
24 bool "Support ARM720T processor" if ARCH_INTEGRATOR 24 bool "Support ARM720T processor" if ARCH_INTEGRATOR
25 select CPU_32v4T 25 select CPU_32v4T
26 select CPU_ABRT_LV4T 26 select CPU_ABRT_LV4T
27 select CPU_PABRT_LEGACY
28 select CPU_CACHE_V4 27 select CPU_CACHE_V4
29 select CPU_CACHE_VIVT 28 select CPU_CACHE_VIVT
30 select CPU_CP15_MMU
31 select CPU_COPY_V4WT if MMU 29 select CPU_COPY_V4WT if MMU
30 select CPU_CP15_MMU
31 select CPU_PABRT_LEGACY
32 select CPU_TLB_V4WT if MMU 32 select CPU_TLB_V4WT if MMU
33 help 33 help
34 A 32-bit RISC processor with 8kByte Cache, Write Buffer and 34 A 32-bit RISC processor with 8kByte Cache, Write Buffer and
@@ -43,9 +43,9 @@ config CPU_ARM740T
43 depends on !MMU 43 depends on !MMU
44 select CPU_32v4T 44 select CPU_32v4T
45 select CPU_ABRT_LV4T 45 select CPU_ABRT_LV4T
46 select CPU_PABRT_LEGACY
47 select CPU_CACHE_V3 # although the core is v4t 46 select CPU_CACHE_V3 # although the core is v4t
48 select CPU_CP15_MPU 47 select CPU_CP15_MPU
48 select CPU_PABRT_LEGACY
49 help 49 help
50 A 32-bit RISC processor with 8KB cache or 4KB variants, 50 A 32-bit RISC processor with 8KB cache or 4KB variants,
51 write buffer and MPU(Protection Unit) built around 51 write buffer and MPU(Protection Unit) built around
@@ -60,8 +60,8 @@ config CPU_ARM9TDMI
60 depends on !MMU 60 depends on !MMU
61 select CPU_32v4T 61 select CPU_32v4T
62 select CPU_ABRT_NOMMU 62 select CPU_ABRT_NOMMU
63 select CPU_PABRT_LEGACY
64 select CPU_CACHE_V4 63 select CPU_CACHE_V4
64 select CPU_PABRT_LEGACY
65 help 65 help
66 A 32-bit RISC microprocessor based on the ARM9 processor core 66 A 32-bit RISC microprocessor based on the ARM9 processor core
67 which has no memory control unit and cache. 67 which has no memory control unit and cache.
@@ -74,11 +74,11 @@ config CPU_ARM920T
74 bool "Support ARM920T processor" if ARCH_INTEGRATOR 74 bool "Support ARM920T processor" if ARCH_INTEGRATOR
75 select CPU_32v4T 75 select CPU_32v4T
76 select CPU_ABRT_EV4T 76 select CPU_ABRT_EV4T
77 select CPU_PABRT_LEGACY
78 select CPU_CACHE_V4WT 77 select CPU_CACHE_V4WT
79 select CPU_CACHE_VIVT 78 select CPU_CACHE_VIVT
80 select CPU_CP15_MMU
81 select CPU_COPY_V4WB if MMU 79 select CPU_COPY_V4WB if MMU
80 select CPU_CP15_MMU
81 select CPU_PABRT_LEGACY
82 select CPU_TLB_V4WBI if MMU 82 select CPU_TLB_V4WBI if MMU
83 help 83 help
84 The ARM920T is licensed to be produced by numerous vendors, 84 The ARM920T is licensed to be produced by numerous vendors,
@@ -92,11 +92,11 @@ config CPU_ARM922T
92 bool "Support ARM922T processor" if ARCH_INTEGRATOR 92 bool "Support ARM922T processor" if ARCH_INTEGRATOR
93 select CPU_32v4T 93 select CPU_32v4T
94 select CPU_ABRT_EV4T 94 select CPU_ABRT_EV4T
95 select CPU_PABRT_LEGACY
96 select CPU_CACHE_V4WT 95 select CPU_CACHE_V4WT
97 select CPU_CACHE_VIVT 96 select CPU_CACHE_VIVT
98 select CPU_CP15_MMU
99 select CPU_COPY_V4WB if MMU 97 select CPU_COPY_V4WB if MMU
98 select CPU_CP15_MMU
99 select CPU_PABRT_LEGACY
100 select CPU_TLB_V4WBI if MMU 100 select CPU_TLB_V4WBI if MMU
101 help 101 help
102 The ARM922T is a version of the ARM920T, but with smaller 102 The ARM922T is a version of the ARM920T, but with smaller
@@ -111,11 +111,11 @@ config CPU_ARM925T
111 bool "Support ARM925T processor" if ARCH_OMAP1 111 bool "Support ARM925T processor" if ARCH_OMAP1
112 select CPU_32v4T 112 select CPU_32v4T
113 select CPU_ABRT_EV4T 113 select CPU_ABRT_EV4T
114 select CPU_PABRT_LEGACY
115 select CPU_CACHE_V4WT 114 select CPU_CACHE_V4WT
116 select CPU_CACHE_VIVT 115 select CPU_CACHE_VIVT
117 select CPU_CP15_MMU
118 select CPU_COPY_V4WB if MMU 116 select CPU_COPY_V4WB if MMU
117 select CPU_CP15_MMU
118 select CPU_PABRT_LEGACY
119 select CPU_TLB_V4WBI if MMU 119 select CPU_TLB_V4WBI if MMU
120 help 120 help
121 The ARM925T is a mix between the ARM920T and ARM926T, but with 121 The ARM925T is a mix between the ARM920T and ARM926T, but with
@@ -130,10 +130,10 @@ config CPU_ARM926T
130 bool "Support ARM926T processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB 130 bool "Support ARM926T processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB
131 select CPU_32v5 131 select CPU_32v5
132 select CPU_ABRT_EV5TJ 132 select CPU_ABRT_EV5TJ
133 select CPU_PABRT_LEGACY
134 select CPU_CACHE_VIVT 133 select CPU_CACHE_VIVT
135 select CPU_CP15_MMU
136 select CPU_COPY_V4WB if MMU 134 select CPU_COPY_V4WB if MMU
135 select CPU_CP15_MMU
136 select CPU_PABRT_LEGACY
137 select CPU_TLB_V4WBI if MMU 137 select CPU_TLB_V4WBI if MMU
138 help 138 help
139 This is a variant of the ARM920. It has slightly different 139 This is a variant of the ARM920. It has slightly different
@@ -148,11 +148,11 @@ config CPU_FA526
148 bool 148 bool
149 select CPU_32v4 149 select CPU_32v4
150 select CPU_ABRT_EV4 150 select CPU_ABRT_EV4
151 select CPU_PABRT_LEGACY
152 select CPU_CACHE_VIVT
153 select CPU_CP15_MMU
154 select CPU_CACHE_FA 151 select CPU_CACHE_FA
152 select CPU_CACHE_VIVT
155 select CPU_COPY_FA if MMU 153 select CPU_COPY_FA if MMU
154 select CPU_CP15_MMU
155 select CPU_PABRT_LEGACY
156 select CPU_TLB_FA if MMU 156 select CPU_TLB_FA if MMU
157 help 157 help
158 The FA526 is a version of the ARMv4 compatible processor with 158 The FA526 is a version of the ARMv4 compatible processor with
@@ -167,9 +167,9 @@ config CPU_ARM940T
167 depends on !MMU 167 depends on !MMU
168 select CPU_32v4T 168 select CPU_32v4T
169 select CPU_ABRT_NOMMU 169 select CPU_ABRT_NOMMU
170 select CPU_PABRT_LEGACY
171 select CPU_CACHE_VIVT 170 select CPU_CACHE_VIVT
172 select CPU_CP15_MPU 171 select CPU_CP15_MPU
172 select CPU_PABRT_LEGACY
173 help 173 help
174 ARM940T is a member of the ARM9TDMI family of general- 174 ARM940T is a member of the ARM9TDMI family of general-
175 purpose microprocessors with MPU and separate 4KB 175 purpose microprocessors with MPU and separate 4KB
@@ -185,9 +185,9 @@ config CPU_ARM946E
185 depends on !MMU 185 depends on !MMU
186 select CPU_32v5 186 select CPU_32v5
187 select CPU_ABRT_NOMMU 187 select CPU_ABRT_NOMMU
188 select CPU_PABRT_LEGACY
189 select CPU_CACHE_VIVT 188 select CPU_CACHE_VIVT
190 select CPU_CP15_MPU 189 select CPU_CP15_MPU
190 select CPU_PABRT_LEGACY
191 help 191 help
192 ARM946E-S is a member of the ARM9E-S family of high- 192 ARM946E-S is a member of the ARM9E-S family of high-
193 performance, 32-bit system-on-chip processor solutions. 193 performance, 32-bit system-on-chip processor solutions.
@@ -201,11 +201,11 @@ config CPU_ARM1020
201 bool "Support ARM1020T (rev 0) processor" if ARCH_INTEGRATOR 201 bool "Support ARM1020T (rev 0) processor" if ARCH_INTEGRATOR
202 select CPU_32v5 202 select CPU_32v5
203 select CPU_ABRT_EV4T 203 select CPU_ABRT_EV4T
204 select CPU_PABRT_LEGACY
205 select CPU_CACHE_V4WT 204 select CPU_CACHE_V4WT
206 select CPU_CACHE_VIVT 205 select CPU_CACHE_VIVT
207 select CPU_CP15_MMU
208 select CPU_COPY_V4WB if MMU 206 select CPU_COPY_V4WB if MMU
207 select CPU_CP15_MMU
208 select CPU_PABRT_LEGACY
209 select CPU_TLB_V4WBI if MMU 209 select CPU_TLB_V4WBI if MMU
210 help 210 help
211 The ARM1020 is the 32K cached version of the ARM10 processor, 211 The ARM1020 is the 32K cached version of the ARM10 processor,
@@ -217,25 +217,25 @@ config CPU_ARM1020
217# ARM1020E - needs validating 217# ARM1020E - needs validating
218config CPU_ARM1020E 218config CPU_ARM1020E
219 bool "Support ARM1020E processor" if ARCH_INTEGRATOR 219 bool "Support ARM1020E processor" if ARCH_INTEGRATOR
220 depends on n
220 select CPU_32v5 221 select CPU_32v5
221 select CPU_ABRT_EV4T 222 select CPU_ABRT_EV4T
222 select CPU_PABRT_LEGACY
223 select CPU_CACHE_V4WT 223 select CPU_CACHE_V4WT
224 select CPU_CACHE_VIVT 224 select CPU_CACHE_VIVT
225 select CPU_CP15_MMU
226 select CPU_COPY_V4WB if MMU 225 select CPU_COPY_V4WB if MMU
226 select CPU_CP15_MMU
227 select CPU_PABRT_LEGACY
227 select CPU_TLB_V4WBI if MMU 228 select CPU_TLB_V4WBI if MMU
228 depends on n
229 229
230# ARM1022E 230# ARM1022E
231config CPU_ARM1022 231config CPU_ARM1022
232 bool "Support ARM1022E processor" if ARCH_INTEGRATOR 232 bool "Support ARM1022E processor" if ARCH_INTEGRATOR
233 select CPU_32v5 233 select CPU_32v5
234 select CPU_ABRT_EV4T 234 select CPU_ABRT_EV4T
235 select CPU_PABRT_LEGACY
236 select CPU_CACHE_VIVT 235 select CPU_CACHE_VIVT
237 select CPU_CP15_MMU
238 select CPU_COPY_V4WB if MMU # can probably do better 236 select CPU_COPY_V4WB if MMU # can probably do better
237 select CPU_CP15_MMU
238 select CPU_PABRT_LEGACY
239 select CPU_TLB_V4WBI if MMU 239 select CPU_TLB_V4WBI if MMU
240 help 240 help
241 The ARM1022E is an implementation of the ARMv5TE architecture 241 The ARM1022E is an implementation of the ARMv5TE architecture
@@ -250,10 +250,10 @@ config CPU_ARM1026
250 bool "Support ARM1026EJ-S processor" if ARCH_INTEGRATOR 250 bool "Support ARM1026EJ-S processor" if ARCH_INTEGRATOR
251 select CPU_32v5 251 select CPU_32v5
252 select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10 252 select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10
253 select CPU_PABRT_LEGACY
254 select CPU_CACHE_VIVT 253 select CPU_CACHE_VIVT
255 select CPU_CP15_MMU
256 select CPU_COPY_V4WB if MMU # can probably do better 254 select CPU_COPY_V4WB if MMU # can probably do better
255 select CPU_CP15_MMU
256 select CPU_PABRT_LEGACY
257 select CPU_TLB_V4WBI if MMU 257 select CPU_TLB_V4WBI if MMU
258 help 258 help
259 The ARM1026EJ-S is an implementation of the ARMv5TEJ architecture 259 The ARM1026EJ-S is an implementation of the ARMv5TEJ architecture
@@ -268,11 +268,11 @@ config CPU_SA110
268 select CPU_32v3 if ARCH_RPC 268 select CPU_32v3 if ARCH_RPC
269 select CPU_32v4 if !ARCH_RPC 269 select CPU_32v4 if !ARCH_RPC
270 select CPU_ABRT_EV4 270 select CPU_ABRT_EV4
271 select CPU_PABRT_LEGACY
272 select CPU_CACHE_V4WB 271 select CPU_CACHE_V4WB
273 select CPU_CACHE_VIVT 272 select CPU_CACHE_VIVT
274 select CPU_CP15_MMU
275 select CPU_COPY_V4WB if MMU 273 select CPU_COPY_V4WB if MMU
274 select CPU_CP15_MMU
275 select CPU_PABRT_LEGACY
276 select CPU_TLB_V4WB if MMU 276 select CPU_TLB_V4WB if MMU
277 help 277 help
278 The Intel StrongARM(R) SA-110 is a 32-bit microprocessor and 278 The Intel StrongARM(R) SA-110 is a 32-bit microprocessor and
@@ -288,10 +288,10 @@ config CPU_SA1100
288 bool 288 bool
289 select CPU_32v4 289 select CPU_32v4
290 select CPU_ABRT_EV4 290 select CPU_ABRT_EV4
291 select CPU_PABRT_LEGACY
292 select CPU_CACHE_V4WB 291 select CPU_CACHE_V4WB
293 select CPU_CACHE_VIVT 292 select CPU_CACHE_VIVT
294 select CPU_CP15_MMU 293 select CPU_CP15_MMU
294 select CPU_PABRT_LEGACY
295 select CPU_TLB_V4WB if MMU 295 select CPU_TLB_V4WB if MMU
296 296
297# XScale 297# XScale
@@ -299,9 +299,9 @@ config CPU_XSCALE
299 bool 299 bool
300 select CPU_32v5 300 select CPU_32v5
301 select CPU_ABRT_EV5T 301 select CPU_ABRT_EV5T
302 select CPU_PABRT_LEGACY
303 select CPU_CACHE_VIVT 302 select CPU_CACHE_VIVT
304 select CPU_CP15_MMU 303 select CPU_CP15_MMU
304 select CPU_PABRT_LEGACY
305 select CPU_TLB_V4WBI if MMU 305 select CPU_TLB_V4WBI if MMU
306 306
307# XScale Core Version 3 307# XScale Core Version 3
@@ -309,9 +309,9 @@ config CPU_XSC3
309 bool 309 bool
310 select CPU_32v5 310 select CPU_32v5
311 select CPU_ABRT_EV5T 311 select CPU_ABRT_EV5T
312 select CPU_PABRT_LEGACY
313 select CPU_CACHE_VIVT 312 select CPU_CACHE_VIVT
314 select CPU_CP15_MMU 313 select CPU_CP15_MMU
314 select CPU_PABRT_LEGACY
315 select CPU_TLB_V4WBI if MMU 315 select CPU_TLB_V4WBI if MMU
316 select IO_36 316 select IO_36
317 317
@@ -320,21 +320,21 @@ config CPU_MOHAWK
320 bool 320 bool
321 select CPU_32v5 321 select CPU_32v5
322 select CPU_ABRT_EV5T 322 select CPU_ABRT_EV5T
323 select CPU_PABRT_LEGACY
324 select CPU_CACHE_VIVT 323 select CPU_CACHE_VIVT
324 select CPU_COPY_V4WB if MMU
325 select CPU_CP15_MMU 325 select CPU_CP15_MMU
326 select CPU_PABRT_LEGACY
326 select CPU_TLB_V4WBI if MMU 327 select CPU_TLB_V4WBI if MMU
327 select CPU_COPY_V4WB if MMU
328 328
329# Feroceon 329# Feroceon
330config CPU_FEROCEON 330config CPU_FEROCEON
331 bool 331 bool
332 select CPU_32v5 332 select CPU_32v5
333 select CPU_ABRT_EV5T 333 select CPU_ABRT_EV5T
334 select CPU_PABRT_LEGACY
335 select CPU_CACHE_VIVT 334 select CPU_CACHE_VIVT
336 select CPU_CP15_MMU
337 select CPU_COPY_FEROCEON if MMU 335 select CPU_COPY_FEROCEON if MMU
336 select CPU_CP15_MMU
337 select CPU_PABRT_LEGACY
338 select CPU_TLB_FEROCEON if MMU 338 select CPU_TLB_FEROCEON if MMU
339 339
340config CPU_FEROCEON_OLD_ID 340config CPU_FEROCEON_OLD_ID
@@ -349,20 +349,20 @@ config CPU_FEROCEON_OLD_ID
349# Marvell PJ4 349# Marvell PJ4
350config CPU_PJ4 350config CPU_PJ4
351 bool 351 bool
352 select CPU_V7
353 select ARM_THUMBEE 352 select ARM_THUMBEE
353 select CPU_V7
354 354
355# ARMv6 355# ARMv6
356config CPU_V6 356config CPU_V6
357 bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX 357 bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX
358 select CPU_32v6 358 select CPU_32v6
359 select CPU_ABRT_EV6 359 select CPU_ABRT_EV6
360 select CPU_PABRT_V6
361 select CPU_CACHE_V6 360 select CPU_CACHE_V6
362 select CPU_CACHE_VIPT 361 select CPU_CACHE_VIPT
362 select CPU_COPY_V6 if MMU
363 select CPU_CP15_MMU 363 select CPU_CP15_MMU
364 select CPU_HAS_ASID if MMU 364 select CPU_HAS_ASID if MMU
365 select CPU_COPY_V6 if MMU 365 select CPU_PABRT_V6
366 select CPU_TLB_V6 if MMU 366 select CPU_TLB_V6 if MMU
367 367
368# ARMv6k 368# ARMv6k
@@ -371,12 +371,12 @@ config CPU_V6K
371 select CPU_32v6 371 select CPU_32v6
372 select CPU_32v6K 372 select CPU_32v6K
373 select CPU_ABRT_EV6 373 select CPU_ABRT_EV6
374 select CPU_PABRT_V6
375 select CPU_CACHE_V6 374 select CPU_CACHE_V6
376 select CPU_CACHE_VIPT 375 select CPU_CACHE_VIPT
376 select CPU_COPY_V6 if MMU
377 select CPU_CP15_MMU 377 select CPU_CP15_MMU
378 select CPU_HAS_ASID if MMU 378 select CPU_HAS_ASID if MMU
379 select CPU_COPY_V6 if MMU 379 select CPU_PABRT_V6
380 select CPU_TLB_V6 if MMU 380 select CPU_TLB_V6 if MMU
381 381
382# ARMv7 382# ARMv7
@@ -385,44 +385,44 @@ config CPU_V7
385 select CPU_32v6K 385 select CPU_32v6K
386 select CPU_32v7 386 select CPU_32v7
387 select CPU_ABRT_EV7 387 select CPU_ABRT_EV7
388 select CPU_PABRT_V7
389 select CPU_CACHE_V7 388 select CPU_CACHE_V7
390 select CPU_CACHE_VIPT 389 select CPU_CACHE_VIPT
390 select CPU_COPY_V6 if MMU
391 select CPU_CP15_MMU 391 select CPU_CP15_MMU
392 select CPU_HAS_ASID if MMU 392 select CPU_HAS_ASID if MMU
393 select CPU_COPY_V6 if MMU 393 select CPU_PABRT_V7
394 select CPU_TLB_V7 if MMU 394 select CPU_TLB_V7 if MMU
395 395
396# Figure out what processor architecture version we should be using. 396# Figure out what processor architecture version we should be using.
397# This defines the compiler instruction set which depends on the machine type. 397# This defines the compiler instruction set which depends on the machine type.
398config CPU_32v3 398config CPU_32v3
399 bool 399 bool
400 select TLS_REG_EMUL if SMP || !MMU
401 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
402 select CPU_USE_DOMAINS if MMU 400 select CPU_USE_DOMAINS if MMU
401 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
402 select TLS_REG_EMUL if SMP || !MMU
403 403
404config CPU_32v4 404config CPU_32v4
405 bool 405 bool
406 select TLS_REG_EMUL if SMP || !MMU
407 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
408 select CPU_USE_DOMAINS if MMU 406 select CPU_USE_DOMAINS if MMU
407 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
408 select TLS_REG_EMUL if SMP || !MMU
409 409
410config CPU_32v4T 410config CPU_32v4T
411 bool 411 bool
412 select TLS_REG_EMUL if SMP || !MMU
413 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
414 select CPU_USE_DOMAINS if MMU 412 select CPU_USE_DOMAINS if MMU
413 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
414 select TLS_REG_EMUL if SMP || !MMU
415 415
416config CPU_32v5 416config CPU_32v5
417 bool 417 bool
418 select TLS_REG_EMUL if SMP || !MMU
419 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
420 select CPU_USE_DOMAINS if MMU 418 select CPU_USE_DOMAINS if MMU
419 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP
420 select TLS_REG_EMUL if SMP || !MMU
421 421
422config CPU_32v6 422config CPU_32v6
423 bool 423 bool
424 select TLS_REG_EMUL if !CPU_32v6K && !MMU
425 select CPU_USE_DOMAINS if CPU_V6 && MMU 424 select CPU_USE_DOMAINS if CPU_V6 && MMU
425 select TLS_REG_EMUL if !CPU_32v6K && !MMU
426 426
427config CPU_32v6K 427config CPU_32v6K
428 bool 428 bool
@@ -644,8 +644,8 @@ config ARM_VIRT_EXT
644config SWP_EMULATE 644config SWP_EMULATE
645 bool "Emulate SWP/SWPB instructions" 645 bool "Emulate SWP/SWPB instructions"
646 depends on !CPU_USE_DOMAINS && CPU_V7 646 depends on !CPU_USE_DOMAINS && CPU_V7
647 select HAVE_PROC_CPU if PROC_FS
648 default y if SMP 647 default y if SMP
648 select HAVE_PROC_CPU if PROC_FS
649 help 649 help
650 ARMv6 architecture deprecates use of the SWP/SWPB instructions. 650 ARMv6 architecture deprecates use of the SWP/SWPB instructions.
651 ARMv7 multiprocessing extensions introduce the ability to disable 651 ARMv7 multiprocessing extensions introduce the ability to disable
diff --git a/arch/arm/plat-mxc/Kconfig b/arch/arm/plat-mxc/Kconfig
index baf9064c0844..88e1e2e7a20d 100644
--- a/arch/arm/plat-mxc/Kconfig
+++ b/arch/arm/plat-mxc/Kconfig
@@ -10,16 +10,16 @@ choice
10 10
11config ARCH_IMX_V4_V5 11config ARCH_IMX_V4_V5
12 bool "i.MX1, i.MX21, i.MX25, i.MX27" 12 bool "i.MX1, i.MX21, i.MX25, i.MX27"
13 select AUTO_ZRELADDR if !ZBOOT_ROM
14 select ARM_PATCH_PHYS_VIRT 13 select ARM_PATCH_PHYS_VIRT
14 select AUTO_ZRELADDR if !ZBOOT_ROM
15 help 15 help
16 This enables support for systems based on the Freescale i.MX ARMv4 16 This enables support for systems based on the Freescale i.MX ARMv4
17 and ARMv5 SoCs 17 and ARMv5 SoCs
18 18
19config ARCH_IMX_V6_V7 19config ARCH_IMX_V6_V7
20 bool "i.MX3, i.MX5, i.MX6" 20 bool "i.MX3, i.MX5, i.MX6"
21 select AUTO_ZRELADDR if !ZBOOT_ROM
22 select ARM_PATCH_PHYS_VIRT 21 select ARM_PATCH_PHYS_VIRT
22 select AUTO_ZRELADDR if !ZBOOT_ROM
23 select MIGHT_HAVE_CACHE_L2X0 23 select MIGHT_HAVE_CACHE_L2X0
24 help 24 help
25 This enables support for systems based on the Freescale i.MX3, i.MX5 25 This enables support for systems based on the Freescale i.MX3, i.MX5
diff --git a/arch/arm/plat-mxc/devices/Kconfig b/arch/arm/plat-mxc/devices/Kconfig
index 6b46cee2f9cd..a35d9841f494 100644
--- a/arch/arm/plat-mxc/devices/Kconfig
+++ b/arch/arm/plat-mxc/devices/Kconfig
@@ -3,8 +3,8 @@ config IMX_HAVE_PLATFORM_FEC
3 default y if ARCH_MX25 || SOC_IMX27 || SOC_IMX35 || SOC_IMX50 || SOC_IMX51 || SOC_IMX53 3 default y if ARCH_MX25 || SOC_IMX27 || SOC_IMX35 || SOC_IMX50 || SOC_IMX51 || SOC_IMX53
4 4
5config IMX_HAVE_PLATFORM_FLEXCAN 5config IMX_HAVE_PLATFORM_FLEXCAN
6 select HAVE_CAN_FLEXCAN if CAN
7 bool 6 bool
7 select HAVE_CAN_FLEXCAN if CAN
8 8
9config IMX_HAVE_PLATFORM_FSL_USB2_UDC 9config IMX_HAVE_PLATFORM_FSL_USB2_UDC
10 bool 10 bool
diff --git a/arch/arm/plat-nomadik/Kconfig b/arch/arm/plat-nomadik/Kconfig
index 4c48c8b60b54..19f55cae5d73 100644
--- a/arch/arm/plat-nomadik/Kconfig
+++ b/arch/arm/plat-nomadik/Kconfig
@@ -5,8 +5,8 @@
5config PLAT_NOMADIK 5config PLAT_NOMADIK
6 bool 6 bool
7 depends on ARCH_NOMADIK || ARCH_U8500 7 depends on ARCH_NOMADIK || ARCH_U8500
8 select CLKSRC_MMIO
9 default y 8 default y
9 select CLKSRC_MMIO
10 help 10 help
11 Common platform code for Nomadik and other ST-Ericsson 11 Common platform code for Nomadik and other ST-Ericsson
12 platforms. 12 platforms.
diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig
index c9d1c3603bbf..7cd56ed5cd94 100644
--- a/arch/arm/plat-omap/Kconfig
+++ b/arch/arm/plat-omap/Kconfig
@@ -14,10 +14,10 @@ config ARCH_OMAP1
14 select CLKDEV_LOOKUP 14 select CLKDEV_LOOKUP
15 select CLKSRC_MMIO 15 select CLKSRC_MMIO
16 select GENERIC_IRQ_CHIP 16 select GENERIC_IRQ_CHIP
17 select IRQ_DOMAIN
18 select HAVE_IDE 17 select HAVE_IDE
19 select NEED_MACH_MEMORY_H 18 select IRQ_DOMAIN
20 select NEED_MACH_IO_H if PCCARD 19 select NEED_MACH_IO_H if PCCARD
20 select NEED_MACH_MEMORY_H
21 help 21 help
22 "Systems based on omap7xx, omap15xx or omap16xx" 22 "Systems based on omap7xx, omap15xx or omap16xx"
23 23
@@ -25,10 +25,10 @@ config ARCH_OMAP2PLUS
25 bool "TI OMAP2/3/4" 25 bool "TI OMAP2/3/4"
26 select CLKDEV_LOOKUP 26 select CLKDEV_LOOKUP
27 select GENERIC_IRQ_CHIP 27 select GENERIC_IRQ_CHIP
28 select SPARSE_IRQ
29 select OMAP_DM_TIMER 28 select OMAP_DM_TIMER
30 select USE_OF
31 select PROC_DEVICETREE if PROC_FS 29 select PROC_DEVICETREE if PROC_FS
30 select SPARSE_IRQ
31 select USE_OF
32 help 32 help
33 "Systems based on OMAP2, OMAP3, OMAP4 or OMAP5" 33 "Systems based on OMAP2, OMAP3, OMAP4 or OMAP5"
34 34
@@ -43,8 +43,8 @@ config OMAP_DEBUG_DEVICES
43 43
44config OMAP_DEBUG_LEDS 44config OMAP_DEBUG_LEDS
45 def_bool y if NEW_LEDS 45 def_bool y if NEW_LEDS
46 select LEDS_CLASS
47 depends on OMAP_DEBUG_DEVICES 46 depends on OMAP_DEBUG_DEVICES
47 select LEDS_CLASS
48 48
49config POWER_AVS_OMAP 49config POWER_AVS_OMAP
50 bool "AVS(Adaptive Voltage Scaling) support for OMAP IP versions 1&2" 50 bool "AVS(Adaptive Voltage Scaling) support for OMAP IP versions 1&2"
diff --git a/arch/arm/plat-s3c24xx/Kconfig b/arch/arm/plat-s3c24xx/Kconfig
index 21bf6adb9198..eef3b6a2f8a8 100644
--- a/arch/arm/plat-s3c24xx/Kconfig
+++ b/arch/arm/plat-s3c24xx/Kconfig
@@ -6,8 +6,8 @@ config PLAT_S3C24XX
6 bool 6 bool
7 depends on ARCH_S3C24XX 7 depends on ARCH_S3C24XX
8 default y 8 default y
9 select NO_IOPORT
10 select ARCH_REQUIRE_GPIOLIB 9 select ARCH_REQUIRE_GPIOLIB
10 select NO_IOPORT
11 select S3C_DEV_NAND 11 select S3C_DEV_NAND
12 help 12 help
13 Base platform code for any Samsung S3C24XX device 13 Base platform code for any Samsung S3C24XX device
diff --git a/arch/arm/plat-samsung/Kconfig b/arch/arm/plat-samsung/Kconfig
index 9c3b90c3538e..59401e1cc530 100644
--- a/arch/arm/plat-samsung/Kconfig
+++ b/arch/arm/plat-samsung/Kconfig
@@ -7,9 +7,9 @@
7config PLAT_SAMSUNG 7config PLAT_SAMSUNG
8 bool 8 bool
9 depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P 9 depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P
10 select NO_IOPORT
11 select GENERIC_IRQ_CHIP
12 default y 10 default y
11 select GENERIC_IRQ_CHIP
12 select NO_IOPORT
13 help 13 help
14 Base platform code for all Samsung SoC based systems 14 Base platform code for all Samsung SoC based systems
15 15
@@ -17,16 +17,16 @@ config PLAT_S5P
17 bool 17 bool
18 depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210 || ARCH_EXYNOS) 18 depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210 || ARCH_EXYNOS)
19 default y 19 default y
20 select ARM_VIC if !ARCH_EXYNOS 20 select ARCH_REQUIRE_GPIOLIB
21 select ARM_GIC if ARCH_EXYNOS 21 select ARM_GIC if ARCH_EXYNOS
22 select ARM_VIC if !ARCH_EXYNOS
22 select GIC_NON_BANKED if ARCH_EXYNOS4 23 select GIC_NON_BANKED if ARCH_EXYNOS4
23 select NO_IOPORT 24 select NO_IOPORT
24 select ARCH_REQUIRE_GPIOLIB 25 select PLAT_SAMSUNG
25 select S3C_GPIO_TRACK 26 select S3C_GPIO_TRACK
26 select S5P_GPIO_DRVSTR 27 select S5P_GPIO_DRVSTR
27 select SAMSUNG_GPIOLIB_4BIT
28 select PLAT_SAMSUNG
29 select SAMSUNG_CLKSRC 28 select SAMSUNG_CLKSRC
29 select SAMSUNG_GPIOLIB_4BIT
30 select SAMSUNG_IRQ_VIC_TIMER 30 select SAMSUNG_IRQ_VIC_TIMER
31 help 31 help
32 Base platform code for Samsung's S5P series SoC. 32 Base platform code for Samsung's S5P series SoC.
@@ -423,10 +423,10 @@ config S3C_DMA
423 423
424config SAMSUNG_DMADEV 424config SAMSUNG_DMADEV
425 bool 425 bool
426 select ARM_AMBA
426 select DMADEVICES 427 select DMADEVICES
427 select PL330_DMA if (ARCH_EXYNOS5 || ARCH_EXYNOS4 || CPU_S5PV210 || CPU_S5PC100 || \ 428 select PL330_DMA if (ARCH_EXYNOS5 || ARCH_EXYNOS4 || CPU_S5PV210 || CPU_S5PC100 || \
428 CPU_S5P6450 || CPU_S5P6440) 429 CPU_S5P6450 || CPU_S5P6440)
429 select ARM_AMBA
430 help 430 help
431 Use DMA device engine for PL330 DMAC. 431 Use DMA device engine for PL330 DMAC.
432 432
diff --git a/arch/arm/plat-spear/Kconfig b/arch/arm/plat-spear/Kconfig
index 4404f82d5979..f8db7b2deb36 100644
--- a/arch/arm/plat-spear/Kconfig
+++ b/arch/arm/plat-spear/Kconfig
@@ -12,10 +12,10 @@ config ARCH_SPEAR13XX
12 bool "ST SPEAr13xx with Device Tree" 12 bool "ST SPEAr13xx with Device Tree"
13 select ARM_GIC 13 select ARM_GIC
14 select CPU_V7 14 select CPU_V7
15 select USE_OF
16 select HAVE_SMP 15 select HAVE_SMP
17 select MIGHT_HAVE_CACHE_L2X0 16 select MIGHT_HAVE_CACHE_L2X0
18 select PINCTRL 17 select PINCTRL
18 select USE_OF
19 help 19 help
20 Supports for ARM's SPEAR13XX family 20 Supports for ARM's SPEAR13XX family
21 21
@@ -23,8 +23,8 @@ config ARCH_SPEAR3XX
23 bool "ST SPEAr3xx with Device Tree" 23 bool "ST SPEAr3xx with Device Tree"
24 select ARM_VIC 24 select ARM_VIC
25 select CPU_ARM926T 25 select CPU_ARM926T
26 select USE_OF
27 select PINCTRL 26 select PINCTRL
27 select USE_OF
28 help 28 help
29 Supports for ARM's SPEAR3XX family 29 Supports for ARM's SPEAR3XX family
30 30