summaryrefslogtreecommitdiffstats
path: root/src/usr/isteps/istep18/establish_system_smp.C
diff options
context:
space:
mode:
authorMike Baiocchi <mbaiocch@us.ibm.com>2018-05-29 15:09:22 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-06-19 17:38:26 -0400
commit7617e77949d78f00bc575c82de6f2420476a5635 (patch)
treeef24b252a56fc8fcca0f0d55a99fbcfa5afbc64c /src/usr/isteps/istep18/establish_system_smp.C
parent7e0d574dff8853e61634f42acbcb3604dd03cc23 (diff)
downloadtalos-hostboot-7617e77949d78f00bc575c82de6f2420476a5635.tar.gz
talos-hostboot-7617e77949d78f00bc575c82de6f2420476a5635.zip
Add procedure for istep 18's Node Communication ABUS Exchange
This commit creates a new interface that will be called in istep 18 to facilitate the exchanging of Link Mailboxes messages between nodes acros the ABUS interface. It also does the basic procedure without all of the final FFDC and RAS implementation that will come in subsequent commits. All error logs are deleted to not kill any IPLs until full functionality is tested. Change-Id: I7391deaa37e49629cd01cfad212b64fecb9529bd RTC:184518 CMVC-Prereq:1058895 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60793 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@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: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/isteps/istep18/establish_system_smp.C')
-rw-r--r--src/usr/isteps/istep18/establish_system_smp.C25
1 files changed, 23 insertions, 2 deletions
diff --git a/src/usr/isteps/istep18/establish_system_smp.C b/src/usr/isteps/istep18/establish_system_smp.C
index a912bfcab..4747d5df3 100644
--- a/src/usr/isteps/istep18/establish_system_smp.C
+++ b/src/usr/isteps/istep18/establish_system_smp.C
@@ -58,6 +58,7 @@
#include <targeting/common/commontargeting.H>
#include <targeting/common/utilFilter.H>
#include <targeting/common/attributes.H>
+#include <targeting/targplatutil.H>
// fapi support
@@ -70,7 +71,7 @@
#include <mbox/ipc_msg_types.H>
#include <intr/interrupt.H>
-
+#include <secureboot/nodecommif.H>
// Uncomment these files as they become available:
// #include "host_coalesce_host/host_coalesce_host.H"
@@ -244,7 +245,7 @@ errlHndl_t call_host_coalesce_host( )
master_node_mask = mask >> drawerCount;
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "master_node_mask=%X",master_node_mask);
+ "master_node_mask=0x%X",master_node_mask);
}
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
@@ -540,6 +541,26 @@ void *host_sys_fab_iovalid_processing(void* io_ptr )
sys->setAttr<TARGETING::ATTR_HB_EXISTING_IMAGE>(hb_existing_image);
#ifdef CONFIG_TPMDD
+ // Run Secure Node-to-Node Communication Procedure
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "host_sys_fab_iovalid_processing: hb_existing_image = 0x%X, "
+ "isMaster=%d. Calling nodeCommAbusExchange()",
+ hb_existing_image, TARGETING::UTIL::isCurrentMasterNode());
+
+ errlHndl_t err = SECUREBOOT::NODECOMM::nodeCommAbusExchange();
+ if (err)
+ {
+ // @TODO RTC 184518 Determine how to handle error log, but
+ // delete error log for now
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,ERR_MRK
+ "host_sys_fab_iovalid_processing: nodeCommAbusExchange() "
+ "returned err: plid=0x%X. Deleting err and continuing",
+ err->plid());
+ delete err;
+ err = nullptr;
+ }
+
+ // Lock the secure ABUS Link Mailboxes now
SECUREBOOT::lockAbusSecMailboxes();
#endif
OpenPOWER on IntegriCloud