summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Geddes <crgeddes@us.ibm.com>2018-05-18 15:42:15 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-06-15 10:30:37 -0400
commit5090c197292cdd0ec4ad8e416020e5229812cb65 (patch)
tree5a935937e33acf80ae8f1973d03a793ae0c0f892
parenteae5dde56faec2a392e12b178639b887005ab54f (diff)
downloadtalos-hostboot-5090c197292cdd0ec4ad8e416020e5229812cb65.tar.gz
talos-hostboot-5090c197292cdd0ec4ad8e416020e5229812cb65.zip
Deprecate legacy ATTR_MBA_PORT/ATTR_MBA_DIMM
There are currently two competing sets of attributes related to the DIMM position. - Legacy (P8) MBA_PORT/MBA_DIMM - New (P9) CEN_MBA_PORT/CEN_MBA_DIMM These two sets of attributes are not currently being populated with the same data in all of the MRW xml files. The P9 HWPs are using the CEN_ versions but there is a lot of code on the FSP that is still using the old versions. Additionally, the Nimbus MRW XMLs are using MBA_PORT to represent the dimm position behind the MCA (even though there is only a single port on the MCA and MBA is erroneous). This commit attempts to consolidate things into a new set of more generic (and hopefully more descriptive) attributes to use for all system types. The MRW parsing logic has been modified to consume whatever data it can to populate all 3 sets of data with the same values. Eventually we will deprecate the 2 previous attribute sets once we've cleaned all the existing files up. The new attributes are: - MEM_PORT - POS_ON_MEM_PORT CQ: SW430317 Change-Id: If63929d78dcaacc1120709a659d6094ce576918d Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59077 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: Andrew J. Geissler <andrewg@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
-rw-r--r--src/usr/htmgt/htmgt_utility.C10
-rw-r--r--src/usr/targeting/common/Targets.pm169
-rwxr-xr-xsrc/usr/targeting/common/processMrw.pl53
-rwxr-xr-xsrc/usr/targeting/common/xmltohb/attribute_types.xml38
-rw-r--r--src/usr/targeting/common/xmltohb/hb_customized_attrs.xml6
-rw-r--r--src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml124
-rw-r--r--src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml124
-rw-r--r--src/usr/targeting/common/xmltohb/target_types.xml6
8 files changed, 312 insertions, 218 deletions
diff --git a/src/usr/htmgt/htmgt_utility.C b/src/usr/htmgt/htmgt_utility.C
index aabe6e18e..79aa96e77 100644
--- a/src/usr/htmgt/htmgt_utility.C
+++ b/src/usr/htmgt/htmgt_utility.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2014,2017 */
+/* Contributors Listed Below - COPYRIGHT 2014,2018 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -164,15 +164,15 @@ namespace HTMGT
{
//To make the OCC DIMM # 0 - 7: 0bABC
// A: MBA ATTR_CHIP_UNIT: 0 or 1
- // B: DIMM ATTR_MBA_PORT: 0 or 1
- // C: DIMM ATTR_MBA_DIMM: 0 or 1
+ // B: DIMM ATTR_MEM_PORT: 0 or 1
+ // C: DIMM ATTR_POS_ON_MEM_PORT: 0 or 1
//Note: No CDIMM systems in plan. May need to revisit
//this if there are any as OCC may not care about logical DIMMs.
const uint8_t mbaUnit = i_mba->getAttr<ATTR_CHIP_UNIT>();
- const uint8_t mbaPort = i_dimm->getAttr<ATTR_MBA_PORT>();
- const uint8_t mbaDIMM = i_dimm->getAttr<ATTR_MBA_DIMM>();
+ const uint8_t mbaPort = i_dimm->getAttr<ATTR_MEM_PORT>();
+ const uint8_t mbaDIMM = i_dimm->getAttr<ATTR_POS_ON_MEM_PORT>();
TMGT_DBG("DIMM 0x%X unit %d port %d pos %d = %d",
i_dimm->getAttr<ATTR_HUID>(),
diff --git a/src/usr/targeting/common/Targets.pm b/src/usr/targeting/common/Targets.pm
index ffdabdc41..33cab8d6b 100644
--- a/src/usr/targeting/common/Targets.pm
+++ b/src/usr/targeting/common/Targets.pm
@@ -48,9 +48,10 @@ use constant
NUM_PROCS_PER_GROUP => 4,
DIMMS_PER_PROC => 64, # Cumulus
DIMMS_PER_DMI => 8, # Cumulus
- DIMMS_PER_MBAPORT => 4,# Cumulus
+ DIMMS_PER_MBA => 4,# Cumulus
MAX_MCS_PER_PROC => 4, # 4 MCS per Nimbus
MBA_PER_MEMBUF => 2,
+ MAX_DIMMS_PER_MBA_PORT => 2,
};
@@ -761,7 +762,7 @@ sub buildAffinity
elsif ($type eq "MCA")
{
my $ddrs = $self->findConnections($target,"DDR4","");
- $self->processDimms($ddrs, $sys_pos, $node_phys, $node, $proc);
+ $self->processMcaDimms($ddrs, $sys_pos, $node_phys, $node, $proc);
}
elsif ($type eq "PROC")
@@ -1335,7 +1336,7 @@ sub getPervasiveForUnit
return $pervasive
}
-sub processDimms
+sub processMcaDimms
{
my $self = shift;
my $ddrs = shift;
@@ -1351,8 +1352,6 @@ sub processDimms
foreach my $dimms (@{$ddrs->{CONN}})
{
my $ddr = $dimms->{SOURCE};
- my $port_num = $self->getAttribute($ddr,"MBA_PORT");
- my $dimm_num = $self->getAttribute($ddr,"MBA_DIMM");
my $dimm=$dimms->{DEST_PARENT};
#proc->mcbist->mcs->mca->ddr
@@ -1370,9 +1369,43 @@ sub processDimms
my $mcbist = $self->getAttribute($mcbist_target, "CHIP_UNIT");
my $dimm_pos= $self->getAttribute($dimm_connector_tgt,"POSITION");
+ #The port/dimm attributes have been swizzled too many times and
+ # now they no longer make sense. Until everyone is on the same
+ # page we will replicate everything as needed.
+ my $dimm_num = 0;
+ my $port_num = 0; # MCA only has 1 port
+
+ # Eventually we will converge on a generic name for all
+ # configurations that the MRW will use.
+ if( !$self->isBadAttribute($ddr, "POS_ON_MEM_PORT") )
+ {
+ $dimm_num = $self->getAttribute($ddr,"POS_ON_MEM_PORT");
+ }
+ # Legacy OP systems are using MBA_PORT to represent the dimm
+ # position within the port, going to remap that to keep that
+ # support in place.
+ elsif( !$self->isBadAttribute($ddr, "MBA_PORT") )
+ {
+ $dimm_num = $self->getAttribute($ddr,"MBA_PORT");
+ }
+ else
+ {
+ print "ERROR: No port specified for dimm $ddr\n";
+ $self->myExit(4);
+ }
+
+ # Write out all the attributes that someone might still be using
+ $self->setAttribute($dimm, "CEN_MBA_PORT",$port_num); #unused
+ $self->setAttribute($dimm, "MBA_PORT",$port_num); #legacy
+ $self->setAttribute($dimm, "MEM_PORT",$port_num); #converged
+ $self->setAttribute($dimm, "CEN_MBA_DIMM",$dimm_num); #unused
+ $self->setAttribute($dimm, "MBA_DIMM",$dimm_num); #legacy
+ $self->setAttribute($dimm, "POS_ON_MEM_PORT",$dimm_num); #converged
+
+
$self->setAttribute($dimm, "AFFINITY_PATH",
$self->getAttribute($mcbist_target, "AFFINITY_PATH")
- . "/mcs-$mcs/mca-$mca/dimm-$port_num"
+ . "/mcs-$mcs/mca-$mca/dimm-$dimm_num"
);
$self->setAttribute($dimm, "PHYS_PATH",
@@ -1383,8 +1416,6 @@ sub processDimms
$self->setAttribute($dimm, "POSITION", $dimm_pos);
$self->setAttribute($dimm, "VPD_REC_NUM", $dimm_pos);
$self->setAttribute($dimm, "REL_POS", $port_num);
- $self->setAttribute($dimm, "MBA_DIMM", $port_num); #which dimm
- $self->setAttribute($dimm, "MBA_PORT", 0); #0, each MCA is a port
$self->setAttribute($dimm, "LOCATION_CODE",$loc_code);
## set all FAPI_POS
@@ -1583,7 +1614,7 @@ sub processMc
$self->setAttribute($membuf_child, "FAPI_POS", $fapi_pos);
$self->setAttribute($membuf_child, "ORDINAL_ID", $fapi_pos);
- $self->setAttribute($membuf_child, "REL_POS", $mba_offset);
+ $self->setAttribute($membuf_child, "REL_POS", $mba);
$self->setAttribute($membuf_child, "POSITION", $mba_offset);
$self->setHuid($membuf_child, $sys, $node);
@@ -1603,43 +1634,37 @@ sub processMc
foreach my $dimms (@{$ddrs->{CONN}})
{
my $ddr = $dimms->{SOURCE};
- my $port_num = $self->getAttribute($ddr,"MBA_PORT");
- my $dimm_num = $self->getAttribute($ddr,"MBA_DIMM");
my $dimm=$dimms->{DEST_PARENT};
- $self->setAttribute($dimm,"MBA_PORT",$port_num);
- $self->setAttribute($dimm,"MBA_DIMM",$dimm_num);
$self->setAttribute($dimm,"CLASS","LOGICAL_CARD");
- #Centaur/Membufs use CEN_MBA_PORT and not MBA_PORT
- #For now, support both.
- if (!$self->isBadAttribute($ddr, "CEN_MBA_PORT"))
- {
- $port_num = $self->getAttribute($ddr,"CEN_MBA_PORT");
- }
+ #We will converge on POS_ON_MEM_PORT/MEM_PORT eventually, but
+ # we are leaving in support for everything for now
+ my $port_num = getDimmPort( $self, $ddr );
+ $self->setAttribute($dimm, "CEN_MBA_PORT",$port_num); #hwp
+ $self->setAttribute($dimm, "MBA_PORT",$port_num); #legacy
+ $self->setAttribute($dimm, "MEM_PORT",$port_num); #converged
- if (!$self->isBadAttribute($ddr, "CEN_MBA_DIMM"))
- {
- $dimm_num = $self->getAttribute($ddr,"CEN_MBA_DIMM");
- }
+ my $dimm_num = getDimmPos( $self, $ddr );
+ $self->setAttribute($dimm, "CEN_MBA_DIMM",$dimm_num); #hwp
+ $self->setAttribute($dimm, "MBA_DIMM",$dimm_num); #legacy
+ $self->setAttribute($dimm, "POS_ON_MEM_PORT",$dimm_num); #converged
- $self->setAttribute($dimm,"CEN_MBA_PORT",$port_num);
- $self->setAttribute($dimm,"CEN_MBA_DIMM",$dimm_num);
my $aff_pos = DIMMS_PER_PROC*$proc+
DIMMS_PER_DMI*$dmi_num+
- DIMMS_PER_MBAPORT*$mba+
- $port_num + 2*$dimm_num;
+ DIMMS_PER_MBA*$mba+
+ MAX_DIMMS_PER_MBA_PORT*$port_num + $dimm_num;
my $fapi_pos =
(($node * $maxInstance{"PROC"}) + $proc ) * DIMMS_PER_PROC +
DIMMS_PER_DMI*$dmi_num+
- DIMMS_PER_MBAPORT*$mba+
- $port_num + 2*$dimm_num;
+ DIMMS_PER_MBA*$mba+
+ MAX_DIMMS_PER_MBA_PORT*$port_num + $dimm_num;
#unique offset per system
my $dimm_ordinal_id = (($node * $maxInstance{"PROC"}) + $proc ) * DIMMS_PER_PROC +
DIMMS_PER_DMI*$dmi_num+
- DIMMS_PER_MBAPORT*$mba+
- $port_num + 2*$dimm_num;
+ DIMMS_PER_MBA*$mba+
+ MAX_DIMMS_PER_MBA_PORT*$port_num + $dimm_num;
$self->setAttribute($dimm, "AFFINITY_PATH",
$membuf_aff . "/mba-$mba/dimm-$dimmPos" );
@@ -1658,7 +1683,9 @@ sub processMc
$self->setAttribute($dimm, "POSITION", $aff_pos);
- $self->setAttribute($dimm, "REL_POS", $aff_pos);
+ $self->setAttribute($dimm, "REL_POS",
+ MAX_DIMMS_PER_MBA_PORT*$port_num +
+ $dimm_num);
$self->setAttribute($dimm, "VPD_REC_NUM", $self->{dimm_tpos});
@@ -2458,6 +2485,84 @@ sub getSystemName
return $self->getAttribute("/".$self->{TOP_LEVEL}, "SYSTEM_NAME");
}
+#--------------------------------------------------
+## Utility function to process all of the existing
+## types of dimm port attributes that we have
+## supported.
+sub getDimmPort
+{
+ my $self = shift;
+
+ # input can be a dimm connector or a ddr target
+ # data exist on the dimm_port in the xml but
+ # we mirror it to the ddr while processing (somewhere...)
+ my $targ = shift;
+
+ # output values
+ my $port_num = 0;
+
+ #We will converge on MEM_PORT eventually, but
+ # we are leaving in support for everything for now
+ if (!$self->isBadAttribute($targ, "MEM_PORT"))
+ {
+ $port_num = $self->getAttribute($targ,"MEM_PORT");
+ }
+ elsif (!$self->isBadAttribute($targ, "CEN_MBA_PORT"))
+ {
+ $port_num = $self->getAttribute($targ,"CEN_MBA_PORT");
+ }
+ elsif( !$self->isBadAttribute($targ, "MBA_PORT"))
+ {
+ $port_num = $self->getAttribute($targ,"MBA_PORT");
+ }
+ else
+ {
+ print("ERROR: There is no memory port defined for target $targ\n");
+ $self->myExit(4);
+ }
+
+ return $port_num;
+}
+
+#--------------------------------------------------
+## Utility function to process all of the existing
+## types of dimm port position attributes that we have
+## supported.
+sub getDimmPos
+{
+ my $self = shift;
+
+ # input can be a dimm connector or a ddr target
+ # data exist on the dimm_port in the xml but
+ # we mirror it to the ddr while processing (somewhere...)
+ my $targ = shift;
+
+ # output values
+ my $dimm_num = 0;
+
+ #We will converge on POS_ON_MEM_PORT eventually, but
+ # we are leaving in support for everything for now
+ if (!$self->isBadAttribute($targ, "POS_ON_MEM_PORT"))
+ {
+ $dimm_num = $self->getAttribute($targ,"POS_ON_MEM_PORT");
+ }
+ elsif (!$self->isBadAttribute($targ, "CEN_MBA_DIMM"))
+ {
+ $dimm_num = $self->getAttribute($targ,"CEN_MBA_DIMM");
+ }
+ elsif( !$self->isBadAttribute($targ, "MBA_DIMM"))
+ {
+ $dimm_num = $self->getAttribute($targ,"MBA_DIMM");
+ }
+ else
+ {
+ print("ERROR: CEN_MBA_DIMM not defined for dimm $targ\n");
+ $self->myExit(4);
+ }
+
+ return $dimm_num;
+}
+
sub myExit
{
my $self = shift;
diff --git a/src/usr/targeting/common/processMrw.pl b/src/usr/targeting/common/processMrw.pl
index 0f28c8ff5..7e96a61bf 100755
--- a/src/usr/targeting/common/processMrw.pl
+++ b/src/usr/targeting/common/processMrw.pl
@@ -2212,39 +2212,37 @@ sub processMembufVpdAssociation
## Finds I2C connections to DIMM and creates EEPROM attributes
## FYI: I had to handle DMI busses in framework because they
## define affinity path
-#@TODO RTC:163874 -- centaur support
sub processMembuf
{
my $targetObj = shift;
- my $target = shift;
- if ($targetObj->isBadAttribute($target, "PHYS_PATH", ""))
+ my $membufTarg = shift;
+ if ($targetObj->isBadAttribute($membufTarg, "PHYS_PATH", ""))
{
##dmi is probably not connected. will get caught in error checking
return;
}
- processMembufVpdAssociation($targetObj,$target);
+ processMembufVpdAssociation($targetObj,$membufTarg);
## find port mapping
my %dimm_portmap;
- foreach my $child (@{$targetObj->getTargetChildren($target)})
+ foreach my $child (@{$targetObj->getTargetChildren($membufTarg)})
{
if ($targetObj->getType($child) eq "MBA")
{
+ # find this MBA's position relative to the membuf
my $mba_num = $targetObj->getAttribute($child,"MBA_NUM");
- my $dimms=$targetObj->findConnections($child,"DDR4","");
+ # follow the DDR4 bus connection to find the 'ddr' targets
+ my $ddrs = $targetObj->findConnections($child,"DDR4","");
- if ($dimms ne "")
+ if ($ddrs ne "")
{
- foreach my $dimm (@{$dimms->{CONN}})
+ foreach my $ddr (@{$ddrs->{CONN}})
{
- my $port_num = $targetObj->getAttribute(
- $dimm->{SOURCE},"MBA_PORT");
- my $dimm_num = $targetObj->getAttribute(
- $dimm->{SOURCE},"MBA_DIMM");
-
+ my $port_num = $targetObj->getDimmPort($ddr->{SOURCE});
+ my $dimm_num = $targetObj->getDimmPos($ddr->{SOURCE});
my $map = oct("0b".$mba_num.$port_num.$dimm_num);
- $dimm_portmap{$dimm->{DEST_PARENT}} = $map;
+ $dimm_portmap{$ddr->{DEST_PARENT}} = $map;
}
}
}
@@ -2253,7 +2251,7 @@ sub processMembuf
## Process MEMBUF to DIMM I2C connections
my @addr_map=('0','0','0','0','0','0','0','0');
- my $dimms=$targetObj->findConnections($target,"I2C","SPD");
+ my $dimms=$targetObj->findConnections($membufTarg,"I2C","SPD");
if ($dimms ne "") {
foreach my $dimm (@{$dimms->{CONN}}) {
my $dimm_target = $targetObj->getTargetParent($dimm->{DEST_PARENT});
@@ -2271,32 +2269,13 @@ sub processMembuf
$addr_map[$map] = $field;
}
}
- $targetObj->setAttribute($target,
+ $targetObj->setAttribute($membufTarg,
"MRW_MEM_SENSOR_CACHE_ADDR_MAP","0x".join("",@addr_map));
## Update bus speeds
- processI2cSpeeds($targetObj,$target);
-
- ## Do MBA port mapping
- my %mba_port_map;
- #@TODO RTC:175881 -- Support DDR3 DIMMs on Fleetwood systems
- my $ddrs=$targetObj->findConnections($target,"DDR4","DIMM");
- if ($ddrs ne "") {
- my %portmap;
- foreach my $ddr (@{$ddrs->{CONN}}) {
- my $mba=$ddr->{SOURCE};
- my $dimm=$ddr->{DEST_PARENT};
- my ($dimmnum,$port)=split(//,sprintf("%02b\n",$portmap{$mba}));
- $targetObj->setAttribute($dimm, "MBA_DIMM",$dimmnum);
- $targetObj->setAttribute($dimm, "MBA_PORT",$port);
- $portmap{$mba}++;
-
- ## Copy connector attributes
- my $dimmconn=$targetObj->getTargetParent($dimm);
- }
- }
+ processI2cSpeeds($targetObj,$membufTarg);
- processPowerRails($targetObj, $target);
+ processPowerRails($targetObj, $membufTarg);
}
sub getI2cMapField
diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml
index b2a38cf57..27088ad2a 100755
--- a/src/usr/targeting/common/xmltohb/attribute_types.xml
+++ b/src/usr/targeting/common/xmltohb/attribute_types.xml
@@ -6216,7 +6216,24 @@
<attribute>
<id>MBA_PORT</id>
- <description>MBA port this DIMM is connected to</description>
+ <description>
+ MBA port this DIMM is connected to
+ (deprecated in favor of MEM_PORT)
+ </description>
+ <simpleType>
+ <uint8_t>
+ <default>0</default>
+ </uint8_t>
+ </simpleType>
+ <persistency>non-volatile</persistency>
+ <readable/>
+</attribute>
+
+<attribute>
+ <id>MEM_PORT</id>
+ <description>
+ Memory port this DIMM is connected to
+ </description>
<simpleType>
<uint8_t>
<default>0</default>
@@ -6228,7 +6245,24 @@
<attribute>
<id>MBA_DIMM</id>
- <description>MBA port DIMM number of this DIMM</description>
+ <description>
+ MBA port DIMM number of this DIMM
+ (deprecated in favor of POS_ON_MEM_PORT)
+ </description>
+ <simpleType>
+ <uint8_t>
+ <default>0</default>
+ </uint8_t>
+ </simpleType>
+ <persistency>non-volatile</persistency>
+ <readable/>
+</attribute>
+
+<attribute>
+ <id>POS_ON_MEM_PORT</id>
+ <description>
+ Position of this DIMM on its memory port
+ </description>
<simpleType>
<uint8_t>
<default>0</default>
diff --git a/src/usr/targeting/common/xmltohb/hb_customized_attrs.xml b/src/usr/targeting/common/xmltohb/hb_customized_attrs.xml
index d393797e5..b08fdae3a 100644
--- a/src/usr/targeting/common/xmltohb/hb_customized_attrs.xml
+++ b/src/usr/targeting/common/xmltohb/hb_customized_attrs.xml
@@ -682,6 +682,12 @@
<writeable/>
</attribute>
+ <!-- Delete the redundant values from SW2 -->
+ <attribute><id>CEN_MBA_PORT</id><no_export/></attribute>
+ <attribute><id>MBA_PORT</id><no_export/></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><no_export/></attribute>
+ <attribute><id>MBA_DIMM</id><no_export/></attribute>
+
<attribute>
<id>ATTR_PBAX_GROUPID</id>
<global/>
diff --git a/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml b/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml
index 4d8a00399..fbd313174 100644
--- a/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml
+++ b/src/usr/targeting/common/xmltohb/simics_CUMULUS.system.xml
@@ -5655,14 +5655,12 @@
<id>AFFINITY_PATH</id>
<default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-0/dimm-0</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>FAPI_POS</id>
<default>0</default>
@@ -5696,14 +5694,12 @@
<id>FAPI_POS</id>
<default>2</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>2</default>
@@ -5748,20 +5744,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-4</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-0</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>4</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>4</default>
@@ -5785,20 +5779,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-6</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-2</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>6</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>6</default>
@@ -6043,20 +6035,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-8</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-0</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>8</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>8</default>
@@ -6080,20 +6070,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-10</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-2</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>10</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>10</default>
@@ -6137,20 +6125,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-12</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-0</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>12</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>12</default>
@@ -6174,20 +6160,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-14</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-2</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>14</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>14</default>
diff --git a/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml b/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml
index 2a7493734..0420087c1 100644
--- a/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml
+++ b/src/usr/targeting/common/xmltohb/simics_CUMULUS_CDIMM.system.xml
@@ -5653,14 +5653,12 @@
<id>AFFINITY_PATH</id>
<default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-0/dimm-0</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>FAPI_POS</id>
<default>0</default>
@@ -5694,14 +5692,12 @@
<id>FAPI_POS</id>
<default>2</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>2</default>
@@ -5746,20 +5742,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-4</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-0</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>4</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>4</default>
@@ -5783,20 +5777,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-6</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-0/membuf-0/mba-1/dimm-2</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>6</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>6</default>
@@ -6041,20 +6033,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-8</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-0</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>8</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>8</default>
@@ -6078,20 +6068,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-10</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-0/dimm-2</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>10</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>10</default>
@@ -6135,20 +6123,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-12</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-0</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>12</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>0</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MBA_PORT</id><default>0</default></attribute>
+ <attribute><id>MEM_PORT</id><default>0</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>12</default>
@@ -6172,20 +6158,18 @@
</attribute>
<attribute>
<id>AFFINITY_PATH</id>
- <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-14</default>
+ <default>affinity:sys-0/node-0/proc-0/mc-0/mi-0/dmi-1/membuf-1/mba-1/dimm-2</default>
</attribute>
<attribute>
<id>FAPI_POS</id>
<default>14</default>
</attribute>
- <attribute>
- <id>CEN_MBA_PORT</id>
- <default>1</default>
- </attribute>
- <attribute>
- <id>CEN_MBA_DIMM</id>
- <default>0</default>
- </attribute>
+ <attribute><id>CEN_MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MBA_PORT</id><default>1</default></attribute>
+ <attribute><id>MEM_PORT</id><default>1</default></attribute>
+ <attribute><id>CEN_MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>MBA_DIMM</id><default>0</default></attribute>
+ <attribute><id>POS_ON_MEM_PORT</id><default>0</default></attribute>
<attribute>
<id>VPD_REC_NUM</id>
<default>14</default>
diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml
index e3eae2c76..b02550cc6 100644
--- a/src/usr/targeting/common/xmltohb/target_types.xml
+++ b/src/usr/targeting/common/xmltohb/target_types.xml
@@ -523,8 +523,10 @@
<id>FRU_ID</id>
</attribute>
<attribute><id>REL_POS</id></attribute>
- <attribute><id>MBA_PORT</id></attribute>
- <attribute><id>MBA_DIMM</id></attribute>
+ <attribute><id>MBA_PORT</id></attribute><!-- deprecated -->
+ <attribute><id>MEM_PORT</id></attribute>
+ <attribute><id>MBA_DIMM</id></attribute><!-- deprecated -->
+ <attribute><id>POS_ON_MEM_PORT</id></attribute>
</targetType>
<targetType>
OpenPOWER on IntegriCloud