Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 99c6bcf4 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'multiplatform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Pull ARM SoC multiplatform updates from Olof Johansson:
 "More multiplatform enablement for ARM platforms.  The ones converted
  in this branch are:

   - bcm2835
   - cns3xxx
   - sirf
   - nomadik
   - msx
   - spear
   - tegra
   - ux500

  We're getting close to having most of them converted!

  One of the larger platforms remaining is Samsung Exynos, and there are
  a bunch of supporting patches in this merge window for it.  There was
  a patch in this branch to a early version of multiplatform conversion,
  but it ended up being reverted due to need of more bake time.  The
  revert commit is part of the branch since it would have required
  rebasing multiple dependent branches and they were stable by then"

* tag 'multiplatform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (70 commits)
  mmc: sdhci-s3c: Fix operation on non-single image Samsung platforms
  clocksource: nomadik-mtu: fix up clocksource/timer
  Revert "ARM: exynos: enable multiplatform support"
  ARM: SPEAr13xx: Fix typo "ARCH_HAVE_CPUFREQ"
  ARM: exynos: enable multiplatform support
  rtc: s3c: make header file local
  mtd: onenand/samsung: make regs-onenand.h file local
  thermal/exynos: remove unnecessary header inclusions
  mmc: sdhci-s3c: remove platform dependencies
  ARM: samsung: move mfc device definition to s5p-dev-mfc.c
  ARM: exynos: move debug-macro.S to include/debug/
  ARM: exynos: prepare for sparse IRQ
  ARM: exynos: introduce EXYNOS_ATAGS symbol
  ARM: tegra: build assembly files with -march=armv7-a
  ARM: Push selects for TWD/SCU into machine entries
  ARM: ux500: build hotplug.o for ARMv7-a
  ARM: ux500: move to multiplatform
  ARM: ux500: make remaining headers local
  ARM: ux500: make irqs.h local to platform
  ARM: ux500: get rid of <mach/[hardware|db8500-regs].h>
  ...
parents 97b1007a 2fdfe1c2
Loading
Loading
Loading
Loading
+5 −130
Original line number Diff line number Diff line
@@ -362,37 +362,6 @@ config ARCH_AT91
	  This enables support for systems based on Atmel
	  AT91RM9200 and AT91SAM9* processors.

config ARCH_BCM2835
	bool "Broadcom BCM2835 family"
	select ARCH_REQUIRE_GPIOLIB
	select ARM_AMBA
	select ARM_ERRATA_411920
	select ARM_TIMER_SP804
	select CLKDEV_LOOKUP
	select CLKSRC_OF
	select COMMON_CLK
	select CPU_V6
	select GENERIC_CLOCKEVENTS
	select MULTI_IRQ_HANDLER
	select PINCTRL
	select PINCTRL_BCM2835
	select SPARSE_IRQ
	select USE_OF
	help
	  This enables support for the Broadcom BCM2835 SoC. This SoC is
	  use in the Raspberry Pi, and Roku 2 devices.

config ARCH_CNS3XXX
	bool "Cavium Networks CNS3XXX family"
	select ARM_GIC
	select CPU_V6K
	select GENERIC_CLOCKEVENTS
	select MIGHT_HAVE_CACHE_L2X0
	select MIGHT_HAVE_PCI
	select PCI_DOMAINS if PCI
	help
	  Support for Cavium Networks CNS3XXX platform.

config ARCH_CLPS711X
	bool "Cirrus Logic CLPS711x/EP721x/EP731x-based"
	select ARCH_REQUIRE_GPIOLIB
@@ -416,21 +385,6 @@ config ARCH_GEMINI
	help
	  Support for the Cortina Systems Gemini family SoCs

config ARCH_SIRF
	bool "CSR SiRF"
	select ARCH_REQUIRE_GPIOLIB
	select AUTO_ZRELADDR
	select COMMON_CLK
	select GENERIC_CLOCKEVENTS
	select GENERIC_IRQ_CHIP
	select MIGHT_HAVE_CACHE_L2X0
	select NO_IOPORT
	select PINCTRL
	select PINCTRL_SIRF
	select USE_OF
	help
	  Support for CSR SiRFprimaII/Marco/Polo platforms

