summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormbroyles <mbroyles@us.ibm.com>2019-06-06 14:39:13 -0500
committerMartha Broyles <mbroyles@us.ibm.com>2019-06-07 09:03:51 -0500
commitaa38078b2e09f13532f129951457adfb5e803eb3 (patch)
tree9d1735eab5bac6e17afd77dd5da0597f6b6571a6
parent5e53fc1458f1e9761a118bf0de06a26f192a0d58 (diff)
downloadtalos-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-xsrc/occ_405/occbuildname.c2
-rw-r--r--src/occ_405/wof/wof.c22
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;
+ }
}
/**
OpenPOWER on IntegriCloud