Commit | Line | Data |
---|---|---|
98af8799 SG |
1 | menu "Console" |
2 | ||
4880b026 TR |
3 | config MENU |
4 | bool | |
5 | help | |
6 | This is the library functionality to provide a text-based menu of | |
7 | choices for the user to make choices with. | |
8 | ||
9854a874 SG |
9 | config CONSOLE_RECORD |
10 | bool "Console recording" | |
11 | help | |
12 | This provides a way to record console output (and provide console | |
57247d9c | 13 | input) through circular buffers. This is mostly useful for testing. |
9854a874 SG |
14 | Console output is recorded even when the console is silent. |
15 | To enable console recording, call console_record_reset_enable() | |
16 | from your code. | |
17 | ||
4e81920b OP |
18 | config CONSOLE_RECORD_INIT_F |
19 | bool "Enable console recording during pre-relocation init" | |
20 | depends on CONSOLE_RECORD && SYS_MALLOC_F | |
21 | default y | |
22 | help | |
23 | This option enables console recording during pre-relocation init. | |
24 | CONFIG_SYS_MALLOC_F must be enabled to use this feature. | |
25 | ||
9854a874 SG |
26 | config CONSOLE_RECORD_OUT_SIZE |
27 | hex "Output buffer size" | |
28 | depends on CONSOLE_RECORD | |
29 | default 0x400 if CONSOLE_RECORD | |
30 | help | |
8af83787 TR |
31 | Set the size of the console recording output buffer. When this fills |
32 | up, no more data will be recorded until some is removed. The buffer | |
33 | is allocated immediately after the malloc() region is ready. | |
9854a874 | 34 | |
8ce465e4 SG |
35 | config CONSOLE_RECORD_OUT_SIZE_F |
36 | hex "Output buffer size before relocation" | |
37 | depends on CONSOLE_RECORD | |
38 | default 0x400 if CONSOLE_RECORD | |
39 | help | |
8af83787 TR |
40 | Set the size of the console recording output buffer before |
41 | relocation. When this fills up, no more data will be recorded until | |
42 | some is removed. The buffer is allocated immediately after the early | |
43 | malloc() region is ready. | |
8ce465e4 | 44 | |
9854a874 SG |
45 | config CONSOLE_RECORD_IN_SIZE |
46 | hex "Input buffer size" | |
47 | depends on CONSOLE_RECORD | |
48 | default 0x100 if CONSOLE_RECORD | |
49 | help | |
8af83787 | 50 | Set the size of the console recording input buffer. When this contains data, |
9854a874 SG |
51 | tstc() and getc() will use this in preference to real device input. |
52 | The buffer is allocated immediately after the malloc() region is | |
53 | ready. | |
4d25507f | 54 | |
83f6f608 CG |
55 | config DISABLE_CONSOLE |
56 | bool "Add functionality to disable console completely" | |
57 | help | |
58 | Disable console (in & out). | |
59 | ||
a4d88920 SDPP |
60 | config IDENT_STRING |
61 | string "Board specific string to be added to uboot version string" | |
62 | help | |
63 | This options adds the board specific name to u-boot version. | |
64 | ||
b44b3026 MY |
65 | config LOGLEVEL |
66 | int "loglevel" | |
6a3e65de | 67 | default 4 |
2aa69c9b | 68 | range 0 10 |
b44b3026 MY |
69 | help |
70 | All Messages with a loglevel smaller than the console loglevel will | |
71 | be compiled in. The loglevels are defined as follows: | |
72 | ||
6fc7e938 SG |
73 | 0 - emergency |
74 | 1 - alert | |
75 | 2 - critical | |
76 | 3 - error | |
77 | 4 - warning | |
78 | 5 - note | |
79 | 6 - info | |
80 | 7 - debug | |
81 | 8 - debug content | |
82 | 9 - debug hardware I/O | |
b44b3026 MY |
83 | |
84 | config SPL_LOGLEVEL | |
85 | int | |
b340199f | 86 | depends on SPL |
b44b3026 MY |
87 | default LOGLEVEL |
88 | ||
4d8d3056 SG |
89 | config TPL_LOGLEVEL |
90 | int | |
8bea4bf7 | 91 | depends on TPL |
4d8d3056 SG |
92 | default LOGLEVEL |
93 | ||
747093dd SG |
94 | config VPL_LOGLEVEL |
95 | int "loglevel for VPL" | |
13ce351b | 96 | depends on VPL |
747093dd SG |
97 | default LOGLEVEL |
98 | help | |
99 | All Messages with a loglevel smaller than the console loglevel will | |
100 | be compiled in to VPL. See LOGLEVEL for a list of available log | |
101 | levels. Setting this to a value above 4 may increase the code size | |
102 | significantly. | |
103 | ||
98af8799 SG |
104 | config SILENT_CONSOLE |
105 | bool "Support a silent console" | |
106 | help | |
107 | This option allows the console to be silenced, meaning that no | |
108 | output will appear on the console devices. This is controlled by | |
f7597730 | 109 | setting the environment variable 'silent' to a non-empty value. |
98af8799 SG |
110 | Note this also silences the console when booting Linux. |
111 | ||
112 | When the console is set up, the variable is checked, and the | |
113 | GD_FLG_SILENT flag is set. Changing the environment variable later | |
114 | will update the flag. | |
115 | ||
6e55b114 SG |
116 | config SPL_SILENT_CONSOLE |
117 | bool "Use a silent console in SPL" | |
118 | default y if SILENT_CONSOLE && !SANDBOX | |
119 | help | |
120 | This selects a silent console in SPL. When enabled it drops some | |
121 | output messages. The GD_FLG_SILENT flag is not used in SPL so there | |
122 | is no run-time control of console messages in SPL. | |
123 | ||
124 | Future work may allow the SPL console to be silenced completely using | |
125 | this option. | |
126 | ||
127 | config TPL_SILENT_CONSOLE | |
128 | bool "Use a silent console in TPL" | |
129 | default y if SILENT_CONSOLE && !SANDBOX | |
130 | help | |
131 | This selects a silent console in TPL. When enabled it drops some | |
132 | output messages. The GD_FLG_SILENT flag is not used in TPL so there | |
133 | is no run-time control of console messages in TPL. | |
134 | ||
135 | Future work may allow the TPL console to be silenced completely using | |
136 | this option. | |
137 | ||
98af8799 SG |
138 | config SILENT_U_BOOT_ONLY |
139 | bool "Only silence the U-Boot console" | |
140 | depends on SILENT_CONSOLE | |
141 | help | |
142 | Normally when the U-Boot console is silenced, Linux's console is | |
143 | also silenced (assuming the board boots into Linux). This option | |
144 | allows the linux console to operate normally, even if U-Boot's | |
145 | is silenced. | |
146 | ||
147 | config SILENT_CONSOLE_UPDATE_ON_SET | |
148 | bool "Changes to the 'silent' environment variable update immediately" | |
149 | depends on SILENT_CONSOLE | |
150 | default y if SILENT_CONSOLE | |
151 | help | |
152 | When the 'silent' environment variable is changed, update the | |
153 | console silence flag immediately. This allows 'setenv' to be used | |
154 | to silence or un-silence the console. | |
155 | ||
156 | The effect is that any change to the variable will affect the | |
157 | GD_FLG_SILENT flag. | |
158 | ||
159 | config SILENT_CONSOLE_UPDATE_ON_RELOC | |
160 | bool "Allow flags to take effect on relocation" | |
161 | depends on SILENT_CONSOLE | |
162 | help | |
163 | In some cases the environment is not available until relocation | |
164 | (e.g. NAND). This option makes the value of the 'silent' | |
165 | environment variable take effect at relocation. | |
166 | ||
33965c7e HS |
167 | config SILENT_CONSOLE_UNTIL_ENV |
168 | bool "Keep console silent until environment is loaded" | |
169 | depends on SILENT_CONSOLE | |
170 | help | |
171 | This option makes sure U-Boot will never use the console unless the | |
172 | environment from flash does not contain the 'silent' variable. If | |
173 | set, the console is kept silent until after the environment was | |
174 | loaded. Use this in combination with PRE_CONSOLE_BUFFER to print out | |
175 | earlier messages after loading the environment when allowed. | |
176 | ||
8f925584 SG |
177 | config PRE_CONSOLE_BUFFER |
178 | bool "Buffer characters before the console is available" | |
179 | help | |
180 | Prior to the console being initialised (i.e. serial UART | |
181 | initialised etc) all console output is silently discarded. | |
182 | Defining CONFIG_PRE_CONSOLE_BUFFER will cause U-Boot to | |
183 | buffer any console messages prior to the console being | |
184 | initialised to a buffer. The buffer is a circular buffer, so | |
185 | if it overflows, earlier output is discarded. | |
186 | ||
187 | Note that this is not currently supported in SPL. It would be | |
188 | useful to be able to share the pre-console buffer with SPL. | |
189 | ||
190 | config PRE_CON_BUF_SZ | |
191 | int "Sets the size of the pre-console buffer" | |
192 | depends on PRE_CONSOLE_BUFFER | |
193 | default 4096 | |
194 | help | |
195 | The size of the pre-console buffer affects how much console output | |
196 | can be held before it overflows and starts discarding earlier | |
197 | output. Normally there is very little output at this early stage, | |
198 | unless debugging is enabled, so allow enough for ~10 lines of | |
199 | text. | |
200 | ||
201 | This is a useful feature if you are using a video console and | |
202 | want to see the full boot output on the console. Without this | |
203 | option only the post-relocation output will be displayed. | |
204 | ||
205 | config PRE_CON_BUF_ADDR | |
206 | hex "Address of the pre-console buffer" | |
207 | depends on PRE_CONSOLE_BUFFER | |
208 | default 0x2f000000 if ARCH_SUNXI && MACH_SUN9I | |
209 | default 0x4f000000 if ARCH_SUNXI && !MACH_SUN9I | |
38070170 | 210 | default 0x0f000000 if ROCKCHIP_RK3288 |
61853a7a | 211 | default 0x0f200000 if ROCKCHIP_RK3399 |
8f925584 SG |
212 | help |
213 | This sets the start address of the pre-console buffer. This must | |
214 | be in available memory and is accessed before relocation and | |
215 | possibly before DRAM is set up. Therefore choose an address | |
216 | carefully. | |
217 | ||
218 | We should consider removing this option and allocating the memory | |
219 | in board_init_f_init_reserve() instead. | |
220 | ||
974f4836 T |
221 | config CONSOLE_FLUSH_SUPPORT |
222 | bool "Enable console flush support" | |
223 | default y | |
224 | help | |
225 | This enables compilation of flush() function for console flush support. | |
226 | ||
35dc728a RV |
227 | config CONSOLE_FLUSH_ON_NEWLINE |
228 | bool "Flush console buffer on every newline character" | |
229 | depends on DM_SERIAL | |
230 | help | |
231 | This makes the serial core code flush the console device | |
232 | whenever a newline (\n) character has been emitted. This can | |
233 | be especially useful when "printf debugging", as otherwise | |
234 | lots of output could still be in the UART's FIFO by the time | |
235 | one hits the code which causes the CPU to hang or reset. | |
236 | ||
ef26d603 SG |
237 | config CONSOLE_MUX |
238 | bool "Enable console multiplexing" | |
142276ce | 239 | default y if VIDEO || LCD |
ef26d603 SG |
240 | help |
241 | This allows multiple devices to be used for each console 'file'. | |
242 | For example, stdout can be set to go to serial and video. | |
243 | Similarly, stdin can be set to come from serial and keyboard. | |
244 | Input can be provided from either source. Console multiplexing | |
245 | adds a small amount of size to U-Boot. Changes to the environment | |
246 | variables stdout, stdin and stderr will take effect immediately. | |
247 | ||
248 | config SYS_CONSOLE_IS_IN_ENV | |
249 | bool "Select console devices from the environment" | |
250 | default y if CONSOLE_MUX | |
251 | help | |
252 | This allows multiple input/output devices to be set at boot time. | |
de99e776 AG |
253 | For example, if stdout is set to "serial,vidconsole" then output |
254 | will be sent to both the serial and video devices on boot. The | |
ef26d603 SG |
255 | environment variables can be updated after boot to change the |
256 | input/output devices. | |
257 | ||
84f2a5d0 SG |
258 | config SYS_CONSOLE_OVERWRITE_ROUTINE |
259 | bool "Allow board control over console overwriting" | |
260 | help | |
261 | If this is enabled, and the board-specific function | |
262 | overwrite_console() returns 1, the stdin, stderr and stdout are | |
263 | switched to the serial port, else the settings in the environment | |
264 | are used. If this is not enabled, the console will not be switched | |
265 | to serial. | |
266 | ||
3505bc55 SG |
267 | config SYS_CONSOLE_ENV_OVERWRITE |
268 | bool "Update environment variables during console init" | |
29f925d8 | 269 | depends on SYS_CONSOLE_IS_IN_ENV |
3505bc55 SG |
270 | help |
271 | The console environment variables (stdout, stdin, stderr) can be | |
272 | used to determine the correct console devices on start-up. This | |
273 | option writes the console devices to these variables on console | |
274 | start-up (after relocation). This causes the environment to be | |
275 | updated to match the console devices actually chosen. | |
276 | ||
f3f3efff SG |
277 | config SYS_CONSOLE_INFO_QUIET |
278 | bool "Don't display the console devices on boot" | |
279 | help | |
280 | Normally U-Boot displays the current settings for stdout, stdin | |
281 | and stderr on boot when the post-relocation console is set up. | |
f7597730 | 282 | Enable this option to suppress this output. It can be obtained by |
f3f3efff SG |
283 | calling stdio_print_current_devices() from board code. |
284 | ||
869588de SG |
285 | config SYS_STDIO_DEREGISTER |
286 | bool "Allow deregistering stdio devices" | |
287 | default y if USB_KEYBOARD | |
288 | help | |
289 | Generally there is no need to deregister stdio devices since they | |
290 | are never deactivated. But if a stdio device is used which can be | |
291 | removed (for example a USB keyboard) then this option can be | |
292 | enabled to ensure this is handled correctly. | |
293 | ||
7e15638d SG |
294 | config SPL_SYS_STDIO_DEREGISTER |
295 | bool "Allow deregistering stdio devices in SPL" | |
296 | help | |
297 | Generally there is no need to deregister stdio devices since they | |
298 | are never deactivated. But if a stdio device is used which can be | |
299 | removed (for example a USB keyboard) then this option can be | |
300 | enabled to ensure this is handled correctly. This is very rarely | |
301 | needed in SPL. | |
302 | ||
303 | config SYS_DEVICE_NULLDEV | |
304 | bool "Enable a null device for stdio" | |
3ca0609a | 305 | default y if SPLASH_SCREEN || SYS_STDIO_DEREGISTER |
7e15638d SG |
306 | help |
307 | Enable creation of a "nulldev" stdio device. This allows silent | |
308 | operation of the console by setting stdout to "nulldev". Enable | |
309 | this to use a serial console under board control. | |
310 | ||
98af8799 SG |
311 | endmenu |
312 | ||
e9c8d49d SG |
313 | menu "Logging" |
314 | ||
315 | config LOG | |
316 | bool "Enable logging support" | |
563273df | 317 | depends on DM |
e9c8d49d SG |
318 | help |
319 | This enables support for logging of status and debug messages. These | |
320 | can be displayed on the console, recorded in a memory buffer, or | |
321 | discarded if not needed. Logging supports various categories and | |
322 | levels of severity. | |
323 | ||
7b6c34cb | 324 | if LOG |
e9c8d49d SG |
325 | |
326 | config LOG_MAX_LEVEL | |
327 | int "Maximum log level to record" | |
7b6c34cb HS |
328 | default 6 |
329 | range 0 9 | |
e9c8d49d SG |
330 | help |
331 | This selects the maximum log level that will be recorded. Any value | |
332 | higher than this will be ignored. If possible log statements below | |
333 | this level will be discarded at build time. Levels: | |
334 | ||
6fc7e938 SG |
335 | 0 - emergency |
336 | 1 - alert | |
337 | 2 - critical | |
338 | 3 - error | |
339 | 4 - warning | |
340 | 5 - note | |
341 | 6 - info | |
e9c8d49d | 342 | 7 - debug |
6fc7e938 SG |
343 | 8 - debug content |
344 | 9 - debug hardware I/O | |
e9c8d49d | 345 | |
7b6c34cb HS |
346 | config LOG_DEFAULT_LEVEL |
347 | int "Default logging level to display" | |
348 | default LOG_MAX_LEVEL | |
349 | range 0 LOG_MAX_LEVEL | |
e9c8d49d | 350 | help |
7b6c34cb HS |
351 | This is the default logging level set when U-Boot starts. It can |
352 | be adjusted later using the 'log level' command. Note that setting | |
353 | this to a value above LOG_MAX_LEVEL will be ineffective, since the | |
354 | higher levels are not compiled in to U-Boot. | |
e9c8d49d | 355 | |
6fc7e938 SG |
356 | 0 - emergency |
357 | 1 - alert | |
358 | 2 - critical | |
359 | 3 - error | |
360 | 4 - warning | |
361 | 5 - note | |
362 | 6 - info | |
e9c8d49d | 363 | 7 - debug |
6fc7e938 SG |
364 | 8 - debug content |
365 | 9 - debug hardware I/O | |
e9c8d49d | 366 | |
7b6c34cb HS |
367 | config LOG_CONSOLE |
368 | bool "Allow log output to the console" | |
369 | default y | |
370 | help | |
371 | Enables a log driver which writes log records to the console. | |
372 | Generally the console is the serial port or LCD display. Only the | |
373 | log message is shown - other details like level, category, file and | |
374 | line number are omitted. | |
375 | ||
3c21d773 HS |
376 | config LOGF_FILE |
377 | bool "Show source file name in log messages by default" | |
378 | help | |
379 | Show the source file name in log messages by default. This value | |
380 | can be overridden using the 'log format' command. | |
381 | ||
382 | config LOGF_LINE | |
383 | bool "Show source line number in log messages by default" | |
384 | help | |
385 | Show the source line number in log messages by default. This value | |
386 | can be overridden using the 'log format' command. | |
387 | ||
388 | config LOGF_FUNC | |
389 | bool "Show function name in log messages by default" | |
390 | help | |
391 | Show the function name in log messages by default. This value can | |
392 | be overridden using the 'log format' command. | |
393 | ||
72fa1ad8 SG |
394 | config LOGF_FUNC_PAD |
395 | int "Number of characters to use for function" | |
396 | default 20 | |
397 | help | |
398 | Sets the field width to use when showing the function. Set this to | |
399 | a larger value if you have lots of long function names, and want | |
400 | things to line up. | |
401 | ||
7b6c34cb HS |
402 | config LOG_SYSLOG |
403 | bool "Log output to syslog server" | |
404 | depends on NET | |
405 | help | |
406 | Enables a log driver which broadcasts log records via UDP port 514 | |
407 | to syslog servers. | |
408 | ||
409 | config SPL_LOG | |
410 | bool "Enable logging support in SPL" | |
b340199f | 411 | depends on LOG && SPL |
7b6c34cb HS |
412 | help |
413 | This enables support for logging of status and debug messages. These | |
414 | can be displayed on the console, recorded in a memory buffer, or | |
415 | discarded if not needed. Logging supports various categories and | |
416 | levels of severity. | |
417 | ||
418 | if SPL_LOG | |
419 | ||
420 | config SPL_LOG_MAX_LEVEL | |
421 | int "Maximum log level to record in SPL" | |
422 | depends on SPL_LOG | |
4d8d3056 | 423 | default 3 |
7b6c34cb | 424 | range 0 9 |
4d8d3056 SG |
425 | help |
426 | This selects the maximum log level that will be recorded. Any value | |
427 | higher than this will be ignored. If possible log statements below | |
428 | this level will be discarded at build time. Levels: | |
429 | ||
6fc7e938 SG |
430 | 0 - emergency |
431 | 1 - alert | |
432 | 2 - critical | |
433 | 3 - error | |
434 | 4 - warning | |
435 | 5 - note | |
436 | 6 - info | |
4d8d3056 | 437 | 7 - debug |
6fc7e938 SG |
438 | 8 - debug content |
439 | 9 - debug hardware I/O | |
4d8d3056 | 440 | |
7b6c34cb HS |
441 | config SPL_LOG_CONSOLE |
442 | bool "Allow log output to the console in SPL" | |
443 | default y | |
f0b05c95 | 444 | help |
7b6c34cb HS |
445 | Enables a log driver which writes log records to the console. |
446 | Generally the console is the serial port or LCD display. Only the | |
447 | log message is shown - other details like level, category, file and | |
448 | line number are omitted. | |
449 | ||
450 | endif | |
451 | ||
452 | config TPL_LOG | |
453 | bool "Enable logging support in TPL" | |
8bea4bf7 | 454 | depends on LOG && TPL |
7b6c34cb HS |
455 | help |
456 | This enables support for logging of status and debug messages. These | |
457 | can be displayed on the console, recorded in a memory buffer, or | |
458 | discarded if not needed. Logging supports various categories and | |
459 | levels of severity. | |
460 | ||
461 | if TPL_LOG | |
462 | ||
463 | config TPL_LOG_MAX_LEVEL | |
464 | int "Maximum log level to record in TPL" | |
465 | depends on TPL_LOG | |
466 | default 3 | |
467 | range 0 9 | |
468 | help | |
469 | This selects the maximum log level that will be recorded. Any value | |
470 | higher than this will be ignored. If possible log statements below | |
471 | this level will be discarded at build time. Levels: | |
f0b05c95 SG |
472 | |
473 | 0 - emergency | |
474 | 1 - alert | |
475 | 2 - critical | |
476 | 3 - error | |
477 | 4 - warning | |
478 | 5 - note | |
479 | 6 - info | |
480 | 7 - debug | |
481 | 8 - debug content | |
482 | 9 - debug hardware I/O | |
483 | ||
4d8d3056 | 484 | config TPL_LOG_CONSOLE |
54b6abae | 485 | bool "Allow log output to the console in TPL" |
c6d47535 SG |
486 | default y |
487 | help | |
488 | Enables a log driver which writes log records to the console. | |
489 | Generally the console is the serial port or LCD display. Only the | |
490 | log message is shown - other details like level, category, file and | |
491 | line number are omitted. | |
492 | ||
7b6c34cb | 493 | endif |
ef11ed82 | 494 | |
747093dd SG |
495 | config VPL_LOG |
496 | bool "Enable logging support in VPL" | |
13ce351b | 497 | depends on LOG && VPL |
747093dd SG |
498 | help |
499 | This enables support for logging of status and debug messages. These | |
500 | can be displayed on the console, recorded in a memory buffer, or | |
501 | discarded if not needed. Logging supports various categories and | |
502 | levels of severity. | |
503 | ||
504 | if VPL_LOG | |
505 | ||
506 | config VPL_LOG_MAX_LEVEL | |
507 | int "Maximum log level to record in VPL" | |
508 | default 3 | |
509 | help | |
510 | This selects the maximum log level that will be recorded. Any value | |
511 | higher than this will be ignored. If possible log statements below | |
512 | this level will be discarded at build time. Levels: | |
513 | ||
514 | 0 - emergency | |
515 | 1 - alert | |
516 | 2 - critical | |
517 | 3 - error | |
518 | 4 - warning | |
519 | 5 - note | |
520 | 6 - info | |
521 | 7 - debug | |
522 | 8 - debug content | |
523 | 9 - debug hardware I/O | |
524 | ||
525 | config VPL_LOG_CONSOLE | |
526 | bool "Allow log output to the console in VPL" | |
527 | default y | |
528 | help | |
529 | Enables a log driver which writes log records to the console. | |
530 | Generally the console is the serial port or LCD display. Only the | |
531 | log message is shown - other details like level, category, file and | |
532 | line number are omitted. | |
533 | ||
534 | endif | |
535 | ||
3707c6ee SG |
536 | config LOG_ERROR_RETURN |
537 | bool "Log all functions which return an error" | |
3707c6ee SG |
538 | help |
539 | When an error is returned in U-Boot it is sometimes difficult to | |
f7597730 | 540 | figure out the root cause. For example, reading from SPI flash may |
3707c6ee SG |
541 | fail due to a problem in the SPI controller or due to the flash part |
542 | not returning the expected information. This option changes | |
543 | log_ret() to log any errors it sees. With this option disabled, | |
544 | log_ret() is a nop. | |
545 | ||
546 | You can add log_ret() to all functions which return an error code. | |
547 | ||
7b6c34cb HS |
548 | config LOG_TEST |
549 | bool "Provide a test for logging" | |
550 | depends on UNIT_TEST | |
551 | default y if SANDBOX | |
552 | help | |
553 | This enables a 'log test' command to test logging. It is normally | |
554 | executed from a pytest and simply outputs logging information | |
555 | in various different ways to test that the logging system works | |
556 | correctly with various settings. | |
557 | ||
558 | endif | |
559 | ||
e9c8d49d SG |
560 | endmenu |
561 | ||
7df39e5b SG |
562 | menu "Init options" |
563 | ||
a4c4ecf4 | 564 | config BOARD_TYPES |
e7348a7c | 565 | bool "Enable board_type entry in global data struct" |
a4c4ecf4 | 566 | help |
e7348a7c TR |
567 | If this option is enabled, a field will be added to the global |
568 | data struct to store an unsigned long value for the type of | |
569 | platform that we have determined we are on, at run-time. | |
a4c4ecf4 | 570 | |
19a97475 LV |
571 | config DISPLAY_CPUINFO |
572 | bool "Display information about the CPU during start up" | |
3bc6257e | 573 | default y if ARC || ARM || NIOS2 || X86 || XTENSA || M68K |
19a97475 LV |
574 | help |
575 | Display information about the CPU that U-Boot is running on | |
576 | when U-Boot starts up. The function print_cpuinfo() is called | |
577 | to do this. | |
578 | ||
84351792 | 579 | config DISPLAY_BOARDINFO |
78eba69d | 580 | bool "Display information about the board during early start up" |
f31414a0 | 581 | default y if ARC || ARM || M68K || MIPS || PPC || SANDBOX || XTENSA |
84351792 LV |
582 | help |
583 | Display information about the board that U-Boot is running on | |
584 | when U-Boot starts up. The board function checkboard() is called | |
585 | to do this. | |
586 | ||
78eba69d MS |
587 | config DISPLAY_BOARDINFO_LATE |
588 | bool "Display information about the board during late start up" | |
589 | help | |
590 | Display information about the board that U-Boot is running on after | |
591 | the relocation phase. The board function checkboard() is called to do | |
592 | this. | |
593 | ||
a421192f SG |
594 | menu "Start-up hooks" |
595 | ||
c2c69718 SR |
596 | config CYCLIC |
597 | bool "General-purpose cyclic execution mechanism" | |
598 | help | |
599 | This enables a general-purpose cyclic execution infrastructure, | |
600 | to allow "small" (run-time wise) functions to be executed at | |
601 | a specified frequency. Things like LED blinking or watchdog | |
602 | triggering are examples for such tasks. | |
603 | ||
604 | if CYCLIC | |
605 | ||
606 | config CYCLIC_MAX_CPU_TIME_US | |
607 | int "Sets the max allowed time for a cyclic function in us" | |
608 | default 1000 | |
609 | help | |
610 | The max allowed time for a cyclic function in us. If a functions | |
611 | takes longer than this duration this function will get unregistered | |
612 | automatically. | |
613 | ||
614 | endif # CYCLIC | |
615 | ||
87a5d1b5 | 616 | config EVENT |
448e2b63 | 617 | bool |
87a5d1b5 | 618 | help |
448e2b63 TR |
619 | This adds a framework for general purpose sending and processing of |
620 | events, to allow interested parties to be alerted when something | |
621 | happens. This is an attempt to stem the flow of weak functions, | |
622 | hooks, functions in board_f.c and board_r.c and the Kconfig options | |
623 | below. | |
87a5d1b5 SG |
624 | |
625 | See doc/develop/event.rst for more information. | |
626 | ||
627 | if EVENT | |
628 | ||
629 | config EVENT_DYNAMIC | |
448e2b63 | 630 | bool |
87a5d1b5 SG |
631 | help |
632 | Enable this to support adding an event spy at runtime, without adding | |
e65f6ba0 | 633 | it to the EVENT_SPY*() linker list. This increases code size slightly |
87a5d1b5 SG |
634 | but provides more flexibility for boards and subsystems that need it. |
635 | ||
636 | config EVENT_DEBUG | |
637 | bool "Enable event debugging assistance" | |
638 | default y if SANDBOX | |
639 | help | |
a7989a7c | 640 | Enable this to get useful features for seeing what is happening with |
87a5d1b5 SG |
641 | events, such as event-type names. This adds to the code size of |
642 | U-Boot so can be turned off for production builds. | |
643 | ||
3693ee98 SG |
644 | config SPL_EVENT |
645 | bool # General-purpose event-handling mechanism in SPL | |
646 | depends on SPL | |
647 | help | |
648 | This adds a framework for general purpose sending and processing of | |
649 | events, to allow interested parties to be alerted when something | |
650 | happens. This is an attempt to stem the flow of weak functions, | |
651 | hooks, functions in board_f.c and board_r.c and the Kconfig options | |
652 | below. | |
653 | ||
654 | See doc/develop/event.rst for more information. | |
655 | ||
656 | config SPL_EVENT_DYNAMIC | |
657 | bool | |
658 | depends on SPL_EVENT && EVENT_DYNAMIC | |
659 | help | |
660 | Enable this to support adding an event spy at runtime, without adding | |
e65f6ba0 | 661 | it to the EVENT_SPY*() linker list. This increases code size slightly |
3693ee98 SG |
662 | but provides more flexibility for boards and subsystems that need it. |
663 | ||
87a5d1b5 SG |
664 | endif # EVENT |
665 | ||
a421192f | 666 | config ARCH_EARLY_INIT_R |
b7be876c | 667 | bool |
a421192f SG |
668 | help |
669 | With this option U-Boot will call arch_early_init_r() soon after | |
670 | relocation. Driver model is running by this point, and the cache | |
671 | is on. Note that board_early_init_r() is called first, if | |
672 | enabled. This can be used to set up architecture-specific devices. | |
673 | ||
4585601a SG |
674 | config ARCH_MISC_INIT |
675 | bool "Call arch-specific init after relocation, when console is ready" | |
676 | help | |
677 | With this option U-Boot will call arch_misc_init() after | |
678 | relocation to allow miscellaneous arch-dependent initialisation | |
679 | to be performed. This function should be defined by the board | |
f7597730 | 680 | and will be called after the console is set up, after relocation. |
4585601a | 681 | |
a5d67547 SG |
682 | config BOARD_EARLY_INIT_F |
683 | bool "Call board-specific init before relocation" | |
a5d67547 SG |
684 | help |
685 | Some boards need to perform initialisation as soon as possible | |
686 | after boot. With this option, U-Boot calls board_early_init_f() | |
687 | after driver model is ready in the pre-relocation init sequence. | |
688 | Note that the normal serial console is not yet set up, but the | |
689 | debug UART will be available if enabled. | |
690 | ||
02ddc147 MS |
691 | config BOARD_EARLY_INIT_R |
692 | bool "Call board-specific init after relocation" | |
693 | help | |
694 | Some boards need to perform initialisation as directly after | |
695 | relocation. With this option, U-Boot calls board_early_init_r() | |
696 | in the post-relocation init sequence. | |
697 | ||
6d21dd31 TR |
698 | config BOARD_POSTCLK_INIT |
699 | bool "Call board_postclk_init" | |
700 | help | |
701 | Some boards need this to initialize select items, after clocks / | |
702 | timebase and before env / serial. | |
703 | ||
7e349e96 SG |
704 | config BOARD_LATE_INIT |
705 | bool "Execute Board late init" | |
706 | help | |
707 | Sometimes board require some initialization code that might | |
708 | require once the actual init done, example saving board specific env, | |
709 | boot-modes etc. which eventually done at late. | |
710 | ||
711 | So this config enable the late init code with the help of board_late_init | |
712 | function which should defined on respective boards. | |
713 | ||
15b4aed4 TR |
714 | config CLOCKS |
715 | bool "Call set_cpu_clk_info" | |
716 | depends on ARM | |
717 | ||
19b4040d TR |
718 | config HWCONFIG |
719 | bool "hwconfig infrastructure" | |
720 | default y if PPC || ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3 | |
721 | ||
ada261f1 TR |
722 | config SYS_FSL_CLK |
723 | bool | |
724 | depends on ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3 || \ | |
725 | (FSL_ESDHC_IMX && (ARCH_MX5 || ARCH_MX6 || ARCH_MX7)) | |
726 | default y | |
727 | help | |
728 | Enable to call get_clocks() in board_init_f() for platforms other | |
729 | than PowerPC or M68k. This is a legacy option. If not TARGET_BRPPT2 | |
730 | ||
2aeb22d9 MS |
731 | config LAST_STAGE_INIT |
732 | bool "Call board-specific as last setup step" | |
91caa3bb | 733 | select EVENT |
2aeb22d9 MS |
734 | help |
735 | Some boards need to perform initialisation immediately before control | |
736 | is passed to the command-line interpreter (e.g. for initializations | |
737 | that depend on later phases in the init sequence). With this option, | |
738 | U-Boot calls last_stage_init() before the command-line interpreter is | |
739 | started. | |
740 | ||
7e349e96 SG |
741 | config MISC_INIT_R |
742 | bool "Execute Misc Init" | |
743 | default y if ARCH_KEYSTONE || ARCH_SUNXI || MPC85xx | |
744 | default y if ARCH_OMAP2PLUS && !AM33XX | |
745 | help | |
746 | Enabling this option calls 'misc_init_r' function | |
747 | ||
167f699b TR |
748 | config SYS_MALLOC_BOOTPARAMS |
749 | bool "Malloc a buffer to use for bootparams" | |
750 | help | |
751 | In some cases rather than using a known location to store the | |
752 | bi_boot_params portion of gd we need to allocate it from our malloc pool. | |
753 | ||
754 | config SYS_BOOTPARAMS_LEN | |
755 | hex "Size of the bootparam buffer to malloc in bytes" | |
756 | depends on SYS_MALLOC_BOOTPARAMS | |
5a3b0742 | 757 | default 0x20000 if MIPS || RCAR_64 |
167f699b TR |
758 | default 0x10000 |
759 | ||
d7d40f61 TR |
760 | config ID_EEPROM |
761 | bool "Enable I2C connected system identifier EEPROM" | |
762 | help | |
763 | A number of different systems and vendors enable a vendor-specified | |
764 | EEPROM that contains various identifying features. | |
765 | ||
adf13bcc TR |
766 | config SYS_EEPROM_BUS_NUM |
767 | int "I2C bus number of the system identifier EEPROM" | |
768 | depends on ID_EEPROM | |
769 | default 0 | |
770 | ||
771 | choice | |
772 | prompt "EEPROM starts with 'CCID' or 'NXID'" | |
773 | depends on ID_EEPROM && (PPC || ARCH_LS1021A || FSL_LAYERSCAPE) | |
774 | default SYS_I2C_EEPROM_NXID | |
775 | help | |
776 | Specify if the Freescale / NXP ID EEPROM starts with 'CCID' or 'NXID' | |
777 | ASCII literal string. | |
778 | ||
779 | config SYS_I2C_EEPROM_CCID | |
780 | bool "EEPROM starts with 'CCID'" | |
781 | ||
782 | config SYS_I2C_EEPROM_NXID | |
783 | bool "EEPROM starts with 'NXID'" | |
784 | ||
785 | endchoice | |
786 | ||
98bf46f7 OP |
787 | config PCI_INIT_R |
788 | bool "Enumerate PCI buses during init" | |
789 | depends on PCI | |
98bf46f7 OP |
790 | help |
791 | With this option U-Boot will call pci_init() soon after relocation, | |
792 | which will enumerate PCI buses. This is needed, for instance, in the | |
793 | case of DM PCI-based Ethernet devices, which will not be detected | |
794 | without having the enumeration performed earlier. | |
795 | ||
29cc2b54 TR |
796 | config RESET_PHY_R |
797 | bool "Reset ethernet PHY during init" | |
798 | help | |
799 | Implement reset_phy() in board code if required to reset the ethernet | |
800 | PHY. | |
801 | ||
a421192f SG |
802 | endmenu |
803 | ||
38663136 SG |
804 | endmenu # Init options |
805 | ||
d70f919e SG |
806 | menu "Security support" |
807 | ||
808 | config HASH | |
809 | bool # "Support hashing API (SHA1, SHA256, etc.)" | |
810 | help | |
811 | This provides a way to hash data in memory using various supported | |
812 | algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h | |
813 | and the algorithms it supports are defined in common/hash.c. See | |
814 | also CMD_HASH for command-line access. | |
815 | ||
b0aa74a2 IO |
816 | config AVB_VERIFY |
817 | bool "Build Android Verified Boot operations" | |
e61b4151 | 818 | depends on LIBAVB |
9c3808de | 819 | depends on MMC |
87c814d4 | 820 | depends on PARTITION_UUIDS |
b0aa74a2 IO |
821 | help |
822 | This option enables compilation of bootloader-dependent operations, | |
823 | used by Android Verified Boot 2.0 library (libavb). Includes: | |
824 | * Helpers to process strings in order to build OS bootargs. | |
825 | * Helpers to access MMC, similar to drivers/fastboot/fb_mmc.c. | |
826 | * Helpers to alloc/init/free avb ops. | |
827 | ||
e61b4151 UA |
828 | if AVB_VERIFY |
829 | ||
830 | config AVB_BUF_ADDR | |
831 | hex "Define AVB buffer address" | |
832 | default FASTBOOT_BUF_ADDR | |
833 | help | |
834 | AVB requires a buffer for memory transactions. This variable defines the | |
835 | buffer address. | |
836 | ||
837 | config AVB_BUF_SIZE | |
838 | hex "Define AVB buffer SIZE" | |
839 | default FASTBOOT_BUF_SIZE | |
840 | help | |
841 | AVB requires a buffer for memory transactions. This variable defines the | |
842 | buffer size. | |
843 | ||
844 | endif # AVB_VERIFY | |
845 | ||
166363f2 JRO |
846 | config SCP03 |
847 | bool "Build SCP03 - Secure Channel Protocol O3 - controls" | |
848 | depends on OPTEE || SANDBOX | |
849 | depends on TEE | |
850 | help | |
851 | This option allows U-Boot to enable and or provision SCP03 on an OPTEE | |
852 | controlled Secured Element. | |
853 | ||
c0126bd8 SG |
854 | config SPL_HASH |
855 | bool # "Support hashing API (SHA1, SHA256, etc.)" | |
856 | help | |
857 | This provides a way to hash data in memory using various supported | |
858 | algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h | |
859 | and the algorithms it supports are defined in common/hash.c. See | |
860 | also CMD_HASH for command-line access. | |
861 | ||
862 | config TPL_HASH | |
863 | bool # "Support hashing API (SHA1, SHA256, etc.)" | |
864 | help | |
865 | This provides a way to hash data in memory using various supported | |
866 | algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h | |
867 | and the algorithms it supports are defined in common/hash.c. See | |
868 | also CMD_HASH for command-line access. | |
869 | ||
4e9bce12 JP |
870 | config STACKPROTECTOR |
871 | bool "Stack Protector buffer overflow detection" | |
4e9bce12 JP |
872 | help |
873 | Enable stack smash detection through compiler's stack-protector | |
874 | canary logic | |
875 | ||
876 | config SPL_STACKPROTECTOR | |
877 | bool "Stack Protector buffer overflow detection for SPL" | |
878 | depends on STACKPROTECTOR && SPL | |
4e9bce12 JP |
879 | |
880 | config TPL_STACKPROTECTOR | |
881 | bool "Stack Protector buffer overflow detection for TPL" | |
882 | depends on STACKPROTECTOR && TPL | |
4e9bce12 | 883 | |
6dca1d9a RV |
884 | config BOARD_RNG_SEED |
885 | bool "Provide /chosen/rng-seed property to the linux kernel" | |
886 | help | |
887 | Selecting this option requires the board to define a | |
888 | board_rng_seed() function, which should return a buffer | |
889 | which will be used to populate the /chosen/rng-seed property | |
890 | in the device tree for the OS being booted. | |
891 | ||
892 | It is up to the board code (and more generally the whole | |
893 | BSP) where and how to store (or generate) such a seed, how | |
894 | to ensure a given seed is only used once, how to create a | |
895 | new seed for use on subsequent boots, and whether or not the | |
896 | kernel should account any entropy from the given seed. | |
897 | ||
d70f919e SG |
898 | endmenu |
899 | ||
b254c529 MV |
900 | menu "Update support" |
901 | ||
3149e524 AT |
902 | config UPDATE_COMMON |
903 | bool | |
3149e524 AT |
904 | select DFU_WRITE_ALT |
905 | ||
b254c529 MV |
906 | config UPDATE_TFTP |
907 | bool "Auto-update using fitImage via TFTP" | |
2d1e2e57 | 908 | depends on FIT && OF_LIBFDT && !MTD_NOR_FLASH |
3149e524 | 909 | select UPDATE_COMMON |
b254c529 MV |
910 | help |
911 | This option allows performing update of NOR with data in fitImage | |
912 | sent via TFTP boot. | |
913 | ||
914 | config UPDATE_TFTP_CNT_MAX | |
915 | int "The number of connection retries during auto-update" | |
916 | default 0 | |
2d1e2e57 | 917 | depends on UPDATE_TFTP || DFU_TFTP |
b254c529 MV |
918 | |
919 | config UPDATE_TFTP_MSEC_MAX | |
920 | int "Delay in mSec to wait for the TFTP server during auto-update" | |
921 | default 100 | |
2d1e2e57 TR |
922 | depends on UPDATE_TFTP || DFU_TFTP |
923 | ||
924 | config UPDATE_LOAD_ADDR | |
925 | hex "Address in memory to load the update to" | |
926 | depends on UPDATE_TFTP || DFU_TFTP | |
927 | default 0x100000 | |
928 | help | |
929 | This option defines the location in memory to be used to load the | |
930 | update to, if 'loadaddr' is not set in the environment. | |
b254c529 | 931 | |
3149e524 AT |
932 | config UPDATE_FIT |
933 | bool "Firmware update using fitImage" | |
2d1e2e57 | 934 | depends on FIT && OF_LIBFDT |
3149e524 AT |
935 | depends on DFU |
936 | select UPDATE_COMMON | |
937 | help | |
938 | This option allows performing update of DFU-capable storage with | |
939 | data in fitImage. | |
940 | ||
d65e8da9 RT |
941 | config ANDROID_AB |
942 | bool "Android A/B updates" | |
d65e8da9 RT |
943 | help |
944 | If enabled, adds support for the new Android A/B update model. This | |
945 | allows the bootloader to select which slot to boot from based on the | |
946 | information provided by userspace via the Android boot_ctrl HAL. This | |
947 | allows a bootloader to try a new version of the system but roll back | |
948 | to previous version if the new one didn't boot all the way. | |
949 | ||
3430f24b JW |
950 | config ANDROID_AB_BACKUP_OFFSET |
951 | hex "Offset of backup bootloader control" | |
952 | depends on ANDROID_AB | |
953 | default 0x0 | |
954 | help | |
955 | If non-zero, a backup bootloader message starting at this offset in | |
956 | the partition will tried in the event that the primary one (starting | |
957 | at offset 0) fails its checksum. | |
958 | ||
b254c529 MV |
959 | endmenu |
960 | ||
9f407d4e SG |
961 | menu "Blob list" |
962 | ||
963 | config BLOBLIST | |
964 | bool "Support for a bloblist" | |
a536b2fd | 965 | select CRC32 |
9f407d4e SG |
966 | help |
967 | This enables support for a bloblist in U-Boot, which can be passed | |
968 | from TPL to SPL to U-Boot proper (and potentially to Linux). The | |
969 | blob list supports multiple binary blobs of data, each with a tag, | |
970 | so that different U-Boot components can store data which can survive | |
5938d654 | 971 | through to the next phase of the boot. |
9f407d4e SG |
972 | |
973 | config SPL_BLOBLIST | |
974 | bool "Support for a bloblist in SPL" | |
3c0d5ea0 | 975 | depends on BLOBLIST && SPL_LIBGENERIC_SUPPORT && SPL_LIBCOMMON_SUPPORT |
a536b2fd | 976 | select SPL_CRC32 |
9f407d4e SG |
977 | default y if SPL |
978 | help | |
979 | This enables a bloblist in SPL. If this is the first part of U-Boot | |
980 | to run, then the bloblist is set up in SPL and passed to U-Boot | |
981 | proper. If TPL also has a bloblist, then SPL uses the one from there. | |
982 | ||
983 | config TPL_BLOBLIST | |
984 | bool "Support for a bloblist in TPL" | |
3c0d5ea0 | 985 | depends on BLOBLIST && TPL_LIBGENERIC_SUPPORT && TPL_LIBCOMMON_SUPPORT |
a536b2fd | 986 | select TPL_CRC32 |
9f407d4e SG |
987 | default y if TPL |
988 | help | |
989 | This enables a bloblist in TPL. The bloblist is set up in TPL and | |
990 | passed to SPL and U-Boot proper. | |
747093dd SG |
991 | |
992 | config VPL_BLOBLIST | |
993 | bool "Support for a bloblist in VPL" | |
994 | depends on BLOBLIST && VPL_LIBGENERIC_SUPPORT && VPL_LIBCOMMON_SUPPORT | |
995 | default y if VPL | |
996 | help | |
997 | This enables a bloblist in VPL. The bloblist is set up in VPL and | |
998 | passed to SPL and U-Boot proper. | |
9f407d4e | 999 | |
d5b6e91b SG |
1000 | if BLOBLIST |
1001 | ||
99047f5d SG |
1002 | choice |
1003 | prompt "Bloblist location" | |
9f407d4e | 1004 | help |
99047f5d SG |
1005 | Select the location of the bloblist, via various means. |
1006 | ||
1007 | config BLOBLIST_FIXED | |
1008 | bool "Place bloblist at a fixed address in memory" | |
1009 | help | |
1010 | Select this to used a fixed memory address for the bloblist. If the | |
1011 | bloblist exists at this address from a previous phase, it used as is. | |
1012 | If not it is created at this address in U-Boot. | |
9f407d4e | 1013 | |
d5b6e91b SG |
1014 | config BLOBLIST_ALLOC |
1015 | bool "Allocate bloblist" | |
1016 | help | |
1017 | Allocate the bloblist using malloc(). This avoids the need to | |
1018 | specify a fixed address on systems where this is unknown or can | |
1019 | change at runtime. | |
1020 | ||
99047f5d SG |
1021 | endchoice |
1022 | ||
9f407d4e SG |
1023 | config BLOBLIST_ADDR |
1024 | hex "Address of bloblist" | |
ff6c708b | 1025 | default 0xb000 if SANDBOX |
99047f5d | 1026 | depends on BLOBLIST_FIXED |
9f407d4e SG |
1027 | help |
1028 | Sets the address of the bloblist, set up by the first part of U-Boot | |
5938d654 | 1029 | which runs. Subsequent U-Boot phases typically use the same address. |
9f407d4e | 1030 | |
d5b6e91b SG |
1031 | This is not used if BLOBLIST_ALLOC is selected. |
1032 | ||
99047f5d SG |
1033 | config BLOBLIST_SIZE |
1034 | hex "Size of bloblist" | |
1035 | default 0x400 | |
1036 | help | |
1037 | Sets the size of the bloblist in bytes. This must include all | |
1038 | overhead (alignment, bloblist header, record header). The bloblist | |
1039 | is set up in the first part of U-Boot to run (TPL, SPL or U-Boot | |
1040 | proper), and this sane bloblist is used for subsequent phases. | |
1041 | ||
9fe06464 SG |
1042 | config BLOBLIST_SIZE_RELOC |
1043 | hex "Size of bloblist after relocation" | |
99047f5d | 1044 | default BLOBLIST_SIZE if BLOBLIST_FIXED || BLOBLIST_ALLOC |
a077ac13 | 1045 | default 0x0 if BLOBLIST_PASSAGE |
9fe06464 SG |
1046 | help |
1047 | Sets the size of the bloblist in bytes after relocation. Since U-Boot | |
1048 | has a lot more memory available then, it is possible to use a larger | |
1049 | size than the one set up by SPL. This bloblist is set up during the | |
1050 | relocation process. | |
1051 | ||
d5b6e91b SG |
1052 | endif # BLOBLIST |
1053 | ||
99047f5d SG |
1054 | if SPL_BLOBLIST |
1055 | ||
1056 | choice | |
1057 | prompt "Bloblist location in SPL" | |
1058 | help | |
1059 | Select the location of the bloblist, via various means. Typically | |
1060 | you should use the same value for SPL as for U-Boot, since they need | |
1061 | to look in the same place. But if BLOBLIST_ALLOC is used, then a | |
1062 | fresh bloblist will be created each time, since there is no shared | |
1063 | address (between phases) for the bloblist. | |
1064 | ||
1065 | config SPL_BLOBLIST_FIXED | |
1066 | bool "Place bloblist at a fixed address in memory" | |
1067 | help | |
1068 | Select this to used a fixed memory address for the bloblist. If the | |
1069 | bloblist exists at this address from a previous phase, it used as is. | |
1070 | If not it is created at this address in SPL. | |
1071 | ||
1072 | config SPL_BLOBLIST_ALLOC | |
1073 | bool "Allocate bloblist" | |
1074 | help | |
1075 | Allocate the bloblist using malloc(). This avoids the need to | |
1076 | specify a fixed address on systems where this is unknown or can | |
1077 | change at runtime. | |
1078 | ||
1079 | endchoice | |
1080 | ||
1081 | endif # SPL_BLOBLIST | |
1082 | ||
1083 | if TPL_BLOBLIST | |
1084 | ||
1085 | choice | |
1086 | prompt "Bloblist location in TPL" | |
1087 | help | |
1088 | Select the location of the bloblist, via various means. Typically | |
7ffbb5b6 | 1089 | you should use the same value for TPL as for U-Boot, since they need |
99047f5d SG |
1090 | to look in the same place. But if BLOBLIST_ALLOC is used, then a |
1091 | fresh bloblist will be created each time, since there is no shared | |
1092 | address (between phases) for the bloblist. | |
1093 | ||
1094 | config TPL_BLOBLIST_FIXED | |
1095 | bool "Place bloblist at a fixed address in memory" | |
1096 | help | |
1097 | Select this to used a fixed memory address for the bloblist. If the | |
1098 | bloblist exists at this address from a previous phase, it used as is. | |
1099 | If not it is created at this address in TPL. | |
1100 | ||
1101 | config TPL_BLOBLIST_ALLOC | |
1102 | bool "Allocate bloblist" | |
1103 | help | |
1104 | Allocate the bloblist using malloc(). This avoids the need to | |
1105 | specify a fixed address on systems where this is unknown or can | |
1106 | change at runtime. | |
1107 | ||
1108 | endchoice | |
1109 | ||
1110 | endif # TPL_BLOBLIST | |
1111 | ||
7ffbb5b6 SG |
1112 | if VPL_BLOBLIST |
1113 | ||
1114 | choice | |
1115 | prompt "Bloblist location in VPL" | |
1116 | help | |
1117 | Select the location of the bloblist, via various means. Typically | |
1118 | you should use the same value for VPL as for U-Boot, since they need | |
1119 | to look in the same place. But if BLOBLIST_ALLOC is used, then a | |
1120 | fresh bloblist will be created each time, since there is no shared | |
1121 | address (between phases) for the bloblist. | |
1122 | ||
1123 | config VPL_BLOBLIST_FIXED | |
1124 | bool "Place bloblist at a fixed address in memory" | |
1125 | help | |
1126 | Select this to used a fixed memory address for the bloblist. If the | |
1127 | bloblist exists at this address from a previous phase, it used as is. | |
1128 | If not it is created at this address in VPL. | |
1129 | ||
1130 | config VPL_BLOBLIST_ALLOC | |
1131 | bool "Allocate bloblist" | |
1132 | help | |
1133 | Allocate the bloblist using malloc(). This avoids the need to | |
1134 | specify a fixed address on systems where this is unknown or can | |
1135 | change at runtime. | |
1136 | ||
1137 | endchoice | |
1138 | ||
1139 | endif # VPL_BLOBLIST | |
1140 | ||
9f407d4e SG |
1141 | endmenu |
1142 | ||
c2ae7d82 | 1143 | source "common/spl/Kconfig" |
b983cc2d AT |
1144 | |
1145 | config IMAGE_SIGN_INFO | |
1146 | bool | |
1147 | select SHA1 | |
1148 | select SHA256 | |
1149 | help | |
1150 | Enable image_sign_info helper functions. | |
6441164d HS |
1151 | |
1152 | if IMAGE_SIGN_INFO | |
1153 | ||
1154 | config SPL_IMAGE_SIGN_INFO | |
1155 | bool | |
1156 | select SHA1 | |
1157 | select SHA256 | |
1158 | help | |
1159 | Enable image_sign_info helper functions in SPL. | |
1160 | ||
5981d611 SG |
1161 | config VPL_IMAGE_SIGN_INFO |
1162 | bool | |
1163 | select SHA1 | |
1164 | select SHA256 | |
1165 | help | |
1166 | Enable image_sign_info helper functions in SPL. | |
1167 | ||
6441164d | 1168 | endif |
d71587c2 | 1169 | |
68e54040 TR |
1170 | config IO_TRACE |
1171 | bool |