config ARCH_EBSA110
	bool "EBSA-110"
	select ARCH_USES_GETTIMEOFFSET
@@ -470,23 +424,6 @@ config ARCH_FOOTBRIDGE
	  Support for systems based on the DC21285 companion chip
	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.

config ARCH_MXS
	bool "Freescale MXS-based"
	select ARCH_REQUIRE_GPIOLIB
	select CLKDEV_LOOKUP
	select CLKSRC_MMIO
	select CLKSRC_OF
	select COMMON_CLK
	select GENERIC_CLOCKEVENTS
	select HAVE_CLK_PREPARE
	select MULTI_IRQ_HANDLER
	select PINCTRL
	select SPARSE_IRQ
	select STMP_DEVICE
	select USE_OF
	help
	  Support for Freescale MXS-based family of processors

config ARCH_NETX
	bool "Hilscher NetX based"
	select ARM_VIC
@@ -659,25 +596,6 @@ config ARCH_LPC32XX
	help
	  Support for the NXP LPC32XX family of processors

config ARCH_TEGRA
	bool "NVIDIA Tegra"
	select ARCH_HAS_CPUFREQ
	select ARCH_REQUIRE_GPIOLIB
	select CLKDEV_LOOKUP
	select CLKSRC_MMIO
	select CLKSRC_OF
	select COMMON_CLK
	select GENERIC_CLOCKEVENTS
	select HAVE_CLK
	select HAVE_SMP
	select MIGHT_HAVE_CACHE_L2X0
	select SOC_BUS
	select SPARSE_IRQ
	select USE_OF
	help
	  This enables support for NVIDIA Tegra based systems (Tegra APX,
	  Tegra 6xx and Tegra 2 series).

config ARCH_PXA
	bool "PXA2xx/PXA3xx-based"
	depends on MMU
@@ -715,6 +633,8 @@ config ARCH_SHMOBILE
	bool "Renesas SH-Mobile / R-Mobile"
	select CLKDEV_LOOKUP
	select GENERIC_CLOCKEVENTS
	select HAVE_ARM_SCU if SMP
	select HAVE_ARM_TWD if LOCAL_TIMERS
	select HAVE_CLK
	select HAVE_MACH_CLKDEV
	select HAVE_SMP
@@ -900,51 +820,6 @@ config ARCH_U300
	help
	  Support for ST-Ericsson U300 series mobile platforms.

config ARCH_U8500
	bool "ST-Ericsson U8500 Series"
	depends on MMU
	select ARCH_HAS_CPUFREQ
	select ARCH_REQUIRE_GPIOLIB
	select ARM_AMBA
	select CLKDEV_LOOKUP
	select CPU_V7
	select GENERIC_CLOCKEVENTS
	select HAVE_SMP
	select MIGHT_HAVE_CACHE_L2X0
	select SPARSE_IRQ
	help
	  Support for ST-Ericsson's Ux500 architecture

config ARCH_NOMADIK
	bool "STMicroelectronics Nomadik"
	select ARCH_REQUIRE_GPIOLIB
	select ARM_AMBA
	select ARM_VIC
	select CLKSRC_NOMADIK_MTU
	select COMMON_CLK
	select CPU_ARM926T
	select GENERIC_CLOCKEVENTS
	select MIGHT_HAVE_CACHE_L2X0
	select USE_OF
	select PINCTRL
	select PINCTRL_STN8815
	select SPARSE_IRQ
	help
	  Support for the Nomadik platform by ST-Ericsson

config PLAT_SPEAR
	bool "ST SPEAr"
	select ARCH_HAS_CPUFREQ
	select ARCH_REQUIRE_GPIOLIB
	select ARM_AMBA
	select CLKDEV_LOOKUP
	select CLKSRC_MMIO
	select COMMON_CLK
	select GENERIC_CLOCKEVENTS
	select HAVE_CLK
	help
	  Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx).

config ARCH_DAVINCI
	bool "TI DaVinci"
	select ARCH_HAS_HOLES_MEMORYMODEL
