diff options
author | Zheng Bao <fishbaozi@gmail.com> | 2024-03-13 23:35:29 +0800 |
---|---|---|
committer | Martin L Roth <gaumless@gmail.com> | 2024-03-17 16:58:04 +0000 |
commit | e079379576faf707c04684787830aad8650e0133 (patch) | |
tree | 1e04f39b602cd175a1dee085ba4c708803754a48 | |
parent | 07e050804f8cd1758302a1a8ae001b26315737e5 (diff) |
amdfwtool: Set the level based on cookie
It was complicated and weird to check both the cookie and whether one
table is a null pointer. Just checking the cookie is enough.
TEST=Identical test on all AMD SOC platform
Change-Id: Icab74714990f74e11fd5e899661e4e2d41230541
Signed-off-by: Zheng Bao <fishbaozi@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/81208
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r-- | util/amdfwtool/amdfwtool.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/util/amdfwtool/amdfwtool.c b/util/amdfwtool/amdfwtool.c index d98c2a4fe5..3e718325d6 100644 --- a/util/amdfwtool/amdfwtool.c +++ b/util/amdfwtool/amdfwtool.c @@ -878,14 +878,13 @@ static void integrate_psp_firmwares(context *ctx, * flattened table which contains all applicable types. These if-else * statements infer what the caller intended. If a 2nd-level cookie * is passed, clearly a 2nd-level table is intended. However, a - * 1st-level cookie may indicate level 1 or flattened. If the caller - * passes a pointer to a 2nd-level table, then assume not flat. + * 1st-level cookie may indicate level 1 or flattened. */ if (!cb_config->multi_level) level = PSP_BOTH; else if (cookie == PSPL2_COOKIE) level = PSP_LVL2; - else if (pspdir2) + else if (cookie == PSP_COOKIE) level = PSP_LVL1; else level = PSP_BOTH; @@ -893,7 +892,7 @@ static void integrate_psp_firmwares(context *ctx, if (recovery_ab) { if (cookie == PSPL2_COOKIE) level = PSP_LVL2_AB; - else if (pspdir2) + else if (cookie == PSP_COOKIE) level = PSP_LVL1_AB; else level = PSP_BOTH_AB; @@ -1180,14 +1179,13 @@ static void integrate_bios_firmwares(context *ctx, * flattened table which contains all applicable types. These if-else * statements infer what the caller intended. If a 2nd-level cookie * is passed, clearly a 2nd-level table is intended. However, a - * 1st-level cookie may indicate level 1 or flattened. If the caller - * passes a pointer to a 2nd-level table, then assume not flat. + * 1st-level cookie may indicate level 1 or flattened. */ if (!cb_config->multi_level) level = BDT_BOTH; else if (cookie == BHDL2_COOKIE) level = BDT_LVL2; - else if (biosdir2) + else if (cookie == BHD_COOKIE) level = BDT_LVL1; else level = BDT_BOTH; |