ARM: shmobile: armadillo800eva: Build DTS for multiplatform
[cascardo/linux.git] / arch / arm / Kconfig
index 245058b..c49a775 100644 (file)
@@ -6,6 +6,7 @@ config ARM
        select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
        select ARCH_HAVE_CUSTOM_GPIO_H
        select ARCH_MIGHT_HAVE_PC_PARPORT
+       select ARCH_SUPPORTS_ATOMIC_RMW
        select ARCH_USE_BUILTIN_BSWAP
        select ARCH_USE_CMPXCHG_LOCKREF
        select ARCH_WANT_IPC_PARSE_VERSION
@@ -64,7 +65,6 @@ config ARM
        select HAVE_UID16
        select HAVE_VIRT_CPU_ACCOUNTING_GEN
        select IRQ_FORCED_THREADING
-       select KTIME_SCALAR
        select MODULES_USE_ELF_REL
        select NO_BOOTMEM
        select OLD_SIGACTION
@@ -83,6 +83,7 @@ config ARM
          <http://www.arm.linux.org.uk/>.
 
 config ARM_HAS_SG_CHAIN
+       select ARCH_HAS_SG_CHAIN
        bool
 
 config NEED_SG_DMA_LENGTH
@@ -239,13 +240,6 @@ config ARM_PATCH_PHYS_VIRT
          this feature (eg, building a kernel for a single machine) and
          you need to shrink the kernel to the minimal size.
 
-config NEED_MACH_GPIO_H
-       bool
-       help
-         Select this when mach/gpio.h is required to provide special
-         definitions for this platform. The need for mach/gpio.h should
-         be avoided when possible.
-
 config NEED_MACH_IO_H
        bool
        help
@@ -262,8 +256,22 @@ config NEED_MACH_MEMORY_H
 
 config PHYS_OFFSET
        hex "Physical address of main memory" if MMU
-       depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H
+       depends on !ARM_PATCH_PHYS_VIRT
        default DRAM_BASE if !MMU
+       default 0x00000000 if ARCH_EBSA110 || \
+                       EP93XX_SDCE3_SYNC_PHYS_OFFSET || \
+                       ARCH_FOOTBRIDGE || \
+                       ARCH_INTEGRATOR || \
+                       ARCH_IOP13XX || \
+                       ARCH_KS8695 || \
+                       (ARCH_REALVIEW && !REALVIEW_HIGH_PHYS_OFFSET)
+       default 0x10000000 if ARCH_OMAP1 || ARCH_RPC
+       default 0x20000000 if ARCH_S5PV210
+       default 0x70000000 if REALVIEW_HIGH_PHYS_OFFSET
+       default 0xc0000000 if EP93XX_SDCE0_PHYS_OFFSET || ARCH_SA1100
+       default 0xd0000000 if EP93XX_SDCE1_PHYS_OFFSET
+       default 0xe0000000 if EP93XX_SDCE2_PHYS_OFFSET
+       default 0xf0000000 if EP93XX_SDCE3_ASYNC_PHYS_OFFSET
        help
          Please provide the physical address corresponding to the
          location of main memory in your system.
@@ -312,7 +320,7 @@ config ARCH_MULTIPLATFORM
 config ARCH_INTEGRATOR
        bool "ARM Ltd. Integrator family"
        select ARM_AMBA
-       select ARM_PATCH_PHYS_VIRT
+       select ARM_PATCH_PHYS_VIRT if MMU
        select AUTO_ZRELADDR
        select COMMON_CLK
        select COMMON_CLK_VERSATILE
@@ -320,7 +328,6 @@ config ARCH_INTEGRATOR
        select HAVE_TCM
        select ICST
        select MULTI_IRQ_HANDLER
-       select NEED_MACH_MEMORY_H
        select PLAT_VERSATILE
        select SPARSE_IRQ
        select USE_OF
@@ -340,7 +347,6 @@ config ARCH_REALVIEW
        select ICST
        select NEED_MACH_MEMORY_H
        select PLAT_VERSATILE
-       select PLAT_VERSATILE_CLCD
        help
          This enables support for ARM Ltd RealView boards.
 
