diff options
author | Yu-Ping Wu <yupingso@chromium.org> | 2022-02-10 17:27:57 +0800 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2022-02-12 00:45:54 +0000 |
commit | 2fdcb64ec96dc80ae83d289ba9d18e20f86f2930 (patch) | |
tree | a0e168fe4031211b4725815f1c5d06de997a0768 | |
parent | b0844490db9ea42a94f56bbb9ec9fce144d8f36f (diff) |
soc/mediatek: Fix printing SPM version
Currently the SPM version string is stored at the end of the blob,
possibly without a trailing '\0'. Therefore, we should be careful not to
print characters beyond the blob size.
BUG=b:211944565
TEST=emerge-corsola coreboot
TEST=SPM version looked good in AP console
BRANCH=asurada,cherry
Change-Id: Icfeb686539dc20cf5b78de77c27bdbb137b5d624
Signed-off-by: Yu-Ping Wu <yupingso@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/61800
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
-rw-r--r-- | src/soc/mediatek/common/spm.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/soc/mediatek/common/spm.c b/src/soc/mediatek/common/spm.c index c4eabd0dcf..a17fba5c9d 100644 --- a/src/soc/mediatek/common/spm.c +++ b/src/soc/mediatek/common/spm.c @@ -50,5 +50,7 @@ void spm_parse_firmware(struct mtk_mcu *mcu) /* Version */ offset += copy_size; assert(offset < file_size); - printk(BIOS_INFO, "SPM: spmfw (version %s)\n", (u8 *)mcu->load_buffer + offset); + printk(BIOS_INFO, "SPM: spmfw (version %.*s)\n", + (int)(file_size - offset), + (u8 *)mcu->load_buffer + offset); } |