summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/hwp/mc_config/mss_eff_config/mss_eff_config_shmoo.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/hwpf/hwp/mc_config/mss_eff_config/mss_eff_config_shmoo.C')
-rw-r--r--src/usr/hwpf/hwp/mc_config/mss_eff_config/mss_eff_config_shmoo.C72
1 files changed, 69 insertions, 3 deletions
diff --git a/src/usr/hwpf/hwp/mc_config/mss_eff_config/mss_eff_config_shmoo.C b/src/usr/hwpf/hwp/mc_config/mss_eff_config/mss_eff_config_shmoo.C
index ed3c8fb90..90c3e3009 100644
--- a/src/usr/hwpf/hwp/mc_config/mss_eff_config/mss_eff_config_shmoo.C
+++ b/src/usr/hwpf/hwp/mc_config/mss_eff_config/mss_eff_config_shmoo.C
@@ -20,7 +20,7 @@
/* Origin: 30 */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: mss_eff_config_shmoo.C,v 1.1 2013/02/26 12:38:20 lapietra Exp $
+// $Id: mss_eff_config_shmoo.C,v 1.2 2013/03/27 15:15:07 lapietra Exp $
// $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/centaur/working/procedures/ipl/fapi/mss_eff_config_shmoo.C,v $
//------------------------------------------------------------------------------
// *! (C) Copyright International Business Machines Corp. 2011
@@ -41,7 +41,7 @@
// Version:| Author: | Date: | Comment:
//---------|----------|---------|-----------------------------------------------
// 1.1 | sauchadh |26-Feb-13| Added MCBIST related attributes
-
+// 1.2 | sauchadh |13-Mar-13| Added Schmoo related attributes from mss_eff_config.C
//----------------------------------------------------------------------
@@ -87,6 +87,51 @@ fapi::ReturnCode mss_eff_config_shmoo(const fapi::Target i_target_mba) {
uint8_t addr_slave_rank_on=0;
uint64_t adr_str_map=0;
uint8_t addr_rand=0;
+ uint8_t shmoo_mode=0;
+ uint8_t shmoo_addr_mode=3;
+ uint8_t shmoo_param_valid=0;
+ uint8_t shmoo_test_valid=0;
+ uint8_t wr_eye_min_margin=0x46;
+ uint8_t rd_eye_min_margin=0x46;
+ uint8_t dqs_clk_min_margin=0x8c;
+ uint8_t rd_gate_min_margin=0x64;
+ uint8_t adr_cmd_min_margin=0x8c;
+ uint32_t cen_rd_vref_shmoo[2];
+ cen_rd_vref_shmoo[0]=0x00000000;
+ cen_rd_vref_shmoo[1]=0x00000000;
+ uint32_t dram_wr_vref_schmoo[2];
+ dram_wr_vref_schmoo[0]=0x00000000;
+ dram_wr_vref_schmoo[1]=0x00000000;
+ uint32_t cen_rcv_imp_dq_dqs_schmoo[2];
+ cen_rcv_imp_dq_dqs_schmoo[0]=0x00000000;
+ cen_rcv_imp_dq_dqs_schmoo[1]=0x00000000;
+ uint32_t cen_drv_imp_dq_dqs_schmoo[2];
+ cen_drv_imp_dq_dqs_schmoo[0]=0x00000000;
+ cen_drv_imp_dq_dqs_schmoo[1]=0x00000000;
+ uint8_t cen_drv_imp_cntl_schmoo[2];
+ cen_drv_imp_cntl_schmoo[0]=0x00;
+ cen_drv_imp_cntl_schmoo[1]=0x00;
+ uint8_t cen_drv_imp_clk_schmoo[2];
+ cen_drv_imp_clk_schmoo[0]=0x00;
+ cen_drv_imp_clk_schmoo[1]=0x00;
+ uint8_t cen_drv_imp_spcke_schmoo[2];
+ cen_drv_imp_spcke_schmoo[0]=0x00;
+ cen_drv_imp_spcke_schmoo[1]=0x00;
+ uint8_t cen_slew_rate_dq_dqs_schmoo[2];
+ cen_slew_rate_dq_dqs_schmoo[0]=0x00;
+ cen_slew_rate_dq_dqs_schmoo[1]=0x00;
+ uint8_t cen_slew_rate_cntl_schmoo[2];
+ cen_slew_rate_cntl_schmoo[0]=0x00;
+ cen_slew_rate_cntl_schmoo[1]=0x00;
+ uint8_t cen_slew_rate_addr_schmoo[2];
+ cen_slew_rate_addr_schmoo[0]=0x00;
+ cen_slew_rate_addr_schmoo[1]=0x00;
+ uint8_t cen_slew_rate_clk_schmoo[2];
+ cen_slew_rate_clk_schmoo[0]=0x00;
+ cen_slew_rate_clk_schmoo[1]=0x00;
+ uint8_t cen_slew_rate_spcke_schmoo[2];
+ cen_slew_rate_spcke_schmoo[0]=0x00;
+ cen_slew_rate_spcke_schmoo[1]=0x00;
rc = FAPI_ATTR_SET(ATTR_MCBIST_PATTERN, &i_target_mba, datapattern); if(rc) return rc;
rc = FAPI_ATTR_SET(ATTR_MCBIST_TEST_TYPE, &i_target_mba, testtype); if(rc) return rc;
@@ -107,7 +152,28 @@ fapi::ReturnCode mss_eff_config_shmoo(const fapi::Target i_target_mba) {
rc = FAPI_ATTR_SET(ATTR_MCBIST_ADDR_SLAVE_RANK_ON, &i_target_mba, addr_slave_rank_on); if(rc) return rc;
rc = FAPI_ATTR_SET(ATTR_MCBIST_ADDR_STR_MAP, &i_target_mba, adr_str_map); if(rc) return rc;
rc = FAPI_ATTR_SET(ATTR_MCBIST_ADDR_RAND, &i_target_mba, addr_rand); if(rc) return rc;
-
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_MODE, &i_target_mba, shmoo_mode); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_ADDR_MODE, &i_target_mba, shmoo_addr_mode); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_PARAM_VALID, &i_target_mba, shmoo_param_valid); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_TEST_VALID, &i_target_mba, shmoo_test_valid); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_WR_EYE_MIN_MARGIN, &i_target_mba, wr_eye_min_margin); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_RD_EYE_MIN_MARGIN, &i_target_mba, rd_eye_min_margin); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_DQS_CLK_MIN_MARGIN, &i_target_mba, dqs_clk_min_margin); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_RD_GATE_MIN_MARGIN, &i_target_mba, rd_gate_min_margin); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_SCHMOO_ADDR_CMD_MIN_MARGIN, &i_target_mba, adr_cmd_min_margin); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_RD_VREF_SCHMOO, &i_target_mba, cen_rd_vref_shmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_DRAM_WR_VREF_SCHMOO, &i_target_mba, dram_wr_vref_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_RCV_IMP_DQ_DQS_SCHMOO, &i_target_mba, cen_rcv_imp_dq_dqs_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_DRV_IMP_DQ_DQS_SCHMOO, &i_target_mba, cen_drv_imp_dq_dqs_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_DRV_IMP_CNTL_SCHMOO, &i_target_mba, cen_drv_imp_cntl_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_DRV_IMP_CLK_SCHMOO, &i_target_mba, cen_drv_imp_clk_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_DRV_IMP_SPCKE_SCHMOO, &i_target_mba, cen_drv_imp_spcke_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_SLEW_RATE_DQ_DQS_SCHMOO, &i_target_mba, cen_slew_rate_dq_dqs_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_SLEW_RATE_CNTL_SCHMOO, &i_target_mba, cen_slew_rate_cntl_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_SLEW_RATE_ADDR_SCHMOO, &i_target_mba, cen_slew_rate_addr_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_SLEW_RATE_CLK_SCHMOO, &i_target_mba, cen_slew_rate_clk_schmoo); if(rc) return rc;
+ rc = FAPI_ATTR_SET(ATTR_EFF_CEN_SLEW_RATE_SPCKE_SCHMOO, &i_target_mba, cen_slew_rate_spcke_schmoo); if(rc) return rc;
+
FAPI_INF("%s on %s COMPLETE", PROCEDURE_NAME, i_target_mba.toEcmdString());
return rc;
}
OpenPOWER on IntegriCloud