Config.in 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446
  1. config BR2_TARGET_UBOOT
  2. bool "U-Boot"
  3. help
  4. Build "Das U-Boot" Boot Monitor
  5. if BR2_TARGET_UBOOT
  6. choice
  7. prompt "Build system"
  8. default BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
  9. config BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
  10. bool "Legacy"
  11. help
  12. Select this option if you use an old U-Boot (older than 2015.04),
  13. so that we use the old build system.
  14. config BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
  15. bool "Kconfig"
  16. help
  17. Select this option if you use a recent U-Boot version (2015.04 or
  18. newer), so that we use the Kconfig build system.
  19. endchoice
  20. if BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
  21. config BR2_TARGET_UBOOT_BOARDNAME
  22. string "U-Boot board name"
  23. help
  24. One of U-Boot supported boards to be built.
  25. This will be suffixed with _config to meet U-Boot standard naming.
  26. See boards.cfg in U-Boot source code for the list of available
  27. configurations.
  28. endif
  29. choice
  30. prompt "U-Boot Version"
  31. help
  32. Select the specific U-Boot version you want to use
  33. config BR2_TARGET_UBOOT_LATEST_VERSION
  34. bool "2017.07"
  35. config BR2_TARGET_UBOOT_CUSTOM_VERSION
  36. bool "Custom version"
  37. help
  38. This option allows to use a specific official versions
  39. config BR2_TARGET_UBOOT_CUSTOM_TARBALL
  40. bool "Custom tarball"
  41. config BR2_TARGET_UBOOT_CUSTOM_GIT
  42. bool "Custom Git repository"
  43. config BR2_TARGET_UBOOT_CUSTOM_HG
  44. bool "Custom Mercurial repository"
  45. config BR2_TARGET_UBOOT_CUSTOM_SVN
  46. bool "Custom Subversion repository"
  47. endchoice
  48. config BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE
  49. string "U-Boot version"
  50. depends on BR2_TARGET_UBOOT_CUSTOM_VERSION
  51. config BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION
  52. string "URL of custom U-Boot tarball"
  53. depends on BR2_TARGET_UBOOT_CUSTOM_TARBALL
  54. if BR2_TARGET_UBOOT_CUSTOM_GIT || BR2_TARGET_UBOOT_CUSTOM_HG || BR2_TARGET_UBOOT_CUSTOM_SVN
  55. config BR2_TARGET_UBOOT_CUSTOM_REPO_URL
  56. string "URL of custom repository"
  57. default BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL \
  58. if BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL != "" # legacy
  59. config BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION
  60. string "Custom repository version"
  61. default BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION \
  62. if BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION != "" # legacy
  63. help
  64. Revision to use in the typical format used by Git/Mercurial/Subversion
  65. E.G. a sha id, a tag, branch, ..
  66. endif
  67. config BR2_TARGET_UBOOT_VERSION
  68. string
  69. default "2017.07" if BR2_TARGET_UBOOT_LATEST_VERSION
  70. default BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE \
  71. if BR2_TARGET_UBOOT_CUSTOM_VERSION
  72. default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL
  73. default BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION \
  74. if BR2_TARGET_UBOOT_CUSTOM_GIT || BR2_TARGET_UBOOT_CUSTOM_HG || BR2_TARGET_UBOOT_CUSTOM_SVN
  75. config BR2_TARGET_UBOOT_PATCH
  76. string "Custom U-Boot patches"
  77. default BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR if BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR != "" # legacy
  78. help
  79. A space-separated list of patches to apply to U-Boot.
  80. Each patch can be described as an URL, a local file path,
  81. or a directory. In the case of a directory, all files
  82. matching *.patch in the directory will be applied.
  83. Most users may leave this empty
  84. if BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
  85. choice
  86. prompt "U-Boot configuration"
  87. default BR2_TARGET_UBOOT_USE_DEFCONFIG
  88. config BR2_TARGET_UBOOT_USE_DEFCONFIG
  89. bool "Using an in-tree board defconfig file"
  90. config BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
  91. bool "Using a custom board (def)config file"
  92. endchoice
  93. config BR2_TARGET_UBOOT_BOARD_DEFCONFIG
  94. string "Board defconfig"
  95. depends on BR2_TARGET_UBOOT_USE_DEFCONFIG
  96. help
  97. Name of the board for which U-Boot should be built, without
  98. the _defconfig suffix.
  99. config BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE
  100. string "Configuration file path"
  101. depends on BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
  102. help
  103. Path to the U-Boot configuration file.
  104. endif
  105. config BR2_TARGET_UBOOT_NEEDS_DTC
  106. bool "U-Boot needs dtc"
  107. select BR2_PACKAGE_HOST_DTC
  108. help
  109. Select this option if your U-Boot board configuration
  110. requires the Device Tree compiler to be available.
  111. config BR2_TARGET_UBOOT_NEEDS_PYLIBFDT
  112. bool "U-Boot needs pylibfdt"
  113. help
  114. Select this option if your U-Boot board configuration
  115. requires the Python libfdt library to be available.
  116. config BR2_TARGET_UBOOT_NEEDS_OPENSSL
  117. bool "U-Boot needs OpenSSL"
  118. help
  119. Select this option if your U-Boot board configuration
  120. requires OpenSSL to be available on the host. This is
  121. typically the case when the board configuration has
  122. CONFIG_FIT_SIGNATURE enabled.
  123. menu "U-Boot binary format"
  124. config BR2_TARGET_UBOOT_FORMAT_AIS
  125. bool "u-boot.ais"
  126. help
  127. AIS (Application Image Script) is a format defined by TI.
  128. It is required to load code/data on OMAP-L1 processors.
  129. u-boot.ais contains U-Boot with the SPL support.
  130. config BR2_TARGET_UBOOT_FORMAT_BIN
  131. bool "u-boot.bin"
  132. default y
  133. config BR2_TARGET_UBOOT_FORMAT_DTB_BIN
  134. bool "u-boot-dtb.bin"
  135. config BR2_TARGET_UBOOT_FORMAT_DTB_IMG
  136. bool "u-boot-dtb.img"
  137. config BR2_TARGET_UBOOT_FORMAT_IMG
  138. bool "u-boot.img"
  139. config BR2_TARGET_UBOOT_FORMAT_IMX
  140. bool "u-boot.imx"
  141. config BR2_TARGET_UBOOT_FORMAT_NAND_BIN
  142. bool "u-boot-nand.bin"
  143. config BR2_TARGET_UBOOT_FORMAT_KWB
  144. depends on BR2_arm
  145. bool "u-boot.kwb (Marvell)"
  146. config BR2_TARGET_UBOOT_FORMAT_LDR
  147. depends on BR2_bfin
  148. bool "u-boot.ldr"
  149. config BR2_TARGET_UBOOT_FORMAT_ELF
  150. bool "u-boot.elf"
  151. config BR2_TARGET_UBOOT_FORMAT_SB
  152. depends on BR2_arm
  153. bool "u-boot.sb (Freescale i.MX28)"
  154. config BR2_TARGET_UBOOT_FORMAT_SD
  155. depends on BR2_arm
  156. bool "u-boot.sd (Freescale i.MX28)"
  157. help
  158. This is Freescale i.MX28 SB format, with a header for booting
  159. from an SD card.
  160. U-boot includes an mxsboot tool to generate this format,
  161. starting from 2011.12.
  162. See doc/README.mxs (or doc/README.mx28_common before 2013.07)
  163. config BR2_TARGET_UBOOT_FORMAT_NAND
  164. depends on BR2_arm
  165. bool "u-boot.nand (Freescale i.MX28)"
  166. help
  167. This is Freescale i.MX28 BootStream format (.sb), with a header
  168. for booting from a NAND flash.
  169. U-boot includes an mxsboot tool to generate this format,
  170. starting from 2011.12.
  171. There are two possibilities when preparing an image writable to
  172. NAND flash:
  173. 1) The NAND was not written at all yet or the BCB (Boot Control
  174. Blocks) is broken. In this case, the NAND image 'u-boot.nand'
  175. needs to written.
  176. 2) The NAND flash was already written with a good BCB. This
  177. applies after 'u-boot.nand' was correctly written. There is no
  178. need to write the BCB again. In this case, the bootloader can be
  179. upgraded by writing 'u-boot.sb'.
  180. To satisfy both cases, the 'u-boot.nand' image obtained from
  181. mxsboot as well as the U-Boot make target 'u-boot.sb' are copied
  182. to the binaries directory.
  183. See doc/README.mxs (or doc/README.mx28_common before 2013.07)
  184. if BR2_TARGET_UBOOT_FORMAT_NAND
  185. config BR2_TARGET_UBOOT_FORMAT_NAND_PAGE_SIZE
  186. int "NAND page size"
  187. default 2048
  188. help
  189. The NAND page size of the targets NAND flash in bytes as a
  190. decimal integer value.
  191. The value provided here is passed to the -w option of mxsboot.
  192. config BR2_TARGET_UBOOT_FORMAT_NAND_OOB_SIZE
  193. int "NAND OOB size"
  194. default 64
  195. help
  196. The NAND OOB size of the targets NAND flash in bytes as a
  197. decimal integer value.
  198. The value provided here is passed to the -o option of mxsboot.
  199. config BR2_TARGET_UBOOT_FORMAT_NAND_ERASE_SIZE
  200. int "NAND erase size"
  201. default 131072
  202. help
  203. The NAND eraseblock size of the targets NAND flash in bytes as
  204. a decimal integer value.
  205. The value provided here is passed to the -e option of mxsboot.
  206. endif
  207. config BR2_TARGET_UBOOT_FORMAT_CUSTOM
  208. bool "Custom (specify below)"
  209. help
  210. On some platforms, the standard U-Boot binary is not called
  211. u-boot.bin, but u-boot<something>.bin. If this is your case,
  212. you should select this option and specify the correct name(s)
  213. in BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME.
  214. config BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME
  215. string "U-Boot binary format: custom names"
  216. depends on BR2_TARGET_UBOOT_FORMAT_CUSTOM
  217. help
  218. In case the U-Boot binary for the target platform is not among
  219. the default names, one or more custom names can be listed here.
  220. Use space to separate multiple names.
  221. Example:
  222. u-boot_magic.bin
  223. endmenu
  224. config BR2_TARGET_UBOOT_OMAP_IFT
  225. depends on BR2_TARGET_UBOOT_FORMAT_BIN
  226. depends on BR2_arm || BR2_armeb
  227. select BR2_PACKAGE_HOST_OMAP_U_BOOT_UTILS
  228. bool "produce a .ift signed image (OMAP)"
  229. help
  230. Use gpsign to produce an image of u-boot.bin signed with
  231. a Configuration Header for booting on OMAP processors.
  232. This allows U-Boot to boot without the need for an
  233. intermediate bootloader (e.g. x-loader) if it is written
  234. on the first sector of the boot medium.
  235. This only works for some media, such as NAND. Check your
  236. chip documentation for details. You might also want to
  237. read the documentation of gpsign, the tool that generates
  238. the .ift image, at:
  239. https://github.com/nmenon/omap-u-boot-utils/blob/master/README
  240. if BR2_TARGET_UBOOT_OMAP_IFT
  241. config BR2_TARGET_UBOOT_OMAP_IFT_CONFIG
  242. string "gpsign Configuration Header config file"
  243. help
  244. The Configuration Header (CH) config file defines the
  245. desired content of the CH for the signed image.
  246. It usually contains external RAM settings and
  247. possibly other external devices initialization.
  248. The omap-u-boot-utils software contains example
  249. configuration files for some boards:
  250. https://github.com/nmenon/omap-u-boot-utils/tree/master/configs
  251. endif
  252. config BR2_TARGET_UBOOT_SPL
  253. bool "Install U-Boot SPL binary image"
  254. depends on !BR2_TARGET_XLOADER
  255. help
  256. Install the U-Boot SPL binary image to the images
  257. directory.
  258. SPL is a first stage bootloader loaded into internal
  259. memory in charge of enabling and configuring the
  260. external memory (DDR), and load the u-boot program
  261. into DDR.
  262. config BR2_TARGET_UBOOT_SPL_NAME
  263. string "U-Boot SPL binary image name"
  264. default "spl/u-boot-spl.bin"
  265. depends on BR2_TARGET_UBOOT_SPL
  266. help
  267. A space-separated list of SPL binaries, generated during
  268. u-boot build. For most platform it is spl/u-boot-spl.bin but
  269. not always. It is MLO on OMAP and SPL on i.MX6 for example.
  270. config BR2_TARGET_UBOOT_ZYNQ_IMAGE
  271. bool "Generate image for Xilinx Zynq"
  272. depends on BR2_arm
  273. depends on BR2_TARGET_UBOOT_SPL
  274. depends on BR2_TARGET_UBOOT_FORMAT_DTB_IMG
  275. help
  276. Generate the BOOT.BIN file from U-Boot's SPL. The image
  277. boots the Xilinx Zynq chip without any FPGA bitstream.
  278. A bitstream can be loaded by the U-Boot. The SPL searchs
  279. for u-boot-dtb.img file so this U-Boot format is required
  280. to be set.
  281. config BR2_TARGET_UBOOT_ALTERA_SOCFPGA_IMAGE_CRC
  282. bool "CRC image for Altera SoC FPGA (mkpimage)"
  283. depends on BR2_arm
  284. depends on BR2_TARGET_UBOOT_SPL || BR2_TARGET_UBOOT_FORMAT_DTB_BIN
  285. help
  286. Pass the U-Boot image through the mkpimage tool to enable
  287. booting on the Altera SoC FPGA based platforms.
  288. On some platforms, it's the SPL that needs to be passed
  289. through mkpimage. On some other platforms there is no SPL
  290. because the internal SRAM is big enough to store the full
  291. U-Boot. In this case, it's directly the full U-Boot image
  292. that is passed through mkpimage.
  293. If BR2_TARGET_UBOOT_SPL is enabled then
  294. BR2_TARGET_UBOOT_SPL_NAME is converted by mkpimage using
  295. header version 0.
  296. Otherwise the full u-boot-dtb.bin is converted using
  297. mkpimage header version 1.
  298. In either case the resulting file will be given a .crc
  299. extension.
  300. menuconfig BR2_TARGET_UBOOT_ENVIMAGE
  301. bool "Environment image"
  302. help
  303. Generate a valid binary environment image from a text file
  304. describing the key=value pairs of the environment.
  305. The environment image will be called uboot-env.bin.
  306. if BR2_TARGET_UBOOT_ENVIMAGE
  307. config BR2_TARGET_UBOOT_ENVIMAGE_SOURCE
  308. string "Source files for environment"
  309. help
  310. Text files describing the environment. Files should have
  311. lines of the form var=value, one per line. Blank lines and
  312. lines starting with a # are ignored.
  313. Multiple source files are concatenated in the order listed.
  314. config BR2_TARGET_UBOOT_ENVIMAGE_SIZE
  315. string "Size of environment"
  316. help
  317. Size of envronment, can be prefixed with 0x for hexadecimal
  318. values.
  319. config BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT
  320. bool "Environment has two copies"
  321. help
  322. Some platforms define in their U-Boot configuration that the
  323. U-Boot environment should be duplicated in two locations (for
  324. extra safety). Check your U-Boot configuration for the
  325. CONFIG_ENV_ADDR_REDUND and CONFIG_ENV_SIZE_REDUND settings to
  326. see if this is the case for your platform.
  327. If it is the case, then you should enable this option to
  328. ensure that the U-Boot environment image generated by
  329. Buildroot is compatible with the "redundant environment"
  330. mechanism of U-Boot.
  331. endif # BR2_TARGET_UBOOT_ENVIMAGE
  332. config BR2_TARGET_UBOOT_BOOT_SCRIPT
  333. bool "Generate a U-Boot boot script"
  334. help
  335. Generate a U-Boot boot script, given a file listing U-Boot
  336. commands to be executed at boot time. The generated boot
  337. script will be called 'boot.scr'.
  338. if BR2_TARGET_UBOOT_BOOT_SCRIPT
  339. config BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE
  340. string "U-Boot boot script source"
  341. help
  342. Source file to generate the U-Boot boot script.
  343. endif
  344. if BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
  345. config BR2_TARGET_UBOOT_CUSTOM_DTS_PATH
  346. string "Device Tree Source file paths"
  347. help
  348. Space-separated list of paths to device tree source files
  349. that will be copied to arch/ARCH/dts/ before starting the
  350. build.
  351. To use this device tree source file, the U-Boot configuration
  352. file must refer to it.
  353. endif
  354. endif # BR2_TARGET_UBOOT