Merge branch 'master' of git://git.denx.de/u-boot-net
[oweals/u-boot.git] / cmd / Kconfig
index b1cd1c969072a0c64f4d654c980d7dfa56d69cc7..175c6ad9e3338d0b83062eae932c3e0cd8afc812 100644 (file)
@@ -53,6 +53,17 @@ config SYS_PROMPT
          This string is displayed in the command line to the left of the
          cursor.
 
+config SYS_XTRACE
+       string "Command execution tracer"
+       depends on CMDLINE
+       default y if CMDLINE
+       help
+         This option enables the possiblity to print all commands before
+         executing them and after all variables are evaluated (similar
+         to Bash's xtrace/'set -x' feature).
+         To enable the tracer a variable "xtrace" needs to be defined in
+         the environment.
+
 menu "Autoboot options"
 
 config AUTOBOOT
@@ -212,7 +223,7 @@ config CMD_BOOTZ
 
 config CMD_BOOTI
        bool "booti"
-       depends on ARM64
+       depends on ARM64 || RISCV
        default y
        help
          Boot an AArch64 Linux Kernel image from memory.
@@ -226,7 +237,7 @@ config CMD_BOOTEFI
 
 config CMD_BOOTEFI_HELLO_COMPILE
        bool "Compile a standard EFI hello world binary for testing"
-       depends on CMD_BOOTEFI && (ARM || X86 || RISCV)
+       depends on CMD_BOOTEFI && !CPU_V7M && !SANDBOX
        default y
        help
          This compiles a standard EFI hello world application with U-Boot so
@@ -397,6 +408,14 @@ config CMD_SAVEENV
          Save all environment variables into the compiled-in persistent
          storage.
 
+config CMD_ERASEENV
+       bool "eraseenv"
+       default n
+       depends on CMD_SAVEENV
+       help
+         Erase environment variables from the compiled-in persistent
+         storage.
+
 config CMD_ENV_EXISTS
        bool "env exists"
        default y
@@ -420,6 +439,29 @@ config CMD_ENV_FLAGS
          be deleted. This command shows the variables that have special
          flags.
 
+config CMD_NVEDIT_EFI
+       bool "env [set|print] -e - set/print UEFI variables"
+       depends on EFI_LOADER
+       default y
+       imply HEXDUMP
+       help
+         UEFI variables are encoded as some form of U-Boot variables.
+         If enabled, we are allowed to set/print UEFI variables using
+         "env" command with "-e" option without knowing details.
+
+config CMD_NVEDIT_INFO
+       bool "env info - print or evaluate environment information"
+       help
+         Print environment information:
+         - env_valid : is environment valid
+         - env_ready : is environment imported into hash table
+         - env_use_default : is default environment used
+
+         This command can be optionally used for evaluation in scripts:
+         [-d] : evaluate whether default environment is used
+         [-p] : evaluate whether environment can be persisted
+         The result of multiple evaluations will be combined with AND.
+
 endmenu
 
 menu "Memory commands"
@@ -529,6 +571,13 @@ config CMD_MEMORY
            base - print or set address offset
            loop - initialize loop on address range
 
+config CMD_RANDOM
+       bool "random"
+       default y
+       depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
+       help
+         random - fill memory with random data
+
 config CMD_MEMTEST
        bool "memtest"
        help
@@ -610,6 +659,23 @@ config CMD_ADC
          Shows ADC device info and permit printing one-shot analog converted
          data from a named Analog to Digital Converter.
 
+config CMD_BCB
+       bool "bcb"
+       depends on MMC
+       depends on PARTITIONS
+       help
+         Read/modify/write the fields of Bootloader Control Block, usually
+         stored on the flash "misc" partition with its structure defined in:
+         https://android.googlesource.com/platform/bootable/recovery/+/master/
+         bootloader_message/include/bootloader_message/bootloader_message.h
+
+         Some real-life use-cases include (but are not limited to):
+         - Determine the "boot reason" (and act accordingly):
+           https://source.android.com/devices/bootloader/boot-reason
+         - Get/pass a list of commands from/to recovery:
+           https://android.googlesource.com/platform/bootable/recovery
+         - Inspect/dump the contents of the BCB fields
+
 config CMD_BIND
        bool "bind/unbind - Bind or unbind a device to/from a driver"
        depends on DM
@@ -904,15 +970,6 @@ config CMD_NVME
        help
          NVM Express device support
 
-config CMD_MMC_SPI
-       bool "mmc_spi - Set up MMC SPI device"
-       help
-         Provides a way to set up an MMC (Multimedia Card) SPI (Serial
-         Peripheral Interface) device. The device provides a means of
-         accessing an MMC device via SPI using a single data line, limited
-         to 20MHz. It is useful since it reduces the amount of protocol code
-         required.
-
 config CMD_ONENAND
        bool "onenand - access to onenand device"
        help
@@ -1014,11 +1071,13 @@ config CMD_SDRAM
 
 config CMD_SF
        bool "sf"
+       depends on DM_SPI_FLASH || SPI_FLASH
        help
          SPI Flash support
 
 config CMD_SF_TEST
        bool "sf test - Allow testing of SPI flash"
+       depends on CMD_SF
        help
          Provides a way to test that SPI flash is working correctly. The
          test is destructive, in that an area of SPI flash must be provided
@@ -1029,10 +1088,21 @@ config CMD_SF_TEST
          everything is working properly.
 
 config CMD_SPI
-       bool "sspi"
+       bool "sspi - Command to access spi device"
+       depends on SPI
        help
          SPI utility command.
 
+config DEFAULT_SPI_BUS
+       int "default spi bus used by sspi command"
+       depends on CMD_SPI
+       default 0
+
+config DEFAULT_SPI_MODE
+       hex "default spi mode used by sspi command (see include/spi.h)"
+       depends on CMD_SPI
+       default 0
+
 config CMD_TSI148
        bool "tsi148 - Command to access tsi148 device"
        help
@@ -1080,6 +1150,12 @@ config CMD_VIRTIO
        help
          VirtIO block device support
 
+config CMD_WDT
+       bool "wdt"
+       depends on WDT
+       help
+         This provides commands to control the watchdog timer devices.
+
 config CMD_AXI
        bool "axi"
        depends on AXI
@@ -1388,16 +1464,26 @@ config CMD_CLS
          Enable the 'cls' command which clears the screen contents
          on video frame buffer.
 
-config CMD_DISPLAY
-       bool "Enable the 'display' command, for character displays"
+config CMD_EFIDEBUG
+       bool "efidebug - display/configure UEFI environment"
+       depends on EFI_LOADER
+       select EFI_DEVICE_PATH_TO_TEXT
+       default n
+       help
+         Enable the 'efidebug' command which provides a subset of UEFI
+         shell utility with simplified functionality. It will be useful
+         particularly for managing boot parameters as  well as examining
+         various EFI status for debugging.
+
+config CMD_EXCEPTION
+       bool "exception - raise exception"
+       depends on ARM || RISCV || X86
        help
-         (this needs porting to driver model)
-         This enables the 'display' command which allows a string to be
-         displayed on a simple board-specific display. Implement
-         display_putc() to use it.
+         Enable the 'exception' command which allows to raise an exception.
 
 config CMD_LED
        bool "led"
+       depends on LED
        default y if LED
        help
          Enable the 'led' command which allows for control of LEDs supported
@@ -1856,7 +1942,7 @@ config CMD_TRACE
          Enables a command to control using of function tracing within
          U-Boot. This allows recording of call traces including timing
          information. The command can write data to memory for exporting
-         for analsys (e.g. using bootchart). See doc/README.trace for full
+         for analysis (e.g. using bootchart). See doc/README.trace for full
          details.
 
 config CMD_AVB
@@ -1879,7 +1965,6 @@ endmenu
 
 config CMD_UBI
        tristate "Enable UBI - Unsorted block images commands"
-       select CRC32
        select MTD_UBI
        help
          UBI is a software layer above MTD layer which admits use of LVM-like
@@ -1895,7 +1980,6 @@ config CMD_UBIFS
        tristate "Enable UBIFS - Unsorted block images filesystem commands"
        depends on CMD_UBI
        default y if CMD_UBI
-       select CRC32
        select LZO
        help
          UBIFS is a file system for flash devices which works on top of UBI.