soc/amd/picasso: Add Kconfig option for the PSP bootloader filename
Add option to change bootloader file.
BUG=b:149934526
TEST=Change option and verify new bootloader file is used. Using the
amd_blobs I can only boot using PspBootLoader_test_RV_dbg.sbin.
Change-Id: Ib6597f7d4ffa0d48aead6974bd7111c987418f20
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/coreboot/+/2067598
Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/41436
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
diff --git a/src/soc/amd/picasso/Kconfig b/src/soc/amd/picasso/Kconfig
index 71630b8..2578b46 100644
--- a/src/soc/amd/picasso/Kconfig
+++ b/src/soc/amd/picasso/Kconfig
@@ -341,10 +341,20 @@
If unsure, answer 'n'
config PSP_WHITELIST_FILE
- string "Debug whitelist file name"
+ string "Debug whitelist file path"
depends on HAVE_PSP_WHITELIST_FILE
default "3rdparty/amd_blobs/picasso/PSP/wtl-rvn.sbin"
+config PSP_BOOTLOADER_FILE
+ string "Specify the PSP Bootloader file path"
+ default "3rdparty/amd_blobs/picasso/PSP/PspBootLoader_WL_RV.sbin" if HAVE_PSP_WHITELIST_FILE
+ default "3rdparty/amd_blobs/picasso/PSP/PspBootLoader_prod_RV.sbin"
+ help
+ Supply the name of the PSP bootloader file.
+
+ Note that this option may conflict with the whitelist file if a
+ different PSP bootloader binary is specified.
+
config PSP_UNLOCK_SECURE_DEBUG
bool "Unlock secure debug"
default n
diff --git a/src/soc/amd/picasso/Makefile.inc b/src/soc/amd/picasso/Makefile.inc
index 6fc834e..ef2b6b1 100644
--- a/src/soc/amd/picasso/Makefile.inc
+++ b/src/soc/amd/picasso/Makefile.inc
@@ -105,11 +105,11 @@
FIRMWARE_LOCATE=$(dir $(call strip_quotes, $(CONFIG_AMD_PUBKEY_FILE)))
# type = 0x1
-ifeq ($(CONFIG_HAVE_PSP_WHITELIST_FILE),y)
-PSPBTLDR_FILE=$(top)/$(FIRMWARE_LOCATE)/PspBootLoader_WL_RV.sbin
-else
-PSPBTLDR_FILE=$(top)/$(FIRMWARE_LOCATE)/PspBootLoader_prod_RV.sbin
+ifeq ($(CONFIG_PSP_BOOTLOADER_FILE),)
+$(error CONFIG_PSP_BOOTLOADER_FILE was not defined)
endif
+PSPBTLDR_FILE=$(realpath $(call strip_quotes, $(CONFIG_PSP_BOOTLOADER_FILE)))
+$(info Adding PSP $(shell md5sum $(PSPBTLDR_FILE)))
# types = 0x8 and 0x12
PSP_SMUFW1_SUB1_FILE=$(top)/$(FIRMWARE_LOCATE)/SmuFirmwareRV2.csbin