diff options
author | Bilicon Patil <bilpatil@in.ibm.com> | 2013-10-18 08:24:37 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-12-13 09:20:24 -0600 |
commit | 13e1e775ba297999579d8304e906c31c2e72a42a (patch) | |
tree | fd532909eb2105391f7d769e4f5217952ed5fbc1 | |
parent | 948809ead9262fe86e78e303f3e5d1a19388f7ee (diff) | |
download | talos-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.C | 50 | ||||
-rwxr-xr-x | src/usr/diag/prdf/common/prdfEnums.H | 8 | ||||
-rw-r--r-- | src/usr/diag/prdf/prdfErrlUtil.H | 12 |
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); /** |