Felix Held has submitted this change. ( https://review.coreboot.org/c/coreboot/+/62401 )
Change subject: soc/amd/common/vboot: Remove parameter to replay_transfer_buffer_cbmemc ......................................................................
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 rrangel@chromium.org Change-Id: Ib46a673ef5a43deb56a6d522152085036a47ab66 Reviewed-on: https://review.coreboot.org/c/coreboot/+/62401 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Karthik Ramasubramanian kramasub@google.com --- M src/soc/amd/cezanne/include/soc/psp_transfer.h M src/soc/amd/common/vboot/transfer_buffer.c M src/soc/amd/common/vboot/vboot_bootblock.c M src/soc/amd/picasso/include/soc/psp_transfer.h M src/soc/amd/sabrina/include/soc/psp_transfer.h 5 files changed, 10 insertions(+), 5 deletions(-)
Approvals: build bot (Jenkins): Verified Karthik Ramasubramanian: Looks good to me, approved
diff --git a/src/soc/amd/cezanne/include/soc/psp_transfer.h b/src/soc/amd/cezanne/include/soc/psp_transfer.h index afa6a58..f81785e 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 @@ /* 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 06e564a..63b4f8e 100644 --- a/src/soc/amd/common/vboot/transfer_buffer.c +++ b/src/soc/amd/common/vboot/transfer_buffer.c @@ -61,12 +61,17 @@ } }
-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 7264836..1375e98 100644 --- a/src/soc/amd/common/vboot/vboot_bootblock.c +++ b/src/soc/amd/common/vboot/vboot_bootblock.c @@ -14,7 +14,7 @@ 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 6b10ad2..5b51691 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 @@ /* 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 0fe204d..6e3faaf 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 @@ /* 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);