plugin.S 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (C) 2016 Freescale Semiconductor, Inc.
  4. */
  5. #include <config.h>
  6. /* DDR script */
  7. .macro imx6sll_evk_ddr_setting
  8. ldr r0, =IOMUXC_BASE_ADDR
  9. ldr r1, =0x00080000
  10. str r1, [r0, #0x550]
  11. ldr r1, =0x00000000
  12. str r1, [r0, #0x534]
  13. ldr r1, =0x00000030
  14. str r1, [r0, #0x2AC]
  15. str r1, [r0, #0x548]
  16. str r1, [r0, #0x52C]
  17. ldr r1, =0x00020000
  18. str r1, [r0, #0x530]
  19. ldr r1, =0x00003030
  20. str r1, [r0, #0x2B0]
  21. str r1, [r0, #0x2B4]
  22. str r1, [r0, #0x2B8]
  23. str r1, [r0, #0x2BC]
  24. ldr r1, =0x00020000
  25. str r1, [r0, #0x540]
  26. ldr r1, =0x00000030
  27. str r1, [r0, #0x544]
  28. str r1, [r0, #0x54C]
  29. str r1, [r0, #0x554]
  30. str r1, [r0, #0x558]
  31. str r1, [r0, #0x294]
  32. str r1, [r0, #0x298]
  33. str r1, [r0, #0x29C]
  34. str r1, [r0, #0x2A0]
  35. ldr r1, =0x00082030
  36. str r1, [r0, #0x2C0]
  37. ldr r0, =MMDC_P0_BASE_ADDR
  38. ldr r1, =0x00008000
  39. str r1, [r0, #0x1C]
  40. ldr r1, =0xA1390003
  41. str r1, [r0, #0x800]
  42. ldr r1, =0x084700C7
  43. str r1, [r0, #0x85C]
  44. ldr r1, =0x00400000
  45. str r1, [r0, #0x890]
  46. ldr r1, =0x3F393B3C
  47. str r1, [r0, #0x848]
  48. ldr r1, =0x262C3826
  49. str r1, [r0, #0x850]
  50. ldr r1, =0x33333333
  51. str r1, [r0, #0x81C]
  52. str r1, [r0, #0x820]
  53. str r1, [r0, #0x824]
  54. str r1, [r0, #0x828]
  55. ldr r1, =0xf3333333
  56. str r1, [r0, #0x82C]
  57. str r1, [r0, #0x830]
  58. str r1, [r0, #0x834]
  59. str r1, [r0, #0x838]
  60. ldr r1, =0x24922492
  61. str r1, [r0, #0x8C0]
  62. ldr r1, =0x00000800
  63. str r1, [r0, #0x8B8]
  64. ldr r1, =0x00020052
  65. str r1, [r0, #0x004]
  66. ldr r1, =0x53574333
  67. str r1, [r0, #0x00C]
  68. ldr r1, =0x00100B22
  69. str r1, [r0, #0x010]
  70. ldr r1, =0x00170778
  71. str r1, [r0, #0x038]
  72. ldr r1, =0x00C700DB
  73. str r1, [r0, #0x014]
  74. ldr r1, =0x00201718
  75. str r1, [r0, #0x018]
  76. ldr r1, =0x0F9F26D2
  77. str r1, [r0, #0x02C]
  78. ldr r1, =0x009F0E10
  79. str r1, [r0, #0x030]
  80. ldr r1, =0x0000005F
  81. str r1, [r0, #0x040]
  82. ldr r1, =0xC4190000
  83. str r1, [r0, #0x000]
  84. ldr r1, =0x20000000
  85. str r1, [r0, #0x83C]
  86. ldr r1, =0x00008050
  87. str r1, [r0, #0x01C]
  88. ldr r1, =0x00008058
  89. str r1, [r0, #0x01C]
  90. ldr r1, =0x003F8030
  91. str r1, [r0, #0x01C]
  92. ldr r1, =0x003F8038
  93. str r1, [r0, #0x01C]
  94. ldr r1, =0xFF0A8030
  95. str r1, [r0, #0x01C]
  96. ldr r1, =0xFF0A8038
  97. str r1, [r0, #0x01C]
  98. ldr r1, =0x04028030
  99. str r1, [r0, #0x01C]
  100. ldr r1, =0x04028038
  101. str r1, [r0, #0x01C]
  102. ldr r1, =0x83018030
  103. str r1, [r0, #0x01C]
  104. ldr r1, =0x83018038
  105. str r1, [r0, #0x01C]
  106. ldr r1, =0x01038030
  107. str r1, [r0, #0x01C]
  108. ldr r1, =0x01038038
  109. str r1, [r0, #0x01C]
  110. ldr r1, =0x00001800
  111. str r1, [r0, #0x020]
  112. ldr r1, =0xA1390003
  113. str r1, [r0, #0x800]
  114. ldr r1, =0x00020052
  115. str r1, [r0, #0x004]
  116. ldr r1, =0x00011006
  117. str r1, [r0, #0x404]
  118. ldr r1, =0x00000000
  119. str r1, [r0, #0x01C]
  120. .endm
  121. .macro imx6_clock_gating
  122. ldr r0, =CCM_BASE_ADDR
  123. ldr r1, =0xffffffff
  124. str r1, [r0, #0x068]
  125. str r1, [r0, #0x06c]
  126. str r1, [r0, #0x070]
  127. str r1, [r0, #0x074]
  128. str r1, [r0, #0x078]
  129. str r1, [r0, #0x07c]
  130. str r1, [r0, #0x080]
  131. .endm
  132. .macro imx6_qos_setting
  133. .endm
  134. .macro imx6_ddr_setting
  135. imx6sll_evk_ddr_setting
  136. .endm
  137. /* include the common plugin code here */
  138. #include <asm/arch/mx6_plugin.S>