util/ifdtool: Identify between ICH and PCH Revision

Consider IBEX_PEAK onwards all chipsets are belong to PCH family.

BUG=b:153888802
TEST=Able to print correct PCH revision on Hatch Platform.
> ifdtool -d coreboot.rom

Without this CL :
ICH Revision: 300 series Cannon Point/ 400 series Ice Point

With this CL :
PCH Revision: 300 series Cannon Point/ 400 series Ice Point

Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Change-Id: Ifd40dddc9179f347c0ea75149ec08089a829fdb4
Reviewed-on: https://review.coreboot.org/c/coreboot/+/44816
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
This commit is contained in:
Subrata Banik 2020-08-26 15:12:16 +05:30 committed by Patrick Georgi
parent 4ceac7c141
commit 26058dca96
1 changed files with 9 additions and 1 deletions

View File

@ -513,6 +513,13 @@ static void decode_component_density(unsigned int density)
} }
} }
static int is_platform_with_pch(void)
{
if (chipset >= CHIPSET_5_SERIES_IBEX_PEAK)
return 1;
return 0;
}
static void dump_fcba(const fcba_t *fcba) static void dump_fcba(const fcba_t *fcba)
{ {
printf("\nFound Component Section\n"); printf("\nFound Component Section\n");
@ -759,7 +766,8 @@ static void dump_fd(char *image, int size)
if (!fdb) if (!fdb)
exit(EXIT_FAILURE); exit(EXIT_FAILURE);
printf("ICH Revision: %s\n", ich_chipset_names[chipset]); printf("%s", is_platform_with_pch() ? "PCH" : "ICH");
printf(" Revision: %s\n", ich_chipset_names[chipset]);
printf("FLMAP0: 0x%08x\n", fdb->flmap0); printf("FLMAP0: 0x%08x\n", fdb->flmap0);
printf(" NR: %d\n", (fdb->flmap0 >> 24) & 7); printf(" NR: %d\n", (fdb->flmap0 >> 24) & 7);
printf(" FRBA: 0x%x\n", ((fdb->flmap0 >> 16) & 0xff) << 4); printf(" FRBA: 0x%x\n", ((fdb->flmap0 >> 16) & 0xff) << 4);