summaryrefslogtreecommitdiffstats
path: root/src/occ_405/amec/amec_pcap.c
diff options
context:
space:
mode:
authorAndres Lugo-Reyes <aalugore@us.ibm.com>2018-02-01 13:20:27 -0600
committerMartha Broyles <mbroyles@us.ibm.com>2018-02-12 13:02:00 -0500
commitfca494dbdcf944718a577bfe0e3c6c01aabb1a69 (patch)
tree780d309e273d95a39ed8fc51537b34d15c64c5d8 /src/occ_405/amec/amec_pcap.c
parentccdb19fba8c7b6e8623178d38564703896f4510b (diff)
downloadtalos-occ-fca494dbdcf944718a577bfe0e3c6c01aabb1a69.tar.gz
talos-occ-fca494dbdcf944718a577bfe0e3c6c01aabb1a69.zip
Replace Firmware Level with FClip History in error log
-Throttle noisy traces -Add slave clip history to Call Home log Change-Id: If498c4c5b7e445d7b1b43fb16a2790f11166e430 CMVC-Prereq: 1045167 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/53578 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com> Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Diffstat (limited to 'src/occ_405/amec/amec_pcap.c')
-rwxr-xr-xsrc/occ_405/amec/amec_pcap.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/occ_405/amec/amec_pcap.c b/src/occ_405/amec/amec_pcap.c
index 6d65a89..fc6fd92 100755
--- a/src/occ_405/amec/amec_pcap.c
+++ b/src/occ_405/amec/amec_pcap.c
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER OnChipController Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2011,2017 */
+/* Contributors Listed Below - COPYRIGHT 2011,2018 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -29,11 +29,11 @@
#include "amec_pcap.h"
#include "amec_sys.h"
#include "amec_service_codes.h"
+#include "common.h"
#include <occ_common.h>
#include <occ_sys_config.h>
#include <dcom.h>
#include <trac.h>
-
//*************************************************************************/
// Externs
//*************************************************************************/
@@ -54,7 +54,7 @@
// Globals
//*************************************************************************/
extern PWR_READING_TYPE G_pwr_reading_type;
-
+extern uint16_t G_allow_trace_flags;
//Number of ticks to wait before dropping below nominal frequency
#define PWR_SETTLED_TICKS 4
//Number of watts power must be below the node power cap before raising
@@ -323,6 +323,8 @@ void amec_pcap_calc(const bool i_oversub_state)
static uint32_t L_prev_node_pcap = 0;
static bool L_apss_error_traced = FALSE;
static uint32_t L_ticks_mem_pwr_available = 0;
+ static bool L_trace_pcap_throttle = true;
+ static bool L_trace_pcap_unthrottle = true;
// Determine the active power cap. norm_node_pcap is set as lowest
// between sys (N+1 mode) and user in amec_data_write_pcap()
@@ -388,9 +390,14 @@ void amec_pcap_calc(const bool i_oversub_state)
{
L_ticks_mem_pwr_available++;
- if(L_ticks_mem_pwr_available == UNTHROTTLE_MEMORY_DELAY)
+ if( L_ticks_mem_pwr_available == UNTHROTTLE_MEMORY_DELAY )
{
- TRAC_IMP("PCAP: Un-Throttling memory");
+ if( L_trace_pcap_unthrottle ||
+ (G_allow_trace_flags & ALLOW_MEM_TRACE) )
+ {
+ TRAC_IMP("PCAP: Un-Throttling memory");
+ L_trace_pcap_unthrottle = false;
+ }
g_amec->pcap.active_mem_level = 0;
L_ticks_mem_pwr_available = 0;
// don't let the proc have any available power this tick
@@ -408,7 +415,12 @@ void amec_pcap_calc(const bool i_oversub_state)
if( (g_amec->pcap.active_mem_level == 0) &&
(g_amec->proc[0].pwr_votes.ppb_fmax == g_amec->sys.fmin) )
{
- TRAC_IMP("PCAP: Throttling memory");
+ if( L_trace_pcap_throttle ||
+ (G_allow_trace_flags & ALLOW_MEM_TRACE) )
+ {
+ TRAC_IMP("PCAP: Throttling memory");
+ L_trace_pcap_throttle = false;
+ }
g_amec->pcap.active_mem_level = 1;
}
}
OpenPOWER on IntegriCloud