diff options
author | Zane Shelley <zshelle@us.ibm.com> | 2019-08-26 12:56:59 -0500 |
---|---|---|
committer | Zane C Shelley <zshelle@us.ibm.com> | 2019-08-27 10:11:07 -0500 |
commit | e32c176c55bb1a7fd9b05a63f903b9bb33c6ff75 (patch) | |
tree | 8d76edbf2d4b721b328288265c6510a8b244f459 | |
parent | cbd250000a538286af32342438d37a0ed70cadde (diff) | |
download | blackbird-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.C | 24 |
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; |