summaryrefslogtreecommitdiffstats
path: root/src/usr/isteps/istep21
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2018-01-16 14:15:36 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-01-22 23:39:14 -0500
commit038392cae8c5a50b0098000566167fef68d047f5 (patch)
tree9bacc708ef80aaf79d4dd0eed40aa0ebf5cf1898 /src/usr/isteps/istep21
parent07f9a377153875d5d00763b96b33e40a49ec274b (diff)
downloadtalos-hostboot-038392cae8c5a50b0098000566167fef68d047f5.tar.gz
talos-hostboot-038392cae8c5a50b0098000566167fef68d047f5.zip
Move closing all unsecure memory regions to 21.3
Current windows that are left open at end of IPL - SBE FFDC - CPU Controls SP ATTN area - 0-64MB for SP ATTN Change-Id: I887fc63bcc70f2351530741bd251db12732a5948 RTC:168745 Backport:release-fips910 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/52045 Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> 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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@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/istep21')
-rw-r--r--src/usr/isteps/istep21/call_host_runtime_setup.C27
-rw-r--r--src/usr/isteps/istep21/call_host_start_payload.C26
2 files changed, 25 insertions, 28 deletions
diff --git a/src/usr/isteps/istep21/call_host_runtime_setup.C b/src/usr/isteps/istep21/call_host_runtime_setup.C
index a9dc89305..8140d8f45 100644
--- a/src/usr/isteps/istep21/call_host_runtime_setup.C
+++ b/src/usr/isteps/istep21/call_host_runtime_setup.C
@@ -463,18 +463,6 @@ void* call_host_runtime_setup (void *io_pArgs)
"Successfully sent all system configs to procs via SBE chip op !!");
}
- // Tell SBE to Close All Unsecure Memory Regions
- // @TODO RTC 168745 - Move to istep 21.3 (closer to shutdown)
- l_err = SBEIO::closeAllUnsecureMemRegions();
- if ( l_err )
- {
- TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "SBEIO::closeAllUnsecureMemRegions Failed" );
- // break from do loop if error occured
- break;
- }
-
-
// Need to load up the runtime module if it isn't already loaded
if ( !VFS::module_is_loaded( "libruntime.so" ) )
{
@@ -687,7 +675,6 @@ void* call_host_runtime_setup (void *io_pArgs)
}
}
-
// Fill in Hostboot runtime data for all nodes
// (adjunct partition)
// Write the HB runtime data into mainstore
@@ -699,20 +686,6 @@ void* call_host_runtime_setup (void *io_pArgs)
// break from do loop if error occurred
break;
}
-
- // Open untrusted SP communication area if there is a PAYLOAD
- // NOTE: Must be after all HDAT processing
- if( !(TARGETING::is_no_load()) )
- {
- l_err = RUNTIME::openUntrustedSpCommArea();
- if (l_err)
- {
- TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "Failed openUntrustedSpCommArea" );
- break;
- }
- }
-
} while(0);
if( l_err )
diff --git a/src/usr/isteps/istep21/call_host_start_payload.C b/src/usr/isteps/istep21/call_host_start_payload.C
index 772011864..039db3f6f 100644
--- a/src/usr/isteps/istep21/call_host_start_payload.C
+++ b/src/usr/isteps/istep21/call_host_start_payload.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2017 */
+/* Contributors Listed Below - COPYRIGHT 2015,2018 */
/* [+] Google Inc. */
/* [+] International Business Machines Corp. */
/* */
@@ -55,6 +55,8 @@
#include <config.h>
#include <errno.h>
#include <p9_int_scom.H>
+#include <sbeio/sbeioif.H>
+#include <runtime/runtime.H>
#ifdef CONFIG_DRTM_TRIGGERING
#include <secureboot/drtm.H>
@@ -320,6 +322,28 @@ void* call_host_start_payload (void *io_pArgs)
break;
}
+ // Tell SBE to Close All Unsecure Memory Regions
+ l_errl = SBEIO::closeAllUnsecureMemRegions();
+ if (l_errl)
+ {
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ ERR_MRK "call_host_start_payload: Failed SBEIO::closeAllUnsecureMemRegions" );
+ break;
+ }
+
+ // Open untrusted SP communication area if there is a PAYLOAD
+ // NOTE: Must be after all HDAT processing
+ if( !(TARGETING::is_no_load()) )
+ {
+ l_errl = RUNTIME::openUntrustedSpCommArea();
+ if (l_errl)
+ {
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ ERR_MRK"call_host_start_payload: Failed openUntrustedSpCommArea" );
+ break;
+ }
+ }
+
// - Call shutdown using payload base, and payload entry.
// - base/entry will be from system attributes
// - this will start the payload (Phyp)
OpenPOWER on IntegriCloud