From e8f9d18e8860575724e6b2ab134b4d1eba8a61f7 Mon Sep 17 00:00:00 2001 From: Zheng Bao Date: Thu, 21 Mar 2024 11:33:52 +0800 Subject: amdfwtool: Only update count in header in only one function Other function calls don't have to worry about the fletcher error. TEST=Binary identical test on all AMD SOC platform Change-Id: I7c9d653100b476b52d6d1d80c41d0c3d765f7be3 Signed-off-by: Zheng Bao Reviewed-on: https://review.coreboot.org/c/coreboot/+/81372 Tested-by: build bot (Jenkins) Reviewed-by: Felix Held --- util/amdfwtool/amdfwtool.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'util') diff --git a/util/amdfwtool/amdfwtool.c b/util/amdfwtool/amdfwtool.c index 00a366c9c3..ebadb9123c 100644 --- a/util/amdfwtool/amdfwtool.c +++ b/util/amdfwtool/amdfwtool.c @@ -877,7 +877,7 @@ static void integrate_psp_ab(context *ctx, psp_directory_table *pspdir, } count++; - pspdir->header.num_entries = count; + fill_dir_header(pspdir, count, ctx); ctx->current_table = current_table_save; } @@ -903,7 +903,6 @@ static void integrate_psp_levels(context *ctx, if (pspdir2_b != NULL) ctx->ish_b_dir = new_ish_dir(ctx); } - pspdir->header.num_entries = count; integrate_psp_ab(ctx, pspdir, pspdir2, ctx->ish_a_dir, AMD_FW_RECOVERYAB_A, cb_config->soc_id); if (pspdir2_b != NULL) @@ -915,7 +914,6 @@ static void integrate_psp_levels(context *ctx, use_only_a ? AMD_FW_RECOVERYAB_A : AMD_FW_RECOVERYAB_B, cb_config->soc_id); - count = pspdir->header.num_entries; } else if (pspdir2 != NULL) { assert_fw_entry(count, MAX_PSP_ENTRIES, ctx); pspdir->entries[count].type = AMD_FW_L2_PTR; @@ -930,8 +928,8 @@ static void integrate_psp_levels(context *ctx, pspdir->entries[count].address_mode = SET_ADDR_MODE(pspdir, AMD_ADDR_REL_BIOS); count++; + fill_dir_header(pspdir, count, ctx); } - fill_dir_header(pspdir, count, ctx); ctx->current_table = current_table_save; } -- cgit v1.2.3