From fe5ea57bdbdeb8429793faaca2d6bd5f38218fe3 Mon Sep 17 00:00:00 2001 From: Masahiro Yamada Date: Fri, 26 Feb 2016 18:59:44 +0900 Subject: [PATCH] ARM: uniphier: prepare directory structure for ARMv8 SoC support 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 --- 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 | 6 +++--- 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, 22 insertions(+), 11 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 (98%) 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 98% rename from arch/arm/mach-uniphier/debug_ll.S rename to arch/arm/mach-uniphier/arm32/debug_ll.S index 6aa5f89..a70954c 100644 --- a/arch/arm/mach-uniphier/debug_ll.S +++ b/arch/arm/mach-uniphier/arm32/debug_ll.S @@ -9,9 +9,9 @@ #include #include -#include "bcu/bcu-regs.h" -#include "sc-regs.h" -#include "sg-regs.h" +#include "../bcu/bcu-regs.h" +#include "../sc-regs.h" +#include "../sg-regs.h" #if !defined(CONFIG_DEBUG_SEMIHOSTING) #include CONFIG_DEBUG_LL_INCLUDE 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