diff options
author | Prem Shanker Jha <premjha2@in.ibm.com> | 2014-02-24 12:56:23 +0530 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-03-13 22:32:48 -0500 |
commit | ad4e246181ab78b9ad9474870481f506b56beeb8 (patch) | |
tree | f7dba8627cce4f2154ee0a45b68cf9bed94da632 | |
parent | f5edd808d73c19008ba77cf0b74ce6fa1c7cdce4 (diff) | |
download | talos-hostboot-ad4e246181ab78b9ad9474870481f506b56beeb8.tar.gz talos-hostboot-ad4e246181ab78b9ad9474870481f506b56beeb8.zip |
PRD: Added action for Serviceability.
For serviceability considerations, during while asserting
PRDF would request for reset reload
Change-Id: Ifed559f9190d29abbdfa091d386eeaf68156197b
RTC:95879
Backport: release-fips810
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/9099
Tested-by: Jenkins Server
Reviewed-by: Christopher T. Phan <cphan@us.ibm.com>
Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Reviewed-by: Bilicon Patil <bilpatil@in.ibm.com>
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/9616
5 files changed, 25 insertions, 7 deletions
diff --git a/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C b/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C index e089f1336..16b9cd266 100755 --- a/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C +++ b/src/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C @@ -240,6 +240,8 @@ errlHndl_t ScomAccessor::Access(TARGETING::TargetHandle_t i_target, * @userdata1 PRD Return code = SCR_ACCESS_FAILED * @userdata2 The invalid ID causing the fail * @devdesc Access SCOM failed due to NULL target handle + * @custDesc An internal firmware fault, access failed on hardware + * register. * @procedure EPUB_PRC_SP_CODE */ @@ -339,7 +341,9 @@ uint32_t HomRegisterAccessScan::Access(BIT_STRING_CLASS & bs, * @userdata1 PRD Return code = SCR_ACCESS_FAILED * @userdata2 The invalid ID causing the fail * @userdata3 Code location = 0x0001 - * @devdesc Access Scan failed due to an invalid function unit + * @devdesc Access Scan failed due to an invalid function unit + * @custDesc An internal firmware fault, read failed on hardware + * register. * @procedure EPUB_PRC_SP_CODE */ // create an error log @@ -372,7 +376,9 @@ uint32_t HomRegisterAccessScan::Access(BIT_STRING_CLASS & bs, * @userdata1 PRD Return code = SCR_ACCESS_FAILED * @userdata2 The ID for the scan * @userdata3 Code location = 0x0002 - * @devdesc Access Scan failed. PRD does not ever expect to write scan rings. + * @devdesc Access Scan failed. PRD does not ever expect to write scan rings. + * @custDesc An internal firmware fault, write failed on hardware + * register. * @procedure EPUB_PRC_SP_CODE */ // create an error log diff --git a/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.C b/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.C index 21198ad86..8e62df62a 100755 --- a/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.C +++ b/src/usr/diag/prdf/common/framework/rule/prdrLoadChip.C @@ -5,7 +5,7 @@ /* */ /* IBM CONFIDENTIAL */ /* */ -/* COPYRIGHT International Business Machines Corp. 2004,2013 */ +/* COPYRIGHT International Business Machines Corp. 2004,2014 */ /* */ /* p1 */ /* */ @@ -112,6 +112,8 @@ errlHndl_t LoadChip(UtilStream & i_stream, Chip & o_chip) * @userdata2 0x43484950 ("CHIP") * @devdesc Attempted to load chip rule file that lacked * the proper header "PRDRCHIP". + * @custDesc An Internal firmware fault, chip diagnosis failed to + * initialize. */ PRDF_CREATE_ERRL(l_errl, ERRL_SEV_UNRECOVERABLE, diff --git a/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C b/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C index 02e56715e..6cf34dc28 100755 --- a/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C +++ b/src/usr/diag/prdf/common/framework/service/xspprdsdbug.C @@ -5,7 +5,7 @@ /* */ /* IBM CONFIDENTIAL */ /* */ -/* COPYRIGHT International Business Machines Corp. 2000,2013 */ +/* COPYRIGHT International Business Machines Corp. 2000,2014 */ /* */ /* p1 */ /* */ @@ -111,8 +111,10 @@ uint32_t SYSTEM_DEBUG_CLASS::Reinitialize(const AttnList & i_attnList) * @userdata2 0 * @userdata3 0 * @userdata4 0 - * @devdesc input AttnList is empty. - * @procedure EPUB_PRC_SP_CODE + * @devdesc input AttnList is empty. + * @custDesc Chip diagnosis did not find any chip with an + * attention. + * @procedure EPUB_PRC_SP_CODE */ PRDF_CREATE_ERRL( g_prd_errlHndl, ERRL_SEV_UNRECOVERABLE, // error on diagnostic diff --git a/src/usr/diag/prdf/common/util/prdfAssert.C b/src/usr/diag/prdf/common/util/prdfAssert.C index ba551b384..6873bbd6f 100755 --- a/src/usr/diag/prdf/common/util/prdfAssert.C +++ b/src/usr/diag/prdf/common/util/prdfAssert.C @@ -5,7 +5,7 @@ /* */ /* IBM CONFIDENTIAL */ /* */ -/* COPYRIGHT International Business Machines Corp. 2004,2013 */ +/* COPYRIGHT International Business Machines Corp. 2004,2014 */ /* */ /* p1 */ /* */ @@ -67,6 +67,7 @@ void prdfAssert( const char * i_exp, const char * i_file, int i_line ) * @userdata3 0 * @userdata4 PRD Return code * @devdesc PRD assert + * @custDesc An internal firmware fault. * @procedure EPUB_PRC_SP_CODE */ PRDF_CREATE_ERRL(errl, @@ -85,6 +86,7 @@ void prdfAssert( const char * i_exp, const char * i_file, int i_line ) PRDF_ADD_PROCEDURE_CALLOUT(errl, SRCI_PRIORITY_MED, EPUB_PRC_SP_CODE); PRDF_SET_RC(errl, PRD_ASSERT); PRDF_COLLECT_TRACE(errl, 256); + PRDF_SET_TERM_STATE( errl ); PRDF_COMMIT_ERRL(errl, ERRL_ACTION_SA); #ifdef __HOSTBOOT_MODULE diff --git a/src/usr/diag/prdf/prdfErrlUtil.H b/src/usr/diag/prdf/prdfErrlUtil.H index f91bde69b..4d55c544b 100644 --- a/src/usr/diag/prdf/prdfErrlUtil.H +++ b/src/usr/diag/prdf/prdfErrlUtil.H @@ -213,5 +213,11 @@ #define PRDF_HWUDUMP( i_errl, i_content, i_huid ) \ SUCCESS +/** + * @brief Interface to indicate errlog that hostboot need to do a + * soft terminate. + */ +#define PRDF_SET_TERM_STATE( i_errl ) \ + i_errl->setTermState( ERRORLOG::TERM_STATE_SOFT ) #endif // __prdfErrlUtil_H |