From 9b3a7bad3e7329ba52bcdcc4b7e984aa7dad1cf5 Mon Sep 17 00:00:00 2001 From: Michael Neuling Date: Thu, 17 Aug 2017 11:44:01 +1000 Subject: xscom: Grab P9 DD2 revision level Current code only supports DD1. This adds support for DD2. Signed-off-by: Michael Neuling Signed-off-by: Stewart Smith --- hw/xscom.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'hw') diff --git a/hw/xscom.c b/hw/xscom.c index ea3c3fb..7bd78bf 100644 --- a/hw/xscom.c +++ b/hw/xscom.c @@ -677,12 +677,12 @@ static void xscom_init_chip_info(struct proc_chip *chip) chip->ec_level |= (val >> 8) & 0xf; /* - * On P9 DD1.0, grab the ECID bits to differenciate - * DD1.01, 1.02 etc... + * On P9, grab the ECID bits to differenciate + * DD1.01, 1.02, 2.00, etc... */ if (chip_quirk(QUIRK_MAMBO_CALLOUTS)) { chip->ec_rev = 0; - } else if (proc_gen == proc_gen_p9 && chip->ec_level == 0x10) { + } else if (proc_gen == proc_gen_p9) { uint64_t ecid2 = 0; uint8_t rev; xscom_read(chip->id, 0x18002, &ecid2); @@ -702,7 +702,8 @@ static void xscom_init_chip_info(struct proc_chip *chip) default: rev = 0; } - printf("P9 DD1.0%d detected\n", rev); + printf("P9 DD%i.%i%d detected\n", 0xf & (chip->ec_level >> 4), + chip->ec_level & 0xf, rev); chip->ec_rev = rev; } } -- cgit v1.1