summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPrem Shanker Jha <premjha2@in.ibm.com>2014-02-24 12:56:23 +0530
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-03-13 22:32:48 -0500
commitad4e246181ab78b9ad9474870481f506b56beeb8 (patch)
treef7dba8627cce4f2154ee0a45b68cf9bed94da632
parentf5edd808d73c19008ba77cf0b74ce6fa1c7cdce4 (diff)
downloadtalos-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
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/register/prdfHomRegisterAccess.C10
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/rule/prdrLoadChip.C4
-rwxr-xr-xsrc/usr/diag/prdf/common/framework/service/xspprdsdbug.C8
-rwxr-xr-xsrc/usr/diag/prdf/common/util/prdfAssert.C4
-rw-r--r--src/usr/diag/prdf/prdfErrlUtil.H6
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
OpenPOWER on IntegriCloud