WANG Siyuan (wangsiyuanbuaa@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/9416
-gerrit
commit 41b03f0139dead450fc6e86f6f0a8784ce0f5ff6 Author: WANG Siyuan wangsiyuanbuaa@gmail.com Date: Wed Apr 8 18:51:15 2015 +0800
amd/pi/hudson: Add AMD Avalon binaries to CBFS
trustlets.bin and Trustlet.tkn.cert are binaries for the AMD PSP and are necessary for AGESA binary PI operation. AGESA.bin (3rdparty Change-Id: I7c413c) will hang without these files. AMD Olive Hill Plus successfully boots with this change.
This change depends on the binaries added to the 3rdparty repository in <If81c2285269> : amd/avalon: Add PSP firmware.
Change-Id: I03c612fc49ddc77777a70cc7a1a8d297b9786bc8 Signed-off-by: WANG Siyuan wangsiyuanbuaa@gmail.com Signed-off-by: WANG Siyuan SiYuan.Wang@amd.com --- src/southbridge/amd/pi/hudson/Makefile.inc | 32 +++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-)
diff --git a/src/southbridge/amd/pi/hudson/Makefile.inc b/src/southbridge/amd/pi/hudson/Makefile.inc index c66d541..de172fb 100644 --- a/src/southbridge/amd/pi/hudson/Makefile.inc +++ b/src/southbridge/amd/pi/hudson/Makefile.inc @@ -207,10 +207,22 @@ SMUFWM_POS=$(call int-align, \ $(call int-add,$(PSPNVRAM_POS) $(PSPNVRAM_SIZE) $(CBFS_HEADER_SIZE)), \ $(CBFS_HEADER_SIZE)) SMUFWM_SIZE=$(call file-size,$(CONFIG_SMUFWM_FILE)) +## 12 +CONFIG_TRUSTLET_FILE=$(top)/$(FIRMWARE_LOCATE)/trustlets.bin +TRUSTLET_POS=$(call int-align, \ + $(call int-add,$(SMUFWM_POS) $(SMUFWM_SIZE) $(CBFS_HEADER_SIZE)), \ + $(CBFS_HEADER_SIZE)) +TRUSTLET_SIZE=$(call file-size,$(CONFIG_TRUSTLET_FILE)) +## 13 +CONFIG_TRUSTLET_KEY_FILE=$(top)/$(FIRMWARE_LOCATE)/Trustlet.tkn.cert +TRUSTLET_KEY_POS=$(call int-align, \ + $(call int-add,$(TRUSTLET_POS) $(TRUSTLET_SIZE) $(CBFS_HEADER_SIZE)), \ + $(CBFS_HEADER_SIZE)) +TRUSTLET_KEY_SIZE=$(call file-size,$(CONFIG_TRUSTLET_KEY_FILE))
CONFIG_SMUSCS_FILE=$(top)/$(FIRMWARE_LOCATE)/SmuScs$(FIRMWARE_TYPE).bin SMUSCS_POS=$(call int-align, \ - $(call int-add,$(SMUFWM_POS) $(SMUFWM_SIZE) $(CBFS_HEADER_SIZE)), \ + $(call int-add,$(TRUSTLET_KEY_POS) $(TRUSTLET_KEY_SIZE) $(CBFS_HEADER_SIZE)), \ $(CBFS_HEADER_SIZE)) SMUSCS_SIZE=$(call file-size,$(CONFIG_SMUSCS_FILE))
@@ -241,6 +253,12 @@ $(obj)/coreboot_psp_directory.bin: $(obj)/config.h $(FLETCHER) $(RTM_FILE) for fwm in 4 $(PSPNVRAM_SIZE) $(PSPNVRAM_POS) 0; do \ echo $$fwm | LC_ALL=C awk '{printf ("%c%c%c%c", $$1 % 256, int($$1/256) % 256, int($$1/65536) % 256, int($$1/16777216));}'; \ done >> $@_tail.tmp + for fwm in 12 $(TRUSTLET_SIZE) $(TRUSTLET_POS) 0; do \ + echo $$fwm | LC_ALL=C awk '{printf ("%c%c%c%c", $$1 % 256, int($$1/256) % 256, int($$1/65536) % 256, int($$1/16777216));}'; \ + done >> $@_tail.tmp + for fwm in 13 $(TRUSTLET_KEY_SIZE) $(TRUSTLET_KEY_POS) 0; do \ + echo $$fwm | LC_ALL=C awk '{printf ("%c%c%c%c", $$1 % 256, int($$1/256) % 256, int($$1/65536) % 256, int($$1/16777216));}'; \ + done >> $@_tail.tmp for fwm in 95 $(SMUSCS_SIZE) $(SMUSCS_POS) 0; do \ echo $$fwm | LC_ALL=C awk '{printf ("%c%c%c%c", $$1 % 256, int($$1/256) % 256, int($$1/65536) % 256, int($$1/16777216));}'; \ done >> $@_tail.tmp @@ -300,6 +318,18 @@ apu/smufwm-file := $(CONFIG_SMUFWM_FILE) apu/smufwm-position := $(SMUFWM_POS) apu/smufwm-type := raw
+#12 +cbfs-files-y += apu/trustlet +apu/trustlet-file := $(CONFIG_TRUSTLET_FILE) +apu/trustlet-position := $(TRUSTLET_POS) +apu/trustlet-type := raw + +#13 +cbfs-files-y += apu/trustlet_key +apu/trustlet_key-file := $(CONFIG_TRUSTLET_KEY_FILE) +apu/trustlet_key-position := $(TRUSTLET_KEY_POS) +apu/trustlet_key-type := raw + cbfs-files-y += apu/smuscs apu/smuscs-file := $(CONFIG_SMUSCS_FILE) apu/smuscs-position := $(SMUSCS_POS)