diff options
author | Louis Stermole <stermole@us.ibm.com> | 2018-06-11 06:51:09 -0500 |
---|---|---|
committer | Christian R. Geddes <crgeddes@us.ibm.com> | 2018-06-21 10:56:59 -0400 |
commit | fd49726ffcf05ade7e6c71ed1666b2075a999f95 (patch) | |
tree | 1d45396b047d336b125c6bf9ab4c351001c6a1cd /src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H | |
parent | a4dca215e8673e89ad8a6e13585c6211ccb38156 (diff) | |
download | talos-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-x | src/import/chips/centaur/procedures/hwp/memory/p9c_mss_generic_shmoo.H | 48 |
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 |