From 08de3e3bd805dbacdf7c5176cb1b070014544361 Mon Sep 17 00:00:00 2001 From: Raul E Rangel Date: Fri, 25 Feb 2022 17:10:09 -0700 Subject: [PATCH] soc/amd/common/vboot: Remove parameter to replay_transfer_buffer_cbmemc We don't need to force the caller to look up and cast the transfer region. We can do it in the function. BUG=b:221231786 TEST=Build guybrush Signed-off-by: Raul E Rangel Change-Id: Ib46a673ef5a43deb56a6d522152085036a47ab66 Reviewed-on: https://review.coreboot.org/c/coreboot/+/62401 Tested-by: build bot (Jenkins) Reviewed-by: Karthik Ramasubramanian --- src/soc/amd/cezanne/include/soc/psp_transfer.h | 2 +- src/soc/amd/common/vboot/transfer_buffer.c | 7 ++++++- src/soc/amd/common/vboot/vboot_bootblock.c | 2 +- src/soc/amd/picasso/include/soc/psp_transfer.h | 2 +- src/soc/amd/sabrina/include/soc/psp_transfer.h | 2 +- 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/soc/amd/cezanne/include/soc/psp_transfer.h b/src/soc/amd/cezanne/include/soc/psp_transfer.h index afa6a58a3c..f81785ec11 100644 --- a/src/soc/amd/cezanne/include/soc/psp_transfer.h +++ b/src/soc/amd/cezanne/include/soc/psp_transfer.h @@ -54,7 +54,7 @@ void verify_psp_transfer_buf(void); /* Display the transfer block's PSP_info data */ void show_psp_transfer_info(void); /* Replays the pre-x86 cbmem console into the x86 cbmem console */ -void replay_transfer_buffer_cbmemc(const struct transfer_info_struct *info); +void replay_transfer_buffer_cbmemc(void); /* Called by bootblock_c_entry in the VBOOT_STARTS_BEFORE_BOOTBLOCK case */ void boot_with_psp_timestamp(uint64_t base_timestamp); diff --git a/src/soc/amd/common/vboot/transfer_buffer.c b/src/soc/amd/common/vboot/transfer_buffer.c index 06e564a2f3..63b4f8efe6 100644 --- a/src/soc/amd/common/vboot/transfer_buffer.c +++ b/src/soc/amd/common/vboot/transfer_buffer.c @@ -61,12 +61,17 @@ void show_psp_transfer_info(void) } } -void replay_transfer_buffer_cbmemc(const struct transfer_info_struct *info) +void replay_transfer_buffer_cbmemc(void) { + const struct transfer_info_struct *info = (const struct transfer_info_struct *) + (void *)(uintptr_t)_transfer_buffer; void *cbmemc; size_t cbmemc_size; + if (!transfer_buffer_valid(info)) + return; + if (info->console_offset < sizeof(*info)) return; diff --git a/src/soc/amd/common/vboot/vboot_bootblock.c b/src/soc/amd/common/vboot/vboot_bootblock.c index 72648368e4..1375e9823d 100644 --- a/src/soc/amd/common/vboot/vboot_bootblock.c +++ b/src/soc/amd/common/vboot/vboot_bootblock.c @@ -14,7 +14,7 @@ void boot_with_psp_timestamp(uint64_t base_timestamp) if (!transfer_buffer_valid(info) || info->timestamp == 0) return; - replay_transfer_buffer_cbmemc(info); + replay_transfer_buffer_cbmemc(); /* * info->timestamp is PSP's timestamp (in microseconds) diff --git a/src/soc/amd/picasso/include/soc/psp_transfer.h b/src/soc/amd/picasso/include/soc/psp_transfer.h index 6b10ad27ed..5b5169161d 100644 --- a/src/soc/amd/picasso/include/soc/psp_transfer.h +++ b/src/soc/amd/picasso/include/soc/psp_transfer.h @@ -54,7 +54,7 @@ void verify_psp_transfer_buf(void); /* Display the transfer block's PSP_info data */ void show_psp_transfer_info(void); /* Replays the pre-x86 cbmem console into the x86 cbmem console */ -void replay_transfer_buffer_cbmemc(const struct transfer_info_struct *info); +void replay_transfer_buffer_cbmemc(void); /* Called by bootblock_c_entry in the VBOOT_STARTS_BEFORE_BOOTBLOCK case */ void boot_with_psp_timestamp(uint64_t base_timestamp); diff --git a/src/soc/amd/sabrina/include/soc/psp_transfer.h b/src/soc/amd/sabrina/include/soc/psp_transfer.h index 0fe204d2d3..6e3faaf16b 100644 --- a/src/soc/amd/sabrina/include/soc/psp_transfer.h +++ b/src/soc/amd/sabrina/include/soc/psp_transfer.h @@ -56,7 +56,7 @@ void verify_psp_transfer_buf(void); /* Display the transfer block's PSP_info data */ void show_psp_transfer_info(void); /* Replays the pre-x86 cbmem console into the x86 cbmem console */ -void replay_transfer_buffer_cbmemc(const struct transfer_info_struct *info); +void replay_transfer_buffer_cbmemc(void); /* Called by bootblock_c_entry in the VBOOT_STARTS_BEFORE_BOOTBLOCK case */ void boot_with_psp_timestamp(uint64_t base_timestamp);