@@ -1036,6 +911,8 @@ source "arch/arm/mach-at91/Kconfig"

source "arch/arm/mach-bcm/Kconfig"

source "arch/arm/mach-bcm2835/Kconfig"

source "arch/arm/mach-clps711x/Kconfig"

source "arch/arm/mach-cns3xxx/Kconfig"
@@ -1101,7 +978,7 @@ source "arch/arm/plat-samsung/Kconfig"

source "arch/arm/mach-socfpga/Kconfig"

source "arch/arm/plat-spear/Kconfig"
source "arch/arm/mach-spear/Kconfig"

source "arch/arm/mach-s3c24xx/Kconfig"

@@ -1528,7 +1405,6 @@ config SMP
	depends on GENERIC_CLOCKEVENTS
	depends on HAVE_SMP
	depends on MMU
	select HAVE_ARM_SCU if !ARCH_MSM_SCORPIONMP
	select USE_GENERIC_SMP_HELPERS
	help
	  This enables support for systems with more than one CPU. If you have
@@ -1653,7 +1529,6 @@ config LOCAL_TIMERS
	bool "Use local timer interrupts"
	depends on SMP
	default y
	select HAVE_ARM_TWD if (!ARCH_MSM_SCORPIONMP && !EXYNOS4_MCT)
	help
	  Enable support for local timers on SMP platforms, rather then the
	  legacy IPI broadcast method.  Local timers allows the system
+39 −0
Original line number Diff line number Diff line
@@ -89,6 +89,10 @@ choice
		bool "Kernel low-level debugging on 9263 and 9g45"
		depends on HAVE_AT91_DBGU1

	config DEBUG_BCM2835
		bool "Kernel low-level debugging on BCM2835 PL011 UART"
		depends on ARCH_BCM2835

	config DEBUG_CLPS711X_UART1
		bool "Kernel low-level debugging messages via UART1"
		depends on ARCH_CLPS711X
@@ -103,6 +107,13 @@ choice
		  Say Y here if you want the debug print routines to direct
		  their output to the second serial port on these devices.

	config DEBUG_CNS3XXX
		bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
		depends on ARCH_CNS3XXX
		help
		  Say Y here if you want the debug print routines to direct
                  their output to the CNS3xxx UART0.

	config DEBUG_DAVINCI_DA8XX_UART1
		bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
		depends on ARCH_DAVINCI_DA8XX
@@ -298,6 +309,13 @@ choice
		  Say Y here if you want kernel low-level debugging support
		  on MVEBU based platforms.

	config DEBUG_NOMADIK_UART
		bool "Kernel low-level debugging messages via NOMADIK UART"
		depends on ARCH_NOMADIK
		help
		  Say Y here if you want kernel low-level debugging support
		  on NOMADIK based platforms.

	config DEBUG_OMAP2PLUS_UART
		bool "Kernel low-level debugging messages via OMAP2PLUS UART"
		depends on ARCH_OMAP2PLUS
@@ -330,6 +348,7 @@ choice

	config DEBUG_S3C_UART0
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		bool "Use S3C UART 0 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
@@ -341,6 +360,7 @@ choice

	config DEBUG_S3C_UART1
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		bool "Use S3C UART 1 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
@@ -352,6 +372,7 @@ choice

	config DEBUG_S3C_UART2
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		bool "Use S3C UART 2 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
@@ -363,6 +384,7 @@ choice

	config DEBUG_S3C_UART3
		depends on PLAT_SAMSUNG && ARCH_EXYNOS
		select DEBUG_EXYNOS_UART
		bool "Use S3C UART 3 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
@@ -414,6 +436,13 @@ choice
		  Say Y here if you want the debug print routines to direct
		  their output to the uart1 port on SiRFmarco devices.

	config DEBUG_UX500_UART
		depends on ARCH_U8500
		bool "Use Ux500 UART for low-level debug"
		help
		  Say Y here if you want kernel low-level debugging support
		  on Ux500 based platforms.

	config DEBUG_VEXPRESS_UART0_DETECT
		bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
		depends on ARCH_VEXPRESS && CPU_CP15_MMU