@@ -355,7 +361,6 @@ config ARCH_VERSATILE
        select HAVE_MACH_CLKDEV
        select ICST
        select PLAT_VERSATILE
-       select PLAT_VERSATILE_CLCD
        select PLAT_VERSATILE_CLOCK
        select VERSATILE_FPGA_IRQ
        help
@@ -435,7 +440,6 @@ config ARCH_EP93XX
        select ARM_VIC
        select CLKDEV_LOOKUP
        select CPU_ARM920T
-       select NEED_MACH_MEMORY_H
        help
          This enables support for the Cirrus EP93xx series of CPUs.
 
@@ -528,21 +532,6 @@ config ARCH_DOVE
        help
          Support for the Marvell Dove SoC 88AP510
 
-config ARCH_KIRKWOOD
-       bool "Marvell Kirkwood"
-       select ARCH_REQUIRE_GPIOLIB
-       select CPU_FEROCEON
-       select GENERIC_CLOCKEVENTS
-       select MVEBU_MBUS
-       select PCI
-       select PCI_QUIRKS
-       select PINCTRL
-       select PINCTRL_KIRKWOOD
-       select PLAT_ORION_LEGACY
-       help
-         Support for the following Marvell Kirkwood series SoCs:
-         88F6180, 88F6192 and 88F6281.
-
 config ARCH_MV78XX0
        bool "Marvell MV78xx0"
        select ARCH_REQUIRE_GPIOLIB
@@ -634,6 +623,7 @@ config ARCH_PXA
        select AUTO_ZRELADDR
        select CLKDEV_LOOKUP
        select CLKSRC_MMIO
+       select CLKSRC_OF
        select GENERIC_CLOCKEVENTS
        select GPIO_PXA
        select HAVE_IDE
@@ -658,7 +648,7 @@ config ARCH_MSM
 config ARCH_SHMOBILE_LEGACY
        bool "Renesas ARM SoCs (non-multiplatform)"
        select ARCH_SHMOBILE
-       select ARM_PATCH_PHYS_VIRT
+       select ARM_PATCH_PHYS_VIRT if MMU
        select CLKDEV_LOOKUP
        select GENERIC_CLOCKEVENTS
        select HAVE_ARM_SCU if SMP
@@ -758,61 +748,6 @@ config ARCH_S3C64XX
        help
          Samsung S3C64XX series based systems
 
-config ARCH_S5P64X0
-       bool "Samsung S5P6440 S5P6450"
-       select ATAGS
-       select CLKDEV_LOOKUP
-       select CLKSRC_SAMSUNG_PWM
-       select CPU_V6
-       select GENERIC_CLOCKEVENTS
-       select GPIO_SAMSUNG
-       select HAVE_S3C2410_I2C if I2C
-       select HAVE_S3C2410_WATCHDOG if WATCHDOG
-       select HAVE_S3C_RTC if RTC_CLASS
-       select NEED_MACH_GPIO_H
-       select SAMSUNG_ATAGS
-       select SAMSUNG_WDT_RESET
-       help
-         Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440,
-         SMDK6450.
-
-config ARCH_S5PC100
-       bool "Samsung S5PC100"
-       select ARCH_REQUIRE_GPIOLIB
-       select ATAGS
-       select CLKDEV_LOOKUP
-       select CLKSRC_SAMSUNG_PWM
-       select CPU_V7
-       select GENERIC_CLOCKEVENTS
-       select GPIO_SAMSUNG
-       select HAVE_S3C2410_I2C if I2C
-       select HAVE_S3C2410_WATCHDOG if WATCHDOG
-       select HAVE_S3C_RTC if RTC_CLASS
-       select NEED_MACH_GPIO_H
-       select SAMSUNG_ATAGS
-       select SAMSUNG_WDT_RESET
-       help
-         Samsung S5PC100 series based systems
-
-config ARCH_S5PV210
-       bool "Samsung S5PV210/S5PC110"
-       select ARCH_HAS_HOLES_MEMORYMODEL
-       select ARCH_SPARSEMEM_ENABLE
-       select ATAGS
-       select CLKDEV_LOOKUP
-       select CLKSRC_SAMSUNG_PWM
-       select CPU_V7
-       select GENERIC_CLOCKEVENTS
-       select GPIO_SAMSUNG
-       select HAVE_S3C2410_I2C if I2C
-       select HAVE_S3C2410_WATCHDOG if WATCHDOG
-       select HAVE_S3C_RTC if RTC_CLASS
-       select NEED_MACH_GPIO_H
-       select NEED_MACH_MEMORY_H
-       select SAMSUNG_ATAGS
-       help
-         Samsung S5PV210/S5PC110 series based systems
-
 config ARCH_DAVINCI
        bool "TI DaVinci"
        select ARCH_HAS_HOLES_MEMORYMODEL
