All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Abraham <ta.omasab@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 7/9] arm: exynos: realign the code to allow support for newer 64-bit platforms
Date: Wed, 13 Apr 2016 16:13:40 +0530	[thread overview]
Message-ID: <1460544222-5342-8-git-send-email-ta.omasab@gmail.com> (raw)
In-Reply-To: <1460544222-5342-1-git-send-email-ta.omasab@gmail.com>

From: Thomas Abraham <thomas.ab@samsung.com>

The existing Exynos 32-bit platform support needs to be realigned in
order to support newer 64-bit Exynos platforms. The driver model will
be utlized for drivers on the 64-bit Exynos platforms and so some of
the older platform support code would not be required for the newer
64-bit Exynos platforms.

Cc: Minkyu Kang <mk7.kang@samsung.com>
Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
---
 arch/arm/Kconfig                         |    1 -
 arch/arm/mach-exynos/Kconfig             |   14 ++++++++++++++
 arch/arm/mach-exynos/Makefile            |    7 +++++--
 arch/arm/mach-exynos/include/mach/cpu.h  |    2 +-
 arch/arm/mach-exynos/include/mach/gpio.h |    2 +-
 arch/arm/mach-exynos/soc.c               |    2 ++
 6 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index b82ec18..ee22a3c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -426,7 +426,6 @@ config TARGET_BCMNSP
 
 config ARCH_EXYNOS
 	bool "Samsung EXYNOS"
-	select CPU_V7
 	select DM
 	select DM_SPI_FLASH
 	select DM_SERIAL
diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index a6a7597..acab947 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -7,30 +7,38 @@ choice
 config TARGET_SMDKV310
 	select SUPPORT_SPL
 	bool "Exynos4210 SMDKV310 board"
+	select CPU_V7
 	select OF_CONTROL
 
 config TARGET_TRATS
 	bool "Exynos4210 Trats board"
+	select CPU_V7
 
 config TARGET_S5PC210_UNIVERSAL
 	bool "EXYNOS4210 Universal C210 board"
+	select CPU_V7
 
 config TARGET_ORIGEN
 	bool "Exynos4412 Origen board"
+	select CPU_V7
 	select SUPPORT_SPL
 
 config TARGET_TRATS2
 	bool "Exynos4412 Trat2 board"
+	select CPU_V7
 
 config TARGET_ODROID
 	bool "Exynos4412 Odroid board"
+	select CPU_V7
 
 config TARGET_ODROID_XU3
 	bool "Exynos5422 Odroid board"
+	select CPU_V7
 	select OF_CONTROL
 
 config TARGET_ARNDALE
 	bool "Exynos5250 Arndale board"
+	select CPU_V7
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
 	select SUPPORT_SPL
@@ -38,32 +46,38 @@ config TARGET_ARNDALE
 
 config TARGET_SMDK5250
 	bool "SMDK5250 board"
+	select CPU_V7
 	select SUPPORT_SPL
 	select OF_CONTROL
 
 config TARGET_SNOW
 	bool "Snow board"
+	select CPU_V7
 	select SUPPORT_SPL
 	select OF_CONTROL
 
 config TARGET_SPRING
 	bool "Spring board"
+	select CPU_V7
 	select SUPPORT_SPL
 	select OF_CONTROL
 	select SPL_DISABLE_OF_CONTROL
 
 config TARGET_SMDK5420
 	bool "SMDK5420 board"
+	select CPU_V7
 	select SUPPORT_SPL
 	select OF_CONTROL
 
 config TARGET_PEACH_PI
 	bool "Peach Pi board"
+	select CPU_V7
 	select SUPPORT_SPL
 	select OF_CONTROL
 
 config TARGET_PEACH_PIT
 	bool "Peach Pit board"
+	select CPU_V7
 	select SUPPORT_SPL
 	select OF_CONTROL
 
diff --git a/arch/arm/mach-exynos/Makefile b/arch/arm/mach-exynos/Makefile
index 8542f89..be5912e 100644
--- a/arch/arm/mach-exynos/Makefile
+++ b/arch/arm/mach-exynos/Makefile
@@ -5,7 +5,8 @@
 # SPDX-License-Identifier:	GPL-2.0+
 #
 
-obj-y	+= clock.o power.o soc.o system.o pinmux.o tzpc.o
+obj-y	+= soc.o
+obj-$(CONFIG_CPU_V7) += clock.o pinmux.o power.o soc.o system.o
 
 obj-$(CONFIG_EXYNOS5420)	+= sec_boot.o
 
@@ -13,6 +14,6 @@ ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_EXYNOS5)	+= clock_init_exynos5.o
 obj-$(CONFIG_EXYNOS5)	+= dmc_common.o dmc_init_ddr3.o
 obj-$(CONFIG_EXYNOS4210)+= dmc_init_exynos4.o clock_init_exynos4.o
-obj-y	+= spl_boot.o
+obj-y	+= spl_boot.o tzpc.o
 obj-y	+= lowlevel_init.o
 endif
diff --git a/arch/arm/mach-exynos/include/mach/cpu.h b/arch/arm/mach-exynos/include/mach/cpu.h
index 14a1692..f12e3d6 100644
--- a/arch/arm/mach-exynos/include/mach/cpu.h
+++ b/arch/arm/mach-exynos/include/mach/cpu.h
@@ -270,7 +270,7 @@ IS_EXYNOS_TYPE(exynos5420, 0x5420)
 IS_EXYNOS_TYPE(exynos5422, 0x5422)
 
 #define SAMSUNG_BASE(device, base)				\
-static inline unsigned int __attribute__((no_instrument_function)) \
+static inline unsigned long __attribute__((no_instrument_function)) \
 	samsung_get_base_##device(void) \
 {								\
 	if (cpu_is_exynos4()) {				\
diff --git a/arch/arm/mach-exynos/include/mach/gpio.h b/arch/arm/mach-exynos/include/mach/gpio.h
index 7fc8e61..81363bd 100644
--- a/arch/arm/mach-exynos/include/mach/gpio.h
+++ b/arch/arm/mach-exynos/include/mach/gpio.h
@@ -1349,7 +1349,7 @@ enum exynos5420_gpio_pin {
 };
 
 struct gpio_info {
-	unsigned int reg_addr;	/* Address of register for this part */
+	unsigned long reg_addr;	/* Address of register for this part */
 	unsigned int max_gpio;	/* Maximum GPIO in this part */
 };
 
diff --git a/arch/arm/mach-exynos/soc.c b/arch/arm/mach-exynos/soc.c
index 0f116b1..5cea5ed 100644
--- a/arch/arm/mach-exynos/soc.c
+++ b/arch/arm/mach-exynos/soc.c
@@ -11,7 +11,9 @@
 
 void reset_cpu(ulong addr)
 {
+#ifndef CONFIG_OF_CONTROL
 	writel(0x1, samsung_get_base_swreset());
+#endif
 }
 
 #ifndef CONFIG_SYS_DCACHE_OFF
-- 
1.6.6.rc2

  parent reply	other threads:[~2016-04-13 10:43 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-13 10:43 [U-Boot] [PATCH 0/9] Add support for Espresso7420 board Thomas Abraham
2016-04-13 10:43 ` [U-Boot] [PATCH 1/9] pinctrl: add the DM_UC_FLAG_SEQ_ALIAS flag for numbering the devices Thomas Abraham
2016-04-13 10:43 ` [U-Boot] [PATCH 2/9] pinctrl: Add pinctrl driver support for Exynos7420 SoC Thomas Abraham
2016-04-13 10:43 ` [U-Boot] [PATCH 3/9] clk: fixed_rate: allow driver usage prior to relocation Thomas Abraham
2016-04-20 14:40   ` Simon Glass
2016-04-13 10:43 ` [U-Boot] [PATCH 4/9] clk: exynos: add clock driver for Exynos7420 Soc Thomas Abraham
2016-04-20 14:41   ` Simon Glass
2016-04-23 15:24     ` Thomas Abraham
2016-04-13 10:43 ` [U-Boot] [PATCH 5/9] serial: s5p: get the port id number from the alias of the device node Thomas Abraham
2016-04-20 14:41   ` Simon Glass
2016-04-13 10:43 ` [U-Boot] [PATCH 6/9] serial: s5p: use clock api to get clock rate Thomas Abraham
2016-04-20 14:41   ` Simon Glass
2016-04-13 10:43 ` Thomas Abraham [this message]
2016-04-18 11:09   ` [U-Boot] [PATCH 7/9] arm: exynos: realign the code to allow support for newer 64-bit platforms Minkyu Kang
2016-04-18 14:11     ` Thomas Abraham
2016-04-21 13:51       ` Minkyu Kang
2016-04-23 15:28         ` Thomas Abraham
2016-04-18 16:58   ` [U-Boot] [PATCH v2 " Thomas Abraham
2016-04-20 14:41     ` Simon Glass
2016-04-13 10:43 ` [U-Boot] [PATCH 8/9] arm: exynos: add support for Exynos7420 SoC Thomas Abraham
2016-04-18 17:01   ` [U-Boot] [PATCH v2 " Thomas Abraham
2016-04-20 14:41   ` [U-Boot] [PATCH " Simon Glass
2016-04-23 15:31     ` Thomas Abraham
2016-04-13 10:43 ` [U-Boot] [PATCH 9/9] board: samsung: add initial Espresso7420 board support Thomas Abraham
2016-04-20 14:41   ` Simon Glass
2016-04-23 15:35     ` Thomas Abraham
2016-04-20  9:17 ` [U-Boot] [PATCH 0/9] Add support for Espresso7420 board Alim Akhtar
2016-04-23 16:06   ` Thomas Abraham

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1460544222-5342-8-git-send-email-ta.omasab@gmail.com \
    --to=ta.omasab@gmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.