summaryrefslogtreecommitdiffstats
path: root/src/usr
diff options
context:
space:
mode:
authorBill Hoffa <wghoffa@us.ibm.com>2014-03-01 21:57:16 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-03-13 14:50:16 -0500
commit21ca25c29c266fb6cc86c60472a018ac7850d48c (patch)
tree66f6291a1c959988c3d947ba4c3a229ad2d74ea1 /src/usr
parente1fe2626b37d3c9471e896145182f8a833545ac0 (diff)
downloadtalos-hostboot-21ca25c29c266fb6cc86c60472a018ac7850d48c.tar.gz
talos-hostboot-21ca25c29c266fb6cc86c60472a018ac7850d48c.zip
New mbox message to send master core down to FSP
Change-Id: Ia7e6552570f2da28ec3742c20da70a64877214c2 RTC:97632 CMVC-Prereq:917712 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/9257 Tested-by: Jenkins Server Reviewed-by: MIKE J. JONES <mjjones@us.ibm.com> Reviewed-by: Donald E. Dahle <dedahle@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r--src/usr/hwas/hostbootIstep.C34
-rw-r--r--src/usr/hwas/makefile3
-rw-r--r--src/usr/sbe/sbe_update.H2
3 files changed, 37 insertions, 2 deletions
diff --git a/src/usr/hwas/hostbootIstep.C b/src/usr/hwas/hostbootIstep.C
index 15d587357..822a88ce8 100644
--- a/src/usr/hwas/hostbootIstep.C
+++ b/src/usr/hwas/hostbootIstep.C
@@ -40,10 +40,14 @@
#include <hwpisteperror.H>
#include <targeting/attrsync.H>
+#include <targeting/namedtarget.H>
#include <diag/prdf/prdfMain.H>
#include <intr/interrupt.H>
#include <ibscom/ibscomif.H>
+#include <sbe/sbeif.H>
+#include <sbe_update.H>
+
// fapi support
#include <fapi.H>
#include <fapiPlatHwpInvoker.H>
@@ -189,6 +193,36 @@ void* host_gard( void *io_pArgs )
l_pTopLevel->setAttr<TARGETING::ATTR_RECONFIGURE_LOOP>(l_reconfigAttr);
}
+ // Send message to FSP sending HUID of EX chip associated with master core
+ msg_t * core_msg = msg_allocate();
+ core_msg->type = SBE::MSG_IPL_MASTER_CORE;
+ const TARGETING::Target* l_masterCore = TARGETING::getMasterCore( );
+ HWAS_ASSERT(l_masterCore, "HWAS host_gard: no masterCore found");
+ // Get the EX chip associated with the master core as that is the chip that
+ // has the IS_MASTER_EX attribute associated with it
+ TARGETING::TargetHandleList targetList;
+ getParentAffinityTargets(targetList,
+ l_masterCore,
+ TARGETING::CLASS_UNIT,
+ TARGETING::TYPE_EX);
+ HWAS_ASSERT(targetList.size() == 1,
+ "HWAS host_gard: Incorrect EX chip(s) associated with masterCore");
+ core_msg->data[0] = 0;
+ core_msg->data[1] = TARGETING::get_huid( targetList[0] );
+ core_msg->extra_data = NULL;
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
+ "Sending MSG_MASTER_CORE message with HUID %08x",
+ core_msg->data[1]);
+ errl = MBOX::send(MBOX::IPL_SERVICE_QUEUE,core_msg);
+ if (errl)
+ {
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ ERR_MRK"MBOX::send failed sending Master Core message");
+ msg_free(core_msg);
+
+ }
+
+
TRACDCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "host_gard exit" );
return errl;
}
diff --git a/src/usr/hwas/makefile b/src/usr/hwas/makefile
index 8938a99c0..b66dec03d 100644
--- a/src/usr/hwas/makefile
+++ b/src/usr/hwas/makefile
@@ -5,7 +5,7 @@
#
# IBM CONFIDENTIAL
#
-# COPYRIGHT International Business Machines Corp. 2011,2013
+# COPYRIGHT International Business Machines Corp. 2011,2014
#
# p1
#
@@ -31,6 +31,7 @@ EXTRAINCDIR += ${ROOTPATH}/src/include/usr/ecmddatabuffer
EXTRAINCDIR += ${ROOTPATH}/src/include/usr/hwpf/fapi
EXTRAINCDIR += ${ROOTPATH}/src/include/usr/hwpf/plat
EXTRAINCDIR += ${ROOTPATH}/src/include/usr/hwpf/hwp
+EXTRAINCDIR += ${ROOTPATH}/src/usr/sbe
## pointer to common HWP files
EXTRAINCDIR += ${ROOTPATH}/src/usr/hwpf/hwp/include
diff --git a/src/usr/sbe/sbe_update.H b/src/usr/sbe/sbe_update.H
index 9c602203f..3d9364333 100644
--- a/src/usr/sbe/sbe_update.H
+++ b/src/usr/sbe/sbe_update.H
@@ -93,7 +93,7 @@ namespace SBE
// For mbox messages to FSP
const uint32_t MSG_IPL_DUE_TO_SBE_UPDATE = 0x40000012;
-
+ const uint32_t MSG_IPL_MASTER_CORE = 0x40000005;
/******************************************/
/* Enums */
OpenPOWER on IntegriCloud