Merge tag '64bit-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 17 Feb 2015 17:47:46 +0000 (09:47 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 17 Feb 2015 17:47:46 +0000 (09:47 -0800)
Pull ARM SoC 64-bit changes and additions from Olof Johansson:
 "The 64-bit set of updates this release cycle adds support for three
  new platforms:

   - Samsunc Exynos 7
   - Freescale LS2085a
   - Mediatek MT8173

  For all these, the changes mostly consititude additions of DT
  contents, but also some Kconfig entries to allow dependency/selection
  of drivers per-platform, etc"

* tag '64bit-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  arm64: Kconfig: clean up two no-op Kconfig options from CONFIG_ARCH_TEGRA*
  arm64: Fix sort of platform Kconfig entries
  arm64: Add support for FSL's LS2085A SoC in Kconfig and defconfig
  arm64: Add DTS support for FSL's LS2085A SoC
  arm64: mediatek: Add MT8173 SoC Kconfig and defconfig
  arm64: dts: Add mediatek MT8173 SoC and evaluation board dts and Makefile
  Document: DT: Add bindings for mediatek MT8173 SoC Platform
  arm64: Add Tegra132 support
  arm64: Enable ARMv8 based exynos7 SoC support
  arm64: dts: Add nodes for mmc, i2c, rtc, watchdog, adc on exynos7
  arm64: dts: Add PMU DT node for exynos7 SoC
  arm64: dts: Add initial pinctrl support to exynos7
  arm64: dts: Add initial device tree support for exynos7

1  2 
Documentation/devicetree/bindings/arm/mediatek/mediatek,sysirq.txt
Documentation/devicetree/bindings/serial/mtk-uart.txt
arch/arm64/Kconfig
arch/arm64/boot/dts/Makefile
arch/arm64/configs/defconfig

index 4cd6f7ba45c67a828b2789053b5fb103f43ad98e,8794f8d14db5e115aac9e453acd4a2c30acd00c7..4f5a5352ccd893a162b932040577a74cb226881b
@@@ -5,9 -5,9 +5,10 @@@ interrupt
  
  Required properties:
  - compatible: should be one of:
+       "mediatek,mt8173-sysirq"
        "mediatek,mt8135-sysirq"
        "mediatek,mt8127-sysirq"
 +      "mediatek,mt6592-sysirq"
        "mediatek,mt6589-sysirq"
        "mediatek,mt6582-sysirq"
        "mediatek,mt6577-sysirq"
index 0eebbfea91a483e3738a9b3774d9511758ac7300,0e41b6ef2950bf626e67ca34a9f18684ba8f407d..44152261e5c5abf3484e7fba073795003dc5ed31
@@@ -2,11 -2,11 +2,13 @@@
  
  Required properties:
  - compatible should contain:
 +  * "mediatek,mt8135-uart" for MT8135 compatible UARTS
 +  * "mediatek,mt8127-uart" for MT8127 compatible UARTS
+   * "mediatek,mt8173-uart" for MT8173 compatible UARTS
    * "mediatek,mt6589-uart" for MT6589 compatible UARTS
    * "mediatek,mt6582-uart" for MT6582 compatible UARTS
-   * "mediatek,mt6577-uart" for all compatible UARTS (MT6589, MT6582, MT6577)
+   * "mediatek,mt6577-uart" for all compatible UARTS (MT8173, MT6589, MT6582, 
+       MT6577)
  
  - reg: The base address of the UART register bank.
  
diff --combined arch/arm64/Kconfig
index 676454a65af8ec7ded0b8cdebae1a69cc91bee97,5122974163da530aa4104ee5f8184c3e29cb1696..1b8e97331ffbdba1e8a6c6307ab76d3bc2f73028
@@@ -39,7 -39,6 +39,7 @@@ config ARM6
        select HARDIRQS_SW_RESEND
        select HAVE_ALIGNED_STRUCT_PAGE if SLUB
        select HAVE_ARCH_AUDITSYSCALL
 +      select HAVE_ARCH_BITREVERSE
        select HAVE_ARCH_JUMP_LABEL
        select HAVE_ARCH_KGDB
        select HAVE_ARCH_SECCOMP_FILTER
@@@ -149,11 -148,65 +149,65 @@@ source "kernel/Kconfig.freezer
  
  menu "Platform selection"
  
+ config ARCH_EXYNOS
+       bool
+       help
+         This enables support for Samsung Exynos SoC family
+ config ARCH_EXYNOS7
+       bool "ARMv8 based Samsung Exynos7"
+       select ARCH_EXYNOS
+       select COMMON_CLK_SAMSUNG
+       select HAVE_S3C2410_WATCHDOG if WATCHDOG
+       select HAVE_S3C_RTC if RTC_CLASS
+       select PINCTRL
+       select PINCTRL_EXYNOS
+       help
+         This enables support for Samsung Exynos7 SoC family
+ config ARCH_FSL_LS2085A
+       bool "Freescale LS2085A SOC"
+       help
+         This enables support for Freescale LS2085A SOC.
+ config ARCH_MEDIATEK
+       bool "Mediatek MT65xx & MT81xx ARMv8 SoC"
+       select ARM_GIC
+       help
+         Support for Mediatek MT65xx & MT81xx ARMv8 SoCs
  config ARCH_SEATTLE
        bool "AMD Seattle SoC Family"
        help
          This enables support for AMD Seattle SOC Family
  
