summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/arch-tegra20/sdram_param.h
blob: aaf05084e96f03e903cf95bd1a50e1a5c63ecbf4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
/*
 *  (C) Copyright 2010, 2011
 *  NVIDIA Corporation <www.nvidia.com>
 *
 * SPDX-License-Identifier:	GPL-2.0+
 */

#ifndef _SDRAM_PARAM_H_
#define _SDRAM_PARAM_H_

/*
 * Defines the number of 32-bit words provided in each set of SDRAM parameters
 * for arbitration configuration data.
 */
#define BCT_SDRAM_ARB_CONFIG_WORDS 27

enum memory_type {
	MEMORY_TYPE_NONE = 0,
	MEMORY_TYPE_DDR,
	MEMORY_TYPE_LPDDR,
	MEMORY_TYPE_DDR2,
	MEMORY_TYPE_LPDDR2,
	MEMORY_TYPE_NUM,
	MEMORY_TYPE_FORCE32 = 0x7FFFFFFF
};

/* Defines the SDRAM parameter structure */
struct sdram_params {
	enum memory_type memory_type;
	u32 pllm_charge_pump_setup_control;
	u32 pllm_loop_filter_setup_control;
	u32 pllm_input_divider;
	u32 pllm_feedback_divider;
	u32 pllm_post_divider;
	u32 pllm_stable_time;
	u32 emc_clock_divider;
	u32 emc_auto_cal_interval;
	u32 emc_auto_cal_config;
	u32 emc_auto_cal_wait;
	u32 emc_pin_program_wait;
	u32 emc_rc;
	u32 emc_rfc;
	u32 emc_ras;
	u32 emc_rp;
	u32 emc_r2w;
	u32 emc_w2r;
	u32 emc_r2p;
	u32 emc_w2p;
	u32 emc_rd_rcd;
	u32 emc_wr_rcd;
	u32 emc_rrd;
	u32 emc_rext;
	u32 emc_wdv;
	u32 emc_quse;
	u32 emc_qrst;
	u32 emc_qsafe;
	u32 emc_rdv;
	u32 emc_refresh;
	u32 emc_burst_refresh_num;
	u32 emc_pdex2wr;
	u32 emc_pdex2rd;
	u32 emc_pchg2pden;
	u32 emc_act2pden;
	u32 emc_ar2pden;
	u32 emc_rw2pden;
	u32 emc_txsr;
	u32 emc_tcke;
	u32 emc_tfaw;
	u32 emc_trpab;
	u32 emc_tclkstable;
	u32 emc_tclkstop;
	u32 emc_trefbw;
	u32 emc_quseextra;
	u32 emc_fbioc_fg1;
	u32 emc_fbio_dqsib_dly;
	u32 emc_fbio_dqsib_dly_msb;
	u32 emc_fbio_quse_dly;
	u32 emc_fbio_quse_dly_msb;
	u32 emc_fbio_cfg5;
	u32 emc_fbio_cfg6;
	u32 emc_fbio_spare;
	u32 emc_mrs;
	u32 emc_emrs;
	u32 emc_mrw1;
	u32 emc_mrw2;
	u32 emc_mrw3;
	u32 emc_mrw_reset_command;
	u32 emc_mrw_reset_init_wait;
	u32 emc_adr_cfg;
	u32 emc_adr_cfg1;
	u32 emc_emem_cfg;
	u32 emc_low_latency_config;
	u32 emc_cfg;
	u32 emc_cfg2;
	u32 emc_dbg;
	u32 ahb_arbitration_xbar_ctrl;
	u32 emc_cfg_dig_dll;
	u32 emc_dll_xform_dqs;
	u32 emc_dll_xform_quse;
	u32 warm_boot_wait;
	u32 emc_ctt_term_ctrl;
	u32 emc_odt_write;
	u32 emc_odt_read;
	u32 emc_zcal_ref_cnt;
	u32 emc_zcal_wait_cnt;
	u32 emc_zcal_mrw_cmd;
	u32 emc_mrs_reset_dll;
	u32 emc_mrw_zq_init_dev0;
	u32 emc_mrw_zq_init_dev1;
	u32 emc_mrw_zq_init_wait;
	u32 emc_mrs_reset_dll_wait;
	u32 emc_emrs_emr2;
	u32 emc_emrs_emr3;
	u32 emc_emrs_ddr2_dll_enable;
	u32 emc_mrs_ddr2_dll_reset;
	u32 emc_emrs_ddr2_ocd_calib;
	u32 emc_edr2_wait;
	u32 emc_cfg_clktrim0;
	u32 emc_cfg_clktrim1;
	u32 emc_cfg_clktrim2;
	u32 pmc_ddr_pwr;
	u32 apb_misc_gp_xm2cfga_padctrl;
	u32 apb_misc_gp_xm2cfgc_padctrl;
	u32 apb_misc_gp_xm2cfgc_padctrl2;
	u32 apb_misc_gp_xm2cfgd_padctrl;
	u32 apb_misc_gp_xm2cfgd_padctrl2;
	u32 apb_misc_gp_xm2clkcfg_padctrl;
	u32 apb_misc_gp_xm2comp_padctrl;
	u32 apb_misc_gp_xm2vttgen_padctrl;
	u32 arbitration_config[BCT_SDRAM_ARB_CONFIG_WORDS];
};
#endif