MT6757_FPGA_LK.cmm 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. ;;-> # Option: Serial Wire or Parallel JTAG
  2. ;; OPT_JTAG
  3. ;; 0: Parallel
  4. ;; 1: Serial Wire
  5. &OPT_JTAG=0
  6. ;;-> # Option: Number of CPUs to be connected
  7. ;; OPT_NR_CPUS
  8. &OPT_NR_CPUS=1
  9. ;;-> # Option: RAM booting or EMMC booting
  10. ;; OPT_RAM_BOOT
  11. ;; 0: EMMC booting
  12. ;; 1: RAM booting
  13. &OPT_RAM_BOOT=1
  14. ;;-> # Option: FPGA with LCM
  15. ;; OPT_WITH_LCM
  16. ;; 0: LCM is not exist
  17. ;; 1: LCM is exist
  18. &OPT_WITH_LCM=1
  19. &Project="fpga6757_64"
  20. ; &OutProjectPath="../build-&Project"
  21. &OutProjectPath="../../../../../../../out/target/product/&Project/obj/BOOTLOADER_OBJ/build-&Project"
  22. SYStem.Down
  23. SYStem.Reset
  24. SYStem.Option EnReset ON
  25. SYStem.Option ResBreak OFF
  26. SYStem.Option WaitReset OFF
  27. ;SYStem.JtagClock 10.MHz
  28. ;SYStem.JtagClock 1.MHz
  29. SYStem.JtagClock 3.MHz
  30. IF &OPT_JTAG==0
  31. (
  32. SYStem.Config SWDP OFF
  33. )
  34. ELSE IF &OPT_JTAG==1
  35. (
  36. SYStem.Config SWDP ON
  37. )
  38. SYStem.CPU CORTEXA53
  39. SYStem.Config CORENUMBER &OPT_NR_CPUS
  40. ;SYStem.Config COREBASE 0x80810000 0x80910000 0x80A10000 0x80B10000 0x80C10000 0x80D10000 0x80E10000 0x80F10000
  41. ;SYStem.Config CTIBASE 0x80820000 0x80920000 0x80A20000 0x80B20000 0x80C20000 0x80D20000 0x80E20000 0x80F20000
  42. SYSTEM.CONFIG COREBASE 0x8D410000;
  43. SYStem.CONFIG CTIBASE 0x8D420000;
  44. SYStem.Up
  45. MMU.OFF
  46. SETUP.IMASKHLL ON
  47. SETUP.IMASKASM ON
  48. ; Disable DABORT and PABORT breakpoint
  49. TrOnchip.Set dabort off
  50. TrOnchip.Set pabort off
  51. TrOnchip.Set undef off
  52. TrOnchip.Set irq off
  53. ; Set default breakpoints to HW
  54. Break.SELect Program OnChip
  55. Break.SELect Read OnChip
  56. Break.SELect Write OnChip
  57. ;
  58. ; board init
  59. ;
  60. ; Disable acinactm
  61. D.S c:0x1020011C %LE %LONG 0x1
  62. D.S c:0x1020011C %LE %LONG 0x1
  63. ; Disable wdt
  64. ;D.S c:0x10212000 %LE %LONG 0x22000064
  65. D.S SD:0x10007000 %LE %LONG 0x22000064
  66. ; setup boot augu from PL
  67. IF &OPT_RAM_BOOT==1
  68. (
  69. ;do MT6757_FPGA_DDR.cmm
  70. ; do olympus_FPGA_DDR_V7_20151021_older_512M.cmm
  71. ; do olympus_FPGA_DDR_V7_20151021.cmm
  72. do MT6757_FPGA_DDR.cmm
  73. IF &OPT_WITH_LCM==1
  74. (
  75. do MT6757_DSI0_B60384.cmm
  76. )
  77. R.S R4 0x4007f288
  78. D.S SD:0x4007f288 %LE %LONG 0x504c504c ;maggic_number
  79. D.S SD:0x4007f28c %LE %LONG 0x00000000 ;boot_mode
  80. D.S SD:0x4007f290 %LE %LONG 0x00000000 ;e_flag
  81. D.S SD:0x4007f294 %LE %LONG 0x11003000 ;log_port
  82. D.S SD:0x4007f298 %LE %LONG 0x000e1000 ;log_baudrate
  83. D.S SD:0x4007f29c %LE %LONG 0xffff0201 ;reserved[2], part_num, log_enable
  84. D.S SD:0x4007f2a0 %LE %LONG 0x00000002 ;dram_rank_num
  85. D.S SD:0x4007f2a4 %LE %LONG 0x10000000 ;dram_rank_size[0]
  86. D.S SD:0x4007f2a8 %LE %LONG 0x10000000 ;dram_rank_size[1]
  87. D.S SD:0x4007f2ac %LE %LONG 0xdfffffff ;dram_rank_size[2]
  88. D.S SD:0x4007f2b0 %LE %LONG 0xfffffdff ;dram_rank_size[3]
  89. D.S SD:0x4007f2b4 %LE %LONG 0xffffffff
  90. D.S SD:0x4007f2b8 %LE %LONG 0x00000002 ;mblock_num
  91. D.S SD:0x4007f2bc %LE %LONG 0x00000000
  92. D.S SD:0x4007f2c0 %LE %LONG 0x40000000 ;mblock[0].start
  93. D.S SD:0x4007f2c4 %LE %LONG 0x00000000
  94. D.S SD:0x4007f2c8 %LE %LONG 0x10000000 ;mblock[0].size
  95. D.S SD:0x4007f2cc %LE %LONG 0x00000000
  96. D.S SD:0x4007f2d0 %LE %LONG 0x00000000 ;mblock[0].rank
  97. D.S SD:0x4007f2d4 %LE %LONG 0x00000000
  98. D.S SD:0x4007f2d8 %LE %LONG 0x50000000 ;mblock[1].start
  99. D.S SD:0x4007f2dc %LE %LONG 0x00000000
  100. D.S SD:0x4007f2e0 %LE %LONG 0x0fe00000 ;mblock[1].size
  101. D.S SD:0x4007f2e4 %LE %LONG 0x00000000
  102. D.S SD:0x4007f2e8 %LE %LONG 0x00000001 ;mblock[1].rank
  103. D.S SD:0x4007f2ec %LE %LONG 0x00000000
  104. D.S SD:0x4007f2f0 %LE %LONG 0x00000000 ;mblock[2].start
  105. D.S SD:0x4007f2f4 %LE %LONG 0x00000000
  106. D.S SD:0x4007f2f8 %LE %LONG 0x00000000 ;mblock[2].size
  107. D.S SD:0x4007f2fc %LE %LONG 0x00000000
  108. D.S SD:0x4007f300 %LE %LONG 0x00000000 ;mblock[2].rank
  109. D.S SD:0x4007f304 %LE %LONG 0x00000000
  110. D.S SD:0x4007f308 %LE %LONG 0x00000000 ;mblock[3].start
  111. D.S SD:0x4007f30c %LE %LONG 0x00000000
  112. D.S SD:0x4007f310 %LE %LONG 0x00000000 ;mblock[3].size
  113. D.S SD:0x4007f314 %LE %LONG 0x00000000
  114. D.S SD:0x4007f318 %LE %LONG 0x00000000 ;mblock[3].rank
  115. D.S SD:0x4007f31c %LE %LONG 0x00000000
  116. D.S SD:0x4007f320 %LE %LONG 0x00000002 ;orig_dram_info.rank_num
  117. D.S SD:0x4007f324 %LE %LONG 0xffffffff
  118. D.S SD:0x4007f328 %LE %LONG 0x40000000 ;rank_info[0].start
  119. D.S SD:0x4007f32c %LE %LONG 0x00000000
  120. D.S SD:0x4007f330 %LE %LONG 0x10000000 ;rank_info[0].size
  121. D.S SD:0x4007f334 %LE %LONG 0x00000000
  122. D.S SD:0x4007f338 %LE %LONG 0x50000000 ;rank_info[1].start
  123. D.S SD:0x4007f33c %LE %LONG 0x00000000
  124. D.S SD:0x4007f340 %LE %LONG 0x10000000 ;rank_info[1].size
  125. D.S SD:0x4007f344 %LE %LONG 0x00000000
  126. D.S SD:0x4007f348 %LE %LONG 0xffffffff ;rank_info[2].start
  127. D.S SD:0x4007f34c %LE %LONG 0xffffffff
  128. D.S SD:0x4007f350 %LE %LONG 0xfffeffff ;rank_info[2].size
  129. D.S SD:0x4007f354 %LE %LONG 0xfffffffd
  130. D.S SD:0x4007f358 %LE %LONG 0xffffffff ;rank_info[3].start
  131. D.S SD:0x4007f35c %LE %LONG 0xffffffff
  132. D.S SD:0x4007f360 %LE %LONG 0xffffffff ;rank_info[3].size
  133. D.S SD:0x4007f364 %LE %LONG 0xffffffff
  134. D.S SD:0x4007f368 %LE %LONG 0x00000000 ;lca_reserved_mem.start
  135. D.S SD:0x4007f36c %LE %LONG 0x00000000
  136. D.S SD:0x4007f370 %LE %LONG 0x00000000 ;lca_reserved_mem.size
  137. D.S SD:0x4007f374 %LE %LONG 0x00000000
  138. D.S SD:0x4007f378 %LE %LONG 0x5fe00000 ;tee_reserved_mem.start
  139. D.S SD:0x4007f37c %LE %LONG 0x00000000
  140. D.S SD:0x4007f380 %LE %LONG 0x00200000 ;tee_reserved_mem.size
  141. D.S SD:0x4007f384 %LE %LONG 0x00000000
  142. D.S SD:0x4007f388 %LE %LONG 0x00000000 ;boot_reason
  143. D.S SD:0x4007f38c %LE %LONG 0x00000000 ;meta_com_type
  144. D.S SD:0x4007f390 %LE %LONG 0x00000000 ;meta_com_id
  145. D.S SD:0x4007f394 %LE %LONG 0x00000000 ;boot_time
  146. D.S SD:0x4007f398 %LE %LONG 0xffffffff ;da_info.addr
  147. D.S SD:0x4007f39c %LE %LONG 0xffffffff ;da_info.arg1
  148. D.S SD:0x4007f3a0 %LE %LONG 0xffffdfff ;da_info.arg2
  149. D.S SD:0x4007f3a4 %LE %LONG 0xdfffffff ;da_info.len
  150. D.S SD:0x4007f3a8 %LE %LONG 0xffffffef ;da_info.sig_len
  151. D.S SD:0x4007f3ac %LE %LONG 0xffffffff ;sec_limit.magic_num
  152. D.S SD:0x4007f3b0 %LE %LONG 0xffffdfff ;sec_limit.forbid_mode
  153. D.S SD:0x4007f3b4 %LE %LONG 0x40079a84 ;part_info pointer
  154. D.S SD:0x4007f3b8 %LE %LONG 0xfffffffd ;md_type
  155. D.S SD:0x4007f3bc %LE %LONG 0x00000000 ;ddr_reserve_enable
  156. D.S SD:0x4007f3c0 %LE %LONG 0x00000000 ;ddr_reserve_success
  157. D.S SD:0x4007f3c4 %LE %LONG 0x00199880 ;dram_buf_size
  158. D.S SD:0x4007f3c8 %LE %LONG 0x11003000 ;meta_uart_port
  159. D.S SD:0x4007f3cc %LE %LONG 0x00000000 ;smc_boot_opt
  160. D.S SD:0x4007f3d0 %LE %LONG 0x00000003 ;lk_boot_opt
  161. D.S SD:0x4007f3d4 %LE %LONG 0x00000000 ;kernel_boot_opt
  162. D.S SD:0x4007f3d8 %LE %LONG 0x0012c000 ;non_secure_sram_addr
  163. D.S SD:0x4007f3dc %LE %LONG 0x00004000 ;non_secure_sram_size
  164. )
  165. ;print "loading logo image"
  166. ;&logo_addr=0x8D900000;
  167. ;d.load.binary ../../../../mediatek/custom/common/lk/logo/wvga/wvga_uboot.bmp &logo_addr
  168. print "loading lk image"
  169. IF &OPT_RAM_BOOT==0
  170. (
  171. Data.Load.ELF &OutProjectPath/lk /gnu /nocode /RELPATH /PATH ".."
  172. )
  173. ELSE
  174. (
  175. Data.Load.ELF &OutProjectPath/lk /gnu /RELPATH /PATH ".."
  176. )
  177. ;Y.SPATH.RESET ; reset all source path
  178. ;Y.SPATH.SRD ../app
  179. ;Y.SPATH.SRD ../app/mt_boot
  180. ;Y.SPATH.SRD ../arch/arm
  181. ;Y.SPATH.SRD ../dev
  182. ;Y.SPATH.SRD ../include
  183. ;Y.SPATH.SRD ../kernel
  184. ;Y.SPATH.SRD ../lib
  185. ;Y.SPATH.SRD ../platform/mt6757
  186. ;Core.Select 0
  187. Data.List
  188. ;d.l
  189. ;stop
  190. enddo