Angel Pons has submitted this change. ( https://review.coreboot.org/c/coreboot/+/43183 )
Change subject: soc/intel/baytrail/pmutil.c: Do not hardcode num_bits ......................................................................
soc/intel/baytrail/pmutil.c: Do not hardcode num_bits
This can result in accesses outside array bounds. Copy what Braswell does, which is slightly safer.
Change-Id: If3d6f4e1f8921f0be7f4e5e438b7e73c46b8ef95 Signed-off-by: Angel Pons th3fanbus@gmail.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/43183 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Wim Vervoorn wvervoorn@eltan.com --- M src/soc/intel/baytrail/pmutil.c 1 file changed, 4 insertions(+), 9 deletions(-)
Approvals: build bot (Jenkins): Verified Wim Vervoorn: Looks good to me, approved
diff --git a/src/soc/intel/baytrail/pmutil.c b/src/soc/intel/baytrail/pmutil.c index 6066be7..213629a 100644 --- a/src/soc/intel/baytrail/pmutil.c +++ b/src/soc/intel/baytrail/pmutil.c @@ -60,11 +60,6 @@ } }
-static void print_status_bits(uint32_t status, const char *bit_names[]) -{ - print_num_status_bits(32, status, bit_names); -} - static uint32_t print_smi_status(uint32_t smi_sts) { static const char *smi_sts_bits[] = { @@ -91,7 +86,7 @@ return 0;
printk(BIOS_DEBUG, "SMI_STS: "); - print_status_bits(smi_sts, smi_sts_bits); + print_num_status_bits(30, smi_sts, smi_sts_bits); printk(BIOS_DEBUG, "\n");
return smi_sts; @@ -167,7 +162,7 @@ return 0;
printk(BIOS_SPEW, "PM1_STS: "); - print_status_bits(pm1_sts, pm1_sts_bits); + print_num_status_bits(16, pm1_sts, pm1_sts_bits); printk(BIOS_SPEW, "\n");
return pm1_sts; @@ -194,7 +189,7 @@ return 0;
printk(BIOS_DEBUG, "TCO_STS: "); - print_status_bits(tco_sts, tco_sts_bits); + print_num_status_bits(18, tco_sts, tco_sts_bits); printk(BIOS_DEBUG, "\n");
return tco_sts; @@ -281,7 +276,7 @@ return gpe_sts;
printk(BIOS_DEBUG, "GPE0a_STS: "); - print_status_bits(gpe_sts, gpe_sts_bits); + print_num_status_bits(32, gpe_sts, gpe_sts_bits); printk(BIOS_DEBUG, "\n");
return gpe_sts;