diff options
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.C | 72 |
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; } |