summaryrefslogtreecommitdiffstats
path: root/src/usr/isteps
diff options
context:
space:
mode:
authorDean Sanner <dsanner@us.ibm.com>2017-01-26 07:47:34 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-02-07 12:00:08 -0500
commiteb217e512338e8d2182762cbe97f55d4759e799e (patch)
treed550bb52cec837d26e172237c8082fd099ec2373 /src/usr/isteps
parent606659144d3bf5d397bc24a54c6a5538e34cc5c5 (diff)
downloadtalos-hostboot-eb217e512338e8d2182762cbe97f55d4759e799e.tar.gz
talos-hostboot-eb217e512338e8d2182762cbe97f55d4759e799e.zip
Ensure sbefifo is clean on slave chips before starting
Change-Id: I440d6f5bd6aa1c3c72b3d8df581262b01765214c Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/35447 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/usr/isteps')
-rw-r--r--src/usr/isteps/istep08/call_host_cbs_start.C17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/usr/isteps/istep08/call_host_cbs_start.C b/src/usr/isteps/istep08/call_host_cbs_start.C
index f4307f7ec..5e4490fb6 100644
--- a/src/usr/isteps/istep08/call_host_cbs_start.C
+++ b/src/usr/isteps/istep08/call_host_cbs_start.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -44,6 +44,7 @@
#include <sys/time.h>
#include <devicefw/userif.H>
#include <i2c/i2cif.H>
+#include <sbeio/sbeioif.H>
// targeting support
#include <targeting/common/commontargeting.H>
@@ -96,6 +97,20 @@ void* call_host_cbs_start(void *io_pArgs)
{
if (l_cpu_target != l_pMasterProcTarget)
{
+ //Before starting the CBS (and thus the SBE) on slave procs
+ //Make sure the SBE FIFO is clean by doing a full reset of
+ //the fifo
+ l_errl = SBEIO::sendFifoReset(l_cpu_target);
+ if (l_errl)
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
+ "ERROR : call sendFifoReset, "
+ "PLID=0x%x", l_errl->plid() );
+ l_stepError.addErrorDetails(l_errl);
+ errlCommit(l_errl, ISTEP_COMP_ID);
+ continue; //Don't continue on this chip if failed
+ }
+
const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>
l_fapi2_proc_target (l_cpu_target);
OpenPOWER on IntegriCloud