Hi Masahiro, On 21.11.2014 04:48, Masahiro Yamada wrote: > Hi Daniel, > > > On Wed, 19 Nov 2014 21:12:14 +0100 > Daniel Schwierzeck <daniel.schwierz...@gmail.com> wrote: > >> Introduce a Makefile under arch/$ARCH/ and include it in the >> top Makefile (similar to Linux kernel). This allows further >> refactoringi like moving architecture-specific code out of global >> makefiles, deprecating config variables (CPU, CPUDIR, SOC) or >> deprecating arch/$ARCH/config.mk. >> >> In contrary to Linux kernel, U-Boot defines the ARCH variable by >> Kconfig, thus the arch Makefile can only included conditionally >> after the top config.mk. >> >> Signed-off-by: Daniel Schwierzeck <daniel.schwierz...@gmail.com> > > > I guess this patch is the one you mentioned on the way to the station > after the u-boot mini summit.
yes > > I think basically this is a good step forward > although we need more efforts if we want to deprecate > arch/$ARCH/cpu/$CPU/config.mk, board/$BOARD/config.mk as well. > > > Some comments below. > > I will probably ack it if you send v2. > > > > > >> This patch should not cause any functional changes. It is compile-tested >> on sandbox, aarch64, arm, mips, powerpc and x86. > > This patch looks good for the other architecture, too. > > > >> diff --git a/Makefile b/Makefile >> index 590fec8..a2783ca 100644 >> --- a/Makefile >> +++ b/Makefile >> @@ -359,7 +359,7 @@ UBOOTRELEASE = $(shell cat include/config/uboot.release >> 2> /dev/null) >> UBOOTVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if >> $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION) >> >> export VERSION PATCHLEVEL SUBLEVEL UBOOTRELEASE UBOOTVERSION >> -export ARCH CPU BOARD VENDOR SOC CPUDIR BOARDDIR >> +export ARCH CPU BOARD VENDOR SOC CPUDIR BOARDDIR SPL_START_S_PATH >> export CONFIG_SHELL HOSTCC HOSTCFLAGS HOSTLDFLAGS CROSS_COMPILE AS LD CC >> export CPP AR NM LDR STRIP OBJCOPY OBJDUMP >> export MAKE AWK PERL PYTHON > > > Why do you need to export SPL_START_S_PATH? > It is unnecessary, I think. > boards form ARM and PowerPC defined CONFIG_SPL_START_S_PATH so I moved it to config.mk and made it consistent with the other variables. But if only some ARM boards really use it, it is unnecessary. > > > >> index 0000000..117ed30 >> --- /dev/null >> +++ b/arch/arm/Makefile >> @@ -0,0 +1,29 @@ >> +# >> +# SPDX-License-Identifier: GPL-2.0+ >> +# >> + >> +head-y := arch/arm/cpu/$(CPU)/start.o >> + >> +ifeq ($(CONFIG_SPL_BUILD),y) >> +ifneq ($(SPL_START_S_PATH),) >> +head-y := $(SPL_START_S_PATH)/start.o >> +endif >> +endif > > > Because only some ARM boards are using CONFIG_SPL_START_S_PATH, > perhaps we can directly handle it in arch/arm/Makefile and remove it from > config.mk > > ifeq ($(CONFIG_SPL_BUILD),y) > ifneq ($(CONFIG_SPL_START_S_PATH),) > head-y := $(CONFIG_SPL_START_S_PATH:"%"=%)/start.o > endif > endif > > > > >> diff --git a/config.mk b/config.mk >> index 64c2951..b957c1d 100644 >> --- a/config.mk >> +++ b/config.mk >> @@ -31,6 +31,9 @@ endif >> ifneq ($(CONFIG_SYS_SOC),) >> SOC := $(CONFIG_SYS_SOC:"%"=%) >> endif >> +ifneq ($(CONFIG_SPL_START_S_PATH),) >> +SPL_START_S_PATH := $(CONFIG_SPL_START_S_PATH:"%"=%) >> +endif > > > Can we remove this? Yes, I will move it to arch/arm/Makefile -- - Daniel _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot