summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/common/plat
diff options
context:
space:
mode:
authorCaleb Palmer <cnpalmer@us.ibm.com>2018-12-14 15:52:22 -0600
committerZane C. Shelley <zshelle@us.ibm.com>2019-01-16 16:25:37 -0600
commite3ceaa63602bec06a5f4f1a7744a0d72ab529902 (patch)
treebafd08099c721ed1e365521e802721382e3ca4ed /src/usr/diag/prdf/common/plat
parenta567fae92a161e1d15ef2ba545e993b2c51322a3 (diff)
downloadtalos-hostboot-e3ceaa63602bec06a5f4f1a7744a0d72ab529902.tar.gz
talos-hostboot-e3ceaa63602bec06a5f4f1a7744a0d72ab529902.zip
PRD: Nimbus symbol mark performance workaround
Change-Id: Id73ad9bc28c63e5a7def5f066a7da273a762c288 CQ: SW453102 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/69880 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/70296 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf/common/plat')
-rw-r--r--src/usr/diag/prdf/common/plat/mem/prdfMemMark.C18
-rw-r--r--src/usr/diag/prdf/common/plat/nimbus/nimbus_mca_regs.rule13
2 files changed, 30 insertions, 1 deletions
diff --git a/src/usr/diag/prdf/common/plat/mem/prdfMemMark.C b/src/usr/diag/prdf/common/plat/mem/prdfMemMark.C
index ee81514b3..a4ace9175 100644
--- a/src/usr/diag/prdf/common/plat/mem/prdfMemMark.C
+++ b/src/usr/diag/prdf/common/plat/mem/prdfMemMark.C
@@ -294,6 +294,24 @@ uint32_t writeSymbolMark<TYPE_MCA>( ExtensibleChip * i_chip,
msName, i_chip->getHuid() );
}
+ // Nimbus symbol mark performance workaround
+ // When a symbol mark is placed at runtime
+ #ifdef __HOSTBOOT_RUNTIME
+
+ // Trigger WAT logic to 'disable bypass'
+ // Get the ECC Debug/WAT Control register
+ SCAN_COMM_REGISTER_CLASS * dbgr = i_chip->getRegister( "DBGR" );
+
+ // Set DBGR[8] = 0b1
+ dbgr->SetBit( 8 );
+ o_rc = dbgr->Write();
+ if ( SUCCESS != o_rc )
+ {
+ PRDF_ERR( PRDF_FUNC "Write() failed on DBGR: mca=0x%08x",
+ i_chip->getHuid() );
+ }
+ #endif
+
return o_rc;
#undef PRDF_FUNC
diff --git a/src/usr/diag/prdf/common/plat/nimbus/nimbus_mca_regs.rule b/src/usr/diag/prdf/common/plat/nimbus/nimbus_mca_regs.rule
index 0c2e52c8e..233e0dc5b 100644
--- a/src/usr/diag/prdf/common/plat/nimbus/nimbus_mca_regs.rule
+++ b/src/usr/diag/prdf/common/plat/nimbus/nimbus_mca_regs.rule
@@ -5,7 +5,7 @@
#
# OpenPOWER HostBoot Project
#
-# Contributors Listed Below - COPYRIGHT 2016,2018
+# Contributors Listed Below - COPYRIGHT 2016,2019
# [+] International Business Machines Corp.
#
#
@@ -242,3 +242,14 @@
capture group default;
};
+ ############################################################################
+ # ECC Debug/WAT Control Register
+ ############################################################################
+
+ register DBGR
+ {
+ name "ECC Debug/WAT Control Register";
+ scomaddr 0x07010A0B;
+ capture group default;
+ };
+
OpenPOWER on IntegriCloud