summaryrefslogtreecommitdiffstats
path: root/src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H
diff options
context:
space:
mode:
authorLouis Stermole <stermole@us.ibm.com>2018-06-11 06:51:09 -0500
committerChristian R. Geddes <crgeddes@us.ibm.com>2018-06-21 10:56:59 -0400
commitfd49726ffcf05ade7e6c71ed1666b2075a999f95 (patch)
tree1d45396b047d336b125c6bf9ab4c351001c6a1cd /src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H
parenta4dca215e8673e89ad8a6e13585c6211ccb38156 (diff)
downloadtalos-hostboot-fd49726ffcf05ade7e6c71ed1666b2075a999f95.tar.gz
talos-hostboot-fd49726ffcf05ade7e6c71ed1666b2075a999f95.zip
Fix p9c_generic_shmoo unit test to work with corrected bad bits attr
Change-Id: I95dfc7840dff6fbad14df4a1f937ca7353f4f7f3 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60305 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: ANDRE A. MARIN <aamarin@us.ibm.com> Dev-Ready: Louis Stermole <stermole@us.ibm.com> Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60311 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> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H')
-rwxr-xr-xsrc/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H48
1 files changed, 31 insertions, 17 deletions
diff --git a/src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H b/src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H
index c7fb34455..8430bc2df 100755
--- a/src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H
+++ b/src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H
@@ -69,14 +69,13 @@ class generic_shmoo
} SHMOO[MAX_SHMOO]; // Denote max shmoo scenarios we have; Have 2; so that one for WR/RD and other Clock.
//! Result Data
- uint8_t convergence_gap;
- shmoo_algorithm_t algorithm;
- shmoo_mode mcbist_mode;
- uint8_t mcbist_error_map[MAX_PORT][MAX_RANK][MAX_BYTE][MAX_NIBBLES]; //MAX byte is 10; Max Nibble are 2;
- uint8_t count_bad_dq[MAX_PORT];
- uint8_t schmoo_error_map[MAX_PORT][MAX_RANK][MAX_BYTE * MAX_NIBBLES]; // 10 * 2 = 20 Nibbles
- uint8_t binary_done_map[MAX_PORT][MAX_RANK][MAX_BYTE * MAX_NIBBLES]; // 10 * 2 = 20 Nibbles
- shmoo_type_t shmoo_mask;
+ shmoo_algorithm_t iv_algorithm;
+ shmoo_mode iv_mcbist_mode;
+ uint8_t iv_mcbist_error_map[MAX_PORT][MAX_RANK][MAX_BYTE][MAX_NIBBLES]; //MAX byte is 10; Max Nibble are 2;
+ uint8_t iv_count_bad_dq[MAX_PORT];
+ uint8_t iv_shmoo_error_map[MAX_PORT][MAX_RANK][MAX_BYTE * MAX_NIBBLES]; // 10 * 2 = 20 Nibbles
+ uint8_t iv_binary_done_map[MAX_PORT][MAX_RANK][MAX_BYTE * MAX_NIBBLES]; // 10 * 2 = 20 Nibbles
+ shmoo_type_t iv_shmoo_mask;
uint8_t iv_addr;
uint8_t iv_MAX_RANKS[MAX_PORT];
uint8_t iv_MAX_BYTES;
@@ -89,8 +88,7 @@ class generic_shmoo
uint16_t iv_shmoo_param;
uint16_t iv_binary_diff;
uint32_t iv_vref_mul;
- uint8_t valid_rank[MAX_RANK];
- uint8_t valid_rank1[MAX_PORT][MAX_RANK];
+ uint8_t iv_valid_rank[MAX_PORT][MAX_RANK];
public:
@@ -98,16 +96,32 @@ class generic_shmoo
///
/// @brief generic shmoo constructor
///
- generic_shmoo(uint8_t iv_addr, shmoo_type_t shmoo_mask, shmoo_algorithm_t shmoo_algorithm); // Constructor
+ generic_shmoo(uint8_t i_addr, shmoo_type_t i_shmoo_mask, shmoo_algorithm_t shmoo_algorithm);
+
+ ///
+ /// @brief generic shmoo constructor
+ ///
+ generic_shmoo() = default;
+
+ ///
+ /// @brief generic shmoo destructor
///
- /// @brief generic generic shmoo constructor
+ ~generic_shmoo() = default;
+
+ ///
+ /// @brief Sets up shmoo instance variables
+ /// @param[in] i_target Centaur input mba
+ /// @return FAPI2_RC_SUCCESS iff successful
///
- generic_shmoo() {};
- ~generic_shmoo() {};
+ fapi2::ReturnCode setup(const fapi2::Target<fapi2::TARGET_TYPE_MBA>& i_target);
- //initialize multi dim arrays to known value
- void init_multi_array(uint16_t (&array)[MAX_DQ],
- const uint16_t init_val);
+ ///
+ /// @brief This function does the initialization of various schmoo parameters
+ /// @param[in] i_init_val initial value to initialize to
+ /// @param[out] io_array address of array
+ ///
+ void init_multi_array(const uint16_t i_init_val,
+ uint16_t (&io_array)[MAX_DQ]);
///
/// @brief This function gets the nominal values for each DQ of relevant knobs
OpenPOWER on IntegriCloud