diff options
author | Zane Shelley <zshelle@us.ibm.com> | 2017-05-15 16:35:40 -0500 |
---|---|---|
committer | Zane C. Shelley <zshelle@us.ibm.com> | 2017-06-08 16:44:28 -0400 |
commit | e1929d0094d34bd207cfc6533f1e77b4d122060e (patch) | |
tree | c7a03b9b0cba6a8aea6b4ab1207be3a385ff283d /src/usr/diag/prdf/plat/mem/prdfMemTdQueue.H | |
parent | bf3f4096b25c185704d5dec4c15711e8139eb966 (diff) | |
download | talos-hostboot-e1929d0094d34bd207cfc6533f1e77b4d122060e.tar.gz talos-hostboot-e1929d0094d34bd207cfc6533f1e77b4d122060e.zip |
PRD: runtime VCM support
Change-Id: Ibeb45ceb1a2d0db1e3941b5b8ac5f9e2f5122770
RTC: 171913
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40942
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: Brian J. Stegmiller <bjs@us.ibm.com>
Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
Squashed: I85a0240782b2985797a2ace1aa3eb9a9a18cb621
Squashed: I1663ee55509348cdaddf216d0b3c9ac527c21113
Squashed: Ib9a3bef7a4df3b1b2a5914cf4155dca569c11026
Squashed: I3739b49f17a5413a0ad9c3adfd555f74b91895cc
Squashed: Ifc2e4501775a09ad06381970ba47be5b953312d8
Squashed: Id7f5648ed810f9505acecea99cb27af2d832a669
Squashed: I0ec33104ac7920282482e79c2376d115a1274b46
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41040
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf/plat/mem/prdfMemTdQueue.H')
-rwxr-xr-x | src/usr/diag/prdf/plat/mem/prdfMemTdQueue.H | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemTdQueue.H b/src/usr/diag/prdf/plat/mem/prdfMemTdQueue.H index 7603328dc..9d20f5b1d 100755 --- a/src/usr/diag/prdf/plat/mem/prdfMemTdQueue.H +++ b/src/usr/diag/prdf/plat/mem/prdfMemTdQueue.H @@ -84,19 +84,25 @@ class TdEntry * @brief Each entry will have a set of steps that need to be performed. * This function tells the procedure to move onto the next step. * @param io_sc The step code data struct. - * @param o_done Returns true if this procedure is complete, false + * @param o_done True if the procedure is complete or has aborted, false * otherwise. * @return Non-SUCCESS if an internal function fails, SUCCESS otherwise. */ virtual uint32_t nextStep( STEP_CODE_DATA_STRUCT & io_sc, bool & o_done ) = 0; + /** @return Each event type will have a unique key identifier used for each + * procedure. The value is arbitrary. The only requirement is that + * it is unique to the hardware it is targeting. For example, VCM + * events will use only the master rank, where TPS events will use + * both the master and slave rank. */ + virtual uint32_t getKey() const = 0; + /** @brief '==' operator */ bool operator==( const TdEntry & i_e ) const { - return ( this->iv_chip == i_e.iv_chip && - this->iv_tdType == i_e.iv_tdType && - this->iv_rank == i_e.iv_rank ); + return ( this->iv_tdType == i_e.iv_tdType && + this->getKey() == i_e.getKey() ); } /** @@ -126,21 +132,19 @@ class TdEntry * @param i_rank Target rank */ TdEntry( TdType i_tdType, ExtensibleChip * i_chip, MemRank i_rank ) : - iv_chip(i_chip), iv_tdType(i_tdType), iv_rank(i_rank) - { - PRDF_ASSERT( (TARGETING::TYPE_MCA == iv_chip->getType()) || - (TARGETING::TYPE_MBA == iv_chip->getType()) ); - } + iv_tdType(i_tdType), iv_chip(i_chip), iv_rank(i_rank) + {} protected: // instance variables - /** The chip associated with this entry. This isn't used for any - * comparisons, but is needed for every TD procedure. */ - ExtensibleChip * const iv_chip; - - const TdType iv_tdType; ///< The event type (see enum TdType). - const MemRank iv_rank; ///< The rank in which this event occurred. + const TdType iv_tdType; ///< The event type (see enum TdType). Phase iv_phase = TD_PHASE_0; ///< The event phase (see enum Phase). + + // These are not used for comparisons, but used by all procedures and also + // used for displaying FFDC in the TD controller. + ExtensibleChip * const iv_chip; ///< The chip in which this event occurred. + const MemRank iv_rank; ///< The rank in which this event occurred. + }; //------------------------------------------------------------------------------ |