summaryrefslogtreecommitdiffstats
path: root/src/include/usr/fapi2
diff options
context:
space:
mode:
authorChristian Geddes <crgeddes@us.ibm.com>2018-08-30 10:52:10 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-09-18 21:20:39 -0500
commitbbad6ad29aab4c1aab253d3a33adecffb0e37960 (patch)
treec02b958e02052a6919b220660ac46ead9b56c5d1 /src/include/usr/fapi2
parent5e3f78a64c7c22454b06e215ab16be4337bf455f (diff)
downloadtalos-hostboot-bbad6ad29aab4c1aab253d3a33adecffb0e37960.tar.gz
talos-hostboot-bbad6ad29aab4c1aab253d3a33adecffb0e37960.zip
Add OCMB_CHIP and MEM_PORT fapi2 test cases
This commit adds test cases for new OCMB_CHIP and MEM_PORT target types that are being added to support the new explorer memory buffer used in Axone. Also this commit fixed up the Axone target generation which was missing a break on the inner loop and removed some changes that were made in target.H which was allowing invalid parets to be looked up for dimm targets. RTC: 172970 Change-Id: I7564fbcfcdde2177ece934015fe40c79011f559f Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/65511 Tested-by: Jenkins Server <pfd-jenkins+hostboot@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> Reviewed-by: Matt Derksen <mderkse1@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/fapi2')
-rw-r--r--src/include/usr/fapi2/target.H61
1 files changed, 14 insertions, 47 deletions
diff --git a/src/include/usr/fapi2/target.H b/src/include/usr/fapi2/target.H
index 451637196..b67c1187d 100644
--- a/src/include/usr/fapi2/target.H
+++ b/src/include/usr/fapi2/target.H
@@ -445,27 +445,13 @@ inline Target<K_PARENT, V> Target<T_SELF, V>::getParent(void) const
// Specific parent checks for each TargetType
// valid parents for DIMM
- // DIMM -> MEMPORT
- // DIMM -> OCMB
- // DIMM -> OMI
- // DIMM -> OMIC
- // DIMM -> MCC
- // DIMM -> MI
- // DIMM -> MC
- // DIMM -> PROC_CHIP
// DIMM -> MCA
// DIMM -> MBA
+ // DIMM -> MEM_PORT
static_assert(!((T_SELF == fapi2::TARGET_TYPE_DIMM) &&
(K_PARENT != fapi2::TARGET_TYPE_MCA) &&
(K_PARENT != fapi2::TARGET_TYPE_MBA) &&
- (K_PARENT != fapi2::TARGET_TYPE_OCMB_CHIP) &&
- (K_PARENT != fapi2::TARGET_TYPE_SYSTEM) &&
- (K_PARENT != fapi2::TARGET_TYPE_OMI) &&
- (K_PARENT != fapi2::TARGET_TYPE_MCC) &&
- (K_PARENT != fapi2::TARGET_TYPE_MI) &&
- (K_PARENT != fapi2::TARGET_TYPE_MC) &&
- (K_PARENT != fapi2::TARGET_TYPE_OMIC) &&
- (K_PARENT != fapi2::TARGET_TYPE_PROC_CHIP)),
+ (K_PARENT != fapi2::TARGET_TYPE_MEM_PORT)),
"improper parent of fapi2::TARGET_TYPE_DIMM");
// valid parents for PROC
@@ -485,39 +471,15 @@ inline Target<K_PARENT, V> Target<T_SELF, V>::getParent(void) const
// valid parents for OCMB
// OCMB -> SYSTEM
// OCMB -> OMI
- // OCMB -> MCC
- // OCMB -> MI
- // OCMB -> MC
- // OCMB -> OMIC
- // OCMB -> PROC_CHIP
static_assert(!((T_SELF == fapi2::TARGET_TYPE_OCMB_CHIP) &&
(K_PARENT != fapi2::TARGET_TYPE_SYSTEM) &&
- (K_PARENT != fapi2::TARGET_TYPE_OMI) &&
- (K_PARENT != fapi2::TARGET_TYPE_MCC) &&
- (K_PARENT != fapi2::TARGET_TYPE_MI) &&
- (K_PARENT != fapi2::TARGET_TYPE_MC) &&
- (K_PARENT != fapi2::TARGET_TYPE_OMIC) &&
- (K_PARENT != fapi2::TARGET_TYPE_PROC_CHIP)),
+ (K_PARENT != fapi2::TARGET_TYPE_OMI)),
"improper parent of fapi2::TARGET_TYPE_OCMB_CHIP");
// valid parents for MEM_PORT
- // MEM_PORT -> SYSTEM
// MEM_PORT -> OCMB_CHIP
- // MEM_PORT -> OMI
- // MEM_PORT -> MCC
- // MEM_PORT -> MI
- // MEM_PORT -> MC
- // MEM_PORT -> OMIC
- // MEM_PORT -> PROC_CHIP
static_assert(!((T_SELF == fapi2::TARGET_TYPE_MEM_PORT) &&
- (K_PARENT != fapi2::TARGET_TYPE_SYSTEM) &&
- (K_PARENT != fapi2::TARGET_TYPE_OCMB_CHIP) &&
- (K_PARENT != fapi2::TARGET_TYPE_OMI) &&
- (K_PARENT != fapi2::TARGET_TYPE_MCC) &&
- (K_PARENT != fapi2::TARGET_TYPE_MI) &&
- (K_PARENT != fapi2::TARGET_TYPE_MC) &&
- (K_PARENT != fapi2::TARGET_TYPE_OMIC) &&
- (K_PARENT != fapi2::TARGET_TYPE_PROC_CHIP)),
+ (K_PARENT != fapi2::TARGET_TYPE_OCMB_CHIP)),
"improper parent of fapi2::TARGET_TYPE_MEM_PORT");
// valid parents for EX
@@ -845,10 +807,11 @@ inline std::vector<Target<K_CHILD, V> >
// valid children for system
// SYSTEM -> PROC
// SYSTEM -> MEMBUF
- // SYSTEM -> DIMM ??? disabled for now
+ // SYSTEM -> OCMB_CHIP
static_assert(!((T_SELF == fapi2::TARGET_TYPE_SYSTEM) &&
(K_CHILD != fapi2::TARGET_TYPE_PROC_CHIP) &&
- (K_CHILD != fapi2::TARGET_TYPE_MEMBUF_CHIP)),
+ (K_CHILD != fapi2::TARGET_TYPE_MEMBUF_CHIP) &&
+ (K_CHILD != fapi2::TARGET_TYPE_OCMB_CHIP)),
"improper child of fapi2::TARGET_TYPE_SYSTEM");
// valid children for EQ
@@ -917,6 +880,12 @@ inline std::vector<Target<K_CHILD, V> >
(K_CHILD != fapi2::TARGET_TYPE_OMI)),
"improper child of fapi2::TARGET_TYPE_MCC");
+ // valid children for OMI
+ // OMI -> OCMB
+ static_assert(!((T_SELF == fapi2::TARGET_TYPE_OMI) &&
+ (K_CHILD != fapi2::TARGET_TYPE_OCMB_CHIP)),
+ "improper child of fapi2::TARGET_TYPE_OMI");
+
// valid children for OMIC
// OMIC -> OMI
static_assert(!((T_SELF == fapi2::TARGET_TYPE_OMIC) &&
@@ -925,10 +894,8 @@ inline std::vector<Target<K_CHILD, V> >
// valid children for OCMB
// OCMB -> MEM_PORT
- // OCMB -> DIMM
static_assert(!((T_SELF == fapi2::TARGET_TYPE_OCMB_CHIP) &&
- (K_CHILD != fapi2::TARGET_TYPE_MEM_PORT) &&
- (K_CHILD != fapi2::TARGET_TYPE_DIMM)),
+ (K_CHILD != fapi2::TARGET_TYPE_MEM_PORT)),
"improper child of fapi2::TARGET_TYPE_OCMB_CHIP");
// valid children for MEM_PORT
OpenPOWER on IntegriCloud