light-c910.h 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512
  1. /*
  2. * Copyright (C) 2017-2020 Alibaba Group Holding Limited
  3. *
  4. * SPDX-License-Identifier: GPL-2.0+
  5. */
  6. #ifndef __CONFIG_H
  7. #define __CONFIG_H
  8. #include <linux/sizes.h>
  9. #define CONFIG_SYS_SPL_MALLOC_START 0xffe0110000
  10. #define CONFIG_SYS_SPL_MALLOC_SIZE 0x000000a000
  11. #define CONFIG_SPL_STACK 0xffe011d000
  12. #define CONFIG_SPL_BSS_START_ADDR 0xffe011d000
  13. #define CONFIG_SPL_BSS_MAX_SIZE 0x0000002000
  14. #define CONFIG_SYS_MONITOR_LEN (898 * 1024) /* Assumed U-Boot size */
  15. #define CONFIG_SYS_MMCSD_RAW_MODE_EMMC_BOOT_PARTITION 1
  16. #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
  17. #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x178
  18. #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_TEXT_BASE + SZ_1M)
  19. #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_TEXT_BASE + SZ_1M)
  20. #define CONFIG_SYS_MALLOC_LEN SZ_1M
  21. #define CONFIG_SYS_BOOTM_LEN SZ_64M
  22. #define CONFIG_SYS_CACHELINE_SIZE 64
  23. #define SRAM_BASE_ADDR 0xffe0000000
  24. #define PLIC_BASE_ADDR 0xffd8000000
  25. #define PMP_BASE_ADDR 0xffdc020000
  26. /* Network Configuration */
  27. #define CONFIG_DW_ALTDESCRIPTOR
  28. #define CONFIG_RGMII 1
  29. #define CONFIG_PHY_MARVELL 1
  30. #define CONFIG_NET_RETRY_COUNT 20
  31. #define CONFIG_SYS_FLASH_BASE 0x0
  32. #define CONFIG_SYS_MAX_FLASH_BANKS 1
  33. #define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + CONFIG_ENV_OFFSET)
  34. #define CONFIG_SYS_MMC_ENV_DEV 0
  35. #define CONFIG_SYS_SDRAM_BASE 0
  36. #define MEMTEST_MAX_SIZE 0x200000000 /* 8GB DDR */
  37. #define CONFIG_SYS_MEMTEST_START 0x00000000 // larger than Uboot end addr
  38. #define CONFIG_SYS_MEMTEST_END CONFIG_SYS_SDRAM_BASE + MEMTEST_MAX_SIZE
  39. #define CONFIG_SYS_MEMTEST_SCRATCH CONFIG_SYS_MEMTEST_END/2
  40. /* SEC Configuration */
  41. //#define LIGHT_ROOTFS_SEC_CHECK 1
  42. #define SBI_ENTRY_ADDR 0x100000
  43. #define AON_DDR_ADDR 0x80000
  44. #define AON_SRAM_ADDR 0xffffef8000
  45. /* USB fastboot non_sec configs */
  46. #define THEAD_LIGHT_FASTBOOT 1
  47. #define LIGHT_FW_ADDR 0x0
  48. #define LIGHT_KERNEL_ADDR 0x200000
  49. #define LIGHT_DTB_ADDR 0x1f00000
  50. #define LIGHT_ROOTFS_ADDR 0x2000000
  51. #define LIGHT_AON_FW_ADDR 0xffffef8000
  52. #define LIGHT_TEE_FW_ADDR 0x1c000000
  53. #define LIGHT_TF_FW_ADDR LIGHT_FW_ADDR
  54. #define LIGHT_TF_FW_TMP_ADDR 0x100000
  55. #define LIGHT_KERNEL_ADDR_CMD "0x200000"
  56. #define LIGHT_DTB_ADDR_CMD "0x1f00000"
  57. /* trust image name string */
  58. #define TF_IMG_UPD_NAME "stashtf"
  59. #define TEE_IMG_UPD_NAME "stashtee"
  60. #define UBOOT_IMG_UPD_NAME "stashuboot"
  61. #define TF_PART_NAME "tf"
  62. #define TEE_PART_NAME "tee"
  63. #define UBOOT_PART_NAME "uboot"
  64. #define STASH_PART_NAME "stash"
  65. #define KERNEL_PART_NAME "kernel"
  66. #define UBOOT_STAGE_ADDR SRAM_BASE_ADDR
  67. /* Video configs */
  68. #define CONFIG_VIDEO_LOGO
  69. #define CONFIG_VIDEO_BMP_LOGO
  70. #define CONFIG_SPLASH_SCREEN
  71. #define CONFIG_SPLASH_SCREEN_ALIGN
  72. #define CONFIG_BMP_32BPP
  73. /* security upgrade flag */
  74. #define TF_SEC_UPGRADE_FLAG 0x5555aaaa
  75. #define TEE_SEC_UPGRADE_FLAG 0x5a5aa5a5
  76. #define UBOOT_SEC_UPGRADE_FLAG 0xa5a5aa55
  77. /* Define secure debug log level */
  78. #define LOG_LEVEL 1
  79. #if defined (LOG_LEVEL)
  80. #define SECLOG_PRINT printf
  81. #else
  82. #define SECLOG_PRINT
  83. #endif
  84. #define UBOOT_MAX_VER 64
  85. #define CONFIG_SYS_CBSIZE 512
  86. #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
  87. sizeof(CONFIG_SYS_PROMPT) + 16)
  88. #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot args buffer */
  89. #define CONFIG_SYS_MAXARGS 64 /* max number of command args */
  90. /* List of different env in debug/release version */
  91. #if defined (U_BUILD_DEBUG)
  92. #define ENV_KERNEL_LOGLEVEL "kernel_loglevel=7\0"
  93. #define ENV_STR_BOOT_DELAY
  94. #else
  95. #define ENV_KERNEL_LOGLEVEL "kernel_loglevel=4\0"
  96. #define ENV_STR_BOOT_DELAY "bootdelay=0\0"
  97. #endif
  98. #if defined (CONFIG_LIGHT_SEC_BOOT_WITH_VERIFY_VAL_A)
  99. #define CONFIG_EXTRA_ENV_SETTINGS \
  100. "splashimage=0x30000000\0" \
  101. "splashpos=m,m\0" \
  102. "fdt_high=0xffffffffffffffff\0" \
  103. "tf_addr=0x100000\0" \
  104. "dtb_addr=0x01f00000\0" \
  105. "kernel_addr=0x00200000\0" \
  106. "aon_ram_addr=0xffffef8000\0" \
  107. "audio_ram_addr=0xffc0000000\0" \
  108. "fwaddr=0x10000000\0"\
  109. "tee_addr=0x1c000000\0" \
  110. "sec_upgrade_mode=0\0"\
  111. "mmcdev=0\0" \
  112. "boot_partition=bootA\0" \
  113. "root_partition=rootfsA\0" \
  114. "kdump_buf=1M\0" \
  115. "uboot_version=0x0000000000000000\0"\
  116. "tee_version=0x00000000\0"\
  117. "tf_version=0x00000000\0"\
  118. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=7; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=8; else mmcpart=6; fi;\0" \
  119. "fdt_file=light-a-val-sec.dtb\0" \
  120. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  121. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  122. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=tf,size=50MiB,type=boot;name=tee,size=50MiB,type=boot;name=stash,size=50MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  123. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  124. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  125. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  126. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  127. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  128. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc 0:3 $tf_addr trust_firmware.bin; ext4load mmc 0:4 $tee_addr tee.bin;ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  129. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; secboot; booti $kernel_addr - $dtb_addr;\0" \
  130. "factory_reset=yes\0"\
  131. "\0"
  132. #elif defined (CONFIG_LIGHT_SEC_BOOT_WITH_VERIFY_VAL_B)
  133. #define CONFIG_EXTRA_ENV_SETTINGS \
  134. "splashimage=0x30000000\0" \
  135. "splashpos=m,m\0" \
  136. "fdt_high=0xffffffffffffffff\0" \
  137. "tf_addr=0x100000\0" \
  138. "dtb_addr=0x01f00000\0" \
  139. "kernel_addr=0x00200000\0" \
  140. "aon_ram_addr=0xffffef8000\0" \
  141. "audio_ram_addr=0xffc0000000\0" \
  142. "fwaddr=0x10000000\0"\
  143. "tee_addr=0x1c000000\0" \
  144. "sec_upgrade_mode=0\0"\
  145. "mmcdev=0\0" \
  146. "boot_partition=bootA\0" \
  147. "root_partition=rootfsA\0" \
  148. "kdump_buf=1M\0" \
  149. "uboot_version=0x0000000000000000\0"\
  150. "tee_version=0x00000000\0"\
  151. "tf_version=0x00000000\0"\
  152. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=7; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=8; else mmcpart=6; fi;\0" \
  153. "fdt_file=light-b-product-sec.dtb\0" \
  154. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  155. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  156. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=tf,size=50MiB,type=boot;name=tee,size=50MiB,type=boot;name=stash,size=50MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  157. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  158. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  159. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  160. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  161. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  162. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc 0:3 $tf_addr trust_firmware.bin; ext4load mmc 0:4 $tee_addr tee.bin;ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  163. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; secboot; booti $kernel_addr - $dtb_addr;\0" \
  164. "factory_reset=yes\0"\
  165. "\0"
  166. #elif defined (CONFIG_LIGHT_SEC_BOOT_WITH_VERIFY_ANT_REF)
  167. #define CONFIG_EXTRA_ENV_SETTINGS \
  168. "splashimage=0x30000000\0" \
  169. "splashpos=m,m\0" \
  170. "fdt_high=0xffffffffffffffff\0" \
  171. "tf_addr=0x100000\0" \
  172. "dtb_addr=0x01f00000\0" \
  173. "kernel_addr=0x00200000\0" \
  174. "aon_ram_addr=0xffffef8000\0" \
  175. "audio_ram_addr=0xffc0000000\0" \
  176. "fwaddr=0x10000000\0"\
  177. "tee_addr=0x1c000000\0" \
  178. "sec_upgrade_mode=0\0"\
  179. "mmcdev=0\0" \
  180. "boot_partition=bootA\0" \
  181. "root_partition=rootfsA\0" \
  182. "kdump_buf=1M\0" \
  183. "uboot_version=0x0000000000000000\0"\
  184. "tee_version=0x00000000\0"\
  185. "tf_version=0x00000000\0"\
  186. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=7; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=8; else mmcpart=6; fi;\0" \
  187. "fdt_file=light-ant-ref-sec.dtb\0" \
  188. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  189. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  190. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=tf,size=50MiB,type=boot;name=tee,size=50MiB,type=boot;name=stash,size=50MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  191. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  192. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  193. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  194. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  195. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  196. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc 0:3 $tf_addr trust_firmware.bin; ext4load mmc 0:4 $tee_addr tee.bin;ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  197. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; secboot; booti $kernel_addr - $dtb_addr;\0" \
  198. "factory_reset=yes\0"\
  199. "\0"
  200. #else
  201. #if defined (CONFIG_TARGET_LIGHT_FM_C910_VAL_A)
  202. #define CONFIG_EXTRA_ENV_SETTINGS \
  203. "splashimage=0x30000000\0" \
  204. "splashpos=m,m\0" \
  205. "fdt_high=0xffffffffffffffff\0" \
  206. "opensbi_addr=0x0\0" \
  207. "dtb_addr=0x01f00000\0" \
  208. "kernel_addr=0x00200000\0" \
  209. "aon_ram_addr=0xffffef8000\0" \
  210. "audio_ram_addr=0xffc0000000\0" \
  211. "fwaddr=0x10000000\0"\
  212. "mmcdev=0\0" \
  213. "mmcpart=3\0" \
  214. "kdump_buf=1M\0" \
  215. "fdt_file=light-a-product.dtb\0" \
  216. "uuid_rootfs=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  217. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfs};name=data,size=-,type=linux\0" \
  218. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  219. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  220. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  221. "load_aon=ext4load mmc 0:2 $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  222. "load_c906_audio=ext4load mmc 0:2 $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  223. "bootcmd_load=run load_aon;run load_c906_audio; ext4load mmc 0:2 $opensbi_addr fw_dynamic.bin; ext4load mmc 0:2 $dtb_addr ${fdt_file}; ext4load mmc 0:2 $kernel_addr Image\0" \
  224. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  225. "factory_reset=yes\0"\
  226. "\0"
  227. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_VAL_B)
  228. #define CONFIG_EXTRA_ENV_SETTINGS \
  229. "splashimage=0x30000000\0" \
  230. "splashpos=m,m\0" \
  231. "fdt_high=0xffffffffffffffff\0" \
  232. "opensbi_addr=0x0\0" \
  233. "dtb_addr=0x01f00000\0" \
  234. "kernel_addr=0x00200000\0" \
  235. "aon_ram_addr=0xffffef8000\0" \
  236. "audio_ram_addr=0xffc0000000\0" \
  237. "fwaddr=0x10000000\0"\
  238. "mmcdev=0\0" \
  239. "boot_partition=bootA\0" \
  240. "root_partition=rootfsA\0" \
  241. ENV_KERNEL_LOGLEVEL \
  242. "kdump_buf=1M\0" \
  243. ENV_STR_BOOT_DELAY \
  244. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  245. "fdt_file=light-b-product.dtb\0" \
  246. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  247. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  248. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  249. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  250. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  251. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=${kernel_loglevel} eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  252. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  253. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  254. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file};ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image;\0" \
  255. "bootcmd=run bootcmd_load; bootslave ; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  256. "factory_reset=yes\0"\
  257. "\0"
  258. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_B_REF)
  259. #define CONFIG_EXTRA_ENV_SETTINGS \
  260. "splashimage=0x30000000\0" \
  261. "splashpos=m,m\0" \
  262. "fdt_high=0xffffffffffffffff\0" \
  263. "opensbi_addr=0x0\0" \
  264. "dtb_addr=0x01f00000\0" \
  265. "kernel_addr=0x00200000\0" \
  266. "aon_ram_addr=0xffffef8000\0" \
  267. "audio_ram_addr=0xffc0000000\0" \
  268. "fwaddr=0x10000000\0"\
  269. "mmcdev=0\0" \
  270. "boot_partition=bootA\0" \
  271. "root_partition=rootfsA\0" \
  272. "findpart=if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  273. "fdt_file=light-b-ref.dtb\0" \
  274. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  275. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  276. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  277. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  278. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  279. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime\0" \
  280. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  281. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  282. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file};ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image;\0" \
  283. "bootcmd=run bootcmd_load; bootslave ; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  284. "\0"
  285. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_B_POWER)
  286. #define CONFIG_EXTRA_ENV_SETTINGS \
  287. "splashimage=0x30000000\0" \
  288. "splashpos=m,m\0" \
  289. "fdt_high=0xffffffffffffffff\0" \
  290. "opensbi_addr=0x0\0" \
  291. "dtb_addr=0x01f00000\0" \
  292. "kernel_addr=0x00200000\0" \
  293. "aon_ram_addr=0xffffef8000\0" \
  294. "audio_ram_addr=0xffc0000000\0" \
  295. "fwaddr=0x10000000\0"\
  296. "mmcdev=0\0" \
  297. "boot_partition=bootA\0" \
  298. "root_partition=rootfsA\0" \
  299. "kdump_buf=1M\0" \
  300. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  301. "fdt_file=light-b-power.dtb\0" \
  302. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  303. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  304. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  305. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  306. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  307. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  308. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  309. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  310. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  311. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  312. "factory_reset=yes\0"\
  313. "\0"
  314. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_VAL_ANT_REF)
  315. #define CONFIG_EXTRA_ENV_SETTINGS \
  316. "splashimage=0x30000000\0" \
  317. "splashpos=m,m\0" \
  318. "fdt_high=0xffffffffffffffff\0" \
  319. "opensbi_addr=0x0\0" \
  320. "dtb_addr=0x01f00000\0" \
  321. "kernel_addr=0x00200000\0" \
  322. "aon_ram_addr=0xffffef8000\0" \
  323. "audio_ram_addr=0xffc0000000\0" \
  324. "fwaddr=0x10000000\0"\
  325. "mmcdev=0\0" \
  326. "boot_partition=bootA\0" \
  327. "root_partition=rootfsA\0" \
  328. ENV_KERNEL_LOGLEVEL \
  329. "kdump_buf=1M\0" \
  330. ENV_STR_BOOT_DELAY \
  331. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  332. "fdt_file=light-ant-ref.dtb\0" \
  333. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  334. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  335. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  336. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  337. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  338. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=${kernel_loglevel} eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  339. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  340. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  341. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  342. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  343. "factory_reset=yes\0"\
  344. "\0"
  345. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_VAL_ANT_DISCRETE)
  346. #define CONFIG_EXTRA_ENV_SETTINGS \
  347. "splashimage=0x30000000\0" \
  348. "splashpos=m,m\0" \
  349. "fdt_high=0xffffffffffffffff\0" \
  350. "opensbi_addr=0x0\0" \
  351. "dtb_addr=0x01f00000\0" \
  352. "kernel_addr=0x00200000\0" \
  353. "aon_ram_addr=0xffffef8000\0" \
  354. "audio_ram_addr=0xffc0000000\0" \
  355. "fwaddr=0x10000000\0"\
  356. "mmcdev=0\0" \
  357. "boot_partition=bootA\0" \
  358. "root_partition=rootfsA\0" \
  359. "kdump_buf=1M\0" \
  360. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  361. "fdt_file=light-ant-discrete.dtb\0" \
  362. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  363. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  364. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  365. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  366. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  367. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  368. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  369. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  370. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  371. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  372. "factory_reset=yes\0"\
  373. "\0"
  374. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_BEAGLE)
  375. #define CONFIG_EXTRA_ENV_SETTINGS \
  376. "splashimage=0x30000000\0" \
  377. "splashpos=m,m\0" \
  378. "fdt_high=0xffffffffffffffff\0" \
  379. "opensbi_addr=0x0\0" \
  380. "dtb_addr=0x01f00000\0" \
  381. "kernel_addr=0x00200000\0" \
  382. "aon_ram_addr=0xffffef8000\0" \
  383. "audio_ram_addr=0xffc0000000\0" \
  384. "fwaddr=0x10000000\0"\
  385. "mmcdev=0\0" \
  386. "boot_partition=bootA\0" \
  387. "root_partition=rootfsA\0" \
  388. "kdump_buf=500M\0" \
  389. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  390. "fdt_file=light-beagle.dtb\0" \
  391. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  392. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  393. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  394. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  395. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  396. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  397. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  398. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  399. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  400. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  401. "factory_reset=yes\0"\
  402. "\0"
  403. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_LPI4A)
  404. #define CONFIG_EXTRA_ENV_SETTINGS \
  405. "splashimage=0x30000000\0" \
  406. "splashpos=m,m\0" \
  407. "fdt_high=0xffffffffffffffff\0" \
  408. "opensbi_addr=0x0\0" \
  409. "dtb_addr=0x01f00000\0" \
  410. "kernel_addr=0x00200000\0" \
  411. "aon_ram_addr=0xffffef8000\0" \
  412. "audio_ram_addr=0xffc0000000\0" \
  413. "fwaddr=0x10000000\0"\
  414. "mmcdev=0\0" \
  415. "boot_partition=bootA\0" \
  416. "root_partition=rootfsA\0" \
  417. "kdump_buf=500M\0" \
  418. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  419. "fdt_file=light-lpi4a.dtb\0" \
  420. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  421. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  422. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  423. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  424. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  425. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  426. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  427. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  428. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  429. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  430. "factory_reset=yes\0"\
  431. "\0"
  432. #elif defined (CONFIG_TARGET_LIGHT_FM_C910_A_REF)
  433. #define CONFIG_EXTRA_ENV_SETTINGS \
  434. "splashimage=0x30000000\0" \
  435. "splashpos=m,m\0" \
  436. "fdt_high=0xffffffffffffffff\0" \
  437. "opensbi_addr=0x0\0" \
  438. "dtb_addr=0x01f00000\0" \
  439. "kernel_addr=0x00200000\0" \
  440. "aon_ram_addr=0xffffef8000\0" \
  441. "audio_ram_addr=0xffc0000000\0" \
  442. "fwaddr=0x10000000\0"\
  443. "mmcdev=0\0" \
  444. "boot_partition=bootA\0" \
  445. "root_partition=rootfsA\0" \
  446. "findpart=if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  447. "fdt_file=light-a-ref.dtb\0" \
  448. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  449. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  450. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  451. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  452. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  453. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime\0" \
  454. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  455. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  456. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  457. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  458. "\0"
  459. #else
  460. #define CONFIG_EXTRA_ENV_SETTINGS \
  461. "splashimage=0x30000000\0" \
  462. "splashpos=m,m\0" \
  463. "fdt_high=0xffffffffffffffff\0" \
  464. "opensbi_addr=0x0\0" \
  465. "dtb_addr=0x01f00000\0" \
  466. "kernel_addr=0x00200000\0" \
  467. "aon_ram_addr=0xffffef8000\0" \
  468. "audio_ram_addr=0xffc0000000\0" \
  469. "fwaddr=0x10000000\0"\
  470. "mmcdev=0\0" \
  471. "boot_partition=bootA\0" \
  472. "root_partition=rootfsA\0" \
  473. "kdump_buf=500M\0" \
  474. "findpart=rollback; if test ${boot_partition} = bootB; then mmcbootpart=4; else mmcbootpart=2; fi; if test ${root_partition} = rootfsB; then mmcpart=5; else mmcpart=3; fi;\0" \
  475. "fdt_file=light-a-val-dsi0-hdmi.dtb\0" \
  476. "uuid_rootfsA=80a5a8e9-c744-491a-93c1-4f4194fd690a\0" \
  477. "uuid_rootfsB=80a5a8e9-c744-491a-93c1-4f4194fd690b\0" \
  478. "partitions=name=table,size=2031KB;name=boot,size=200MiB,type=boot;name=root,size=4000MiB,type=linux,uuid=${uuid_rootfsA};name=bootB,size=200MiB,type=boot;name=rootB,size=4000MiB,type=linux,uuid=${uuid_rootfsB};name=data,size=-,type=linux\0" \
  479. "finduuid=part uuid mmc ${mmcdev}:${mmcpart} uuid\0" \
  480. "gpt_partition=gpt write mmc ${mmcdev} $partitions\0" \
  481. "set_bootargs=setenv bootargs console=ttyS0,115200 root=PARTUUID=${uuid} rootfstype=ext4 rdinit=/sbin/init rootwait rw earlycon clk_ignore_unused loglevel=7 eth=$ethaddr rootrw=PARTLABEL=data init=/init rootinit=/sbin/init rootrwoptions=rw,noatime rootrwreset=${factory_reset} crashkernel=${kdump_buf}\0" \
  482. "load_aon=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_aon_fpga.bin;cp.b $fwaddr $aon_ram_addr $filesize\0"\
  483. "load_c906_audio=ext4load mmc ${mmcdev}:${mmcbootpart} $fwaddr light_c906_audio.bin;cp.b $fwaddr $audio_ram_addr $filesize\0"\
  484. "bootcmd_load=run findpart;run load_aon;run load_c906_audio; ext4load mmc ${mmcdev}:${mmcbootpart} $opensbi_addr fw_dynamic.bin; ext4load mmc ${mmcdev}:${mmcbootpart} $dtb_addr ${fdt_file}; ext4load mmc ${mmcdev}:${mmcbootpart} $kernel_addr Image\0" \
  485. "bootcmd=run bootcmd_load; bootslave; run finduuid; run set_bootargs; booti $kernel_addr - $dtb_addr;\0" \
  486. "factory_reset=yes\0"\
  487. "\0"
  488. #endif
  489. #endif
  490. #endif /* __CONFIG_H */