Config.in 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. config BR2_TARGET_ARM_TRUSTED_FIRMWARE
  2. bool "ARM Trusted Firmware (ATF)"
  3. depends on (BR2_ARM_CPU_ARMV8A || BR2_ARM_CPU_ARMV7A)
  4. help
  5. Enable this option if you want to build the ATF for your ARM
  6. based embedded device.
  7. https://github.com/ARM-software/arm-trusted-firmware
  8. if BR2_TARGET_ARM_TRUSTED_FIRMWARE
  9. choice
  10. prompt "ATF Version"
  11. help
  12. Select the specific ATF version you want to use
  13. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_LATEST_VERSION
  14. bool "v2.7"
  15. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION
  16. bool "Custom version"
  17. help
  18. This option allows to use a specific official versions
  19. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL
  20. bool "Custom tarball"
  21. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT
  22. bool "Custom Git repository"
  23. endchoice
  24. if BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL
  25. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION
  26. string "URL of custom ATF tarball"
  27. endif
  28. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE
  29. string "ATF version"
  30. depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION
  31. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_VERSION
  32. string
  33. default "v2.7" if BR2_TARGET_ARM_TRUSTED_FIRMWARE_LATEST_VERSION
  34. default "custom" if BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL
  35. default BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION \
  36. if BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT
  37. default BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE \
  38. if BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION
  39. if BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT
  40. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL
  41. string "URL of custom repository"
  42. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION
  43. string "Custom repository version"
  44. help
  45. Revision to use in the typical format used by Git
  46. E.G. a sha id, a tag, ..
  47. endif
  48. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM
  49. string "ATF platform"
  50. help
  51. Target plaform to build for.
  52. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD
  53. string "ATF target board"
  54. help
  55. Target board to build for. In many cases, this can be left
  56. empty.
  57. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_DTS_PATH
  58. string "Device Tree Source file paths"
  59. help
  60. Space-separated list of paths to device tree source files
  61. that will be copied to fdts/ before starting the build.
  62. To use this device tree source file, the ATF configuration
  63. file must refer to it.
  64. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP
  65. bool "Build FIP image"
  66. help
  67. This option enables building the FIP image (Firmware Image
  68. Package). This is typically the image format used by
  69. platforms were ATF encapsulates the second stage bootloader
  70. (such as U-Boot).
  71. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31
  72. bool "Build BL31 image"
  73. help
  74. This option enables building the BL31 image. This is
  75. typically used on platforms where another bootloader (e.g
  76. U-Boot) encapsulates ATF BL31.
  77. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT
  78. bool "Build BL31 U-Boot image"
  79. select BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31
  80. help
  81. Generates a U-Boot image named atf-uboot.ub containing
  82. bl31.bin. This is used for example by the Xilinx version of
  83. U-Boot SPL to load ATF on the ZynqMP SoC.
  84. choice
  85. prompt "BL32"
  86. default BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_DEFAULT
  87. help
  88. Select BL32 stage for the trusted firmware
  89. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_DEFAULT
  90. bool "Default"
  91. help
  92. With this option selected, ATF will not use any BL32 stage,
  93. unless if one is explicitly chosen using the SPD (for
  94. AArch64) or AARCH32_SP (for AArch32) variables, which can be
  95. passed through
  96. BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES.
  97. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE
  98. bool "OP-TEE OS"
  99. depends on BR2_TARGET_OPTEE_OS
  100. help
  101. This option allows to embed OP-TEE OS as the BL32 part of
  102. the ARM Trusted Firmware boot sequence.
  103. endchoice
  104. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33
  105. bool "Use Barebox as BL33"
  106. depends on BR2_TARGET_BAREBOX
  107. help
  108. This option allows to embed the Barebox generic BL33 image in
  109. the ARM Trusted Firmware. It ensures that the Barebox package
  110. gets built before ATF, and that the appropriate BL33
  111. variable pointing to the generic bl33 image is passed
  112. when building ATF.
  113. if BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33
  114. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_BL33_IMAGE
  115. string "Barebox BL33 image name"
  116. default "*-generic-bl33.img"
  117. help
  118. Name of the Barebox BL33 image to include in ATF, it must
  119. have been installed to BINARIES_DIR by the Barebox package.
  120. endif
  121. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33
  122. bool "Use U-Boot as BL33"
  123. depends on BR2_TARGET_UBOOT
  124. help
  125. This option allows to embed u-boot.bin as the BL33 part of
  126. the ARM Trusted Firmware. It ensures that the u-boot package
  127. gets built before ATF, and that the appropriate BL33
  128. variable pointing to u-boot.bin is passed when building ATF.
  129. if BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33
  130. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_BL33_IMAGE
  131. string "U-Boot BL33 image name"
  132. default "u-boot.bin"
  133. help
  134. Name of the U-Boot BL33 image to include in ATF, it must
  135. have been installed to BINARIES_DIR by the U-Boot package.
  136. endif
  137. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33
  138. bool "Use EDK2 as BL33"
  139. depends on BR2_TARGET_EDK2
  140. help
  141. This option allows to embed EDK2 as the BL33 part of
  142. the ARM Trusted Firmware. It ensures that the EDK2 package
  143. gets built before ATF, and that the appropriate BL33
  144. variable pointing to the EDK2 is passed when building ATF.
  145. Do not choose this option if you intend to build ATF and EDK2
  146. for the 'qemu_sbsa' platform. In this case, due to the EDK2
  147. build system, the dependency between ATF and EDK is reversed.
  148. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW
  149. bool "Include NXP RCW in BL2"
  150. depends on BR2_PACKAGE_HOST_QORIQ_RCW
  151. help
  152. Include the NXP RCW (Reset Control Word) in BL2. See
  153. package/qoriq-rcw/ for more details. This is mostly useful
  154. on NXP LayerScape platforms.
  155. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_TARGETS
  156. string "Additional ATF make targets"
  157. help
  158. Additional targets for the ATF build
  159. E.G. When using the QorIQ custom ATF repository from NXP,
  160. the target 'pbl' can be used to build the pbl binary.
  161. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES
  162. string "Additional ATF build variables"
  163. help
  164. Additional parameters for the ATF build
  165. E.G. 'DEBUG=1 LOG_LEVEL=20'
  166. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG
  167. bool "Build in debug mode"
  168. help
  169. Enable this option to build ATF with DEBUG=1.
  170. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES
  171. string "Binary boot images"
  172. default "*.bin"
  173. help
  174. Names of generated image files that are installed in the
  175. output images/ directory.
  176. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC
  177. bool "Needs dtc"
  178. select BR2_PACKAGE_HOST_DTC
  179. help
  180. Select this option if your ATF board configuration
  181. requires the Device Tree compiler to be available.
  182. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_ARM32_TOOLCHAIN
  183. bool "Needs arm-none-eabi toolchain"
  184. depends on BR2_aarch64
  185. depends on BR2_HOSTARCH = "x86_64"
  186. help
  187. Select this option if your ATF board configuration requires
  188. an ARM32 bare metal toolchain to be available.
  189. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP
  190. bool "Build with SSP"
  191. depends on BR2_TOOLCHAIN_HAS_SSP
  192. depends on !BR2_SSP_NONE
  193. help
  194. Say 'y' here if you want to build ATF with SSP.
  195. Your board must have SSP support in ATF: it must have an
  196. implementation for plat_get_stack_protector_canary().
  197. If you say 'y', the SSP level will be the level selected
  198. by the global SSP setting.
  199. config BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP_LEVEL
  200. string
  201. default "default" if BR2_SSP_REGULAR
  202. default "strong" if BR2_SSP_STRONG
  203. default "all" if BR2_SSP_ALL
  204. endif