summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C
diff options
context:
space:
mode:
authorPrem Shanker Jha <premjha2@in.ibm.com>2017-10-02 02:06:05 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-01-15 14:18:39 -0500
commit6897c9475c92a37b66ca24e39f75ab0f7198bb89 (patch)
tree9a52457885e0f23becd64f11526306e620c6e8e8 /src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C
parentb8522e84fe0320e8dc134e502643ac7fcae917e3 (diff)
downloadtalos-hostboot-6897c9475c92a37b66ca24e39f75ab0f7198bb89.tar.gz
talos-hostboot-6897c9475c92a37b66ca24e39f75ab0f7198bb89.zip
Idle Stop State: Adds CME and SGPE global variables to FFDC.
HB calls p9_check_idle_stop_done to collect FFDC when a slave core fails to activate. Commits collects global variables from CME and SGPE SRAM and adds to return code as FFDC. Key_Cronus_Test=PM_REGRESS CQ: SW406487 Change-Id: Ib008aa165b43f6b7184ad4683cb7caeb90d75078 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46981 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: AMIT J. TENDOLKAR <amit.tendolkar@in.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: RANGANATHPRASAD G. BRAHMASAMUDRA <prasadbgr@in.ibm.com> Tested-by: Cronus HW CI <cronushw-ci+hostboot@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46982 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C')
-rw-r--r--src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C52
1 files changed, 51 insertions, 1 deletions
diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C b/src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C
index 5be51b1e9..2b6f5cc0f 100644
--- a/src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C
+++ b/src/import/chips/p9/procedures/hwp/pm/p9_pm_recovery_ffdc_cme.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2017 */
+/* Contributors Listed Below - COPYRIGHT 2015,2018 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -227,6 +227,56 @@
//-----------------------------------------------------------------------
+ fapi2::ReturnCode PlatCme::collectPartialFfdc( void * i_pBuf, FfdcDataType i_dataType,
+ fapi2::Target<fapi2::TARGET_TYPE_EX >& i_exTgt,
+ uint32_t & o_ffdcLength )
+ {
+ FAPI_DBG(">> PlatSgpe::collectPartialFfdc");
+ fapi2::ReturnCode l_retCode = fapi2::FAPI2_RC_SUCCESS;
+ uint32_t l_maxSize = o_ffdcLength;
+ FAPI_DBG("Max buf size %d", o_ffdcLength );
+
+ switch( i_dataType )
+ {
+ case IMAGE_HEADER:
+ o_ffdcLength = FFDC_PPE_IMG_HDR_SIZE;
+ break;
+ case DASH_BOARD_VAR:
+ o_ffdcLength = FFDC_PPE_SCORE_BOARD_SIZE;
+ break;
+ case TRACES:
+ o_ffdcLength = FFDC_PPE_TRACES_SIZE;
+ break;
+ default:
+ FAPI_ERR("Bad FFDC Data type. Skipping 0x%d", (uint32_t)i_dataType );
+ goto fapi_try_exit;
+ break;
+ }
+
+ if( !i_pBuf )
+ {
+ FAPI_ERR("Bad FFDC Buffer" );
+ goto fapi_try_exit;
+ }
+
+ if( o_ffdcLength > l_maxSize )
+ {
+ o_ffdcLength = l_maxSize;
+ }
+
+ FAPI_TRY( PlatPmComplex::collectSramInfo( i_exTgt,
+ (uint8_t*)i_pBuf,
+ i_dataType,
+ o_ffdcLength ),
+ "Failed To Collect CME SRAM FFDC" );
+
+ fapi_try_exit:
+ FAPI_DBG("<< PlatSgpe::collectPartialFfdc");
+ return fapi2::current_err;
+ }
+
+ //-----------------------------------------------------------------------
+
fapi2::ReturnCode PlatCme::collectTrace( uint8_t * i_pTraceBuf,
const fapi2::Target<fapi2::TARGET_TYPE_EX >& i_exTgt )
{
OpenPOWER on IntegriCloud