summaryrefslogtreecommitdiffstats
path: root/src/usr/targeting/common
diff options
context:
space:
mode:
authorBill Hoffa <wghoffa@us.ibm.com>2019-07-23 15:14:49 -0500
committerDaniel M Crowell <dcrowell@us.ibm.com>2019-07-26 13:04:03 -0500
commit6abe773682dd313a2e7263babb9778a8feff4643 (patch)
tree955c8cd42672adbde31eff0a708e5f0f24925bdf /src/usr/targeting/common
parentcd1e5c91e4a15ca933c699553ece9b841825ac03 (diff)
downloadtalos-hostboot-6abe773682dd313a2e7263babb9778a8feff4643.tar.gz
talos-hostboot-6abe773682dd313a2e7263babb9778a8feff4643.zip
Parse MEM_PORT target type out of Machine Readable Workbook (MRW)
- MEM_PORT is connected to the OCMB_CHIP target type via DDR4 BUS connections. Use those to process the MEM_PORT target type. Change-Id: Id3d743c54b2e1ed06924ceaee1c1017b18d1cc15 RTC: 211467 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80848 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: Christian R Geddes <crgeddes@us.ibm.com> Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Reviewed-by: Daniel M Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/targeting/common')
-rw-r--r--src/usr/targeting/common/Targets.pm16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/usr/targeting/common/Targets.pm b/src/usr/targeting/common/Targets.pm
index 3f4e33f39..59d1f1fca 100644
--- a/src/usr/targeting/common/Targets.pm
+++ b/src/usr/targeting/common/Targets.pm
@@ -81,6 +81,7 @@ my %maxInstance = (
"MCC" => 8,
"OMI" => 16,
"OCMB_CHIP" => 16,
+ "MEM_PORT" => 16,
"DDIMM" => 16,
"DMI" => 8,
"OCC" => 1,
@@ -658,6 +659,7 @@ sub buildAffinity
my $mcc = -1;
my $omi = -1;
my $ocmb = -1;
+ my $mem_port = -1;
my $i2c_mux = -1;
my $dimm = -1;
my $pmic = -1;
@@ -1006,6 +1008,19 @@ sub buildAffinity
}
}
}
+ elsif ($type eq "MEM_PORT")
+ {
+ my $parent = $self->getTargetParent($target);
+ my $ocmb_num = $self->getAttribute($parent, "POSITION");
+ my $ocmb_affinity = $self->getAttribute($parent, "AFFINITY_PATH");
+ $self->setAttribute($target, "AFFINITY_PATH", "$ocmb_affinity/mem_port-0");
+ my $ocmb_phys = $self->getAttribute($parent, "PHYS_PATH");
+ $self->setAttribute($target, "PHYS_PATH", "$ocmb_phys/mem_port-0");
+ $self->setHuid($target, $sys_pos, $node);
+ $self->deleteAttribute($target, "EXP_SAFEMODE_MEM_THROTTLED_N_COMMANDS_PER_PORT");
+
+ $self->{targeting}{SYS}[0]{NODES}[$node]{OCMB_CHIPS}[$ocmb_num]{MEM_PORTS}[0]{KEY} = $target;
+ }
# Witherspoon has its own DIMM parsing mechanism so don't want to
# interfere with it
elsif ($type eq "DIMM" && $self->getTargetType($target) eq "lcard-dimm-ddimm")
@@ -1805,6 +1820,7 @@ sub getPervasiveForUnit
return $pervasive
}
+
sub processMcaDimms
{
my $self = shift;
OpenPOWER on IntegriCloud