Exemple #1
0
int
t114_set_sdram_param(build_image_context *context,
                     u_int32_t index,
                     parse_token token,
                     u_int32_t value)
{
    nvboot_sdram_params *params;
    nvboot_config_table *bct = NULL;

    bct = (nvboot_config_table *)(context->bct);
    assert(context != NULL);
    assert(bct != NULL);
    params = &(bct->sdram_params[index]);
    /* Update the number of SDRAM parameter sets. */
    bct->num_sdram_sets = NV_MAX(bct->num_sdram_sets, index + 1);

    switch (token) {
        CASE_SET_SDRAM_PARAM(memory_type);
        CASE_SET_SDRAM_PARAM(pllm_input_divider);
        CASE_SET_SDRAM_PARAM(pllm_feedback_divider);
        CASE_SET_SDRAM_PARAM(pllm_stable_time);
        CASE_SET_SDRAM_PARAM(pllm_setup_control);
        CASE_SET_SDRAM_PARAM(pllm_select_div2);
        CASE_SET_SDRAM_PARAM(pllm_pdlshift_ph45);
        CASE_SET_SDRAM_PARAM(pllm_pdlshift_ph90);
        CASE_SET_SDRAM_PARAM(pllm_pdlshift_ph135);
        CASE_SET_SDRAM_PARAM(pllm_kcp);
        CASE_SET_SDRAM_PARAM(pllm_kvco);
        CASE_SET_SDRAM_PARAM(emc_bct_spare0);
        CASE_SET_SDRAM_PARAM(emc_auto_cal_interval);
        CASE_SET_SDRAM_PARAM(emc_auto_cal_config);
        CASE_SET_SDRAM_PARAM(emc_auto_cal_config2);
        CASE_SET_SDRAM_PARAM(emc_auto_cal_config3);
        CASE_SET_SDRAM_PARAM(emc_auto_cal_wait);
        CASE_SET_SDRAM_PARAM(emc_pin_program_wait);
        CASE_SET_SDRAM_PARAM(emc_rc);
        CASE_SET_SDRAM_PARAM(emc_rfc);
        CASE_SET_SDRAM_PARAM(emc_rfc_slr);
        CASE_SET_SDRAM_PARAM(emc_ras);
        CASE_SET_SDRAM_PARAM(emc_rp);
        CASE_SET_SDRAM_PARAM(emc_r2r);
        CASE_SET_SDRAM_PARAM(emc_w2w);
        CASE_SET_SDRAM_PARAM(emc_r2w);
        CASE_SET_SDRAM_PARAM(emc_w2r);
        CASE_SET_SDRAM_PARAM(emc_r2p);
        CASE_SET_SDRAM_PARAM(emc_w2p);
        CASE_SET_SDRAM_PARAM(emc_rd_rcd);
        CASE_SET_SDRAM_PARAM(emc_wr_rcd);
        CASE_SET_SDRAM_PARAM(emc_rrd);
        CASE_SET_SDRAM_PARAM(emc_rext);
        CASE_SET_SDRAM_PARAM(emc_wdv);
        CASE_SET_SDRAM_PARAM(emc_wdv_mask);
        CASE_SET_SDRAM_PARAM(emc_quse);
        CASE_SET_SDRAM_PARAM(emc_ibdly);
        CASE_SET_SDRAM_PARAM(emc_einput);
        CASE_SET_SDRAM_PARAM(emc_einput_duration);
        CASE_SET_SDRAM_PARAM(emc_puterm_extra);
        CASE_SET_SDRAM_PARAM(emc_cdb_cntl1);
        CASE_SET_SDRAM_PARAM(emc_cdb_cntl2);
        CASE_SET_SDRAM_PARAM(emc_qrst);
        CASE_SET_SDRAM_PARAM(emc_qsafe);
        CASE_SET_SDRAM_PARAM(emc_rdv);
        CASE_SET_SDRAM_PARAM(emc_rdv_mask);
        CASE_SET_SDRAM_PARAM(emc_refresh);
        CASE_SET_SDRAM_PARAM(emc_burst_refresh_num);
        CASE_SET_SDRAM_PARAM(emc_pdex2wr);
        CASE_SET_SDRAM_PARAM(emc_pdex2rd);
        CASE_SET_SDRAM_PARAM(emc_pchg2pden);
        CASE_SET_SDRAM_PARAM(emc_act2pden);
        CASE_SET_SDRAM_PARAM(emc_ar2pden);
        CASE_SET_SDRAM_PARAM(emc_rw2pden);
        CASE_SET_SDRAM_PARAM(emc_txsr);
        CASE_SET_SDRAM_PARAM(emc_tcke);
        CASE_SET_SDRAM_PARAM(emc_tckesr);
        CASE_SET_SDRAM_PARAM(emc_tpd);
        CASE_SET_SDRAM_PARAM(emc_tfaw);
        CASE_SET_SDRAM_PARAM(emc_trpab);
        CASE_SET_SDRAM_PARAM(emc_tclkstable);
        CASE_SET_SDRAM_PARAM(emc_tclkstop);
        CASE_SET_SDRAM_PARAM(emc_trefbw);
        CASE_SET_SDRAM_PARAM(emc_quse_extra);
        CASE_SET_SDRAM_PARAM(emc_fbio_cfg5);
        CASE_SET_SDRAM_PARAM(emc_fbio_cfg6);
        CASE_SET_SDRAM_PARAM(emc_fbio_spare);
        CASE_SET_SDRAM_PARAM(emc_mrs);
        CASE_SET_SDRAM_PARAM(emc_emrs);
        CASE_SET_SDRAM_PARAM(emc_emrs2);
        CASE_SET_SDRAM_PARAM(emc_emrs3);
        CASE_SET_SDRAM_PARAM(emc_mrw1);
        CASE_SET_SDRAM_PARAM(emc_mrw2);
        CASE_SET_SDRAM_PARAM(emc_mrw3);
        CASE_SET_SDRAM_PARAM(emc_mrw4);
        CASE_SET_SDRAM_PARAM(emc_mrw_reset_command);
        CASE_SET_SDRAM_PARAM(emc_mrw_reset_ninit_wait);
        CASE_SET_SDRAM_PARAM(emc_adr_cfg);
        CASE_SET_SDRAM_PARAM(mc_emem_cfg);
        CASE_SET_SDRAM_PARAM(emc_cfg);
        CASE_SET_SDRAM_PARAM(emc_cfg2);
        CASE_SET_SDRAM_PARAM(emc_dbg);
        CASE_SET_SDRAM_PARAM(emc_cfg_dig_dll);
        CASE_SET_SDRAM_PARAM(emc_cfg_dig_dll_period);
        CASE_SET_SDRAM_PARAM(warm_boot_wait);
        CASE_SET_SDRAM_PARAM(emc_ctt_term_ctrl);
        CASE_SET_SDRAM_PARAM(emc_odt_write);
        CASE_SET_SDRAM_PARAM(emc_odt_read);
        CASE_SET_SDRAM_PARAM(emc_zcal_wait_cnt);
        CASE_SET_SDRAM_PARAM(emc_zcal_mrw_cmd);
        CASE_SET_SDRAM_PARAM(emc_mrs_reset_dll);
        CASE_SET_SDRAM_PARAM(emc_mrs_reset_dll_wait);
        CASE_SET_SDRAM_PARAM(emc_emrs_ddr2_dll_enable);
        CASE_SET_SDRAM_PARAM(emc_mrs_ddr2_dll_reset);
        CASE_SET_SDRAM_PARAM(emc_emrs_ddr2_ocd_calib);
        CASE_SET_SDRAM_PARAM(emc_ddr2_wait);
        CASE_SET_SDRAM_PARAM(pmc_ddr_pwr);
        CASE_SET_SDRAM_PARAM(emc_clock_source);
        CASE_SET_SDRAM_PARAM(emc_pin_extra_wait);
        CASE_SET_SDRAM_PARAM(emc_timing_control_wait);
        CASE_SET_SDRAM_PARAM(emc_wext);
        CASE_SET_SDRAM_PARAM(emc_ctt);
        CASE_SET_SDRAM_PARAM(emc_ctt_duration);
        CASE_SET_SDRAM_PARAM(emc_prerefresh_req_cnt);
        CASE_SET_SDRAM_PARAM(emc_txsr_dll);
        CASE_SET_SDRAM_PARAM(emc_cfg_rsv);
        CASE_SET_SDRAM_PARAM(emc_mrw_extra);
        CASE_SET_SDRAM_PARAM(emc_warm_boot_mrw_extra);
        CASE_SET_SDRAM_PARAM(emc_warm_boot_extramode_reg_write_enable);
        CASE_SET_SDRAM_PARAM(emc_extramode_reg_write_enable);
        CASE_SET_SDRAM_PARAM(emc_mrs_wait_cnt);
        CASE_SET_SDRAM_PARAM(emc_mrs_wait_cnt2);
        CASE_SET_SDRAM_PARAM(emc_cmd_q);
        CASE_SET_SDRAM_PARAM(emc_mc2emc_q);
        CASE_SET_SDRAM_PARAM(emc_dyn_self_ref_control);
        CASE_SET_SDRAM_PARAM(ahb_arbitration_xbar_ctrl_meminit_done);
        CASE_SET_SDRAM_PARAM(emc_dev_select);
        CASE_SET_SDRAM_PARAM(emc_sel_dpd_ctrl);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs0);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs1);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs2);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs3);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs4);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs5);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs6);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs7);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse0);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse1);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse2);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse3);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse4);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse5);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse6);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_quse7);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_addr0);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_addr1);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_addr2);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs0);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs1);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs2);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs3);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs4);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs5);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs6);
        CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs7);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dq0);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dq1);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dq2);
        CASE_SET_SDRAM_PARAM(emc_dll_xform_dq3);
        CASE_SET_SDRAM_PARAM(emc_zcal_interval);
        CASE_SET_SDRAM_PARAM(emc_zcal_init_dev0);
        CASE_SET_SDRAM_PARAM(emc_zcal_init_dev1);
        CASE_SET_SDRAM_PARAM(emc_zcal_init_wait);
        CASE_SET_SDRAM_PARAM(emc_zcal_warm_cold_boot_enables);
        CASE_SET_SDRAM_PARAM(emc_mrw_lpddr2zcal_warm_boot);
        CASE_SET_SDRAM_PARAM(emc_zqcal_ddr3_warm_boot);
        CASE_SET_SDRAM_PARAM(emc_zcal_warm_boot_wait);
        CASE_SET_SDRAM_PARAM(emc_mrs_warm_boot_enable);
        CASE_SET_SDRAM_PARAM(emc_mrs_extra);
        CASE_SET_SDRAM_PARAM(emc_warm_boot_mrs_extra);
        CASE_SET_SDRAM_PARAM(emc_clken_override);
        CASE_SET_SDRAM_PARAM(emc_extra_refresh_num);
        CASE_SET_SDRAM_PARAM(emc_clken_override_allwarm_boot);
        CASE_SET_SDRAM_PARAM(mc_clken_override_allwarm_boot);
        CASE_SET_SDRAM_PARAM(emc_cfg_dig_dll_period_warm_boot);
        CASE_SET_SDRAM_PARAM(pmc_vddp_sel);
        CASE_SET_SDRAM_PARAM(pmc_ddr_cfg);
        CASE_SET_SDRAM_PARAM(pmc_io_dpd_req);
        CASE_SET_SDRAM_PARAM(pmc_io_dpd2_req);
        CASE_SET_SDRAM_PARAM(pmc_reg_short);
        CASE_SET_SDRAM_PARAM(pmc_eno_vtt_gen);
        CASE_SET_SDRAM_PARAM(pmc_no_io_power);
        CASE_SET_SDRAM_PARAM(emc_xm2cmd_pad_ctrl);
        CASE_SET_SDRAM_PARAM(emc_xm2cmd_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(emc_xm2cmd_pad_ctrl3);
        CASE_SET_SDRAM_PARAM(emc_xm2cmd_pad_ctrl4);
        CASE_SET_SDRAM_PARAM(emc_xm2dqs_pad_ctrl);
        CASE_SET_SDRAM_PARAM(emc_xm2dqs_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(emc_xm2dqs_pad_ctrl3);
        CASE_SET_SDRAM_PARAM(emc_xm2dqs_pad_ctrl4);
        CASE_SET_SDRAM_PARAM(emc_xm2dq_pad_ctrl);
        CASE_SET_SDRAM_PARAM(emc_xm2dq_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(emc_xm2clk_pad_ctrl);
        CASE_SET_SDRAM_PARAM(emc_xm2clk_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(emc_xm2comp_pad_ctrl);
        CASE_SET_SDRAM_PARAM(emc_xm2vttgen_pad_ctrl);
        CASE_SET_SDRAM_PARAM(emc_xm2vttgen_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(emc_acpd_control);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank0_byte_cfg);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank0_byte0);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank0_byte1);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank0_byte2);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank0_byte3);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank1_byte_cfg);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank1_byte0);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank1_byte1);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank1_byte2);
        CASE_SET_SDRAM_PARAM(emc_swizzle_rank1_byte3);
        CASE_SET_SDRAM_PARAM(emc_addr_swizzle_stack1a);
        CASE_SET_SDRAM_PARAM(emc_addr_swizzle_stack1b);
        CASE_SET_SDRAM_PARAM(emc_addr_swizzle_stack2a);
        CASE_SET_SDRAM_PARAM(emc_addr_swizzle_stack2b);
        CASE_SET_SDRAM_PARAM(emc_addr_swizzle_stack3);
        CASE_SET_SDRAM_PARAM(emc_dsr_vttgen_drv);
        CASE_SET_SDRAM_PARAM(emc_txdsrvttgen);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_dev0);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_dev1);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_channel_mask);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_channel_mask_propagation_count);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_bank_mask0);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_bank_mask1);
        CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_bank_mask2);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_cfg);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_outstanding_req);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rcd);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rp);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rc);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_ras);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_faw);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rrd);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rap2pre);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_wap2pre);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_r2r);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_w2w);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_r2w);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_w2r);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_da_turns);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_da_covers);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_misc0);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_misc1);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_ring1_throttle);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_override);
        CASE_SET_SDRAM_PARAM(mc_emem_arb_rsv);
        CASE_SET_SDRAM_PARAM(mc_clken_override);
        CASE_SET_SDRAM_PARAM(mc_emc_reg_mode);
        CASE_SET_SDRAM_PARAM(mc_video_protect_bom);
        CASE_SET_SDRAM_PARAM(mc_video_protect_size_mb);
        CASE_SET_SDRAM_PARAM(mc_video_protect_vpr_override);
        CASE_SET_SDRAM_PARAM(mc_sec_carveout_bom);
        CASE_SET_SDRAM_PARAM(mc_sec_carveout_size_mb);
        CASE_SET_SDRAM_PARAM(mc_video_protect_write_access);
        CASE_SET_SDRAM_PARAM(mc_sec_carveout_protect_write_access);
        CASE_SET_SDRAM_PARAM(emc_ca_training_enable);
        CASE_SET_SDRAM_PARAM(emc_ca_training_timing_cntl1);
        CASE_SET_SDRAM_PARAM(emc_ca_training_timing_cntl2);
        CASE_SET_SDRAM_PARAM(swizzle_rank_byte_encode);
        CASE_SET_SDRAM_PARAM(boot_rom_patch_control);
        CASE_SET_SDRAM_PARAM(boot_rom_patch_data);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs0);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs1);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs2);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs3);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs4);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs5);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs6);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dqs7);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse0);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse1);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse2);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse3);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse4);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse5);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse6);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_quse7);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs0);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs1);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs2);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs3);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs4);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs5);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs6);
        CASE_SET_SDRAM_PARAM(ch1_emc_dli_trim_tx_dqs7);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dq0);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dq1);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dq2);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_dq3);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank0_byte_cfg);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank0_byte0);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank0_byte1);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank0_byte2);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank0_byte3);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank1_byte_cfg);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank1_byte0);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank1_byte1);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank1_byte2);
        CASE_SET_SDRAM_PARAM(ch1_emc_swizzle_rank1_byte3);
        CASE_SET_SDRAM_PARAM(ch1_emc_addr_swizzle_stack1a);
        CASE_SET_SDRAM_PARAM(ch1_emc_addr_swizzle_stack1b);
        CASE_SET_SDRAM_PARAM(ch1_emc_addr_swizzle_stack2a);
        CASE_SET_SDRAM_PARAM(ch1_emc_addr_swizzle_stack2b);
        CASE_SET_SDRAM_PARAM(ch1_emc_addr_swizzle_stack3);
        CASE_SET_SDRAM_PARAM(ch1_emc_auto_cal_config);
        CASE_SET_SDRAM_PARAM(ch1_emc_auto_cal_config2);
        CASE_SET_SDRAM_PARAM(ch1_emc_auto_cal_config3);
        CASE_SET_SDRAM_PARAM(ch1_emc_cdb_cntl1);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_addr0);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_addr1);
        CASE_SET_SDRAM_PARAM(ch1_emc_dll_xform_addr2);
        CASE_SET_SDRAM_PARAM(ch1_emc_fbio_spare);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_clk_pad_ctrl);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_clk_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_cmd_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_cmd_pad_ctrl3);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_cmd_pad_ctrl4);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_dq_pad_ctrl);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_dq_pad_ctrl2);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_dqs_pad_ctrl);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_dqs_pad_ctrl3);
        CASE_SET_SDRAM_PARAM(ch1_emc_xm2_dqs_pad_ctrl4);

        DEFAULT();
    }
    return 0;
}
Exemple #2
0
int
t30_set_sdram_param(build_image_context *context,
		uint32_t index,
		parse_token token,
		uint32_t value)
{
	nvboot_sdram_params *params;
	nvboot_config_table *bct = NULL;

	bct = (nvboot_config_table *)(context->bct);
	assert(context != NULL);
	assert(bct != NULL);
	params = &(bct->sdram_params[index]);
	/* Update the number of SDRAM parameter sets. */
	bct->num_sdram_sets = NV_MAX(bct->num_sdram_sets, index + 1);

	switch (token) {
	CASE_SET_SDRAM_PARAM(memory_type);
	CASE_SET_SDRAM_PARAM(pllm_charge_pump_setup_ctrl);
	CASE_SET_SDRAM_PARAM(pllm_loop_filter_setup_ctrl);
	CASE_SET_SDRAM_PARAM(pllm_input_divider);
	CASE_SET_SDRAM_PARAM(pllm_feedback_divider);
	CASE_SET_SDRAM_PARAM(pllm_post_divider);
	CASE_SET_SDRAM_PARAM(pllm_stable_time);
	CASE_SET_SDRAM_PARAM(emc_clock_divider);
	CASE_SET_SDRAM_PARAM(emc_auto_cal_interval);
	CASE_SET_SDRAM_PARAM(emc_auto_cal_config);
	CASE_SET_SDRAM_PARAM(emc_auto_cal_wait);
	CASE_SET_SDRAM_PARAM(emc_pin_program_wait);
	CASE_SET_SDRAM_PARAM(emc_rc);
	CASE_SET_SDRAM_PARAM(emc_rfc);
	CASE_SET_SDRAM_PARAM(emc_ras);
	CASE_SET_SDRAM_PARAM(emc_rp);
	CASE_SET_SDRAM_PARAM(emc_r2w);
	CASE_SET_SDRAM_PARAM(emc_w2r);
	CASE_SET_SDRAM_PARAM(emc_r2p);
	CASE_SET_SDRAM_PARAM(emc_w2p);
	CASE_SET_SDRAM_PARAM(emc_rd_rcd);
	CASE_SET_SDRAM_PARAM(emc_wr_rcd);
	CASE_SET_SDRAM_PARAM(emc_rrd);
	CASE_SET_SDRAM_PARAM(emc_rext);
	CASE_SET_SDRAM_PARAM(emc_wdv);
	CASE_SET_SDRAM_PARAM(emc_quse);
	CASE_SET_SDRAM_PARAM(emc_qrst);
	CASE_SET_SDRAM_PARAM(emc_qsafe);
	CASE_SET_SDRAM_PARAM(emc_rdv);
	CASE_SET_SDRAM_PARAM(emc_refresh);
	CASE_SET_SDRAM_PARAM(emc_burst_refresh_num);
	CASE_SET_SDRAM_PARAM(emc_pdex2wr);
	CASE_SET_SDRAM_PARAM(emc_pdex2rd);
	CASE_SET_SDRAM_PARAM(emc_pchg2pden);
	CASE_SET_SDRAM_PARAM(emc_act2pden);
	CASE_SET_SDRAM_PARAM(emc_ar2pden);
	CASE_SET_SDRAM_PARAM(emc_rw2pden);
	CASE_SET_SDRAM_PARAM(emc_txsr);
	CASE_SET_SDRAM_PARAM(emc_tcke);
	CASE_SET_SDRAM_PARAM(emc_tfaw);
	CASE_SET_SDRAM_PARAM(emc_trpab);
	CASE_SET_SDRAM_PARAM(emc_tclkstable);
	CASE_SET_SDRAM_PARAM(emc_tclkstop);
	CASE_SET_SDRAM_PARAM(emc_trefbw);
	CASE_SET_SDRAM_PARAM(emc_quse_extra);
	CASE_SET_SDRAM_PARAM(emc_fbio_cfg5);
	CASE_SET_SDRAM_PARAM(emc_fbio_cfg6);
	CASE_SET_SDRAM_PARAM(emc_fbio_spare);
	CASE_SET_SDRAM_PARAM(emc_mrs);
	CASE_SET_SDRAM_PARAM(emc_emrs);
	CASE_SET_SDRAM_PARAM(emc_mrw1);
	CASE_SET_SDRAM_PARAM(emc_mrw2);
	CASE_SET_SDRAM_PARAM(emc_mrw3);
	CASE_SET_SDRAM_PARAM(emc_mrw_reset_command);
	CASE_SET_SDRAM_PARAM(emc_mrw_reset_ninit_wait);
	CASE_SET_SDRAM_PARAM(emc_adr_cfg);
	CASE_SET_SDRAM_PARAM(mc_emem_cfg);
	CASE_SET_SDRAM_PARAM(emc_cfg);
	CASE_SET_SDRAM_PARAM(emc_cfg2);
	CASE_SET_SDRAM_PARAM(emc_dbg);
	CASE_SET_SDRAM_PARAM(emc_cfg_dig_dll);
	CASE_SET_SDRAM_PARAM(emc_cfg_dig_dll_period);
	CASE_SET_SDRAM_PARAM(warm_boot_wait);
	CASE_SET_SDRAM_PARAM(emc_ctt_term_ctrl);
	CASE_SET_SDRAM_PARAM(emc_odt_write);
	CASE_SET_SDRAM_PARAM(emc_odt_read);
	CASE_SET_SDRAM_PARAM(emc_zcal_wait_cnt);
	CASE_SET_SDRAM_PARAM(emc_zcal_mrw_cmd);
	CASE_SET_SDRAM_PARAM(emc_mrs_reset_dll);
	CASE_SET_SDRAM_PARAM(emc_mrs_reset_dll_wait);
	CASE_SET_SDRAM_PARAM(emc_emrs_emr2);
	CASE_SET_SDRAM_PARAM(emc_emrs_emr3);
	CASE_SET_SDRAM_PARAM(emc_emrs_ddr2_dll_enable);
	CASE_SET_SDRAM_PARAM(emc_mrs_ddr2_dll_reset);
	CASE_SET_SDRAM_PARAM(emc_emrs_ddr2_ocd_calib);
	CASE_SET_SDRAM_PARAM(emc_ddr2_wait);
	CASE_SET_SDRAM_PARAM(pmc_ddr_pwr);

	CASE_SET_SDRAM_PARAM(emc_clock_source);
	CASE_SET_SDRAM_PARAM(emc_clock_use_pll_mud);
	CASE_SET_SDRAM_PARAM(emc_pin_extra_wait);
	CASE_SET_SDRAM_PARAM(emc_timing_control_wait);
	CASE_SET_SDRAM_PARAM(emc_wext);
	CASE_SET_SDRAM_PARAM(emc_ctt);
	CASE_SET_SDRAM_PARAM(emc_ctt_duration);
	CASE_SET_SDRAM_PARAM(emc_prerefresh_req_cnt);
	CASE_SET_SDRAM_PARAM(emc_txsr_dll);
	CASE_SET_SDRAM_PARAM(emc_cfg_rsv);
	CASE_SET_SDRAM_PARAM(emc_mrw_extra);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_mrw1);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_mrw2);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_mrw3);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_mrw_extra);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_extramode_reg_write_enable);
	CASE_SET_SDRAM_PARAM(emc_extramode_reg_write_enable);
	CASE_SET_SDRAM_PARAM(emc_mrs_wait_cnt);
	CASE_SET_SDRAM_PARAM(emc_cmd_q);
	CASE_SET_SDRAM_PARAM(emc_mc2emc_q);
	CASE_SET_SDRAM_PARAM(emc_dyn_self_ref_control);
	CASE_SET_SDRAM_PARAM(ahb_arbitration_xbar_ctrl_meminit_done);
	CASE_SET_SDRAM_PARAM(emc_dev_select);
	CASE_SET_SDRAM_PARAM(emc_sel_dpd_ctrl);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs0);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs1);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs2);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs3);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs4);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs5);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs6);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dqs7);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse0);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse1);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse2);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse3);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse4);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse5);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse6);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_quse7);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs0);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs1);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs2);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs3);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs4);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs5);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs6);
	CASE_SET_SDRAM_PARAM(emc_dli_trim_tx_dqs7);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dq0);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dq1);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dq2);
	CASE_SET_SDRAM_PARAM(emc_dll_xform_dq3);
	CASE_SET_SDRAM_PARAM(emc_zcal_interval);
	CASE_SET_SDRAM_PARAM(emc_zcal_init_dev0);
	CASE_SET_SDRAM_PARAM(emc_zcal_init_dev1);
	CASE_SET_SDRAM_PARAM(emc_zcal_init_wait);
	CASE_SET_SDRAM_PARAM(emc_zcal_cold_boot_enable);
	CASE_SET_SDRAM_PARAM(emc_zcal_warm_boot_enable);
	CASE_SET_SDRAM_PARAM(emc_mrw_lpddr2zcal_warm_boot);
	CASE_SET_SDRAM_PARAM(emc_zqcal_ddr3_warm_boot);
	CASE_SET_SDRAM_PARAM(emc_zcal_warm_boot_wait);
	CASE_SET_SDRAM_PARAM(emc_mrs_warm_boot_enable);
	CASE_SET_SDRAM_PARAM(emc_mrs_extra);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_mrs);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_emrs);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_emr2);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_emr3);
	CASE_SET_SDRAM_PARAM(emc_warm_boot_mrs_extra);
	CASE_SET_SDRAM_PARAM(emc_clken_override);
	CASE_SET_SDRAM_PARAM(emc_extra_refresh_num);
	CASE_SET_SDRAM_PARAM(emc_clken_override_allwarm_boot);
	CASE_SET_SDRAM_PARAM(mc_clken_override_allwarm_boot);
	CASE_SET_SDRAM_PARAM(emc_cfg_dig_dll_period_warm_boot);
	CASE_SET_SDRAM_PARAM(pmc_vddp_sel);
	CASE_SET_SDRAM_PARAM(pmc_ddr_cfg);
	CASE_SET_SDRAM_PARAM(pmc_io_dpd_req);
	CASE_SET_SDRAM_PARAM(pmc_eno_vtt_gen);
	CASE_SET_SDRAM_PARAM(pmc_no_io_power);
	CASE_SET_SDRAM_PARAM(emc_xm2cmd_pad_ctrl);
	CASE_SET_SDRAM_PARAM(emc_xm2cmd_pad_ctrl2);
	CASE_SET_SDRAM_PARAM(emc_xm2dqs_pad_ctrl);
	CASE_SET_SDRAM_PARAM(emc_xm2dqs_pad_ctrl2);
	CASE_SET_SDRAM_PARAM(emc_xm2dqs_pad_ctrl3);
	CASE_SET_SDRAM_PARAM(emc_xm2dq_pad_ctrl);
	CASE_SET_SDRAM_PARAM(emc_xm2dq_pad_ctrl2);
	CASE_SET_SDRAM_PARAM(emc_xm2clk_pad_ctrl);
	CASE_SET_SDRAM_PARAM(emc_xm2comp_pad_ctrl);
	CASE_SET_SDRAM_PARAM(emc_xm2vttgen_pad_ctrl);
	CASE_SET_SDRAM_PARAM(emc_xm2vttgen_pad_ctrl2);
	CASE_SET_SDRAM_PARAM(emc_xm2quse_pad_ctrl);
	CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg);
	CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_dev0);
	CASE_SET_SDRAM_PARAM(mc_emem_adr_cfg_dev1);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_cfg);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_outstanding_req);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rcd);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rp);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rc);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_ras);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_faw);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rrd);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_rap2pre);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_wap2pre);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_r2r);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_w2w);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_r2w);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_timing_w2r);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_da_turns);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_da_covers);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_misc0);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_misc1);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_ring1_throttle);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_override);
	CASE_SET_SDRAM_PARAM(mc_emem_arb_rsv);
	CASE_SET_SDRAM_PARAM(mc_clken_override);

	DEFAULT();
	}
	return 0;
}