@@ -485,6 +514,9 @@ choice

endchoice

config DEBUG_EXYNOS_UART
	bool

config DEBUG_IMX_UART_PORT
	int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
						DEBUG_IMX25_UART || \
@@ -580,6 +612,9 @@ endchoice

config DEBUG_LL_INCLUDE
	string
	default "debug/bcm2835.S" if DEBUG_BCM2835
	default "debug/cns3xxx.S" if DEBUG_CNS3XXX
	default "debug/exynos.S" if DEBUG_EXYNOS_UART
	default "debug/icedcc.S" if DEBUG_ICEDCC
	default "debug/imx.S" if DEBUG_IMX1_UART || \
				 DEBUG_IMX25_UART || \
@@ -591,14 +626,18 @@ config DEBUG_LL_INCLUDE
				 DEBUG_IMX6Q_UART
	default "debug/highbank.S" if DEBUG_HIGHBANK_UART
	default "debug/mvebu.S" if DEBUG_MVEBU_UART
	default "debug/mxs.S" if DEBUG_IMX23_UART || DEBUG_IMX28_UART
	default "debug/nomadik.S" if DEBUG_NOMADIK_UART
	default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
	default "debug/picoxcell.S" if DEBUG_PICOXCELL_UART
	default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
	default "debug/socfpga.S" if DEBUG_SOCFPGA_UART
	default "debug/sunxi.S" if DEBUG_SUNXI_UART0 || DEBUG_SUNXI_UART1
	default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT || \
		DEBUG_VEXPRESS_UART0_CA9 || DEBUG_VEXPRESS_UART0_RS1
	default "debug/vt8500.S" if DEBUG_VT8500_UART0
	default "debug/tegra.S" if DEBUG_TEGRA_UART
	default "debug/ux500.S" if DEBUG_UX500_UART
	default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
	default "mach/debug-macro.S"

+1 −4
Original line number Diff line number Diff line
@@ -190,9 +190,7 @@ machine-$(CONFIG_ARCH_VT8500) += vt8500
machine-$(CONFIG_ARCH_W90X900)		+= w90x900
machine-$(CONFIG_FOOTBRIDGE)		+= footbridge
machine-$(CONFIG_ARCH_SOCFPGA)		+= socfpga
machine-$(CONFIG_ARCH_SPEAR13XX)	+= spear13xx
machine-$(CONFIG_ARCH_SPEAR3XX)		+= spear3xx
machine-$(CONFIG_MACH_SPEAR600)		+= spear6xx
machine-$(CONFIG_PLAT_SPEAR)		+= spear
machine-$(CONFIG_ARCH_VIRT)		+= virt
machine-$(CONFIG_ARCH_ZYNQ)		+= zynq
machine-$(CONFIG_ARCH_SUNXI)		+= sunxi
@@ -206,7 +204,6 @@ plat-$(CONFIG_PLAT_ORION) += orion
plat-$(CONFIG_PLAT_PXA)		+= pxa
plat-$(CONFIG_PLAT_S3C24XX)	+= samsung
plat-$(CONFIG_PLAT_S5P)		+= samsung
plat-$(CONFIG_PLAT_SPEAR)	+= spear
plat-$(CONFIG_PLAT_VERSATILE)	+= versatile

ifeq ($(CONFIG_ARCH_EBSA110),y)
+2 −0
Original line number Diff line number Diff line
@@ -29,6 +29,8 @@ CONFIG_EMBEDDED=y
CONFIG_PROFILING=y
CONFIG_OPROFILE=y
CONFIG_JUMP_LABEL=y
CONFIG_ARCH_MULTI_V6=y
# CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_BCM2835=y
CONFIG_PREEMPT_VOLUNTARY=y
CONFIG_AEABI=y
+3 −0
Original line number Diff line number Diff line
@@ -19,8 +19,11 @@ CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_IOSCHED_CFQ=m
CONFIG_ARCH_MULTI_V6=y
#CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_CNS3XXX=y
CONFIG_MACH_CNS3420VB=y
CONFIG_DEBUG_CNS3XXX=y
CONFIG_AEABI=y
CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
Loading