summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/common/plat
diff options
context:
space:
mode:
authorChris Phan <cphan@us.ibm.com>2014-09-11 15:43:26 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-09-17 10:54:46 -0500
commitd3c9c2c1316e22503cc1094df325e5cd159628d5 (patch)
treed218aee174e5806582ab1438608fcb77ee45c869 /src/usr/diag/prdf/common/plat
parent2e06c508897e6210ec249e7cbefe3e7e157cc4cf (diff)
downloadtalos-hostboot-d3c9c2c1316e22503cc1094df325e5cd159628d5.tar.gz
talos-hostboot-d3c9c2c1316e22503cc1094df325e5cd159628d5.zip
PRD: fix EXPECTED_DATA checking issue in x86 sim
Change-Id: I1a88fa38ad670aa32e7ec6f46f5035095ff196e6 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13315 Tested-by: Jenkins Server Reviewed-by: Prem Shanker Jha <premjha2@in.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Reviewed-by: Zane Shelley <zshelle@us.ibm.com> Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13421
Diffstat (limited to 'src/usr/diag/prdf/common/plat')
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule8
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfLaneRepair.C41
2 files changed, 23 insertions, 26 deletions
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule
index 93699b86b..3c5862534 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule
+++ b/src/usr/diag/prdf/common/plat/pegasus/Membuf_regs_NEST.rule
@@ -149,6 +149,14 @@
capture group FirRegs;
};
+ register MBIFIR_AND
+ {
+ name "MBU.MBI.MBI.SCOMFIR.MBIFIRQ AND";
+ scomaddr 0x02010801;
+ capture group never;
+ access write_only;
+ };
+
register MBIFIR_MASK
{
name "MBU.MBI.MBI.SCOMFIR.MBIFIRMASK";
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfLaneRepair.C b/src/usr/diag/prdf/common/plat/pegasus/prdfLaneRepair.C
index ad1b36c7f..d29281ae8 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfLaneRepair.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfLaneRepair.C
@@ -382,36 +382,25 @@ int32_t cleanupSecondaryFirBits( ExtensibleChip * i_chip,
break;
}
- SCAN_COMM_REGISTER_CLASS * mciFir =
- mcsChip->getRegister( "MCIFIR" );
- int32_t rc = mciFir->Read();
- if ( SUCCESS != rc )
- {
- PRDF_ERR("cleanupSecondaryFirBits() : Failed to read MCIFIR."
- "MCS: 0x%08X", getHuid(mcsTgt) );
- l_rc |= rc;
- }
- else if ( mciFir->IsBitSet(10))
- {
- mciFir->ClearBit(10);
- l_rc |= mciFir->Write();
- }
+ SCAN_COMM_REGISTER_CLASS * mciAnd = mcsChip->getRegister("MCIFIR_AND");
+ SCAN_COMM_REGISTER_CLASS * mbiAnd = mbChip->getRegister( "MBIFIR_AND");
- SCAN_COMM_REGISTER_CLASS * mbiFir =
- mbChip->getRegister( "MBIFIR" );
- rc = mbiFir->Read();
- if ( SUCCESS != rc )
- {
- PRDF_ERR("cleanupSecondaryFirBits() : Failed to read MBIFIR."
- "MEMBUF: 0x%08X", getHuid(mbTgt) );
- l_rc |= rc;
- }
- else if ( mbiFir->IsBitSet(10))
+ mciAnd->setAllBits(); mciAnd->ClearBit(10);
+ mbiAnd->setAllBits(); mbiAnd->ClearBit(10);
+
+ l_rc = mciAnd->Write();
+ l_rc |= mbiAnd->Write();
+
+ if ( SUCCESS != l_rc )
{
- mbiFir->ClearBit(10);
- l_rc |= mbiFir->Write();
+ PRDF_ERR( "[cleanupSecondaryFirBits] Write() failed on "
+ "MCIFIR/MBIFIR: MCS=0x%08x MEMB=0x%08x",
+ mcsChip->GetId(), mbChip->GetId() );
+ break;
}
+
} while (0);
+
return l_rc;
}
OpenPOWER on IntegriCloud