MT6750_FPGA_LK.cmm 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  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. ;; &OPT_DRAM_SIZE=1024
  20. &OPT_DRAM_SIZE=512
  21. &Project="fpga6750_64"
  22. &OutProjectPath="../../../../out/target/product/&Project/obj/BOOTLOADER_OBJ/build-&Project"
  23. ;&OutProjectPath="../build-&Project"
  24. ;&LKStart=0x81E00000
  25. SYStem.Down
  26. SYStem.Reset
  27. SYStem.Option EnReset ON
  28. SYStem.Option ResBreak OFF
  29. SYStem.Option WaitReset OFF
  30. SYStem.JtagClock 10.MHz
  31. IF &OPT_JTAG==0
  32. (
  33. SYStem.Config SWDP OFF
  34. )
  35. ELSE IF &OPT_JTAG==1
  36. (
  37. SYStem.Config SWDP ON
  38. )
  39. ;SYSTEM.CPU CortexA7MPCore
  40. SYSTEM.CPU CortexA53
  41. SYStem.Config CORENUMBER &OPT_NR_CPUS
  42. ;SYStem.Config COREBASE 0x80070000
  43. SYStem.Config COREBASE 0x80810000
  44. SYStem.Config CTIBASE 0x80820000
  45. SYStem.Up
  46. MMU.OFF
  47. SETUP.IMASKHLL ON
  48. SETUP.IMASKASM ON
  49. ; Disable DABORT and PABORT breakpoint
  50. TrOnchip.Set dabort off
  51. TrOnchip.Set pabort off
  52. TrOnchip.Set undef off
  53. TrOnchip.Set irq off
  54. ; Set default breakpoints to HW
  55. Break.SELect Program OnChip
  56. Break.SELect Read OnChip
  57. Break.SELect Write OnChip
  58. ;
  59. ; board init
  60. ;
  61. ; Disable acinactm
  62. ;D.S c:0x1020011C %LE %LONG 0x1
  63. ;D.S c:0x1020011C %LE %LONG 0x1
  64. ; Disable wdt
  65. ;D.S c:0x10212000 %LE %LONG 0x22000064
  66. d.s c:0x10007000 %le %long 0x22000064
  67. ; setup boot augu from PL
  68. IF &OPT_RAM_BOOT==1
  69. (
  70. ;; do Jade_FPGA_DDR_512MB.cmm
  71. IF &OPT_DRAM_SIZE==1024
  72. do MT6750_FPGA_DDR_1024MB
  73. IF &OPT_DRAM_SIZE==512
  74. do MT6750_FPGA_DDR_512MB
  75. IF &OPT_WITH_LCM==1
  76. (
  77. do MT6750_DSI0_B60384.cmm
  78. )
  79. R.S R4 0x4007f288
  80. D.S SD:0x4007f288 %LE %LONG 0x504c504c ;maggic_number
  81. D.S SD:0x4007f28c %LE %LONG 0x00000000 ;boot_mode
  82. D.S SD:0x4007f290 %LE %LONG 0x00000000 ;e_flag
  83. D.S SD:0x4007f294 %LE %LONG 0x11003000 ;log_port
  84. D.S SD:0x4007f298 %LE %LONG 0x000e1000 ;log_baudrate
  85. D.S SD:0x4007f29c %LE %LONG 0xffff0201 ;reserved[2], part_num, log_enable
  86. D.S SD:0x4007f2a0 %LE %LONG 0x00000002 ;dram_rank_num
  87. D.S SD:0x4007f2a4 %LE %LONG 0x10000000 ;dram_rank_size[0]
  88. D.S SD:0x4007f2a8 %LE %LONG 0x10000000 ;dram_rank_size[1]
  89. ; D.S SD:0x4007f2a4 %LE %LONG 0x20000000 ;dram_rank_size[0]
  90. ; D.S SD:0x4007f2a8 %LE %LONG 0x20000000 ;dram_rank_size[1]
  91. D.S SD:0x4007f2ac %LE %LONG 0xdfffffff ;dram_rank_size[2]
  92. D.S SD:0x4007f2b0 %LE %LONG 0xfffffdff ;dram_rank_size[3]
  93. D.S SD:0x4007f2b4 %LE %LONG 0xffffffff
  94. D.S SD:0x4007f2b8 %LE %LONG 0x00000002 ;mblock_num
  95. D.S SD:0x4007f2bc %LE %LONG 0x00000000
  96. ;D.S SD:0x4007f2c0 %LE %LONG 0x40000000 ;mblock[0].start
  97. D.S SD:0x4007f2c0 %LE %LONG 0x40000000 ;mblock[0].start
  98. D.S SD:0x4007f2c4 %LE %LONG 0x00000000
  99. D.S SD:0x4007f2c8 %LE %LONG 0x10000000 ;mblock[0].size
  100. D.S SD:0x4007f2cc %LE %LONG 0x00000000
  101. D.S SD:0x4007f2d0 %LE %LONG 0x00000000 ;mblock[0].rank
  102. D.S SD:0x4007f2d4 %LE %LONG 0x00000000
  103. ;D.S SD:0x4007f2d8 %LE %LONG 0x50000000 ;mblock[1].start
  104. D.S SD:0x4007f2d8 %LE %LONG 0x50000000 ;mblock[1].start
  105. D.S SD:0x4007f2dc %LE %LONG 0x00000000
  106. D.S SD:0x4007f2e0 %LE %LONG 0x0fe00000 ;mblock[1].size
  107. D.S SD:0x4007f2e4 %LE %LONG 0x00000000
  108. D.S SD:0x4007f2e8 %LE %LONG 0x00000001 ;mblock[1].rank
  109. D.S SD:0x4007f2ec %LE %LONG 0x00000000
  110. D.S SD:0x4007f2f0 %LE %LONG 0x00000000 ;mblock[2].start
  111. D.S SD:0x4007f2f4 %LE %LONG 0x00000000
  112. D.S SD:0x4007f2f8 %LE %LONG 0x00000000 ;mblock[2].size
  113. D.S SD:0x4007f2fc %LE %LONG 0x00000000
  114. D.S SD:0x4007f300 %LE %LONG 0x00000000 ;mblock[2].rank
  115. D.S SD:0x4007f304 %LE %LONG 0x00000000
  116. D.S SD:0x4007f308 %LE %LONG 0x00000000 ;mblock[3].start
  117. D.S SD:0x4007f30c %LE %LONG 0x00000000
  118. D.S SD:0x4007f310 %LE %LONG 0x00000000 ;mblock[3].size
  119. D.S SD:0x4007f314 %LE %LONG 0x00000000
  120. D.S SD:0x4007f318 %LE %LONG 0x00000000 ;mblock[3].rank
  121. D.S SD:0x4007f31c %LE %LONG 0x00000000
  122. D.S SD:0x4007f320 %LE %LONG 0x00000002 ;orig_dram_info.rank_num
  123. D.S SD:0x4007f324 %LE %LONG 0xffffffff
  124. ;D.S SD:0x4007f328 %LE %LONG 0x40000000 ;rank_info[0].start
  125. D.S SD:0x4007f328 %LE %LONG 0x40000000 ;rank_info[0].start
  126. D.S SD:0x4007f32c %LE %LONG 0x00000000
  127. D.S SD:0x4007f330 %LE %LONG 0x10000000 ;rank_info[0].size
  128. D.S SD:0x4007f334 %LE %LONG 0x00000000
  129. ;D.S SD:0x4007f338 %LE %LONG 0x50000000 ;rank_info[1].start
  130. D.S SD:0x4007f338 %LE %LONG 0x50000000 ;rank_info[1].start
  131. D.S SD:0x4007f33c %LE %LONG 0x00000000
  132. D.S SD:0x4007f340 %LE %LONG 0x10000000 ;rank_info[1].size
  133. D.S SD:0x4007f344 %LE %LONG 0x00000000
  134. D.S SD:0x4007f348 %LE %LONG 0xffffffff ;rank_info[2].start
  135. D.S SD:0x4007f34c %LE %LONG 0xffffffff
  136. D.S SD:0x4007f350 %LE %LONG 0xfffeffff ;rank_info[2].size
  137. D.S SD:0x4007f354 %LE %LONG 0xfffffffd
  138. D.S SD:0x4007f358 %LE %LONG 0xffffffff ;rank_info[3].start
  139. D.S SD:0x4007f35c %LE %LONG 0xffffffff
  140. D.S SD:0x4007f360 %LE %LONG 0xffffffff ;rank_info[3].size
  141. D.S SD:0x4007f364 %LE %LONG 0xffffffff
  142. D.S SD:0x4007f368 %LE %LONG 0x00000000 ;lca_reserved_mem.start
  143. D.S SD:0x4007f36c %LE %LONG 0x00000000
  144. D.S SD:0x4007f370 %LE %LONG 0x00000000 ;lca_reserved_mem.size
  145. D.S SD:0x4007f374 %LE %LONG 0x00000000
  146. D.S SD:0x4007f378 %LE %LONG 0x5fe00000 ;tee_reserved_mem.start
  147. D.S SD:0x4007f37c %LE %LONG 0x00000000
  148. D.S SD:0x4007f380 %LE %LONG 0x00200000 ;tee_reserved_mem.size
  149. D.S SD:0x4007f384 %LE %LONG 0x00000000
  150. D.S SD:0x4007f388 %LE %LONG 0x00000000 ;boot_reason
  151. D.S SD:0x4007f38c %LE %LONG 0x00000000 ;meta_com_type
  152. D.S SD:0x4007f390 %LE %LONG 0x00000000 ;meta_com_id
  153. D.S SD:0x4007f394 %LE %LONG 0x00000000 ;boot_time
  154. D.S SD:0x4007f398 %LE %LONG 0xffffffff ;da_info.addr
  155. D.S SD:0x4007f39c %LE %LONG 0xffffffff ;da_info.arg1
  156. D.S SD:0x4007f3a0 %LE %LONG 0xffffdfff ;da_info.arg2
  157. D.S SD:0x4007f3a4 %LE %LONG 0xdfffffff ;da_info.len
  158. D.S SD:0x4007f3a8 %LE %LONG 0xffffffef ;da_info.sig_len
  159. D.S SD:0x4007f3ac %LE %LONG 0xffffffff ;sec_limit.magic_num
  160. D.S SD:0x4007f3b0 %LE %LONG 0xffffdfff ;sec_limit.forbid_mode
  161. D.S SD:0x4007f3b4 %LE %LONG 0x40079a84 ;part_info pointer
  162. D.S SD:0x4007f3b8 %LE %LONG 0xfffffffd ;md_type
  163. D.S SD:0x4007f3bc %LE %LONG 0x00000000 ;ddr_reserve_enable
  164. D.S SD:0x4007f3c0 %LE %LONG 0x00000000 ;ddr_reserve_success
  165. D.S SD:0x4007f3c4 %LE %LONG 0x00199880 ;dram_buf_size
  166. D.S SD:0x4007f3c8 %LE %LONG 0x11003000 ;meta_uart_port
  167. D.S SD:0x4007f3cc %LE %LONG 0x00000000 ;smc_boot_opt
  168. D.S SD:0x4007f3d0 %LE %LONG 0x00000003 ;lk_boot_opt
  169. D.S SD:0x4007f3d4 %LE %LONG 0x00000003 ;kernel_boot_opt
  170. D.S SD:0x4007f3d8 %LE %LONG 0x0012c000 ;non_secure_sram_addr
  171. D.S SD:0x4007f3dc %LE %LONG 0x00004000 ;non_secure_sram_size
  172. )
  173. ;print "loading logo image"
  174. ;&logo_addr=0x8D900000;
  175. ;d.load.binary ../../../../mediatek/custom/common/lk/logo/wvga/wvga_uboot.bmp &logo_addr
  176. &pathlen=STRing.SCAN(OS.PWD(),"&searchStr",0)+STRing.LEN("&searchStr")
  177. &ctpPath=STRing.MID(OS.PWD(), 0, &pathlen)
  178. print "loading lk image"
  179. ;IF &OPT_RAM_BOOT==0
  180. ;(
  181. ; Data.Load.ELF &OutProjectPath/lk /long /nocode /RELPATH /StripPART "&searchStr" /PATH "&ctpPath"
  182. ;)
  183. ;ELSE
  184. ;(
  185. ; Data.Load.ELF &OutProjectPath/lk /long /StripPART "&searchStr" /PATH "&ctpPath"
  186. ;)
  187. Y.SPATH.RESET ; reset all source path
  188. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\app
  189. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\app\mt_boot
  190. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\arch\arm
  191. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\dev
  192. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\include
  193. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\kernel
  194. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\lib
  195. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk04129\6595_bringup\ALPS_SW\DEV\L.EARLY.AOSP.RAINIER.DEV\alps\bootable\bootloader\lk\platform\mt6580
  196. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\app
  197. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\app\mt_boot
  198. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\arch\arm
  199. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\dev
  200. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\include
  201. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\kernel
  202. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\lib
  203. ;Y.SPATH.SRD \\mtkslt209\nobackup\mtk10689\Perforce\ALPS\ALPS_SW\DEV\L1.JADE.DEV\alps\bootable\bootloader\lk\plarform\jade
  204. Y.SPATH.SRD ..\app
  205. Y.SPATH.SRD ..\app\mt_boot
  206. Y.SPATH.SRD ..\arch\arm
  207. Y.SPATH.SRD ..\dev
  208. Y.SPATH.SRD ..\include
  209. Y.SPATH.SRD ..\kernel
  210. Y.SPATH.SRD ..\lib
  211. Y.SPATH.SRD ..\platform\mt6750
  212. ;sYmbol.SourcePATH.RESet
  213. print "Loading LK..."
  214. data.load.elf &OutProjectPath/lk /gnu /noclear
  215. ;data.load.elf &OutProjectPath/lk /gnu
  216. ; set bootargs
  217. R.S R4 0x4007f288
  218. ;Core.Select 0
  219. ;Data.List
  220. ;enddo
  221. d.l
  222. STOP