From 165ecd26f036b1952dbf25823fbff7c0a403a29f Mon Sep 17 00:00:00 2001
From: Masahiro Yamada <yamada.m@jp.panasonic.com>
Date: Thu, 13 Nov 2014 12:28:40 +0900
Subject: [PATCH] kbuild: Descend into SOC directory from CPU directory

Some CPUs of some architectures have SOC directories.
At present, the build system directly descends into SOC directories
from the top Makefile, but it should generally descend into each
directory from its parent directory.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
---
 Makefile                                   | 3 ---
 arch/arm/cpu/arm1136/Makefile              | 2 ++
 arch/arm/cpu/arm1176/Makefile              | 2 ++
 arch/arm/cpu/arm720t/Makefile              | 2 ++
 arch/arm/cpu/arm920t/Makefile              | 2 ++
 arch/arm/cpu/arm926ejs/Makefile            | 2 ++
 arch/arm/cpu/armv7/Makefile                | 2 ++
 arch/arm/cpu/armv8/Makefile                | 2 ++
 arch/avr32/cpu/Makefile                    | 2 ++
 arch/mips/cpu/mips32/Makefile              | 2 ++
 arch/nds32/cpu/n1213/Makefile              | 2 ++
 arch/x86/cpu/Makefile                      | 2 ++
 board/davinci/da8xxevm/u-boot-spl-hawk.lds | 2 +-
 scripts/Makefile.spl                       | 3 ---
 14 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/Makefile b/Makefile
