1 config BR2_TARGET_UBOOT
4 Build "Das U-Boot" Boot Monitor
9 default BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG if BR2_TARGET_UBOOT_LATEST_VERSION
10 default BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
12 config BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
15 Select this option if you use a recent U-Boot version (2015.04
16 or newer), so that we use the Kconfig build system.
18 config BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
21 Select this option if you use an old U-Boot (older than
22 2015.04), so that we use the old build system.
26 if BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY
27 config BR2_TARGET_UBOOT_BOARDNAME
28 string "U-Boot board name"
30 One of U-Boot supported boards to be built.
31 This will be suffixed with _config to meet U-Boot standard
32 naming. See boards.cfg in U-Boot source code for the list of
33 available configurations.
37 prompt "U-Boot Version"
39 Select the specific U-Boot version you want to use
41 config BR2_TARGET_UBOOT_LATEST_VERSION
44 config BR2_TARGET_UBOOT_CUSTOM_VERSION
47 This option allows to use a specific official versions
49 config BR2_TARGET_UBOOT_CUSTOM_TARBALL
52 config BR2_TARGET_UBOOT_CUSTOM_GIT
53 bool "Custom Git repository"
55 config BR2_TARGET_UBOOT_CUSTOM_HG
56 bool "Custom Mercurial repository"
58 config BR2_TARGET_UBOOT_CUSTOM_SVN
59 bool "Custom Subversion repository"
63 config BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE
64 string "U-Boot version"
65 depends on BR2_TARGET_UBOOT_CUSTOM_VERSION
67 config BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION
68 string "URL of custom U-Boot tarball"
69 depends on BR2_TARGET_UBOOT_CUSTOM_TARBALL
71 if BR2_TARGET_UBOOT_CUSTOM_GIT || BR2_TARGET_UBOOT_CUSTOM_HG || BR2_TARGET_UBOOT_CUSTOM_SVN
73 config BR2_TARGET_UBOOT_CUSTOM_REPO_URL
74 string "URL of custom repository"
75 default BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL \
76 if BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL != "" # legacy
78 config BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION
79 string "Custom repository version"
80 default BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION \
81 if BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION != "" # legacy
83 Revision to use in the typical format used by
84 Git/Mercurial/Subversion E.G. a sha id, a tag, branch, ..
88 config BR2_TARGET_UBOOT_VERSION
90 default "2018.03" if BR2_TARGET_UBOOT_LATEST_VERSION
91 default BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE \
92 if BR2_TARGET_UBOOT_CUSTOM_VERSION
93 default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL
94 default BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION \
95 if BR2_TARGET_UBOOT_CUSTOM_GIT || BR2_TARGET_UBOOT_CUSTOM_HG || BR2_TARGET_UBOOT_CUSTOM_SVN
97 config BR2_TARGET_UBOOT_PATCH
98 string "Custom U-Boot patches"
99 default BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR if BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR != "" # legacy
101 A space-separated list of patches to apply to U-Boot.
102 Each patch can be described as an URL, a local file path,
103 or a directory. In the case of a directory, all files
104 matching *.patch in the directory will be applied.
106 Most users may leave this empty
108 if BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
110 prompt "U-Boot configuration"
111 default BR2_TARGET_UBOOT_USE_DEFCONFIG
113 config BR2_TARGET_UBOOT_USE_DEFCONFIG
114 bool "Using an in-tree board defconfig file"
116 config BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
117 bool "Using a custom board (def)config file"
121 config BR2_TARGET_UBOOT_BOARD_DEFCONFIG
122 string "Board defconfig"
123 depends on BR2_TARGET_UBOOT_USE_DEFCONFIG
125 Name of the board for which U-Boot should be built, without
126 the _defconfig suffix.
128 config BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE
129 string "Configuration file path"
130 depends on BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
132 Path to the U-Boot configuration file.
134 config BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES
135 string "Additional configuration fragment files"
137 A space-separated list of configuration fragment files,
138 that will be merged to the main U-Boot configuration file.
141 config BR2_TARGET_UBOOT_NEEDS_DTC
142 bool "U-Boot needs dtc"
143 select BR2_PACKAGE_HOST_DTC
145 Select this option if your U-Boot board configuration
146 requires the Device Tree compiler to be available.
148 config BR2_TARGET_UBOOT_NEEDS_PYLIBFDT
149 bool "U-Boot needs pylibfdt"
151 Select this option if your U-Boot board configuration
152 requires the Python libfdt library to be available.
154 config BR2_TARGET_UBOOT_NEEDS_OPENSSL
155 bool "U-Boot needs OpenSSL"
157 Select this option if your U-Boot board configuration
158 requires OpenSSL to be available on the host. This is
159 typically the case when the board configuration has
160 CONFIG_FIT_SIGNATURE enabled.
162 config BR2_TARGET_UBOOT_NEEDS_ATF_BL31
163 bool "U-Boot needs ATF BL31"
164 depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE
165 depends on !BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33
166 select BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31
168 Some specific platforms (such as Allwinner A64/H5)
169 encapsulate the BL31 part of ATF inside U-Boot. This option
170 makes sure ATF gets built prior to U-Boot, and that the BL31
171 variable pointing to ATF's BL31 binary, is passed during the
174 menu "U-Boot binary format"
176 config BR2_TARGET_UBOOT_FORMAT_AIS
179 AIS (Application Image Script) is a format defined by TI.
180 It is required to load code/data on OMAP-L1 processors.
181 u-boot.ais contains U-Boot with the SPL support.
183 config BR2_TARGET_UBOOT_FORMAT_BIN
187 config BR2_TARGET_UBOOT_FORMAT_DTB_BIN
188 bool "u-boot-dtb.bin"
190 config BR2_TARGET_UBOOT_FORMAT_DTB_IMG
191 bool "u-boot-dtb.img"
193 config BR2_TARGET_UBOOT_FORMAT_IMG
196 config BR2_TARGET_UBOOT_FORMAT_IMX
199 config BR2_TARGET_UBOOT_FORMAT_NAND_BIN
200 bool "u-boot-nand.bin"
202 config BR2_TARGET_UBOOT_FORMAT_KWB
203 bool "u-boot.kwb (Marvell)"
206 config BR2_TARGET_UBOOT_FORMAT_ELF
209 config BR2_TARGET_UBOOT_FORMAT_SB
210 bool "u-boot.sb (Freescale i.MX28)"
213 config BR2_TARGET_UBOOT_FORMAT_SD
214 bool "u-boot.sd (Freescale i.MX28)"
217 This is Freescale i.MX28 SB format, with a header for booting
220 U-boot includes an mxsboot tool to generate this format,
221 starting from 2011.12.
223 See doc/README.mxs (or doc/README.mx28_common before 2013.07)
225 config BR2_TARGET_UBOOT_FORMAT_NAND
226 bool "u-boot.nand (Freescale i.MX28)"
229 This is Freescale i.MX28 BootStream format (.sb), with a
230 header for booting from a NAND flash.
232 U-boot includes an mxsboot tool to generate this format,
233 starting from 2011.12.
235 There are two possibilities when preparing an image writable
237 1) The NAND was not written at all yet or the BCB (Boot
238 Control Blocks) is broken. In this case, the NAND image
239 'u-boot.nand' needs to written.
240 2) The NAND flash was already written with a good BCB. This
241 applies after 'u-boot.nand' was correctly written. There is no
242 need to write the BCB again. In this case, the bootloader can
243 be upgraded by writing 'u-boot.sb'.
245 To satisfy both cases, the 'u-boot.nand' image obtained from
246 mxsboot as well as the U-Boot make target 'u-boot.sb' are
247 copied to the binaries directory.
249 See doc/README.mxs (or doc/README.mx28_common before 2013.07)
251 if BR2_TARGET_UBOOT_FORMAT_NAND
253 config BR2_TARGET_UBOOT_FORMAT_NAND_PAGE_SIZE
257 The NAND page size of the targets NAND flash in bytes as a
258 decimal integer value.
260 The value provided here is passed to the -w option of mxsboot.
262 config BR2_TARGET_UBOOT_FORMAT_NAND_OOB_SIZE
266 The NAND OOB size of the targets NAND flash in bytes as a
267 decimal integer value.
269 The value provided here is passed to the -o option of mxsboot.
271 config BR2_TARGET_UBOOT_FORMAT_NAND_ERASE_SIZE
272 int "NAND erase size"
275 The NAND eraseblock size of the targets NAND flash in bytes as
276 a decimal integer value.
278 The value provided here is passed to the -e option of mxsboot.
282 config BR2_TARGET_UBOOT_FORMAT_CUSTOM
283 bool "Custom (specify below)"
285 On some platforms, the standard U-Boot binary is not called
286 u-boot.bin, but u-boot<something>.bin. If this is your case,
287 you should select this option and specify the correct name(s)
288 in BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME.
290 config BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME
291 string "U-Boot binary format: custom names"
292 depends on BR2_TARGET_UBOOT_FORMAT_CUSTOM
294 In case the U-Boot binary for the target platform is not among
295 the default names, one or more custom names can be listed
297 Use space to separate multiple names.
303 config BR2_TARGET_UBOOT_OMAP_IFT
304 bool "produce a .ift signed image (OMAP)"
305 depends on BR2_TARGET_UBOOT_FORMAT_BIN
306 depends on BR2_arm || BR2_armeb
307 select BR2_PACKAGE_HOST_OMAP_U_BOOT_UTILS
309 Use gpsign to produce an image of u-boot.bin signed with
310 a Configuration Header for booting on OMAP processors.
311 This allows U-Boot to boot without the need for an
312 intermediate bootloader (e.g. x-loader) if it is written
313 on the first sector of the boot medium.
314 This only works for some media, such as NAND. Check your
315 chip documentation for details. You might also want to
316 read the documentation of gpsign, the tool that generates
318 https://github.com/nmenon/omap-u-boot-utils/blob/master/README
320 if BR2_TARGET_UBOOT_OMAP_IFT
322 config BR2_TARGET_UBOOT_OMAP_IFT_CONFIG
323 string "gpsign Configuration Header config file"
325 The Configuration Header (CH) config file defines the
326 desired content of the CH for the signed image.
327 It usually contains external RAM settings and
328 possibly other external devices initialization.
329 The omap-u-boot-utils software contains example
330 configuration files for some boards:
331 https://github.com/nmenon/omap-u-boot-utils/tree/master/configs
335 config BR2_TARGET_UBOOT_SPL
336 bool "Install U-Boot SPL binary image"
337 depends on !BR2_TARGET_XLOADER
339 Install the U-Boot SPL binary image to the images
341 SPL is a first stage bootloader loaded into internal
342 memory in charge of enabling and configuring the
343 external memory (DDR), and load the u-boot program
346 config BR2_TARGET_UBOOT_SPL_NAME
347 string "U-Boot SPL/TPL binary image name(s)"
348 default "spl/u-boot-spl.bin"
349 depends on BR2_TARGET_UBOOT_SPL
351 A space-separated list of SPL/TPL binaries, generated during
352 u-boot build. For most platform SPL name is spl/u-boot-spl.bin
353 and TPL name is tpl/u-boot-tpl.bin but not always. SPL name is
354 MLO on OMAP and SPL on i.MX6 for example.
356 config BR2_TARGET_UBOOT_ZYNQ_IMAGE
357 bool "Generate image for Xilinx Zynq"
359 depends on BR2_TARGET_UBOOT_SPL
360 depends on BR2_TARGET_UBOOT_FORMAT_DTB_IMG
362 Generate the BOOT.BIN file from U-Boot's SPL. The image
363 boots the Xilinx Zynq chip without any FPGA bitstream.
364 A bitstream can be loaded by the U-Boot. The SPL searchs
365 for u-boot-dtb.img file so this U-Boot format is required
368 config BR2_TARGET_UBOOT_ALTERA_SOCFPGA_IMAGE_CRC
369 bool "CRC image for Altera SoC FPGA (mkpimage)"
371 depends on BR2_TARGET_UBOOT_SPL || BR2_TARGET_UBOOT_FORMAT_DTB_BIN
373 Pass the U-Boot image through the mkpimage tool to enable
374 booting on the Altera SoC FPGA based platforms.
376 On some platforms, it's the SPL that needs to be passed
377 through mkpimage. On some other platforms there is no SPL
378 because the internal SRAM is big enough to store the full
379 U-Boot. In this case, it's directly the full U-Boot image
380 that is passed through mkpimage.
382 If BR2_TARGET_UBOOT_SPL is enabled then
383 BR2_TARGET_UBOOT_SPL_NAME is converted by mkpimage using
386 Otherwise the full u-boot-dtb.bin is converted using
387 mkpimage header version 1.
389 In either case the resulting file will be given a .crc
392 menuconfig BR2_TARGET_UBOOT_ENVIMAGE
393 bool "Environment image"
395 Generate a valid binary environment image from a text file
396 describing the key=value pairs of the environment.
398 The environment image will be called uboot-env.bin.
400 if BR2_TARGET_UBOOT_ENVIMAGE
402 config BR2_TARGET_UBOOT_ENVIMAGE_SOURCE
403 string "Source files for environment"
405 Text files describing the environment. Files should have
406 lines of the form var=value, one per line. Blank lines and
407 lines starting with a # are ignored.
409 Multiple source files are concatenated in the order listed.
411 config BR2_TARGET_UBOOT_ENVIMAGE_SIZE
412 string "Size of environment"
414 Size of envronment, can be prefixed with 0x for hexadecimal
417 config BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT
418 bool "Environment has two copies"
420 Some platforms define in their U-Boot configuration that the
421 U-Boot environment should be duplicated in two locations (for
422 extra safety). Check your U-Boot configuration for the
423 CONFIG_ENV_ADDR_REDUND and CONFIG_ENV_SIZE_REDUND settings to
424 see if this is the case for your platform.
426 If it is the case, then you should enable this option to
427 ensure that the U-Boot environment image generated by
428 Buildroot is compatible with the "redundant environment"
431 endif # BR2_TARGET_UBOOT_ENVIMAGE
433 config BR2_TARGET_UBOOT_BOOT_SCRIPT
434 bool "Generate a U-Boot boot script"
436 Generate a U-Boot boot script, given a file listing U-Boot
437 commands to be executed at boot time. The generated boot
438 script will be called 'boot.scr'.
440 if BR2_TARGET_UBOOT_BOOT_SCRIPT
442 config BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE
443 string "U-Boot boot script source"
445 Source file to generate the U-Boot boot script.
449 if BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
451 config BR2_TARGET_UBOOT_CUSTOM_DTS_PATH
452 string "Device Tree Source file paths"
454 Space-separated list of paths to device tree source files
455 that will be copied to arch/ARCH/dts/ before starting the
458 To use this device tree source file, the U-Boot configuration
459 file must refer to it.
463 endif # BR2_TARGET_UBOOT