[Skiboot] [PATCH] xscom: Grab P9 DD2 revision level

Michael Neuling mikey at neuling.org
Thu Aug 17 11:44:01 AEST 2017


Current code only supports DD1. This adds support for DD2.

Signed-off-by: Michael Neuling <mikey at neuling.org>
---
 hw/xscom.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/hw/xscom.c b/hw/xscom.c
index ea3c3fbcff..7bd78bf9c7 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;
 	}
 }
-- 
2.11.0



More information about the Skiboot mailing list