summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorWilliam Bryan <wilbryan@us.ibm.com>2018-08-09 12:15:16 -0500
committerWilliam A. Bryan <wilbryan@us.ibm.com>2018-08-13 11:04:28 -0500
commitf284c3068077c0cc275a6f16b59058c03aba845e (patch)
tree6ddf09bb064bec39e0a6b19106b8d46bc098e9f0 /src
parent1f0ae6950bfc40c5db9703e7c2e400238ed4231c (diff)
downloadtalos-occ-f284c3068077c0cc275a6f16b59058c03aba845e.tar.gz
talos-occ-f284c3068077c0cc275a6f16b59058c03aba845e.zip
Correct centaur time scaling factor
CQ:SW441355 Change-Id: I9ded87ff47343fcbd96561ddf85c80cf7187e9a4 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/64195 Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com> Reviewed-by: Martha Broyles <mbroyles@us.ibm.com> Tested-by: William A. Bryan <wilbryan@us.ibm.com> Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/occ_405/amec/amec_sensors_centaur.c40
1 files changed, 20 insertions, 20 deletions
diff --git a/src/occ_405/amec/amec_sensors_centaur.c b/src/occ_405/amec/amec_sensors_centaur.c
index a883993..88d00a2 100644
--- a/src/occ_405/amec/amec_sensors_centaur.c
+++ b/src/occ_405/amec/amec_sensors_centaur.c
@@ -491,8 +491,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.wr_cnt_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.wr_cnt_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.memwrite2ms = tempreg;
@@ -506,8 +506,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.rd_cnt_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.rd_cnt_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.memread2ms = tempreg;
@@ -582,8 +582,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.l4_rd_cnt_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.l4_rd_cnt_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
tempreg2 = g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.memread2ms;
// Firmware workaround for hardware bug: hits - memreads ~= hits
tempreg = tempreg - tempreg2;
@@ -603,8 +603,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.l4_wr_cnt_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.l4_wr_cnt_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
tempreg2 = g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.memwrite2ms;
// Firmware workaround for hardware bug: hits - memwrites ~= hits
@@ -625,8 +625,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_base_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_base_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.mirb2ms = tempreg;
sensor_update(AMECSENSOR_PORTPAIR_PTR(mirb2ms,i_centaur,i_mc_id), tempreg);
@@ -637,8 +637,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_low_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_low_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.mirl2ms = tempreg;
sensor_update(AMECSENSOR_PORTPAIR_PTR(mirl2ms,i_centaur,i_mc_id), tempreg);
@@ -649,8 +649,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_med_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_med_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.mirm2ms = tempreg;
sensor_update(AMECSENSOR_PORTPAIR_PTR(mirm2ms,i_centaur,i_mc_id), tempreg);
@@ -661,8 +661,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_high_accum;
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.intreq_high_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.portpair[i_mc_id].perf.mirh2ms = tempreg;
sensor_update(AMECSENSOR_PORTPAIR_PTR(mirh2ms,i_centaur,i_mc_id), tempreg);
}
@@ -674,8 +674,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.perf.intreq_highlatency_accum;
g_amec->proc[0].memctl[i_centaur].centaur.perf.intreq_highlatency_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.perf.mirc2ms = tempreg;
sensor_update((&(g_amec->proc[0].memctl[i_centaur].centaur.mirc2ms)), tempreg);
@@ -686,8 +686,8 @@ void amec_perfcount_getmc( CentaurMemData * i_sensor_cache,
temp32 = temp32new - g_amec->proc[0].memctl[i_centaur].centaur.perf.lp2exit_accum;
g_amec->proc[0].memctl[i_centaur].centaur.perf.lp2exit_accum = temp32new; // Save latest accumulator away for next time
- // Read every 2 ms....to convert to 0.01 Mrps = ((2ms read * 500)/10000)
- tempreg = ((temp32*5)/100);
+ // Read every 4 ms....to convert to 0.01 Mrps = ((4ms read * 250)/10000)
+ tempreg = ((temp32*25)/1000);
g_amec->proc[0].memctl[i_centaur].centaur.perf.mlp2_2ms = tempreg;
sensor_update((&(g_amec->proc[0].memctl[i_centaur].centaur.mlp2ms)), tempreg);
OpenPOWER on IntegriCloud