Hi Masahiro, On 23 February 2014 18:58, Masahiro Yamada <yamad...@jp.panasonic.com> wrote: > Hello Simon, > > Thanks for your close review. > This is always appreciated. > > >> > diff --git a/spl/Makefile b/spl/Makefile >> > index 22d6323..e8c5938 100644 >> > --- a/spl/Makefile >> > +++ b/spl/Makefile >> > @@ -178,8 +178,8 @@ MKIMAGEFLAGS_MLO.byteswap = -T omapimage -n byteswap >> > -a $(CONFIG_SPL_TEXT_BASE) >> > MLO MLO.byteswap: $(obj)/u-boot-spl.bin >> > $(call if_changed,mkimage) >> > >> > -$(objtree)/SPL: $(obj)/u-boot-spl.bin >> > - $(Q)$(MAKE) $(build)=spl/arch/arm/imx-common $@ >> > +SPL: $(obj)/u-boot-spl.bin >> > + $(Q)$(MAKE) $(build)=arch/arm/imx-common $@ >> >> This series looks good to me, but I would like to understand what is >> happening here. Are you changing it to pick up the source from the >> real arch/ directory instead of the spl copy? > > Two things are happening here: > [1] drop $(objtree)/ > [2] modify $(build)=spl/arch/arm/imx-commot to > $(build)=arch/arm/imx-common > > Let me explain the reason of each one by one. > > [1] > $(objtree) ( and $(OBJTREE)) points to the absolute path of the > working directory. > > I want short log should be like: > UIMAGE SPL > rather than > UIMAGE /home/yamada/workspace/SPL > > That's why I dropped $(objtree)/ and $(OBJTREE)/ prefixes > from all IMX related images. > > [2] > I guess it's difficult to understand what's happening here. > I hope the following explanation will be clear for you.. > > At this commit, > Both ./Makefile and spl/Makefile descend into arch/arm/imx-common. > > > From the ./Makefile, here > > u-boot.imx: u-boot.bin > $(Q)$(MAKE) $(build)=arch/arm/imx-common $@ > > u-boot-with-spl.imx u-boot-with-nand-spl.imx: spl/u-boot-spl.bin u-boot.bin > $(Q)$(MAKE) $(build)=arch/arm/imx-common $@ > > > And from spl/Makefile, here > > SPL: $(obj)/u-boot-spl.bin > $(Q)$(MAKE) $(build)=arch/arm/imx-common $@ > > > I needed to specify "$(build)=arch/arm/imx-common" consistenty > to include ".*.cmd" files correctly. > > I added > targets += $(addprefix ../../../,$(IMX_CONFIG) SPL u-boot.uim > spl/u-boot-nand-spl.imx) > at the end of arch/arm/imx-common/Makefile. > (It may look weird. ) > > And it is prefixed (obj)/ at scripts/Makefile.lib line 76 > targets := $(addprefix $(obj)/,$(targets)) > > If I had not changed "$(build)=spl/arm/arm/imx-common", > $(targets) would have pointed to "spl/arch/arm/imx-common/../../../SPL), > that is, "spl/SPL". > But .SPL.cmd is not in spl/ directory. > > > > Anyway, it is really complicated to descend into arch/arm/imx-common > from two Makefiles, ./Makefile and spl/Makefile. > > So I moved the SPL rule from spl/Makefile to ./Makefile.
Sorry I didn't reply earlier when I first read this, it looks good. Thanks for the detailed explanation. Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot