summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Geddes <crgeddes@us.ibm.com>2018-04-06 12:21:39 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-04-10 13:48:20 -0400
commita4e9bdd5d47c4ac48377c12cae6952cb3101b657 (patch)
tree8fe4c7229ca7f082c5d925e596f51a648017ea44
parent7ee5536ef2a1302676976133c905a3a4c8812c9a (diff)
downloadtalos-hostboot-a4e9bdd5d47c4ac48377c12cae6952cb3101b657.tar.gz
talos-hostboot-a4e9bdd5d47c4ac48377c12cae6952cb3101b657.zip
Improve error handling when slave SBE fails to boot
If we fail to boot the slave SBE we should mark it in the istep errlog to ensure that we fail the istep and perform a reconfig loop. Change-Id: I70e67b5b3e1e35e0ee76eb1f158435ee44a436ef Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56882 Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: Jenkins Server <pfd-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> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
-rw-r--r--src/include/usr/isteps/istep_reasoncodes.H1
-rw-r--r--src/usr/isteps/istep08/call_proc_check_slave_sbe_seeprom_complete.C26
2 files changed, 27 insertions, 0 deletions
diff --git a/src/include/usr/isteps/istep_reasoncodes.H b/src/include/usr/isteps/istep_reasoncodes.H
index 616ac7617..c0f30679a 100644
--- a/src/include/usr/isteps/istep_reasoncodes.H
+++ b/src/include/usr/isteps/istep_reasoncodes.H
@@ -114,6 +114,7 @@ namespace ISTEP
RC_P9N_DD1_NOT_SUPPORTED = ISTEP_COMP_ID | 0x35,
RC_PREVENT_REBOOT_IN_MFG_TERM_MODE = ISTEP_COMP_ID | 0x36,
RC_FAILED_WRITE_SPR = ISTEP_COMP_ID | 0x37,
+ RC_FAILED_TO_BOOT_SBE = ISTEP_COMP_ID | 0x38,
};
};
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 4b45a8de2..8dcab75c6 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
@@ -173,6 +173,32 @@ void* call_proc_check_slave_sbe_seeprom_complete( void *io_pArgs )
" completed ok for proc 0x%.8X",
TARGETING::get_huid(l_cpu_target));
}
+ else
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
+ "FAILURE : proc_check_slave_sbe_seeprom_complete"
+ "SBE for proc 0x%.8X did not reach runtime",
+ TARGETING::get_huid(l_cpu_target));
+ /*@
+ * @reasoncode RC_FAILED_TO_BOOT_SBE
+ * @severity ERRORLOG::ERRL_SEV_UNRECOVERABLE
+ * @moduleid MOD_CHECK_SLAVE_SBE_SEEPROM_COMPLETE
+ * @userdata1 HUID of proc that failed to boot its SBE
+ * @userdata2 Unused
+ * @devdesc Failed to boot a slave SBE
+ * @custdesc Processor Error
+ */
+ l_errl = new ERRORLOG::ErrlEntry(ERRORLOG::ERRL_SEV_UNRECOVERABLE,
+ MOD_CHECK_SLAVE_SBE_SEEPROM_COMPLETE,
+ RC_FAILED_TO_BOOT_SBE,
+ TARGETING::get_huid(l_cpu_target),
+ 0);
+ l_errl->collectTrace( "ISTEPS_TRACE", 256 );
+ l_stepError.addErrorDetails( l_errl);
+ errlCommit(l_errl, ISTEP_COMP_ID);
+
+
+ }
/* @TODO-RTC:100963 This should only be called when the SBE has completely
crashed. There is a path in OpenPower where HB may get an
OpenPOWER on IntegriCloud