spl.c 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * SPL specific code for Compulab CM-T54 board
  4. *
  5. * Copyright (C) 2014, Compulab Ltd - http://compulab.co.il/
  6. *
  7. * Author: Dmitry Lifshitz <lifshitz@compulab.co.il>
  8. */
  9. #include <asm/emif.h>
  10. const struct emif_regs emif_regs_ddr3_532_mhz_cm_t54 = {
  11. #if defined(CONFIG_DRAM_1G) || defined(CONFIG_DRAM_512M)
  12. .sdram_config_init = 0x618522B2,
  13. .sdram_config = 0x618522B2,
  14. #elif defined(CONFIG_DRAM_2G)
  15. .sdram_config_init = 0x618522BA,
  16. .sdram_config = 0x618522BA,
  17. #endif
  18. .sdram_config2 = 0x0,
  19. .ref_ctrl = 0x00001040,
  20. .sdram_tim1 = 0xEEEF36F3,
  21. .sdram_tim2 = 0x348F7FDA,
  22. .sdram_tim3 = 0x027F88A8,
  23. .read_idle_ctrl = 0x00050000,
  24. .zq_config = 0x1007190B,
  25. .temp_alert_config = 0x00000000,
  26. .emif_ddr_phy_ctlr_1_init = 0x0030400B,
  27. .emif_ddr_phy_ctlr_1 = 0x0034400B,
  28. .emif_ddr_ext_phy_ctrl_1 = 0x04040100,
  29. .emif_ddr_ext_phy_ctrl_2 = 0x00000000,
  30. .emif_ddr_ext_phy_ctrl_3 = 0x00000000,
  31. .emif_ddr_ext_phy_ctrl_4 = 0x00000000,
  32. .emif_ddr_ext_phy_ctrl_5 = 0x4350D435,
  33. .emif_rd_wr_lvl_rmp_win = 0x00000000,
  34. .emif_rd_wr_lvl_rmp_ctl = 0x80000000,
  35. .emif_rd_wr_lvl_ctl = 0x00000000,
  36. .emif_rd_wr_exec_thresh = 0x40000305,
  37. };
  38. const struct dmm_lisa_map_regs lisa_map_cm_t54 = {
  39. .dmm_lisa_map_0 = 0x0,
  40. .dmm_lisa_map_1 = 0x0,
  41. #ifdef CONFIG_DRAM_2G
  42. .dmm_lisa_map_2 = 0x80740300,
  43. #elif defined(CONFIG_DRAM_1G)
  44. .dmm_lisa_map_2 = 0x80640300,
  45. #elif defined(CONFIG_DRAM_512M)
  46. .dmm_lisa_map_2 = 0x80500100,
  47. #endif
  48. .dmm_lisa_map_3 = 0x00000000,
  49. .is_ma_present = 0x1,
  50. };
  51. void emif_get_reg_dump(u32 emif_nr, const struct emif_regs **regs)
  52. {
  53. *regs = &emif_regs_ddr3_532_mhz_cm_t54;
  54. }
  55. void emif_get_dmm_regs(const struct dmm_lisa_map_regs **dmm_lisa_regs)
  56. {
  57. *dmm_lisa_regs = &lisa_map_cm_t54;
  58. }