index ddea53485a1..590fec88415 100644
--- a/Makefile
+++ b/Makefile
@@ -610,9 +610,6 @@ HAVE_VENDOR_COMMON_LIB = $(if $(wildcard $(srctree)/board/$(VENDOR)/common/Makef
 libs-y += lib/
 libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/
 libs-y += $(CPUDIR)/
-ifdef SOC
-libs-y += $(CPUDIR)/$(SOC)/
-endif
 libs-$(CONFIG_OF_EMBED) += dts/
 libs-y += arch/$(ARCH)/lib/
 libs-y += fs/
diff --git a/arch/arm/cpu/arm1136/Makefile b/arch/arm/cpu/arm1136/Makefile
index 3279f125f65..90dc7aa32b3 100644
--- a/arch/arm/cpu/arm1136/Makefile
+++ b/arch/arm/cpu/arm1136/Makefile
@@ -7,3 +7,5 @@
 
 extra-y	= start.o
 obj-y	= cpu.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/arm/cpu/arm1176/Makefile b/arch/arm/cpu/arm1176/Makefile
index deec4274477..b64edf9d97c 100644
--- a/arch/arm/cpu/arm1176/Makefile
+++ b/arch/arm/cpu/arm1176/Makefile
@@ -10,3 +10,5 @@
 
 extra-y	= start.o
 obj-y	= cpu.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/arm/cpu/arm720t/Makefile b/arch/arm/cpu/arm720t/Makefile
index 6badb3bb84b..9893b08dfc8 100644
--- a/arch/arm/cpu/arm720t/Makefile
+++ b/arch/arm/cpu/arm720t/Makefile
@@ -9,3 +9,5 @@ extra-y	= start.o
 obj-y	= interrupts.o cpu.o
 
 obj-$(CONFIG_TEGRA) += tegra-common/
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/arm/cpu/arm920t/Makefile b/arch/arm/cpu/arm920t/Makefile
index aac8043f6a8..9f885ff2305 100644
--- a/arch/arm/cpu/arm920t/Makefile
+++ b/arch/arm/cpu/arm920t/Makefile
@@ -9,3 +9,5 @@ extra-y	= start.o
 
 obj-y	+= cpu.o
 obj-$(CONFIG_USE_IRQ)	+= interrupts.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/arm/cpu/arm926ejs/Makefile b/arch/arm/cpu/arm926ejs/Makefile
index 125299537f4..bd1ef8b7d46 100644
--- a/arch/arm/cpu/arm926ejs/Makefile
+++ b/arch/arm/cpu/arm926ejs/Makefile
@@ -13,3 +13,5 @@ ifdef	CONFIG_SPL_NO_CPU_SUPPORT_CODE
 extra-y	:=
 endif
 endif
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/arm/cpu/armv7/Makefile b/arch/arm/cpu/armv7/Makefile
index afeed4dad84..7d8ca08b4d0 100644
--- a/arch/arm/cpu/armv7/Makefile
+++ b/arch/arm/cpu/armv7/Makefile
@@ -37,3 +37,5 @@ obj-$(CONFIG_TEGRA) += tegra-common/
 ifneq (,$(filter s5pc1xx exynos,$(SOC)))
 obj-y += s5p-common/
 endif
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/arm/cpu/armv8/Makefile b/arch/arm/cpu/armv8/Makefile
index 7d93f59428e..d2488e70fff 100644
--- a/arch/arm/cpu/armv8/Makefile
+++ b/arch/arm/cpu/armv8/Makefile
@@ -14,3 +14,5 @@ obj-y	+= exceptions.o
 obj-y	+= cache.o
 obj-y	+= tlb.o
 obj-y	+= transition.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/avr32/cpu/Makefile b/arch/avr32/cpu/Makefile
index 5e117212574..2f7adf8136d 100644
--- a/arch/avr32/cpu/Makefile
+++ b/arch/avr32/cpu/Makefile
@@ -16,3 +16,5 @@ obj-y			+= cache.o
 obj-y			+= interrupts.o
 obj-$(CONFIG_PORTMUX_PIO) += portmux-pio.o
 obj-$(CONFIG_PORTMUX_GPIO) += portmux-gpio.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/mips/cpu/mips32/Makefile b/arch/mips/cpu/mips32/Makefile
index e0e6309c6f0..1221b9e513b 100644
--- a/arch/mips/cpu/mips32/Makefile
+++ b/arch/mips/cpu/mips32/Makefile
@@ -8,3 +8,5 @@
 extra-y	= start.o
 obj-y	= cache.o
 obj-y	+= cpu.o interrupts.o time.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/nds32/cpu/n1213/Makefile b/arch/nds32/cpu/n1213/Makefile
index 206d304d4c5..be98c4a7382 100644
--- a/arch/nds32/cpu/n1213/Makefile
+++ b/arch/nds32/cpu/n1213/Makefile
@@ -13,3 +13,5 @@
 obj- := __dummy__.o
 
 extra-y	= start.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/arch/x86/cpu/Makefile b/arch/x86/cpu/Makefile
index 9d38ef73a7d..b5ad1baa46f 100644
--- a/arch/x86/cpu/Makefile
+++ b/arch/x86/cpu/Makefile
@@ -11,3 +11,5 @@
 extra-y	= start.o
 obj-$(CONFIG_X86_RESET_VECTOR) += resetvec.o start16.o
 obj-y	+= interrupts.o cpu.o call64.o
+
+obj-y += $(if $(SOC),$(SOC)/)
diff --git a/board/davinci/da8xxevm/u-boot-spl-hawk.lds b/board/davinci/da8xxevm/u-boot-spl-hawk.lds
index 682f2685dc1..5c629db139b 100644
--- a/board/davinci/da8xxevm/u-boot-spl-hawk.lds
+++ b/board/davinci/da8xxevm/u-boot-spl-hawk.lds
@@ -20,7 +20,7 @@ SECTIONS
 	{
 	  *(.vectors)
 	  arch/arm/cpu/arm926ejs/start.o		(.text*)
-	  arch/arm/cpu/arm926ejs/davinci/built-in.o	(.text*)
+	  arch/arm/cpu/arm926ejs/built-in.o		(.text*)
 	  drivers/mtd/nand/built-in.o			(.text*)
 
 	  *(.text*)
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 07db0bff8df..69f7c9fb99d 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -60,9 +60,6 @@ libs-y += arch/$(ARCH)/lib/
 
 libs-y += $(CPUDIR)/
 
-ifdef SOC
-libs-y += $(CPUDIR)/$(SOC)/
-endif
 libs-y += $(if $(BOARDDIR),board/$(BOARDDIR)/)
 libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/
 
-- 
GitLab