summaryrefslogtreecommitdiffstats
path: root/src/include/usr
diff options
context:
space:
mode:
authorMatt Derksen <mderkse1@us.ibm.com>2019-02-20 12:59:06 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2019-02-28 08:35:46 -0600
commit40cbc0048661edaa492fcc4ee60837a4c75210cd (patch)
treed07dec1960eecf1729b9d9f8cacde6c86591f629 /src/include/usr
parent1f4d5ba3b545b81818b8d52a7feae27a2449ecfe (diff)
downloadtalos-hostboot-40cbc0048661edaa492fcc4ee60837a4c75210cd.tar.gz
talos-hostboot-40cbc0048661edaa492fcc4ee60837a4c75210cd.zip
OpenPOWER support for native and compatibility mode for DD2.3
Witherspoon (OpenPOWER) will run in native mode, which means all the processors have to be at the same level (all DD2.2 or all DD2.3). Other systems (ZZ) we support running in a mixed configuration where DD2.3 processors will be run in 2.2 compatibility mode. We also need to support arbitrary OP systems that might want to run in compatibility mode even without mixed parts. See src/usr/hwas/common/README.md for the rules and resulting mode. Change-Id: I80fb98e2687b945ba506f2d75b1533884443e10b RTC:201485 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/72214 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@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/include/usr')
-rw-r--r--src/include/usr/hwas/common/hwas_reasoncodes.H4
-rw-r--r--src/include/usr/targeting/common/util.H22
-rw-r--r--src/include/usr/targeting/targplatutil.H16
3 files changed, 27 insertions, 15 deletions
diff --git a/src/include/usr/hwas/common/hwas_reasoncodes.H b/src/include/usr/hwas/common/hwas_reasoncodes.H
index 09e0e2a56..7b793ecb3 100644
--- a/src/include/usr/hwas/common/hwas_reasoncodes.H
+++ b/src/include/usr/hwas/common/hwas_reasoncodes.H
@@ -40,6 +40,7 @@ namespace HWAS
MOD_IS_DESCENDANT_FUNCTIONAL = 0x09,
MOD_FIND_RULES_FOR_TARGET = 0x0A,
MOD_DISCOVER_TARGETS = 0x0B,
+ MOD_UPDATE_PROC_COMPAT_RISK_LEVEL = 0x0C,
};
enum HwasReasonCode
@@ -74,6 +75,9 @@ namespace HWAS
RC_SYSAVAIL_NO_MEMORY_PRESENT = HWAS_COMP_ID | 0x18,
RC_PG_INDEX_INVALID = HWAS_COMP_ID | 0x19,
RC_PARTIAL_GOOD_INFORMATION = HWAS_COMP_ID | 0x1A,
+ RC_FORCED_COMPAT_INVALID_LEVEL = HWAS_COMP_ID | 0x1B,
+ RC_FORCED_NATIVE_INVALID_MIXED_EC = HWAS_COMP_ID | 0x1C,
+ RC_FORCED_NATIVE_OF_INCOMPATIBLE_RISK = HWAS_COMP_ID | 0x1D,
};
enum HwasPlatUserDetailsTypes
diff --git a/src/include/usr/targeting/common/util.H b/src/include/usr/targeting/common/util.H
index e26e0c795..aaf576919 100644
--- a/src/include/usr/targeting/common/util.H
+++ b/src/include/usr/targeting/common/util.H
@@ -83,6 +83,28 @@ namespace PROPERTIES
}
+namespace UTIL
+{
+ // Better definition of RISK_LEVEL attribute settings
+ // WARNING: addition of risk levels that don't support SMF will have a
+ // significant effect on the behavior of SMF code. Please ensure that
+ // (at least) src/usr/secureboot/smf/smf_utils.C is updated
+ // accordingly!
+ typedef enum
+ {
+ // Compatibility modes
+ P9N22_P9C12_RUGBY_FAVOR_SECURITY = 0x00,
+ P9N22_P9C12_RUGBY_FAVOR_PERFORMANCE = 0x01,
+ P9N22_NO_RUGBY_MITIGATIONS = 0x02,
+ P9N22_P9N23_JAVA_PERF = 0x03,
+
+ // Native modes
+ P9N23_P9C13_NATIVE_MODE_MINIMUM = 0x04,
+ P9N23_P9C13_NATIVE_SMF_RUGBY_FAVOR_SECURITY = 0x04,
+ P9N23_P9C13_NATIVE_SMF_RUGBY_FAVOR_PERFORMANCE = 0x05,
+ } Risk_level;
+}
+
/**
* @brief Checks to see if we are running in a hardware simulation
* environment, i.e. VPO/VBU (not Simics)
diff --git a/src/include/usr/targeting/targplatutil.H b/src/include/usr/targeting/targplatutil.H
index 34d8bebc0..1f010f852 100644
--- a/src/include/usr/targeting/targplatutil.H
+++ b/src/include/usr/targeting/targplatutil.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2013,2018 */
+/* Contributors Listed Below - COPYRIGHT 2013,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -58,20 +58,6 @@ namespace UTIL
// is reserved for invalid sensor
static const uint16_t INVALID_IPMI_SENSOR = 0xFF;
- // WARNING: addition of risk levels that don't support SMF will have a
- // significant effect on the behavior of SMF code. Please ensure that
- // (at least) src/usr/secureboot/smf/smf_utils.C is updated
- // accordingly!
- typedef enum
- {
- P9N22_P9C12_RUGBY_FAVOR_SECURITY = 0x00,
- P9N22_P9C12_RUGBY_FAVOR_PERFORMANCE = 0x01,
- P9N22_NO_RUGBY_MITIGATIONS = 0x02,
- P9N22_P9N23_JAVA_PERF = 0x03,
- P9N23_P9C13_NATIVE_SMF_RUGBY_FAVOR_SECURITY = 0x04,
- P9N23_P9C13_NATIVE_SMF_RUGBY_FAVOR_PERFORMANCE = 0x05,
- } Risk_level;
-
/**
* @brief Creates a standard error log of tracing type
*
OpenPOWER on IntegriCloud