summaryrefslogtreecommitdiffstats
path: root/src/usr/isteps
diff options
context:
space:
mode:
authorJoe McGill <jmcgill@us.ibm.com>2017-05-02 13:21:24 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-05-22 09:54:45 -0400
commit6a3b0f5ac79e28f358e83464065fda5f85b810cb (patch)
treec5e5291be9d7df5384fad1395a26c8891d0addb3 /src/usr/isteps
parent529ea1d267e13c9556dc490a5587de9a0d6e3e4e (diff)
downloadtalos-hostboot-6a3b0f5ac79e28f358e83464065fda5f85b810cb.tar.gz
talos-hostboot-6a3b0f5ac79e28f358e83464065fda5f85b810cb.zip
security -- split p9_chiplet_scominit and p9_chiplet_enable_ridi isteps
p9_chiplet_scominit, move from istep 8 to istep 10 shift content required for XBUS, fabric establishment into p9_chiplet_fabric_scominit, to be called in istep 8 p9_chiplet_enable_ridi, move from istep 8 to istep 10 shift content required for XBUS establishment into p9_xbus_enable_ridi, to be called in istep CMVC-Coreq: 1023401 Change-Id: I4c60e4c41211976c7919a603ab679357cc4af106 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39956 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Brent Wieman <bwieman@us.ibm.com> Dev-Ready: Brent Wieman <bwieman@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39960 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr/isteps')
-rw-r--r--src/usr/isteps/istep08/call_proc_chiplet_fabric_scominit.C163
-rw-r--r--src/usr/isteps/istep08/call_proc_xbus_enable_ridi.C111
-rw-r--r--src/usr/isteps/istep08/makefile75
-rw-r--r--src/usr/isteps/istep10/call_host_rng_bist.C (renamed from src/usr/isteps/istep08/call_p9_rng_init_phase1.C)16
-rw-r--r--src/usr/isteps/istep10/call_host_set_voltages.C (renamed from src/usr/isteps/istep08/call_host_set_voltages.C)4
-rw-r--r--src/usr/isteps/istep10/call_proc_abus_scominit.C (renamed from src/usr/isteps/istep08/call_proc_abus_scominit.C)6
-rw-r--r--src/usr/isteps/istep10/call_proc_cen_ref_clk_enable.C (renamed from src/usr/isteps/istep08/call_proc_cen_ref_clk_enable.C)6
-rw-r--r--src/usr/isteps/istep10/call_proc_chiplet_enable_ridi.C (renamed from src/usr/isteps/istep08/call_proc_chiplet_enable_ridi.C)6
-rw-r--r--src/usr/isteps/istep10/call_proc_chiplet_scominit.C (renamed from src/usr/isteps/istep08/call_proc_chiplet_scominit.C)6
-rw-r--r--src/usr/isteps/istep10/call_proc_enable_osclite.C (renamed from src/usr/isteps/istep08/call_proc_enable_osclite.C)6
-rw-r--r--src/usr/isteps/istep10/call_proc_npu_scominit.C (renamed from src/usr/isteps/istep08/call_proc_npu_scominit.C)6
-rw-r--r--src/usr/isteps/istep10/call_proc_obus_scominit.C (renamed from src/usr/isteps/istep08/call_proc_obus_scominit.C)4
-rw-r--r--src/usr/isteps/istep10/call_proc_pcie_scominit.C (renamed from src/usr/isteps/istep08/call_proc_pcie_scominit.C)4
-rw-r--r--src/usr/isteps/istep10/call_proc_scomoverride_chiplets.C (renamed from src/usr/isteps/istep08/call_proc_scomoverride_chiplets.C)6
-rw-r--r--src/usr/isteps/istep10/host_proc_pcie_scominit.C (renamed from src/usr/isteps/istep08/host_proc_pcie_scominit.C)4
-rw-r--r--src/usr/isteps/istep10/host_proc_pcie_scominit.H (renamed from src/usr/isteps/istep08/host_proc_pcie_scominit.H)4
-rw-r--r--src/usr/isteps/istep10/makefile68
-rw-r--r--src/usr/isteps/istep16/call_host_secure_rng.C (renamed from src/usr/isteps/istep16/call_p9_rng_init_phase2.C)14
-rw-r--r--src/usr/isteps/istep16/makefile2
19 files changed, 397 insertions, 114 deletions
diff --git a/src/usr/isteps/istep08/call_proc_chiplet_fabric_scominit.C b/src/usr/isteps/istep08/call_proc_chiplet_fabric_scominit.C
new file mode 100644
index 000000000..dadd3065a
--- /dev/null
+++ b/src/usr/isteps/istep08/call_proc_chiplet_fabric_scominit.C
@@ -0,0 +1,163 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/usr/isteps/istep08/call_proc_chiplet_fabric_scominit.C $ */
+/* */
+/* OpenPOWER HostBoot Project */
+/* */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
+/* [+] International Business Machines Corp. */
+/* */
+/* */
+/* Licensed under the Apache License, Version 2.0 (the "License"); */
+/* you may not use this file except in compliance with the License. */
+/* You may obtain a copy of the License at */
+/* */
+/* http://www.apache.org/licenses/LICENSE-2.0 */
+/* */
+/* Unless required by applicable law or agreed to in writing, software */
+/* distributed under the License is distributed on an "AS IS" BASIS, */
+/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */
+/* implied. See the License for the specific language governing */
+/* permissions and limitations under the License. */
+/* */
+/* IBM_PROLOG_END_TAG */
+/**
+ @file call_proc_chiplet_fabric_scominit.C
+ *
+ * Support file for IStep: nest_chiplets
+ * Nest Chiplets
+ *
+ * HWP_IGNORE_VERSION_CHECK
+ *
+ */
+/******************************************************************************/
+// Includes
+/******************************************************************************/
+#include <stdint.h>
+
+#include <trace/interface.H>
+#include <initservice/taskargs.H>
+#include <errl/errlentry.H>
+
+#include <isteps/hwpisteperror.H>
+#include <errl/errludtarget.H>
+
+#include <initservice/isteps_trace.H>
+#include <initservice/initserviceif.H>
+
+// targeting support
+#include <targeting/common/commontargeting.H>
+#include <targeting/common/utilFilter.H>
+
+#include <fapi2/target.H>
+#include <fapi2/plat_hwp_invoker.H>
+
+// MVPD
+#include <devicefw/userif.H>
+#include <vpd/mvpdenums.H>
+
+#include <config.h>
+
+// HWP
+#include <p9_chiplet_fabric_scominit.H>
+
+namespace ISTEP_08
+{
+
+using namespace ISTEP;
+using namespace ISTEP_ERROR;
+using namespace ERRORLOG;
+using namespace TARGETING;
+
+//******************************************************************************
+// wrapper function to call proc_chiplet_fabric_scominit
+//******************************************************************************
+void* call_proc_chiplet_fabric_scominit( void *io_pArgs )
+{
+ errlHndl_t l_err = NULL;
+ IStepError l_StepError;
+
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "call_proc_chiplet_fabric_scominit entry" );
+
+ //
+ // get a list of all the procs in the system
+ //
+ TARGETING::TargetHandleList l_cpuTargetList;
+ getAllChips(l_cpuTargetList, TYPE_PROC);
+
+ // Loop through all processors including master
+ for (const auto & l_cpu_target: l_cpuTargetList)
+ {
+ fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>l_fapi2_proc_target(
+ l_cpu_target);
+
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "Running p9_chiplet_fabric_scominit HWP on "
+ "target HUID %.8X", TARGETING::get_huid(l_cpu_target));
+
+ FAPI_INVOKE_HWP(l_err,
+ p9_chiplet_fabric_scominit,
+ l_fapi2_proc_target);
+ if (l_err)
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace, "ERROR 0x%.8X : "
+ "p9_chiplet_fabric_scominit HWP returns error. target HUID %.8X",
+ l_err->reasonCode(), TARGETING::get_huid(l_cpu_target));
+
+ ErrlUserDetailsTarget(l_cpu_target).addToLog( l_err );
+
+ // Create IStep error log and cross ref to error that occurred
+ l_StepError.addErrorDetails( l_err );
+
+ // We want to continue to the next target instead of exiting,
+ // Commit the error log and move on
+ // Note: Error log should already be deleted and set to NULL
+ // after committing
+ errlCommit(l_err, HWPF_COMP_ID);
+ }
+
+ // @todo RTC 174563 Remove obus workaround
+ uint64_t l_orValue = 0xFF00000000000000;
+ uint64_t l_orSize = sizeof(l_orValue);
+ l_err = deviceWrite(l_cpu_target,
+ &l_orValue,
+ l_orSize,
+ DEVICE_SCOM_ADDRESS(0x05013805));
+ if(l_err)
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,ERR_MRK
+ "Unable to set workaround address");
+ break;
+ }
+ } // end of going through all processors
+
+ // @todo RTC 174563 Remove obus workaround
+ // Get all OBUS targets
+ TARGETING::TargetHandleList l_obusTargetList;
+ getAllChiplets(l_obusTargetList, TYPE_OBUS);
+ for (const auto & l_obusTarget: l_obusTargetList)
+ {
+ uint64_t l_orValue = 0xC000000000000000;
+ uint64_t l_orSize = sizeof(l_orValue);
+ l_err = deviceWrite(l_obusTarget
+ ,
+ &l_orValue,
+ l_orSize,
+ DEVICE_SCOM_ADDRESS(0x09010805));
+ if(l_err)
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,ERR_MRK
+ "Unable to set workaround address");
+ break;
+ }
+ }
+
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "call_proc_chiplet_fabric_scominit exit" );
+
+ return l_StepError.getErrorHandle();
+}
+
+}; // end namespace ISTEP_08
diff --git a/src/usr/isteps/istep08/call_proc_xbus_enable_ridi.C b/src/usr/isteps/istep08/call_proc_xbus_enable_ridi.C
new file mode 100644
index 000000000..68117452f
--- /dev/null
+++ b/src/usr/isteps/istep08/call_proc_xbus_enable_ridi.C
@@ -0,0 +1,111 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/usr/isteps/istep08/call_proc_xbus_enable_ridi.C $ */
+/* */
+/* OpenPOWER HostBoot Project */
+/* */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
+/* [+] International Business Machines Corp. */
+/* */
+/* */
+/* Licensed under the Apache License, Version 2.0 (the "License"); */
+/* you may not use this file except in compliance with the License. */
+/* You may obtain a copy of the License at */
+/* */
+/* http://www.apache.org/licenses/LICENSE-2.0 */
+/* */
+/* Unless required by applicable law or agreed to in writing, software */
+/* distributed under the License is distributed on an "AS IS" BASIS, */
+/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */
+/* implied. See the License for the specific language governing */
+/* permissions and limitations under the License. */
+/* */
+/* IBM_PROLOG_END_TAG */
+/**
+ @file call_proc_xbus_enable_ridi.C
+ *
+ * Support file for IStep: nest_chiplets
+ * Nest Chiplets
+ *
+ * HWP_IGNORE_VERSION_CHECK
+ *
+ */
+/******************************************************************************/
+// Includes
+/******************************************************************************/
+#include <stdint.h>
+
+#include <trace/interface.H>
+#include <initservice/taskargs.H>
+#include <errl/errlentry.H>
+
+#include <isteps/hwpisteperror.H>
+
+#include <errl/errludtarget.H>
+
+#include <initservice/isteps_trace.H>
+#include <initservice/initserviceif.H>
+
+// targeting support
+#include <targeting/common/commontargeting.H>
+#include <targeting/common/utilFilter.H>
+#include <fapi2/target.H>
+#include <fapi2/plat_hwp_invoker.H>
+
+#include <p9_xbus_enable_ridi.H>
+
+
+namespace ISTEP_08
+{
+
+using namespace ISTEP;
+using namespace ISTEP_ERROR;
+using namespace ERRORLOG;
+using namespace TARGETING;
+
+//******************************************************************************
+// wrapper function to call proc_xbus_enable_ridi
+//******************************************************************************
+void* call_proc_xbus_enable_ridi( void *io_pArgs )
+{
+ errlHndl_t l_err = NULL;
+ IStepError l_StepError;
+
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "call_proc_xbus_enable_ridi entry" );
+ //
+ // get a list of all the procs in the system
+ //
+ TARGETING::TargetHandleList l_cpuTargetList;
+ getAllChips(l_cpuTargetList, TYPE_PROC);
+
+ // Loop through all processors including master
+ for (const auto & l_cpu_target: l_cpuTargetList)
+ {
+ const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>l_fapi2_proc_target(
+ l_cpu_target);
+
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "Running p9_xbus_enable_ridi HWP on processor target %.8X",
+ TARGETING::get_huid(l_cpu_target) );
+
+ FAPI_INVOKE_HWP(l_err, p9_xbus_enable_ridi, l_fapi2_proc_target);
+ if(l_err)
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
+ "ERROR: call p9_xbus_enable_ridi, PLID=0x%x",
+ l_err->plid());
+ l_StepError.addErrorDetails(l_err);
+ errlCommit(l_err, HWPF_COMP_ID);
+ }
+
+ } // end of going through all processors
+
+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
+ "call_proc_xbus_enable_ridi exit");
+
+ return l_StepError.getErrorHandle();
+}
+
+}; // end namespace ISTEP_08
diff --git a/src/usr/isteps/istep08/makefile b/src/usr/isteps/istep08/makefile
index f52926319..523fd901d 100644
--- a/src/usr/isteps/istep08/makefile
+++ b/src/usr/isteps/istep08/makefile
@@ -5,7 +5,7 @@
#
# OpenPOWER HostBoot Project
#
-# Contributors Listed Below - COPYRIGHT 2015,2016
+# Contributors Listed Below - COPYRIGHT 2015,2017
# [+] International Business Machines Corp.
#
#
@@ -45,23 +45,13 @@ OBJS += call_host_slave_sbe_config.o
OBJS += call_host_setup_sbe.o
OBJS += call_host_cbs_start.o
OBJS += call_proc_check_slave_sbe_seeprom_complete.o
-OBJS += call_proc_cen_ref_clk_enable.o
OBJS += call_host_p9_fbc_eff_config.o
OBJS += call_host_p9_fbc_eff_config_links.o
OBJS += call_proc_attr_update.o
-OBJS += call_proc_enable_osclite.o
-OBJS += call_proc_chiplet_scominit.o
+OBJS += call_proc_chiplet_fabric_scominit.o
OBJS += call_proc_xbus_scominit.o
-OBJS += call_proc_abus_scominit.o
-OBJS += call_proc_obus_scominit.o
-OBJS += call_proc_npu_scominit.o
-OBJS += call_proc_pcie_scominit.o
-OBJS += call_proc_scomoverride_chiplets.o
-OBJS += call_proc_chiplet_enable_ridi.o
-OBJS += call_p9_rng_init_phase1.o
-OBJS += call_host_set_voltages.o
+OBJS += call_proc_xbus_enable_ridi.o
OBJS += call_host_attnlisten_proc.o
-OBJS += host_proc_pcie_scominit.o
VPATH += ${PROCEDURES_PATH}/hwp/perv/ ${PROCEDURES_PATH}/hwp/nest/
VPATH += ${PROCEDURES_PATH}/hwp/io/ ${PROCEDURES_PATH}/hwp/initfiles/
@@ -70,6 +60,7 @@ VPATH += ${PROCEDURES_PATH}/hwp/pm/
VPATH += ${PROCEDURES_PATH}/hwp/lib
include ${ROOTPATH}/procedure.rules.mk
+
# host_slave_sbe_config
include ${PROCEDURES_PATH}/hwp/perv/p9_setup_sbe_config.mk
@@ -85,9 +76,6 @@ include ${PROCEDURES_PATH}/hwp/perv/p9_extract_sbe_rc.mk
include ${PROCEDURES_PATH}/hwp/sbe/p9_get_sbe_msg_register.mk
include ${PROCEDURES_PATH}/hwp/perv/p9_getecid.mk
-# proc_cen_ref_clk_enable
-# Cummulus only -- p9_cen_ref_clk_enable.mk not defined yet
-
# host_p9_fbc_eff_config
include ${PROCEDURES_PATH}/hwp/nest/p9_fbc_eff_config.mk
@@ -97,65 +85,18 @@ include ${PROCEDURES_PATH}/hwp/nest/p9_fbc_eff_config_links.mk
# proc_attr_update: Proc ATTR Update
include ${PROCEDURES_PATH}/hwp/nest/p9_attr_update.mk
-# proc_enable_osclite
-# Cummulus only -- p9_enable_osclite.mk not defined yet
-
-# proc_chiplet_scominit : Scom inits to all chiplets (sans Quad)
-include ${PROCEDURES_PATH}/hwp/nest/p9_chiplet_scominit.mk
-include ${PROCEDURES_PATH}/hwp/nest/p9_psi_scominit.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_psi_scom.mk
+# proc_chiplet_fabric_scominit : Scom inits to all chiplet fabric (sans Quad)
+include ${PROCEDURES_PATH}/hwp/nest/p9_chiplet_fabric_scominit.mk
include ${PROCEDURES_PATH}/hwp/initfiles/p9_fbc_ioe_dl_scom.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_fbc_ioo_tl_scom.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_fbc_ioo_dl_scom.mk
include ${PROCEDURES_PATH}/hwp/initfiles/p9_fbc_no_hp_scom.mk
include ${PROCEDURES_PATH}/hwp/initfiles/p9_fbc_ioe_tl_scom.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_nx_scom.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_cxa_scom.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_mmu_scom.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_int_scom.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_vas_scom.mk
# proc_xbus_scominit : Apply scom inits to Xbus
include ${PROCEDURES_PATH}/hwp/io/p9_io_xbus_scominit.mk
include ${PROCEDURES_PATH}/hwp/initfiles/p9_xbus_g0_scom.mk
include ${PROCEDURES_PATH}/hwp/initfiles/p9_xbus_g1_scom.mk
-# proc_abus_scominit : Apply scom inits to Abus
-# HWP not found - p9_abus_scominit.mk not defined
-
-# proc_obus_scominit : Apply scom inits to Obus
-include ${PROCEDURES_PATH}/hwp/io/p9_io_obus_scominit.mk
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_obus_scom.mk
-
-# proc_npu_scominit : Apply scom inits to NPU bus
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_npu_scom.mk
-include ${PROCEDURES_PATH}/hwp/nest/p9_npu_scominit.mk
-include ${PROCEDURES_PATH}/hwp/perv/p9_nv_ref_clk_enable.mk
-
-# proc_pcie_scominit : Apply scom inits to PCIe chiplets
-include ${PROCEDURES_PATH}/hwp/nest/p9_pcie_scominit.mk
-
-# p9_mcs_scom
-include ${PROCEDURES_PATH}/hwp/initfiles/p9_mcs_scom.mk
-
-# proc_scomoverride_chiplets : Apply sequenced scom inits
-include ${PROCEDURES_PATH}/hwp/nest/p9_scomoverride_chiplets.mk
-
-# proc_chiplet_enable_ridi : Apply RI/DI chip wide
-include ${PROCEDURES_PATH}/hwp/perv/p9_chiplet_enable_ridi.mk
-
-# host_rng_bist : Trigger Built In Self Test
-# HWP not ready - p9_trigger_rng_bist.mk
-include ${PROCEDURES_PATH}/hwp/nest/p9_rng_init_phase1.mk
-
-# p9_setup_evid : apply voltage settings
-include ${PROCEDURES_PATH}/hwp/pm/p9_setup_evid.mk
-include ${PROCEDURES_PATH}/hwp/lib/p9_avsbus_lib.mk
-# TODO RTC: 164237
-# Take another look at PM lib
-include $(PROCEDURES_PATH)/hwp/pm/p9_pm_utils.mk
-
-MODULE=istep08
-
+# proc_xbus_enable_ridi : Apply RI/DI for xbus
+include ${PROCEDURES_PATH}/hwp/perv/p9_xbus_enable_ridi.mk
include ${ROOTPATH}/config.mk
diff --git a/src/usr/isteps/istep08/call_p9_rng_init_phase1.C b/src/usr/isteps/istep10/call_host_rng_bist.C
index 25dd969d0..b1ccc5144 100644
--- a/src/usr/isteps/istep08/call_p9_rng_init_phase1.C
+++ b/src/usr/isteps/istep10/call_host_rng_bist.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_p9_rng_init_phase1.C $ */
+/* $Source: src/usr/isteps/istep10/call_host_rng_bist.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -23,7 +23,7 @@
/* */
/* IBM_PROLOG_END_TAG */
/**
- @file call_p9_rng_init_phase1.C
+ @file call_host_rng_bist.C
*
* Support file for IStep: nest_chiplets
* Nest Chiplets
@@ -58,7 +58,7 @@
#include <fapi2/plat_hwp_invoker.H>
#include <p9_rng_init_phase1.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
@@ -67,16 +67,16 @@ using namespace ERRORLOG;
using namespace TARGETING;
//******************************************************************************
-// wrapper function to call proc_chiplet_enable_ridi
+// wrapper function to call host_rng_bist
//******************************************************************************
-void* call_p9_rng_init_phase1( void *io_pArgs )
+void* call_host_rng_bist( void *io_pArgs )
{
errlHndl_t l_err = NULL;
IStepError l_StepError;
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "call_p9_rng_init_phase1 entry" );
+ "call_host_rng_bist entry" );
//
// get a list of all the procs in the system
//
@@ -106,7 +106,7 @@ void* call_p9_rng_init_phase1( void *io_pArgs )
} // end of going through all processors
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "call_p9_rng_init_phase1 exit");
+ "call_host_rng_bist exit");
return l_StepError.getErrorHandle();
}
diff --git a/src/usr/isteps/istep08/call_host_set_voltages.C b/src/usr/isteps/istep10/call_host_set_voltages.C
index dfa4a0c80..2bca1cff9 100644
--- a/src/usr/isteps/istep08/call_host_set_voltages.C
+++ b/src/usr/isteps/istep10/call_host_set_voltages.C
@@ -1,7 +1,7 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_host_set_voltages.C $ */
+/* $Source: src/usr/isteps/istep10/call_host_set_voltages.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
@@ -47,7 +47,7 @@ using namespace TARGETING;
using namespace ERRORLOG;
using namespace ISTEP_ERROR;
-namespace ISTEP_08
+namespace ISTEP_10
{
//*****************************************************************************
diff --git a/src/usr/isteps/istep08/call_proc_abus_scominit.C b/src/usr/isteps/istep10/call_proc_abus_scominit.C
index 7d5c464cd..745fabae3 100644
--- a/src/usr/isteps/istep08/call_proc_abus_scominit.C
+++ b/src/usr/isteps/istep10/call_proc_abus_scominit.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_abus_scominit.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_abus_scominit.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -61,7 +61,7 @@
#include <config.h>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/call_proc_cen_ref_clk_enable.C b/src/usr/isteps/istep10/call_proc_cen_ref_clk_enable.C
index d418a693e..3a1ebc45c 100644
--- a/src/usr/isteps/istep08/call_proc_cen_ref_clk_enable.C
+++ b/src/usr/isteps/istep10/call_proc_cen_ref_clk_enable.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_cen_ref_clk_enable.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_cen_ref_clk_enable.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -65,7 +65,7 @@ using namespace ISTEP_ERROR;
using namespace ERRORLOG;
using namespace TARGETING;
-namespace ISTEP_08
+namespace ISTEP_10
{
uint8_t getMembufsAttachedBitMask( TARGETING::Target * i_procChipHandle );
diff --git a/src/usr/isteps/istep08/call_proc_chiplet_enable_ridi.C b/src/usr/isteps/istep10/call_proc_chiplet_enable_ridi.C
index ed56be104..72422e56b 100644
--- a/src/usr/isteps/istep08/call_proc_chiplet_enable_ridi.C
+++ b/src/usr/isteps/istep10/call_proc_chiplet_enable_ridi.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_chiplet_enable_ridi.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_chiplet_enable_ridi.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -56,7 +56,7 @@
#include <p9_chiplet_enable_ridi.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/call_proc_chiplet_scominit.C b/src/usr/isteps/istep10/call_proc_chiplet_scominit.C
index 483c25f98..f7df9989a 100644
--- a/src/usr/isteps/istep08/call_proc_chiplet_scominit.C
+++ b/src/usr/isteps/istep10/call_proc_chiplet_scominit.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_chiplet_scominit.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_chiplet_scominit.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -63,7 +63,7 @@
#include <p9_chiplet_scominit.H>
#include <p9_psi_scominit.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/call_proc_enable_osclite.C b/src/usr/isteps/istep10/call_proc_enable_osclite.C
index d9bd03bc1..dd3c6147e 100644
--- a/src/usr/isteps/istep08/call_proc_enable_osclite.C
+++ b/src/usr/isteps/istep10/call_proc_enable_osclite.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_enable_osclite.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_enable_osclite.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -62,7 +62,7 @@
// "start_clocks_on_nest_chiplets_custom.C" and include
// the prototypes here.
// #include "nest_chiplets_custom.H"
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/call_proc_npu_scominit.C b/src/usr/isteps/istep10/call_proc_npu_scominit.C
index e62821ba7..622fc883d 100644
--- a/src/usr/isteps/istep08/call_proc_npu_scominit.C
+++ b/src/usr/isteps/istep10/call_proc_npu_scominit.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_npu_scominit.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_npu_scominit.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -62,7 +62,7 @@
#include <p9_npu_scominit.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/call_proc_obus_scominit.C b/src/usr/isteps/istep10/call_proc_obus_scominit.C
index b31df9f99..f08d896c6 100644
--- a/src/usr/isteps/istep08/call_proc_obus_scominit.C
+++ b/src/usr/isteps/istep10/call_proc_obus_scominit.C
@@ -1,7 +1,7 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_obus_scominit.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_obus_scominit.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
@@ -62,7 +62,7 @@
#include <config.h>
#include <p9_io_obus_scominit.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/call_proc_pcie_scominit.C b/src/usr/isteps/istep10/call_proc_pcie_scominit.C
index 382cd4d0d..664a966e9 100644
--- a/src/usr/isteps/istep08/call_proc_pcie_scominit.C
+++ b/src/usr/isteps/istep10/call_proc_pcie_scominit.C
@@ -1,7 +1,7 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_pcie_scominit.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_pcie_scominit.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
@@ -62,7 +62,7 @@
#include "host_proc_pcie_scominit.H"
#include <p9_pcie_scominit.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/call_proc_scomoverride_chiplets.C b/src/usr/isteps/istep10/call_proc_scomoverride_chiplets.C
index 8409efd2f..0d4c6d58f 100644
--- a/src/usr/isteps/istep08/call_proc_scomoverride_chiplets.C
+++ b/src/usr/isteps/istep10/call_proc_scomoverride_chiplets.C
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/call_proc_scomoverride_chiplets.C $ */
+/* $Source: src/usr/isteps/istep10/call_proc_scomoverride_chiplets.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2015,2016 */
+/* Contributors Listed Below - COPYRIGHT 2015,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -63,7 +63,7 @@
#include <p9_scomoverride_chiplets.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/host_proc_pcie_scominit.C b/src/usr/isteps/istep10/host_proc_pcie_scominit.C
index 00d733489..ff9075b4f 100644
--- a/src/usr/isteps/istep08/host_proc_pcie_scominit.C
+++ b/src/usr/isteps/istep10/host_proc_pcie_scominit.C
@@ -1,7 +1,7 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/host_proc_pcie_scominit.C $ */
+/* $Source: src/usr/isteps/istep10/host_proc_pcie_scominit.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
@@ -48,7 +48,7 @@
#include <hwas/common/deconfigGard.H>
-namespace ISTEP_08
+namespace ISTEP_10
{
using namespace ISTEP;
diff --git a/src/usr/isteps/istep08/host_proc_pcie_scominit.H b/src/usr/isteps/istep10/host_proc_pcie_scominit.H
index 8d4c9c9aa..96e7ca273 100644
--- a/src/usr/isteps/istep08/host_proc_pcie_scominit.H
+++ b/src/usr/isteps/istep10/host_proc_pcie_scominit.H
@@ -1,7 +1,7 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep08/host_proc_pcie_scominit.H $ */
+/* $Source: src/usr/isteps/istep10/host_proc_pcie_scominit.H $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
@@ -30,7 +30,7 @@
/******************************************************************************/
#include <stdint.h>
-namespace ISTEP_08
+namespace ISTEP_10
{
/**
diff --git a/src/usr/isteps/istep10/makefile b/src/usr/isteps/istep10/makefile
index c5d4e88d1..f0101903d 100644
--- a/src/usr/isteps/istep10/makefile
+++ b/src/usr/isteps/istep10/makefile
@@ -28,7 +28,12 @@ MODULE = istep10
NEST_HWP_PATH += ${ROOTPATH}/src/import/chips/p9/procedures/hwp/nest
INITFILES_HWP_PATH += ${ROOTPATH}/src/import/chips/p9/procedures/hwp/initfiles
PERV_HWP_PATH += ${ROOTPATH}/src/import/chips/p9/procedures/hwp/perv
+PROCEDURES_PATH += ${ROOTPATH}/src/import/chips/p9/procedures
+EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/pm/
+EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/io/
+EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/lib/
+EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/pm/include/registers
EXTRAINCDIR += ${ROOTPATH}/src/usr/isteps/
EXTRAINCDIR += ${ROOTPATH}/src/include/usr/fapi2/
EXTRAINCDIR += ${ROOTPATH}/src/import/hwpf/fapi2/include/
@@ -40,11 +45,26 @@ EXTRAINCDIR += ${PERV_HWP_PATH}
OBJS += call_proc_build_smp.o
OBJS += call_host_slave_sbe_update.o
+OBJS += call_host_set_voltages.o
+OBJS += call_proc_cen_ref_clk_enable.o
+OBJS += call_proc_enable_osclite.o
+OBJS += call_proc_chiplet_scominit.o
+OBJS += call_proc_abus_scominit.o
+OBJS += call_proc_obus_scominit.o
+OBJS += call_proc_npu_scominit.o
+OBJS += call_proc_pcie_scominit.o
+OBJS += call_proc_scomoverride_chiplets.o
+OBJS += call_proc_chiplet_enable_ridi.o
+OBJS += call_host_rng_bist.o
OBJS += call_host_update_redundant_tpm.o
+OBJS += host_proc_pcie_scominit.o
VPATH += ${NEST_HWP_PATH}
VPATH += ${INITFILES_HWP_PATH}
VPATH += ${PERV_HWP_PATH}
+VPATH += ${PROCEDURES_PATH}/hwp/io/
+VPATH += ${PROCEDURES_PATH}/hwp/pm/
+VPATH += ${PROCEDURES_PATH}/hwp/lib/
#Required include before all the procedure.mk are included
include ${ROOTPATH}/procedure.rules.mk
@@ -55,4 +75,52 @@ include ${INITFILES_HWP_PATH}/p9_fbc_ab_hp_scom.mk
include ${INITFILES_HWP_PATH}/p9_fbc_cd_hp_scom.mk
include ${PERV_HWP_PATH}/p9_update_security_ctrl.mk
+# proc_chiplet_scominit : Scom inits to all chiplets (sans Quad)
+include ${PROCEDURES_PATH}/hwp/nest/p9_chiplet_scominit.mk
+include ${PROCEDURES_PATH}/hwp/nest/p9_psi_scominit.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_psi_scom.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_fbc_ioo_tl_scom.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_fbc_ioo_dl_scom.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_nx_scom.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_cxa_scom.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_mmu_scom.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_int_scom.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_vas_scom.mk
+
+# proc_obus_scominit : Apply scom inits to Obus
+include ${PROCEDURES_PATH}/hwp/io/p9_io_obus_scominit.mk
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_obus_scom.mk
+
+# proc_npu_scominit : Apply scom inits to NPU bus
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_npu_scom.mk
+include ${PROCEDURES_PATH}/hwp/nest/p9_npu_scominit.mk
+include ${PROCEDURES_PATH}/hwp/perv/p9_nv_ref_clk_enable.mk
+
+# proc_pcie_scominit : Apply scom inits to PCIe chiplets
+include ${PROCEDURES_PATH}/hwp/nest/p9_pcie_scominit.mk
+
+# p9_mcs_scom
+include ${PROCEDURES_PATH}/hwp/initfiles/p9_mcs_scom.mk
+
+# proc_scomoverride_chiplets : Apply sequenced scom inits
+include ${PROCEDURES_PATH}/hwp/nest/p9_scomoverride_chiplets.mk
+
+# proc_chiplet_enable_ridi : Apply RI/DI chip wide
+include ${PROCEDURES_PATH}/hwp/perv/p9_chiplet_enable_ridi.mk
+
+# host_rng_bist : Trigger Built In Self Test
+# HWP not ready - p9_trigger_rng_bist.mk
+include ${PROCEDURES_PATH}/hwp/nest/p9_rng_init_phase1.mk
+
+# p9_setup_evid : apply voltage settings
+include ${PROCEDURES_PATH}/hwp/pm/p9_setup_evid.mk
+include ${PROCEDURES_PATH}/hwp/lib/p9_avsbus_lib.mk
+
+# p9_avsbus_lib.mk sets MODULE, reset here to istep10
+MODULE = istep10
+
+# TODO RTC: 164237
+# Take another look at PM lib
+include $(PROCEDURES_PATH)/hwp/pm/p9_pm_utils.mk
+
include ${ROOTPATH}/config.mk
diff --git a/src/usr/isteps/istep16/call_p9_rng_init_phase2.C b/src/usr/isteps/istep16/call_host_secure_rng.C
index 4aeb4917e..5a5150475 100644
--- a/src/usr/isteps/istep16/call_p9_rng_init_phase2.C
+++ b/src/usr/isteps/istep16/call_host_secure_rng.C
@@ -1,7 +1,7 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/usr/isteps/istep16/call_p9_rng_init_phase2.C $ */
+/* $Source: src/usr/isteps/istep16/call_host_secure_rng.C $ */
/* */
/* OpenPOWER HostBoot Project */
/* */
@@ -24,7 +24,7 @@
/* IBM_PROLOG_END_TAG */
/**
- * @file call_p9_rng_init_phase2.C
+ * @file call_host_secure_rng.C
*
* Support file for IStep: core_activate
* Core Activate
@@ -70,16 +70,16 @@ using namespace ERRORLOG;
using namespace TARGETING;
//******************************************************************************
-// wrapper function to call p9_rng_init_phase2
+// wrapper function to call host_secure_rng
//******************************************************************************
-void* call_p9_rng_init_phase2( void *io_pArgs )
+void* call_host_secure_rng( void *io_pArgs )
{
errlHndl_t l_err = NULL;
IStepError l_StepError;
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "call_p9_rng_init_phase2 entry" );
+ "call_host_secure_rng entry" );
//
// get a list of all the procs in the system
//
@@ -93,7 +93,7 @@ void* call_p9_rng_init_phase2( void *io_pArgs )
l_cpu_target);
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "Running p9_rng_init_phase2 HWP on processor target %.8X",
+ "Running host_secure_rng HWP on processor target %.8X",
TARGETING::get_huid(l_cpu_target) );
FAPI_INVOKE_HWP(l_err, p9_rng_init_phase2, l_fapi2_proc_target);
@@ -109,7 +109,7 @@ void* call_p9_rng_init_phase2( void *io_pArgs )
} // end of going through all processors
TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "call_p9_rng_init_phase2 exit");
+ "call_host_secure_rng exit");
return l_StepError.getErrorHandle();
}
diff --git a/src/usr/isteps/istep16/makefile b/src/usr/isteps/istep16/makefile
index c04dc08f2..03841b227 100644
--- a/src/usr/isteps/istep16/makefile
+++ b/src/usr/isteps/istep16/makefile
@@ -41,7 +41,7 @@ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/utils/imageProcs/
OBJS += call_host_activate_master.o
OBJS += call_host_activate_slave_cores.o
-OBJS += call_p9_rng_init_phase2.o
+OBJS += call_host_secure_rng.o
OBJS += call_mss_scrub.o
OBJS += call_host_ipl_complete.o
OpenPOWER on IntegriCloud