mb/google/brya/var/{kano,osiris,taeko}: Add null pointer check
Without part no. in CBI, mainboard_get_dram_part_num returns null. To prevent passing this null pointer to strcmp and avoid unexpected behavior, proper handling is necessary. BUG=none TEST=emerge-brya coreboot Change-Id: I47e42376c6b1347c56afaec218aed63c5469f0aa Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/77646 Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com> Reviewed-by: David Wu <david_wu@quanta.corp-partner.google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
d99fac1949
commit
15cb0d5527
|
@ -136,10 +136,11 @@ const struct mb_cfg *variant_memory_params(void)
|
||||||
const char *hynix_mem1 = "H54G46CYRBX267";
|
const char *hynix_mem1 = "H54G46CYRBX267";
|
||||||
const char *hynix_mem2 = "H54G56CYRBX247";
|
const char *hynix_mem2 = "H54G56CYRBX247";
|
||||||
|
|
||||||
|
if (part_num) {
|
||||||
if (!strcmp(part_num, hynix_mem1) || !strcmp(part_num, hynix_mem2)) {
|
if (!strcmp(part_num, hynix_mem1) || !strcmp(part_num, hynix_mem2)) {
|
||||||
printk(BIOS_INFO, "Enable cs_pi_start_high_in_ect for Hynix memory\n");
|
printk(BIOS_INFO, "Enable cs_pi_start_high_in_ect for Hynix memory\n");
|
||||||
return &hynix_memcfg;
|
return &hynix_memcfg;
|
||||||
} else {
|
}
|
||||||
|
}
|
||||||
return &kano_memcfg;
|
return &kano_memcfg;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
|
@ -136,10 +136,11 @@ const struct mb_cfg *variant_memory_params(void)
|
||||||
const char *hynix_mem1 = "H54G46CYRBX267";
|
const char *hynix_mem1 = "H54G46CYRBX267";
|
||||||
const char *hynix_mem2 = "H54G56CYRBX247";
|
const char *hynix_mem2 = "H54G56CYRBX247";
|
||||||
|
|
||||||
|
if (part_num) {
|
||||||
if (!strcmp(part_num, hynix_mem1) || !strcmp(part_num, hynix_mem2)) {
|
if (!strcmp(part_num, hynix_mem1) || !strcmp(part_num, hynix_mem2)) {
|
||||||
printk(BIOS_INFO, "Enable cs_pi_start_high_in_ect for Hynix memory\n");
|
printk(BIOS_INFO, "Enable cs_pi_start_high_in_ect for Hynix memory\n");
|
||||||
return &hynix_memcfg;
|
return &hynix_memcfg;
|
||||||
} else {
|
}
|
||||||
|
}
|
||||||
return &osiris_memcfg;
|
return &osiris_memcfg;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
|
@ -135,13 +135,14 @@ static const struct mb_cfg hynix_memconfig = {
|
||||||
const struct mb_cfg *variant_memory_params(void)
|
const struct mb_cfg *variant_memory_params(void)
|
||||||
{
|
{
|
||||||
const char *dram_part_num = mainboard_get_dram_part_num();
|
const char *dram_part_num = mainboard_get_dram_part_num();
|
||||||
|
if (dram_part_num) {
|
||||||
if (strcmp(dram_part_num, "H54G46CYRBX267N") == 0) {
|
if (strcmp(dram_part_num, "H54G46CYRBX267N") == 0) {
|
||||||
printk(BIOS_INFO, "Enable cs_pi_start_high_in_ect for Hynix DRAM part\n");
|
printk(BIOS_INFO, "Enable cs_pi_start_high_in_ect for Hynix DRAM part\n");
|
||||||
return &hynix_memconfig;
|
return &hynix_memconfig;
|
||||||
} else {
|
|
||||||
return &baseboard_memcfg;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return &baseboard_memcfg;
|
||||||
|
}
|
||||||
|
|
||||||
int variant_memory_sku(void)
|
int variant_memory_sku(void)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue