diff mbox

[U-Boot,v2,5/5] Makefile: preserve output for images that can contain HAB Blocks

Message ID 1478446678-130231-6-git-send-email-sven.ebenfeld@gmail.com
State Accepted
Commit 1f6a664802a4044779b9aebe03b9af6d2745de5f
Delegated to: Stefano Babic
Headers show

Commit Message

Sven Ebenfeld Nov. 6, 2016, 3:37 p.m. UTC
To being able to sign created binaries, we need to know the HAB Blocks
for that image. Especially for the imximage type the HAB Blocks are
only available during creation of the image. We want to preserve the
information until we get to sign the files.
In the verbose case we still get them printed out instead of writing
to log files.

Cc: sbabic@denx.de

v2-Changes:
 - No usage of MKIMAGEOUTPUT_$(@F) macro.
 - Predefine default value /dev/null in every involved Makefile.

Signed-off-by: Sven Ebenfeld <sven.ebenfeld@gmail.com>
---
 .gitignore                   | 2 +-
 Makefile                     | 6 +++++-
 arch/arm/imx-common/Makefile | 4 ++++
 doc/README.imx6              | 3 ++-
 scripts/Makefile.lib         | 3 ++-
 scripts/Makefile.spl         | 4 +++-
 6 files changed, 17 insertions(+), 5 deletions(-)

Comments

George McCollister Nov. 10, 2016, 7:27 p.m. UTC | #1
On Sun, Nov 6, 2016 at 9:37 AM, Sven Ebenfeld <sven.ebenfeld@gmail.com> wrote:
> To being able to sign created binaries, we need to know the HAB Blocks
> for that image. Especially for the imximage type the HAB Blocks are
> only available during creation of the image. We want to preserve the
> information until we get to sign the files.
> In the verbose case we still get them printed out instead of writing
> to log files.
>
> Cc: sbabic@denx.de
>
> v2-Changes:
>  - No usage of MKIMAGEOUTPUT_$(@F) macro.
>  - Predefine default value /dev/null in every involved Makefile.
>
> Signed-off-by: Sven Ebenfeld <sven.ebenfeld@gmail.com>
> ---
>  .gitignore                   | 2 +-
>  Makefile                     | 6 +++++-
>  arch/arm/imx-common/Makefile | 4 ++++
>  doc/README.imx6              | 3 ++-
>  scripts/Makefile.lib         | 3 ++-
>  scripts/Makefile.spl         | 4 +++-
>  6 files changed, 17 insertions(+), 5 deletions(-)
>

Reviewed-by: George McCollister <george.mccollister@gmail.com>
Tested-by: George McCollister <george.mccollister@gmail.com>
diff mbox

Patch

diff --git a/.gitignore b/.gitignore
index 33abbd3..7fac5b3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,7 +31,7 @@ 
 # Top-level generic files
 #
 /MLO*
-/SPL
+/SPL*
 /System.map
 /u-boot*
 /boards.cfg
diff --git a/Makefile b/Makefile
index 15151ff..1c19627 100644
--- a/Makefile
+++ b/Makefile
@@ -804,9 +804,11 @@  cmd_zobjcopy = $(OBJCOPY) $(OBJCOPYFLAGS) $(OBJCOPYFLAGS_$(@F)) $< $@
 quiet_cmd_efipayload = OBJCOPY $@
 cmd_efipayload = $(OBJCOPY) -I binary -O $(EFIPAYLOAD_BFDTARGET) -B $(EFIPAYLOAD_BFDARCH) $< $@
 
+MKIMAGEOUTPUT ?= /dev/null
+
 quiet_cmd_mkimage = MKIMAGE $@
 cmd_mkimage = $(objtree)/tools/mkimage $(MKIMAGEFLAGS_$(@F)) -d $< $@ \
-	$(if $(KBUILD_VERBOSE:1=), >/dev/null)
+	$(if $(KBUILD_VERBOSE:1=), >$(MKIMAGEOUTPUT))
 
 quiet_cmd_cat = CAT     $@
 cmd_cat = cat $(filter-out $(PHONY), $^) > $@
@@ -928,6 +930,8 @@  MKIMAGEFLAGS_u-boot.img = -A $(ARCH) -T firmware -C none -O u-boot \
 MKIMAGEFLAGS_u-boot-ivt.img = -A $(ARCH) -T firmware_ivt -C none -O u-boot \
 	-a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_UBOOT_START) \
 	-n "U-Boot $(UBOOTRELEASE) for $(BOARD) board"