+ config ARCH_TEGRA
+       bool "NVIDIA Tegra SoC Family"
+       select ARCH_HAS_RESET_CONTROLLER
+       select ARCH_REQUIRE_GPIOLIB
+       select CLKDEV_LOOKUP
+       select CLKSRC_MMIO
+       select CLKSRC_OF
+       select GENERIC_CLOCKEVENTS
+       select HAVE_CLK
+       select PINCTRL
+       select RESET_CONTROLLER
+       help
+         This enables support for the NVIDIA Tegra SoC family.
+ config ARCH_TEGRA_132_SOC
+       bool "NVIDIA Tegra132 SoC"
+       depends on ARCH_TEGRA
+       select PINCTRL_TEGRA124
+       select USB_ULPI if USB_PHY
+       select USB_ULPI_VIEWPORT if USB_PHY
+       help
+         Enable support for NVIDIA Tegra132 SoC, based on the Denver
+         ARMv8 CPU.  The Tegra132 SoC is similar to the Tegra124 SoC,
+         but contains an NVIDIA Denver CPU complex in place of
+         Tegra124's "4+1" Cortex-A15 CPU complex.
  config ARCH_THUNDER
        bool "Cavium Inc. Thunder SoC Family"
        help
@@@ -350,6 -403,7 +404,6 @@@ config ARM64_VA_BITS_4
  
  config ARM64_VA_BITS_48
        bool "48-bit"
 -      depends on !ARM_SMMU
  
  endchoice
  
@@@ -540,21 -594,6 +594,21 @@@ config CP15_BARRIER_EMULATIO
  
          If unsure, say Y
  
 +config SETEND_EMULATION
 +      bool "Emulate SETEND instruction"
 +      help
 +        The SETEND instruction alters the data-endianness of the
 +        AArch32 EL0, and is deprecated in ARMv8.
 +
 +        Say Y here to enable software emulation of the instruction
 +        for AArch32 userspace code.
 +
 +        Note: All the cpus on the system must have mixed endian support at EL0
 +        for this feature to be enabled. If a new CPU - which doesn't support mixed
 +        endian - is hotplugged in after this feature has been enabled, there could
 +        be unexpected results in the applications.
 +
 +        If unsure, say Y
  endif
  
  endmenu
@@@ -642,6 -681,9 +696,6 @@@ source "kernel/power/Kconfig
  config ARCH_SUSPEND_POSSIBLE
        def_bool y
  
 -config ARM64_CPU_SUSPEND
 -      def_bool PM_SLEEP
 -
  endmenu
  
  menu "CPU Power Management"
index c62b0f4d9ef65bf4dfa8503d581c159e5fe9b16b,538c0c6bedf49e03fd8f14868f5aea0d2710e008..e0350caf049e72f25db374e90b198223e74fd544
@@@ -2,5 -2,10 +2,8 @@@ dts-dirs += am
  dts-dirs += apm
  dts-dirs += arm
  dts-dirs += cavium
+ dts-dirs += exynos
+ dts-dirs += freescale
+ dts-dirs += mediatek
  
 -always                := $(dtb-y)
  subdir-y      := $(dts-dirs)
 -clean-files   := *.dtb
index 66b6cacc32514f0e7397735ae195ebe39dd7a136,d6a53e8fa8db9b49a3f945f7eb0f449664187420..be1f12a5a5f03b787d7cd45867075b62aac30014
@@@ -31,6 -31,8 +31,8 @@@ CONFIG_MODULES=
  CONFIG_MODULE_UNLOAD=y
  # CONFIG_BLK_DEV_BSG is not set
  # CONFIG_IOSCHED_DEADLINE is not set
+ CONFIG_ARCH_FSL_LS2085A=y
+ CONFIG_ARCH_MEDIATEK=y
  CONFIG_ARCH_THUNDER=y
  CONFIG_ARCH_VEXPRESS=y
  CONFIG_ARCH_XGENE=y
@@@ -45,8 -47,6 +47,8 @@@ CONFIG_CMA=
  CONFIG_CMDLINE="console=ttyAMA0"
  # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
  CONFIG_COMPAT=y
 +CONFIG_CPU_IDLE=y
 +CONFIG_ARM64_CPUIDLE=y
  CONFIG_NET=y
  CONFIG_PACKET=y
  CONFIG_UNIX=y
@@@ -88,6 -88,7 +90,7 @@@ CONFIG_SERIO_AMBAKMI=
  CONFIG_LEGACY_PTY_COUNT=16
  CONFIG_SERIAL_8250=y
  CONFIG_SERIAL_8250_CONSOLE=y
+ CONFIG_SERIAL_8250_MT6577=y
  CONFIG_SERIAL_AMBA_PL011=y
  CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
  CONFIG_SERIAL_OF_PLATFORM=y