1 config BR2_TARGET_UBOOT
4 Build "Das U-Boot" Boot Monitor
9 default BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
11 config BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
14 Select this option if you use an old U-Boot (older than
15 2015.04), so that we use the old build system.
17 config BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
20 Select this option if you use a recent U-Boot version (2015.04
21 or newer), so that we use the Kconfig build system.
25 if BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
26 config BR2_TARGET_UBOOT_BOARDNAME
27 string "U-Boot board name"
29 One of U-Boot supported boards to be built.
30 This will be suffixed with _config to meet U-Boot standard
31 naming. See boards.cfg in U-Boot source code for the list of
32 available configurations.
36 prompt "U-Boot Version"
38 Select the specific U-Boot version you want to use
40 config BR2_TARGET_UBOOT_LATEST_VERSION
43 config BR2_TARGET_UBOOT_CUSTOM_VERSION
46 This option allows to use a specific official versions
48 config BR2_TARGET_UBOOT_CUSTOM_TARBALL
51 config BR2_TARGET_UBOOT_CUSTOM_GIT
52 bool "Custom Git repository"
54 config BR2_TARGET_UBOOT_CUSTOM_HG
55 bool "Custom Mercurial repository"
57 config BR2_TARGET_UBOOT_CUSTOM_SVN
58 bool "Custom Subversion repository"
62 config BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE
63 string "U-Boot version"
64 depends on BR2_TARGET_UBOOT_CUSTOM_VERSION
66 config BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION
67 string "URL of custom U-Boot tarball"
68 depends on BR2_TARGET_UBOOT_CUSTOM_TARBALL
70 if BR2_TARGET_UBOOT_CUSTOM_GIT || BR2_TARGET_UBOOT_CUSTOM_HG || BR2_TARGET_UBOOT_CUSTOM_SVN
72 config BR2_TARGET_UBOOT_CUSTOM_REPO_URL
73 string "URL of custom repository"
74 default BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL \
75 if BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL != "" # legacy
77 config BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION
78 string "Custom repository version"
79 default BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION \
80 if BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION != "" # legacy
82 Revision to use in the typical format used by
83 Git/Mercurial/Subversion E.G. a sha id, a tag, branch, ..
87 config BR2_TARGET_UBOOT_VERSION
89 default "2018.01" if BR2_TARGET_UBOOT_LATEST_VERSION
90 default BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE \
91 if BR2_TARGET_UBOOT_CUSTOM_VERSION
92 default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL
93 default BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION \
94 if BR2_TARGET_UBOOT_CUSTOM_GIT || BR2_TARGET_UBOOT_CUSTOM_HG || BR2_TARGET_UBOOT_CUSTOM_SVN
96 config BR2_TARGET_UBOOT_PATCH
97 string "Custom U-Boot patches"
98 default BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR if BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR != "" # legacy
100 A space-separated list of patches to apply to U-Boot.
101 Each patch can be described as an URL, a local file path,
102 or a directory. In the case of a directory, all files
103 matching *.patch in the directory will be applied.
105 Most users may leave this empty
107 if BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
109 prompt "U-Boot configuration"
110 default BR2_TARGET_UBOOT_USE_DEFCONFIG
112 config BR2_TARGET_UBOOT_USE_DEFCONFIG
113 bool "Using an in-tree board defconfig file"
115 config BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
116 bool "Using a custom board (def)config file"
120 config BR2_TARGET_UBOOT_BOARD_DEFCONFIG
121 string "Board defconfig"
122 depends on BR2_TARGET_UBOOT_USE_DEFCONFIG
124 Name of the board for which U-Boot should be built, without
125 the _defconfig suffix.
127 config BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE
128 string "Configuration file path"
129 depends on BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
131 Path to the U-Boot configuration file.
133 config BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES
134 string "Additional configuration fragment files"
136 A space-separated list of configuration fragment files,
137 that will be merged to the main U-Boot configuration file.
140 config BR2_TARGET_UBOOT_NEEDS_DTC
141 bool "U-Boot needs dtc"
142 select BR2_PACKAGE_HOST_DTC
144 Select this option if your U-Boot board configuration
145 requires the Device Tree compiler to be available.
147 config BR2_TARGET_UBOOT_NEEDS_PYLIBFDT
148 bool "U-Boot needs pylibfdt"
150 Select this option if your U-Boot board configuration
151 requires the Python libfdt library to be available.
153 config BR2_TARGET_UBOOT_NEEDS_OPENSSL
154 bool "U-Boot needs OpenSSL"
156 Select this option if your U-Boot board configuration
157 requires OpenSSL to be available on the host. This is
158 typically the case when the board configuration has
159 CONFIG_FIT_SIGNATURE enabled.
161 config BR2_TARGET_UBOOT_NEEDS_ATF_BL31
162 bool "U-Boot needs ATF BL31"
163 depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE
164 depends on !BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33
165 select BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31
167 Some specific platforms (such as Allwinner A64/H5)
168 encapsulate the BL31 part of ATF inside U-Boot. This option
169 makes sure ATF gets built prior to U-Boot, and that the BL31
170 variable pointing to ATF's BL31 binary, is passed during the
173 menu "U-Boot binary format"
175 config BR2_TARGET_UBOOT_FORMAT_AIS
178 AIS (Application Image Script) is a format defined by TI.
179 It is required to load code/data on OMAP-L1 processors.
180 u-boot.ais contains U-Boot with the SPL support.
182 config BR2_TARGET_UBOOT_FORMAT_BIN
186 config BR2_TARGET_UBOOT_FORMAT_DTB_BIN
187 bool "u-boot-dtb.bin"
189 config BR2_TARGET_UBOOT_FORMAT_DTB_IMG
190 bool "u-boot-dtb.img"
192 config BR2_TARGET_UBOOT_FORMAT_IMG
195 config BR2_TARGET_UBOOT_FORMAT_IMX
198 config BR2_TARGET_UBOOT_FORMAT_NAND_BIN
199 bool "u-boot-nand.bin"
201 config BR2_TARGET_UBOOT_FORMAT_KWB
202 bool "u-boot.kwb (Marvell)"
205 config BR2_TARGET_UBOOT_FORMAT_LDR
209 config BR2_TARGET_UBOOT_FORMAT_ELF
212 config BR2_TARGET_UBOOT_FORMAT_SB
213 bool "u-boot.sb (Freescale i.MX28)"
216 config BR2_TARGET_UBOOT_FORMAT_SD
217 bool "u-boot.sd (Freescale i.MX28)"
220 This is Freescale i.MX28 SB format, with a header for booting
223 U-boot includes an mxsboot tool to generate this format,
224 starting from 2011.12.
226 See doc/README.mxs (or doc/README.mx28_common before 2013.07)
228 config BR2_TARGET_UBOOT_FORMAT_NAND
229 bool "u-boot.nand (Freescale i.MX28)"
232 This is Freescale i.MX28 BootStream format (.sb), with a
233 header for booting from a NAND flash.
235 U-boot includes an mxsboot tool to generate this format,
236 starting from 2011.12.
238 There are two possibilities when preparing an image writable
240 1) The NAND was not written at all yet or the BCB (Boot
241 Control Blocks) is broken. In this case, the NAND image
242 'u-boot.nand' needs to written.
243 2) The NAND flash was already written with a good BCB. This
244 applies after 'u-boot.nand' was correctly written. There is no
245 need to write the BCB again. In this case, the bootloader can
246 be upgraded by writing 'u-boot.sb'.
248 To satisfy both cases, the 'u-boot.nand' image obtained from
249 mxsboot as well as the U-Boot make target 'u-boot.sb' are
250 copied to the binaries directory.
252 See doc/README.mxs (or doc/README.mx28_common before 2013.07)
254 if BR2_TARGET_UBOOT_FORMAT_NAND
256 config BR2_TARGET_UBOOT_FORMAT_NAND_PAGE_SIZE
260 The NAND page size of the targets NAND flash in bytes as a
261 decimal integer value.
263 The value provided here is passed to the -w option of mxsboot.
265 config BR2_TARGET_UBOOT_FORMAT_NAND_OOB_SIZE
269 The NAND OOB size of the targets NAND flash in bytes as a
270 decimal integer value.
272 The value provided here is passed to the -o option of mxsboot.
274 config BR2_TARGET_UBOOT_FORMAT_NAND_ERASE_SIZE
275 int "NAND erase size"
278 The NAND eraseblock size of the targets NAND flash in bytes as
279 a decimal integer value.
281 The value provided here is passed to the -e option of mxsboot.
285 config BR2_TARGET_UBOOT_FORMAT_CUSTOM
286 bool "Custom (specify below)"
288 On some platforms, the standard U-Boot binary is not called
289 u-boot.bin, but u-boot<something>.bin. If this is your case,
290 you should select this option and specify the correct name(s)
291 in BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME.
293 config BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME
294 string "U-Boot binary format: custom names"
295 depends on BR2_TARGET_UBOOT_FORMAT_CUSTOM
297 In case the U-Boot binary for the target platform is not among
298 the default names, one or more custom names can be listed
300 Use space to separate multiple names.
306 config BR2_TARGET_UBOOT_OMAP_IFT
307 bool "produce a .ift signed image (OMAP)"
308 depends on BR2_TARGET_UBOOT_FORMAT_BIN
309 depends on BR2_arm || BR2_armeb
310 select BR2_PACKAGE_HOST_OMAP_U_BOOT_UTILS
312 Use gpsign to produce an image of u-boot.bin signed with
313 a Configuration Header for booting on OMAP processors.
314 This allows U-Boot to boot without the need for an
315 intermediate bootloader (e.g. x-loader) if it is written
316 on the first sector of the boot medium.
317 This only works for some media, such as NAND. Check your
318 chip documentation for details. You might also want to
319 read the documentation of gpsign, the tool that generates
321 https://github.com/nmenon/omap-u-boot-utils/blob/master/README
323 if BR2_TARGET_UBOOT_OMAP_IFT
325 config BR2_TARGET_UBOOT_OMAP_IFT_CONFIG
326 string "gpsign Configuration Header config file"
328 The Configuration Header (CH) config file defines the
329 desired content of the CH for the signed image.
330 It usually contains external RAM settings and
331 possibly other external devices initialization.
332 The omap-u-boot-utils software contains example
333 configuration files for some boards:
334 https://github.com/nmenon/omap-u-boot-utils/tree/master/configs
338 config BR2_TARGET_UBOOT_SPL
339 bool "Install U-Boot SPL binary image"
340 depends on !BR2_TARGET_XLOADER
342 Install the U-Boot SPL binary image to the images
344 SPL is a first stage bootloader loaded into internal
345 memory in charge of enabling and configuring the
346 external memory (DDR), and load the u-boot program
349 config BR2_TARGET_UBOOT_SPL_NAME
350 string "U-Boot SPL/TPL binary image name(s)"
351 default "spl/u-boot-spl.bin"
352 depends on BR2_TARGET_UBOOT_SPL
354 A space-separated list of SPL/TPL binaries, generated during
355 u-boot build. For most platform SPL name is spl/u-boot-spl.bin
356 and TPL name is tpl/u-boot-tpl.bin but not always. SPL name is
357 MLO on OMAP and SPL on i.MX6 for example.
359 config BR2_TARGET_UBOOT_ZYNQ_IMAGE
360 bool "Generate image for Xilinx Zynq"
362 depends on BR2_TARGET_UBOOT_SPL
363 depends on BR2_TARGET_UBOOT_FORMAT_DTB_IMG
365 Generate the BOOT.BIN file from U-Boot's SPL. The image
366 boots the Xilinx Zynq chip without any FPGA bitstream.
367 A bitstream can be loaded by the U-Boot. The SPL searchs
368 for u-boot-dtb.img file so this U-Boot format is required
371 config BR2_TARGET_UBOOT_ALTERA_SOCFPGA_IMAGE_CRC
372 bool "CRC image for Altera SoC FPGA (mkpimage)"
374 depends on BR2_TARGET_UBOOT_SPL || BR2_TARGET_UBOOT_FORMAT_DTB_BIN
376 Pass the U-Boot image through the mkpimage tool to enable
377 booting on the Altera SoC FPGA based platforms.
379 On some platforms, it's the SPL that needs to be passed
380 through mkpimage. On some other platforms there is no SPL
381 because the internal SRAM is big enough to store the full
382 U-Boot. In this case, it's directly the full U-Boot image
383 that is passed through mkpimage.
385 If BR2_TARGET_UBOOT_SPL is enabled then
386 BR2_TARGET_UBOOT_SPL_NAME is converted by mkpimage using
389 Otherwise the full u-boot-dtb.bin is converted using
390 mkpimage header version 1.
392 In either case the resulting file will be given a .crc
395 menuconfig BR2_TARGET_UBOOT_ENVIMAGE
396 bool "Environment image"
398 Generate a valid binary environment image from a text file
399 describing the key=value pairs of the environment.
401 The environment image will be called uboot-env.bin.
403 if BR2_TARGET_UBOOT_ENVIMAGE
405 config BR2_TARGET_UBOOT_ENVIMAGE_SOURCE
406 string "Source files for environment"
408 Text files describing the environment. Files should have
409 lines of the form var=value, one per line. Blank lines and
410 lines starting with a # are ignored.
412 Multiple source files are concatenated in the order listed.
414 config BR2_TARGET_UBOOT_ENVIMAGE_SIZE
415 string "Size of environment"
417 Size of envronment, can be prefixed with 0x for hexadecimal
420 config BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT
421 bool "Environment has two copies"
423 Some platforms define in their U-Boot configuration that the
424 U-Boot environment should be duplicated in two locations (for
425 extra safety). Check your U-Boot configuration for the
426 CONFIG_ENV_ADDR_REDUND and CONFIG_ENV_SIZE_REDUND settings to
427 see if this is the case for your platform.
429 If it is the case, then you should enable this option to
430 ensure that the U-Boot environment image generated by
431 Buildroot is compatible with the "redundant environment"
434 endif # BR2_TARGET_UBOOT_ENVIMAGE
436 config BR2_TARGET_UBOOT_BOOT_SCRIPT
437 bool "Generate a U-Boot boot script"
439 Generate a U-Boot boot script, given a file listing U-Boot
440 commands to be executed at boot time. The generated boot
441 script will be called 'boot.scr'.
443 if BR2_TARGET_UBOOT_BOOT_SCRIPT
445 config BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE
446 string "U-Boot boot script source"
448 Source file to generate the U-Boot boot script.
452 if BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
454 config BR2_TARGET_UBOOT_CUSTOM_DTS_PATH
455 string "Device Tree Source file paths"
457 Space-separated list of paths to device tree source files
458 that will be copied to arch/ARCH/dts/ before starting the
461 To use this device tree source file, the U-Boot configuration
462 file must refer to it.
466 endif # BR2_TARGET_UBOOT