summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2019-08-26 12:56:59 -0500
committerZane C Shelley <zshelle@us.ibm.com>2019-08-27 10:11:07 -0500
commite32c176c55bb1a7fd9b05a63f903b9bb33c6ff75 (patch)
tree8d76edbf2d4b721b328288265c6510a8b244f459
parentcbd250000a538286af32342438d37a0ed70cadde (diff)
downloadblackbird-hostboot-e32c176c55bb1a7fd9b05a63f903b9bb33c6ff75.tar.gz
blackbird-hostboot-e32c176c55bb1a7fd9b05a63f903b9bb33c6ff75.zip
PRD: fix OBUS workaround for non-SMP mode
There were a couple functions that checked for non-SMP mode that could be called for types other than OBUS. This would cause an assert when calling the SMP mode check. Change-Id: I044108e40c305cd87861989c0dd69bda3bd79480 CQ: SW473849 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/82851 Reviewed-by: Caleb N Palmer <cnpalmer@us.ibm.com> Reviewed-by: Paul Greenwood <paul.greenwood@ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Zane C Shelley <zshelle@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/82880 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
-rw-r--r--src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C b/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C
index 3168d77b7..88a179bc7 100644
--- a/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C
+++ b/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C
@@ -1039,7 +1039,11 @@ int32_t spareDeployed( ExtensibleChip * i_chip,
{
// TODO: Temporary fix to avoid asserts for bits that are reused for
// OpenCAPI.
- if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+ if ( TYPE_OBUS == i_chip->getType() &&
+ !obusInSmpMode(i_chip->getTrgt()) )
+ {
+ return SUCCESS;
+ }
if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() )
return handleLaneRepairEvent(i_chip, io_sc, true);
@@ -1065,7 +1069,11 @@ int32_t maxSparesExceeded( ExtensibleChip * i_chip,
{
// TODO: Temporary fix to avoid asserts for bits that are reused for
// OpenCAPI.
- if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+ if ( TYPE_OBUS == i_chip->getType() &&
+ !obusInSmpMode(i_chip->getTrgt()) )
+ {
+ return SUCCESS;
+ }
if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() )
return handleLaneRepairEvent(i_chip, io_sc, false);
@@ -1091,7 +1099,11 @@ int32_t tooManyBusErrors( ExtensibleChip * i_chip,
{
// TODO: Temporary fix to avoid asserts for bits that are reused for
// OpenCAPI.
- if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+ if ( TYPE_OBUS == i_chip->getType() &&
+ !obusInSmpMode(i_chip->getTrgt()) )
+ {
+ return SUCCESS;
+ }
if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() )
return handleLaneRepairEvent(i_chip, io_sc, false);
@@ -1117,7 +1129,11 @@ int32_t calloutBusInterfacePlugin( ExtensibleChip * i_chip,
{
// TODO: Temporary fix to avoid asserts for bits that are reused for
// OpenCAPI.
- if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+ if ( TYPE_OBUS == i_chip->getType() &&
+ !obusInSmpMode(i_chip->getTrgt()) )
+ {
+ return SUCCESS;
+ }
calloutBusInterface(i_chip, io_sc, MRU_LOW);
return SUCCESS;
OpenPOWER on IntegriCloud