sandbox: Boot in U-Boot through the standard call
[oweals/u-boot.git] / common / Kconfig
index 4c7a1a9af865055a9aa9ac87c735f5de7ac0bdc3..57bd16d9623c091196d102f0405df040603b5d78 100644 (file)
@@ -27,6 +27,15 @@ config SPL_BOOTSTAGE
          information when SPL finishes and load it when U-Boot proper starts
          up.
 
+config TPL_BOOTSTAGE
+       bool "Boot timing and reported in TPL"
+       depends on BOOTSTAGE
+       help
+         Enable recording of boot time in SPL. To make this visible to U-Boot
+         proper, enable BOOTSTAGE_STASH as well. This will stash the timing
+         information when TPL finishes and load it when U-Boot proper starts
+         up.
+
 config BOOTSTAGE_REPORT
        bool "Display a detailed boot timing report before booting the OS"
        depends on BOOTSTAGE
@@ -125,6 +134,7 @@ config NOR_BOOT
 config NAND_BOOT
        bool "Support for booting from NAND flash"
        default n
+       imply NAND
        help
          Enabling this will make a U-Boot binary that is capable of being
          booted via NAND flash. This is not a must, some SoCs need this,
@@ -133,6 +143,7 @@ config NAND_BOOT
 config ONENAND_BOOT
        bool "Support for booting from ONENAND"
        default n
+       imply NAND
        help
          Enabling this will make a U-Boot binary that is capable of being
          booted via ONENAND. This is not a must, some SoCs need this,
@@ -182,6 +193,10 @@ config BOOTDELAY
          set to -1 to disable autoboot.
          set to -2 to autoboot with no delay and not check for abort
 
+         If this value is >= 0 then it is also used for the default delay
+         before starting the default entry in bootmenu. If it is < 0 then
+         a default value of 10s is used.
+
          See doc/README.autoboot for details.
 
 config USE_BOOTARGS
@@ -253,6 +268,11 @@ config CONSOLE_RECORD_IN_SIZE
          The buffer is allocated immediately after the malloc() region is
          ready.
 
+config DISABLE_CONSOLE
+       bool "Add functionality to disable console completely"
+       help
+               Disable console (in & out).
+
 config IDENT_STRING
        string "Board specific string to be added to uboot version string"
        help
@@ -279,6 +299,10 @@ config SPL_LOGLEVEL
        int
        default LOGLEVEL
 
+config TPL_LOGLEVEL
+       int
+       default LOGLEVEL
+
 config SILENT_CONSOLE
        bool "Support a silent console"
        help
@@ -424,7 +448,7 @@ menu "Logging"
 
 config LOG
        bool "Enable logging support"
-       select DM
+       depends on DM
        help
          This enables support for logging of status and debug messages. These
          can be displayed on the console, recorded in a memory buffer, or
@@ -433,6 +457,16 @@ config LOG
 
 config SPL_LOG
        bool "Enable logging support in SPL"
+       depends on LOG
+       help
+         This enables support for logging of status and debug messages. These
+         can be displayed on the console, recorded in a memory buffer, or
+         discarded if not needed. Logging supports various categories and
+         levels of severity.
+
+config TPL_LOG
+       bool "Enable logging support in TPL"
+       depends on LOG
        help
          This enables support for logging of status and debug messages. These
          can be displayed on the console, recorded in a memory buffer, or
@@ -475,6 +509,24 @@ config SPL_LOG_MAX_LEVEL
            6 - detail
            7 - debug
 
+config TPL_LOG_MAX_LEVEL
+       int "Maximum log level to record in TPL"
+       depends on TPL_LOG
+       default 3
+       help
+         This selects the maximum log level that will be recorded. Any value
+         higher than this will be ignored. If possible log statements below
+         this level will be discarded at build time. Levels:
+
+           0 - panic
+           1 - critical
+           2 - error
+           3 - warning
+           4 - note
+           5 - info
+           6 - detail
+           7 - debug
+
 config LOG_CONSOLE
        bool "Allow log output to the console"
        depends on LOG
@@ -485,9 +537,19 @@ config LOG_CONSOLE
          log message is shown - other details like level, category, file and
          line number are omitted.
 
-config LOG_SPL_CONSOLE
+config SPL_LOG_CONSOLE
+       bool "Allow log output to the console in SPL"
+       depends on SPL_LOG
+       default y
+       help
+         Enables a log driver which writes log records to the console.
+         Generally the console is the serial port or LCD display. Only the
+         log message is shown - other details like level, category, file and
+         line number are omitted.
+
+config TPL_LOG_CONSOLE
        bool "Allow log output to the console in SPL"
-       depends on LOG_SPL
+       depends on TPL_LOG
        default y
        help
          Enables a log driver which writes log records to the console.
