memsetup.S 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. /* Memory sub-system initialization code */
  2. #include <config.h>
  3. #include <version.h>
  4. #include <asm/regdef.h>
  5. #include <asm/au1x00.h>
  6. .globl memsetup
  7. memsetup:
  8. /* First setup pll:s to make serial work ok */
  9. /* We have a 12 MHz crystal */
  10. li t0, SYS_CPUPLL
  11. li t1, 0x21 /* 396 MHz */
  12. sw t1, 0(t0)
  13. sync
  14. nop
  15. /* Setup AUX PLL */
  16. li t0, SYS_AUXPLL
  17. li t1, 8 /* 96 MHz */
  18. sw t1, 0(t0) /* aux pll */
  19. sync
  20. /* SDCS 0,1 SDRAM */
  21. li t0, MEM_SDMODE0
  22. li t1, 0x005522AA
  23. sw t1, 0(t0)
  24. li t0, MEM_SDMODE1
  25. li t1, 0x005522AA
  26. sw t1, 0(t0)
  27. li t0, MEM_SDADDR0
  28. li t1, 0x001003F8
  29. sw t1, 0(t0)
  30. li t0, MEM_SDADDR1
  31. li t1, 0x001023F8
  32. sw t1, 0(t0)
  33. sync
  34. li t0, MEM_SDREFCFG
  35. li t1, 0x64000C24 /* Disable */
  36. sw t1, 0(t0)
  37. sync
  38. li t0, MEM_SDPRECMD
  39. sw zero, 0(t0)
  40. sync
  41. li t0, MEM_SDAUTOREF
  42. sw zero, 0(t0)
  43. sync
  44. sw zero, 0(t0)
  45. sync
  46. li t0, MEM_SDREFCFG
  47. li t1, 0x66000C24 /* Enable */
  48. sw t1, 0(t0)
  49. sync
  50. li t0, MEM_SDWRMD0
  51. li t1, 0x00000033
  52. sw t1, 0(t0)
  53. sync
  54. li t0, MEM_SDWRMD1
  55. li t1, 0x00000033
  56. sw t1, 0(t0)
  57. sync
  58. /* Static memory controller */
  59. /* RCE0 AMD 29LV640M MirrorBit Flash */
  60. li t0, MEM_STCFG0
  61. li t1, 0x00000003
  62. sw t1, 0(t0)
  63. li t0, MEM_STTIME0
  64. li t1, 0x22080b20
  65. sw t1, 0(t0)
  66. li t0, MEM_STADDR0
  67. li t1, 0x11E03F80
  68. sw t1, 0(t0)
  69. /* RCE1 CPLD Board Logic */
  70. li t0, MEM_STCFG1
  71. li t1, 0x00000080
  72. sw t1, 0(t0)
  73. li t0, MEM_STTIME1
  74. li t1, 0x22080a20
  75. sw t1, 0(t0)
  76. li t0, MEM_STADDR1
  77. li t1, 0x10c03f00
  78. sw t1, 0(t0)
  79. /* RCE3 PCMCIA 250ns */
  80. li t0, MEM_STCFG3
  81. li t1, 0x00000002
  82. sw t1, 0(t0)
  83. li t0, MEM_STTIME3
  84. li t1, 0x280E3E07
  85. sw t1, 0(t0)
  86. li t0, MEM_STADDR3
  87. li t1, 0x10000000
  88. sw t1, 0(t0)
  89. sync
  90. j ra
  91. nop