xref: /openbmc/u-boot/Kconfig (revision 15a5c72ca4fc4f1df04ac3ea89c0ba4e1cd48ab4)
1 51631259SMasahiro Yamada#
2 51631259SMasahiro Yamada# For a description of the syntax of this configuration file,
3 59d7c34bSRobert P. J. Day# see the file Documentation/kbuild/kconfig-language.txt in the
4 59d7c34bSRobert P. J. Day# Linux kernel source tree.
5 51631259SMasahiro Yamada#
6 51631259SMasahiro Yamadamainmenu "U-Boot $UBOOTVERSION Configuration"
7 51631259SMasahiro Yamada
8 51631259SMasahiro Yamadaconfig UBOOTVERSION
9 51631259SMasahiro Yamada	string
10 51631259SMasahiro Yamada	option env="UBOOTVERSION"
11 51631259SMasahiro Yamada
12 66afaef2SSimon Glass# Allow defaults in arch-specific code to override any given here
13 66afaef2SSimon Glasssource "arch/Kconfig"
14 66afaef2SSimon Glass
15 51631259SMasahiro Yamadamenu "General setup"
16 51631259SMasahiro Yamada
17 4c7a2110SHeinrich Schuchardtconfig BROKEN
18 4c7a2110SHeinrich Schuchardt	bool
19 4c7a2110SHeinrich Schuchardt	help
20 4c7a2110SHeinrich Schuchardt	  This option cannot be enabled. It is used as dependency
21 4c7a2110SHeinrich Schuchardt	  for broken and incomplete features.
22 4c7a2110SHeinrich Schuchardt
23 e91c3c33SMasahiro Yamadaconfig LOCALVERSION
24 e91c3c33SMasahiro Yamada	string "Local version - append to U-Boot release"
25 e91c3c33SMasahiro Yamada	help
26 e91c3c33SMasahiro Yamada	  Append an extra string to the end of your U-Boot version.
27 59d7c34bSRobert P. J. Day	  This will show up in your boot log, for example.
28 e91c3c33SMasahiro Yamada	  The string you set here will be appended after the contents of
29 e91c3c33SMasahiro Yamada	  any files with a filename matching localversion* in your
30 e91c3c33SMasahiro Yamada	  object and source tree, in that order.  Your total string can
31 e91c3c33SMasahiro Yamada	  be a maximum of 64 characters.
32 e91c3c33SMasahiro Yamada
33 e91c3c33SMasahiro Yamadaconfig LOCALVERSION_AUTO
34 e91c3c33SMasahiro Yamada	bool "Automatically append version information to the version string"
35 e91c3c33SMasahiro Yamada	default y
36 e91c3c33SMasahiro Yamada	help
37 e91c3c33SMasahiro Yamada	  This will try to automatically determine if the current tree is a
38 59d7c34bSRobert P. J. Day	  release tree by looking for Git tags that belong to the current
39 e91c3c33SMasahiro Yamada	  top of tree revision.
40 e91c3c33SMasahiro Yamada
41 e91c3c33SMasahiro Yamada	  A string of the format -gxxxxxxxx will be added to the localversion
42 59d7c34bSRobert P. J. Day	  if a Git-based tree is found.  The string generated by this will be
43 e91c3c33SMasahiro Yamada	  appended after any matching localversion* files, and after the value
44 e91c3c33SMasahiro Yamada	  set in CONFIG_LOCALVERSION.
45 e91c3c33SMasahiro Yamada
46 e91c3c33SMasahiro Yamada	  (The actual string used here is the first eight characters produced
47 e91c3c33SMasahiro Yamada	  by running the command:
48 e91c3c33SMasahiro Yamada
49 e91c3c33SMasahiro Yamada	    $ git rev-parse --verify HEAD
50 e91c3c33SMasahiro Yamada
51 e91c3c33SMasahiro Yamada	  which is done within the script "scripts/setlocalversion".)
52 e91c3c33SMasahiro Yamada
53 4a8ed8e2SMasahiro Yamadaconfig CC_OPTIMIZE_FOR_SIZE
54 4a8ed8e2SMasahiro Yamada	bool "Optimize for size"
55 4a8ed8e2SMasahiro Yamada	default y
56 4a8ed8e2SMasahiro Yamada	help
57 4a8ed8e2SMasahiro Yamada	  Enabling this option will pass "-Os" instead of "-O2" to gcc
58 4a8ed8e2SMasahiro Yamada	  resulting in a smaller U-Boot image.
59 4a8ed8e2SMasahiro Yamada
60 4a8ed8e2SMasahiro Yamada	  This option is enabled by default for U-Boot.
61 4a8ed8e2SMasahiro Yamada
62 52ff8020SChristian Gmeinerconfig CC_COVERAGE
63 52ff8020SChristian Gmeiner	bool "Enable code coverage analysis"
64 52ff8020SChristian Gmeiner	depends on SANDBOX
65 52ff8020SChristian Gmeiner	help
66 52ff8020SChristian Gmeiner	  Enabling this option will pass "--coverage" to gcc to compile
67 52ff8020SChristian Gmeiner	  and link code instrumented for coverage analysis.
68 52ff8020SChristian Gmeiner
69 9f823615SHans de Goedeconfig DISTRO_DEFAULTS
70 9f823615SHans de Goede	bool "Select defaults suitable for booting general purpose Linux distributions"
71 58008cbaSMichal Simek	select AUTO_COMPLETE
72 58008cbaSMichal Simek	select CMDLINE_EDITING
73 26959271SMasahiro Yamada	select CMD_BOOTI if ARM64
74 58008cbaSMichal Simek	select CMD_BOOTZ if ARM && !ARM64
75 ba628855SJoe Hershberger	select CMD_DHCP if CMD_NET
76 c4f66832SMasahiro Yamada	select CMD_ENV_EXISTS
77 9f823615SHans de Goede	select CMD_EXT2
78 9f823615SHans de Goede	select CMD_EXT4
79 9f823615SHans de Goede	select CMD_FAT
80 9f823615SHans de Goede	select CMD_FS_GENERIC
81 fa2c1467STom Rini	select CMD_PART if PARTITIONS
82 58008cbaSMichal Simek	select CMD_PING if CMD_NET
83 58008cbaSMichal Simek	select CMD_PXE if NET
84 d021e942SAdam Ford	select ENV_VARS_UBOOT_CONFIG
85 58008cbaSMichal Simek	select HUSH_PARSER
86 58008cbaSMichal Simek	select SUPPORT_RAW_INITRD
87 58008cbaSMichal Simek	select SYS_LONGHELP
88 58008cbaSMichal Simek	imply CMD_MII if NET
89 4aa74926SAlexander Graf	imply USB_STORAGE
90 58008cbaSMichal Simek	imply USE_BOOTCOMMAND
91 9f823615SHans de Goede	help
92 9f823615SHans de Goede	  Select this to enable various options and commands which are suitable
93 9f823615SHans de Goede	  for building u-boot for booting general purpose Linux distributions.
94 9f823615SHans de Goede
95 d021e942SAdam Fordconfig ENV_VARS_UBOOT_CONFIG
96 d021e942SAdam Ford	bool "Add arch, board, vendor and soc variables to default environment"
97 d021e942SAdam Ford	help
98 d021e942SAdam Ford	  Define this in order to add variables describing the
99 d021e942SAdam Ford	  U-Boot build configuration to the default environment.
100 d021e942SAdam Ford	  These will be named arch, cpu, board, vendor, and soc.
101 d021e942SAdam Ford	  Enabling this option will cause the following to be defined:
102 d021e942SAdam Ford	  - CONFIG_SYS_ARCH
103 d021e942SAdam Ford	  - CONFIG_SYS_CPU
104 d021e942SAdam Ford	  - CONFIG_SYS_BOARD
105 d021e942SAdam Ford	  - CONFIG_SYS_VENDOR
106 d021e942SAdam Ford	  - CONFIG_SYS_SOC
107 d021e942SAdam Ford
108 999a772dSRamon Friedconfig NR_DRAM_BANKS
109 999a772dSRamon Fried	int "Number of DRAM banks"
110 999a772dSRamon Fried	default 4
111 999a772dSRamon Fried	help
112 999a772dSRamon Fried	  This defines the number of DRAM banks.
113 999a772dSRamon Fried
114 405fc830SDerald D. Woodsconfig SYS_BOOT_GET_CMDLINE
115 405fc830SDerald D. Woods	bool "Enable kernel command line setup"
116 405fc830SDerald D. Woods	help
117 405fc830SDerald D. Woods	  Enables allocating and saving kernel cmdline in space between
118 405fc830SDerald D. Woods	  "bootm_low" and "bootm_low" + BOOTMAPSZ.
119 405fc830SDerald D. Woods
120 405fc830SDerald D. Woodsconfig SYS_BOOT_GET_KBD
121 405fc830SDerald D. Woods	bool "Enable kernel board information setup"
122 405fc830SDerald D. Woods	help
123 405fc830SDerald D. Woods	  Enables allocating and saving a kernel copy of the bd_info in
124 405fc830SDerald D. Woods	  space between "bootm_low" and "bootm_low" + BOOTMAPSZ.
125 405fc830SDerald D. Woods
126 b724bd7dSSimon Glassconfig SYS_MALLOC_F
127 b724bd7dSSimon Glass	bool "Enable malloc() pool before relocation"
128 326a6823SMasahiro Yamada	default y if DM
129 *15a5c72cSSimon Glass
130 b724bd7dSSimon Glass	help
131 59d7c34bSRobert P. J. Day	  Before relocation, memory is very limited on many platforms. Still,
132 b724bd7dSSimon Glass	  we can provide a small malloc() pool if needed. Driver model in
133 b724bd7dSSimon Glass	  particular needs this to operate, so that it can allocate the
134 b724bd7dSSimon Glass	  initial serial device and any others that are needed.
135 b724bd7dSSimon Glass
136 b724bd7dSSimon Glassconfig SYS_MALLOC_F_LEN
137 b724bd7dSSimon Glass	hex "Size of malloc() pool before relocation"
138 b724bd7dSSimon Glass	depends on SYS_MALLOC_F
139 90e407aeSSjoerd Simons	default 0x1000 if AM33XX
140 *15a5c72cSSimon Glass	default 0x2800 if SANDBOX
141 b724bd7dSSimon Glass	default 0x400
142 b724bd7dSSimon Glass	help
143 59d7c34bSRobert P. J. Day	  Before relocation, memory is very limited on many platforms. Still,
144 b724bd7dSSimon Glass	  we can provide a small malloc() pool if needed. Driver model in
145 b724bd7dSSimon Glass	  particular needs this to operate, so that it can allocate the
146 b724bd7dSSimon Glass	  initial serial device and any others that are needed.
147 b724bd7dSSimon Glass
148 01aa5b8fSSiva Durga Prasad Paladuguconfig SYS_MALLOC_LEN
149 01aa5b8fSSiva Durga Prasad Paladugu	hex "Define memory for Dynamic allocation"
150 ec48b6c9SMichal Simek	depends on ARCH_ZYNQ || ARCH_VERSAL
151 01aa5b8fSSiva Durga Prasad Paladugu	help
152 01aa5b8fSSiva Durga Prasad Paladugu	  This defines memory to be allocated for Dynamic allocation
153 01aa5b8fSSiva Durga Prasad Paladugu	  TODO: Use for other architectures
154 01aa5b8fSSiva Durga Prasad Paladugu
155 f1896c45SAndy Yanconfig SPL_SYS_MALLOC_F_LEN
156 ae2cee2eSPhilipp Tomsich	hex "Size of malloc() pool in SPL before relocation"
157 ae2cee2eSPhilipp Tomsich	depends on SYS_MALLOC_F
158 ae2cee2eSPhilipp Tomsich	default SYS_MALLOC_F_LEN
159 ae2cee2eSPhilipp Tomsich	help
160 ae2cee2eSPhilipp Tomsich	  Before relocation, memory is very limited on many platforms. Still,
161 ae2cee2eSPhilipp Tomsich	  we can provide a small malloc() pool if needed. Driver model in
162 ae2cee2eSPhilipp Tomsich	  particular needs this to operate, so that it can allocate the
163 ae2cee2eSPhilipp Tomsich	  initial serial device and any others that are needed.
164 ae2cee2eSPhilipp Tomsich
165 ae2cee2eSPhilipp Tomsichconfig TPL_SYS_MALLOC_F_LEN
166 ae2cee2eSPhilipp Tomsich	hex "Size of malloc() pool in TPL before relocation"
167 f1896c45SAndy Yan	depends on SYS_MALLOC_F
168 f1896c45SAndy Yan	default SYS_MALLOC_F_LEN
169 f1896c45SAndy Yan	help
170 f1896c45SAndy Yan	  Before relocation, memory is very limited on many platforms. Still,
171 f1896c45SAndy Yan	  we can provide a small malloc() pool if needed. Driver model in
172 f1896c45SAndy Yan	  particular needs this to operate, so that it can allocate the
173 f1896c45SAndy Yan	  initial serial device and any others that are needed.
174 f1896c45SAndy Yan
175 1bf0979fSTom Rinimenuconfig EXPERT
176 1bf0979fSTom Rini	bool "Configure standard U-Boot features (expert users)"
177 0aa8a4adSPrzemyslaw Marczak	default y
178 1bf0979fSTom Rini	help
179 1bf0979fSTom Rini	  This option allows certain base U-Boot options and settings
180 1bf0979fSTom Rini	  to be disabled or tweaked. This is for specialized
181 1bf0979fSTom Rini	  environments which can tolerate a "non-standard" U-Boot.
182 59d7c34bSRobert P. J. Day	  Use this only if you really know what you are doing.
183 1bf0979fSTom Rini
184 0aa8a4adSPrzemyslaw Marczakif EXPERT
185 0aa8a4adSPrzemyslaw Marczak	config SYS_MALLOC_CLEAR_ON_INIT
186 0aa8a4adSPrzemyslaw Marczak	bool "Init with zeros the memory reserved for malloc (slow)"
187 0aa8a4adSPrzemyslaw Marczak	default y
188 0aa8a4adSPrzemyslaw Marczak	help
189 0aa8a4adSPrzemyslaw Marczak	  This setting is enabled by default. The reserved malloc
190 0aa8a4adSPrzemyslaw Marczak	  memory is initialized with zeros, so first malloc calls
191 0aa8a4adSPrzemyslaw Marczak	  will return the pointer to the zeroed memory. But this
192 0aa8a4adSPrzemyslaw Marczak	  slows the boot time.
193 0aa8a4adSPrzemyslaw Marczak
194 0aa8a4adSPrzemyslaw Marczak	  It is recommended to disable it, when CONFIG_SYS_MALLOC_LEN
195 0aa8a4adSPrzemyslaw Marczak	  value, has more than few MiB, e.g. when uses bzip2 or bmp logo.
196 0aa8a4adSPrzemyslaw Marczak	  Then the boot time can be significantly reduced.
197 0aa8a4adSPrzemyslaw Marczak	  Warning:
198 0aa8a4adSPrzemyslaw Marczak	  When disabling this, please check if malloc calls, maybe
199 59d7c34bSRobert P. J. Day	  should be replaced by calloc - if one expects zeroed memory.
200 022885cbSSimon Glass
201 022885cbSSimon Glassconfig TOOLS_DEBUG
202 022885cbSSimon Glass	bool "Enable debug information for tools"
203 022885cbSSimon Glass	help
204 022885cbSSimon Glass	  Enable generation of debug information for tools such as mkimage.
205 022885cbSSimon Glass	  This can be used for debugging purposes. With debug information
206 022885cbSSimon Glass	  it is possible to set breakpoints on particular lines, single-step
207 022885cbSSimon Glass	  debug through the source code, etc.
208 022885cbSSimon Glass
209 266aa86bSRobert P. J. Dayendif # EXPERT
210 bb6b142fSMasahiro Yamada
211 bb6b142fSMasahiro Yamadaconfig PHYS_64BIT
212 bb6b142fSMasahiro Yamada	bool "64bit physical address support"
213 bb6b142fSMasahiro Yamada	help
214 bb6b142fSMasahiro Yamada	  Say Y here to support 64bit physical memory address.
215 bb6b142fSMasahiro Yamada	  This can be used not only for 64bit SoCs, but also for
216 bb6b142fSMasahiro Yamada	  large physical address extention on 32bit SoCs.
217 bb6b142fSMasahiro Yamada
218 871aa41dSHeinrich Schuchardtconfig BUILD_ROM
219 871aa41dSHeinrich Schuchardt	bool "Build U-Boot as BIOS replacement"
220 871aa41dSHeinrich Schuchardt	depends on X86
221 871aa41dSHeinrich Schuchardt	help
222 871aa41dSHeinrich Schuchardt	  This option allows to build a ROM version of U-Boot.
223 871aa41dSHeinrich Schuchardt	  The build process generally requires several binary blobs
224 871aa41dSHeinrich Schuchardt	  which are not shipped in the U-Boot source tree.
225 871aa41dSHeinrich Schuchardt	  Please, see doc/README.x86 for details.
226 871aa41dSHeinrich Schuchardt
227 40ad4c4bSMasahiro Yamadaendmenu		# General setup
228 40ad4c4bSMasahiro Yamada
229 e91c3c33SMasahiro Yamadamenu "Boot images"
230 e91c3c33SMasahiro Yamada
231 48f6232eSTom Riniconfig ANDROID_BOOT_IMAGE
232 48f6232eSTom Rini	bool "Enable support for Android Boot Images"
233 48f6232eSTom Rini	default y if FASTBOOT
234 48f6232eSTom Rini	help
235 48f6232eSTom Rini	  This enables support for booting images which use the Android
236 48f6232eSTom Rini	  image format header.
237 48f6232eSTom Rini
238 b6cf4439SMasahiro Yamadaconfig FIT
239 b6cf4439SMasahiro Yamada	bool "Support Flattened Image Tree"
240 aeb9c53cSAndre Przywara	select MD5
241 089df18bSTom Rini	select SHA1
242 b6cf4439SMasahiro Yamada	help
243 266aa86bSRobert P. J. Day	  This option allows you to boot the new uImage structure,
244 b6cf4439SMasahiro Yamada	  Flattened Image Tree.  FIT is formally a FDT, which can include
245 b6cf4439SMasahiro Yamada	  images of various types (kernel, FDT blob, ramdisk, etc.)
246 b6cf4439SMasahiro Yamada	  in a single blob.  To boot this new uImage structure,
247 1f9ac4a4SIgor Grinberg	  pass the address of the blob to the "bootm" command.
248 73223f0eSSimon Glass	  FIT is very flexible, supporting compression, multiple images,
249 73223f0eSSimon Glass	  multiple configurations, verification through hashing and also
250 266aa86bSRobert P. J. Day	  verified boot (secure boot using RSA).
251 b6cf4439SMasahiro Yamada
252 266aa86bSRobert P. J. Dayif FIT
253 b6cf4439SMasahiro Yamada
254 0db7f685STom Riniconfig FIT_ENABLE_SHA256_SUPPORT
255 0db7f685STom Rini	bool "Support SHA256 checksum of FIT image contents"
256 0db7f685STom Rini	default y
257 58008cbaSMichal Simek	select SHA256
258 0db7f685STom Rini	help
259 0db7f685STom Rini	  Enable this to support SHA256 checksum of FIT image contents. A
260 0db7f685STom Rini	  SHA256 checksum is a 256-bit (32-byte) hash value used to check that
261 0db7f685STom Rini	  the image contents have not been corrupted. SHA256 is recommended
262 0db7f685STom Rini	  for use in secure applications since (as at 2016) there is no known
263 0db7f685STom Rini	  feasible attack that could produce a 'collision' with differing
264 0db7f685STom Rini	  input data. Use this for the highest security. Note that only the
265 0db7f685STom Rini	  SHA256 variant is supported: SHA512 and others are not currently
266 0db7f685STom Rini	  supported in U-Boot.
267 0db7f685STom Rini
268 b6cf4439SMasahiro Yamadaconfig FIT_SIGNATURE
269 c4beb22fSRuchika Gupta	bool "Enable signature verification of FIT uImages"
270 9009798dSChris Kuethe	depends on DM
271 535adee8SKelvin Cheung	select HASH
272 58008cbaSMichal Simek	select RSA
273 b6cf4439SMasahiro Yamada	help
274 b6cf4439SMasahiro Yamada	  This option enables signature verification of FIT uImages,
275 94e3c8c4Sgaurav rana	  using a hash signed and verified using RSA. If
276 94e3c8c4Sgaurav rana	  CONFIG_SHA_PROG_HW_ACCEL is defined, i.e support for progressive
277 266aa86bSRobert P. J. Day	  hashing is available using hardware, then the RSA library will use
278 73223f0eSSimon Glass	  it. See doc/uImage.FIT/signature.txt for more details.
279 73223f0eSSimon Glass
280 73223f0eSSimon Glass	  WARNING: When relying on signed FIT images with a required signature
281 73223f0eSSimon Glass	  check the legacy image format is disabled by default, so that
282 73223f0eSSimon Glass	  unsigned images cannot be loaded. If a board needs the legacy image
283 73223f0eSSimon Glass	  format support in this case, enable it using
284 73223f0eSSimon Glass	  CONFIG_IMAGE_FORMAT_LEGACY.
285 73223f0eSSimon Glass
286 72239fc8STeddy Reedconfig FIT_SIGNATURE_MAX_SIZE
287 72239fc8STeddy Reed	hex "Max size of signed FIT structures"
288 72239fc8STeddy Reed	depends on FIT_SIGNATURE
289 72239fc8STeddy Reed	default 0x10000000
290 72239fc8STeddy Reed	help
291 72239fc8STeddy Reed	  This option sets a max size in bytes for verified FIT uImages.
292 72239fc8STeddy Reed	  A sane value of 256MB protects corrupted DTB structures from overlapping
293 72239fc8STeddy Reed	  device memory. Assure this size does not extend past expected storage
294 72239fc8STeddy Reed	  space.
295 72239fc8STeddy Reed
296 061daa0bSPhilippe Reynesconfig FIT_ENABLE_RSASSA_PSS_SUPPORT
297 061daa0bSPhilippe Reynes	bool "Support rsassa-pss signature scheme of FIT image contents"
298 061daa0bSPhilippe Reynes	depends on FIT_SIGNATURE
299 061daa0bSPhilippe Reynes	default n
300 061daa0bSPhilippe Reynes	help
301 061daa0bSPhilippe Reynes	  Enable this to support the pss padding algorithm as described
302 061daa0bSPhilippe Reynes	  in the rfc8017 (https://tools.ietf.org/html/rfc8017).
303 061daa0bSPhilippe Reynes
304 266aa86bSRobert P. J. Dayconfig FIT_VERBOSE
305 266aa86bSRobert P. J. Day	bool "Show verbose messages when FIT images fail"
306 266aa86bSRobert P. J. Day	help
307 266aa86bSRobert P. J. Day	  Generally a system will have valid FIT images so debug messages
308 266aa86bSRobert P. J. Day	  are a waste of code space. If you are debugging your images then
309 266aa86bSRobert P. J. Day	  you can enable this option to get more verbose information about
310 266aa86bSRobert P. J. Day	  failures.
311 51c14cd1STeddy Reed
312 73223f0eSSimon Glassconfig FIT_BEST_MATCH
313 73223f0eSSimon Glass	bool "Select the best match for the kernel device tree"
314 73223f0eSSimon Glass	help
315 73223f0eSSimon Glass	  When no configuration is explicitly selected, default to the
316 73223f0eSSimon Glass	  one whose fdt's compatibility field best matches that of
317 73223f0eSSimon Glass	  U-Boot itself. A match is considered "best" if it matches the
318 73223f0eSSimon Glass	  most specific compatibility entry of U-Boot's fdt's root node.
319 73223f0eSSimon Glass	  The order of entries in the configuration's fdt is ignored.
320 73223f0eSSimon Glass
321 266aa86bSRobert P. J. Dayconfig FIT_IMAGE_POST_PROCESS
322 266aa86bSRobert P. J. Day	bool "Enable post-processing of FIT artifacts after loading by U-Boot"
323 266aa86bSRobert P. J. Day	depends on TI_SECURE_DEVICE
324 73223f0eSSimon Glass	help
325 266aa86bSRobert P. J. Day	  Allows doing any sort of manipulation to blobs after they got extracted
326 266aa86bSRobert P. J. Day	  from FIT images like stripping off headers or modifying the size of the
327 266aa86bSRobert P. J. Day	  blob, verification, authentication, decryption etc. in a platform or
328 266aa86bSRobert P. J. Day	  board specific way. In order to use this feature a platform or board-
329 266aa86bSRobert P. J. Day	  specific implementation of board_fit_image_post_process() must be
330 266aa86bSRobert P. J. Day	  provided. Also, anything done during this post-processing step would
331 266aa86bSRobert P. J. Day	  need to be comprehended in how the images were prepared before being
332 266aa86bSRobert P. J. Day	  injected into the FIT creation (i.e. the blobs would have been pre-
333 266aa86bSRobert P. J. Day	  processed before being added to the FIT image).
334 266aa86bSRobert P. J. Day
335 71139113STom Riniif SPL
336 71139113STom Rini
337 266aa86bSRobert P. J. Dayconfig SPL_FIT
338 266aa86bSRobert P. J. Day	bool "Support Flattened Image Tree within SPL"
339 266aa86bSRobert P. J. Day	depends on SPL
340 85c07a5aSAndre Przywara	select SPL_OF_LIBFDT
341 266aa86bSRobert P. J. Day
342 b527b9c6SMarek Vasutconfig SPL_FIT_PRINT
343 b527b9c6SMarek Vasut	bool "Support FIT printing within SPL"
344 b527b9c6SMarek Vasut	depends on SPL_FIT
345 b527b9c6SMarek Vasut	help
346 b527b9c6SMarek Vasut	  Support printing the content of the fitImage in a verbose manner in SPL.
347 b527b9c6SMarek Vasut
348 266aa86bSRobert P. J. Dayconfig SPL_FIT_SIGNATURE
349 266aa86bSRobert P. J. Day	bool "Enable signature verification of FIT firmware within SPL"
350 266aa86bSRobert P. J. Day	depends on SPL_DM
351 85c07a5aSAndre Przywara	select SPL_FIT
352 266aa86bSRobert P. J. Day	select SPL_RSA
353 266aa86bSRobert P. J. Day
354 266aa86bSRobert P. J. Dayconfig SPL_LOAD_FIT
355 266aa86bSRobert P. J. Day	bool "Enable SPL loading U-Boot as a FIT"
356 85c07a5aSAndre Przywara	select SPL_FIT
357 266aa86bSRobert P. J. Day	help
358 266aa86bSRobert P. J. Day	  Normally with the SPL framework a legacy image is generated as part
359 266aa86bSRobert P. J. Day	  of the build. This contains U-Boot along with information as to
360 266aa86bSRobert P. J. Day	  where it should be loaded. This option instead enables generation
361 266aa86bSRobert P. J. Day	  of a FIT (Flat Image Tree) which provides more flexibility. In
362 266aa86bSRobert P. J. Day	  particular it can handle selecting from multiple device tree
363 266aa86bSRobert P. J. Day	  and passing the correct one to U-Boot.
364 266aa86bSRobert P. J. Day
365 8a9dc16eSMarek Vasutconfig SPL_LOAD_FIT_FULL
366 8a9dc16eSMarek Vasut	bool "Enable SPL loading U-Boot as a FIT"
367 8a9dc16eSMarek Vasut	select SPL_FIT
368 8a9dc16eSMarek Vasut	help
369 8a9dc16eSMarek Vasut	  Normally with the SPL framework a legacy image is generated as part
370 8a9dc16eSMarek Vasut	  of the build. This contains U-Boot along with information as to
371 8a9dc16eSMarek Vasut	  where it should be loaded. This option instead enables generation
372 8a9dc16eSMarek Vasut	  of a FIT (Flat Image Tree) which provides more flexibility. In
373 8a9dc16eSMarek Vasut	  particular it can handle selecting from multiple device tree
374 8a9dc16eSMarek Vasut	  and passing the correct one to U-Boot.
375 8a9dc16eSMarek Vasut
376 266aa86bSRobert P. J. Dayconfig SPL_FIT_IMAGE_POST_PROCESS
377 266aa86bSRobert P. J. Day	bool "Enable post-processing of FIT artifacts after loading by the SPL"
378 c12d8b7dSext-vasily.gurevich@vaisala.com	depends on SPL_LOAD_FIT
379 266aa86bSRobert P. J. Day	help
380 266aa86bSRobert P. J. Day	  Allows doing any sort of manipulation to blobs after they got extracted
381 266aa86bSRobert P. J. Day	  from the U-Boot FIT image like stripping off headers or modifying the
382 266aa86bSRobert P. J. Day	  size of the blob, verification, authentication, decryption etc. in a
383 266aa86bSRobert P. J. Day	  platform or board specific way. In order to use this feature a platform
384 266aa86bSRobert P. J. Day	  or board-specific implementation of board_fit_image_post_process() must
385 266aa86bSRobert P. J. Day	  be provided. Also, anything done during this post-processing step would
386 266aa86bSRobert P. J. Day	  need to be comprehended in how the images were prepared before being
387 266aa86bSRobert P. J. Day	  injected into the FIT creation (i.e. the blobs would have been pre-
388 266aa86bSRobert P. J. Day	  processed before being added to the FIT image).
389 266aa86bSRobert P. J. Day
390 1a12fdc4SAndre Przywaraconfig SPL_FIT_SOURCE
391 1a12fdc4SAndre Przywara	string ".its source file for U-Boot FIT image"
392 1a12fdc4SAndre Przywara	depends on SPL_FIT
393 1a12fdc4SAndre Przywara	help
394 1a12fdc4SAndre Przywara	  Specifies a (platform specific) FIT source file to generate the
395 1a12fdc4SAndre Przywara	  U-Boot FIT image. This could specify further image to load and/or
396 1a12fdc4SAndre Przywara	  execute.
397 1a12fdc4SAndre Przywara
398 1a12fdc4SAndre Przywaraconfig SPL_FIT_GENERATOR
399 1a12fdc4SAndre Przywara	string ".its file generator script for U-Boot FIT image"
400 1a12fdc4SAndre Przywara	depends on SPL_FIT
401 d29adf8eSAndre Przywara	default "board/sunxi/mksunxi_fit_atf.sh" if SPL_LOAD_FIT && ARCH_SUNXI
402 1a12fdc4SAndre Przywara	help
403 1a12fdc4SAndre Przywara	  Specifies a (platform specific) script file to generate the FIT
404 1a12fdc4SAndre Przywara	  source file used to build the U-Boot FIT image file. This gets
405 1a12fdc4SAndre Przywara	  passed a list of supported device tree file stub names to
406 1a12fdc4SAndre Przywara	  include in the generated image.
407 1a12fdc4SAndre Przywara
408 71139113STom Riniendif # SPL
409 71139113STom Rini
410 266aa86bSRobert P. J. Dayendif # FIT
411 73223f0eSSimon Glass
412 002c3234SAlex Kiernanconfig IMAGE_FORMAT_LEGACY
413 002c3234SAlex Kiernan	bool "Enable support for the legacy image format"
414 002c3234SAlex Kiernan	default y if !FIT_SIGNATURE
415 002c3234SAlex Kiernan	help
416 002c3234SAlex Kiernan	  This option enables the legacy image format. It is enabled by
417 002c3234SAlex Kiernan	  default for backward compatibility, unless FIT_SIGNATURE is
418 002c3234SAlex Kiernan	  set where it is disabled so that unsigned images cannot be
419 002c3234SAlex Kiernan	  loaded. If a board needs the legacy image format support in this
420 002c3234SAlex Kiernan	  case, enable it here.
421 002c3234SAlex Kiernan
422 73223f0eSSimon Glassconfig OF_BOARD_SETUP
423 73223f0eSSimon Glass	bool "Set up board-specific details in device tree before boot"
424 73223f0eSSimon Glass	depends on OF_LIBFDT
425 73223f0eSSimon Glass	help
426 73223f0eSSimon Glass	  This causes U-Boot to call ft_board_setup() before booting into
427 73223f0eSSimon Glass	  the Operating System. This function can set up various
428 73223f0eSSimon Glass	  board-specific information in the device tree for use by the OS.
429 73223f0eSSimon Glass	  The device tree is then passed to the OS.
430 73223f0eSSimon Glass
431 73223f0eSSimon Glassconfig OF_SYSTEM_SETUP
432 73223f0eSSimon Glass	bool "Set up system-specific details in device tree before boot"
433 73223f0eSSimon Glass	depends on OF_LIBFDT
434 73223f0eSSimon Glass	help
435 73223f0eSSimon Glass	  This causes U-Boot to call ft_system_setup() before booting into
436 73223f0eSSimon Glass	  the Operating System. This function can set up various
437 73223f0eSSimon Glass	  system-specific information in the device tree for use by the OS.
438 73223f0eSSimon Glass	  The device tree is then passed to the OS.
439 73223f0eSSimon Glass
440 73223f0eSSimon Glassconfig OF_STDOUT_VIA_ALIAS
441 73223f0eSSimon Glass	bool "Update the device-tree stdout alias from U-Boot"
442 73223f0eSSimon Glass	depends on OF_LIBFDT
443 73223f0eSSimon Glass	help
444 73223f0eSSimon Glass	  This uses U-Boot's serial alias from the aliases node to update
445 73223f0eSSimon Glass	  the device tree passed to the OS. The "linux,stdout-path" property
446 73223f0eSSimon Glass	  in the chosen node is set to point to the correct serial node.
447 73223f0eSSimon Glass	  This option currently references CONFIG_CONS_INDEX, which is
448 73223f0eSSimon Glass	  incorrect when used with device tree as this option does not
449 73223f0eSSimon Glass	  exist / should not be used.
450 b6cf4439SMasahiro Yamada
451 51631259SMasahiro Yamadaconfig SYS_EXTRA_OPTIONS
452 51631259SMasahiro Yamada	string "Extra Options (DEPRECATED)"
453 51631259SMasahiro Yamada	help
454 51631259SMasahiro Yamada	  The old configuration infrastructure (= mkconfig + boards.cfg)
455 ed36323fSMasahiro Yamada	  provided the extra options field. If you have something like
456 51631259SMasahiro Yamada	  "HAS_BAR,BAZ=64", the optional options
457 51631259SMasahiro Yamada	    #define CONFIG_HAS
458 51631259SMasahiro Yamada	    #define CONFIG_BAZ	64
459 51631259SMasahiro Yamada	  will be defined in include/config.h.
460 51631259SMasahiro Yamada	  This option was prepared for the smooth migration from the old
461 51631259SMasahiro Yamada	  configuration to Kconfig. Since this option will be removed sometime,
462 51631259SMasahiro Yamada	  new boards should not use this option.
463 51631259SMasahiro Yamada
464 7f7563ceSMasahiro Yamadaconfig SYS_TEXT_BASE
465 278b90ceSTom Rini	depends on !NIOS2 && !XTENSA
466 484cce0dSBen Stoltz	depends on !EFI_APP
467 586bde93SLokesh Vutla	default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
468 341c0586SAndre Przywara	default 0x4a000000 if ARCH_SUNXI && !MACH_SUN9I && !MACH_SUN8I_V3S
469 341c0586SAndre Przywara	default 0x2a000000 if ARCH_SUNXI && MACH_SUN9I
470 341c0586SAndre Przywara	default 0x42e00000 if ARCH_SUNXI && MACH_SUN8I_V3S
471 7f7563ceSMasahiro Yamada	hex "Text Base"
472 7f7563ceSMasahiro Yamada	help
473 278b90ceSTom Rini	  The address in memory that U-Boot will be running from, initially.
474 7f7563ceSMasahiro Yamada
475 7e0ed13fSAdam Ford
476 eba3fbd6SAndreas Dannenberg
477 33d88183SAlexey Brodkinconfig SYS_CLK_FREQ
478 e71b422bSIain Paton	depends on ARC || ARCH_SUNXI
479 33d88183SAlexey Brodkin	int "CPU clock frequency"
480 33d88183SAlexey Brodkin	help
481 33d88183SAlexey Brodkin	  TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture
482 33d88183SAlexey Brodkin
483 63c09417SMasahiro Yamadaconfig ARCH_FIXUP_FDT_MEMORY
484 63c09417SMasahiro Yamada	bool "Enable arch_fixup_memory_banks() call"
485 e2f88dfdSMichal Simek	default y
486 e2f88dfdSMichal Simek	help
487 e2f88dfdSMichal Simek	  Enable FDT memory map syncup before OS boot. This feature can be
488 e2f88dfdSMichal Simek	  used for booting OS with different memory setup where the part of
489 e2f88dfdSMichal Simek	  the memory location should be used for different purpose.
490 e2f88dfdSMichal Simek
491 e91c3c33SMasahiro Yamadaendmenu		# Boot images
492 51631259SMasahiro Yamada
493 4db98d3dSEmmanuel Vadotsource "api/Kconfig"
494 4db98d3dSEmmanuel Vadot
495 ed36323fSMasahiro Yamadasource "common/Kconfig"
496 ed36323fSMasahiro Yamada
497 72a8cf8dSSimon Glasssource "cmd/Kconfig"
498 72a8cf8dSSimon Glass
499 e274ef6bSPatrick Delaunaysource "disk/Kconfig"
500 e274ef6bSPatrick Delaunay
501 783e6a72SMasahiro Yamadasource "dts/Kconfig"
502 783e6a72SMasahiro Yamada
503 0649cd0dSSimon Glasssource "env/Kconfig"
504 0649cd0dSSimon Glass
505 ed36323fSMasahiro Yamadasource "net/Kconfig"
506 ed36323fSMasahiro Yamada
507 ed36323fSMasahiro Yamadasource "drivers/Kconfig"
508 ed36323fSMasahiro Yamada
509 ed36323fSMasahiro Yamadasource "fs/Kconfig"
510 ed36323fSMasahiro Yamada
511 ed36323fSMasahiro Yamadasource "lib/Kconfig"
512 1967982aSSimon Glass
513 1967982aSSimon Glasssource "test/Kconfig"
514