@@ -533,6 +595,13 @@ config DEFAULT_FDT_FILE
        help
          This option is used to set the default fdt file to boot OS.
 
+config MISC_INIT_R
+       bool "Execute Misc Init"
+       default y if ARCH_KEYSTONE || ARCH_SUNXI || MPC85xx
+       default y if ARCH_OMAP2PLUS && !AM33XX
+       help
+         Enabling this option calls 'misc_init_r' function
+
 config VERSION_VARIABLE
        bool "add U-Boot environment variable vers"
        default n
@@ -544,7 +613,7 @@ config VERSION_VARIABLE
          next reset.
 
 config BOARD_LATE_INIT
-       bool
+       bool "Execute Board late init"
        help
          Sometimes board require some initialization code that might
          require once the actual init done, example saving board specific env,
@@ -555,7 +624,7 @@ config BOARD_LATE_INIT
 
 config DISPLAY_CPUINFO
        bool "Display information about the CPU during start up"
-       default y if ARM || NIOS2 || X86 || XTENSA || M68K
+       default y if ARC|| ARM || NIOS2 || X86 || XTENSA || M68K
        help
          Display information about the CPU that U-Boot is running on
          when U-Boot starts up. The function print_cpuinfo() is called
@@ -563,7 +632,7 @@ config DISPLAY_CPUINFO
 
 config DISPLAY_BOARDINFO
        bool "Display information about the board during early start up"
-       default y if ARM || M68K || MIPS || PPC || SANDBOX || XTENSA
+       default y if ARC || ARM || M68K || MIPS || PPC || SANDBOX || XTENSA
        help
          Display information about the board that U-Boot is running on
          when U-Boot starts up. The board function checkboard() is called
@@ -631,6 +700,33 @@ config HASH
          and the algorithms it supports are defined in common/hash.c. See
          also CMD_HASH for command-line access.
 
+config AVB_VERIFY
+       bool "Build Android Verified Boot operations"
+       depends on LIBAVB && FASTBOOT
+       depends on PARTITION_UUIDS
+       help
+         This option enables compilation of bootloader-dependent operations,
+         used by Android Verified Boot 2.0 library (libavb). Includes:
+           * Helpers to process strings in order to build OS bootargs.
+           * Helpers to access MMC, similar to drivers/fastboot/fb_mmc.c.
+           * Helpers to alloc/init/free avb ops.
+
+config SPL_HASH
+       bool # "Support hashing API (SHA1, SHA256, etc.)"
+       help
+         This provides a way to hash data in memory using various supported
+         algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h
+         and the algorithms it supports are defined in common/hash.c. See
+         also CMD_HASH for command-line access.
+
+config TPL_HASH
+       bool # "Support hashing API (SHA1, SHA256, etc.)"
+       help
+         This provides a way to hash data in memory using various supported
+         algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h
+         and the algorithms it supports are defined in common/hash.c. See
+         also CMD_HASH for command-line access.
+
 endmenu
 
 menu "Update support"
@@ -654,4 +750,52 @@ config UPDATE_TFTP_MSEC_MAX
 
 endmenu
 
+menu "Blob list"
+
+config BLOBLIST
+       bool "Support for a bloblist"
+       help
+         This enables support for a bloblist in U-Boot, which can be passed
+         from TPL to SPL to U-Boot proper (and potentially to Linux). The
+         blob list supports multiple binary blobs of data, each with a tag,
+         so that different U-Boot components can store data which can survive
+         through to the next stage of the boot.
+
+config SPL_BLOBLIST
+       bool "Support for a bloblist in SPL"
+       depends on BLOBLIST
+       default y if SPL
+       help
+         This enables a bloblist in SPL. If this is the first part of U-Boot
+         to run, then the bloblist is set up in SPL and passed to U-Boot
+         proper. If TPL also has a bloblist, then SPL uses the one from there.
+
+config TPL_BLOBLIST
+       bool "Support for a bloblist in TPL"
+       depends on BLOBLIST
+       default y if TPL
+       help
+         This enables a bloblist in TPL. The bloblist is set up in TPL and
+         passed to SPL and U-Boot proper.
+
+config BLOBLIST_SIZE
+       hex "Size of bloblist"
+       depends on BLOBLIST
+       default 0x400
+       help
+         Sets the size of the bloblist in bytes. This must include all
+         overhead (alignment, bloblist header, record header). The bloblist
+         is set up in the first part of U-Boot to run (TPL, SPL or U-Boot
+         proper), and this sane bloblist is used for subsequent stages.
+
+config BLOBLIST_ADDR
+       hex "Address of bloblist"
+       depends on BLOBLIST
+       default 0xe000 if SANDBOX
+       help
+         Sets the address of the bloblist, set up by the first part of U-Boot
+         which runs. Subsequent U-Boot stages typically use the same address.
+
+endmenu
+
 source "common/spl/Kconfig"