diff options
author | mbroyles <mbroyles@us.ibm.com> | 2019-06-06 14:39:13 -0500 |
---|---|---|
committer | Martha Broyles <mbroyles@us.ibm.com> | 2019-06-07 09:03:51 -0500 |
commit | aa38078b2e09f13532f129951457adfb5e803eb3 (patch) | |
tree | 9d1735eab5bac6e17afd77dd5da0597f6b6571a6 | |
parent | 5e53fc1458f1e9761a118bf0de06a26f192a0d58 (diff) | |
download | talos-occ-aa38078b2e09f13532f129951457adfb5e803eb3.tar.gz talos-occ-aa38078b2e09f13532f129951457adfb5e803eb3.zip |
Avoid calculating negative AC currents
Change-Id: I21784a486d0e9bdd3a7a17eab0f3fd0fabcb52cb
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78483
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
-rwxr-xr-x | src/occ_405/occbuildname.c | 2 | ||||
-rw-r--r-- | src/occ_405/wof/wof.c | 22 |
2 files changed, 20 insertions, 4 deletions
diff --git a/src/occ_405/occbuildname.c b/src/occ_405/occbuildname.c index fd08a84..877f7c4 100755 --- a/src/occ_405/occbuildname.c +++ b/src/occ_405/occbuildname.c @@ -34,6 +34,6 @@ volatile const char G_occ_buildname[16] __attribute__((section(".buildname"))) = #else -volatile const char G_occ_buildname[16] __attribute__((section(".buildname"))) = /*<BuildName>*/ "op_occ_190522a\0" /*</BuildName>*/ ; +volatile const char G_occ_buildname[16] __attribute__((section(".buildname"))) = /*<BuildName>*/ "op_occ_190607a\0" /*</BuildName>*/ ; #endif diff --git a/src/occ_405/wof/wof.c b/src/occ_405/wof/wof.c index 1426e6f..a8ada6a 100644 --- a/src/occ_405/wof/wof.c +++ b/src/occ_405/wof/wof.c @@ -5,7 +5,7 @@ /* */ /* OpenPOWER OnChipController Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2016,2018 */ +/* Contributors Listed Below - COPYRIGHT 2016,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -1526,8 +1526,24 @@ void calculate_ceff_ratio_vdd( void ) */ void calculate_AC_currents( void ) { - g_wof->iac_vdd = g_wof->curvdd_sensor - g_wof->idc_vdd; - g_wof->iac_vdn = g_wof->curvdn_sensor - g_wof->idc_vdn; + // avoid negative AC currents + if(g_wof->curvdd_sensor > g_wof->idc_vdd) + { + g_wof->iac_vdd = g_wof->curvdd_sensor - g_wof->idc_vdd; + } + else + { + g_wof->iac_vdd = 0; + } + + if(g_wof->curvdn_sensor > g_wof->idc_vdn) + { + g_wof->iac_vdn = g_wof->curvdn_sensor - g_wof->idc_vdn; + } + else + { + g_wof->iac_vdn = 0; + } } /** |