summaryrefslogtreecommitdiffstats
path: root/src/include/usr
diff options
context:
space:
mode:
authorElliott Dahle <dedahle@us.ibm.com>2013-11-13 10:35:18 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-12-14 17:42:08 -0600
commit178ea26dbd10dd1989b2311a209b00e2642af10a (patch)
tree666892b2b904c487faa477064eccb05e95a6e64b /src/include/usr
parent915c24391f2d71ff7eca4b19ca9680b9496c44f3 (diff)
downloadtalos-hostboot-178ea26dbd10dd1989b2311a209b00e2642af10a.tar.gz
talos-hostboot-178ea26dbd10dd1989b2311a209b00e2642af10a.zip
Integrate IPL Flow Reconfig Loop Memory HWPs
Change-Id: I024737b0685164d3e79ee847d53ba1b46721ce5a RTC:89843 CMVC-Coreq:906058 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/7452 Tested-by: Jenkins Server Reviewed-by: Brian H. Horton <brianh@linux.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/include/usr')
-rw-r--r--src/include/usr/hwas/common/deconfigGard.H3
-rw-r--r--src/include/usr/initservice/initsvcstructs.H2
-rw-r--r--src/include/usr/isteps/istep10list.H1
-rw-r--r--src/include/usr/isteps/istep14list.H36
-rw-r--r--src/include/usr/isteps/istep16list.H20
-rw-r--r--src/include/usr/targeting/common/utilFilter.H38
6 files changed, 80 insertions, 20 deletions
diff --git a/src/include/usr/hwas/common/deconfigGard.H b/src/include/usr/hwas/common/deconfigGard.H
index 2c974c9fb..1561c5ee6 100644
--- a/src/include/usr/hwas/common/deconfigGard.H
+++ b/src/include/usr/hwas/common/deconfigGard.H
@@ -118,6 +118,9 @@ public:
// set for SPCN initiated deconfigure
DECONFIGURED_BY_SPCN, // BASE | 0x08
+
+ // mask - these bits mean it's a PLID and not an enum
+ DECONFIGURED_BY_PLID_MASK = 0xFFFF0000,
};
/**
diff --git a/src/include/usr/initservice/initsvcstructs.H b/src/include/usr/initservice/initsvcstructs.H
index daf52bd3b..49114e5d5 100644
--- a/src/include/usr/initservice/initsvcstructs.H
+++ b/src/include/usr/initservice/initsvcstructs.H
@@ -38,7 +38,7 @@
#include <initservice/initsvcreasoncodes.H>
// This constant has a corresponding entry in src/build/tools/listdeps.pl.
-#define MAX_DEPENDENT_MODULES 6
+#define MAX_DEPENDENT_MODULES 7
namespace INITSERVICE
diff --git a/src/include/usr/isteps/istep10list.H b/src/include/usr/isteps/istep10list.H
index f284e0cf9..eea23b4f4 100644
--- a/src/include/usr/isteps/istep10list.H
+++ b/src/include/usr/isteps/istep10list.H
@@ -239,6 +239,7 @@ const DepModInfo g_istep10Dependancies = {
DEP_LIB(libporeve.so),
DEP_LIB(libbuild_winkle_images.so),
DEP_LIB(libsbe.so),
+ DEP_LIB(libproc_hwreconfig.so),
{ 0 },
}
};
diff --git a/src/include/usr/isteps/istep14list.H b/src/include/usr/isteps/istep14list.H
index 04ba0d3cd..8bb10ab89 100644
--- a/src/include/usr/isteps/istep14list.H
+++ b/src/include/usr/isteps/istep14list.H
@@ -27,7 +27,7 @@
* @file istep14list.H
*
* IStep 14 Dram Initialization
- * IPL FLow Doc v1.28 (12/03/12)
+ * IPL FLow Doc v1.41 (11/08/13)
*
* 14.1 host_startprd_dram
* : Load prd for DRAM domain
@@ -35,14 +35,14 @@
* : MSS Extent Setup
* 14.3 mss_memdiag
* : Mainstore Pattern Testing
- * 14.4 mss_scrub
- * : Start background scrub
- * 14.5 mss_thermal_init
+ * 14.4 mss_thermal_init
* : Initialize the thermal sensor
- * 14.6 proc_setup_bars
- * : Setup Memory BARs
- * 14.7 proc_pcie_config
+ * 14.5 proc_pcie_config
* : Configure the PHBs
+ * 14.6 mss_power_cleanup
+ * : Clean up any MCS/Centaurs
+ * 14.7 proc_setup_bars
+ * : Setup Memory BARs
* 14.8 proc_exit_cache_contained
* : Allow execution from memory
* 14.9 host_mpipl_service
@@ -106,9 +106,11 @@ namespace INITSERVICE
true,
}
},
+
+
{
- ISTEPNAME(14,04,"mss_scrub"),
- DRAM_INITIALIZATION::call_mss_scrub,
+ ISTEPNAME(14,04,"mss_thermal_init"),
+ DRAM_INITIALIZATION::call_mss_thermal_init,
{
START_FN,
EXT_IMAGE,
@@ -119,8 +121,8 @@ namespace INITSERVICE
{
- ISTEPNAME(14,05,"mss_thermal_init"),
- DRAM_INITIALIZATION::call_mss_thermal_init,
+ ISTEPNAME(14,05,"proc_pcie_config"),
+ DRAM_INITIALIZATION::call_proc_pcie_config,
{
START_FN,
EXT_IMAGE,
@@ -129,10 +131,9 @@ namespace INITSERVICE
}
},
-
{
- ISTEPNAME(14,06,"proc_setup_bars"),
- DRAM_INITIALIZATION::call_proc_setup_bars,
+ ISTEPNAME(14,06,"mss_power_cleanup"),
+ DRAM_INITIALIZATION::call_mss_power_cleanup,
{
START_FN,
EXT_IMAGE,
@@ -143,8 +144,8 @@ namespace INITSERVICE
{
- ISTEPNAME(14,07,"proc_pcie_config"),
- DRAM_INITIALIZATION::call_proc_pcie_config,
+ ISTEPNAME(14,07,"proc_setup_bars"),
+ DRAM_INITIALIZATION::call_proc_setup_bars,
{
START_FN,
EXT_IMAGE,
@@ -164,6 +165,8 @@ namespace INITSERVICE
true,
}
},
+
+
{
ISTEPNAME(14,09,"host_mpipl_service"),
DRAM_INITIALIZATION::call_host_mpipl_service,
@@ -182,6 +185,7 @@ namespace INITSERVICE
const DepModInfo g_istep14Dependancies = {
{
DEP_LIB(libdram_initialization.so),
+ DEP_LIB(libdram_training.so),
DEP_LIB(libdump.so),
{ 0 },
}
diff --git a/src/include/usr/isteps/istep16list.H b/src/include/usr/isteps/istep16list.H
index 77c9bcaa9..43821c786 100644
--- a/src/include/usr/isteps/istep16list.H
+++ b/src/include/usr/isteps/istep16list.H
@@ -28,13 +28,15 @@
* @file istep16list.H
*
* IStep 16 Core Activate
- * IPL FLow Doc v1.28 (12/03/12)
+ * IPL FLow Doc v1.41 (11/08/13)
*
* 16.1 host_activate_master
* : Activate master core
* 16.2 host_activate_slave_cores
* : Activate slave cores
- * 16.3 host_ipl_complete
+ * 16.3 mss_scrub
+ * : Start background scrub
+ * 16.4 host_ipl_complete
* : Notify FSP drawer ipl complete
*
* *****************************************************************
@@ -93,7 +95,19 @@ namespace INITSERVICE
{
- ISTEPNAME(16,03,"host_ipl_complete"),
+ ISTEPNAME(16,03,"mss_scrub"),
+ CORE_ACTIVATE::call_mss_scrub,
+ {
+ START_FN,
+ EXT_IMAGE,
+ NORMAL_IPL_OP,
+ false,
+ }
+ },
+
+
+ {
+ ISTEPNAME(16,04,"host_ipl_complete"),
CORE_ACTIVATE::call_host_ipl_complete,
{
START_FN,
diff --git a/src/include/usr/targeting/common/utilFilter.H b/src/include/usr/targeting/common/utilFilter.H
index 85d123780..551f4cf85 100644
--- a/src/include/usr/targeting/common/utilFilter.H
+++ b/src/include/usr/targeting/common/utilFilter.H
@@ -38,6 +38,44 @@
namespace TARGETING
{
+ /**
+ * Enum of functional states for use with calls to getChip/ChipletResources
+ */
+ enum ResourceState
+ {
+ UTIL_FILTER_ALL, // All targets
+ UTIL_FILTER_PRESENT, // Present at minimum
+ UTIL_FILTER_FUNCTIONAL // Functional targets only
+ };
+
+
+/**
+ * @brief Populate the o_vector with target chip pointers based on the
+ * requested type, and functional state.
+ *
+ * @parm[out] o_vector, reference of vector of target pointers.
+ * @parm[in] i_type, the type of the chip targets to be obtained
+ * @parm[in] i_state, Selection filter based on ResourceState enum
+ *
+ * @return N/A
+ */
+void getChipResources(TARGETING::TargetHandleList & o_vector,
+ TYPE i_type, ResourceState i_state );
+
+/**
+ * @brief Populate the o_vector with target chiplet pointers based on the
+ * requested type, and functional state.
+ *
+ * @parm[out] o_vector, reference of vector of target pointers.
+ * @parm[in] i_type, the type of the chiplet targets to be obtained
+ * @parm[in] i_state, Selection filter based on ResourceState enum
+ *
+ * @return N/A
+ */
+void getChipletResources(TARGETING::TargetHandleList & o_vector,
+ TYPE i_type, ResourceState i_state );
+
+
/**
* @brief Populate the o_vector with target chip pointers based on the
* requested type, and functional state.
OpenPOWER on IntegriCloud