xref: /rk3399_rockchip-uboot/arch/arm/include/asm/arch-tegra20/sdram_param.h (revision 326ea986ac150acdc7656d57fca647db80b50158)
100a2749dSAllen Martin /*
200a2749dSAllen Martin  *  (C) Copyright 2010, 2011
300a2749dSAllen Martin  *  NVIDIA Corporation <www.nvidia.com>
400a2749dSAllen Martin  *
5*1a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
600a2749dSAllen Martin  */
700a2749dSAllen Martin 
800a2749dSAllen Martin #ifndef _SDRAM_PARAM_H_
900a2749dSAllen Martin #define _SDRAM_PARAM_H_
1000a2749dSAllen Martin 
1100a2749dSAllen Martin /*
1200a2749dSAllen Martin  * Defines the number of 32-bit words provided in each set of SDRAM parameters
1300a2749dSAllen Martin  * for arbitration configuration data.
1400a2749dSAllen Martin  */
1500a2749dSAllen Martin #define BCT_SDRAM_ARB_CONFIG_WORDS 27
1600a2749dSAllen Martin 
1700a2749dSAllen Martin enum memory_type {
1800a2749dSAllen Martin 	MEMORY_TYPE_NONE = 0,
1900a2749dSAllen Martin 	MEMORY_TYPE_DDR,
2000a2749dSAllen Martin 	MEMORY_TYPE_LPDDR,
2100a2749dSAllen Martin 	MEMORY_TYPE_DDR2,
2200a2749dSAllen Martin 	MEMORY_TYPE_LPDDR2,
2300a2749dSAllen Martin 	MEMORY_TYPE_NUM,
2400a2749dSAllen Martin 	MEMORY_TYPE_FORCE32 = 0x7FFFFFFF
2500a2749dSAllen Martin };
2600a2749dSAllen Martin 
2700a2749dSAllen Martin /* Defines the SDRAM parameter structure */
2800a2749dSAllen Martin struct sdram_params {
2900a2749dSAllen Martin 	enum memory_type memory_type;
3000a2749dSAllen Martin 	u32 pllm_charge_pump_setup_control;
3100a2749dSAllen Martin 	u32 pllm_loop_filter_setup_control;
3200a2749dSAllen Martin 	u32 pllm_input_divider;
3300a2749dSAllen Martin 	u32 pllm_feedback_divider;
3400a2749dSAllen Martin 	u32 pllm_post_divider;
3500a2749dSAllen Martin 	u32 pllm_stable_time;
3600a2749dSAllen Martin 	u32 emc_clock_divider;
3700a2749dSAllen Martin 	u32 emc_auto_cal_interval;
3800a2749dSAllen Martin 	u32 emc_auto_cal_config;
3900a2749dSAllen Martin 	u32 emc_auto_cal_wait;
4000a2749dSAllen Martin 	u32 emc_pin_program_wait;
4100a2749dSAllen Martin 	u32 emc_rc;
4200a2749dSAllen Martin 	u32 emc_rfc;
4300a2749dSAllen Martin 	u32 emc_ras;
4400a2749dSAllen Martin 	u32 emc_rp;
4500a2749dSAllen Martin 	u32 emc_r2w;
4600a2749dSAllen Martin 	u32 emc_w2r;
4700a2749dSAllen Martin 	u32 emc_r2p;
4800a2749dSAllen Martin 	u32 emc_w2p;
4900a2749dSAllen Martin 	u32 emc_rd_rcd;
5000a2749dSAllen Martin 	u32 emc_wr_rcd;
5100a2749dSAllen Martin 	u32 emc_rrd;
5200a2749dSAllen Martin 	u32 emc_rext;
5300a2749dSAllen Martin 	u32 emc_wdv;
5400a2749dSAllen Martin 	u32 emc_quse;
5500a2749dSAllen Martin 	u32 emc_qrst;
5600a2749dSAllen Martin 	u32 emc_qsafe;
5700a2749dSAllen Martin 	u32 emc_rdv;
5800a2749dSAllen Martin 	u32 emc_refresh;
5900a2749dSAllen Martin 	u32 emc_burst_refresh_num;
6000a2749dSAllen Martin 	u32 emc_pdex2wr;
6100a2749dSAllen Martin 	u32 emc_pdex2rd;
6200a2749dSAllen Martin 	u32 emc_pchg2pden;
6300a2749dSAllen Martin 	u32 emc_act2pden;
6400a2749dSAllen Martin 	u32 emc_ar2pden;
6500a2749dSAllen Martin 	u32 emc_rw2pden;
6600a2749dSAllen Martin 	u32 emc_txsr;
6700a2749dSAllen Martin 	u32 emc_tcke;
6800a2749dSAllen Martin 	u32 emc_tfaw;
6900a2749dSAllen Martin 	u32 emc_trpab;
7000a2749dSAllen Martin 	u32 emc_tclkstable;
7100a2749dSAllen Martin 	u32 emc_tclkstop;
7200a2749dSAllen Martin 	u32 emc_trefbw;
7300a2749dSAllen Martin 	u32 emc_quseextra;
7400a2749dSAllen Martin 	u32 emc_fbioc_fg1;
7500a2749dSAllen Martin 	u32 emc_fbio_dqsib_dly;
7600a2749dSAllen Martin 	u32 emc_fbio_dqsib_dly_msb;
7700a2749dSAllen Martin 	u32 emc_fbio_quse_dly;
7800a2749dSAllen Martin 	u32 emc_fbio_quse_dly_msb;
7900a2749dSAllen Martin 	u32 emc_fbio_cfg5;
8000a2749dSAllen Martin 	u32 emc_fbio_cfg6;
8100a2749dSAllen Martin 	u32 emc_fbio_spare;
8200a2749dSAllen Martin 	u32 emc_mrs;
8300a2749dSAllen Martin 	u32 emc_emrs;
8400a2749dSAllen Martin 	u32 emc_mrw1;
8500a2749dSAllen Martin 	u32 emc_mrw2;
8600a2749dSAllen Martin 	u32 emc_mrw3;
8700a2749dSAllen Martin 	u32 emc_mrw_reset_command;
8800a2749dSAllen Martin 	u32 emc_mrw_reset_init_wait;
8900a2749dSAllen Martin 	u32 emc_adr_cfg;
9000a2749dSAllen Martin 	u32 emc_adr_cfg1;
9100a2749dSAllen Martin 	u32 emc_emem_cfg;
9200a2749dSAllen Martin 	u32 emc_low_latency_config;
9300a2749dSAllen Martin 	u32 emc_cfg;
9400a2749dSAllen Martin 	u32 emc_cfg2;
9500a2749dSAllen Martin 	u32 emc_dbg;
9600a2749dSAllen Martin 	u32 ahb_arbitration_xbar_ctrl;
9700a2749dSAllen Martin 	u32 emc_cfg_dig_dll;
9800a2749dSAllen Martin 	u32 emc_dll_xform_dqs;
9900a2749dSAllen Martin 	u32 emc_dll_xform_quse;
10000a2749dSAllen Martin 	u32 warm_boot_wait;
10100a2749dSAllen Martin 	u32 emc_ctt_term_ctrl;
10200a2749dSAllen Martin 	u32 emc_odt_write;
10300a2749dSAllen Martin 	u32 emc_odt_read;
10400a2749dSAllen Martin 	u32 emc_zcal_ref_cnt;
10500a2749dSAllen Martin 	u32 emc_zcal_wait_cnt;
10600a2749dSAllen Martin 	u32 emc_zcal_mrw_cmd;
10700a2749dSAllen Martin 	u32 emc_mrs_reset_dll;
10800a2749dSAllen Martin 	u32 emc_mrw_zq_init_dev0;
10900a2749dSAllen Martin 	u32 emc_mrw_zq_init_dev1;
11000a2749dSAllen Martin 	u32 emc_mrw_zq_init_wait;
11100a2749dSAllen Martin 	u32 emc_mrs_reset_dll_wait;
11200a2749dSAllen Martin 	u32 emc_emrs_emr2;
11300a2749dSAllen Martin 	u32 emc_emrs_emr3;
11400a2749dSAllen Martin 	u32 emc_emrs_ddr2_dll_enable;
11500a2749dSAllen Martin 	u32 emc_mrs_ddr2_dll_reset;
11600a2749dSAllen Martin 	u32 emc_emrs_ddr2_ocd_calib;
11700a2749dSAllen Martin 	u32 emc_edr2_wait;
11800a2749dSAllen Martin 	u32 emc_cfg_clktrim0;
11900a2749dSAllen Martin 	u32 emc_cfg_clktrim1;
12000a2749dSAllen Martin 	u32 emc_cfg_clktrim2;
12100a2749dSAllen Martin 	u32 pmc_ddr_pwr;
12200a2749dSAllen Martin 	u32 apb_misc_gp_xm2cfga_padctrl;
12300a2749dSAllen Martin 	u32 apb_misc_gp_xm2cfgc_padctrl;
12400a2749dSAllen Martin 	u32 apb_misc_gp_xm2cfgc_padctrl2;
12500a2749dSAllen Martin 	u32 apb_misc_gp_xm2cfgd_padctrl;
12600a2749dSAllen Martin 	u32 apb_misc_gp_xm2cfgd_padctrl2;
12700a2749dSAllen Martin 	u32 apb_misc_gp_xm2clkcfg_padctrl;
12800a2749dSAllen Martin 	u32 apb_misc_gp_xm2comp_padctrl;
12900a2749dSAllen Martin 	u32 apb_misc_gp_xm2vttgen_padctrl;
13000a2749dSAllen Martin 	u32 arbitration_config[BCT_SDRAM_ARB_CONFIG_WORDS];
13100a2749dSAllen Martin };
13200a2749dSAllen Martin #endif
133