summaryrefslogtreecommitdiffstats
path: root/src/usr/xscom
diff options
context:
space:
mode:
authorDan Crowell <dcrowell@us.ibm.com>2017-02-22 14:50:21 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-03-13 16:11:42 -0400
commit21cd4b1c1d176338fac5015c235566e3ff10ab2b (patch)
treea7d1d2d051b5db861a56777f44378e67939c7e88 /src/usr/xscom
parent86bae1c698cfef64d050b915654d9f3e03fb9ae3 (diff)
downloadtalos-hostboot-21cd4b1c1d176338fac5015c235566e3ff10ab2b.tar.gz
talos-hostboot-21cd4b1c1d176338fac5015c235566e3ff10ab2b.zip
Fill in P9-specific scom error handling
Adjusted address-specific register gathering to reflect P9 chip logic Fixed some error handling bugs in the testcases Added verbosity to error log parser Change-Id: Iad274e8333adb32deacffd3cb92e40f11c48f884 RTC: 158541 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37122 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/xscom')
-rw-r--r--src/usr/xscom/xscom.C7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/usr/xscom/xscom.C b/src/usr/xscom/xscom.C
index b112b2294..d5e47511f 100644
--- a/src/usr/xscom/xscom.C
+++ b/src/usr/xscom/xscom.C
@@ -421,6 +421,7 @@ errlHndl_t xScomDoOp(DeviceFW::OperationType i_opType,
// retry counter.
uint32_t l_retryCtr = 0;
+ uint32_t l_retryTraceCtr = 128;
errlHndl_t l_err = NULL;
@@ -449,8 +450,8 @@ errlHndl_t xScomDoOp(DeviceFW::OperationType i_opType,
l_retryCtr++;
- // If the retry counter is a multiple of 128
- if (l_retryCtr % 128 == 0)
+ // If the retry counter is a multiple of 128,256,512,etc.
+ if (l_retryCtr % l_retryTraceCtr*2 == 0)
{
// print a trace message.. for debug purposes
// incase we are stuck in a retry loop.
@@ -633,7 +634,7 @@ void collectXscomFFDC(TARGETING::Target* i_target,
size_t io_buflen = XSCOM_BUFFER_SIZE;
uint64_t* l_virtAddr = 0;
- // xscom registers that need to be set.
+ // xscom registers that need to be read.
XscomAddrType_t XscomAddr[4] = {
{0x00090018, CurThreadCpu}, //XSCOM_RCVED_STAT_REG
{0x00090012, TargetCpu}, //XSCOM_LOG_REG
OpenPOWER on IntegriCloud