diff options
author | mbroyles <mbroyles@us.ibm.com> | 2017-10-06 11:19:10 -0500 |
---|---|---|
committer | Martha Broyles <mbroyles@us.ibm.com> | 2017-10-16 15:51:26 -0400 |
commit | 051cc0a10cb61b410252098d13fb7dd8727a8e52 (patch) | |
tree | 76003c4722b3a64cc0565475e3bc4e6065a59638 /src/occ_405/amec/amec_data.c | |
parent | d4fb4c372702ee71440e9f7affc40bba01366c5a (diff) | |
download | talos-occ-051cc0a10cb61b410252098d13fb7dd8727a8e52.tar.gz talos-occ-051cc0a10cb61b410252098d13fb7dd8727a8e52.zip |
VRM Vdd Interfaces
Change-Id: I8e2b597773c940ebc79972974a95fb323ea26660
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/48065
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Reviewed-by: Andres A. Lugo-Reyes <aalugore@us.ibm.com>
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Diffstat (limited to 'src/occ_405/amec/amec_data.c')
-rwxr-xr-x | src/occ_405/amec/amec_data.c | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/src/occ_405/amec/amec_data.c b/src/occ_405/amec/amec_data.c index 4c553d6..9294c1d 100755 --- a/src/occ_405/amec/amec_data.c +++ b/src/occ_405/amec/amec_data.c @@ -261,11 +261,40 @@ errlHndl_t AMEC_data_write_thrm_thresholds(const OCC_MODE i_mode) TRAC_INFO("AMEC_data_write_thrm_thresholds: Setting %u as DVFS setpoint for DIMM", l_dvfs_temp); - g_amec->vrhotproc.setpoint = l_frudata[DATA_FRU_VRM].error_count; + g_amec->vrhotproc.setpoint = l_frudata[DATA_FRU_VRM_OT_STATUS].error_count; TRAC_INFO("AMEC_data_write_thrm_thresholds: Setting %u as DVFS setpoint for VRHOT", g_amec->vrhotproc.setpoint); + // Store the VRM Vdd thermal data + if(i_mode == OCC_MODE_NOMINAL) + { + l_dvfs_temp = l_frudata[DATA_FRU_VRM_VDD].dvfs; + l_error = l_frudata[DATA_FRU_VRM_VDD].error; + } + else + { + l_dvfs_temp = l_frudata[DATA_FRU_VRM_VDD].pm_dvfs; + if(i_mode == OCC_MODE_TURBO) + { + //Need to log an error if we dvfs in static turbo mode (for mfg) + l_error = l_dvfs_temp; + } + else + { + l_error = l_frudata[DATA_FRU_VRM_VDD].pm_error; + } + } + // Store the DVFS thermal setpoint in 0.1 degrees C + g_amec->thermalvdd.setpoint = l_dvfs_temp * 10; + // Store the error temperature for OT detection + g_amec->thermalvdd.ot_error = l_error; + // Store the temperature timeout value + g_amec->thermalvdd.temp_timeout = l_frudata[DATA_FRU_VRM_VDD].max_read_timeout; + + TRAC_INFO("AMEC_data_write_thrm_thresholds: Setting %u as DVFS setpoint for VRM Vdd", + l_dvfs_temp); + } while(0); return l_err; |