summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBilicon Patil <bilpatil@in.ibm.com>2013-10-18 08:24:37 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-12-13 09:20:24 -0600
commit13e1e775ba297999579d8304e906c31c2e72a42a (patch)
treefd532909eb2105391f7d769e4f5217952ed5fbc1
parent948809ead9262fe86e78e303f3e5d1a19388f7ee (diff)
downloadtalos-hostboot-13e1e775ba297999579d8304e906c31c2e72a42a.tar.gz
talos-hostboot-13e1e775ba297999579d8304e906c31c2e72a42a.zip
PRD: Incorporate changes of HWSV Error log APIs
CQ: SW235100 Change-Id: Ifff3bd59ee22c5ca79122f46b019afec2224636d RTC:87135 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/6743 Reviewed-by: Christopher T. Phan <cphan@us.ibm.com> Tested-by: Jenkins Server Reviewed-by: BENJAMIN J. WEISENBECK <bweisenb@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Reviewed-by: Zane Shelley <zshelle@us.ibm.com> Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/7702 Reviewed-by: Bilicon Patil <bilpatil@in.ibm.com>
-rw-r--r--src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C50
-rwxr-xr-xsrc/usr/diag/prdf/common/prdfEnums.H8
-rw-r--r--src/usr/diag/prdf/prdfErrlUtil.H12
3 files changed, 25 insertions, 45 deletions
diff --git a/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C b/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C
index b235068d0..a954cd5af 100644
--- a/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C
+++ b/src/usr/diag/prdf/common/framework/service/prdfRasServices_common.C
@@ -196,7 +196,6 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
using namespace HWAS;
errlSeverity_t severityParm = ERRL_SEV_RECOVERED;
#else
- bool writeVPD = false; // Make the default to not Write VPD Capture data
bool causeAttnPreviouslyReported = false;
bool pldCheck = false; // Default to not do the PLD check. Set it to true for Machine Check
uint8_t sdcSaveFlags = SDC_NO_SAVE_FLAGS;
@@ -220,15 +219,14 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
// take care of this. The Hidden and Informational cases will reassign the actionFlag.
uint32_t actionFlag = (ERRL_ACTION_SA | ERRL_ACTION_REPORT | ERRL_ACTION_CALL_HOME);
-
-
- HWSV::hwsvHCDBUpdate hcdbUpdate = HWSV::HWSV_HCDB_DO_UPDATE;
+ HWSV::hwsvDiagUpdate l_diagUpdate = HWSV::HWSV_DIAG_NEEDED;
// Use this SDC unless determined in Check Stop processing to use a UE,
// or SUE saved SDC
sdc = i_sdc;
GardAction::ErrorType prdGardErrType;
+ // TODO: RTC - 89322: Consolidate gardSate and prdGardErrType values.
HWSV::hwsvGardEnum gardState; // defined in src/hwsv/server/hwsvTypes.H
HWAS::GARD_ErrorType gardErrType = HWAS::GARD_NULL;
HWAS::DeconfigEnum deconfigState = HWAS::NO_DECONFIG;
@@ -241,7 +239,6 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
++iv_serviceActionCounter;
uint16_t PRD_Reason_Code = 0;
- uint32_t dumpPlid = 0;
//**************************************************************
// Initial set up by Attention Type
@@ -256,7 +253,6 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
PRDF_ERR( PRDF_FUNC"Hostboot should NOT have any system checkstop!" );
#else
- writeVPD = true; // Change the default so as to Write Capture Data
pldCheck = true; // Do the PLD check
if (terminateOnCheckstop)
@@ -603,8 +599,8 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
o_errl->setSev(severityParm);
if (ERRL_ACTION_HIDDEN == actionFlag)
- { //Change HCDB Update to not do the update for non-visible logs
- hcdbUpdate = HWSV::HWSV_HCDB_OVERRIDE;
+ { // Diagnostics is not needed in the next IPL cycle for non-visible logs
+ l_diagUpdate = HWSV::HWSV_DIAG_NOT_NEEDED;
}
//**************************************************************
@@ -631,12 +627,10 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
PRDF_HW_ADD_CALLOUT(thiscallout.getTarget(),
thispriority,
thisDeconfigState,
- gardState,
o_errl,
- writeVPD,
gardErrType,
severityParm,
- hcdbUpdate);
+ l_diagUpdate);
}
else if ( PRDcalloutData::TYPE_MEMMRU == thiscallout.getType() )
@@ -650,12 +644,10 @@ errlHndl_t ErrDataService::GenerateSrcPfa( ATTENTION_TYPE i_attnType,
PRDF_HW_ADD_CALLOUT( *it,
thispriority,
deconfigState,
- gardState,
o_errl,
- writeVPD,
gardErrType,
severityParm,
- hcdbUpdate );
+ l_diagUpdate );
}
}
else if ( PRDcalloutData::TYPE_SYMFRU == thiscallout.getType() )
@@ -965,35 +957,25 @@ will also be removed. Need to confirm if this code is required anymore.
// for FSP specific SRC handling in the future
MnfgTrace( esig, pfaData );
- PRDF_GET_PLID(o_errl, dumpPlid);
-
- bool l_sysTerm = false;
- PRDF_HW_COMMIT_ERRL(l_sysTerm,
- o_errl,
- deconfigSched,
- actionFlag,
- HWSV::HWSV_CONTINUE);
- if(true == l_sysTerm) // if sysTerm then we have to commit and delete the log
+ PRDF_HW_COMMIT_ERRL( o_errl, deconfigSched, actionFlag );
+ if ( NULL != o_errl )
{
- //Just commit the log
+ // Just commit the log.
+ uint32_t dumpPlid = 0;
+ PRDF_GET_PLID(o_errl, dumpPlid);
+
uint32_t l_rc = 0;
PRDF_GET_RC(o_errl, l_rc);
uint16_t l_reasonCode = 0;
PRDF_GET_REASONCODE(o_errl, l_reasonCode);
- PRDF_INF( PRDF_FUNC"committing error log: PLID=%.8X, ReasonCode=%.8X, RC=%.8X, actions=%.4X",
- dumpPlid,
- l_reasonCode,
- l_rc, actionFlag );
+ PRDF_INF( PRDF_FUNC"Committing error log: PLID=%.8X, "
+ "ReasonCode=%.8X, RC=%.8X, actions=%.4X",
+ dumpPlid, l_reasonCode, l_rc, actionFlag );
+
PRDF_COMMIT_ERRL(o_errl, actionFlag);
}
- else
- {
- // Error log has been committed, return NULL Error Log to PrdMain
- o_errl = NULL;
- }
-
}
// If the Error Log is not committed (as due to a Terminate condtion),
// the Error Log will be returned to PRDMain
diff --git a/src/usr/diag/prdf/common/prdfEnums.H b/src/usr/diag/prdf/common/prdfEnums.H
index 2e4b204c1..b739db66c 100755
--- a/src/usr/diag/prdf/common/prdfEnums.H
+++ b/src/usr/diag/prdf/common/prdfEnums.H
@@ -101,7 +101,7 @@ enum MFG_THRES_SYNC_MSG_TYPE
namespace HWSV
{
- typedef uint32_t hwsvHCDBUpdate;
+ typedef uint32_t hwsvDiagUpdate;
typedef uint32_t hwsvTermEnum;
typedef uint32_t hwsvGardEnum;
typedef uint32_t hwsvDeconfigSchedule;
@@ -111,9 +111,9 @@ enum MFG_THRES_SYNC_MSG_TYPE
// hwsvTermEnum
HWSV_SYS_NO_TERMINATE = 0,
- // hwsvHCDBUpdate
- HWSV_HCDB_DO_UPDATE = 0,
- HWSV_HCDB_OVERRIDE,
+ // hwsvDiagUpdate
+ HWSV_DIAG_NOT_NEEDED = 0,
+ HWSV_DIAG_NEEDED,
// hwsvGardEnum
HWSV_NO_GARD = 0,
diff --git a/src/usr/diag/prdf/prdfErrlUtil.H b/src/usr/diag/prdf/prdfErrlUtil.H
index 7affa1f2f..a307ba9d6 100644
--- a/src/usr/diag/prdf/prdfErrlUtil.H
+++ b/src/usr/diag/prdf/prdfErrlUtil.H
@@ -196,23 +196,21 @@
* @note convert immediate deconfig to delayed deconfig in HB.
*/
#define PRDF_HW_ADD_CALLOUT(i_target, i_priority, \
- i_deconfigState, i_gardState, \
- io_errl, i_writeVpd, \
- i_gardErrType, i_severity, i_hcdb_update) \
+ i_deconfigState, \
+ io_errl, i_gardErrType, \
+ i_severity, i_diag_need) \
io_errl->addHwCallout(i_target, \
(const HWAS::callOutPriority)i_priority, \
(i_deconfigState == HWAS::DECONFIG ? \
HWAS::DELAYED_DECONFIG : i_deconfigState), \
(const HWAS::GARD_ErrorType)i_gardErrType); \
- (void)(i_hcdb_update)
+ (void)(i_diag_need)
/**
* @brief Process's pending deconfig and GARD service actions
* and thencommits and deletes the error log.
*/
-#define PRDF_HW_COMMIT_ERRL(io_sysTerm, io_errl, i_deferDeconfig, \
- i_action, i_continue) \
- io_sysTerm = false; \
+#define PRDF_HW_COMMIT_ERRL(io_errl, i_deferDeconfig, i_action) \
PRDF_COMMIT_ERRL(io_errl, i_action);
/**
OpenPOWER on IntegriCloud