@@ -951,8 +886,6 @@ source "arch/arm/mach-ixp4xx/Kconfig"
 
 source "arch/arm/mach-keystone/Kconfig"
 
-source "arch/arm/mach-kirkwood/Kconfig"
-
 source "arch/arm/mach-ks8695/Kconfig"
 
 source "arch/arm/mach-msm/Kconfig"
@@ -963,6 +896,8 @@ source "arch/arm/mach-mv78xx0/Kconfig"
 
 source "arch/arm/mach-imx/Kconfig"
 
+source "arch/arm/mach-mediatek/Kconfig"
+
 source "arch/arm/mach-mxs/Kconfig"
 
 source "arch/arm/mach-netx/Kconfig"
@@ -1004,10 +939,6 @@ source "arch/arm/mach-s3c24xx/Kconfig"
 
 source "arch/arm/mach-s3c64xx/Kconfig"
 
-source "arch/arm/mach-s5p64x0/Kconfig"
-
-source "arch/arm/mach-s5pc100/Kconfig"
-
 source "arch/arm/mach-s5pv210/Kconfig"
 
 source "arch/arm/mach-exynos/Kconfig"
@@ -1554,10 +1485,12 @@ config ARM_PSCI
 config ARCH_NR_GPIO
        int
        default 1024 if ARCH_SHMOBILE || ARCH_TEGRA
-       default 512 if ARCH_EXYNOS || ARCH_KEYSTONE || SOC_OMAP5 || SOC_DRA7XX || ARCH_S3C24XX || ARCH_S3C64XX
+       default 512 if ARCH_EXYNOS || ARCH_KEYSTONE || SOC_OMAP5 || \
+               SOC_DRA7XX || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210
        default 416 if ARCH_SUNXI
        default 392 if ARCH_U8500
        default 352 if ARCH_VT8500
+       default 288 if ARCH_ROCKCHIP
        default 264 if MACH_H4700
        default 0
        help
@@ -1569,7 +1502,7 @@ source kernel/Kconfig.preempt
 
 config HZ_FIXED
        int
-       default 200 if ARCH_EBSA110 || ARCH_S3C24XX || ARCH_S5P64X0 || \
+       default 200 if ARCH_EBSA110 || ARCH_S3C24XX || \
                ARCH_S5PV210 || ARCH_EXYNOS4
        default AT91_TIMER_HZ if ARCH_AT91
        default SHMOBILE_TIMER_HZ if ARCH_SHMOBILE_LEGACY
@@ -2050,6 +1983,8 @@ config XIP_PHYS_ADDR
 config KEXEC
        bool "Kexec system call (EXPERIMENTAL)"
        depends on (!SMP || PM_SLEEP_SMP)
+       select CRYPTO
+       select CRYPTO_SHA256
        help
          kexec is a system call that implements the ability to shutdown your
          current kernel, and to start another kernel.  It is like a reboot
@@ -2194,7 +2129,6 @@ menu "Power management options"
 source "kernel/power/Kconfig"
 
 config ARCH_SUSPEND_POSSIBLE
-       depends on !ARCH_S5PC100
        depends on CPU_ARM920T || CPU_ARM926T || CPU_FEROCEON || CPU_SA1100 || \
                CPU_V6 || CPU_V6K || CPU_V7 || CPU_V7M || CPU_XSC3 || CPU_XSCALE || CPU_MOHAWK
        def_bool y