summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2016-07-18 19:26:27 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2016-07-26 17:47:31 -0400
commitfd5d5fb16635b508fda6ec8d117205e6edce794c (patch)
tree7399df75fe777b50bd8a89deb21c21556da50ab5 /src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
parentbed3d8978631424e16689bfedfc445533cb723f9 (diff)
downloadtalos-hostboot-fd5d5fb16635b508fda6ec8d117205e6edce794c.tar.gz
talos-hostboot-fd5d5fb16635b508fda6ec8d117205e6edce794c.zip
PRD: enable use of TD controller for command complete attentions
Change-Id: Iaf6619174aae9751eff410bd6274530c3b4055d5 RTC: 157893 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27165 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com> Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27395 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H')
-rw-r--r--src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H40
1 files changed, 25 insertions, 15 deletions
diff --git a/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H b/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
index 95b0976a3..4c55a8ee7 100644
--- a/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
+++ b/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
@@ -34,6 +34,7 @@
#include <prdfExtensibleChip.H>
// Platform includes
+#include <prdfMemTdCtlr.H>
#include <prdfPlatServices.H>
namespace PRDF
@@ -44,45 +45,54 @@ class McbistDataBundle : public DataBundle
{
public: // functions
- #ifdef __HOSTBOOT_RUNTIME
-
- /**
- * @brief Constructor.
- * @param i_mcbChip The MCBIST chip.
- */
- explicit McbistDataBundle( ExtensibleChip * i_mcbChip ) = default;
-
- #else
-
/**
* @brief Constructor.
* @param i_mcbChip The MCBIST chip.
*/
explicit McbistDataBundle( ExtensibleChip * i_mcbChip ) :
- iv_sendCmdCompleteMsg(false)
+ iv_chip(i_mcbChip)
{}
- #endif
-
/** @brief Destructor. */
- ~McbistDataBundle() = default;
+ ~McbistDataBundle()
+ {
+ delete iv_tdCtlr; iv_tdCtlr = nullptr;
+ }
// Don't allow copy or assignment.
McbistDataBundle( const McbistDataBundle & ) = delete;
const McbistDataBundle & operator=( const McbistDataBundle & ) = delete;
+ /** @return The Targeted Diagnostics controller. */
+ MemTdCtlr<TARGETING::TYPE_MCBIST,McbistDataBundle *> * getTdCtlr()
+ {
+ using namespace TARGETING;
+
+ if ( nullptr == iv_tdCtlr )
+ {
+ iv_tdCtlr = new MemTdCtlr<TYPE_MCBIST,McbistDataBundle *>{iv_chip};
+ }
+
+ return iv_tdCtlr;
+ }
+
public: // instance variables
#ifndef __HOSTBOOT_RUNTIME
/** TRUE if a message needs to be sent to MDIA in the post analysis plugin,
* FALSE otherwise. */
- bool iv_sendCmdCompleteMsg;
+ bool iv_sendCmdCompleteMsg = false;
#endif
private: // instance variables
+ /** The MCBIST chip associated with this data bundle. */
+ ExtensibleChip * const iv_chip;
+
+ /** The Targeted Diagnostics controller. */
+ MemTdCtlr<TARGETING::TYPE_MCBIST,McbistDataBundle *> * iv_tdCtlr = nullptr;
};
/**
OpenPOWER on IntegriCloud