diff options
author | Chris Cain <cjcain@us.ibm.com> | 2019-05-06 13:17:08 -0500 |
---|---|---|
committer | Christopher J. Cain <cjcain@us.ibm.com> | 2019-05-06 15:11:50 -0500 |
commit | 9a6d21e73e443693633187d023d7a8692fba9888 (patch) | |
tree | f5a6244cb33b059cceb1575f7e79be74a4f231b5 /src/occ_405/cmdh/cmdh_fsp_cmds.c | |
parent | 4b9396843b2d2c950774413b74ab7eae5e5a5600 (diff) | |
download | talos-occ-9a6d21e73e443693633187d023d7a8692fba9888.tar.gz talos-occ-9a6d21e73e443693633187d023d7a8692fba9888.zip |
Initial OCMB fixes
Change-Id: Ifeb36e49bd95d29451a6e6e8a0a19a3d8a8c6568
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76988
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com>
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Diffstat (limited to 'src/occ_405/cmdh/cmdh_fsp_cmds.c')
-rwxr-xr-x | src/occ_405/cmdh/cmdh_fsp_cmds.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/occ_405/cmdh/cmdh_fsp_cmds.c b/src/occ_405/cmdh/cmdh_fsp_cmds.c index 152653c..493d7c5 100755 --- a/src/occ_405/cmdh/cmdh_fsp_cmds.c +++ b/src/occ_405/cmdh/cmdh_fsp_cmds.c @@ -323,7 +323,12 @@ ERRL_RC cmdh_poll_v20(cmdh_fsp_rsp_t * o_rsp_ptr) l_sensorHeader.count = 0; //Initialize to max number of possible temperature sensors. - l_max_sensors = MAX_NUM_CORES + MAX_NUM_MEM_CONTROLLERS + (MAX_NUM_MEM_CONTROLLERS * NUM_DIMMS_PER_CENTAUR) + (MAX_NUM_GPU_PER_DOMAIN * 2); + unsigned int max_dimms_per_membuf = NUM_DIMMS_PER_CENTAUR; + if (G_sysConfigData.mem_type == MEM_TYPE_OCM) + { + max_dimms_per_membuf = NUM_DIMMS_PER_OCMB; + } + l_max_sensors = MAX_NUM_CORES + MAX_NUM_MEM_CONTROLLERS + (MAX_NUM_MEM_CONTROLLERS * max_dimms_per_membuf) + (MAX_NUM_GPU_PER_DOMAIN * 2); l_max_sensors++; // +1 for VRM cmdh_poll_temp_sensor_t l_tempSensorList[l_max_sensors]; memset(l_tempSensorList, 0x00, sizeof(l_tempSensorList)); @@ -346,7 +351,7 @@ ERRL_RC cmdh_poll_v20(cmdh_fsp_rsp_t * o_rsp_ptr) { for (l_port=0; l_port < NUM_DIMM_PORTS; l_port++) { - for(l_dimm=0; l_dimm < NUM_DIMMS_PER_CENTAUR; l_dimm++) + for(l_dimm=0; l_dimm < max_dimms_per_membuf; l_dimm++) { if (g_amec->proc[0].memctl[l_port].centaur.dimm_temps[l_dimm].temp_sid != 0) { @@ -367,8 +372,10 @@ ERRL_RC cmdh_poll_v20(cmdh_fsp_rsp_t * o_rsp_ptr) } } } - else if (G_sysConfigData.mem_type == MEM_TYPE_CUMULUS) + else if ((G_sysConfigData.mem_type == MEM_TYPE_CUMULUS) || + (G_sysConfigData.mem_type == MEM_TYPE_OCM)) { + static bool l_traced_missing_sid = FALSE; for (l_cent=0; l_cent < MAX_NUM_MEM_CONTROLLERS; l_cent++) { @@ -390,7 +397,7 @@ ERRL_RC cmdh_poll_v20(cmdh_fsp_rsp_t * o_rsp_ptr) l_sensorHeader.count++; //Add entries for present dimms associated with current centaur l_cent. - for(l_dimm=0; l_dimm < NUM_DIMMS_PER_CENTAUR; l_dimm++) + for(l_dimm=0; l_dimm < max_dimms_per_membuf; l_dimm++) { l_temp_sid = g_amec->proc[0].memctl[l_cent].centaur.dimm_temps[l_dimm].temp_sid; |