+u-boot-ivt.img: MKIMAGEOUTPUT = u-boot-ivt.img.log
+CLEAN_FILES += u-boot-ivt.img.log u-boot-dtb.imx.log SPL.log u-boot.imx.log
 endif
 
 MKIMAGEFLAGS_u-boot-dtb.img = $(MKIMAGEFLAGS_u-boot.img)
diff --git a/arch/arm/imx-common/Makefile b/arch/arm/imx-common/Makefile
index 03b3c12..da53f62 100644
--- a/arch/arm/imx-common/Makefile
+++ b/arch/arm/imx-common/Makefile
@@ -68,6 +68,7 @@  $(IMX_CONFIG): %.cfgtmp: % FORCE
 
 MKIMAGEFLAGS_u-boot.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T imximage \
 	-e $(CONFIG_SYS_TEXT_BASE)
+u-boot.imx: MKIMAGEOUTPUT = u-boot.imx.log
 
 u-boot.imx: u-boot.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
 	$(call if_changed,mkimage)
@@ -75,6 +76,7 @@  u-boot.imx: u-boot.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
 ifeq ($(CONFIG_OF_SEPARATE),y)
 MKIMAGEFLAGS_u-boot-dtb.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T imximage \
 	-e $(CONFIG_SYS_TEXT_BASE)
+u-boot-dtb.imx: MKIMAGEOUTPUT = u-boot-dtb.imx.log
 
 u-boot-dtb.imx: u-boot-dtb.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
 	$(call if_changed,mkimage)
@@ -83,6 +85,8 @@  endif
 MKIMAGEFLAGS_SPL = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T imximage \
 	-e $(CONFIG_SPL_TEXT_BASE)
 
+SPL: MKIMAGEOUTPUT = SPL.log
+
 SPL: spl/u-boot-spl.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
 	$(call if_changed,mkimage)
 
diff --git a/doc/README.imx6 b/doc/README.imx6
index add1d80..0e00968 100644
--- a/doc/README.imx6
+++ b/doc/README.imx6
@@ -150,7 +150,8 @@  CONFIG_SECURE_BOOT is needed to build those two binaries.
 After building, you need to create a command sequence file and use
 Freescales Code Signing Tool to sign both binaries. After creation,
 the mkimage tool outputs the required information about the HAB Blocks
-parameter for the CSF.
+parameter for the CSF. During the build, the information is preserved
+in log files named as the binaries. (SPL.log and u-boot-ivt.log).
 
 More information about the CSF and HAB can be found in the AN4581.
 https://cache.freescale.com/files/32bit/doc/app_note/AN4581.pdf
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 45a0e1d..fb69438 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -431,6 +431,7 @@  cmd_xzmisc = (cat $(filter-out FORCE,$^) | \
 #
 # mkimage
 # ---------------------------------------------------------------------------
+MKIMAGEOUTPUT ?= /dev/null
 quiet_cmd_mkimage = MKIMAGE $@
 cmd_mkimage = $(objtree)/tools/mkimage $(MKIMAGEFLAGS_$(@F)) -d $< $@ \
-	$(if $(KBUILD_VERBOSE:1=), >/dev/null)
+	$(if $(KBUILD_VERBOSE:1=), >$(MKIMAGEOUTPUT))
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index e8cf9f3..04f90e4 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -122,9 +122,11 @@  LDPPFLAGS += \
 	$(shell $(LD) --version | \
 	  sed -ne 's/GNU ld version \([0-9][0-9]*\)\.\([0-9][0-9]*\).*/-DLD_MAJOR=\1 -DLD_MINOR=\2/p')
 
+MKIMAGEOUTPUT ?= /dev/null
+
 quiet_cmd_mkimage = MKIMAGE $@
 cmd_mkimage = $(objtree)/tools/mkimage $(MKIMAGEFLAGS_$(@F)) -d $< $@ \
-	$(if $(KBUILD_VERBOSE:1=), >/dev/null)
+	$(if $(KBUILD_VERBOSE:1=), >$(MKIMAGEOUTPUT))
 
 MKIMAGEFLAGS_MLO = -T omapimage -a $(CONFIG_SPL_TEXT_BASE)