ls1012afrwy.h 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright 2018 NXP
  4. */
  5. #ifndef __LS1012AFRWY_H__
  6. #define __LS1012AFRWY_H__
  7. #include "ls1012a_common.h"
  8. /* Board Rev*/
  9. #define BOARD_REV_A_B 0x0
  10. #define BOARD_REV_C 0x00080000
  11. #define BOARD_REV_MASK 0x001A0000
  12. /* DDR */
  13. #define CONFIG_DIMM_SLOTS_PER_CTLR 1
  14. #define CONFIG_CHIP_SELECTS_PER_CTRL 1
  15. #define SYS_SDRAM_SIZE_512 0x20000000
  16. #define SYS_SDRAM_SIZE_1024 0x40000000
  17. #define CONFIG_CHIP_SELECTS_PER_CTRL 1
  18. #define CONFIG_CMD_MEMINFO
  19. #define CONFIG_CMD_MEMTEST
  20. #define CONFIG_SYS_MEMTEST_START 0x80000000
  21. #define CONFIG_SYS_MEMTEST_END 0x9fffffff
  22. /* ENV */
  23. #define CONFIG_SYS_FSL_QSPI_BASE 0x40000000
  24. #ifndef CONFIG_SPL_BUILD
  25. #undef BOOT_TARGET_DEVICES
  26. #define BOOT_TARGET_DEVICES(func) \
  27. func(MMC, mmc, 0) \
  28. func(USB, usb, 0)
  29. #endif
  30. #undef FSL_QSPI_FLASH_SIZE
  31. #define FSL_QSPI_FLASH_SIZE SZ_16M
  32. /* MMC */
  33. #ifdef CONFIG_MMC
  34. #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
  35. #endif
  36. #define CONFIG_PCIE1 /* PCIE controller 1 */
  37. #define CONFIG_PCI_SCAN_SHOW
  38. #undef CONFIG_EXTRA_ENV_SETTINGS
  39. #define CONFIG_EXTRA_ENV_SETTINGS \
  40. "verify=no\0" \
  41. "fdt_high=0xffffffffffffffff\0" \
  42. "initrd_high=0xffffffffffffffff\0" \
  43. "fdt_addr=0x00f00000\0" \
  44. "kernel_addr=0x01000000\0" \
  45. "kernel_size_sd=0x16000\0" \
  46. "kernelhdr_size_sd=0x10\0" \
  47. "kernel_addr_sd=0x8000\0" \
  48. "kernelhdr_addr_sd=0x4000\0" \
  49. "kernelheader_addr=0x1fc000\0" \
  50. "kernelheader_addr=0x1fc000\0" \
  51. "scriptaddr=0x80000000\0" \
  52. "scripthdraddr=0x80080000\0" \
  53. "fdtheader_addr_r=0x80100000\0" \
  54. "kernelheader_addr_r=0x80200000\0" \
  55. "kernelheader_size=0x40000\0" \
  56. "kernel_addr_r=0x81000000\0" \
  57. "fdt_addr_r=0x90000000\0" \
  58. "load_addr=0x96000000\0" \
  59. "kernel_size=0x2800000\0" \
  60. "kernelheader_size=0x40000\0" \
  61. "console=ttyS0,115200\0" \
  62. BOOTENV \
  63. "boot_scripts=ls1012afrwy_boot.scr\0" \
  64. "boot_script_hdr=hdr_ls1012afrwy_bs.out\0" \
  65. "scan_dev_for_boot_part=" \
  66. "part list ${devtype} ${devnum} devplist; " \
  67. "env exists devplist || setenv devplist 1; " \
  68. "for distro_bootpart in ${devplist}; do " \
  69. "if fstype ${devtype} " \
  70. "${devnum}:${distro_bootpart} " \
  71. "bootfstype; then " \
  72. "run scan_dev_for_boot; " \
  73. "fi; " \
  74. "done\0" \
  75. "scan_dev_for_boot=" \
  76. "echo Scanning ${devtype} " \
  77. "${devnum}:${distro_bootpart}...; " \
  78. "for prefix in ${boot_prefixes}; do " \
  79. "run scan_dev_for_scripts; " \
  80. "done;" \
  81. "\0" \
  82. "boot_a_script=" \
  83. "load ${devtype} ${devnum}:${distro_bootpart} " \
  84. "${scriptaddr} ${prefix}${script}; " \
  85. "env exists secureboot && load ${devtype} " \
  86. "${devnum}:${distro_bootpart} " \
  87. "${scripthdraddr} ${prefix}${boot_script_hdr}; " \
  88. "env exists secureboot " \
  89. "&& esbc_validate ${scripthdraddr};" \
  90. "source ${scriptaddr}\0" \
  91. "installer=load mmc 0:2 $load_addr " \
  92. "/flex_installer_arm64.itb; " \
  93. "bootm $load_addr#$board\0" \
  94. "qspi_bootcmd=pfe stop; echo Trying load from qspi..;" \
  95. "sf probe && sf read $load_addr " \
  96. "$kernel_addr $kernel_size; env exists secureboot " \
  97. "&& sf read $kernelheader_addr_r $kernelheader_addr " \
  98. "$kernelheader_size && esbc_validate ${kernelheader_addr_r}; " \
  99. "bootm $load_addr#$board\0" \
  100. "sd_bootcmd=pfe stop; echo Trying load from sd card..;" \
  101. "mmcinfo; mmc read $load_addr " \
  102. "$kernel_addr_sd $kernel_size_sd ;" \
  103. "env exists secureboot && mmc read $kernelheader_addr_r "\
  104. "$kernelhdr_addr_sd $kernelhdr_size_sd " \
  105. " && esbc_validate ${kernelheader_addr_r};" \
  106. "bootm $load_addr#$board\0"
  107. #undef CONFIG_BOOTCOMMAND
  108. #ifdef CONFIG_TFABOOT
  109. #undef QSPI_NOR_BOOTCOMMAND
  110. #define QSPI_NOR_BOOTCOMMAND "pfe stop; run distro_bootcmd; run sd_bootcmd; "\
  111. "env exists secureboot && esbc_halt;"
  112. #else
  113. #define CONFIG_BOOTCOMMAND "pfe stop; run distro_bootcmd; run sd_bootcmd; "\
  114. "env exists secureboot && esbc_halt;"
  115. #endif
  116. #define CONFIG_CMD_MEMINFO
  117. #define CONFIG_CMD_MEMTEST
  118. #define CONFIG_SYS_MEMTEST_START 0x80000000
  119. #define CONFIG_SYS_MEMTEST_END 0x9fffffff
  120. #include <asm/fsl_secure_boot.h>
  121. #include <asm/fsl_secure_boot.h>
  122. #endif /* __LS1012AFRWY_H__ */