[U-Boot] [PATCH v7] socfpga: Add socfpga preloader signing to mkimage
Masahiro Yamada
yamada.m at jp.panasonic.com
Tue Mar 11 10:13:26 CET 2014
Hello Charles, Gerhard,
> > > Is there any (real, technical) reason why the bzip stuff (the
> > > CRC-32 calculation that has been made available separately)
> > > cannot get built and used as a library, and the tools/
> > > application just gets linked against it as one would expect?
> >
> > From my limited understanding, lib/ is not built for the host. It is only
> > built for the target. That is why we have all these ugly C files: crc32.c,
> > sha1.c,... in tools/.
>
> With Kbuild, is the '#include "../otherdir/source.c" trick still
> needed? Would a list of object files with relative path specs
> work, or can object files in one output directory result from
> compile units taken out of several source directories?
In this case, object files with relative path such as "../lib/foo.o"
does not work.
If we write ../lib/foo.o in tools/Makefile,
$(HOSTCC) will compile foo.o into lib/ directory.
And lator it will be overwritten with the one compiled with $(CC).
I thought this is a simple way to generate two objects from
one source file,
one is for hostprogs in tools/ and the other for the target in lib/.
BTW, I sometimes see #include for "*.c"
for example, drivers/usb/host/ehci-hcd.c of Linux Kernel,
although I admit it is ugly.
I agree we need to do something with it,
but it's beyond the scope of this patch.
> diff --git a/spl/Makefile b/spl/Makefile
> index 346d0aa..4e0f33f 100644
> --- a/spl/Makefile
> +++ b/spl/Makefile
> @@ -182,6 +182,11 @@ MLO MLO.byteswap: $(obj)/u-boot-spl.bin
>
> ALL-y += $(obj)/$(SPL_BIN).bin
>
> +$(OBJTREE)/socfpga-signed-preloader.bin: $(obj)/u-boot-spl.bin
> + $(OBJTREE)/tools/mkimage -T socfpgaimage -d $< $@
> +
> +ALL-$(CONFIG_SOCFPGA) += $(OBJTREE)/socfpga-signed-preloader.bin
> +
> ifdef CONFIG_SAMSUNG
> ALL-y += $(obj)/$(BOARD)-spl.bin
> endif
Could you re-write this part as follows, please?
diff --git a/spl/Makefile b/spl/Makefile
index bb3d349..9f3893e 100644
--- a/spl/Makefile
+++ b/spl/Makefile
@@ -184,6 +184,12 @@ MLO MLO.byteswap: $(obj)/u-boot-spl.bin
ALL-y += $(obj)/$(SPL_BIN).bin
+MKIMAGEFLAGS_socfpga-signed-preloader.bin := -T socfpgaimage
+socfpga-signed-preloader.bin: $(obj)/u-boot-spl.bin
+ $(call cmd,mkimage)
+
+ALL-$(CONFIG_SOCFPGA) += socfpga-signed-preloader.bin
+
ifdef CONFIG_SAMSUNG
ALL-y += $(obj)/$(BOARD)-spl.bin
endif
Best Regards
Masahiro Yamada
More information about the U-Boot
mailing list