[U-Boot] [PATCH 4/5] ARM: uniphier: prepare directory structure for ARMv8 SoC support

Masahiro Yamada yamada.masahiro at socionext.com
Fri Feb 26 10:59:44 CET 2016


Before adding ARMv8 support, this commit refactors the directory
structure.  Move ARMv7 specific files to arch/arm/mach-uniphier/arm32
to avoid a mess by mixture of ARMv7 and ARMv8 code.  Also move the
"select CPU_V7" to the lower-level menu because we will have to
select ARM64 instead of CPU_V7 for ARMv8 SoCs.

Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
---

 arch/arm/Kconfig                                        |  1 -
 arch/arm/mach-uniphier/Kconfig                          |  4 ++++
 arch/arm/mach-uniphier/Makefile                         |  9 ++-------
 arch/arm/mach-uniphier/arm32/Makefile                   | 13 +++++++++++++
 arch/arm/mach-uniphier/{ => arm32}/arm-mpcore.h         |  0
 arch/arm/mach-uniphier/{ => arm32}/cache_uniphier.c     |  0
 arch/arm/mach-uniphier/{ => arm32}/debug_ll.S           |  0
 arch/arm/mach-uniphier/{ => arm32}/late_lowlevel_init.S |  0
 arch/arm/mach-uniphier/{ => arm32}/lowlevel_init.S      |  0
 arch/arm/mach-uniphier/{ => arm32}/ssc-regs.h           |  0
 arch/arm/mach-uniphier/{ => arm32}/timer.c              |  0
 11 files changed, 19 insertions(+), 8 deletions(-)
 create mode 100644 arch/arm/mach-uniphier/arm32/Makefile
 rename arch/arm/mach-uniphier/{ => arm32}/arm-mpcore.h (100%)
 rename arch/arm/mach-uniphier/{ => arm32}/cache_uniphier.c (100%)
 rename arch/arm/mach-uniphier/{ => arm32}/debug_ll.S (100%)
 rename arch/arm/mach-uniphier/{ => arm32}/late_lowlevel_init.S (100%)
 rename arch/arm/mach-uniphier/{ => arm32}/lowlevel_init.S (100%)
 rename arch/arm/mach-uniphier/{ => arm32}/ssc-regs.h (100%)
 rename arch/arm/mach-uniphier/{ => arm32}/timer.c (100%)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 37b20ff..6e5544f 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -690,7 +690,6 @@ config TARGET_COLIBRI_PXA270
 config ARCH_UNIPHIER
 	bool "Socionext UniPhier SoCs"
 	select CLK_UNIPHIER
-	select CPU_V7
 	select SUPPORT_SPL
 	select SPL
 	select OF_CONTROL
diff --git a/arch/arm/mach-uniphier/Kconfig b/arch/arm/mach-uniphier/Kconfig
index e859ca3..660f83c 100644
--- a/arch/arm/mach-uniphier/Kconfig
+++ b/arch/arm/mach-uniphier/Kconfig
@@ -9,15 +9,19 @@ choice
 
 config ARCH_UNIPHIER_PH1_SLD3
 	bool "UniPhier PH1-sLD3 SoC"
+	select CPU_V7
 
 config ARCH_UNIPHIER_LD4_SLD8
 	bool "UniPhier PH1-LD4/PH1-sLD8 SoC"
+	select CPU_V7
 
 config ARCH_UNIPHIER_PH1_PRO4
 	bool "UniPhier PH1-Pro4 SoC"
+	select CPU_V7
 
 config ARCH_UNIPHIER_PRO5_PXS2_LD6B
 	bool "UniPhier PH1-Pro5/ProXstream2/PH1-LD6b SoC"
+	select CPU_V7
 
 endchoice
 
diff --git a/arch/arm/mach-uniphier/Makefile b/arch/arm/mach-uniphier/Makefile
index e65d602..1a8c649 100644
--- a/arch/arm/mach-uniphier/Makefile
+++ b/arch/arm/mach-uniphier/Makefile
@@ -4,16 +4,11 @@
 
 ifdef CONFIG_SPL_BUILD
 
-obj-y += lowlevel_init.o
-
 obj-y += init/ bcu/ memconf/ pll/ early-clk/ early-pinctrl/
 obj-$(CONFIG_MICRO_SUPPORT_CARD) += sbc/
 
-obj-$(CONFIG_DEBUG_LL) += debug_ll.o
-
 else
 
-obj-y += late_lowlevel_init.o
 obj-$(CONFIG_BOARD_EARLY_INIT_F) += board_early_init_f.o
 obj-$(CONFIG_DISPLAY_CPUINFO) += cpu_info.o
 obj-$(CONFIG_MISC_INIT_F) += print_misc_info.o
@@ -22,16 +17,16 @@ obj-y += board_common.o
 obj-$(CONFIG_BOARD_EARLY_INIT_R) += board_early_init_r.o
 obj-$(CONFIG_BOARD_LATE_INIT) += board_late_init.o
 obj-y += reset.o
-obj-y += cache_uniphier.o
 
 obj-y += pinctrl/ clk/
 
 endif
 
-obj-y += timer.o
 obj-y += boards.o
 obj-y += soc_info.o
 obj-y += boot-mode/
 obj-y += dram/
 
 obj-$(CONFIG_MICRO_SUPPORT_CARD) += micro-support-card.o
+
+obj-$(CONFIG_CPU_V7) += arm32/
diff --git a/arch/arm/mach-uniphier/arm32/Makefile b/arch/arm/mach-uniphier/arm32/Makefile
new file mode 100644
index 0000000..376c06b
--- /dev/null
+++ b/arch/arm/mach-uniphier/arm32/Makefile
@@ -0,0 +1,13 @@
+#
+# SPDX-License-Identifier:	GPL-2.0+
+#
+
+ifdef CONFIG_SPL_BUILD
+obj-y += lowlevel_init.o
+obj-$(CONFIG_DEBUG_LL) += debug_ll.o
+else
+obj-y += late_lowlevel_init.o
+obj-y += cache_uniphier.o
+endif
+
+obj-y += timer.o
diff --git a/arch/arm/mach-uniphier/arm-mpcore.h b/arch/arm/mach-uniphier/arm32/arm-mpcore.h
similarity index 100%
rename from arch/arm/mach-uniphier/arm-mpcore.h
rename to arch/arm/mach-uniphier/arm32/arm-mpcore.h
diff --git a/arch/arm/mach-uniphier/cache_uniphier.c b/arch/arm/mach-uniphier/arm32/cache_uniphier.c
similarity index 100%
rename from arch/arm/mach-uniphier/cache_uniphier.c
rename to arch/arm/mach-uniphier/arm32/cache_uniphier.c
diff --git a/arch/arm/mach-uniphier/debug_ll.S b/arch/arm/mach-uniphier/arm32/debug_ll.S
similarity index 100%
rename from arch/arm/mach-uniphier/debug_ll.S
rename to arch/arm/mach-uniphier/arm32/debug_ll.S
diff --git a/arch/arm/mach-uniphier/late_lowlevel_init.S b/arch/arm/mach-uniphier/arm32/late_lowlevel_init.S
similarity index 100%
rename from arch/arm/mach-uniphier/late_lowlevel_init.S
rename to arch/arm/mach-uniphier/arm32/late_lowlevel_init.S
diff --git a/arch/arm/mach-uniphier/lowlevel_init.S b/arch/arm/mach-uniphier/arm32/lowlevel_init.S
similarity index 100%
rename from arch/arm/mach-uniphier/lowlevel_init.S
rename to arch/arm/mach-uniphier/arm32/lowlevel_init.S
diff --git a/arch/arm/mach-uniphier/ssc-regs.h b/arch/arm/mach-uniphier/arm32/ssc-regs.h
similarity index 100%
rename from arch/arm/mach-uniphier/ssc-regs.h
rename to arch/arm/mach-uniphier/arm32/ssc-regs.h
diff --git a/arch/arm/mach-uniphier/timer.c b/arch/arm/mach-uniphier/arm32/timer.c
similarity index 100%
rename from arch/arm/mach-uniphier/timer.c
rename to arch/arm/mach-uniphier/arm32/timer.c
-- 
1.9.1



More information about the U-Boot mailing list