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

Commit fe388fac authored by Olof Johansson's avatar Olof Johansson
Browse files

Merge tag 'samsung-exynos' of...

Merge tag 'samsung-exynos' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/soc

Samsung Exynos updates for 3.16

- add new SoCs support
  : exynos3250, 5260, 5410 and 5800

- enable multi-platform on exynos
  : consolidate exynos related Kconfig entries

* tag 'samsung-exynos' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung

: (22 commits)
  ARM: EXYNOS: Enable multi-platform build support
  ARM: EXYNOS: Consolidate Kconfig entries
  ARM: EXYNOS: Add support for EXYNOS5410 SoC
  ARM: EXYNOS: Support secondary CPU boot of Exynos3250
  ARM: EXYNOS: Add Exynos3250 SoC ID
  ARM: EXYNOS: Add 5800 SoC support
  ARM: EXYNOS: initial board support for exynos5260 SoC
  cpufreq: exynos: Fix the compile error
  ARM: S3C24XX: move debug-macro.S into the common space
  ARM: S3C24XX: use generic DEBUG_UART_PHY/_VIRT in debug macro
  ARM: S3C24XX: trim down debug uart handling
  ARM: compressed/head.S: remove s3c24xx special case
  ARM: EXYNOS: Remove unnecessary inclusion of cpu.h
  ARM: EXYNOS: Migrate Exynos specific macros from plat to mach
  ARM: EXYNOS: Remove exynos_subsys registration
  ARM: EXYNOS: Remove duplicate lines in Makefile
  ARM: EXYNOS: use v7_exit_coherency_flush macro for cache disabling
  ARM: dts: Remove g2d_pd node for exynos5420
  ARM: dts: Remove mau_pd node for exynos5420
  ARM: exynos_defconfig: enable HS-I2C to fix for mmc partition mount
  ...

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 8792f592 9dfa92ec
Loading
Loading
Loading
Loading
+0 −20
Original line number Diff line number Diff line
@@ -828,26 +828,6 @@ config ARCH_S5PV210
	help
	  Samsung S5PV210/S5PC110 series based systems

config ARCH_EXYNOS
	bool "Samsung EXYNOS"
	select ARCH_HAS_CPUFREQ
	select ARCH_HAS_HOLES_MEMORYMODEL
	select ARCH_REQUIRE_GPIOLIB
	select ARCH_SPARSEMEM_ENABLE
	select ARM_GIC
	select COMMON_CLK_SAMSUNG
	select CPU_V7
	select GENERIC_CLOCKEVENTS
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select HAVE_S3C_RTC if RTC_CLASS
	select NEED_MACH_MEMORY_H
	select SPARSE_IRQ
	select SRAM
	select USE_OF
	help
	  Support for SAMSUNG's EXYNOS SoCs (EXYNOS4/5)

config ARCH_DAVINCI
	bool "TI DaVinci"
	select ARCH_HAS_HOLES_MEMORYMODEL
+52 −2
Original line number Diff line number Diff line
@@ -616,6 +616,7 @@ choice
	config DEBUG_S3C_UART0
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
		bool "Use S3C UART 0 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
@@ -628,6 +629,7 @@ choice
	config DEBUG_S3C_UART1
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
		bool "Use S3C UART 1 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
@@ -640,6 +642,7 @@ choice
	config DEBUG_S3C_UART2
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
		bool "Use S3C UART 2 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
@@ -661,6 +664,33 @@ choice
		  The uncompressor code port configuration is now handled
		  by CONFIG_S3C_LOWLEVEL_UART_PORT.

	config DEBUG_S3C2410_UART0
		depends on ARCH_S3C24XX
		select DEBUG_S3C2410_UART
		bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
		  their output to UART 0. The port must have been initialised
		  by the boot-loader before use.

	config DEBUG_S3C2410_UART1
		depends on ARCH_S3C24XX
		select DEBUG_S3C2410_UART
		bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
		  their output to UART 1. The port must have been initialised
		  by the boot-loader before use.

	config DEBUG_S3C2410_UART2
		depends on ARCH_S3C24XX
		select DEBUG_S3C2410_UART
		bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
		  their output to UART 2. The port must have been initialised
		  by the boot-loader before use.

	config DEBUG_SOCFPGA_UART
		depends on ARCH_SOCFPGA
		bool "Use SOCFPGA UART for low-level debug"
@@ -912,6 +942,13 @@ endchoice
config DEBUG_EXYNOS_UART
	bool

