summaryrefslogtreecommitdiffstats
path: root/src/usr
diff options
context:
space:
mode:
authorElizabeth Liner <eliner@us.ibm.com>2017-03-04 23:44:23 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-03-27 17:40:33 -0400
commit9b8fa8b5e9aa26aca004e9eb5e2ea13ceb6cefea (patch)
tree8ad0290340f5b46562d58453dea21a213d179c73 /src/usr
parent035518d841ac1393571ed4c82451c89b2f8a852b (diff)
downloadtalos-hostboot-9b8fa8b5e9aa26aca004e9eb5e2ea13ceb6cefea.tar.gz
talos-hostboot-9b8fa8b5e9aa26aca004e9eb5e2ea13ceb6cefea.zip
Clearing SRAM flag before starting payload
Change-Id: Ib86d848778de5b54677c4f660609150e36e50e44 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37513 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: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r--src/usr/isteps/istep21/call_host_runtime_setup.C30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/usr/isteps/istep21/call_host_runtime_setup.C b/src/usr/isteps/istep21/call_host_runtime_setup.C
index 06b606ab2..1348fb832 100644
--- a/src/usr/isteps/istep21/call_host_runtime_setup.C
+++ b/src/usr/isteps/istep21/call_host_runtime_setup.C
@@ -45,6 +45,9 @@
#include <hbotcompid.H>
+#include <occ/occ_common.H>
+#include <occ/occAccess.H>
+
using namespace ERRORLOG;
using namespace ISTEP;
using namespace ISTEP_ERROR;
@@ -199,6 +202,33 @@ void* call_host_runtime_setup (void *io_pArgs)
#endif
}
+#ifdef CONFIG_IPLTIME_CHECKSTOP_ANALYSIS
+ if(TARGETING::is_phyp_load() )
+ {
+ //Explicity clearing the SRAM flag before starting Payload.
+ //This tells the OCC bootloader where to pull the OCC image from
+ //0: mainstore, 1: SRAM. We want to use mainstore after this point
+
+ //Get master proc
+ TargetService & tS = targetService();
+ TARGETING::Target* masterproc = NULL;
+ tS.masterProcChipTargetHandle( masterproc );
+
+ //Clear (up to and including the IPL flag)
+ const uint32_t l_SramAddrApp = HBOCC::OCC_SRAM_ADDRESS;
+ ecmdDataBufferBase l_occAppData((HBOCC::OCC_OFFSET_IPL_FLAG + 6)
+ * 8 /* bits */);
+ l_err = HBOCC::writeSRAM(masterproc, l_SramAddrApp, l_occAppData);
+ if(l_err)
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
+ "Error in writeSRAM of 0");
+ break;
+ }
+ }
+#endif
+
+
#if 0 //@TODO-RTC:164022-Support max pstate without OCC
#ifdef CONFIG_SET_NOMINAL_PSTATE
// Speed up processors.
OpenPOWER on IntegriCloud