aristainetos2.h 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * (C) Copyright 2015
  4. * Heiko Schocher, DENX Software Engineering, hs@denx.de.
  5. *
  6. * Based on:
  7. * Copyright (C) 2012 Freescale Semiconductor, Inc.
  8. *
  9. * Configuration settings for the Freescale i.MX6DL aristainetos2 board.
  10. */
  11. #ifndef __ARISTAINETOS2_CONFIG_H
  12. #define __ARISTAINETOS2_CONFIG_H
  13. #define CONFIG_HOSTNAME "aristainetos2"
  14. #define CONFIG_MXC_UART_BASE UART2_BASE
  15. #define CONSOLE_DEV "ttymxc1"
  16. #define CONFIG_FEC_XCV_TYPE RGMII
  17. /* Framebuffer */
  18. #define CONFIG_SYS_LDB_CLOCK 28341000
  19. #define CONFIG_LG4573
  20. #include "mx6_common.h"
  21. #define CONFIG_MACH_TYPE 4501
  22. #define CONFIG_MMCROOT "/dev/mmcblk0p1"
  23. /* MMC Configs */
  24. #define CONFIG_SYS_FSL_ESDHC_ADDR USDHC1_BASE_ADDR
  25. #define IMX_FEC_BASE ENET_BASE_ADDR
  26. #define CONFIG_ETHPRIME "FEC"
  27. #define CONFIG_FEC_MXC_PHYADDR 0
  28. #define CONFIG_SYS_SPI_ST_ENABLE_WP_PIN
  29. #ifdef CONFIG_IMX_HAB
  30. #define HAB_EXTRA_SETTINGS \
  31. "hab_check_addr=" \
  32. "if hab_auth_img ${check_addr} ${filesize} ; then " \
  33. "true;" \
  34. "else " \
  35. "echo \"HAB checks ${hab_check_filetype} " \
  36. "failed!\"; " \
  37. "false; " \
  38. "fi;\0" \
  39. "hab_check_file_fit=" \
  40. "if env exists enable_hab_check && test " \
  41. "${enable_hab_check} -eq 1 ; then " \
  42. "setenv hab_check_filetype \"FIT file on SD card " \
  43. "or eMMC\";" \
  44. "env set check_addr ${fit_addr_r};" \
  45. "run hab_check_addr;" \
  46. "else " \
  47. "true; "\
  48. "fi;\0" \
  49. "hab_check_file_bootscript=" \
  50. "if env exists enable_hab_check && test " \
  51. "${enable_hab_check} -eq 1 ; then " \
  52. "setenv hab_check_filetype \"Bootscript file\";" \
  53. "env set check_addr ${loadaddr};" \
  54. "run hab_check_addr;" \
  55. "else " \
  56. "true; "\
  57. "fi;\0" \
  58. "hab_check_flash_fit=" \
  59. "if env exists enable_hab_check && test " \
  60. "${enable_hab_check} -eq 1 ; then " \
  61. "setenv hab_check_filetype \"FIT files on flash\";" \
  62. "env set check_addr ${fit_addr_r};" \
  63. "run hab_check_addr;" \
  64. "else " \
  65. "true; "\
  66. "fi;\0" \
  67. "enable_hab_check=1\0"
  68. #else
  69. #define HAB_EXTRA_SETTINGS \
  70. "hab_check_file_fit=echo HAB check FIT file always returns " \
  71. "true;true\0" \
  72. "hab_check_flash_fit=echo HAB check flash FIT always returns " \
  73. "true;true\0" \
  74. "hab_check_file_bootscript=echo HAB check bootscript always " \
  75. "returns true;true\0" \
  76. "enable_hab_check=0\0"
  77. #endif
  78. #if (CONFIG_SYS_BOARD_VERSION == 3)
  79. #define CONFIG_EXTRA_ENV_BOARD_SETTINGS \
  80. "dead=led led_red on\0" \
  81. "mtdids=nand0=gpmi-nand,nor0=spi0.0\0" \
  82. "mtdparts=mtdparts=spi0.0:832k(u-boot),64k(env),64k(env-red)," \
  83. "-(ubi-nor);gpmi-nand:-(ubi)\0" \
  84. "addmisc=setenv bootargs ${bootargs} net.ifnames=0 consoleblank=0 " \
  85. "bootmode=${bootmode} mmcpart=${mmcpart}\0" \
  86. "mainboot=echo Booting from SD-card ...; " \
  87. "run mainargs addmtd addmisc;" \
  88. "if test -n ${addmiscM}; then run addmiscM;fi;" \
  89. "if test -n ${addmiscC}; then run addmiscC;fi;" \
  90. "if test -n ${addmiscD}; then run addmiscD;fi;" \
  91. "run boot_board_type;" \
  92. "bootm ${fit_addr_r}\0" \
  93. "mainargs=setenv bootargs console=${console},${baudrate} " \
  94. "root=${mmcroot}\0" \
  95. "main_load_fit=ext4load mmc ${mmcdev}:${mmcpart} ${fit_addr_r} " \
  96. "${fit_file}\0" \
  97. "rescue_load_fit=ext4load mmc ${mmcdev}:${mmcrescuepart} " \
  98. "${fit_addr_r} ${rescue_fit_file}\0"
  99. #elif (CONFIG_SYS_BOARD_VERSION == 4)
  100. #define CONFIG_EXTRA_ENV_BOARD_SETTINGS \
  101. "dead=led led_red on;led led_red2 on;\0" \
  102. "mtdids=nand0=gpmi-nand,nor0=spi0.0\0" \
  103. "mtdparts=mtdparts=spi0.0:832k(u-boot),64k(env),64k(env-red)," \
  104. "-(ubi-nor);gpmi-nand:-(ubi)\0" \
  105. "addmisc=setenv bootargs ${bootargs} net.ifnames=0 consoleblank=0 " \
  106. "bootmode=${bootmode} mmcpart=${mmcpart}\0" \
  107. "mainboot=echo Booting from SD-card ...; " \
  108. "run mainargs addmtd addmisc;" \
  109. "if test -n ${addmiscM}; then run addmiscM;fi;" \
  110. "if test -n ${addmiscC}; then run addmiscC;fi;" \
  111. "if test -n ${addmiscD}; then run addmiscD;fi;" \
  112. "run boot_board_type;" \
  113. "bootm ${fit_addr_r}\0" \
  114. "mainargs=setenv bootargs console=${console},${baudrate} " \
  115. "root=${mmcroot}\0" \
  116. "main_load_fit=ext4load mmc ${mmcdev}:${mmcpart} ${fit_addr_r} " \
  117. "${fit_file}\0" \
  118. "rescue_load_fit=ext4load mmc ${mmcdev}:${mmcrescuepart} " \
  119. "${fit_addr_r} ${rescue_fit_file}\0"
  120. #elif (CONFIG_SYS_BOARD_VERSION == 5)
  121. #define CONFIG_EXTRA_ENV_BOARD_SETTINGS \
  122. "emmcpart=1\0" \
  123. "emmc_rescue_part=3\0" \
  124. "emmcdev=1\0" \
  125. "emmcroot=/dev/mmcblk1p1 rootwait rw\0" \
  126. "dead=led led_red on\0" \
  127. "mtdids=nor0=spi0.0\0" \
  128. "mtdparts=mtdparts=spi0.0:832k(u-boot),64k(env),64k(env-red)," \
  129. "-(ubi-nor)\0" \
  130. "addmisc=setenv bootargs ${bootargs} net.ifnames=0 consoleblank=0 " \
  131. "bootmode=${bootmode} mmcpart=${mmcpart} " \
  132. "emmcpart=${emmcpart}\0" \
  133. "mainboot=echo Booting from eMMC ...; " \
  134. "run mainargs addmtd addmisc;" \
  135. "if test -n ${addmiscM}; then run addmiscM;fi;" \
  136. "if test -n ${addmiscC}; then run addmiscC;fi;" \
  137. "if test -n ${addmiscD}; then run addmiscD;fi;" \
  138. "run boot_board_type;" \
  139. "bootm ${fit_addr_r}\0" \
  140. "mainargs=setenv bootargs console=${console},${baudrate} " \
  141. "root=${emmcroot} rootfstype=ext4\0 " \
  142. "main_load_fit=ext4load mmc ${emmcdev}:${emmcpart} ${fit_addr_r} " \
  143. "${fit_file}; " \
  144. "imi ${fit_addr_r}\0 " \
  145. "rescue_load_fit=ext4load mmc ${emmcdev}:${emmc_rescue_part} " \
  146. "${fit_addr_r} ${rescue_fit_file};imi ${fit_addr_r}\0"
  147. #else
  148. #define CONFIG_EXTRA_ENV_BOARD_SETTINGS \
  149. "dead=led led_red on\0" \
  150. "mtdids=nand0=gpmi-nand,nor0=spi3.1\0" \
  151. "mtdparts=mtdparts=spi3.1:832k(u-boot),64k(env),64k(env-red)," \
  152. "-(ubi-nor);gpmi-nand:-(ubi)\0" \
  153. "addmisc=setenv bootargs ${bootargs} net.ifnames=0 consoleblank=0 " \
  154. "bootmode=${bootmode} mmcpart=${mmcpart}\0" \
  155. "mainboot=echo Booting from SD-card ...; " \
  156. "run mainargs addmtd addmisc;" \
  157. "if test -n ${addmiscM}; then run addmiscM;fi;" \
  158. "if test -n ${addmiscC}; then run addmiscC;fi;" \
  159. "if test -n ${addmiscD}; then run addmiscD;fi;" \
  160. "run boot_board_type;" \
  161. "bootm ${fit_addr_r}\0" \
  162. "mainargs=setenv bootargs console=${console},${baudrate} " \
  163. "root=${mmcroot}\0" \
  164. "main_load_fit=ext4load mmc ${mmcdev}:${mmcpart} ${fit_addr_r} " \
  165. "${fit_file}\0" \
  166. "rescue_load_fit=ext4load mmc ${mmcdev}:${mmcrescuepart} " \
  167. "${fit_addr_r} ${rescue_fit_file}\0"
  168. #endif
  169. #define CONFIG_EXTRA_ENV_SETTINGS \
  170. "disable_giga=yes\0" \
  171. "usb_pgood_delay=2000\0" \
  172. "nor_bootdelay=-2\0" \
  173. "script=u-boot.scr\0" \
  174. "fit_file=/boot/system.itb\0" \
  175. "rescue_fit_file=/boot/rescue.itb\0" \
  176. "loadaddr=0x12000000\0" \
  177. "fit_addr_r=0x14000000\0" \
  178. "uboot=/boot/u-boot.imx\0" \
  179. "uboot_sz=d0000\0" \
  180. "panel=lb07wv8\0" \
  181. "splashpos=m,m\0" \
  182. "console=" CONSOLE_DEV "\0" \
  183. "fdt_high=0xffffffff\0" \
  184. "initrd_high=0xffffffff\0" \
  185. "addmtd=setenv bootargs ${bootargs} ${mtdparts}\0" \
  186. "boot_board_type=bootm ${fit_addr_r}#${board_type}\0" \
  187. "get_env=mw ${loadaddr} 0 0x20000;" \
  188. "mmc rescan;" \
  189. "ext4load mmc ${mmcdev}:${mmcpart} ${loadaddr} env.txt;" \
  190. "env import -t ${loadaddr}\0" \
  191. "default_env=gpio set wp_spi_nor.gpio-hog;" \
  192. "sf probe;" \
  193. "sf protect unlock 0 0x1000000;" \
  194. "mw ${loadaddr} 0 0x20000;" \
  195. "env export -t ${loadaddr} serial# ethaddr " \
  196. "board_type panel addmisc addmiscM addmiscC addmiscD;" \
  197. "env default -a;" \
  198. "env import -t ${loadaddr}\0" \
  199. "loadbootscript=" \
  200. "ext4load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
  201. "${script};\0" \
  202. "loadbootscriptUSB=" \
  203. "ext4load usb 0 ${loadaddr} ${script};\0" \
  204. "loadbootscriptUSBf=" \
  205. "fatload usb 0 ${loadaddr} ${script};\0" \
  206. "bootscriptUSB=echo Running bootscript from usb-stick ...; " \
  207. "source\0" \
  208. "bootscript=echo Running bootscript from mmc ...; " \
  209. "source\0" \
  210. "mmcpart=1\0" \
  211. "mmcrescuepart=3\0" \
  212. "mmcdev=0\0" \
  213. "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
  214. "mmcargs=setenv bootargs console=${console},${baudrate} " \
  215. "root=${mmcroot}\0" \
  216. "mmcboot=echo Booting from mmc ...; " \
  217. "run mmcargs addmtd addmisc;" \
  218. "if test -n ${addmiscM}; then run addmiscM;fi;" \
  219. "if test -n ${addmiscC}; then run addmiscC;fi;" \
  220. "if test -n ${addmiscD}; then run addmiscD;fi;" \
  221. "run boot_board_type;" \
  222. "bootm ${fit_addr_r}\0" \
  223. "mmc_load_fit=ext4load mmc ${mmcdev}:${mmcpart} ${fit_addr_r} " \
  224. "${fit_file}\0" \
  225. "mmc_load_uboot=ext4load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
  226. "${uboot}\0" \
  227. "mmc_rescue_load_fit=ext4load mmc ${mmcdev}:${mmcrescuepart} " \
  228. "${fit_addr_r} ${rescue_fit_file}\0" \
  229. "mmc_upd_uboot=mw.b ${loadaddr} 0xff ${uboot_sz};" \
  230. "setexpr cmp_buf ${loadaddr} + ${uboot_sz};" \
  231. "setexpr uboot_maxsize ${uboot_sz} - 400;" \
  232. "mw.b ${cmp_buf} 0x00 ${uboot_sz};" \
  233. "run mmc_load_uboot;sf probe;sf erase 0 ${uboot_sz};" \
  234. "sf write ${loadaddr} 400 ${filesize};" \
  235. "sf read ${cmp_buf} 400 ${uboot_sz};" \
  236. "cmp.b ${loadaddr} ${cmp_buf} ${uboot_maxsize}\0" \
  237. "rescueargs=setenv bootargs console=${console},${baudrate} " \
  238. "root=/dev/ram rw\0 " \
  239. "rescueboot=echo Booting rescue system ...; " \
  240. "run rescueargs addmtd addmisc;" \
  241. "if test -n ${rescue_reason}; then run rescue_reason;fi;" \
  242. "if test -n ${addmiscM}; then run addmiscM;fi;" \
  243. "if test -n ${addmiscC}; then run addmiscC;fi;" \
  244. "if test -n ${addmiscD}; then run addmiscD;fi;" \
  245. "run boot_board_type;" \
  246. "if bootm ${fit_addr_r}; then ; " \
  247. "else " \
  248. "run dead; " \
  249. "fi; \0" \
  250. "r_reason_syserr=setenv rescue_reason setenv bootargs " \
  251. "\\\\${bootargs} " \
  252. "rescueReason=18\0 " \
  253. "usb_load_fit=ext4load usb 0 ${fit_addr_r} ${fit_file}\0" \
  254. "usb_load_fitf=fatload usb 0 ${fit_addr_r} ${fit_file}\0" \
  255. "usb_load_rescuefit=ext4load usb 0 ${fit_addr_r} " \
  256. "${rescue_fit_file}\0" \
  257. "usb_load_rescuefitf=fatload usb 0 ${fit_addr_r} " \
  258. "${rescue_fit_file}\0" \
  259. "usbroot=/dev/sda1 rootwait rw\0" \
  260. "usbboot=echo Booting from usb-stick ...; " \
  261. "run usbargs addmtd addmisc;" \
  262. "if test -n ${addmiscM}; then run addmiscM;fi;" \
  263. "if test -n ${addmiscC}; then run addmiscC;fi;" \
  264. "if test -n ${addmiscD}; then run addmiscD;fi;" \
  265. "run boot_board_type;" \
  266. "bootm ${fit_addr_r}\0" \
  267. "usbargs=setenv bootargs console=${console},${baudrate} " \
  268. "root=${usbroot}\0" \
  269. "mmc_rescue_boot=" \
  270. "run r_reason_syserr;" \
  271. "if run mmc_rescue_load_fit hab_check_file_fit; then " \
  272. "run rescueboot; " \
  273. "else " \
  274. "run dead; " \
  275. "echo RESCUE SYSTEM FROM SD-CARD BOOT FAILURE;" \
  276. "fi;\0" \
  277. "main_rescue_boot=" \
  278. "if run main_load_fit hab_check_flash_fit; then " \
  279. "if run mainboot; then ; " \
  280. "else " \
  281. "run r_reason_syserr;" \
  282. "if run rescue_load_fit hab_check_file_fit;" \
  283. "then run rescueboot; " \
  284. "else " \
  285. "run dead; " \
  286. "echo RESCUE SYSTEM BOOT FAILURE;" \
  287. "fi; " \
  288. "fi; " \
  289. "else " \
  290. "run r_reason_syserr;" \
  291. "if run rescue_load_fit hab_check_file_fit; then " \
  292. "run rescueboot; " \
  293. "else " \
  294. "run dead; " \
  295. "echo RESCUE SYSTEM BOOT FAILURE;" \
  296. "fi; " \
  297. "fi;\0" \
  298. "usb_mmc_rescue_boot=" \
  299. "usb start;" \
  300. "if usb storage; then " \
  301. "if run loadbootscriptUSB " \
  302. "hab_check_file_bootscript;" \
  303. "then run bootscriptUSB; " \
  304. "fi; " \
  305. "if run loadbootscriptUSBf " \
  306. "hab_check_file_bootscript;" \
  307. "then run bootscriptUSB; " \
  308. "fi; " \
  309. "if run usb_load_fit hab_check_file_fit; then " \
  310. "run usbboot; " \
  311. "fi; " \
  312. "if run usb_load_fitf hab_check_file_fit; then " \
  313. "run usbboot; " \
  314. "fi; "\
  315. "if run usb_load_rescuefit hab_check_file_fit;" \
  316. "then run r_reason_syserr rescueboot;" \
  317. "fi; " \
  318. "if run usb_load_rescuefitf hab_check_file_fit;" \
  319. "then run r_reason_syserr rescueboot;" \
  320. "fi; " \
  321. "run mmc_rescue_boot;" \
  322. "fi; "\
  323. "run mmc_rescue_boot;\0" \
  324. "rescue_xload_boot=" \
  325. "run r_reason_syserr;" \
  326. "if test ${bootmode} -ne 0 ; then " \
  327. "mmc dev ${mmcdev};" \
  328. "if mmc rescan; then " \
  329. "if run mmc_rescue_load_fit " \
  330. "hab_check_file_fit; then " \
  331. "run rescueboot; " \
  332. "else " \
  333. "usb start;" \
  334. "if usb storage; then " \
  335. "if run usb_load_rescuefit " \
  336. "hab_check_file_fit;"\
  337. "then " \
  338. "run rescueboot;" \
  339. "fi; " \
  340. "if run usb_load_rescuefitf "\
  341. "hab_check_file_fit;"\
  342. "then " \
  343. "run rescueboot;" \
  344. "fi; " \
  345. "fi;" \
  346. "fi;" \
  347. "run dead; " \
  348. "echo RESCUE SYSTEM ON SD OR " \
  349. "USB BOOT FAILURE;" \
  350. "else " \
  351. "usb start;" \
  352. "if usb storage; then " \
  353. "if run usb_load_rescuefit " \
  354. "hab_check_file_fit; then " \
  355. "run rescueboot;" \
  356. "fi; " \
  357. "if run usb_load_rescuefitf " \
  358. "hab_check_file_fit; then " \
  359. "run rescueboot;" \
  360. "fi; " \
  361. "fi;" \
  362. "run dead; " \
  363. "echo RESCUE SYSTEM ON USB BOOT FAILURE;" \
  364. "fi; " \
  365. "else "\
  366. "if run rescue_load_fit hab_check_file_fit; then " \
  367. "run rescueboot; " \
  368. "else " \
  369. "run dead; " \
  370. "echo RESCUE SYSTEM ON BOARD BOOT FAILURE;" \
  371. "fi; " \
  372. "fi;\0" \
  373. "ari_boot=if test ${bootmode} -ne 0 ; then " \
  374. "mmc dev ${mmcdev};" \
  375. "if mmc rescan; then " \
  376. "if run loadbootscript hab_check_file_bootscript;" \
  377. "then run bootscript; " \
  378. "fi; " \
  379. "if run mmc_load_fit hab_check_file_fit; then " \
  380. "if run mmcboot; then ; " \
  381. "else " \
  382. "run mmc_rescue_boot;" \
  383. "fi; " \
  384. "else " \
  385. "run usb_mmc_rescue_boot;" \
  386. "fi; " \
  387. "else " \
  388. "run usb_mmc_rescue_boot;" \
  389. "fi; " \
  390. "else "\
  391. "run main_rescue_boot;" \
  392. "fi; \0"\
  393. HAB_EXTRA_SETTINGS \
  394. CONFIG_EXTRA_ENV_BOARD_SETTINGS
  395. #define CONFIG_ARP_TIMEOUT 200UL
  396. /* Physical Memory Map */
  397. #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
  398. #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
  399. #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
  400. #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
  401. #define CONFIG_SYS_INIT_SP_OFFSET \
  402. (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
  403. #define CONFIG_SYS_INIT_SP_ADDR \
  404. (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
  405. #define CONFIG_SYS_FSL_USDHC_NUM 2
  406. /* NAND stuff */
  407. #define CONFIG_SYS_MAX_NAND_DEVICE 1
  408. #define CONFIG_SYS_NAND_BASE 0x40000000
  409. #define CONFIG_SYS_NAND_5_ADDR_CYCLE
  410. #define CONFIG_SYS_NAND_ONFI_DETECTION
  411. /* DMA stuff, needed for GPMI/MXS NAND support */
  412. /* USB Configs */
  413. #define CONFIG_EHCI_HCD_INIT_AFTER_RESET /* For OTG port */
  414. #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
  415. #define CONFIG_MXC_USB_FLAGS 0
  416. /* UBI support */
  417. /* Framebuffer */
  418. /* check this console not needed, after test remove it */
  419. #define CONFIG_SPLASH_SCREEN
  420. #define CONFIG_SPLASH_SCREEN_ALIGN
  421. #define CONFIG_IMX_VIDEO_SKIP
  422. #define CONFIG_VIDEO_LOGO
  423. #define CONFIG_VIDEO_BMP_LOGO
  424. #define CONFIG_BMP_16BPP
  425. #define CONFIG_VIDEO_BMP_RLE8
  426. #define CONFIG_IMX6_PWM_PER_CLK 66000000
  427. #endif /* __ARISTAINETOS2_CONFIG_H */