summaryrefslogtreecommitdiffstats
path: root/src/usr/isteps/istep08
diff options
context:
space:
mode:
authorElizabeth Liner <eliner@us.ibm.com>2017-11-15 11:19:56 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-12-13 10:43:12 -0500
commite29c5cfdb62cd3f5fc97f22438c528b05fd35b06 (patch)
treea937d3bcd442f42bca79d745216dafe2b7d3b623 /src/usr/isteps/istep08
parent92466e69168a996395f214001a90c7c7cb70b0bf (diff)
downloadtalos-hostboot-e29c5cfdb62cd3f5fc97f22438c528b05fd35b06.tar.gz
talos-hostboot-e29c5cfdb62cd3f5fc97f22438c528b05fd35b06.zip
SBE error logging and handler cleanup
This commit takes care of a few things 1) Removing the sbe threshold handler - we decided that retrying after the initial loop was overkill 2) Making use of the class structure - we added a lot of class elements to decrease things passed between functions and to facilitate debugging 3) Creating a main entry point and simplifying functions We decided that we wanted one function to handle all actions. This also made some function irrelevant and as such they were removed. Additionally, this also fixes an infinite circular logic bug. Change-Id: I9556e3181226755150c3debd1471f1be23e13be4 RTC:180961 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/49886 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> 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/usr/isteps/istep08')
-rw-r--r--src/usr/isteps/istep08/call_proc_check_slave_sbe_seeprom_complete.C43
1 files changed, 3 insertions, 40 deletions
diff --git a/src/usr/isteps/istep08/call_proc_check_slave_sbe_seeprom_complete.C b/src/usr/isteps/istep08/call_proc_check_slave_sbe_seeprom_complete.C
index 502db189a..cd180281b 100644
--- a/src/usr/isteps/istep08/call_proc_check_slave_sbe_seeprom_complete.C
+++ b/src/usr/isteps/istep08/call_proc_check_slave_sbe_seeprom_complete.C
@@ -124,54 +124,17 @@ void* call_proc_check_slave_sbe_seeprom_complete( void *io_pArgs )
const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> l_fapi2ProcTarget(
const_cast<TARGETING::Target*> (l_cpu_target));
- sbeMsgReg_t l_sbeReg;
-
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
"Running p9_get_sbe_msg_register HWP"
" on processor target %.8X",
TARGETING::get_huid(l_cpu_target));
- SBEIO::SbeRetryHandler::SBE_REG_RETURN l_ret =
- SBEIO::SbeRetryHandler::SBE_REG_RETURN::SBE_FAILED_TO_BOOT;
-
- l_errl = SBEIO::SbeRetryHandler::getInstance().sbe_timeout_handler(
- &l_sbeReg,l_cpu_target,&l_ret);
-
- if((!l_errl) && (l_sbeReg.currState != SBE_STATE_RUNTIME))
- {
- // See if async FFDC bit is set in SBE register
- if(l_sbeReg.asyncFFDC)
- {
- bool l_flowCtrl = SBEIO::SbeRetryHandler::getInstance().
- sbe_get_ffdc_handler(l_cpu_target);
-
- if(l_flowCtrl)
- {
- continue;
- }
- }
-
- // Handle that SBE failed to boot in the allowed time
- SBEIO::SbeRetryHandler::getInstance().sbe_boot_fail_handler(
- l_cpu_target,l_sbeReg);
- }
- else if (l_errl)
- {
- TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
- "ERROR : call p9_check_slave_sbe_seeprom_complete, "
- "PLID=0x%x", l_errl->plid() );
-
- // capture the target data in the elog
- ErrlUserDetailsTarget(l_cpu_target).addToLog( l_errl );
+ SBEIO::SbeRetryHandler l_SBEobj = SBEIO::SbeRetryHandler();
- // Create IStep error log and cross reference to error
- l_stepError.addErrorDetails( l_errl );
+ l_SBEobj.main_sbe_handler(l_cpu_target,false);
- // Commit error log
- errlCommit( l_errl, HWPF_COMP_ID );
- }
// No error and still functional
- else if(l_cpu_target->getAttr<ATTR_HWAS_STATE>().functional)
+ if(l_cpu_target->getAttr<ATTR_HWAS_STATE>().functional)
{
// Set attribute indicating that SBE is started
l_cpu_target->setAttr<ATTR_SBE_IS_STARTED>(1);
OpenPOWER on IntegriCloud