1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-27 15:12:36 +02:00

allow 0x34 as ICCRIBA for CHIPSET_C620_SERIES_LEWISBURG

Intel C621A Lewisburg PCH belongs to C620 series, it has 0x34 as ICCRIBA.

Fix guess_ich_chipset_from_content() accordingly.

Print status info of read_ich_descriptors_from_dump() to facilitate
debugging upon failure.

TESTED=run flashrom successfully from OCP Yosemite V3 DeltaLake server.

Change-Id: I363aaccfb90e0a127c0f0bb0072e9e85c210b669
Signed-off-by: Jonathan Zhang <jonzhang@fb.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/44621
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
This commit is contained in:
Jonathan Zhang 2020-08-19 12:19:06 -07:00 committed by David Hendricks
parent 79da18f869
commit 95d822e342

View File

@ -937,9 +937,13 @@ static enum ich_chipset guess_ich_chipset_from_content(const struct ich_desc_con
return CHIPSET_C620_SERIES_LEWISBURG;
else
return CHIPSET_100_SERIES_SUNRISE_POINT;
} else if (content->ICCRIBA == 0x34) {
if (content->NM == 6)
return CHIPSET_C620_SERIES_LEWISBURG;
else
return CHIPSET_300_SERIES_CANNON_POINT;
} else {
if (content->ICCRIBA > 0x34)
msg_pwarn("Unknown firmware descriptor, assuming 300 series compatibility.\n");
msg_pwarn("Unknown firmware descriptor, assuming 300 series compatibility.\n");
return CHIPSET_300_SERIES_CANNON_POINT;
}
}
@ -1243,8 +1247,12 @@ int layout_from_ich_descriptors(struct ich_layout *const layout, const void *con
struct ich_descriptors desc;
enum ich_chipset cs = CHIPSET_ICH_UNKNOWN;
if (read_ich_descriptors_from_dump(dump, len, &cs, &desc))
int ret = read_ich_descriptors_from_dump(dump, len, &cs, &desc);
if (ret) {
msg_pdbg("%s():%d, returned with value %d.\n",
__func__, __LINE__, ret);
return 1;
}
memset(layout, 0x00, sizeof(*layout));