From 7247b205d621a2b988e3816760c81cbc551f7f68 Mon Sep 17 00:00:00 2001 From: Mark Pizzutillo Date: Fri, 4 Oct 2019 17:22:24 -0400 Subject: Add SPD, ATTR, and code support for thermal sensor fields In order to not break systems with old DDIMMs or old Explorer FW, this commit includes a workaround to bypass the thermal field parsing if the SPD revision is less than 0.3, as the decoder will try to parse garbage. This can be replaced down the line if needed with a proper API. git-coreq:hostboot:I7400886b90b566bbfdf218bcedf11627acf1d2fd Change-Id: I7400886b90b566bbfdf218bcedf11627acf1d2fd Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/87999 Tested-by: FSP CI Jenkins Dev-Ready: Mark Pizzutillo Tested-by: PPE CI Tested-by: HWSV CI Reviewed-by: Louis Stermole Tested-by: Jenkins Server Reviewed-by: STEPHEN GLANCY Tested-by: Hostboot CI Reviewed-by: Jennifer A Stofer Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/88583 Reviewed-by: RAJA DAS --- .../procedures/hwp/memory/lib/shared/exp_consts.H | 34 +++++++++++++++++++++- .../procedures/xml/error_info/mss_exp_errors.xml | 15 +++++++++- 2 files changed, 47 insertions(+), 2 deletions(-) diff --git a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/shared/exp_consts.H b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/shared/exp_consts.H index 434242eb..acf3ba05 100644 --- a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/shared/exp_consts.H +++ b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/shared/exp_consts.H @@ -111,9 +111,25 @@ enum class attr_eff_engine_fields MRAM_SUPPORT = 8, SPD_CL_SUPPORTED = 9, ADDRESS_MIRROR = 10, + MODULE_THERMAL_SENSORS = 11, + + THERM_SENSOR_0_AVAIL = 12, + THERM_SENSOR_0_TYPE = 13, + THERM_SENSOR_0_USAGE = 14, + THERM_SENSOR_0_I2C_ADDR = 15, + + THERM_SENSOR_1_AVAIL = 16, + THERM_SENSOR_1_TYPE = 17, + THERM_SENSOR_1_USAGE = 18, + THERM_SENSOR_1_I2C_ADDR = 19, + + THERM_SENSOR_DIFF_AVAIL = 20, + THERM_SENSOR_DIFF_TYPE = 21, + THERM_SENSOR_DIFF_USAGE = 22, + THERM_SENSOR_DIFF_I2C_ADDR = 23, // Dispatcher set to last enum value - DISPATCHER = ADDRESS_MIRROR, + DISPATCHER = THERM_SENSOR_DIFF_I2C_ADDR, }; /// @@ -158,6 +174,22 @@ enum ffdc_codes SET_MRAM_SUPPORT = 0x1049, SET_SPD_CL_SUPPORTED = 0x1050, SET_SERDES_FREQ = 0x1051, + SET_MODULE_THERMAL_SENSORS = 0x1052, + + SET_THERM_SENSOR_0_AVAIL = 0x1053, + SET_THERM_SENSOR_0_TYPE = 0x1054, + SET_THERM_SENSOR_0_USAGE = 0x1055, + SET_THERM_SENSOR_0_I2C_ADDR = 0x1056, + + SET_THERM_SENSOR_1_AVAIL = 0x1057, + SET_THERM_SENSOR_1_TYPE = 0x1058, + SET_THERM_SENSOR_1_USAGE = 0x1059, + SET_THERM_SENSOR_1_I2C_ADDR = 0x105A, + + SET_THERM_SENSOR_DIFF_AVAIL = 0x105B, + SET_THERM_SENSOR_DIFF_TYPE = 0x105C, + SET_THERM_SENSOR_DIFF_USAGE = 0x105D, + SET_THERM_SENSOR_DIFF_I2C_ADDR = 0x105E, }; /// diff --git a/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml b/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml index 4b9285dd..7e4a926f 100644 --- a/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml +++ b/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml @@ -5,7 +5,7 @@ - + @@ -768,4 +768,17 @@ + + RC_MSS_EXP_UNKNOWN_THERMAL_SENSOR + + The thermal sensor type for the given port was not a known value + + PORT_TARGET + VALUE + + CODE + MEDIUM + + + -- cgit v1.2.1