summaryrefslogtreecommitdiffstats
path: root/src/usr
diff options
context:
space:
mode:
authorChristian Geddes <crgeddes@us.ibm.com>2018-08-03 14:47:23 -0500
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2018-08-08 16:06:34 -0500
commitffcc637cd404efcce9ec16bab48f3f50b32fb6a5 (patch)
tree68cec7112a165dce80062604054ddcaa50271b43 /src/usr
parentf8e8d7c203dcd6ff31459253ba42a3dbe970765e (diff)
downloadblackbird-hostboot-ffcc637cd404efcce9ec16bab48f3f50b32fb6a5.tar.gz
blackbird-hostboot-ffcc637cd404efcce9ec16bab48f3f50b32fb6a5.zip
Base targeting support for OCMB chip and MEM_PORT chiplet
In Axone we are introducing a new memory buffer known as the Open Capi Memory Buffer chip. On this chip will be a MEM_PORT chiplet(s) which will connect to the DIMM. This completes the following picture (it is expected OMIC, MCC, and OMI have been added already) MI--MCC / \ Proc--MC < __ OMI--OCMB--MEM_PORT--DIMM \ / OMIC Change-Id: I1a3e3d38978ce11fecee2ab11de83909eb440774 RTC:172970 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/63911 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r--src/usr/fapi2/plat_attr_override_sync.C6
-rw-r--r--src/usr/fapi2/plat_utils.C15
-rwxr-xr-xsrc/usr/targeting/attroverride/attrTextToBinaryBlob.C2
-rw-r--r--src/usr/targeting/common/entitypath.C4
-rwxr-xr-xsrc/usr/targeting/common/xmltohb/attribute_types.xml12
-rw-r--r--src/usr/targeting/common/xmltohb/target_types.xml49
6 files changed, 87 insertions, 1 deletions
diff --git a/src/usr/fapi2/plat_attr_override_sync.C b/src/usr/fapi2/plat_attr_override_sync.C
index 8b72b4299..45c09924a 100644
--- a/src/usr/fapi2/plat_attr_override_sync.C
+++ b/src/usr/fapi2/plat_attr_override_sync.C
@@ -216,6 +216,12 @@ void directOverride()
case fapi2::TARGET_TYPE_MCC:
l_targetType = TARGETING::TYPE_MCC;
break;
+ case fapi2::TARGET_TYPE_OCMB_CHIP:
+ l_targetType = TARGETING::TYPE_OCMB_CHIP;
+ break;
+ case fapi2::TARGET_TYPE_MEM_PORT:
+ l_targetType = TARGETING::TYPE_MEM_PORT;
+ break;
default:
l_targetType = TARGETING::TYPE_NA;
}
diff --git a/src/usr/fapi2/plat_utils.C b/src/usr/fapi2/plat_utils.C
index cb62eb45e..8851f982b 100644
--- a/src/usr/fapi2/plat_utils.C
+++ b/src/usr/fapi2/plat_utils.C
@@ -703,6 +703,14 @@ void xlateTargetType(const fapi2::TargetType i_targetType,
o_class = TARGETING::CLASS_UNIT;
o_type = TARGETING::TYPE_MCC;
break;
+ case fapi2::TARGET_TYPE_OCMB_CHIP:
+ o_class = TARGETING::CLASS_CHIP;
+ o_type = TARGETING::TYPE_OCMB_CHIP;
+ break;
+ case fapi2::TARGET_TYPE_MEM_PORT:
+ o_class = TARGETING::CLASS_UNIT;
+ o_type = TARGETING::TYPE_MEM_PORT;
+ break;
default:
o_class = TARGETING::CLASS_NA;
o_type = TARGETING::TYPE_NA;
@@ -752,6 +760,13 @@ bool isPhysParentChild(const TargetType i_parentType,
l_result = true;
}
}
+ else if (i_parentType == TARGET_TYPE_OCMB_CHIP)
+ {
+ if ( (i_childType & (TARGET_TYPE_MEM_PORT)) != 0 )
+ {
+ l_result = true;
+ }
+ }
return l_result;
}
diff --git a/src/usr/targeting/attroverride/attrTextToBinaryBlob.C b/src/usr/targeting/attroverride/attrTextToBinaryBlob.C
index ae0013b90..5b795e8e2 100755
--- a/src/usr/targeting/attroverride/attrTextToBinaryBlob.C
+++ b/src/usr/targeting/attroverride/attrTextToBinaryBlob.C
@@ -133,6 +133,8 @@ TargStrToType CHIP_UNIT_TYPE_TARG_STR_TO_TYPE [] =
{"omi" , fapi2::TARGET_TYPE_OMI , TARGETING::TYPE_OMI},
{"omic" , fapi2::TARGET_TYPE_OMIC , TARGETING::TYPE_OMIC},
{"mcc" , fapi2::TARGET_TYPE_MCC , TARGETING::TYPE_MCC},
+ {"ocmb" , fapi2::TARGET_TYPE_OCMB_CHIP , TARGETING::TYPE_OCMB_CHIP},
+ {"memport" , fapi2::TARGET_TYPE_MEM_PORT , TARGETING::TYPE_MEM_PORT},
{"LAST" , 0 , 0}
};
diff --git a/src/usr/targeting/common/entitypath.C b/src/usr/targeting/common/entitypath.C
index 95e9ce10c..9697dde98 100644
--- a/src/usr/targeting/common/entitypath.C
+++ b/src/usr/targeting/common/entitypath.C
@@ -477,6 +477,10 @@ const char* EntityPath::pathElementTypeAsString(
return "OMIC";
case TYPE_MCC:
return "MCC";
+ case TYPE_OCMB_CHIP:
+ return "OCBM_CHIP";
+ case TYPE_MEM_PORT:
+ return "MEM_PORT";
// case TYPE_FSI_LINK:
// return "FSI-link";
// case TYPE_CFAM:
diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml
index 1bc12de7a..0158ac626 100755
--- a/src/usr/targeting/common/xmltohb/attribute_types.xml
+++ b/src/usr/targeting/common/xmltohb/attribute_types.xml
@@ -5090,8 +5090,15 @@
<value>74</value>
</enumerator>
<enumerator>
- <name>LAST_IN_RANGE</name>
+ <name>OCMB_CHIP</name>
<value>75</value>
+ </enumerator> <enumerator>
+ <name>MEM_PORT</name>
+ <value>76</value>
+ </enumerator>
+ <enumerator>
+ <name>LAST_IN_RANGE</name>
+ <value>77</value>
</enumerator>
<id>TYPE</id>
</enumerationType>
@@ -5130,6 +5137,9 @@
<value>48</value>
</enumerator>
<enumerator>
+ <name>EXPLORER</name>
+ </enumerator>
+ <enumerator>
<name>JEDEC</name>
<value>80</value>
</enumerator>
diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml
index a868d5a47..9bc1a3fc7 100644
--- a/src/usr/targeting/common/xmltohb/target_types.xml
+++ b/src/usr/targeting/common/xmltohb/target_types.xml
@@ -331,6 +331,55 @@
<attribute><id>PRD_HWP_PLID</id></attribute>
</targetType>
+<!-- Generic OCMB -->
+<targetType>
+ <id>chip-ocmb</id>
+ <parent>chip</parent>
+ <attribute>
+ <default>OCMB_CHIP</default>
+ <id>TYPE</id>
+ </attribute>
+ <attribute>
+ <default>1</default>
+ <id>DECONFIG_GARDABLE</id>
+ </attribute>
+ <attribute>
+ <default>0x00000033</default>
+ <id>HWAS_STATE_CHANGED_SUBSCRIPTION_MASK</id>
+ </attribute>
+ <attribute>
+ <id>FRU_ID</id>
+ </attribute>
+</targetType>
+
+<!-- Explorer OCMB -->
+<targetType>
+ <id>chip-ocmb-explorer</id>
+ <parent>chip-ocmb</parent>
+ <attribute>
+ <default>EXPLORER</default>
+ <id>MODEL</id>
+ </attribute>
+</targetType>
+
+<!-- mem_port -->
+<targetType>
+ <id>unit-mem_port</id>
+ <parent>unit</parent>
+ <attribute>
+ <id>TYPE</id>
+ <default>MEM_PORT</default>
+ </attribute>
+ <attribute><id>DECONFIG_GARDABLE</id><default>1</default></attribute>
+ <attribute><id>HWAS_STATE_CHANGED_SUBSCRIPTION_MASK</id>
+ <default>0x00000033</default>
+ </attribute>
+ <attribute>
+ <id>CDM_DOMAIN</id>
+ <default>MEM</default>
+ </attribute>
+</targetType>
+
<targetType>
<id>chip-membuf-centaur</id>
<parent>chip</parent>
OpenPOWER on IntegriCloud