[coreboot-gerrit] New patch to review for coreboot: chromeec: Move EC image hash to separate file in CBFS

Julius Werner (jwerner@chromium.org) gerrit at coreboot.org
Wed Jun 1 03:17:41 CEST 2016


Julius Werner (jwerner at chromium.org) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15039

-gerrit

commit a7af30e470af943cf3b0b2bc9ca80797d3e8a8ac
Author: Julius Werner <jwerner at chromium.org>
Date:   Tue May 31 18:11:10 2016 -0700

    chromeec: Move EC image hash to separate file in CBFS
    
    The Chrome OS bootloader is changing its EC software sync mechanism to
    look for the hash of an EC image in a separate CBFS file, rather than
    using the CBFS hash attribute of the image itself (see
    http://crosreview.com/348061). This patch makes coreboot generate
    appropriate hash files for the new format when it builds and bundles a
    Chrome EC image. This also allows us to compress the EC image itself.
    
    Change-Id: I9aee6b8d24cdf41cb540db86a7569038fc7d9937
    Signed-off-by: Julius Werner <jwerner at chromium.org>
---
 src/ec/google/chromeec/Makefile.inc | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/ec/google/chromeec/Makefile.inc b/src/ec/google/chromeec/Makefile.inc
index 7ae1835..4a03948 100644
--- a/src/ec/google/chromeec/Makefile.inc
+++ b/src/ec/google/chromeec/Makefile.inc
@@ -37,13 +37,21 @@ cbfs-files-$(if $(CONFIG_EC_GOOGLE_CHROMEEC_BOARDNAME),y) += ecrw
 ecrw-file := $(obj)/mainboard/$(MAINBOARDDIR)/ecrw
 ecrw-name := ecrw
 ecrw-type := raw
-ecrw-options := -A sha256
+ecrw-compression := $(CBFS_COMPRESS_FLAG)
+cbfs-files-$(if $(CONFIG_EC_GOOGLE_CHROMEEC_BOARDNAME),y) += ecrw.hash
+ecrw.hash-file := $(obj)/mainboard/$(MAINBOARDDIR)/ecrw.hash
+ecrw.hash-name := ecrw.hash
+ecrw.hash-type := raw
 
 cbfs-files-$(if $(CONFIG_EC_GOOGLE_CHROMEEC_PD_BOARDNAME),y) += pdrw
 pdrw-file := $(obj)/mainboard/$(MAINBOARDDIR)/pdrw
 pdrw-name := pdrw
 pdrw-type := raw
-pdrw-options := -A sha256
+pdrw-compression := $(CBFS_COMPRESS_FLAG)
+cbfs-files-$(if $(CONFIG_EC_GOOGLE_CHROMEEC_PD_BOARDNAME),y) += pdrw.hash
+pdrw.hash-file := $(obj)/mainboard/$(MAINBOARDDIR)/pdrw.hash
+pdrw.hash-name := pdrw.hash
+pdrw.hash-type := raw
 
 $(obj)/mainboard/$(MAINBOARDDIR)/ecrw:
 	$(MAKE) -C $(top)/3rdparty/chromeec \
@@ -63,6 +71,9 @@ $(obj)/mainboard/$(MAINBOARDDIR)/pdrw:
 		rw
 	cp $(obj)/external/chromeec/$(CONFIG_EC_GOOGLE_CHROMEEC_PD_BOARDNAME)/RW/ec.RW.flat $@
 
+$(obj)/mainboard/$(MAINBOARDDIR)/%.hash: $(obj)/mainboard/$(MAINBOARDDIR)/%
+	openssl dgst -sha256 -binary $< > $@
+
 .PHONY: $(obj)/mainboard/$(MAINBOARDDIR)/ecrw $(obj)/mainboard/$(MAINBOARDDIR)/pdrw
 
 endif



More information about the coreboot-gerrit mailing list