config DEBUG_S3C2410_UART
	bool
	select DEBUG_S3C24XX_UART

config DEBUG_S3C24XX_UART
	bool

config DEBUG_OMAP2PLUS_UART
	bool
	depends on ARCH_OMAP2PLUS
@@ -971,6 +1008,7 @@ config DEBUG_LL_INCLUDE
				 DEBUG_IMX6SX_UART
	default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
	default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
	default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
	default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
	default "debug/sti.S" if DEBUG_STI_UART
	default "debug/tegra.S" if DEBUG_TEGRA_UART
@@ -1027,6 +1065,12 @@ config DEBUG_UART_PHYS
	default 0x40090000 if ARCH_LPC32XX
	default 0x40100000 if DEBUG_PXA_UART1
	default 0x42000000 if ARCH_GEMINI
	default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
				DEBUG_S3C2410_UART0)
	default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
				DEBUG_S3C2410_UART1)
	default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
				DEBUG_S3C2410_UART2)
	default 0x7c0003f8 if FOOTBRIDGE
	default 0x80070000 if DEBUG_IMX23_UART
	default 0x80074000 if DEBUG_IMX28_UART
@@ -1059,7 +1103,7 @@ config DEBUG_UART_PHYS
	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
		DEBUG_LL_UART_EFM32 || \
		DEBUG_UART_8250 || DEBUG_UART_PL01X || \
		DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
		DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART

config DEBUG_UART_VIRT
	hex "Virtual base address of debug UART"
@@ -1077,6 +1121,12 @@ config DEBUG_UART_VIRT
	default 0xf2100000 if DEBUG_PXA_UART1
	default 0xf4090000 if ARCH_LPC32XX
	default 0xf4200000 if ARCH_GEMINI
	default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
				DEBUG_S3C2410_UART0)
	default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
				DEBUG_S3C2410_UART1)
	default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
				DEBUG_S3C2410_UART2)
	default 0xf7fc9000 if DEBUG_BERLIN_UART
	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
@@ -1120,7 +1170,7 @@ config DEBUG_UART_VIRT
	default DEBUG_UART_PHYS if !MMU
	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
		DEBUG_UART_8250 || DEBUG_UART_PL01X || \
		DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
		DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART

config DEBUG_UART_8250_SHIFT
	int "Register offset shift for the 8250 debug UART"
+0 −5
Original line number Diff line number Diff line
@@ -60,11 +60,6 @@
		add	\rb, \rb, #0x00010000	@ Ser1
#endif
		.endm
#elif defined(CONFIG_ARCH_S3C24XX)
		.macro loadsp, rb, tmp
		mov	\rb, #0x50000000
		add	\rb, \rb, #0x4000 * CONFIG_S3C_LOWLEVEL_UART_PORT
		.endm
#else
		.macro	loadsp,	rb, tmp
		addruart \rb, \tmp
+0 −12
Original line number Diff line number Diff line
@@ -364,16 +364,4 @@
			gpio-key,wakeup;
		};
	};

	amba {
		mdma1: mdma@11C10000 {
			/*
			 * MDMA1 can support both secure and non-secure
			 * AXI transactions. When this is enabled in the kernel
			 * for boards that run in secure mode, we are getting
			 * imprecise external aborts causing the kernel to oops.
			 */
			status = "disabled";
		};
	};
};
+7 −11
Original line number Diff line number Diff line
@@ -264,16 +264,6 @@
		reg = <0x100440C0 0x20>;
	};

	mau_pd: power-domain@100440E0 {
		compatible = "samsung,exynos4210-pd";
		reg = <0x100440E0 0x20>;
	};

	g2d_pd: power-domain@10044100 {
		compatible = "samsung,exynos4210-pd";
		reg = <0x10044100 0x20>;
	};

	msc_pd: power-domain@10044120 {
		compatible = "samsung,exynos4210-pd";
		reg = <0x10044120 0x20>;
@@ -381,6 +371,13 @@
			#dma-cells = <1>;
			#dma-channels = <8>;
			#dma-requests = <1>;
			/*
			 * MDMA1 can support both secure and non-secure
			 * AXI transactions. When this is enabled in the kernel
			 * for boards that run in secure mode, we are getting
			 * imprecise external aborts causing the kernel to oops.
			 */
			status = "disabled";
		};
	};

@@ -775,6 +772,5 @@
		interrupts = <0 112 0>;
		clocks = <&clock 471>;
		clock-names = "secss";
		samsung,power-domain = <&g2d_pd>;
	};
};
Loading