1menu "Boot timing" 2 3config BOOTSTAGE 4 bool "Boot timing and reporting" 5 help 6 Enable recording of boot time while booting. To use it, insert 7 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from 8 bootstage.h. Only a single entry is recorded for each ID. You can 9 give the entry a name with bootstage_mark_name(). You can also 10 record elapsed time in a particular stage using bootstage_start() 11 before starting and bootstage_accum() when finished. Bootstage will 12 add up all the accumulated time and report it. 13 14 Normally, IDs are defined in bootstage.h but a small number of 15 additional 'user' IDs can be used by passing BOOTSTAGE_ID_ALLOC 16 as the ID. 17 18 Calls to show_boot_progress() will also result in log entries but 19 these will not have names. 20 21config SPL_BOOTSTAGE 22 bool "Boot timing and reported in SPL" 23 depends on BOOTSTAGE 24 help 25 Enable recording of boot time in SPL. To make this visible to U-Boot 26 proper, enable BOOTSTAGE_STASH as well. This will stash the timing 27 information when SPL finishes and load it when U-Boot proper starts 28 up. 29 30config TPL_BOOTSTAGE 31 bool "Boot timing and reported in TPL" 32 depends on BOOTSTAGE 33 help 34 Enable recording of boot time in SPL. To make this visible to U-Boot 35 proper, enable BOOTSTAGE_STASH as well. This will stash the timing 36 information when TPL finishes and load it when U-Boot proper starts 37 up. 38 39config BOOTSTAGE_REPORT 40 bool "Display a detailed boot timing report before booting the OS" 41 depends on BOOTSTAGE 42 help 43 Enable output of a boot time report just before the OS is booted. 44 This shows how long it took U-Boot to go through each stage of the 45 boot process. The report looks something like this: 46 47 Timer summary in microseconds: 48 Mark Elapsed Stage 49 0 0 reset 50 3,575,678 3,575,678 board_init_f start 51 3,575,695 17 arch_cpu_init A9 52 3,575,777 82 arch_cpu_init done 53 3,659,598 83,821 board_init_r start 54 3,910,375 250,777 main_loop 55 29,916,167 26,005,792 bootm_start 56 30,361,327 445,160 start_kernel 57 58config BOOTSTAGE_RECORD_COUNT 59 int "Number of boot stage records to store" 60 default 30 61 help 62 This is the size of the bootstage record list and is the maximum 63 number of bootstage records that can be recorded. 64 65config SPL_BOOTSTAGE_RECORD_COUNT 66 int "Number of boot stage records to store for SPL" 67 default 5 68 help 69 This is the size of the bootstage record list and is the maximum 70 number of bootstage records that can be recorded. 71 72config BOOTSTAGE_FDT 73 bool "Store boot timing information in the OS device tree" 74 depends on BOOTSTAGE 75 help 76 Stash the bootstage information in the FDT. A root 'bootstage' 77 node is created with each bootstage id as a child. Each child 78 has a 'name' property and either 'mark' containing the 79 mark time in microseconds, or 'accum' containing the 80 accumulated time for that bootstage id in microseconds. 81 For example: 82 83 bootstage { 84 154 { 85 name = "board_init_f"; 86 mark = <3575678>; 87 }; 88 170 { 89 name = "lcd"; 90 accum = <33482>; 91 }; 92 }; 93 94 Code in the Linux kernel can find this in /proc/devicetree. 95 96config BOOTSTAGE_STASH 97 bool "Stash the boot timing information in memory before booting OS" 98 depends on BOOTSTAGE 99 help 100 Some OSes do not support device tree. Bootstage can instead write 101 the boot timing information in a binary format at a given address. 102 This happens through a call to bootstage_stash(), typically in 103 the CPU's cleanup_before_linux() function. You can use the 104 'bootstage stash' and 'bootstage unstash' commands to do this on 105 the command line. 106 107config BOOTSTAGE_STASH_ADDR 108 hex "Address to stash boot timing information" 109 default 0 110 help 111 Provide an address which will not be overwritten by the OS when it 112 starts, so that it can read this information when ready. 113 114config BOOTSTAGE_STASH_SIZE 115 hex "Size of boot timing stash region" 116 default 0x1000 117 help 118 This should be large enough to hold the bootstage stash. A value of 119 4096 (4KiB) is normally plenty. 120 121endmenu 122 123menu "Boot media" 124 125config NOR_BOOT 126 bool "Support for booting from NOR flash" 127 depends on NOR 128 help 129 Enabling this will make a U-Boot binary that is capable of being 130 booted via NOR. In this case we will enable certain pinmux early 131 as the ROM only partially sets up pinmux. We also default to using 132 NOR for environment. 133 134config NAND_BOOT 135 bool "Support for booting from NAND flash" 136 default n 137 imply NAND 138 help 139 Enabling this will make a U-Boot binary that is capable of being 140 booted via NAND flash. This is not a must, some SoCs need this, 141 some not. 142 143config ONENAND_BOOT 144 bool "Support for booting from ONENAND" 145 default n 146 imply NAND 147 help 148 Enabling this will make a U-Boot binary that is capable of being 149 booted via ONENAND. This is not a must, some SoCs need this, 150 some not. 151 152config QSPI_BOOT 153 bool "Support for booting from QSPI flash" 154 default n 155 help 156 Enabling this will make a U-Boot binary that is capable of being 157 booted via QSPI flash. This is not a must, some SoCs need this, 158 some not. 159 160config SATA_BOOT 161 bool "Support for booting from SATA" 162 default n 163 help 164 Enabling this will make a U-Boot binary that is capable of being 165 booted via SATA. This is not a must, some SoCs need this, 166 some not. 167 168config SD_BOOT 169 bool "Support for booting from SD/EMMC" 170 default n 171 help 172 Enabling this will make a U-Boot binary that is capable of being 173 booted via SD/EMMC. This is not a must, some SoCs need this, 174 some not. 175 176config SPI_BOOT 177 bool "Support for booting from SPI flash" 178 default n 179 help 180 Enabling this will make a U-Boot binary that is capable of being 181 booted via SPI flash. This is not a must, some SoCs need this, 182 some not. 183 184endmenu 185 186config BOOTDELAY 187 int "delay in seconds before automatically booting" 188 default 2 189 depends on AUTOBOOT 190 help 191 Delay before automatically running bootcmd; 192 set to 0 to autoboot with no delay, but you can stop it by key input. 193 set to -1 to disable autoboot. 194 set to -2 to autoboot with no delay and not check for abort 195 196 If this value is >= 0 then it is also used for the default delay 197 before starting the default entry in bootmenu. If it is < 0 then 198 a default value of 10s is used. 199 200 See doc/README.autoboot for details. 201 202config USE_BOOTARGS 203 bool "Enable boot arguments" 204 help 205 Provide boot arguments to bootm command. Boot arguments are specified 206 in CONFIG_BOOTARGS option. Enable this option to be able to specify 207 CONFIG_BOOTARGS string. If this option is disabled, CONFIG_BOOTARGS 208 will be undefined and won't take any space in U-Boot image. 209 210config BOOTARGS 211 string "Boot arguments" 212 depends on USE_BOOTARGS 213 help 214 This can be used to pass arguments to the bootm command. The value of 215 CONFIG_BOOTARGS goes into the environment value "bootargs". Note that 216 this value will also override the "chosen" node in FDT blob. 217 218config USE_BOOTCOMMAND 219 bool "Enable a default value for bootcmd" 220 help 221 Provide a default value for the bootcmd entry in the environment. If 222 autoboot is enabled this is what will be run automatically. Enable 223 this option to be able to specify CONFIG_BOOTCOMMAND as a string. If 224 this option is disabled, CONFIG_BOOTCOMMAND will be undefined and 225 won't take any space in U-Boot image. 226 227config BOOTCOMMAND 228 string "bootcmd value" 229 depends on USE_BOOTCOMMAND 230 default "run distro_bootcmd" if DISTRO_DEFAULTS 231 help 232 This is the string of commands that will be used as bootcmd and if 233 AUTOBOOT is set, automatically run. 234 235menu "Console" 236 237config MENU 238 bool 239 help 240 This is the library functionality to provide a text-based menu of 241 choices for the user to make choices with. 242 243config CONSOLE_RECORD 244 bool "Console recording" 245 help 246 This provides a way to record console output (and provide console 247 input) through circular buffers. This is mostly useful for testing. 248 Console output is recorded even when the console is silent. 249 To enable console recording, call console_record_reset_enable() 250 from your code. 251 252config CONSOLE_RECORD_OUT_SIZE 253 hex "Output buffer size" 254 depends on CONSOLE_RECORD 255 default 0x400 if CONSOLE_RECORD 256 help 257 Set the size of the console output buffer. When this fills up, no 258 more data will be recorded until some is removed. The buffer is 259 allocated immediately after the malloc() region is ready. 260 261config CONSOLE_RECORD_IN_SIZE 262 hex "Input buffer size" 263 depends on CONSOLE_RECORD 264 default 0x100 if CONSOLE_RECORD 265 help 266 Set the size of the console input buffer. When this contains data, 267 tstc() and getc() will use this in preference to real device input. 268 The buffer is allocated immediately after the malloc() region is 269 ready. 270 271config DISABLE_CONSOLE 272 bool "Add functionality to disable console completely" 273 help 274 Disable console (in & out). 275 276config IDENT_STRING 277 string "Board specific string to be added to uboot version string" 278 help 279 This options adds the board specific name to u-boot version. 280 281config LOGLEVEL 282 int "loglevel" 283 default 4 284 range 0 8 285 help 286 All Messages with a loglevel smaller than the console loglevel will 287 be compiled in. The loglevels are defined as follows: 288 289 0 - emergency 290 1 - alert 291 2 - critical 292 3 - error 293 4 - warning 294 5 - note 295 6 - info 296 7 - debug 297 8 - debug content 298 9 - debug hardware I/O 299 300config SPL_LOGLEVEL 301 int 302 default LOGLEVEL 303 304config TPL_LOGLEVEL 305 int 306 default LOGLEVEL 307 308config SILENT_CONSOLE 309 bool "Support a silent console" 310 help 311 This option allows the console to be silenced, meaning that no 312 output will appear on the console devices. This is controlled by 313 setting the environment variable 'silent' to a non-empty value. 314 Note this also silences the console when booting Linux. 315 316 When the console is set up, the variable is checked, and the 317 GD_FLG_SILENT flag is set. Changing the environment variable later 318 will update the flag. 319 320config SILENT_U_BOOT_ONLY 321 bool "Only silence the U-Boot console" 322 depends on SILENT_CONSOLE 323 help 324 Normally when the U-Boot console is silenced, Linux's console is 325 also silenced (assuming the board boots into Linux). This option 326 allows the linux console to operate normally, even if U-Boot's 327 is silenced. 328 329config SILENT_CONSOLE_UPDATE_ON_SET 330 bool "Changes to the 'silent' environment variable update immediately" 331 depends on SILENT_CONSOLE 332 default y if SILENT_CONSOLE 333 help 334 When the 'silent' environment variable is changed, update the 335 console silence flag immediately. This allows 'setenv' to be used 336 to silence or un-silence the console. 337 338 The effect is that any change to the variable will affect the 339 GD_FLG_SILENT flag. 340 341config SILENT_CONSOLE_UPDATE_ON_RELOC 342 bool "Allow flags to take effect on relocation" 343 depends on SILENT_CONSOLE 344 help 345 In some cases the environment is not available until relocation 346 (e.g. NAND). This option makes the value of the 'silent' 347 environment variable take effect at relocation. 348 349config PRE_CONSOLE_BUFFER 350 bool "Buffer characters before the console is available" 351 help 352 Prior to the console being initialised (i.e. serial UART 353 initialised etc) all console output is silently discarded. 354 Defining CONFIG_PRE_CONSOLE_BUFFER will cause U-Boot to 355 buffer any console messages prior to the console being 356 initialised to a buffer. The buffer is a circular buffer, so 357 if it overflows, earlier output is discarded. 358 359 Note that this is not currently supported in SPL. It would be 360 useful to be able to share the pre-console buffer with SPL. 361 362config PRE_CON_BUF_SZ 363 int "Sets the size of the pre-console buffer" 364 depends on PRE_CONSOLE_BUFFER 365 default 4096 366 help 367 The size of the pre-console buffer affects how much console output 368 can be held before it overflows and starts discarding earlier 369 output. Normally there is very little output at this early stage, 370 unless debugging is enabled, so allow enough for ~10 lines of 371 text. 372 373 This is a useful feature if you are using a video console and 374 want to see the full boot output on the console. Without this 375 option only the post-relocation output will be displayed. 376 377config PRE_CON_BUF_ADDR 378 hex "Address of the pre-console buffer" 379 depends on PRE_CONSOLE_BUFFER 380 default 0x2f000000 if ARCH_SUNXI && MACH_SUN9I 381 default 0x4f000000 if ARCH_SUNXI && !MACH_SUN9I 382 help 383 This sets the start address of the pre-console buffer. This must 384 be in available memory and is accessed before relocation and 385 possibly before DRAM is set up. Therefore choose an address 386 carefully. 387 388 We should consider removing this option and allocating the memory 389 in board_init_f_init_reserve() instead. 390 391config CONSOLE_MUX 392 bool "Enable console multiplexing" 393 default y if DM_VIDEO || VIDEO || LCD 394 help 395 This allows multiple devices to be used for each console 'file'. 396 For example, stdout can be set to go to serial and video. 397 Similarly, stdin can be set to come from serial and keyboard. 398 Input can be provided from either source. Console multiplexing 399 adds a small amount of size to U-Boot. Changes to the environment 400 variables stdout, stdin and stderr will take effect immediately. 401 402config SYS_CONSOLE_IS_IN_ENV 403 bool "Select console devices from the environment" 404 default y if CONSOLE_MUX 405 help 406 This allows multiple input/output devices to be set at boot time. 407 For example, if stdout is set to "serial,video" then output will 408 be sent to both the serial and video devices on boot. The 409 environment variables can be updated after boot to change the 410 input/output devices. 411 412config SYS_CONSOLE_OVERWRITE_ROUTINE 413 bool "Allow board control over console overwriting" 414 help 415 If this is enabled, and the board-specific function 416 overwrite_console() returns 1, the stdin, stderr and stdout are 417 switched to the serial port, else the settings in the environment 418 are used. If this is not enabled, the console will not be switched 419 to serial. 420 421config SYS_CONSOLE_ENV_OVERWRITE 422 bool "Update environment variables during console init" 423 help 424 The console environment variables (stdout, stdin, stderr) can be 425 used to determine the correct console devices on start-up. This 426 option writes the console devices to these variables on console 427 start-up (after relocation). This causes the environment to be 428 updated to match the console devices actually chosen. 429 430config SYS_CONSOLE_INFO_QUIET 431 bool "Don't display the console devices on boot" 432 help 433 Normally U-Boot displays the current settings for stdout, stdin 434 and stderr on boot when the post-relocation console is set up. 435 Enable this option to suppress this output. It can be obtained by 436 calling stdio_print_current_devices() from board code. 437 438config SYS_STDIO_DEREGISTER 439 bool "Allow deregistering stdio devices" 440 default y if USB_KEYBOARD 441 help 442 Generally there is no need to deregister stdio devices since they 443 are never deactivated. But if a stdio device is used which can be 444 removed (for example a USB keyboard) then this option can be 445 enabled to ensure this is handled correctly. 446 447endmenu 448 449menu "Logging" 450 451config LOG 452 bool "Enable logging support" 453 depends on DM 454 help 455 This enables support for logging of status and debug messages. These 456 can be displayed on the console, recorded in a memory buffer, or 457 discarded if not needed. Logging supports various categories and 458 levels of severity. 459 460config SPL_LOG 461 bool "Enable logging support in SPL" 462 depends on LOG 463 help 464 This enables support for logging of status and debug messages. These 465 can be displayed on the console, recorded in a memory buffer, or 466 discarded if not needed. Logging supports various categories and 467 levels of severity. 468 469config TPL_LOG 470 bool "Enable logging support in TPL" 471 depends on LOG 472 help 473 This enables support for logging of status and debug messages. These 474 can be displayed on the console, recorded in a memory buffer, or 475 discarded if not needed. Logging supports various categories and 476 levels of severity. 477 478config LOG_MAX_LEVEL 479 int "Maximum log level to record" 480 depends on LOG 481 default 5 482 help 483 This selects the maximum log level that will be recorded. Any value 484 higher than this will be ignored. If possible log statements below 485 this level will be discarded at build time. Levels: 486 487 0 - emergency 488 1 - alert 489 2 - critical 490 3 - error 491 4 - warning 492 5 - note 493 6 - info 494 7 - debug 495 8 - debug content 496 9 - debug hardware I/O 497 498config SPL_LOG_MAX_LEVEL 499 int "Maximum log level to record in SPL" 500 depends on SPL_LOG 501 default 3 502 help 503 This selects the maximum log level that will be recorded. Any value 504 higher than this will be ignored. If possible log statements below 505 this level will be discarded at build time. Levels: 506 507 0 - emergency 508 1 - alert 509 2 - critical 510 3 - error 511 4 - warning 512 5 - note 513 6 - info 514 7 - debug 515 8 - debug content 516 9 - debug hardware I/O 517 518config TPL_LOG_MAX_LEVEL 519 int "Maximum log level to record in TPL" 520 depends on TPL_LOG 521 default 3 522 help 523 This selects the maximum log level that will be recorded. Any value 524 higher than this will be ignored. If possible log statements below 525 this level will be discarded at build time. Levels: 526 527 0 - emergency 528 1 - alert 529 2 - critical 530 3 - error 531 4 - warning 532 5 - note 533 6 - info 534 7 - debug 535 8 - debug content 536 9 - debug hardware I/O 537 538config LOG_DEFAULT_LEVEL 539 int "Default logging level to display" 540 default 6 541 help 542 This is the default logging level set when U-Boot starts. It can 543 be adjusted later using the 'log level' command. Note that setting 544 this to a value abnove LOG_MAX_LEVEL will be ineffective, since the 545 higher levels are not compiled in to U-Boot. 546 547 0 - emergency 548 1 - alert 549 2 - critical 550 3 - error 551 4 - warning 552 5 - note 553 6 - info 554 7 - debug 555 8 - debug content 556 9 - debug hardware I/O 557 558config LOG_CONSOLE 559 bool "Allow log output to the console" 560 depends on LOG 561 default y 562 help 563 Enables a log driver which writes log records to the console. 564 Generally the console is the serial port or LCD display. Only the 565 log message is shown - other details like level, category, file and 566 line number are omitted. 567 568config SPL_LOG_CONSOLE 569 bool "Allow log output to the console in SPL" 570 depends on SPL_LOG 571 default y 572 help 573 Enables a log driver which writes log records to the console. 574 Generally the console is the serial port or LCD display. Only the 575 log message is shown - other details like level, category, file and 576 line number are omitted. 577 578config TPL_LOG_CONSOLE 579 bool "Allow log output to the console in SPL" 580 depends on TPL_LOG 581 default y 582 help 583 Enables a log driver which writes log records to the console. 584 Generally the console is the serial port or LCD display. Only the 585 log message is shown - other details like level, category, file and 586 line number are omitted. 587 588config LOG_TEST 589 bool "Provide a test for logging" 590 depends on LOG 591 default y if SANDBOX 592 help 593 This enables a 'log test' command to test logging. It is normally 594 executed from a pytest and simply outputs logging information 595 in various different ways to test that the logging system works 596 correctly with various settings. 597 598config LOG_ERROR_RETURN 599 bool "Log all functions which return an error" 600 depends on LOG 601 help 602 When an error is returned in U-Boot it is sometimes difficult to 603 figure out the root cause. For example, reading from SPI flash may 604 fail due to a problem in the SPI controller or due to the flash part 605 not returning the expected information. This option changes 606 log_ret() to log any errors it sees. With this option disabled, 607 log_ret() is a nop. 608 609 You can add log_ret() to all functions which return an error code. 610 611endmenu 612 613config SUPPORT_RAW_INITRD 614 bool "Enable raw initrd images" 615 help 616 Note, defining the SUPPORT_RAW_INITRD allows user to supply 617 kernel with raw initrd images. The syntax is slightly different, the 618 address of the initrd must be augmented by it's size, in the following 619 format: "<initrd address>:<initrd size>". 620 621config DEFAULT_FDT_FILE 622 string "Default fdt file" 623 help 624 This option is used to set the default fdt file to boot OS. 625 626config MISC_INIT_R 627 bool "Execute Misc Init" 628 default y if ARCH_KEYSTONE || ARCH_SUNXI || MPC85xx 629 default y if ARCH_OMAP2PLUS && !AM33XX 630 help 631 Enabling this option calls 'misc_init_r' function 632 633config VERSION_VARIABLE 634 bool "add U-Boot environment variable vers" 635 default n 636 help 637 If this variable is defined, an environment variable 638 named "ver" is created by U-Boot showing the U-Boot 639 version as printed by the "version" command. 640 Any change to this variable will be reverted at the 641 next reset. 642 643config BOARD_LATE_INIT 644 bool "Execute Board late init" 645 help 646 Sometimes board require some initialization code that might 647 require once the actual init done, example saving board specific env, 648 boot-modes etc. which eventually done at late. 649 650 So this config enable the late init code with the help of board_late_init 651 function which should defined on respective boards. 652 653config DISPLAY_CPUINFO 654 bool "Display information about the CPU during start up" 655 default y if ARC|| ARM || NIOS2 || X86 || XTENSA || M68K 656 help 657 Display information about the CPU that U-Boot is running on 658 when U-Boot starts up. The function print_cpuinfo() is called 659 to do this. 660 661config DISPLAY_BOARDINFO 662 bool "Display information about the board during early start up" 663 default y if ARC || ARM || M68K || MIPS || PPC || SANDBOX || XTENSA 664 help 665 Display information about the board that U-Boot is running on 666 when U-Boot starts up. The board function checkboard() is called 667 to do this. 668 669config DISPLAY_BOARDINFO_LATE 670 bool "Display information about the board during late start up" 671 help 672 Display information about the board that U-Boot is running on after 673 the relocation phase. The board function checkboard() is called to do 674 this. 675 676config BOUNCE_BUFFER 677 bool "Include bounce buffer API" 678 help 679 Some peripherals support DMA from a subset of physically 680 addressable memory only. To support such peripherals, the 681 bounce buffer API uses a temporary buffer: it copies data 682 to/from DMA regions while managing cache operations. 683 684 A second possible use of bounce buffers is their ability to 685 provide aligned buffers for DMA operations. 686 687config BOARD_TYPES 688 bool "Call get_board_type() to get and display the board type" 689 help 690 If this option is enabled, checkboard() will call get_board_type() 691 to get a string containing the board type and this will be 692 displayed immediately after the model is shown on the console 693 early in boot. 694 695menu "Start-up hooks" 696 697config ARCH_EARLY_INIT_R 698 bool "Call arch-specific init soon after relocation" 699 help 700 With this option U-Boot will call arch_early_init_r() soon after 701 relocation. Driver model is running by this point, and the cache 702 is on. Note that board_early_init_r() is called first, if 703 enabled. This can be used to set up architecture-specific devices. 704 705config ARCH_MISC_INIT 706 bool "Call arch-specific init after relocation, when console is ready" 707 help 708 With this option U-Boot will call arch_misc_init() after 709 relocation to allow miscellaneous arch-dependent initialisation 710 to be performed. This function should be defined by the board 711 and will be called after the console is set up, after relocation. 712 713config BOARD_EARLY_INIT_F 714 bool "Call board-specific init before relocation" 715 help 716 Some boards need to perform initialisation as soon as possible 717 after boot. With this option, U-Boot calls board_early_init_f() 718 after driver model is ready in the pre-relocation init sequence. 719 Note that the normal serial console is not yet set up, but the 720 debug UART will be available if enabled. 721 722config BOARD_EARLY_INIT_R 723 bool "Call board-specific init after relocation" 724 help 725 Some boards need to perform initialisation as directly after 726 relocation. With this option, U-Boot calls board_early_init_r() 727 in the post-relocation init sequence. 728 729config LAST_STAGE_INIT 730 bool "Call board-specific as last setup step" 731 help 732 Some boards need to perform initialisation immediately before control 733 is passed to the command-line interpreter (e.g. for initializations 734 that depend on later phases in the init sequence). With this option, 735 U-Boot calls last_stage_init() before the command-line interpreter is 736 started. 737 738endmenu 739 740menu "Security support" 741 742config HASH 743 bool # "Support hashing API (SHA1, SHA256, etc.)" 744 help 745 This provides a way to hash data in memory using various supported 746 algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h 747 and the algorithms it supports are defined in common/hash.c. See 748 also CMD_HASH for command-line access. 749 750config AVB_VERIFY 751 bool "Build Android Verified Boot operations" 752 depends on LIBAVB && FASTBOOT 753 depends on PARTITION_UUIDS 754 help 755 This option enables compilation of bootloader-dependent operations, 756 used by Android Verified Boot 2.0 library (libavb). Includes: 757 * Helpers to process strings in order to build OS bootargs. 758 * Helpers to access MMC, similar to drivers/fastboot/fb_mmc.c. 759 * Helpers to alloc/init/free avb ops. 760 761config SPL_HASH 762 bool # "Support hashing API (SHA1, SHA256, etc.)" 763 help 764 This provides a way to hash data in memory using various supported 765 algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h 766 and the algorithms it supports are defined in common/hash.c. See 767 also CMD_HASH for command-line access. 768 769config TPL_HASH 770 bool # "Support hashing API (SHA1, SHA256, etc.)" 771 help 772 This provides a way to hash data in memory using various supported 773 algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h 774 and the algorithms it supports are defined in common/hash.c. See 775 also CMD_HASH for command-line access. 776 777endmenu 778 779menu "Update support" 780 781config UPDATE_TFTP 782 bool "Auto-update using fitImage via TFTP" 783 depends on FIT 784 help 785 This option allows performing update of NOR with data in fitImage 786 sent via TFTP boot. 787 788config UPDATE_TFTP_CNT_MAX 789 int "The number of connection retries during auto-update" 790 default 0 791 depends on UPDATE_TFTP 792 793config UPDATE_TFTP_MSEC_MAX 794 int "Delay in mSec to wait for the TFTP server during auto-update" 795 default 100 796 depends on UPDATE_TFTP 797 798endmenu 799 800menu "Blob list" 801 802config BLOBLIST 803 bool "Support for a bloblist" 804 help 805 This enables support for a bloblist in U-Boot, which can be passed 806 from TPL to SPL to U-Boot proper (and potentially to Linux). The 807 blob list supports multiple binary blobs of data, each with a tag, 808 so that different U-Boot components can store data which can survive 809 through to the next stage of the boot. 810 811config SPL_BLOBLIST 812 bool "Support for a bloblist in SPL" 813 depends on BLOBLIST 814 default y if SPL 815 help 816 This enables a bloblist in SPL. If this is the first part of U-Boot 817 to run, then the bloblist is set up in SPL and passed to U-Boot 818 proper. If TPL also has a bloblist, then SPL uses the one from there. 819 820config TPL_BLOBLIST 821 bool "Support for a bloblist in TPL" 822 depends on BLOBLIST 823 default y if TPL 824 help 825 This enables a bloblist in TPL. The bloblist is set up in TPL and 826 passed to SPL and U-Boot proper. 827 828config BLOBLIST_SIZE 829 hex "Size of bloblist" 830 depends on BLOBLIST 831 default 0x400 832 help 833 Sets the size of the bloblist in bytes. This must include all 834 overhead (alignment, bloblist header, record header). The bloblist 835 is set up in the first part of U-Boot to run (TPL, SPL or U-Boot 836 proper), and this sane bloblist is used for subsequent stages. 837 838config BLOBLIST_ADDR 839 hex "Address of bloblist" 840 depends on BLOBLIST 841 default 0xe000 if SANDBOX 842 help 843 Sets the address of the bloblist, set up by the first part of U-Boot 844 which runs. Subsequent U-Boot stages typically use the same address. 845 846endmenu 847 848source "common/spl/Kconfig" 849