sdram_param.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * (C) Copyright 2010, 2011
  4. * NVIDIA Corporation <www.nvidia.com>
  5. */
  6. #ifndef _SDRAM_PARAM_H_
  7. #define _SDRAM_PARAM_H_
  8. /*
  9. * Defines the number of 32-bit words provided in each set of SDRAM parameters
  10. * for arbitration configuration data.
  11. */
  12. #define BCT_SDRAM_ARB_CONFIG_WORDS 27
  13. enum memory_type {
  14. MEMORY_TYPE_NONE = 0,
  15. MEMORY_TYPE_DDR,
  16. MEMORY_TYPE_LPDDR,
  17. MEMORY_TYPE_DDR2,
  18. MEMORY_TYPE_LPDDR2,
  19. MEMORY_TYPE_NUM,
  20. MEMORY_TYPE_FORCE32 = 0x7FFFFFFF
  21. };
  22. /* Defines the SDRAM parameter structure */
  23. struct sdram_params {
  24. enum memory_type memory_type;
  25. u32 pllm_charge_pump_setup_control;
  26. u32 pllm_loop_filter_setup_control;
  27. u32 pllm_input_divider;
  28. u32 pllm_feedback_divider;
  29. u32 pllm_post_divider;
  30. u32 pllm_stable_time;
  31. u32 emc_clock_divider;
  32. u32 emc_auto_cal_interval;
  33. u32 emc_auto_cal_config;
  34. u32 emc_auto_cal_wait;
  35. u32 emc_pin_program_wait;
  36. u32 emc_rc;
  37. u32 emc_rfc;
  38. u32 emc_ras;
  39. u32 emc_rp;
  40. u32 emc_r2w;
  41. u32 emc_w2r;
  42. u32 emc_r2p;
  43. u32 emc_w2p;
  44. u32 emc_rd_rcd;
  45. u32 emc_wr_rcd;
  46. u32 emc_rrd;
  47. u32 emc_rext;
  48. u32 emc_wdv;
  49. u32 emc_quse;
  50. u32 emc_qrst;
  51. u32 emc_qsafe;
  52. u32 emc_rdv;
  53. u32 emc_refresh;
  54. u32 emc_burst_refresh_num;
  55. u32 emc_pdex2wr;
  56. u32 emc_pdex2rd;
  57. u32 emc_pchg2pden;
  58. u32 emc_act2pden;
  59. u32 emc_ar2pden;
  60. u32 emc_rw2pden;
  61. u32 emc_txsr;
  62. u32 emc_tcke;
  63. u32 emc_tfaw;
  64. u32 emc_trpab;
  65. u32 emc_tclkstable;
  66. u32 emc_tclkstop;
  67. u32 emc_trefbw;
  68. u32 emc_quseextra;
  69. u32 emc_fbioc_fg1;
  70. u32 emc_fbio_dqsib_dly;
  71. u32 emc_fbio_dqsib_dly_msb;
  72. u32 emc_fbio_quse_dly;
  73. u32 emc_fbio_quse_dly_msb;
  74. u32 emc_fbio_cfg5;
  75. u32 emc_fbio_cfg6;
  76. u32 emc_fbio_spare;
  77. u32 emc_mrs;
  78. u32 emc_emrs;
  79. u32 emc_mrw1;
  80. u32 emc_mrw2;
  81. u32 emc_mrw3;
  82. u32 emc_mrw_reset_command;
  83. u32 emc_mrw_reset_init_wait;
  84. u32 emc_adr_cfg;
  85. u32 emc_adr_cfg1;
  86. u32 emc_emem_cfg;
  87. u32 emc_low_latency_config;
  88. u32 emc_cfg;
  89. u32 emc_cfg2;
  90. u32 emc_dbg;
  91. u32 ahb_arbitration_xbar_ctrl;
  92. u32 emc_cfg_dig_dll;
  93. u32 emc_dll_xform_dqs;
  94. u32 emc_dll_xform_quse;
  95. u32 warm_boot_wait;
  96. u32 emc_ctt_term_ctrl;
  97. u32 emc_odt_write;
  98. u32 emc_odt_read;
  99. u32 emc_zcal_ref_cnt;
  100. u32 emc_zcal_wait_cnt;
  101. u32 emc_zcal_mrw_cmd;
  102. u32 emc_mrs_reset_dll;
  103. u32 emc_mrw_zq_init_dev0;
  104. u32 emc_mrw_zq_init_dev1;
  105. u32 emc_mrw_zq_init_wait;
  106. u32 emc_mrs_reset_dll_wait;
  107. u32 emc_emrs_emr2;
  108. u32 emc_emrs_emr3;
  109. u32 emc_emrs_ddr2_dll_enable;
  110. u32 emc_mrs_ddr2_dll_reset;
  111. u32 emc_emrs_ddr2_ocd_calib;
  112. u32 emc_edr2_wait;
  113. u32 emc_cfg_clktrim0;
  114. u32 emc_cfg_clktrim1;
  115. u32 emc_cfg_clktrim2;
  116. u32 pmc_ddr_pwr;
  117. u32 apb_misc_gp_xm2cfga_padctrl;
  118. u32 apb_misc_gp_xm2cfgc_padctrl;
  119. u32 apb_misc_gp_xm2cfgc_padctrl2;
  120. u32 apb_misc_gp_xm2cfgd_padctrl;
  121. u32 apb_misc_gp_xm2cfgd_padctrl2;
  122. u32 apb_misc_gp_xm2clkcfg_padctrl;
  123. u32 apb_misc_gp_xm2comp_padctrl;
  124. u32 apb_misc_gp_xm2vttgen_padctrl;
  125. u32 arbitration_config[BCT_SDRAM_ARB_CONFIG_WORDS];
  126. };
  127. #endif