summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Phan <cphan@us.ibm.com>2014-01-13 12:56:55 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-01-13 15:43:09 -0600
commitfbf39897d9fad6983821e04b87d9ede429ad3a1f (patch)
treed39afe8055b69991c623a7e9a0f8b1b58dbf6cfc
parentcc4693af4d3db870077f2bb5e2b0137dd93bfc25 (diff)
downloadtalos-hostboot-fbf39897d9fad6983821e04b87d9ede429ad3a1f.tar.gz
talos-hostboot-fbf39897d9fad6983821e04b87d9ede429ad3a1f.zip
PRD: use ForceRead to refresh MBSTR after cleanupCmd()
Change-Id: I37e0f9a0ae45cc2e83e0e54cfea7c9f2bcfacc1f CQ: SW240094 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/8026 Tested-by: Jenkins Server Reviewed-by: BENJAMIN J. WEISENBECK <bweisenb@us.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/8030
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C12
-rw-r--r--src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr.C6
2 files changed, 13 insertions, 5 deletions
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C
index 15850695d..5e61aa9c7 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2013 */
+/* COPYRIGHT International Business Machines Corp. 2013,2014 */
/* */
/* p1 */
/* */
@@ -154,7 +154,10 @@ int32_t CenMbaTdCtlrCommon::prepareNextCmd()
const char * reg_str = (0 == iv_mbaPos) ? "MBA0_MBSTR" : "MBA1_MBSTR";
SCAN_COMM_REGISTER_CLASS * mbstr = iv_membChip->getRegister( reg_str );
- o_rc = mbstr->Read();
+
+ // MBSTR's content could be modified from cleanupCmd()
+ // so we need to refresh
+ o_rc = mbstr->ForceRead();
if ( SUCCESS != o_rc )
{
PRDF_ERR( PRDF_FUNC"Read() failed on %s", reg_str );
@@ -634,7 +637,10 @@ int32_t CenMbaTdCtlrCommon::setRtEteThresholds()
{
const char * reg_str = (0 == iv_mbaPos) ? "MBA0_MBSTR" : "MBA1_MBSTR";
SCAN_COMM_REGISTER_CLASS * mbstr = iv_membChip->getRegister( reg_str );
- o_rc = mbstr->Read();
+
+ // MBSTR's content could be modified from cleanupCmd()
+ // so we need to refresh
+ o_rc = mbstr->ForceRead();
if ( SUCCESS != o_rc )
{
PRDF_ERR( PRDF_FUNC"Read() failed on %s", reg_str );
diff --git a/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr.C b/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr.C
index 826a0c026..af6734855 100644
--- a/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr.C
+++ b/src/usr/diag/prdf/plat/pegasus/prdfCenMbaTdCtlr.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2013 */
+/* COPYRIGHT International Business Machines Corp. 2013,2014 */
/* */
/* p1 */
/* */
@@ -1301,7 +1301,9 @@ int32_t CenMbaTdCtlr::mnfgCeSetup()
{
const char * reg_str = (0 == iv_mbaPos) ? "MBA0_MBSTR" : "MBA1_MBSTR";
SCAN_COMM_REGISTER_CLASS * mbstr = iv_membChip->getRegister( reg_str );
- o_rc = mbstr->Read();
+ // MBSTR's content could be modified from cleanupCmd()
+ // so we need to refresh
+ o_rc = mbstr->ForceRead();
if ( SUCCESS != o_rc )
{
PRDF_ERR( PRDF_FUNC"Read() failed on %s", reg_str );
OpenPOWER on IntegriCloud