summaryrefslogtreecommitdiffstats
path: root/src/usr/targeting/common
diff options
context:
space:
mode:
authorNick Bofferding <bofferdn@us.ibm.com>2013-05-14 23:44:22 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-05-15 13:08:36 -0500
commit8f088b7f48bf03d833a38b6a95f5cfa7381f7d43 (patch)
treea036dfd8859e4b5b2ec09918ba7360676069f736 /src/usr/targeting/common
parent722ff9bff1f0d7830ef166822e32500accc421f9 (diff)
downloadtalos-hostboot-8f088b7f48bf03d833a38b6a95f5cfa7381f7d43.tar.gz
talos-hostboot-8f088b7f48bf03d833a38b6a95f5cfa7381f7d43.zip
Do not consider endpoints behind PCIE switches for PCIE config
- Removed endpoints from behind PCIE switches from PCIE config Change-Id: I401e2f525d3af90d1d3f287c3e1a1a2081a1291c CQ: SW203959 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/4507 Tested-by: A. Patrick Williams III <iawillia@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/targeting/common')
-rwxr-xr-xsrc/usr/targeting/common/genHwsvMrwXml.pl139
1 files changed, 73 insertions, 66 deletions
diff --git a/src/usr/targeting/common/genHwsvMrwXml.pl b/src/usr/targeting/common/genHwsvMrwXml.pl
index 104cbec38..975db7317 100755
--- a/src/usr/targeting/common/genHwsvMrwXml.pl
+++ b/src/usr/targeting/common/genHwsvMrwXml.pl
@@ -422,91 +422,98 @@ our %pcie_list;
foreach my $pcie_bus (@{$pcie_buses->{'pcie-bus'}})
{
- foreach my $lane_set (0,1)
+ if(!exists($pcie_bus->{'switch'}))
{
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->
- {'lane-mask'} = 0;
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->
- {'dsmp-capable'} = 0;
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->
- {'lane-swap'} = 0;
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->
- {'lane-reversal'} = 0;
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->
- {'is-slot'} = 0;
+ foreach my $lane_set (0,1)
+ {
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
+ {source}->{iop}}->{$lane_set}->
+ {'lane-mask'} = 0;
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
+ {source}->{iop}}->{$lane_set}->
+ {'dsmp-capable'} = 0;
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
+ {source}->{iop}}->{$lane_set}->
+ {'lane-swap'} = 0;
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
+ {source}->{iop}}->{$lane_set}->
+ {'lane-reversal'} = 0;
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
+ {source}->{iop}}->{$lane_set}->
+ {'is-slot'} = 0;
+ }
}
}
foreach my $pcie_bus (@{$pcie_buses->{'pcie-bus'}})
{
-
- my $dsmp_capable = 0;
- my $is_slot = 0;
- if((exists($pcie_bus->{source}->{'dsmp-capable'}))&&
- ($pcie_bus->{source}->{'dsmp-capable'} eq 'Yes'))
- {
-
- $dsmp_capable = 1;
- }
-
- if((exists($pcie_bus->{endpoint}->{'is-slot'}))&&
- ($pcie_bus->{endpoint}->{'is-slot'} eq 'Yes'))
- {
-
- $is_slot = 1;
- }
- my $lane_set = 0;
- if(($pcie_bus->{source}->{'lane-mask'} eq '0xFFFF')||
- ($pcie_bus->{source}->{'lane-mask'} eq '0xFF00'))
- {
- $lane_set = 0;
- }
- else
+ if(!exists($pcie_bus->{'switch'}))
{
- if($pcie_bus->{source}->{'lane-mask'} eq '0x00FF')
+ my $dsmp_capable = 0;
+ my $is_slot = 0;
+ if((exists($pcie_bus->{source}->{'dsmp-capable'}))&&
+ ($pcie_bus->{source}->{'dsmp-capable'} eq 'Yes'))
{
- $lane_set = 1;
+
+ $dsmp_capable = 1;
}
-
+
+ if((exists($pcie_bus->{endpoint}->{'is-slot'}))&&
+ ($pcie_bus->{endpoint}->{'is-slot'} eq 'Yes'))
+ {
+
+ $is_slot = 1;
+ }
+ my $lane_set = 0;
+ if(($pcie_bus->{source}->{'lane-mask'} eq '0xFFFF')||
+ ($pcie_bus->{source}->{'lane-mask'} eq '0xFF00'))
+ {
+ $lane_set = 0;
+ }
+ else
+ {
+ if($pcie_bus->{source}->{'lane-mask'} eq '0x00FF')
+ {
+ $lane_set = 1;
+ }
+
+ }
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'lane-mask'}
+ = $pcie_bus->{source}->{'lane-mask'};
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'dsmp-capable'}
+ = $dsmp_capable;
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'lane-swap'}
+ = oct($pcie_bus->{source}->{'lane-swap-bits'});
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'lane-reversal'}
+ = oct($pcie_bus->{source}->{'lane-reversal-bits'});
+ $pcie_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'is-slot'} = $is_slot;
}
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->{source}->
- {iop}}->{$lane_set}->{'lane-mask'} = $pcie_bus->{source}->{'lane-mask'};
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->{source}->
- {iop}}->{$lane_set}->{'dsmp-capable'} = $dsmp_capable;
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->{source}->
- {iop}}->{$lane_set}->{'lane-swap'} = oct($pcie_bus->{source}->
- {'lane-swap-bits'});
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->{source}->
- {iop}}->{$lane_set}->{'lane-reversal'} = oct($pcie_bus->{source}->
- {'lane-reversal-bits'});
- $pcie_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->{source}->
- {iop}}->{$lane_set}->{'is-slot'} = $is_slot;
-
}
our %bifurcation_list;
foreach my $pcie_bus (@{$pcie_buses->{'pcie-bus'}})
{
- foreach my $lane_set (0,1)
+ if(!exists($pcie_bus->{'switch'}))
{
- $bifurcation_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->{'lane-mask'}= 0;
- $bifurcation_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->{'lane-swap'}= 0;
- $bifurcation_list{$pcie_bus->{source}->{'instance-path'}}->{$pcie_bus->
- {source}->{iop}}->{$lane_set}->{'lane-reversal'}= 0;
+ foreach my $lane_set (0,1)
+ {
+ $bifurcation_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'lane-mask'}= 0;
+ $bifurcation_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'lane-swap'}= 0;
+ $bifurcation_list{$pcie_bus->{source}->{'instance-path'}}->
+ {$pcie_bus->{source}->{iop}}->{$lane_set}->{'lane-reversal'}= 0;
+ }
}
-
-
}
foreach my $pcie_bus (@{$pcie_buses->{'pcie-bus'}})
{
-
- if( exists($pcie_bus->{source}->{'bifurcation-settings'}))
+ if( (!exists($pcie_bus->{'switch'}))
+ && (exists($pcie_bus->{source}->{'bifurcation-settings'})))
{
my $bi_cnt = 0;
foreach my $bifurc (@{$pcie_bus->{source}->{'bifurcation-settings'}->
OpenPOWER on IntegriCloud