summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/common
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2017-02-22 12:32:18 -0600
committerZane C. Shelley <zshelle@us.ibm.com>2017-02-27 10:41:26 -0500
commit979413b9625240939ce45915b5d2cc5998c6bfa1 (patch)
tree983aa49b4546ace0f9b39ade058f1ef97429cc74 /src/usr/diag/prdf/common
parent5555ba42e226c998e611665b784c7950ef254625 (diff)
downloadtalos-hostboot-979413b9625240939ce45915b5d2cc5998c6bfa1.tar.gz
talos-hostboot-979413b9625240939ce45915b5d2cc5998c6bfa1.zip
PRD: IPL DRAM Repairs cleanup
Change-Id: Id0e3d2bea90f71d56df44ccab0506a28cf2017ff Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/36865 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37047 Tested-by: Jenkins OP Build CI <op-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')
-rw-r--r--src/usr/diag/prdf/common/plat/mem/prdfMemEccAnalysis.C9
-rw-r--r--src/usr/diag/prdf/common/plat/mem/prdfP9McaDataBundle.H26
2 files changed, 35 insertions, 0 deletions
diff --git a/src/usr/diag/prdf/common/plat/mem/prdfMemEccAnalysis.C b/src/usr/diag/prdf/common/plat/mem/prdfMemEccAnalysis.C
index 95c972723..7036888fe 100644
--- a/src/usr/diag/prdf/common/plat/mem/prdfMemEccAnalysis.C
+++ b/src/usr/diag/prdf/common/plat/mem/prdfMemEccAnalysis.C
@@ -82,6 +82,15 @@ void calloutMemUe<TYPE_MBA>( ExtensibleChip * i_chip, const MemRank & i_rank,
{
PRDF_ASSERT( TYPE_MBA == i_chip->getType() );
+ // TODO: RTC 169933 During Memory Diagnostics we'll want to call the
+ // mssIplUeIsolation() HWP so that we can isolate to a single DIMM if
+ // possible. This may be a difficult task to do at this point in the
+ // code because it will run a maintenance command on the Centaur,
+ // which may require some cleanup of the previous command. Since there
+ // are no plans to support IS DIMMs attached to a Centaur in P9, we
+ // may be able to get rid of this requirement because the FRU will be
+ // the same regardless if one or two logical DIMMs are called out.
+
MemoryMru memmru ( i_chip->getTrgt(), i_rank, MemoryMruData::CALLOUT_RANK );
io_sc.service_data->SetCallout( memmru );
}
diff --git a/src/usr/diag/prdf/common/plat/mem/prdfP9McaDataBundle.H b/src/usr/diag/prdf/common/plat/mem/prdfP9McaDataBundle.H
index aea42630f..3557d27f0 100644
--- a/src/usr/diag/prdf/common/plat/mem/prdfP9McaDataBundle.H
+++ b/src/usr/diag/prdf/common/plat/mem/prdfP9McaDataBundle.H
@@ -38,6 +38,10 @@
#include <prdfP9McbistDataBundle.H>
#endif
+#if defined(__HOSTBOOT_MODULE) && !defined(__HOSTBOOT_RUNTIME)
+ #include <prdfMemIplCeStats.H>
+#endif
+
namespace PRDF
{
@@ -72,6 +76,21 @@ class McaDataBundle : public DataBundle
#endif
+ #if defined(__HOSTBOOT_MODULE) && !defined(__HOSTBOOT_RUNTIME)
+
+ /** @return The IPL CE statistics object. */
+ MemIplCeStats<TARGETING::TYPE_MCA> * getIplCeStats()
+ {
+ if ( nullptr == iv_iplCeStats )
+ {
+ iv_iplCeStats = new MemIplCeStats<TARGETING::TYPE_MCA>( iv_chip );
+ }
+
+ return iv_iplCeStats;
+ }
+
+ #endif
+
private: // functions
// Don't allow copy or assignment.
@@ -82,6 +101,13 @@ class McaDataBundle : public DataBundle
ExtensibleChip * iv_chip; // This MCA.
+ #if defined(__HOSTBOOT_MODULE) && !defined(__HOSTBOOT_RUNTIME)
+
+ /** MNFG IPL CE statistics. */
+ MemIplCeStats<TARGETING::TYPE_MCA> * iv_iplCeStats = nullptr;
+
+ #endif
+
public: // instance variables
MemCeTable<TARGETING::TYPE_MCA> iv_ceTable; ///< CE table for FFDC
OpenPOWER on IntegriCloud