summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/hwp/dram_training
diff options
context:
space:
mode:
authorPrachi Gupta <pragupta@us.ibm.com>2015-06-02 10:04:10 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2015-06-08 13:28:05 -0500
commit196e805a8415e12edd7aa9ff070c41bf79c113c8 (patch)
tree468449446286570b60f0cb6c9035ccdcd179be0e /src/usr/hwpf/hwp/dram_training
parent303274baf458cecf8d05cbdc19ac32d254caeee2 (diff)
downloadtalos-hostboot-196e805a8415e12edd7aa9ff070c41bf79c113c8.tar.gz
talos-hostboot-196e805a8415e12edd7aa9ff070c41bf79c113c8.zip
SW299119:INITPROC: FSP&Hostboot - mcbist updates
CQ:SW299119 Change-Id: I3c547a8ae740f7e1cca0a3b84ade0b3dc2ad234a Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/16835 Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: PRACHI GUPTA <pragupta@us.ibm.com> Tested-by: PRACHI GUPTA <pragupta@us.ibm.com> Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/18073 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/dram_training')
-rw-r--r--src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_generic_shmoo.C6
-rwxr-xr-xsrc/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.C88
-rwxr-xr-xsrc/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.H12
-rw-r--r--src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.C19
-rw-r--r--src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.H6
-rw-r--r--src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_common.C27
6 files changed, 107 insertions, 51 deletions
diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_generic_shmoo.C b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_generic_shmoo.C
index 580c1ef1b..3d3be8347 100644
--- a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_generic_shmoo.C
+++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_generic_shmoo.C
@@ -23,7 +23,7 @@
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_generic_shmoo.C,v 1.92 2014/12/16 11:36:15 sasethur Exp $
+// $Id: mss_generic_shmoo.C,v 1.93 2015/02/16 19:59:13 sglancy Exp $
// *!***************************************************************************
// *! (C) Copyright International Business Machines Corp. 1997, 1998
// *! All Rights Reserved -- Property of IBM
@@ -42,6 +42,7 @@
//------------------------------------------------------------------------------
// Version:|Author: | Date: | Comment:
// --------|--------|---------|--------------------------------------------------
+// 1.93 |sglancy |16-Feb-15| Merged FW comments with lab needs
// 1.92 |preeragh|15-Dec-14| Reverted Changes to v.1.87
// 1.88 |rwheeler|10-Nov-14| Updated setup_mcbist for added variable.
// 1.87 |abhijsau|7-Feb-14| added sanity check and error call out for schmoo's , removed printing of disconnected DQS.
@@ -4306,6 +4307,7 @@ fapi::ReturnCode generic_shmoo::schmoo_setup_mcb(const fapi::Target & i_target)
uint32_t l_pattern = 0;
uint32_t l_testtype = 0;
mcbist_byte_mask i_mcbbytemask1;
+ char l_str_cust_addr[] = "ba0,ba1,mr3,mr2,mr1,mr0,ba2,ba3,cl2,cl3,cl4,cl5,cl6,cl7,cl8,cl9,cl11,cl13,r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15,r16,sl2,sl1,sl0";
i_mcbbytemask1 = UNMASK_ALL;
@@ -4335,7 +4337,7 @@ fapi::ReturnCode generic_shmoo::schmoo_setup_mcb(const fapi::Target & i_target)
if (rc) return rc;//---------i_mcbtest------->run
}
- rc = setup_mcbist(i_target, i_mcbbytemask1, 0, l_sub_info);
+ rc = setup_mcbist(i_target, i_mcbbytemask1, 0,0x0ull ,l_sub_info,l_str_cust_addr);
if (rc) return rc;
return rc;
diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.C b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.C
index 663b603e9..88ddf0108 100755
--- a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.C
+++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.C
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_mcbist.C,v 1.51 2015/02/09 15:54:47 sglancy Exp $
+// $Id: mss_mcbist.C,v 1.55 2015/05/13 19:32:22 sglancy Exp $
// *!***************************************************************************
// *! (C) Copyright International Business Machines Corp. 1997, 1998
// *! All Rights Reserved -- Property of IBM
@@ -40,6 +40,10 @@
//------------------------------------------------------------------------------
// Version:|Author: | Date: | Comment:
// --------|--------|--------|--------------------------------------------------
+// 1.55 |sglancy |05/13/15| Fixed FW compile issue
+// 1.54 |sglancy |05/05/15| Fixed FW compile issue
+// 1.53 |sglancy |05/05/15| Added #ifdefs around non-FW compliant code
+// 1.52 |sglancy |02/16/15| Merged in FW comments with lab needs
// 1.51 |sglancy |02/09/15| Fixed FW comments and adjusted whitespace
// 1.50 |preeragh|01/16/15| Fixed FW comments
// 1.48 |preeragh|01/05/15| Added FW workaround for drand
@@ -382,10 +386,12 @@ fapi::ReturnCode cfg_mcb_test_mem(const fapi::Target & i_target_mba,
// const fapi::Target & i_target_mba Centaur.mba
// mcbist_data_gen i_datamode MCBIST Data mode
// uint8_t i_mcbrotate Provides the number of bit to shift per burst
+// uint64_t i_mcbrotdata Provides the data seed to shift per burst
//****************************************************************/
fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
mcbist_data_gen i_datamode,
- uint8_t i_mcbrotate)
+ uint8_t i_mcbrotate,
+ uint64_t i_mcbrotdata)
{
uint8_t l_print = 0;
@@ -744,7 +750,7 @@ fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
}
}
else if (i_datamode == MCBIST_2D_CUP_PAT8)
- { //FAPI_DBG(" Inside MCBIST_2D_CUP_PAT8 !");
+ {
l_var = 0xFFFFFFFFFFFFFFFFull;
l_var1 = 0x0000000000000000ull;
l_spare = 0xFFFF0000FFFF0000ull;
@@ -949,7 +955,7 @@ fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
}
if (l_random_flag == 1)
- { //FAPI_DBG("Inside l_rand_flag !");
+ {
for (l_index = 0; l_index < MAX_BYTE; l_index++)
{
@@ -982,11 +988,12 @@ fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
}
}
- //struct drand48_data randBuffer;
- //double l_rand_D = 0;
- uint8_t l_rand_l = 0;
- uint8_t l_rand_array[8] = {48,52,56,60,64,68,72,76};
- //uint64_t l_data_buffer_64_value = 0;
+ #ifdef FAPI_MSSLABONLY
+ struct drand48_data randBuffer;
+ double l_rand_D = 0;
+ uint8_t l_rand_l = 0;
+ #endif
+ uint64_t l_data_buffer_64_value = 0;
// get the rotate value loaded into reg, if rotate value 0 / not defined the default to rotate =13
if(i_mcbrotate == 0)
@@ -998,34 +1005,53 @@ fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
{
l_rotnum = i_mcbrotate;
}
- rc_num = rc_num | l_data_buffer_64.flushTo0();
+
+
+ rc_num = rc_num | l_data_buffer_64.flushTo0();
+
// get the rotate data seed loaded into reg, if rotate data value = 0 / not defined the default rotate pttern is randomlly generated.
-
- // generate the random number
- FAPI_DBG("FW workaround for drand !");
+ if(i_mcbrotdata == 0)
+ { // generate the random number
+
+ #ifdef FAPI_MSSLABONLY
for(l_index1 = 0; l_index1 < 8; l_index1++)
{
//l_rand_8 = drand48_r();
-
- //drand48_r(&randBuffer, &l_rand_D);
+ drand48_r(&randBuffer, &l_rand_D);
//l_rand_l = (uint8_t)l_rand_D;
- //l_rand_l = static_cast<unsigned int>((l_rand_D * 100) + 0.5);
- /*if(l_rand_l == 0x00)
+ l_rand_l = static_cast<unsigned int>((l_rand_D * 100) + 0.5);
+ if(l_rand_l == 0x00)
{
l_rand_l = 0xFF;
}
- */
- l_rand_l = l_rand_array[l_index1];
- FAPI_DBG("%s:Value of seed drand48_r : %02X",i_target_mba.toEcmdString(), l_rand_l );
+ //FAPI_INF("%s:Value of seed drand48_r : %02X",i_target_mba.toEcmdString(), l_rand_l );
rc_num = rc_num | l_data_buffer_64.insert(l_rand_l,8*l_index1,8); // Source start in sn is given as 24 -- need to ask
-
+ if (rc_num)
+ {
+ FAPI_ERR( "cfg_mcb_dgen: setting up mcbrotate data error"); // Error setting up buffers
+ rc.setEcmdError(rc_num);
+ return rc;
+ }
}
-
- if (rc_num)
+ #else
+ rc_num = rc_num | l_data_buffer_64.setDoubleWord(0,0x863A822CDF2924C4ull);
+ if (rc_num)
+ {
+ FAPI_ERR( "cfg_mcb_dgen: setting up mcbrotate data error"); // Error setting up buffers
+ rc.setEcmdError(rc_num);
+ return rc;
+ }
+ #endif
+ }
+ else
{
- FAPI_ERR( "cfg_mcb_dgen:"); // Error setting up buffers
- rc.setEcmdError(rc_num);
- return rc;
+ rc_num = rc_num | l_data_buffer_64.setDoubleWord(0,i_mcbrotdata);
+ if (rc_num)
+ {
+ FAPI_ERR( "cfg_mcb_dgen:"); // Error setting up buffers
+ rc.setEcmdError(rc_num);
+ return rc;
+ }
}
// load the mcbist and mba with rotnum and rotdata.
@@ -1033,10 +1059,10 @@ fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
if(l_mbaPosition == 0)
{
rc = fapiPutScom(i_target_centaur, 0x0201167F , l_data_buffer_64); if(rc) return rc;
- //l_data_buffer_64_value = l_data_buffer_64.getDoubleWord (0);
- //FAPI_INF("%s:Value of Rotate data seed %016llX for reg %08X",i_target_mba.toEcmdString(), l_data_buffer_64_value, l_mbs01_mcb_random[l_index] );
+ l_data_buffer_64_value = l_data_buffer_64.getDoubleWord (0);
+ FAPI_INF("%s:Value of Rotate data seed %016llX for reg %08X",i_target_mba.toEcmdString(), l_data_buffer_64_value, 0x0201167F );
- rc_num = l_data_buffer_16.insert(l_data_buffer_64,0,16);
+ rc_num = rc_num | l_data_buffer_16.insert(l_data_buffer_64,0,16);
rc = fapiGetScom(i_target_centaur, 0x02011680 , l_data_buffer_64); if(rc) return rc;
rc_num = rc_num | l_data_buffer_64.insert(l_rotnum,0,4,4);
rc_num = rc_num | l_data_buffer_64.insert(l_data_buffer_16,4,16);
@@ -1052,8 +1078,8 @@ fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
else
{
rc = fapiPutScom(i_target_centaur, 0x0201177F , l_data_buffer_64); if(rc) return rc;//added
- //l_data_buffer_64_value = l_data_buffer_64.getDoubleWord (0);
- //FAPI_INF("%s:Value of Rotate data seed %016llX for reg %08X",i_target_mba.toEcmdString(), l_data_buffer_64_value, l_mbs23_mcb_random[l_index] );
+ l_data_buffer_64_value = l_data_buffer_64.getDoubleWord (0);
+ FAPI_INF("%s:Value of Rotate data seed %016llX for reg %08X",i_target_mba.toEcmdString(), l_data_buffer_64_value, 0x0201177F );
rc_num = rc_num | l_data_buffer_16.insert(l_data_buffer_64,0,16);
rc = fapiGetScom(i_target_centaur, 0x02011780 , l_data_buffer_64); if(rc) return rc;
diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.H b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.H
index d921ce3ca..c3b54041b 100755
--- a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.H
+++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist.H
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_mcbist.H,v 1.46 2014/12/16 11:34:58 sasethur Exp $
+// $Id: mss_mcbist.H,v 1.47 2015/02/16 19:56:22 sglancy Exp $
// *!***************************************************************************
// *! (C) Copyright International Business Machines Corp. 1997, 1998
// *! All Rights Reserved -- Property of IBM
@@ -40,7 +40,8 @@
//-------------------------------------------------------------------------------
// Version:|Author: | Date: | Comment:
// --------|--------|---------|--------------------------------------------------
-// 1.46 |preeragh|12/15/14| Revert back, removed rwheeler changes
+// 1.47 |sglancy |12/16/14| Merged FW comments with lab debugging needs
+// 1.46 |preeragh|12/15/14| Revert back, removed rwheeler changes
// 1.43 |rwheeler|11/19/14|option to pass in rotate data seed
// 1.42 |mjjones |01/20/14 |RAS Review Updates
// 1.41 |aditya |12/17/13 |Updated mcb_error_map function parameters
@@ -328,7 +329,8 @@ fapi::ReturnCode mcb_reset_trap(const fapi::Target & i_target_mba);
fapi::ReturnCode cfg_mcb_dgen(const fapi::Target & i_target_mba,
mcbist_data_gen i_datamode,
- uint8_t i_mcbrotate);
+ uint8_t i_mcbrotate,
+ uint64_t i_mcbrotdata);
fapi::ReturnCode cfg_byte_mask(const fapi::Target & i_target_mba);
@@ -337,7 +339,9 @@ fapi::ReturnCode start_mcb(const fapi::Target & i_target_mba);
fapi::ReturnCode setup_mcbist(const fapi::Target & i_target_mba,
mcbist_byte_mask i_mcbbytemask,
uint8_t i_mcbrotate,
- struct Subtest_info l_sub_info[30]);
+ uint64_t i_mcbrotdata,
+ struct Subtest_info l_sub_info[30],
+ char * l_str_cust_addr);
fapi::ReturnCode mcb_error_map_print(const fapi::Target & i_target_mba,
ecmdDataBufferBase & l_mcb_fail_160,
diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.C b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.C
index af2d9648f..7e02eed24 100644
--- a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.C
+++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.C
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_mcbist_address.C,v 1.17 2014/12/16 11:35:38 sasethur Exp $
+// $Id: mss_mcbist_address.C,v 1.18 2015/02/16 19:55:40 sglancy Exp $
// *!***************************************************************************
// *! (C) Copyright International Business Machines Corp. 1997, 1998, 2013
// *! All Rights Reserved -- Property of IBM
@@ -40,6 +40,7 @@
//-------------------------------------------------------------------------------
// Version:|Author: | Date: | Comment:
// --------|--------|---------|--------------------------------------------------
+// 1.17 |sglancy |16-FEB-15| Merged FW comments with lab debugging needs
// 1.17 |preeragh|15-Dec-14| Fix FW Review Comments
// 1.16 |rwheeler|10-Nov-14| Update to address_generation for custom address string
// 1.15 |preeragh|03-Nov-14| Fix for 128GB Schmoo
@@ -70,7 +71,8 @@ fapi::ReturnCode address_generation(const fapi::Target & i_target_mba,
interleave_type i_add_inter_type,
uint8_t i_rank,
uint64_t &io_start_address,
- uint64_t &io_end_address)
+ uint64_t &io_end_address,
+ char * l_str_cust_addr)
{
fapi::ReturnCode rc;
uint8_t l_num_ranks_per_dimm[MAX_VALUE_TWO][MAX_VALUE_TWO];
@@ -196,9 +198,18 @@ fapi::ReturnCode address_generation(const fapi::Target & i_target_mba,
//FAPI_INF("ATTR_EFF_DRAM_WIDTH is %d ",l_dram_width);
//FAPI_INF("ATTR_ADDR_INTER Mode is %d ",l_addr_inter);
//FAPI_INF("--- BANK-RANK Address interleave ---");
- rc = parse_addr(i_target_mba, S0, mr3_valid, mr2_valid, mr1_valid,
+ //custom addressing string is not to be used
+ if(l_addr_inter != 4) {
+ rc = parse_addr(i_target_mba, S0, mr3_valid, mr2_valid, mr1_valid,
l_dram_rows, l_dram_cols, l_addr_inter);
- if (rc) return rc;
+ if (rc) return rc;
+ }
+ else {
+ FAPI_DBG("Custom addressing flag was selected");
+ rc = parse_addr(i_target_mba, l_str_cust_addr, mr3_valid, mr2_valid, mr1_valid,
+ l_dram_rows, l_dram_cols, l_addr_inter);
+ if (rc) return rc;
+ }
return rc;
}
diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.H b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.H
index e4682f8b0..aef8c3d56 100644
--- a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.H
+++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_address.H
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_mcbist_address.H,v 1.7 2014/12/16 11:35:52 sasethur Exp $
+// $Id: mss_mcbist_address.H,v 1.8 2015/02/16 19:54:23 sglancy Exp $
// *!***************************************************************************
// *! (C) Copyright International Business Machines Corp. 1997, 1998, 2013
// *! All Rights Reserved -- Property of IBM
@@ -43,6 +43,7 @@
// 1.4 |preeragh|17-Dec-14| Removed unwanted header includes
// 1.5 |mjjones |20-Jan-14| RAS Review Updates
// 1.7 |preeragh|15-Dec-14| Fix FW review comments
+// 1.8 |preeragh|16-FEB-14| Added in lab needs
// --------|--------|---------|--------------------------------------------------
//------------------------------------------------------------------------------
#ifndef MSS_MCBIST_ADDRESS_H
@@ -77,7 +78,8 @@ fapi::ReturnCode address_generation(const fapi:: Target & i_target_mba,
interleave_type i_add_inter_type,
uint8_t i_rank,
uint64_t &io_start_address,
- uint64_t &io_end_address);
+ uint64_t &io_end_address,
+ char * l_str_cust_addr);
fapi::ReturnCode parse_addr(const fapi:: Target & i_target_mba,
char addr_string[],
diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_common.C b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_common.C
index 9f6fddeea..f7aba241c 100644
--- a/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_common.C
+++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_trainadv/mss_mcbist_common.C
@@ -22,7 +22,7 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_mcbist_common.C,v 1.72 2015/02/09 15:54:57 sglancy Exp $
+// $Id: mss_mcbist_common.C,v 1.73 2015/02/16 19:53:37 sglancy Exp $
// *!***************************************************************************
// *! (C) Copyright International Business Machines Corp. 1997, 1998
// *! All Rights Reserved -- Property of IBM
@@ -40,6 +40,7 @@
//------------------------------------------------------------------------------
// Version:|Author: | Date: | Comment:
// --------|--------|--------|--------------------------------------------------
+// 1.73 |sglancy |02/16/15|Merged in lab needs
// 1.72 |sglancy |02/09/15|Fixed FW comments and addressed bugs
// 1.71 |preeragh|01/16/15|Fixed FW comments
// 1.70 |preeragh|12/16/14|Revert to FW build v.1.66
@@ -111,8 +112,9 @@
#include <mss_access_delay_reg.H>
#include <fapiTestHwpDq.H>
#include <dimmBadDqBitmapFuncs.H>
-
-
+#ifdef FAPI_MSSLABONLY
+#include <mss_cen_dimm_temp_sensor.H>
+#endif
extern "C"
{
using namespace fapi;
@@ -148,6 +150,7 @@ const uint64_t FOUR = 0x0000000000000004ull;
// mcbist_test_mem i_mcbtest subtest Type
// mcbist_byte_mask i_mcbbytemask It is used to mask bad bits read from SPD
// uint8_t i_mcbrotate Provides the number of bit to shift per burst
+// uint64_t i_mcbrotdata Provides the rotate data to shift per burst
// uint8_t i_pattern Data Pattern
// uint8_t i_test_type Subtest Type
@@ -161,14 +164,16 @@ const uint64_t FOUR = 0x0000000000000004ull;
fapi::ReturnCode setup_mcbist(const fapi::Target & i_target_mba,
mcbist_byte_mask i_mcbbytemask,
uint8_t i_mcbrotate,
- struct Subtest_info l_sub_info[30])
+ uint64_t i_mcbrotdata,
+ struct Subtest_info l_sub_info[30],
+ char * l_str_cust_addr)
{
fapi::ReturnCode rc;
uint32_t rc_num = 0;
uint8_t l_bit32 = 0;
FAPI_DBG("%s:Function Setup_MCBIST", i_target_mba.toEcmdString());
-
+ FAPI_DBG("Custom Addr Mode %s",l_str_cust_addr);
ecmdDataBufferBase l_data_buffer_64(64);
ecmdDataBufferBase l_data_bufferx1_64(64);
ecmdDataBufferBase l_data_bufferx2_64(64);
@@ -370,7 +375,7 @@ fapi::ReturnCode setup_mcbist(const fapi::Target & i_target_mba,
rc = cfg_mcb_test_mem(i_target_mba, i_mcbtest1, l_sub_info);
if (rc) return rc;
- rc = cfg_mcb_dgen(i_target_mba, i_mcbpatt1, i_mcbrotate);
+ rc = cfg_mcb_dgen(i_target_mba, i_mcbpatt1, i_mcbrotate, i_mcbrotdata);
if (rc) return rc;
uint8_t i_port = 0;
uint8_t i_rank = 0;
@@ -383,7 +388,7 @@ fapi::ReturnCode setup_mcbist(const fapi::Target & i_target_mba,
if (l_new_addr != 0)
{
rc = address_generation(i_target_mba, i_port, SF, BANK_RANK, i_rank,
- io_start_address, io_end_address);
+ io_start_address, io_end_address, l_str_cust_addr);
if (rc)
{
FAPI_DBG("%s:BAD - RC ADDR Generation\n", i_target_mba.toEcmdString());
@@ -655,7 +660,9 @@ fapi::ReturnCode poll_mcb(const fapi::Target & i_target_mba,
l_time_count = 0;
FAPI_DBG("%s:POLLING STATUS:POLLING IN PROGRESS...........",
i_target_mba.toEcmdString());
- //rc = mss_cen_dimm_temp_sensor(i_target_centaur);if (rc) return rc;
+ #ifdef FAPI_MSSLABONLY
+ rc = mss_cen_dimm_temp_sensor(i_target_centaur);if (rc) return rc;
+ #endif
rc = fapiGetScom(i_target_centaur, 0x02050000, l_data_buffer_64);if (rc) return rc;
rc_num = l_data_buffer_64.extractToRight(&l_dts_0, 0, 12);
rc_num = rc_num | l_data_buffer_64.extractToRight(&l_dts_1, 16, 12);
@@ -2796,6 +2803,10 @@ fapi::ReturnCode mss_conversion_testtype(const fapi::Target & i_target_mba,
i_mcbtest = SHMOO_STRESS_INFINITE;
FAPI_INF("%s:TESTTYPE :SHMOO_STRESS_INFINITE", i_target_mba.toEcmdString());
break;
+ case 48:
+ i_mcbtest = HYNIX_1_COL;
+ FAPI_INF("%s:TESTTYPE :HYNIX_1_COL", i_target_mba.toEcmdString());
+ break;
default:
FAPI_INF("%s:Wrong Test_type,so using default test_type",
OpenPOWER on IntegriCloud