aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/Kconfig
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2012-10-04 16:57:00 -0400
committerArnd Bergmann <arnd@arndb.de>2012-10-04 16:57:51 -0400
commitc37d6154c0b9163c27e53cc1d0be3867b4abd760 (patch)
tree7a24522c56d1cb284dff1d3c225bbdaba0901bb5 /arch/arm/Kconfig
parente7a570ff7dff9af6e54ff5e580a61ec7652137a0 (diff)
parent8a1ab3155c2ac7fbe5f2038d6e26efeb607a1498 (diff)
Merge branch 'disintegrate-asm-generic' of git://git.infradead.org/users/dhowells/linux-headers into asm-generic
Patches from David Howells <dhowells@redhat.com>: This is to complete part of the UAPI disintegration for which the preparatory patches were pulled recently. Note that there are some fixup patches which are at the base of the branch aimed at you, plus all arches get the asm-generic branch merged in too. * 'disintegrate-asm-generic' of git://git.infradead.org/users/dhowells/linux-headers: UAPI: (Scripted) Disintegrate include/asm-generic UAPI: Fix conditional header installation handling (notably kvm_para.h on m68k) c6x: remove c6x signal.h UAPI: Split compound conditionals containing __KERNEL__ in Arm64 UAPI: Fix the guards on various asm/unistd.h files Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/Kconfig')
-rw-r--r--arch/arm/Kconfig292
1 files changed, 112 insertions, 180 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 2f88d8d97701..7bab17ed2972 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -202,6 +202,13 @@ config ARM_PATCH_PHYS_VIRT
202 this feature (eg, building a kernel for a single machine) and 202 this feature (eg, building a kernel for a single machine) and
203 you need to shrink the kernel to the minimal size. 203 you need to shrink the kernel to the minimal size.
204 204
205config NEED_MACH_GPIO_H
206 bool
207 help
208 Select this when mach/gpio.h is required to provide special
209 definitions for this platform. The need for mach/gpio.h should
210 be avoided when possible.
211
205config NEED_MACH_IO_H 212config NEED_MACH_IO_H
206 bool 213 bool
207 help 214 help
@@ -247,39 +254,29 @@ config MMU
247# 254#
248choice 255choice
249 prompt "ARM system type" 256 prompt "ARM system type"
250 default ARCH_VERSATILE 257 default ARCH_MULTIPLATFORM
251 258
252config ARCH_SOCFPGA 259config ARCH_MULTIPLATFORM
253 bool "Altera SOCFPGA family" 260 bool "Allow multiple platforms to be selected"
254 select ARCH_WANT_OPTIONAL_GPIOLIB 261 select ARM_PATCH_PHYS_VIRT
255 select ARM_AMBA 262 select AUTO_ZRELADDR
256 select ARM_GIC
257 select CACHE_L2X0
258 select CLKDEV_LOOKUP
259 select COMMON_CLK 263 select COMMON_CLK
260 select CPU_V7 264 select MULTI_IRQ_HANDLER
261 select DW_APB_TIMER
262 select DW_APB_TIMER_OF
263 select GENERIC_CLOCKEVENTS
264 select GPIO_PL061 if GPIOLIB
265 select HAVE_ARM_SCU
266 select SPARSE_IRQ 265 select SPARSE_IRQ
267 select USE_OF 266 select USE_OF
268 help 267 depends on MMU
269 This enables support for Altera SOCFPGA Cyclone V platform
270 268
271config ARCH_INTEGRATOR 269config ARCH_INTEGRATOR
272 bool "ARM Ltd. Integrator family" 270 bool "ARM Ltd. Integrator family"
273 select ARM_AMBA 271 select ARM_AMBA
274 select ARCH_HAS_CPUFREQ 272 select ARCH_HAS_CPUFREQ
275 select COMMON_CLK 273 select COMMON_CLK
276 select CLK_VERSATILE 274 select COMMON_CLK_VERSATILE
277 select HAVE_TCM 275 select HAVE_TCM
278 select ICST 276 select ICST
279 select GENERIC_CLOCKEVENTS 277 select GENERIC_CLOCKEVENTS
280 select PLAT_VERSATILE 278 select PLAT_VERSATILE
281 select PLAT_VERSATILE_FPGA_IRQ 279 select PLAT_VERSATILE_FPGA_IRQ
282 select NEED_MACH_IO_H
283 select NEED_MACH_MEMORY_H 280 select NEED_MACH_MEMORY_H
284 select SPARSE_IRQ 281 select SPARSE_IRQ
285 select MULTI_IRQ_HANDLER 282 select MULTI_IRQ_HANDLER
@@ -289,13 +286,12 @@ config ARCH_INTEGRATOR
289config ARCH_REALVIEW 286config ARCH_REALVIEW
290 bool "ARM Ltd. RealView family" 287 bool "ARM Ltd. RealView family"
291 select ARM_AMBA 288 select ARM_AMBA
292 select CLKDEV_LOOKUP 289 select COMMON_CLK
293 select HAVE_MACH_CLKDEV 290 select COMMON_CLK_VERSATILE
294 select ICST 291 select ICST
295 select GENERIC_CLOCKEVENTS 292 select GENERIC_CLOCKEVENTS
296 select ARCH_WANT_OPTIONAL_GPIOLIB 293 select ARCH_WANT_OPTIONAL_GPIOLIB
297 select PLAT_VERSATILE 294 select PLAT_VERSATILE
298 select PLAT_VERSATILE_CLOCK
299 select PLAT_VERSATILE_CLCD 295 select PLAT_VERSATILE_CLCD
300 select ARM_TIMER_SP804 296 select ARM_TIMER_SP804
301 select GPIO_PL061 if GPIOLIB 297 select GPIO_PL061 if GPIOLIB
@@ -312,7 +308,6 @@ config ARCH_VERSATILE
312 select ICST 308 select ICST
313 select GENERIC_CLOCKEVENTS 309 select GENERIC_CLOCKEVENTS
314 select ARCH_WANT_OPTIONAL_GPIOLIB 310 select ARCH_WANT_OPTIONAL_GPIOLIB
315 select NEED_MACH_IO_H if PCI
316 select PLAT_VERSATILE 311 select PLAT_VERSATILE
317 select PLAT_VERSATILE_CLOCK 312 select PLAT_VERSATILE_CLOCK
318 select PLAT_VERSATILE_CLCD 313 select PLAT_VERSATILE_CLCD
@@ -321,69 +316,41 @@ config ARCH_VERSATILE
321 help 316 help
322 This enables support for ARM Ltd Versatile board. 317 This enables support for ARM Ltd Versatile board.
323 318
324config ARCH_VEXPRESS
325 bool "ARM Ltd. Versatile Express family"
326 select ARCH_WANT_OPTIONAL_GPIOLIB
327 select ARM_AMBA
328 select ARM_TIMER_SP804
329 select CLKDEV_LOOKUP
330 select COMMON_CLK
331 select GENERIC_CLOCKEVENTS
332 select HAVE_CLK
333 select HAVE_PATA_PLATFORM
334 select ICST
335 select NO_IOPORT
336 select PLAT_VERSATILE
337 select PLAT_VERSATILE_CLCD
338 select REGULATOR_FIXED_VOLTAGE if REGULATOR
339 help
340 This enables support for the ARM Ltd Versatile Express boards.
341
342config ARCH_AT91 319config ARCH_AT91
343 bool "Atmel AT91" 320 bool "Atmel AT91"
344 select ARCH_REQUIRE_GPIOLIB 321 select ARCH_REQUIRE_GPIOLIB
345 select HAVE_CLK 322 select HAVE_CLK
346 select CLKDEV_LOOKUP 323 select CLKDEV_LOOKUP
347 select IRQ_DOMAIN 324 select IRQ_DOMAIN
325 select NEED_MACH_GPIO_H
348 select NEED_MACH_IO_H if PCCARD 326 select NEED_MACH_IO_H if PCCARD
349 help 327 help
350 This enables support for systems based on Atmel 328 This enables support for systems based on Atmel
351 AT91RM9200 and AT91SAM9* processors. 329 AT91RM9200 and AT91SAM9* processors.
352 330
353config ARCH_BCMRING 331config ARCH_BCM2835
354 bool "Broadcom BCMRING" 332 bool "Broadcom BCM2835 family"
355 depends on MMU
356 select CPU_V6
357 select ARM_AMBA
358 select ARM_TIMER_SP804
359 select CLKDEV_LOOKUP
360 select GENERIC_CLOCKEVENTS
361 select ARCH_WANT_OPTIONAL_GPIOLIB
362 help
363 Support for Broadcom's BCMRing platform.
364
365config ARCH_HIGHBANK
366 bool "Calxeda Highbank-based"
367 select ARCH_WANT_OPTIONAL_GPIOLIB 333 select ARCH_WANT_OPTIONAL_GPIOLIB
368 select ARM_AMBA 334 select ARM_AMBA
369 select ARM_GIC 335 select ARM_ERRATA_411920
370 select ARM_TIMER_SP804 336 select ARM_TIMER_SP804
371 select CACHE_L2X0
372 select CLKDEV_LOOKUP 337 select CLKDEV_LOOKUP
373 select COMMON_CLK 338 select COMMON_CLK
374 select CPU_V7 339 select CPU_V6
375 select GENERIC_CLOCKEVENTS 340 select GENERIC_CLOCKEVENTS
376 select HAVE_ARM_SCU 341 select MULTI_IRQ_HANDLER
377 select HAVE_SMP
378 select SPARSE_IRQ 342 select SPARSE_IRQ
379 select USE_OF 343 select USE_OF
380 help 344 help
381 Support for the Calxeda Highbank SoC based boards. 345 This enables support for the Broadcom BCM2835 SoC. This SoC is
346 use in the Raspberry Pi, and Roku 2 devices.
382 347
383config ARCH_CLPS711X 348config ARCH_CLPS711X
384 bool "Cirrus Logic CLPS711x/EP721x/EP731x-based" 349 bool "Cirrus Logic CLPS711x/EP721x/EP731x-based"
385 select CPU_ARM720T 350 select CPU_ARM720T
386 select ARCH_USES_GETTIMEOFFSET 351 select ARCH_USES_GETTIMEOFFSET
352 select COMMON_CLK
353 select CLKDEV_LOOKUP
387 select NEED_MACH_MEMORY_H 354 select NEED_MACH_MEMORY_H
388 help 355 help
389 Support for Cirrus Logic 711x/721x/731x based boards. 356 Support for Cirrus Logic 711x/721x/731x based boards.
@@ -407,21 +374,19 @@ config ARCH_GEMINI
407 help 374 help
408 Support for the Cortina Systems Gemini family SoCs 375 Support for the Cortina Systems Gemini family SoCs
409 376
410config ARCH_PRIMA2 377config ARCH_SIRF
411 bool "CSR SiRFSoC PRIMA2 ARM Cortex A9 Platform" 378 bool "CSR SiRF"
412 select CPU_V7
413 select NO_IOPORT 379 select NO_IOPORT
414 select ARCH_REQUIRE_GPIOLIB 380 select ARCH_REQUIRE_GPIOLIB
415 select GENERIC_CLOCKEVENTS 381 select GENERIC_CLOCKEVENTS
416 select CLKDEV_LOOKUP 382 select COMMON_CLK
417 select GENERIC_IRQ_CHIP 383 select GENERIC_IRQ_CHIP
418 select MIGHT_HAVE_CACHE_L2X0 384 select MIGHT_HAVE_CACHE_L2X0
419 select PINCTRL 385 select PINCTRL
420 select PINCTRL_SIRF 386 select PINCTRL_SIRF
421 select USE_OF 387 select USE_OF
422 select ZONE_DMA
423 help 388 help
424 Support for CSR SiRFSoC ARM Cortex A9 Platform 389 Support for CSR SiRFprimaII/Marco/Polo platforms
425 390
426config ARCH_EBSA110 391config ARCH_EBSA110
427 bool "EBSA-110" 392 bool "EBSA-110"
@@ -456,7 +421,7 @@ config ARCH_FOOTBRIDGE
456 select FOOTBRIDGE 421 select FOOTBRIDGE
457 select GENERIC_CLOCKEVENTS 422 select GENERIC_CLOCKEVENTS
458 select HAVE_IDE 423 select HAVE_IDE
459 select NEED_MACH_IO_H 424 select NEED_MACH_IO_H if !MMU
460 select NEED_MACH_MEMORY_H 425 select NEED_MACH_MEMORY_H
461 help 426 help
462 Support for systems based on the DC21285 companion chip 427 Support for systems based on the DC21285 companion chip
@@ -483,7 +448,9 @@ config ARCH_MXS
483 select CLKSRC_MMIO 448 select CLKSRC_MMIO
484 select COMMON_CLK 449 select COMMON_CLK
485 select HAVE_CLK_PREPARE 450 select HAVE_CLK_PREPARE
451 select MULTI_IRQ_HANDLER
486 select PINCTRL 452 select PINCTRL
453 select SPARSE_IRQ
487 select USE_OF 454 select USE_OF
488 help 455 help
489 Support for Freescale MXS-based family of processors 456 Support for Freescale MXS-based family of processors
@@ -513,7 +480,6 @@ config ARCH_IOP13XX
513 select PCI 480 select PCI
514 select ARCH_SUPPORTS_MSI 481 select ARCH_SUPPORTS_MSI
515 select VMSPLIT_1G 482 select VMSPLIT_1G
516 select NEED_MACH_IO_H
517 select NEED_MACH_MEMORY_H 483 select NEED_MACH_MEMORY_H
518 select NEED_RET_TO_USER 484 select NEED_RET_TO_USER
519 help 485 help
@@ -523,6 +489,7 @@ config ARCH_IOP32X
523 bool "IOP32x-based" 489 bool "IOP32x-based"
524 depends on MMU 490 depends on MMU
525 select CPU_XSCALE 491 select CPU_XSCALE
492 select NEED_MACH_GPIO_H
526 select NEED_MACH_IO_H 493 select NEED_MACH_IO_H
527 select NEED_RET_TO_USER 494 select NEED_RET_TO_USER
528 select PLAT_IOP 495 select PLAT_IOP
@@ -536,6 +503,7 @@ config ARCH_IOP33X
536 bool "IOP33x-based" 503 bool "IOP33x-based"
537 depends on MMU 504 depends on MMU
538 select CPU_XSCALE 505 select CPU_XSCALE
506 select NEED_MACH_GPIO_H
539 select NEED_MACH_IO_H 507 select NEED_MACH_IO_H
540 select NEED_RET_TO_USER 508 select NEED_RET_TO_USER
541 select PLAT_IOP 509 select PLAT_IOP
@@ -558,25 +526,12 @@ config ARCH_IXP4XX
558 help 526 help
559 Support for Intel's IXP4XX (XScale) family of processors. 527 Support for Intel's IXP4XX (XScale) family of processors.
560 528
561config ARCH_MVEBU
562 bool "Marvell SOCs with Device Tree support"
563 select GENERIC_CLOCKEVENTS
564 select MULTI_IRQ_HANDLER
565 select SPARSE_IRQ
566 select CLKSRC_MMIO
567 select GENERIC_IRQ_CHIP
568 select IRQ_DOMAIN
569 select COMMON_CLK
570 help
571 Support for the Marvell SoC Family with device tree support
572
573config ARCH_DOVE 529config ARCH_DOVE
574 bool "Marvell Dove" 530 bool "Marvell Dove"
575 select CPU_V7 531 select CPU_V7
576 select PCI 532 select PCI
577 select ARCH_REQUIRE_GPIOLIB 533 select ARCH_REQUIRE_GPIOLIB
578 select GENERIC_CLOCKEVENTS 534 select GENERIC_CLOCKEVENTS
579 select NEED_MACH_IO_H
580 select PLAT_ORION 535 select PLAT_ORION
581 help 536 help
582 Support for the Marvell Dove SoC 88AP510 537 Support for the Marvell Dove SoC 88AP510
@@ -587,7 +542,6 @@ config ARCH_KIRKWOOD
587 select PCI 542 select PCI
588 select ARCH_REQUIRE_GPIOLIB 543 select ARCH_REQUIRE_GPIOLIB
589 select GENERIC_CLOCKEVENTS 544 select GENERIC_CLOCKEVENTS
590 select NEED_MACH_IO_H
591 select PLAT_ORION 545 select PLAT_ORION
592 help 546 help
593 Support for the following Marvell Kirkwood series SoCs: 547 Support for the following Marvell Kirkwood series SoCs:
@@ -614,7 +568,6 @@ config ARCH_MV78XX0
614 select PCI 568 select PCI
615 select ARCH_REQUIRE_GPIOLIB 569 select ARCH_REQUIRE_GPIOLIB
616 select GENERIC_CLOCKEVENTS 570 select GENERIC_CLOCKEVENTS
617 select NEED_MACH_IO_H
618 select PLAT_ORION 571 select PLAT_ORION
619 help 572 help
620 Support for the following Marvell MV78xx0 series SoCs: 573 Support for the following Marvell MV78xx0 series SoCs:
@@ -627,7 +580,6 @@ config ARCH_ORION5X
627 select PCI 580 select PCI
628 select ARCH_REQUIRE_GPIOLIB 581 select ARCH_REQUIRE_GPIOLIB
629 select GENERIC_CLOCKEVENTS 582 select GENERIC_CLOCKEVENTS
630 select NEED_MACH_IO_H
631 select PLAT_ORION 583 select PLAT_ORION
632 help 584 help
633 Support for the following Marvell Orion 5x series SoCs: 585 Support for the following Marvell Orion 5x series SoCs:
@@ -645,6 +597,7 @@ config ARCH_MMP
645 select PLAT_PXA 597 select PLAT_PXA
646 select SPARSE_IRQ 598 select SPARSE_IRQ
647 select GENERIC_ALLOCATOR 599 select GENERIC_ALLOCATOR
600 select NEED_MACH_GPIO_H
648 help 601 help
649 Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line. 602 Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.
650 603
@@ -652,8 +605,9 @@ config ARCH_KS8695
652 bool "Micrel/Kendin KS8695" 605 bool "Micrel/Kendin KS8695"
653 select CPU_ARM922T 606 select CPU_ARM922T
654 select ARCH_REQUIRE_GPIOLIB 607 select ARCH_REQUIRE_GPIOLIB
655 select ARCH_USES_GETTIMEOFFSET
656 select NEED_MACH_MEMORY_H 608 select NEED_MACH_MEMORY_H
609 select CLKSRC_MMIO
610 select GENERIC_CLOCKEVENTS
657 help 611 help
658 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based 612 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
659 System-on-Chip devices. 613 System-on-Chip devices.
@@ -683,40 +637,13 @@ config ARCH_TEGRA
683 select HAVE_CLK 637 select HAVE_CLK
684 select HAVE_SMP 638 select HAVE_SMP
685 select MIGHT_HAVE_CACHE_L2X0 639 select MIGHT_HAVE_CACHE_L2X0
686 select NEED_MACH_IO_H if PCI
687 select ARCH_HAS_CPUFREQ 640 select ARCH_HAS_CPUFREQ
688 select USE_OF 641 select USE_OF
642 select COMMON_CLK
689 help 643 help
690 This enables support for NVIDIA Tegra based systems (Tegra APX, 644 This enables support for NVIDIA Tegra based systems (Tegra APX,
691 Tegra 6xx and Tegra 2 series). 645 Tegra 6xx and Tegra 2 series).
692 646
693config ARCH_PICOXCELL
694 bool "Picochip picoXcell"
695 select ARCH_REQUIRE_GPIOLIB
696 select ARM_PATCH_PHYS_VIRT
697 select ARM_VIC
698 select CPU_V6K
699 select DW_APB_TIMER
700 select DW_APB_TIMER_OF
701 select GENERIC_CLOCKEVENTS
702 select GENERIC_GPIO
703 select HAVE_TCM
704 select NO_IOPORT
705 select SPARSE_IRQ
706 select USE_OF
707 help
708 This enables support for systems based on the Picochip picoXcell
709 family of Femtocell devices. The picoxcell support requires device tree
710 for all boards.
711
712config ARCH_PNX4008
713 bool "Philips Nexperia PNX4008 Mobile"
714 select CPU_ARM926T
715 select CLKDEV_LOOKUP
716 select ARCH_USES_GETTIMEOFFSET
717 help
718 This enables support for Philips PNX4008 mobile platform.
719
720config ARCH_PXA 647config ARCH_PXA
721 bool "PXA2xx/PXA3xx-based" 648 bool "PXA2xx/PXA3xx-based"
722 depends on MMU 649 depends on MMU
@@ -733,6 +660,7 @@ config ARCH_PXA
733 select MULTI_IRQ_HANDLER 660 select MULTI_IRQ_HANDLER
734 select ARM_CPU_SUSPEND if PM 661 select ARM_CPU_SUSPEND if PM
735 select HAVE_IDE 662 select HAVE_IDE
663 select NEED_MACH_GPIO_H
736 help 664 help
737 Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 665 Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
738 666
@@ -795,6 +723,7 @@ config ARCH_SA1100
795 select CLKDEV_LOOKUP 723 select CLKDEV_LOOKUP
796 select ARCH_REQUIRE_GPIOLIB 724 select ARCH_REQUIRE_GPIOLIB
797 select HAVE_IDE 725 select HAVE_IDE
726 select NEED_MACH_GPIO_H
798 select NEED_MACH_MEMORY_H 727 select NEED_MACH_MEMORY_H
799 select SPARSE_IRQ 728 select SPARSE_IRQ
800 help 729 help
@@ -810,6 +739,7 @@ config ARCH_S3C24XX
810 select HAVE_S3C2410_I2C if I2C 739 select HAVE_S3C2410_I2C if I2C
811 select HAVE_S3C_RTC if RTC_CLASS 740 select HAVE_S3C_RTC if RTC_CLASS
812 select HAVE_S3C2410_WATCHDOG if WATCHDOG 741 select HAVE_S3C2410_WATCHDOG if WATCHDOG
742 select NEED_MACH_GPIO_H
813 select NEED_MACH_IO_H 743 select NEED_MACH_IO_H
814 help 744 help
815 Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443 745 Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443
@@ -837,6 +767,7 @@ config ARCH_S3C64XX
837 select SAMSUNG_GPIOLIB_4BIT 767 select SAMSUNG_GPIOLIB_4BIT
838 select HAVE_S3C2410_I2C if I2C 768 select HAVE_S3C2410_I2C if I2C
839 select HAVE_S3C2410_WATCHDOG if WATCHDOG 769 select HAVE_S3C2410_WATCHDOG if WATCHDOG
770 select NEED_MACH_GPIO_H
840 help 771 help
841 Samsung S3C64XX series based systems 772 Samsung S3C64XX series based systems
842 773
@@ -851,6 +782,7 @@ config ARCH_S5P64X0
851 select GENERIC_CLOCKEVENTS 782 select GENERIC_CLOCKEVENTS
852 select HAVE_S3C2410_I2C if I2C 783 select HAVE_S3C2410_I2C if I2C
853 select HAVE_S3C_RTC if RTC_CLASS 784 select HAVE_S3C_RTC if RTC_CLASS
785 select NEED_MACH_GPIO_H
854 help 786 help
855 Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440, 787 Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440,
856 SMDK6450. 788 SMDK6450.
@@ -865,6 +797,7 @@ config ARCH_S5PC100
865 select HAVE_S3C2410_I2C if I2C 797 select HAVE_S3C2410_I2C if I2C
866 select HAVE_S3C_RTC if RTC_CLASS 798 select HAVE_S3C_RTC if RTC_CLASS
867 select HAVE_S3C2410_WATCHDOG if WATCHDOG 799 select HAVE_S3C2410_WATCHDOG if WATCHDOG
800 select NEED_MACH_GPIO_H
868 help 801 help
869 Samsung S5PC100 series based systems 802 Samsung S5PC100 series based systems
870 803
@@ -882,6 +815,7 @@ config ARCH_S5PV210
882 select HAVE_S3C2410_I2C if I2C 815 select HAVE_S3C2410_I2C if I2C
883 select HAVE_S3C_RTC if RTC_CLASS 816 select HAVE_S3C_RTC if RTC_CLASS
884 select HAVE_S3C2410_WATCHDOG if WATCHDOG 817 select HAVE_S3C2410_WATCHDOG if WATCHDOG
818 select NEED_MACH_GPIO_H
885 select NEED_MACH_MEMORY_H 819 select NEED_MACH_MEMORY_H
886 help 820 help
887 Samsung S5PV210/S5PC110 series based systems 821 Samsung S5PV210/S5PC110 series based systems
@@ -899,6 +833,7 @@ config ARCH_EXYNOS
899 select HAVE_S3C_RTC if RTC_CLASS 833 select HAVE_S3C_RTC if RTC_CLASS
900 select HAVE_S3C2410_I2C if I2C 834 select HAVE_S3C2410_I2C if I2C
901 select HAVE_S3C2410_WATCHDOG if WATCHDOG 835 select HAVE_S3C2410_WATCHDOG if WATCHDOG
836 select NEED_MACH_GPIO_H
902 select NEED_MACH_MEMORY_H 837 select NEED_MACH_MEMORY_H
903 help 838 help
904 Support for SAMSUNG's EXYNOS SoCs (EXYNOS4/5) 839 Support for SAMSUNG's EXYNOS SoCs (EXYNOS4/5)
@@ -912,7 +847,6 @@ config ARCH_SHARK
912 select PCI 847 select PCI
913 select ARCH_USES_GETTIMEOFFSET 848 select ARCH_USES_GETTIMEOFFSET
914 select NEED_MACH_MEMORY_H 849 select NEED_MACH_MEMORY_H
915 select NEED_MACH_IO_H
916 help 850 help
917 Support for the StrongARM based Digital DNARD machine, also known 851 Support for the StrongARM based Digital DNARD machine, also known
918 as "Shark" (<http://www.shark-linux.de/shark.html>). 852 as "Shark" (<http://www.shark-linux.de/shark.html>).
@@ -931,6 +865,7 @@ config ARCH_U300
931 select COMMON_CLK 865 select COMMON_CLK
932 select GENERIC_GPIO 866 select GENERIC_GPIO
933 select ARCH_REQUIRE_GPIOLIB 867 select ARCH_REQUIRE_GPIOLIB
868 select SPARSE_IRQ
934 help 869 help
935 Support for ST-Ericsson U300 series mobile platforms. 870 Support for ST-Ericsson U300 series mobile platforms.
936 871
@@ -956,6 +891,7 @@ config ARCH_NOMADIK
956 select COMMON_CLK 891 select COMMON_CLK
957 select GENERIC_CLOCKEVENTS 892 select GENERIC_CLOCKEVENTS
958 select PINCTRL 893 select PINCTRL
894 select PINCTRL_STN8815
959 select MIGHT_HAVE_CACHE_L2X0 895 select MIGHT_HAVE_CACHE_L2X0
960 select ARCH_REQUIRE_GPIOLIB 896 select ARCH_REQUIRE_GPIOLIB
961 help 897 help
@@ -971,6 +907,7 @@ config ARCH_DAVINCI
971 select GENERIC_ALLOCATOR 907 select GENERIC_ALLOCATOR
972 select GENERIC_IRQ_CHIP 908 select GENERIC_IRQ_CHIP
973 select ARCH_HAS_HOLES_MEMORYMODEL 909 select ARCH_HAS_HOLES_MEMORYMODEL
910 select NEED_MACH_GPIO_H
974 help 911 help
975 Support for TI's DaVinci platform. 912 Support for TI's DaVinci platform.
976 913
@@ -983,6 +920,7 @@ config ARCH_OMAP
983 select CLKSRC_MMIO 920 select CLKSRC_MMIO
984 select GENERIC_CLOCKEVENTS 921 select GENERIC_CLOCKEVENTS
985 select ARCH_HAS_HOLES_MEMORYMODEL 922 select ARCH_HAS_HOLES_MEMORYMODEL
923 select NEED_MACH_GPIO_H
986 help 924 help
987 Support for TI's OMAP platform (OMAP1/2/3/4). 925 Support for TI's OMAP platform (OMAP1/2/3/4).
988 926
@@ -1005,6 +943,10 @@ config ARCH_VT8500
1005 select ARCH_HAS_CPUFREQ 943 select ARCH_HAS_CPUFREQ
1006 select GENERIC_CLOCKEVENTS 944 select GENERIC_CLOCKEVENTS
1007 select ARCH_REQUIRE_GPIOLIB 945 select ARCH_REQUIRE_GPIOLIB
946 select USE_OF
947 select COMMON_CLK
948 select HAVE_CLK
949 select CLKDEV_LOOKUP
1008 help 950 help
1009 Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip. 951 Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip.
1010 952
@@ -1022,6 +964,50 @@ config ARCH_ZYNQ
1022 Support for Xilinx Zynq ARM Cortex A9 Platform 964 Support for Xilinx Zynq ARM Cortex A9 Platform
1023endchoice 965endchoice
1024 966
967menu "Multiple platform selection"
968 depends on ARCH_MULTIPLATFORM
969
970comment "CPU Core family selection"
971
972config ARCH_MULTI_V4
973 bool "ARMv4 based platforms (FA526, StrongARM)"
974 select ARCH_MULTI_V4_V5
975 depends on !ARCH_MULTI_V6_V7
976
977config ARCH_MULTI_V4T
978 bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
979 select ARCH_MULTI_V4_V5
980 depends on !ARCH_MULTI_V6_V7
981
982config ARCH_MULTI_V5
983 bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
984 select ARCH_MULTI_V4_V5
985 depends on !ARCH_MULTI_V6_V7
986
987config ARCH_MULTI_V4_V5
988 bool
989
990config ARCH_MULTI_V6
991 bool "ARMv6 based platforms (ARM11, Scorpion, ...)"
992 select CPU_V6
993 select ARCH_MULTI_V6_V7
994
995config ARCH_MULTI_V7
996 bool "ARMv7 based platforms (Cortex-A, PJ4, Krait)"
997 select CPU_V7
998 select ARCH_VEXPRESS
999 default y
1000 select ARCH_MULTI_V6_V7
1001
1002config ARCH_MULTI_V6_V7
1003 bool
1004
1005config ARCH_MULTI_CPU_AUTO
1006 def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
1007 select ARCH_MULTI_V5
1008
1009endmenu
1010
1025# 1011#
1026# This is sorted alphabetically by mach-* pathname. However, plat-* 1012# This is sorted alphabetically by mach-* pathname. However, plat-*
1027# Kconfigs may be included either alphabetically (according to the 1013# Kconfigs may be included either alphabetically (according to the
@@ -1031,8 +1017,6 @@ source "arch/arm/mach-mvebu/Kconfig"
1031 1017
1032source "arch/arm/mach-at91/Kconfig" 1018source "arch/arm/mach-at91/Kconfig"
1033 1019
1034source "arch/arm/mach-bcmring/Kconfig"
1035
1036source "arch/arm/mach-clps711x/Kconfig" 1020source "arch/arm/mach-clps711x/Kconfig"
1037 1021
1038source "arch/arm/mach-cns3xxx/Kconfig" 1022source "arch/arm/mach-cns3xxx/Kconfig"
@@ -1049,6 +1033,8 @@ source "arch/arm/mach-gemini/Kconfig"
1049 1033
1050source "arch/arm/mach-h720x/Kconfig" 1034source "arch/arm/mach-h720x/Kconfig"
1051 1035
1036source "arch/arm/mach-highbank/Kconfig"
1037
1052source "arch/arm/mach-integrator/Kconfig" 1038source "arch/arm/mach-integrator/Kconfig"
1053 1039
1054source "arch/arm/mach-iop32x/Kconfig" 1040source "arch/arm/mach-iop32x/Kconfig"
@@ -1084,6 +1070,8 @@ source "arch/arm/mach-omap2/Kconfig"
1084 1070
1085source "arch/arm/mach-orion5x/Kconfig" 1071source "arch/arm/mach-orion5x/Kconfig"
1086 1072
1073source "arch/arm/mach-picoxcell/Kconfig"
1074
1087source "arch/arm/mach-pxa/Kconfig" 1075source "arch/arm/mach-pxa/Kconfig"
1088source "arch/arm/plat-pxa/Kconfig" 1076source "arch/arm/plat-pxa/Kconfig"
1089 1077
@@ -1096,6 +1084,8 @@ source "arch/arm/mach-sa1100/Kconfig"
1096source "arch/arm/plat-samsung/Kconfig" 1084source "arch/arm/plat-samsung/Kconfig"
1097source "arch/arm/plat-s3c24xx/Kconfig" 1085source "arch/arm/plat-s3c24xx/Kconfig"
1098 1086
1087source "arch/arm/mach-socfpga/Kconfig"
1088
1099source "arch/arm/plat-spear/Kconfig" 1089source "arch/arm/plat-spear/Kconfig"
1100 1090
1101source "arch/arm/mach-s3c24xx/Kconfig" 1091source "arch/arm/mach-s3c24xx/Kconfig"
@@ -1118,6 +1108,8 @@ source "arch/arm/mach-exynos/Kconfig"
1118 1108
1119source "arch/arm/mach-shmobile/Kconfig" 1109source "arch/arm/mach-shmobile/Kconfig"
1120 1110
1111source "arch/arm/mach-prima2/Kconfig"
1112
1121source "arch/arm/mach-tegra/Kconfig" 1113source "arch/arm/mach-tegra/Kconfig"
1122 1114
1123source "arch/arm/mach-u300/Kconfig" 1115source "arch/arm/mach-u300/Kconfig"
@@ -1129,8 +1121,6 @@ source "arch/arm/mach-versatile/Kconfig"
1129source "arch/arm/mach-vexpress/Kconfig" 1121source "arch/arm/mach-vexpress/Kconfig"
1130source "arch/arm/plat-versatile/Kconfig" 1122source "arch/arm/plat-versatile/Kconfig"
1131 1123
1132source "arch/arm/mach-vt8500/Kconfig"
1133
1134source "arch/arm/mach-w90x900/Kconfig" 1124source "arch/arm/mach-w90x900/Kconfig"
1135 1125
1136# Definitions to make life easier 1126# Definitions to make life easier
@@ -1179,12 +1169,6 @@ config XSCALE_PMU
1179 depends on CPU_XSCALE 1169 depends on CPU_XSCALE
1180 default y 1170 default y
1181 1171
1182config CPU_HAS_PMU
1183 depends on (CPU_V6 || CPU_V6K || CPU_V7 || XSCALE_PMU) && \
1184 (!ARCH_OMAP3 || OMAP3_EMU)
1185 default y
1186 bool
1187
1188config MULTI_IRQ_HANDLER 1172config MULTI_IRQ_HANDLER
1189 bool 1173 bool
1190 help 1174 help
@@ -1623,6 +1607,7 @@ config ARCH_NR_GPIO
1623 default 355 if ARCH_U8500 1607 default 355 if ARCH_U8500
1624 default 264 if MACH_H4700 1608 default 264 if MACH_H4700
1625 default 512 if SOC_OMAP5 1609 default 512 if SOC_OMAP5
1610 default 288 if ARCH_VT8500
1626 default 0 1611 default 0
1627 help 1612 help
1628 Maximum number of GPIOs in the system. 1613 Maximum number of GPIOs in the system.
@@ -1757,7 +1742,7 @@ config HIGHPTE
1757 1742
1758config HW_PERF_EVENTS 1743config HW_PERF_EVENTS
1759 bool "Enable hardware performance counter support for perf events" 1744 bool "Enable hardware performance counter support for perf events"
1760 depends on PERF_EVENTS && CPU_HAS_PMU 1745 depends on PERF_EVENTS
1761 default y 1746 default y
1762 help 1747 help
1763 Enable hardware performance counter support for perf events. If 1748 Enable hardware performance counter support for perf events. If
@@ -1781,59 +1766,6 @@ config FORCE_MAX_ZONEORDER
1781 This config option is actually maximum order plus one. For example, 1766 This config option is actually maximum order plus one. For example,
1782 a value of 11 means that the largest free memory block is 2^10 pages. 1767 a value of 11 means that the largest free memory block is 2^10 pages.
1783 1768
1784config LEDS
1785 bool "Timer and CPU usage LEDs"
1786 depends on ARCH_CDB89712 || ARCH_EBSA110 || \
1787 ARCH_EBSA285 || ARCH_INTEGRATOR || \
1788 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
1789 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
1790 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
1791 ARCH_AT91 || ARCH_DAVINCI || \
1792 ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW
1793 help
1794 If you say Y here, the LEDs on your machine will be used
1795 to provide useful information about your current system status.
1796
1797 If you are compiling a kernel for a NetWinder or EBSA-285, you will
1798 be able to select which LEDs are active using the options below. If
1799 you are compiling a kernel for the EBSA-110 or the LART however, the
1800 red LED will simply flash regularly to indicate that the system is
1801 still functional. It is safe to say Y here if you have a CATS
1802 system, but the driver will do nothing.
1803
1804config LEDS_TIMER
1805 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
1806 OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1807 || MACH_OMAP_PERSEUS2
1808 depends on LEDS
1809 depends on !GENERIC_CLOCKEVENTS
1810 default y if ARCH_EBSA110
1811 help
1812 If you say Y here, one of the system LEDs (the green one on the
1813 NetWinder, the amber one on the EBSA285, or the red one on the LART)
1814 will flash regularly to indicate that the system is still
1815 operational. This is mainly useful to kernel hackers who are
1816 debugging unstable kernels.
1817
1818 The LART uses the same LED for both Timer LED and CPU usage LED
1819 functions. You may choose to use both, but the Timer LED function
1820 will overrule the CPU usage LED.
1821
1822config LEDS_CPU
1823 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
1824 !ARCH_OMAP) \
1825 || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1826 || MACH_OMAP_PERSEUS2
1827 depends on LEDS
1828 help
1829 If you say Y here, the red LED will be used to give a good real
1830 time indication of CPU usage, by lighting whenever the idle task
1831 is not currently executing.
1832
1833 The LART uses the same LED for both Timer LED and CPU usage LED
1834 functions. You may choose to use both, but the Timer LED function
1835 will overrule the CPU usage LED.
1836
1837config ALIGNMENT_TRAP 1769config ALIGNMENT_TRAP
1838 bool 1770 bool
1839 depends on CPU_CP15_MMU 1771 depends on CPU_CP15_MMU
@@ -2060,7 +1992,7 @@ endchoice
2060 1992
2061config XIP_KERNEL 1993config XIP_KERNEL
2062 bool "Kernel Execute-In-Place from ROM" 1994 bool "Kernel Execute-In-Place from ROM"
2063 depends on !ZBOOT_ROM && !ARM_LPAE 1995 depends on !ZBOOT_ROM && !ARM_LPAE && !ARCH_MULTIPLATFORM
2064 help 1996 help
2065 Execute-In-Place allows the kernel to run from non-volatile storage 1997 Execute-In-Place allows the kernel to run from non-volatile storage
2066 directly addressable by the CPU, such as NOR flash. This saves RAM 1998 directly addressable by the CPU, such as NOR flash. This saves RAM
@@ -2313,7 +2245,7 @@ menu "Power management options"
2313source "kernel/power/Kconfig" 2245source "kernel/power/Kconfig"
2314 2246
2315config ARCH_SUSPEND_POSSIBLE 2247config ARCH_SUSPEND_POSSIBLE
2316 depends on !ARCH_S5PC100 && !ARCH_TEGRA 2248 depends on !ARCH_S5PC100
2317 depends on CPU_ARM920T || CPU_ARM926T || CPU_SA1100 || \ 2249 depends on CPU_ARM920T || CPU_ARM926T || CPU_SA1100 || \
2318 CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE || CPU_MOHAWK 2250 CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE || CPU_MOHAWK
2319 def_bool y 2251 def_bool y