diff options
Diffstat (limited to 'cmd/Kconfig')
-rw-r--r-- | cmd/Kconfig | 3128 |
1 files changed, 3128 insertions, 0 deletions
diff --git a/cmd/Kconfig b/cmd/Kconfig new file mode 100644 index 00000000000..eb615552a00 --- /dev/null +++ b/cmd/Kconfig @@ -0,0 +1,3128 @@ +menuconfig CMDLINE + bool "Command line interface" + default y + help + Enable U-Boot's command-line functions. This provides a means + to enter commands into U-Boot for a wide variety of purposes. It + also allows scripts (containing commands) to be executed. + Various commands and command categories can be individually enabled. + Depending on the number of commands enabled, this can add + substantially to the size of U-Boot. + +if CMDLINE + +config HUSH_PARSER + bool "Use hush shell" + help + This option enables the "hush" shell (from Busybox) as command line + interpreter, thus enabling powerful command line syntax like + if...then...else...fi conditionals or `&&' and '||' + constructs ("shell scripts"). + + If disabled, you get the old, much simpler behaviour with a somewhat + smaller memory footprint. + +menu "Hush flavor to use" +depends on HUSH_PARSER + +config HUSH_OLD_PARSER + bool "Use hush old parser" + default y + help + This option enables the old flavor of hush based on hush Busybox from + 2005. + + It is actually the default U-Boot shell when decided to use hush as shell. + +config HUSH_MODERN_PARSER + bool "Use hush modern parser" + help + This option enables the new flavor of hush based on hush upstream + Busybox. + + This parser is experimental and not well tested. + +config HUSH_SELECTABLE + bool + default y if HUSH_OLD_PARSER && HUSH_MODERN_PARSER +endmenu + +config CMDLINE_EDITING + bool "Enable command line editing" + default y + help + Enable editing and History functions for interactive command line + input operations + +config CMDLINE_PS_SUPPORT + bool "Enable support for changing the command prompt string at run-time" + depends on HUSH_PARSER + help + Only static string in the prompt is supported so far. The string is + obtained from environment variables PS1 and PS2. + +config AUTO_COMPLETE + bool "Enable auto complete using TAB" + default y + help + Enable auto completion of commands using TAB. + +config SYS_LONGHELP + bool "Enable long help messages" + default y + help + Defined when you want long help messages included + Do not set this option when short of memory. + +config SYS_PROMPT + string "Shell prompt" + default "Zynq> " if ARCH_ZYNQ + default "ZynqMP> " if ARCH_ZYNQMP + default "=> " + help + This string is displayed in the command line to the left of the + cursor. + +config SYS_PROMPT_HUSH_PS2 + string "Hush shell secondary prompt" + depends on HUSH_PARSER + default "> " + help + This defines the secondary prompt string, which is + printed when the command interpreter needs more input + to complete a command. Usually "> ". + +config SYS_MAXARGS + int "Maximum number arguments accepted by commands" + default 64 + +config SYS_XTRACE + bool "Command execution tracer" + default y + 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. + +config BUILD_BIN2C + bool + +comment "Commands" + +menu "Info commands" + +config CMD_ACPI + bool "acpi" + depends on ACPI + default y + help + List and dump ACPI tables. ACPI (Advanced Configuration and Power + Interface) is used mostly on x86 for providing information to the + Operating System about devices in the system. The tables are set up + by the firmware, typically U-Boot but possibly an earlier firmware + module, if U-Boot is chain-loaded from something else. ACPI tables + can also include code, to perform hardware-specific tasks required + by the Operating Systems. This allows some amount of separation + between the firmware and OS, and is particularly useful when you + want to make hardware changes without the OS needing to be adjusted. + +config CMD_ADDRMAP + bool "addrmap" + depends on ADDR_MAP + default y + help + List non-identity virtual-physical memory mappings for 32-bit CPUs. + +config CMD_BDI + bool "bdinfo" + default y + help + Print board info + +config CMD_BDINFO_EXTRA + bool "bdinfo extra features" + default y if SANDBOX || X86 + help + Show additional information about the board. This uses a little more + code space but provides more options, particularly those useful for + bringup, development and debugging. + +config CMD_CONFIG + bool "config" + default SANDBOX + select BUILD_BIN2C + select GZIP + help + Print ".config" contents. + + If this option is enabled, the ".config" file contents are embedded + in the U-Boot image and can be printed on the console by the "config" + command. This provides information of which options are enabled on + the running U-Boot. + +config CMD_CONSOLE + bool "coninfo" + default y + help + Print console devices and information. + +config CMD_CPU + bool "cpu" + depends on CPU + help + Print information about available CPUs. This normally shows the + number of CPUs, type (e.g. manufacturer, architecture, product or + internal name) and clock frequency. Other information may be + available depending on the CPU driver. + +config CMD_UFETCH + bool "U-Boot fetch" + help + Fetch utility for U-Boot (akin to neofetch). Prints information + about U-Boot and the board it is running on in a pleasing format. + +config CMD_FWU_METADATA + bool "fwu metadata read" + depends on FWU_MULTI_BANK_UPDATE + imply HEXDUMP if FWU_MDATA_V2 + help + Command to read the metadata and dump it's contents + +config CMD_HELP + bool "help" + default y + help + Command to show help information about other commands. + +config CMD_HISTORY + bool "history" + depends on CMDLINE_EDITING + help + Show the command-line history, i.e. a list of commands that are in + the history buffer. + +config CMD_HISTORY_USE_CALLOC + bool "dynamically allocate memory" + default y + depends on CMD_HISTORY + help + Saying Y to this will use calloc to get the space for history + storing. Otherwise the history buffer will be an uninitialized + static array directly, without the memory allocation, and it is + writable after relocation to RAM. If u-boot is running from ROM + all the time or unsure, say Y to this. + +config CMD_LICENSE + bool "license" + select BUILD_BIN2C + depends on GZIP + help + Print GPL license text + +config CMD_PMC + bool "pmc" + help + Provides access to the Intel Power-Management Controller (PMC) so + that its state can be examined. This does not currently support + changing the state but it is still useful for debugging and seeing + what is going on. + +config CMD_REGINFO + bool "reginfo" + depends on PPC + help + Register dump + +config CMD_TCPM + bool "tcpm" + depends on TYPEC_TCPM + help + Show voltage and current negotiated via USB PD as well as the + current state of the Type C Port Manager (TCPM) state machine. + +config CMD_TLV_EEPROM + bool "tlv_eeprom" + depends on I2C_EEPROM + select CRC32 + help + Display and program the system EEPROM data block in ONIE Tlvinfo + format. TLV stands for Type-Length-Value. + +config SPL_CMD_TLV_EEPROM + bool "tlv_eeprom for SPL" + depends on SPL_I2C_EEPROM + select SPL_DRIVERS_MISC + select SPL_CRC32 + help + Read system EEPROM data block in ONIE Tlvinfo format from SPL. + +config CMD_SBI + bool "sbi" + depends on RISCV_SMODE && SBI_V02 + help + Display information about the SBI implementation. + +config CMD_SMBIOS + bool "smbios" + depends on SMBIOS + help + Display the SMBIOS information. + +endmenu + +menu "Boot commands" + +config CMD_BOOTD + bool "bootd" + default y + help + Run the command stored in the environment "bootcmd", i.e. + "bootd" does the same thing as "run bootcmd". + +config CMD_BOOTM + bool "bootm" + default y + help + Boot an application image from the memory. + +config CMD_BOOTM_PRE_LOAD + bool "enable pre-load on bootm" + depends on CMD_BOOTM + depends on IMAGE_PRE_LOAD + help + Enable support of stage pre-load for the bootm command. + This stage allow to check or modify the image provided + to the bootm command. + +config CMD_BOOTDEV + bool "bootdev" + depends on BOOTSTD + default y if BOOTSTD_FULL + help + Support listing available bootdevs (boot devices) which can provide an + OS to boot, as well as showing information about a particular one. + + This command is not necessary for bootstd to work. + +config CMD_BOOTFLOW + bool "bootflow" + depends on BOOTSTD + default y + help + Support scanning for bootflows available with the bootdevs. The + bootflows can optionally be booted. + +config CMD_BOOTFLOW_FULL + bool "bootflow - extract subcommands" + depends on BOOTSTD_FULL + default y + help + Add the ability to list the available bootflows, select one and obtain + information about it. + + This command is not necessary for bootstd to work. + +config CMD_BOOTMETH + bool "bootmeth" + depends on BOOTSTD + default y if BOOTSTD_FULL + help + Support listing available bootmeths (methods used to boot an + Operating System), as well as selecting the order that the bootmeths + are used. + + This command is not necessary for bootstd to work. + +config CMD_BOOTSTD + bool "bootstd" + depends on BOOTSTD + default y if BOOTSTD_FULL + help + Provide general information and control for bootstd. + + This command is not necessary for bootstd to work. + +config BOOTM_EFI + bool "Support booting UEFI FIT images" + depends on EFI_BINARY_EXEC && CMD_BOOTM && FIT + default y + help + Support booting UEFI FIT images via the bootm command. + +config BOOTM_ELF + bool "Support booting ELF images" + depends on CMD_BOOTM && LIB_ELF + default y if LIB_ELF + help + Support booting ELF images via the bootm command. + +config CMD_BOOTZ + bool "bootz" + help + Boot the Linux zImage + +config CMD_BOOTI + bool "booti" + depends on ARM64 || RISCV || SANDBOX + default y + help + Boot an AArch64 Linux Kernel image from memory. + +config BOOTM_LINUX + bool "Support booting Linux OS images" + depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI + default y + help + Support booting the Linux kernel directly via a command such as bootm + or booti or bootz. + +config BOOTM_NETBSD + bool "Support booting NetBSD (non-EFI) loader images" + depends on CMD_BOOTM + default y + help + Support booting NetBSD via the bootm command. + +config BOOTM_OPENRTOS + bool "Support booting OPENRTOS / FreeRTOS images" + depends on CMD_BOOTM + help + Support booting OPENRTOS / FreeRTOS via the bootm command. + +config BOOTM_OSE + bool "Support booting Enea OSE images" + depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86) + depends on CMD_BOOTM + help + Support booting Enea OSE images via the bootm command. + +config BOOTM_PLAN9 + bool "Support booting Plan9 OS images" + depends on CMD_BOOTM + default y + help + Support booting Plan9 images via the bootm command. + +config BOOTM_RTEMS + bool "Support booting RTEMS OS images" + depends on CMD_BOOTM + default y + help + Support booting RTEMS images via the bootm command. + +config CMD_SEAMA + bool "Support read SEAMA NAND images" + depends on (TARGET_BCMNS || TARGET_BCMNS3) && MTD_RAW_NAND + help + Support reading NAND Seattle Image (SEAMA) images. + +config CMD_UPL + bool "upl - Universal Payload Specification" + help + Provides commands to deal with UPL payloads and handoff information. + U-Boot supports generating and accepting handoff information. The + mkimage tool will eventually support creating payloads. + +config CMD_VBE + bool "vbe - Verified Boot for Embedded" + depends on BOOTMETH_VBE + default y if BOOTSTD_FULL + help + Provides various subcommands related to VBE, such as listing the + available methods, looking at the state and changing which method + is used to boot. Updating the parameters is not currently + supported. + +config BOOTM_VXWORKS + bool "Support booting VxWorks OS images" + depends on CMD_BOOTM + default y + help + Support booting VxWorks images via the bootm command. + +config CMD_BOOTEFI + bool "bootefi" + depends on EFI_LOADER + default y + help + Boot an EFI image from memory. + +if CMD_BOOTEFI +config CMD_BOOTEFI_BINARY + bool "Allow booting an EFI binary directly" + depends on EFI_BINARY_EXEC + default y + help + Select this option to enable direct execution of binary at 'bootefi'. + This subcommand will allow you to load the UEFI binary using + other U-Boot commands or external methods and then run it. + +config CMD_BOOTEFI_BOOTMGR + bool "UEFI Boot Manager command" + depends on EFI_BOOTMGR + default y + help + Select this option to enable the 'bootmgr' subcommand of 'bootefi'. + This subcommand will allow you to select the UEFI binary to be booted + via UEFI variables Boot####, BootOrder, and BootNext. + +config CMD_BOOTEFI_HELLO + bool "Allow booting a standard EFI hello world for testing" + depends on CMD_BOOTEFI_BINARY && BOOTEFI_HELLO_COMPILE + default y if CMD_BOOTEFI_SELFTEST + help + This adds a standard EFI hello world application to U-Boot so that + it can be used with the 'bootefi hello' command. This is useful + for testing that EFI is working at a basic level, and for bringing + up EFI support on a new architecture. + +source "lib/efi_selftest/Kconfig" +endif + +config CMD_BOOTMENU + bool "bootmenu" + select MENU + select CHARSET + help + Add an ANSI terminal boot menu command. + +config CMD_ADTIMG + bool "adtimg" + help + Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from + image into RAM, dump image structure information, etc. Those dtb/dtbo + files should be merged in one dtb further, which needs to be passed to + the kernel, as part of a boot process. + +config CMD_ABOOTIMG + bool "abootimg" + depends on ANDROID_BOOT_IMAGE + help + Android Boot Image manipulation commands. Allows one to extract + images contained in boot.img, like kernel, ramdisk, dtb, etc, and + obtain corresponding meta-information from boot.img. + + See doc/android/boot-image.rst for details. + +config CMD_CEDIT + bool "cedit - Configuration editor" + depends on CEDIT + default y + help + Provides a command to allow editing of board configuration and + providing a UI for the user to adjust settings. Subcommands allow + loading and saving of configuration as well as showing an editor. + +config CMD_ELF + bool "bootelf" + default y + select LIB_ELF + help + Boot an ELF image from memory. + +config CMD_ELF_BOOTVX + bool "bootvx" + default y + depends on CMD_ELF + help + Boot a vxWorks image from memory + +config CMD_ELF_FDT_SETUP + bool "Flattened Device Tree setup in bootelf cmd" + depends on CMD_ELF + select OF_LIBFDT + help + Do FDT setup in bootelf command optionally by param -d, which + allows to bring additional system info (e.g. /memory node) to + the Operating System or application. + +config CMD_FDT + bool "Flattened Device Tree utility commands" + default y + depends on OF_LIBFDT + help + Do FDT related setup before booting into the Operating System. + +config SUPPORT_EXTENSION_SCAN + bool + +config CMD_EXTENSION + bool "Extension board management command" + select CMD_FDT + depends on SUPPORT_EXTENSION_SCAN + help + Enables the "extension" command, which allows to detect + extension boards connected to the system, and apply + corresponding Device Tree overlays. + +config CMD_GO + bool "go" + default y + help + Start an application at a given address. + +config CMD_RUN + bool "run" + default y + help + Run the command in the given environment variable. + +config CMD_IMI + bool "iminfo" + default y + help + Print header information for application image. + +config CMD_IMLS + bool "imls" + depends on MTD_NOR_FLASH || FLASH_CFI_DRIVER + help + List all images found in flash + +config CMD_XIMG + bool "imxtract" + default y + help + Extract a part of a multi-image. + +config SYS_XIMG_LEN + hex "imxtract max gunzip size" + default 0x800000 + depends on CMD_XIMG && GZIP + help + This provides the size of the commad-line argument area + used by imxtract for extracting pieces of FIT image. + It should be large enough to fit uncompressed size of + FIT piece we are extracting. + +config CMD_SPL + bool "spl export - Export boot information for Falcon boot" + depends on SPL + help + Falcon mode allows booting directly from SPL into an Operating + System such as Linux, thus skipping U-Boot proper. See + doc/README.falcon for full information about how to use this + command. + +config CMD_SPL_NAND_OFS + hex "Offset of OS args or dtb for Falcon-mode NAND boot" + depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT) + default 0x0 + help + This provides the offset of the command line arguments for Linux + when booting from NAND in Falcon mode. See doc/README.falcon + for full information about how to use this option (and also see + board/gateworks/gw_ventana/README for an example). + +config CMD_SPL_NOR_OFS + hex "Offset of OS args or dtb for Falcon-mode NOR boot" + depends on CMD_SPL && SPL_NOR_SUPPORT + default 0x0 + help + This provides the offset of the command line arguments or dtb for + Linux when booting from NOR in Falcon mode. + +config CMD_SPL_WRITE_SIZE + hex "Size of argument area" + depends on CMD_SPL + default 0x2000 + help + This provides the size of the command-line argument area in NAND + flash used by Falcon-mode boot. See the documentation until CMD_SPL + for detail. + +config CMD_THOR_DOWNLOAD + bool "thor - TIZEN 'thor' download" + select DFU + select USB_FUNCTION_THOR + depends on USB_GADGET_DOWNLOAD + help + Implements the 'thor' download protocol. This is a way of + downloading a software update over USB from an attached host. + There is no documentation about this within the U-Boot source code + but you should be able to find something on the interwebs. + +config THOR_RESET_OFF + bool "thor: Disable reset on completion" + depends on CMD_THOR_DOWNLOAD + +config CMD_ZBOOT + bool "zboot - x86 boot command" + depends on ZBOOT + default y + help + With x86 machines it is common to boot a bzImage file which + contains both a kernel and a setup.bin file. The latter includes + configuration information from the dark ages which x86 boards still + need to pick things out of. + + Consider using FIT in preference to this since it supports directly + booting both 32- and 64-bit kernels, as well as secure boot. + Documentation is available in doc/usage/fit/x86-fit-boot.rst. + +endmenu + +menu "Environment commands" + +config CMD_ASKENV + bool "ask for env variable" + help + Ask for environment variable + +config CMD_EXPORTENV + bool "env export" + default y + help + Export environments. + +config CMD_IMPORTENV + bool "env import" + default y + help + Import environments. + +config CMD_EDITENV + bool "editenv" + default y + help + Edit environment variable. + +config CMD_GREPENV + bool "search env" + help + Allow for searching environment variables + +config CMD_SAVEENV + bool "saveenv" + default y + help + Save all environment variables into the compiled-in persistent + storage. + +config CMD_ERASEENV + bool "eraseenv" + depends on CMD_SAVEENV + help + Erase environment variables from the compiled-in persistent + storage. + +config CMD_ENV_EXISTS + bool "env exists" + default y + help + Check if a variable is defined in the environment for use in + shell scripting. + +config CMD_ENV_CALLBACK + bool "env callbacks - print callbacks and their associated variables" + help + Some environment variable have callbacks defined by + U_BOOT_ENV_CALLBACK. These are called when the variable changes. + For example changing "baudrate" adjust the serial baud rate. This + command lists the currently defined callbacks. + +config CMD_ENV_FLAGS + bool "env flags -print variables that have non-default flags" + help + Some environment variables have special flags that control their + behaviour. For example, serial# can only be written once and cannot + 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 + 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_INDIRECT + bool "env indirect - Sets environment value from another" + +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 + [-q] : quiet output + The result of multiple evaluations will be combined with AND. + +config CMD_NVEDIT_LOAD + bool "env load" + help + Load all environment variables from the compiled-in persistent + storage. + +config CMD_NVEDIT_SELECT + bool "env select" + help + Select the compiled-in persistent storage of environment variables. + +endmenu + +menu "Memory commands" + +config CMD_BINOP + bool "binop" + help + Compute binary operations (xor, or, and) of byte arrays of arbitrary + size from memory and store the result in memory or the environment. + +config CMD_BLOBLIST + bool "bloblist" + depends on BLOBLIST + default y + help + Show information about the bloblist, a collection of binary blobs + held in memory that persist between SPL and U-Boot. In the case of + x86 devices the bloblist can be used to hold ACPI tables so that they + remain available in memory. + +config CMD_CRC32 + bool "crc32" + default y + select HASH + help + Compute CRC32. + +config CRC32_VERIFY + bool "crc32 -v" + depends on CMD_CRC32 + help + Add -v option to verify data against a crc32 checksum. + +config CMD_EEPROM + bool "eeprom - EEPROM subsystem" + depends on DM_I2C || SYS_I2C_LEGACY + help + (deprecated, needs conversion to driver model) + Provides commands to read and write EEPROM (Electrically Erasable + Programmable Read Only Memory) chips that are connected over an + I2C bus. + +config CMD_EEPROM_LAYOUT + bool "Enable layout-aware eeprom commands" + depends on CMD_EEPROM + help + (deprecated, needs conversion to driver model) + When enabled, additional eeprom sub-commands become available. + + eeprom print - prints the contents of the eeprom in a human-readable + way (eeprom layout fields, and data formatted to be fit for human + consumption). + + eeprom update - allows user to update eeprom fields by specifying + the field name, and providing the new data in a human readable format + (same format as displayed by the eeprom print command). + + Both commands can either auto detect the layout, or be told which + layout to use. + + Feature API: + __weak int parse_layout_version(char *str) + - override to provide your own layout name parsing + __weak void __eeprom_layout_assign(struct eeprom_layout *layout, + int layout_version); + - override to setup the layout metadata based on the version + __weak int eeprom_layout_detect(unsigned char *data) + - override to provide your own algorithm for detecting layout + version + eeprom_field.c + - contains various printing and updating functions for common + types of eeprom fields. Can be used for defining + custom layouts. + +config EEPROM_LAYOUT_VERSIONS + bool "Support specifying eeprom layout version" + depends on CMD_EEPROM_LAYOUT + help + Support specifying eeprom layout version in the 'eeprom' command + via the -l option. + +config EEPROM_LAYOUT_HELP_STRING + string "Tells user what layout names are supported" + depends on EEPROM_LAYOUT_VERSIONS + default "<not defined>" + help + Help printed with the LAYOUT VERSIONS part of the 'eeprom' + command's help. + +config SYS_I2C_EEPROM_BUS + int "I2C bus of the EEPROM device." + depends on CMD_EEPROM + default 0 + +config SYS_I2C_EEPROM_ADDR_LEN + int "Length in bytes of the EEPROM memory array address" + depends on CMD_EEPROM || ID_EEPROM + default 1 + range 1 2 + help + Note: This is NOT the chip address length! + +config SYS_EEPROM_SIZE + depends on CMD_EEPROM + int "Size in bytes of the EEPROM device" + default 256 + +config SYS_EEPROM_PAGE_WRITE_BITS + int "Number of bits used to address bytes in a single page" + depends on CMD_EEPROM || ENV_IS_IN_EEPROM + default 8 + help + The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS. + A 64 byte page, for example would require six bits. + +config SYS_EEPROM_PAGE_WRITE_DELAY_MS + int "Number of milliseconds to delay between page writes" + depends on CMD_EEPROM || CMD_I2C + default 0 + +config LOOPW + bool "loopw" + help + Infinite write loop on address range + +config CMD_MD5SUM + bool "md5sum" + select MD5 + select HASH + help + Compute MD5 checksum. + +config MD5SUM_VERIFY + bool "md5sum -v" + depends on CMD_MD5SUM + help + Add -v option to verify data against an MD5 checksum. + +config CMD_MEMINFO + bool "meminfo" + default y if SANDBOX || X86 + help + Display memory information. + +config CMD_MEMINFO_MAP + bool "- with memory map" + depends on CMD_MEMINFO + default y if SANDBOX || X86 + help + Shows a memory map, in addition to just the DRAM size. This allows + seeing where U-Boot's memory area is, at the top of DRAM, as well as + detail about each piece of it. + + See doc/usage/cmd/meminfo.rst for more information. + +config CMD_MEMORY + bool "md, mm, nm, mw, cp, cmp, base, loop" + default y + help + Memory commands. + md - memory display + mm - memory modify (auto-incrementing address) + nm - memory modify (constant address) + mw - memory write (fill) + cp - memory copy + cmp - memory compare + base - print or set address offset + loop - initialize loop on address range + +config CMD_MEM_SEARCH + bool "ms - Memory search" + help + Memory-search command + + This allows searching through a region of memory looking for hex + data (byte, 16-bit word, 32-bit long, also 64-bit on machines that + support it). It is also possible to search for a string. The + command accepts a memory range and a list of values to search for. + The values need to appear in memory in the same order they are given + in the command. At most 10 matches can be returned at a time, but + pressing return will show the next 10 matches. Environment variables + are set for use with scripting (memmatches, memaddr, mempos). + +config CMD_MX_CYCLIC + bool "Enable cyclic md/mw commands" + depends on CMD_MEMORY + help + Add the "mdc" and "mwc" memory commands. These are cyclic + "md/mw" commands. + Examples: + + => mdc.b 10 4 500 + This command will print 4 bytes (10,11,12,13) each 500 ms. + + => mwc.l 100 12345678 10 + This command will write 12345678 to address 100 all 10 ms. + +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 + Simple RAM read/write test. + +if CMD_MEMTEST + +config SYS_ALT_MEMTEST + bool "Alternative test" + help + Use a more complete alternative memory test. + +if SYS_ALT_MEMTEST + +config SYS_ALT_MEMTEST_BITFLIP + bool "Bitflip test" + default y + help + The alternative memory test includes bitflip test since 2020.07. + The bitflip test significantly increases the overall test time. + Bitflip test can optionally be disabled here. + +endif + +config SYS_MEMTEST_START + hex "default start address for mtest" + default 0x0 + help + This is the default start address for mtest for simple read/write + test. If no arguments are given to mtest, default address is used + as start address. + +config SYS_MEMTEST_END + hex "default end address for mtest" + default 0x1000 + help + This is the default end address for mtest for simple read/write + test. If no arguments are given to mtest, default address is used + as end address. + +endif + +config CMD_SHA1SUM + bool "sha1sum" + select SHA1 + help + Compute SHA1 checksum. + +config SHA1SUM_VERIFY + bool "sha1sum -v" + depends on CMD_SHA1SUM + help + Add -v option to verify data against a SHA1 checksum. + +config CMD_STRINGS + bool "strings - display strings in memory" + help + This works similarly to the Unix 'strings' command except that it + works with a memory range. String of printable characters found + within the range are displayed. The minimum number of characters + for a sequence to be considered a string can be provided. + +endmenu + +menu "Compression commands" + +config CMD_LZMADEC + bool "lzmadec" + default y if CMD_BOOTI + select LZMA + help + Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm) + image from memory. + +config CMD_UNLZ4 + bool "unlz4" + default y if CMD_BOOTI + select LZ4 + help + Support decompressing an LZ4 image from memory region. + +config CMD_UNZIP + bool "unzip" + default y if CMD_BOOTI + select GZIP + help + Uncompress a zip-compressed memory region. + +config CMD_ZIP + bool "zip" + select GZIP_COMPRESSED + help + Compress a memory region with zlib deflate method. + +endmenu + +menu "Device access commands" + +config CMD_ARMFFA + bool "Arm FF-A test command" + depends on ARM_FFA_TRANSPORT + help + Provides a test command for the FF-A support + supported options: + - Listing the partition(s) info + - Sending a data pattern to the specified partition + - Displaying the arm_ffa device info + +config CMD_ARMFLASH + bool "armflash" + depends on FLASH_CFI_DRIVER + help + ARM Ltd reference designs flash partition access + +config CMD_ADC + bool "adc - Access Analog to Digital Converters info and data" + select ADC + depends on DM_REGULATOR + help + 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 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 + imply CMD_DM + help + Bind or unbind a device to/from a driver from the command line. + This is useful in situations where a device may be handled by several + drivers. For example, this can be used to bind a UDC to the usb ether + gadget driver from the command line. + +config CMD_CLK + bool "clk - Show and set clock frequencies" + depends on CLK + help + Show and set clock frequencies managed by CLK uclass drivers. + +config CMD_DEMO + bool "demo - Demonstration commands for driver model" + depends on DM + help + Provides a 'demo' command which can be used to play around with + driver model. To use this properly you will need to enable one or + both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE). + Otherwise you will always get an empty list of devices. The demo + devices are defined in the sandbox device tree, so the easiest + option is to use sandbox and pass the -d point to sandbox's + u-boot.dtb file. + +config CMD_DFU + bool "dfu" + select DFU + help + Enables the command "dfu" which is used to have U-Boot create a DFU + class device via USB. This command requires that the "dfu_alt_info" + environment variable be set and define the alt settings to expose to + the host. + +config CMD_DM + bool "dm - Access to driver model information" + depends on DM + help + Provides access to driver model data structures and information, + such as a list of devices, list of uclasses and the state of each + device (e.g. activated). This is not required for operation, but + can be useful to see the state of driver model for debugging or + interest. + +config CMD_FASTBOOT + bool "fastboot - Android fastboot support" + depends on FASTBOOT + help + This enables the command "fastboot" which enables the Android + fastboot mode for the platform. Fastboot is a protocol for + downloading images, flashing and device control used on + Android devices. Fastboot requires either the network stack + enabled or support for acting as a USB device. + + See doc/android/fastboot.rst for more information. + +config CMD_FLASH + bool "flinfo, erase, protect" + default y + depends on FLASH_CFI_DRIVER || MTD_NOR_FLASH + help + NOR flash support. + flinfo - print FLASH memory information + erase - FLASH memory + protect - enable or disable FLASH write protection + +config CMD_FPGA + bool "fpga" + depends on FPGA + default y + help + FPGA support. + +config CMD_FPGA_LOADB + bool "fpga loadb - load bitstream file" + default y + depends on CMD_FPGA && FPGA_XILINX + help + Supports loading an FPGA device from a bitstream file (.BIT) + +config CMD_FPGA_LOADP + bool "fpga loadp - load partial bitstream" + depends on CMD_FPGA + help + Supports loading an FPGA device from a bitstream buffer (.BIN) + containing a partial bitstream. + +config CMD_FPGA_LOADBP + bool "fpga loadbp - load partial bitstream file" + depends on CMD_FPGA && FPGA_XILINX + help + Supports loading an FPGA device from a bitstream file (.BIT) + containing a partial bitstream. + +config CMD_FPGA_LOADFS + bool "fpga loadfs - load bitstream from FAT filesystem" + depends on CMD_FPGA && FPGA_XILINX + help + Supports loading an FPGA device from a FAT filesystem. + +config CMD_FPGA_LOADMK + bool "fpga loadmk - load bitstream from image" + depends on CMD_FPGA + help + Supports loading an FPGA device from a image generated by mkimage. + +config CMD_FPGA_LOAD_SECURE + bool "fpga loads - loads secure bitstreams" + depends on CMD_FPGA && FPGA_XILINX + select FPGA_LOAD_SECURE + help + Enables the fpga loads command which is used to load secure + (authenticated or encrypted or both) bitstreams on to FPGA. + +config CMD_FPGAD + bool "fpgad - dump FPGA registers" + depends on GDSYS_LEGACY_DRIVERS + help + (legacy, needs conversion to driver model) + Provides a way to dump FPGA registers by calling the board-specific + fpga_get_reg() function. This functions similarly to the 'md' + command. + +config CMD_FUSE + bool "fuse - support for the fuse subssystem" + depends on !COMPILE_TEST + help + (deprecated - needs conversion to driver model) + This allows reading, sensing, programming or overriding fuses + which control the behaviour of the device. The command uses the + fuse_...() API. + +config CMD_FUSE_WRITEBUFF + bool "Support for the fuse writebuff" + depends on CMD_FUSE + help + This allows programming fuses, which control the behaviour of + the device, using a structured buffer in memory. The command + uses the fuse_writebuff() API. + +config CMD_GPIO + bool "gpio" + help + GPIO support. + +config CMD_GPIO_READ + bool "gpio read - save GPIO value to variable" + depends on CMD_GPIO + help + Enables the 'gpio read' command that saves the value + of a GPIO pin to a variable. + +config CMD_PWM + bool "pwm" + depends on DM_PWM + help + Control PWM channels, this allows invert/config/enable/disable PWM channels. + +config CMD_GPT + bool "GPT (GUID Partition Table) command" + select EFI_PARTITION + select PARTITION_UUIDS + imply RANDOM_UUID + help + Enable the 'gpt' command to ready and write GPT style partition + tables. + +config CMD_GPT_RENAME + bool "GPT partition renaming commands" + depends on CMD_GPT + help + Enables the 'gpt' command to interchange names on two GPT + partitions via the 'gpt swap' command or to rename single + partitions via the 'rename' command. + +config CMD_IDE + bool "ide - Support for IDE drivers" + depends on !COMPILE_TEST + select IDE + help + Provides an 'ide' command which allows accessing the IDE drive, + resetting the IDE interface, printing the partition table and + geting device info. It also enables the 'diskboot' command which + permits booting from an IDE drive. + +config CMD_IO + bool "io - Support for performing I/O accesses" + help + Provides an 'iod' command to display I/O space and an 'iow' command + to write values to the I/O space. This can be useful for manually + checking the state of devices during boot when debugging device + drivers, etc. + +config CMD_IOTRACE + bool "iotrace - Support for tracing I/O activity" + help + Provides an 'iotrace' command which supports recording I/O reads and + writes in a trace buffer in memory . It also maintains a checksum + of the trace records (even if space is exhausted) so that the + sequence of I/O accesses can be verified. + + When debugging drivers it is useful to see what I/O accesses were + done and in what order. + + Even if the individual accesses are of little interest it can be + useful to verify that the access pattern is consistent each time + an operation is performed. In this case a checksum can be used to + characterise the operation of a driver. The checksum can be compared + across different runs of the operation to verify that the driver is + working properly. + + In particular, when performing major refactoring of the driver, where + the access pattern should not change, the checksum provides assurance + that the refactoring work has not broken the driver. + + This works by sneaking into the io.h heder for an architecture and + redirecting I/O accesses through iotrace's tracing mechanism. + + For now no commands are provided to examine the trace buffer. The + format is fairly simple, so 'md' is a reasonable substitute. + + Note: The checksum feature is only useful for I/O regions where the + contents do not change outside of software control. Where this is not + suitable you can fall back to manually comparing the addresses. It + might be useful to enhance tracing to only checksum the accesses and + not the data read/written. + +config CMD_I2C + bool "i2c" + help + I2C support. + +config CMD_I3C + bool "i3c" + depends on I3C + help + Enable command to list i3c devices connected to the i3c controller + and perform read and write on the connected i3c devices. + +config CMD_W1 + depends on W1 + default y if W1 + bool "w1 - Support for Dallas 1-Wire protocol" + help + Dallas 1-wire protocol support + +config CMD_LOADB + bool "loadb" + default y + help + Load a binary file over serial line. + +config CMD_LOADM + bool "loadm" + help + Load a binary over memory mapped. + +config CMD_LOADS + bool "loads - Load a file over serial in S-Record format" + default y + help + Load an S-Record file over serial line + +config LOADS_ECHO + bool "Echo all characters received during a loads back to console" + depends on CMD_LOADS + help + If enabled, all characters received during a serial download (using + the "loads" command) are echoed back. This might be needed by some + terminal emulations (like "cu"), but may as well just take time on + others. This sets the initial value of the "loads_echo" environment + variable to 1. + +config CMD_SAVES + bool "saves - Save a file over serial in S-Record format" + depends on CMD_LOADS + help + Provides a way to save a binary file using the Motorola S-Record + format over the serial line. + +config SYS_LOADS_BAUD_CHANGE + bool "Enable a temporary baudrate change during loads/saves command" + depends on CMD_LOADS || CMD_SAVES + +config CMD_LOADXY_TIMEOUT + int "loadxy_timeout" + range 0 2000 + default 90 + help + Initial timeout for loadx and loady commands. Zero means infinity. + +config CMD_LSBLK + depends on BLK + bool "lsblk - list block drivers and devices" + help + Print list of available block device drivers, and for each, the list + of known block devices. + +config CMD_MBR + bool "MBR (Master Boot Record) command" + select DOS_PARTITION + help + Enable the 'mbr' command to ready and write MBR (Master Boot Record) + style partition tables. + +config CMD_MISC + bool "misc" + depends on MISC + help + Enable the command "misc" for accessing miscellaneous devices with + a MISC uclass driver. The command provides listing all MISC devices + as well as read and write functionalities via their drivers. + +config CMD_MMC + bool "mmc" + depends on MMC + help + MMC memory mapped support. + +if CMD_MMC + +config CMD_BKOPS_ENABLE + bool "mmc bkops enable" + depends on CMD_MMC + help + Enable command for setting manual background operations handshake + on a eMMC device. The feature is optionally available on eMMC devices + conforming to standard >= 4.41. + +config CMD_MMC_REG + bool "Enable support for reading card registers in the mmc command" + depends on CMD_MMC + help + Enable the commands for reading card registers. This is useful + mostly for debugging or extracting details from the card. + +config CMD_MMC_RPMB + bool "Enable support for RPMB in the mmc command" + depends on SUPPORT_EMMC_RPMB + help + Enable the commands for reading, writing and programming the + key for the Replay Protection Memory Block partition in eMMC. + +config CMD_MMC_SWRITE + bool "mmc swrite" + depends on MMC_WRITE + select IMAGE_SPARSE + help + Enable support for the "mmc swrite" command to write Android sparse + images to eMMC. + +config MMC_SPEED_MODE_SET + bool "set speed mode using mmc command" + help + Enable setting speed mode using mmc rescan and mmc dev commands. + The speed mode is provided as the last argument in these commands + and is indicated using the index from enum bus_mode in + include/mmc.h. A speed mode can be set only if it has already + been enabled in the device tree. + +endif + +config CMD_CLONE + bool "clone" + depends on BLK + help + Enable storage cloning over block devices, useful for + initial flashing by external block device without network + or usb support. + +config CMD_OPTEE_RPMB + bool "Enable read/write support on RPMB via OPTEE" + depends on (SUPPORT_EMMC_RPMB && OPTEE) || SANDBOX_TEE + default y if SANDBOX_TEE + select OPTEE_TA_AVB if SANDBOX_TEE + help + Enable the commands for reading, writing persistent named values + in the Replay Protection Memory Block partition in eMMC by + using Persistent Objects in OPTEE + +config CMD_OPTEE + bool "Enable OP-TEE commands" + depends on OPTEE + help + OP-TEE commands support. + +config CMD_MTD + bool "mtd" + depends on MTD + select MTD_PARTITIONS + help + MTD commands support. + +config CMD_MTD_OTP + bool "mtd otp" + depends on CMD_MTD + select HEXDUMP + help + MTD commands for OTP access. + +config CMD_MUX + bool "mux" + depends on MULTIPLEXER + help + List, select, and deselect mux controllers on the fly. + +config CMD_NAND + bool "nand" + default y if NAND_SUNXI + depends on MTD_RAW_NAND + help + NAND support. + +if CMD_NAND +config CMD_NAND_TRIMFFS + bool "nand write.trimffs" + default y if ARCH_SUNXI + help + Allows one to skip empty pages when flashing something on a NAND. + +config CMD_NAND_LOCK_UNLOCK + bool "nand lock/unlock" + help + NAND locking support. + +config CMD_NAND_TORTURE + bool "nand torture" + help + NAND torture support. + +config CMD_NAND_WATCH + bool "nand watch" + help + NAND watch bitflip support. + +endif # CMD_NAND + +config CMD_NVME + bool "nvme" + depends on NVME + default y if NVME + help + NVM Express device support + +config CMD_ONENAND + bool "onenand - access to onenand device" + depends on MTD + depends on !COMPILE_TEST + help + OneNAND is a brand of NAND ('Not AND' gate) flash which provides + various useful features. This command allows reading, writing, + and erasing blocks. It allso provides a way to show and change + bad blocks, and test the device. + +config USE_ONENAND_BOARD_INIT + bool "Call onenand_board_init() in the onenand command" + depends on CMD_ONENAND + depends on !COMPILE_TEST + +config CMD_OSD + bool "osd" + depends on OSD + help + Enable the 'osd' command which allows to query information from and + write text data to a on-screen display (OSD) device; a virtual device + associated with a display capable of displaying a text overlay on the + display it's associated with.. + +config CMD_PART + bool "part" + depends on PARTITIONS + select PARTITION_UUIDS + help + Read and display information about the partition table on + various media. + +config CMD_PCI + bool "pci - Access PCI devices" + help + Provide access to PCI (Peripheral Interconnect Bus), a type of bus + used on some devices to allow the CPU to communicate with its + peripherals. Sub-commands allow bus enumeration, displaying and + changing configuration space and a few other features. + +config CMD_PCI_MPS + bool "pci_mps - Configure PCI device MPS" + depends on PCI + help + Enables PCI Express Maximum Packet Size (MPS) tuning. This + command configures the PCI Express MPS of each endpoint to the + largest value supported by all devices below the root complex. + The Maximum Read Request Size will not be altered. This method is + the same algorithm as used by Linux pci=pcie_bus_safe. + +config CMD_PINMUX + bool "pinmux - show pins muxing" + depends on PINCTRL + default y if PINCTRL + help + Parse all available pin-controllers and show pins muxing. This + is useful for debug purpoer to check the pin muxing and to know if + a pin is configured as a GPIO or as an alternate function. + +config CMD_POWEROFF + bool "poweroff" + help + Poweroff/Shutdown the system + +config CMD_READ + bool "read - Read binary data from a partition" + help + Provides low-level access to the data in a partition. + +config CMD_REMOTEPROC + bool "remoteproc" + depends on REMOTEPROC + default y if ARCH_K3 + help + Support for Remote Processor control + +config CMD_SATA + bool "sata - Access SATA subsystem" + select SATA + help + SATA (Serial Advanced Technology Attachment) is a serial bus + standard for connecting to hard drives and other storage devices. + This command provides information about attached devices and allows + reading, writing and other operations. + + SATA replaces PATA (originally just ATA), which stands for Parallel AT + Attachment, where AT refers to an IBM AT (Advanced Technology) + computer released in 1984. + +config CMD_SCSI + bool "scsi - Access to SCSI devices" + depends on SCSI + default y + help + This provides a 'scsi' command which provides access to SCSI (Small + Computer System Interface) devices. The command provides a way to + scan the bus, reset the bus, read and write data and get information + about devices. + +config CMD_SDRAM + bool "sdram - Print SDRAM configuration information" + help + Provides information about attached SDRAM. This assumed that the + SDRAM has an EEPROM with information that can be read using the + I2C bus. This is only available on some boards. + +config CMD_SF + bool "sf" + depends on DM_SPI_FLASH || SPI_FLASH + default y if DM_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 + for the test to use. Performance information is also provided, + measuring the performance of reading, writing and erasing in + Mbps (Million Bits Per Second). This value should approximately + equal the SPI bus speed for a single-bit-wide SPI bus, assuming + everything is working properly. + +config CMD_SPI + 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 0x0 + +config CMD_TEMPERATURE + bool "temperature - display the temperature from thermal sensors" + depends on DM_THERMAL + help + Provides a way to list thermal sensors and to get their readings. + +config CMD_UFS + bool "ufs - Universal Flash Storage commands" + depends on UFS + help + "This provides commands to initialise and configure universal flash + subsystem devices" + +config CMD_USB + bool "usb" + depends on USB_HOST + help + USB support. + +config CMD_USB_SDP + bool "sdp" + depends on USB_GADGET_DOWNLOAD + select USB_FUNCTION_SDP + help + Enables the command "sdp" which is used to have U-Boot emulating the + Serial Download Protocol (SDP) via USB. + +config CMD_RKMTD + bool "rkmtd" + select RKMTD + help + Enable the command "rkmtd" to create a virtual block device to transfer + Rockchip boot block data to and from NAND with block orientated tools + like "ums" and "rockusb". + +config CMD_ROCKUSB + bool "rockusb" + depends on USB_FUNCTION_ROCKUSB + help + Rockusb protocol is widely used by Rockchip SoC based devices. It can + read/write info, image to/from devices. This enable rockusb command + support to communication with rockusb device. for more detail about + this command, please read doc/README.rockusb. + +config CMD_USB_MASS_STORAGE + bool "UMS usb mass storage" + depends on BLK && USB_GADGET_DOWNLOAD + select USB_FUNCTION_MASS_STORAGE + help + Enables the command "ums" and the USB mass storage support to the + export a block device: U-Boot, the USB device, acts as a simple + external hard drive plugged on the host USB port. + +config CMD_UMS_ABORT_KEYED + bool "UMS abort with any key" + depends on CMD_USB_MASS_STORAGE + help + Allow interruption of usb mass storage run with any key pressed. + +config CMD_PVBLOCK + bool "Xen para-virtualized block device" + depends on XEN + select PVBLOCK + help + Xen para-virtualized block device support + +config CMD_VIRTIO + bool "virtio" + depends on VIRTIO + default y if 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_WRITE + bool "write - Write binary data to a partition" + help + Provides low-level write access to a partition. + +config CMD_AXI + bool "axi" + depends on AXI + help + Enable the command "axi" for accessing AXI (Advanced eXtensible + Interface) busses, a on-chip interconnect specification for managing + functional blocks in SoC designs, which is also often used in designs + involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs). +endmenu + + +menu "Shell scripting commands" + + +config CMD_C5_PL330_DMA + bool "Release Reset DMA Channels for PL330 Handshake" + depends on TARGET_SOCFPGA_CYCLONE5_SOCDK + help + Provides access to Reset Manager Per2ModRst. Enables DMA + channels for ARM PrimeCell PL330 via reset release. + +config CMD_CAT + bool "cat" + help + Print file to standard output + +config CMD_ECHO + bool "echo" + default y + help + Echo args to console + +config CMD_ITEST + bool "itest" + default y + help + Return true/false on integer compare. + +config CMD_SOURCE + bool "source" + default y + help + Run script from memory + +config CMD_SETEXPR + bool "setexpr" + default y + help + Evaluate boolean and math expressions and store the result in an env + variable. + Also supports loading the value at a memory location into a variable. + If CONFIG_REGEX is enabled, setexpr also supports a gsub function. + +config CMD_SETEXPR_FMT + bool "setexpr_fmt" + depends on CMD_SETEXPR + help + Evaluate format string expression and store result in an environment + variable. + +config CMD_XXD + bool "xxd" + help + Print file as hexdump to standard output + +endmenu + +if NET || NET_LWIP + +menuconfig CMD_NET + bool "Network commands" + default y + +if CMD_NET + +if NET + +config CMD_BOOTP + bool "bootp" + default y + help + bootp - boot image via network using BOOTP/TFTP protocol + +config CMD_DHCP6 + bool "dhcp6" + depends on IPV6 + help + Boot image via network using DHCPv6/TFTP protocol using IPv6. + + Will perform 4-message exchange with DHCPv6 server, requesting + the minimum required options to TFTP boot. Complies with RFC 8415. + +if CMD_DHCP6 + +config DHCP6_PXE_DHCP_OPTION + bool "Request & store 'pxe_configfile' from DHCP6 server" + +config DHCP6_ENTERPRISE_ID + int "Enterprise ID to send in DHCPv6 Vendor Class Option" + default 0 + +endif + +config BOOTP_MAY_FAIL + bool "Allow for the BOOTP/DHCP server to not be found" + depends on CMD_BOOTP + help + If the DHCP server is not found after the configured retry count, the + call will fail instead of starting over. This can be used to fail + over to Link-local IP address configuration if the DHCP server is not + available. + +config BOOTP_BOOTPATH + bool "Request & store 'rootpath' from BOOTP/DHCP server" + default y + depends on CMD_BOOTP + help + Even though the config is called BOOTP_BOOTPATH, it stores the + path in the variable 'rootpath'. + +config BOOTP_VENDOREX + bool "Support vendor extensions from BOOTP/DHCP server" + depends on CMD_BOOTP + +config BOOTP_BOOTFILESIZE + bool "Request & store 'bootfilesize' from BOOTP/DHCP server" + depends on CMD_BOOTP + +config BOOTP_DNS + bool "Request & store 'dnsip' from BOOTP/DHCP server" + default y + depends on CMD_BOOTP + help + The primary DNS server is stored as 'dnsip'. If two servers are + returned, you must set BOOTP_DNS2 to store that second server IP + also. + +config BOOTP_DNS2 + bool "Store 'dnsip2' from BOOTP/DHCP server" + depends on BOOTP_DNS + help + If a DHCP client requests the DNS server IP from a DHCP server, + it is possible that more than one DNS serverip is offered to the + client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS + server IP will be stored in the additional environment + variable "dnsip2". The first DNS serverip is always + stored in the variable "dnsip", when BOOTP_DNS is defined. + +config BOOTP_GATEWAY + bool "Request & store 'gatewayip' from BOOTP/DHCP server" + default y + depends on CMD_BOOTP + +config BOOTP_HOSTNAME + bool "Request & store 'hostname' from BOOTP/DHCP server" + default y + depends on CMD_BOOTP + help + The name may or may not be qualified with the local domain name. + +config BOOTP_PREFER_SERVERIP + bool "serverip variable takes precedent over DHCP server IP." + depends on CMD_BOOTP + help + By default a BOOTP/DHCP reply will overwrite the 'serverip' variable. + + With this option enabled, the 'serverip' variable in the environment + takes precedence over DHCP server IP and will only be set by the DHCP + server if not already set in the environment. + +config BOOTP_SUBNETMASK + bool "Request & store 'netmask' from BOOTP/DHCP server" + default y + depends on CMD_BOOTP + +config BOOTP_NISDOMAIN + bool "Request & store 'nisdomain' from BOOTP/DHCP server" + depends on CMD_BOOTP + +config BOOTP_NTPSERVER + bool "Request & store 'ntpserverip' from BOOTP/DHCP server" + depends on CMD_BOOTP + +config BOOTP_TIMEOFFSET + bool "Request & store 'timeoffset' from BOOTP/DHCP server" + depends on CMD_BOOTP && CMD_SNTP + +config CMD_PCAP + bool "pcap capture" + help + Selecting this will allow capturing all Ethernet packets and store + them in physical memory in a PCAP formated file, + later to be analyzed by PCAP reader application (IE. WireShark). + +config BOOTP_PXE + bool "Send PXE client arch to BOOTP/DHCP server" + default y + depends on CMD_BOOTP && CMD_PXE + help + Supported for ARM, ARM64, and x86 for now. + +config DHCP_PXE_CLIENTARCH + hex "DCHCP client system architecture type" + depends on BOOTP_PXE || CMD_DHCP6 + default 0x16 if ARM64 # arm 64 uboot + default 0x15 if ARM # arm 32 uboot + default 0x0 if X86 # x86 BIOS + default 0xFF # DHCP option not sent + help + DHCP option 93 (defined in RFC4578) or DHCPv6 option 61 (defined in + RFC 5970) is used to transmit the client system architecture type + to the DHCP server. The DHCP server may use this information to + choose the boot file. For a complete list of assigned values see + https://www.iana.org/assignments/dhcpv6-parameters#processor-architecture. + + If the value is set to the reserved value 0xFF, the DHCP option will + not be sent by U-Boot. + +config BOOTP_PXE_DHCP_OPTION + bool "Request & store 'pxe_configfile' from BOOTP/DHCP server" + default y + depends on BOOTP_PXE + +config BOOTP_VCI_STRING + string + depends on CMD_BOOTP + default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R + default "U-Boot.armv8" if ARM64 + default "U-Boot.arm" if ARM + default "U-Boot" + +config BOOTP_RANDOM_XID + bool "Send random transaction ID to BOOTP/DHCP server" + depends on CMD_BOOTP && (LIB_RAND || LIB_HW_RAND) + help + Selecting this will allow for a random transaction ID to get + selected for each BOOTP/DHCPv4 exchange. + +config CMD_TFTPPUT + bool "tftp put" + depends on CMD_TFTPBOOT + help + TFTP put command, for uploading files to a server + +config CMD_TFTPSRV + bool "tftpsrv" + depends on CMD_TFTPBOOT + help + Act as a TFTP server and boot the first received file + +config NET_TFTP_VARS + bool "Control TFTP timeout and count through environment" + depends on CMD_TFTPBOOT + default y + help + If set, allows controlling the TFTP timeout through the + environment variable tftptimeout, and the TFTP maximum + timeout count through the variable tftptimeoutcountmax. + If unset, timeout and maximum are hard-defined as 1 second + and 10 timouts per TFTP transfer. + +config CMD_RARP + bool "rarpboot" + help + Boot image via network using RARP/TFTP protocol + +config CMD_NFS + bool "nfs" + help + Boot image via network using NFS protocol. + +config NFS_TIMEOUT + int "Timeout in milliseconds for NFS mounts" + depends on CMD_NFS + default 2000 + help + Timeout in milliseconds used in NFS protocol. If you encounter + "ERROR: Cannot umount" in nfs command, try longer timeout such as + 10000. + +config SYS_DISABLE_AUTOLOAD + bool "Disable automatically loading files over the network" + depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP + help + Typically, commands such as "dhcp" will attempt to automatically + load a file from the network, once the initial network configuration + is complete. Enable this option to disable this behavior and instead + require files to be loaded over the network by subsequent commands. + +config CMD_PING6 + bool "ping6" + depends on IPV6 + default y if (CMD_PING && IPV6) + help + Send ICMPv6 ECHO_REQUEST to network host + +config CMD_CDP + bool "cdp" + help + The cdp command is used to announce the U-Boot device in the network + and to retrieve configuration data including the VLAN id using the + proprietary Cisco Discovery Protocol (CDP). + +config CMD_LINK_LOCAL + bool "linklocal" + depends on (LIB_RAND || LIB_HW_RAND) + help + Acquire a network IP address using the link-local protocol + +config CMD_NCSI + bool "ncsi" + depends on PHY_NCSI + help + Manually configure the attached NIC via NC-SI. + Normally this happens automatically before other network + operations. + +config IPV6_ROUTER_DISCOVERY + bool "Do IPv6 router discovery" + depends on IPV6 + help + Will automatically perform router solicitation on first IPv6 + network operation + +config CMD_ETHSW + bool "ethsw" + help + Allow control of L2 Ethernet switch commands. These are supported + by the vsc9953 Ethernet driver at present. Sub-commands allow + operations such as enabling / disabling a port and + viewing/maintaining the filtering database (FDB) + +config CMD_WOL + bool "wol" + help + Wait for wake-on-lan Magic Packet + +endif # if NET + +config CMD_DHCP + bool "dhcp" + select PROT_DHCP_LWIP if NET_LWIP + help + Boot image via network using DHCP/TFTP protocol + +config CMD_DNS + bool "dns" + select DNS + help + Lookup the IP of a hostname + +config CMD_MII + bool "mii" + imply CMD_MDIO + help + If set, allows 802.3(clause 22) MII Management functions interface access + The management interface specified in Clause 22 provides + a simple, two signal, serial interface to connect a + Station Management entity and a managed PHY for providing access + to management parameters and services. + The interface is referred to as the MII management interface. + +config MII_INIT + bool "Call mii_init() in the mii command" + depends on CMD_MII && (MPC8XX_FEC || FSLDMAFE || MCFFEC) + +config CMD_MDIO + bool "mdio" + depends on PHYLIB + help + If set, allows Enable 802.3(clause 45) MDIO interface registers access + The MDIO interface is orthogonal to the MII interface and extends + it by adding access to more registers through indirect addressing. + +config CMD_PING + bool "ping" + select PROT_RAW_LWIP if NET_LWIP + help + Send ICMP ECHO_REQUEST to network host + +config CMD_SNTP + bool "sntp" + select PROT_UDP if NET + select PROT_UDP_LWIP if NET_LWIP + help + Synchronize RTC via network + +config CMD_TFTPBOOT + bool "tftp" + select PROT_UDP_LWIP if NET_LWIP + default y + help + tftpboot - load file via network using TFTP protocol + +config CMD_WGET + bool "wget" + default y if SANDBOX || ARCH_QEMU + select WGET + help + wget is a simple command to download kernel, or other files, + from a http server over TCP. + +config WGET_HTTPS + bool "wget https" + depends on CMD_WGET + depends on PROT_TCP_LWIP + depends on MBEDTLS_LIB + depends on DM_RNG + select SHA256 + select RSA + select ASYMMETRIC_KEY_TYPE + select ASYMMETRIC_PUBLIC_KEY_SUBTYPE + select X509_CERTIFICATE_PARSER + select PKCS7_MESSAGE_PARSER + select MBEDTLS_LIB_TLS + select RSA_VERIFY_WITH_PKEY + select X509_CERTIFICATE_PARSER + select PKCS7_MESSAGE_PARSER + help + Enable TLS over http for wget. + +config WGET_CACERT + bool "wget cacert" + depends on CMD_WGET + depends on WGET_HTTPS + help + Adds the "cacert" sub-command to wget to provide root certificates + to the HTTPS engine. Must be in DER format. + +config WGET_BUILTIN_CACERT + bool "Built-in CA certificates" + depends on WGET_HTTPS + select BUILD_BIN2C + +config WGET_BUILTIN_CACERT_PATH + string "Path to root certificates" + depends on WGET_BUILTIN_CACERT + default "cacert.crt" + help + Set this to the path to a DER-encoded X509 file containing + Certification Authority certificates, a.k.a. root certificates, for + the purpose of authenticating HTTPS connections. + +config CMD_PXE + bool "pxe" + select PXE_UTILS + imply CMD_TFTPBOOT + help + Boot image via network using PXE protocol + +endif # if CMD_NET + +endif # NET || NET_LWIP + +menu "Misc commands" + +config CMD_2048 + bool "Play 2048" + help + This is a simple sliding block puzzle game designed by Italian web + developer Gabriele Cirulli. The game's objective is to slide numbered + tiles on a grid to combine them to create a tile with the number + 2048. + + This needs ANSI support on your terminal to work. It is not fully + functional on a video device. + +config CMD_BMP + bool "Enable 'bmp' command" + depends on VIDEO + select BMP + help + This provides a way to obtain information about a BMP-format image + and to display it. BMP (which presumably stands for BitMaP) is a + file format defined by Microsoft which supports images of various + depths, formats and compression methods. Headers on the file + determine the formats used. This command can be used by first loading + the image into RAM, then using this command to look at it or display + it. + +config CMD_BOOTCOUNT + bool "bootcount" + depends on BOOTCOUNT_LIMIT + help + Enable the bootcount command, which allows interrogation and + reset of the bootcounter. + +config CMD_BSP + bool "Enable board-specific commands" + help + (deprecated: instead, please define a Kconfig option for each command) + + Some boards have board-specific commands which are only enabled + during developemnt and need to be turned off for production. This + option provides a way to control this. The commands that are enabled + vary depending on the board. + +config CMD_BLOCK_CACHE + bool "blkcache - control and stats for block cache" + depends on BLOCK_CACHE + default y if BLOCK_CACHE + help + Enable the blkcache command, which can be used to control the + operation of the cache functions. + This is most useful when fine-tuning the operation of the cache + during development, but also allows the cache to be disabled when + it might hurt performance (e.g. when using the ums command). + +config CMD_BLKMAP + bool "blkmap - Composable virtual block devices" + depends on BLKMAP + default y if BLKMAP + help + Create virtual block devices that are backed by various sources, + e.g. RAM, or parts of an existing block device. Though much more + rudimentary, it borrows a lot of ideas from Linux's device mapper + subsystem. + + Example use-cases: + - Treat a region of RAM as a block device, i.e. a RAM disk. This let's + you extract files from filesystem images stored in RAM (perhaps as a + result of a TFTP transfer). + - Create a virtual partition on an existing device. This let's you + access filesystems that aren't stored at an exact partition + boundary. A common example is a filesystem image embedded in an FIT + image. + +config CMD_BUTTON + bool "button" + depends on BUTTON + default y if BUTTON + help + Enable the 'button' command which allows to get the status of + buttons supported by the board. The buttonss can be listed with + 'button list' and state can be known with 'button <label>'. + Any button drivers can be controlled with this command, e.g. + button_gpio. + +config CMD_CACHE + bool "icache or dcache" + help + Enable the "icache" and "dcache" commands + +config CMD_CONITRACE + bool "conitrace - trace console input codes" + help + Enable the 'conitrace' command which displays the codes received + from the console input as hexadecimal numbers. + +config CMD_CLS + bool "Enable clear screen command 'cls'" + default y if LCD || VIDEO + help + Enable the 'cls' command which clears the screen contents + on video frame buffer. + +config CMD_EFIDEBUG + bool "efidebug - display/configure UEFI environment" + depends on EFI_LOADER + select EFI_DEVICE_PATH_TO_TEXT + 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_EFICONFIG + bool "eficonfig - provide menu-driven uefi variables maintenance interface" + default y if !HAS_BOARD_SIZE_LIMIT + depends on EFI_BOOTMGR + select MENU + help + Enable the 'eficonfig' command which provides the menu-driven UEFI + variable maintenance interface. + +config CMD_EXCEPTION + bool "exception - raise exception" + depends on ARM || RISCV || SANDBOX || X86 + help + 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 + by the board. The LEDs can be listed with 'led list' and controlled + with led on/off/togle/blink. Any LED drivers can be controlled with + this command, e.g. led_gpio. + +config CMD_INI + bool "ini" + help + Enable the 'ini' command which allows a .ini file to be parsed and + placed into environment variables. Please check the source code for + this as there is no documentation. + +config CMD_DATE + bool "date" + default y if DM_RTC + select LIB_DATE + help + Enable the 'date' command for getting/setting the time/date in RTC + devices. + +config CMD_RTC + bool "rtc" + depends on DM_RTC + default y if X86 + help + Enable the 'rtc' command for low-level access to RTC devices. + +config CMD_TIME + bool "time" + help + Run commands and summarize execution time. + +config CMD_GETTIME + bool "gettime - read elapsed time" + help + Enable the 'gettime' command which reads the elapsed time since + U-Boot started running. This shows the time in seconds and + milliseconds. See also the 'bootstage' command which provides more + flexibility for boot timing. + +config CMD_PAUSE + bool "pause command" + help + Delay execution waiting for any user input. + Useful to allow the user to read a failure log. + +config CMD_RNG + bool "rng command" + depends on DM_RNG + default y if SANDBOX + select HEXDUMP + help + Print bytes from the hardware random number generator. + +config CMD_KASLRSEED + bool "kaslrseed" + depends on DM_RNG + help + Set the kaslr-seed in the chosen node with entropy provided by a + hardware random number generator. + +config CMD_SLEEP + bool "sleep" + default y + help + Delay execution for some time + +config CMD_MP + bool "support for multiprocessor commands" + depends on MP && !CPU + default y + help + This enables commands to bringup different processors + in multiprocessor cases. + +config CMD_TIMER + bool "timer" + help + Access the system timer. + +config CMD_SOUND + bool "sound" + depends on SOUND + help + This provides basic access to the U-Boot's sound support. The main + feature is to play a beep. + + sound init - set up sound system + sound play - play a sound + +config CMD_SYSBOOT + bool "sysboot" + select PXE_UTILS + help + Boot image via local extlinux.conf file + +config CMD_QFW + bool "qfw" + select QFW + default y if TARGET_QEMU_ARM_32BIT || TARGET_QEMU_ARM_64BIT || \ + TARGET_QEMU_X86 || TARGET_QEMU_X86_64 + help + This provides access to the QEMU firmware interface. The main + feature is to allow easy loading of files passed to qemu-system + via -kernel / -initrd + +config CMD_PSTORE + bool "pstore" + help + This provides access to Linux PStore with Rammoops backend. The main + feature is to allow to display or save PStore records. + + See doc/pstore.rst for more information. + +if CMD_PSTORE + +config CMD_PSTORE_MEM_ADDR + hex "Memory Address" + depends on CMD_PSTORE + help + Base addr used for PStore ramoops memory, should be identical to + ramoops.mem_address parameter used by kernel + +config CMD_PSTORE_MEM_SIZE + hex "Memory size" + depends on CMD_PSTORE + default "0x10000" + help + Size of PStore ramoops memory, should be identical to ramoops.mem_size + parameter used by kernel, a power of 2 and larger than the sum of the + record sizes + +config CMD_PSTORE_RECORD_SIZE + hex "Dump record size" + depends on CMD_PSTORE + default "0x1000" + help + Size of each dump done on oops/panic, should be identical to + ramoops.record_size parameter used by kernel and a power of 2 + Must be non-zero + +config CMD_PSTORE_CONSOLE_SIZE + hex "Kernel console log size" + depends on CMD_PSTORE + default "0x1000" + help + Size of kernel console log, should be identical to + ramoops.console_size parameter used by kernel and a power of 2 + Must be non-zero + +config CMD_PSTORE_FTRACE_SIZE + hex "FTrace log size" + depends on CMD_PSTORE + default "0x1000" + help + Size of ftrace log, should be identical to ramoops.ftrace_size + parameter used by kernel and a power of 2 + +config CMD_PSTORE_PMSG_SIZE + hex "User space message log size" + depends on CMD_PSTORE + default "0x1000" + help + Size of user space message log, should be identical to + ramoops.pmsg_size parameter used by kernel and a power of 2 + +config CMD_PSTORE_ECC_SIZE + int "ECC size" + depends on CMD_PSTORE + default "0" + help + if non-zero, the option enables ECC support and specifies ECC buffer + size in bytes (1 is a special value, means 16 bytes ECC), should be + identical to ramoops.ramoops_ecc parameter used by kernel + +endif + +source "cmd/mvebu/Kconfig" + +config CMD_TERMINAL + bool "terminal - provides a way to attach a serial terminal" + help + Provides a 'cu'-like serial terminal command. This can be used to + access other serial ports from the system console. The terminal + is very simple with no special processing of characters. As with + cu, you can press ~. (tilde followed by period) to exit. + +config CMD_UUID + bool "uuid, guid - generation of unique IDs" + select LIB_UUID + help + This enables two commands: + + uuid - generate random Universally Unique Identifier + guid - generate Globally Unique Identifier based on random UUID + + The two commands are very similar except for the endianness of the + output. + +config CMD_VIDCONSOLE + bool "lcdputs and setcurs" + depends on VIDEO + default y + help + Enabling this will provide 'setcurs' and 'lcdputs' commands which + support cursor positioning and drawing strings on the video + console (framebuffer). + + The name 'lcdputs' is a bit of a misnomer, but so named because the + video device is often an LCD. + +config CMD_SELECT_FONT + bool "select font size" + depends on VIDEO + default y if CONSOLE_TRUETYPE + help + Enabling this will provide 'font' command. + Allows font selection at runtime. + +endmenu + +source "cmd/ti/Kconfig" + +config CMD_BOOTSTAGE + bool "Enable the 'bootstage' command" + depends on BOOTSTAGE + help + Add a 'bootstage' command which supports printing a report + and un/stashing of bootstage data. + +menu "Power commands" +config CMD_PMIC + bool "Enable Driver Model PMIC command" + depends on DM_PMIC + help + This is the pmic command, based on a driver model pmic's API. + Command features are unchanged: + - list - list pmic devices + - pmic dev <id> - show or [set] operating pmic device (NEW) + - pmic dump - dump registers + - pmic read address - read byte of register at address + - pmic write address - write byte to register at address + The only one change for this command is 'dev' subcommand. + +config CMD_REGULATOR + bool "Enable Driver Model REGULATOR command" + depends on DM_REGULATOR + help + This command is based on driver model regulator's API. + User interface features: + - list - list regulator devices + - regulator dev <id> - show or [set] operating regulator device + - regulator info - print constraints info + - regulator status - print operating status + - regulator value <val] <-f> - print/[set] voltage value [uV] + - regulator current <val> - print/[set] current value [uA] + - regulator mode <id> - print/[set] operating mode id + - regulator enable - enable the regulator output + - regulator disable - disable the regulator output + + The '-f' (force) option can be used for set the value which exceeds + the limits, which are found in device-tree and are kept in regulator's + uclass plat structure. + +endmenu + +menu "Security commands" +config CMD_AES + bool "Enable the 'aes' command" + select AES + help + This provides a means to encrypt and decrypt data using the AES + (Advanced Encryption Standard). This algorithm uses a symetric key + and is widely used as a streaming cipher. Different key lengths are + supported by the algorithm but this command only supports 128 bits + at present. + +config CMD_BLOB + bool "Enable the 'blob' command" + depends on !MX6ULL && !MX6SLL && !MX6SL + depends on SYS_FSL_SEC_COMPAT >= 4 + select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M + help + This is used with the Freescale secure boot mechanism. + + Freescale's SEC block has built-in Blob Protocol which provides + a method for protecting user-defined data across system power + cycles. SEC block protects data in a data structure called a Blob, + which provides both confidentiality and integrity protection. + + Encapsulating data as a blob + Each time that the Blob Protocol is used to protect data, a + different randomly generated key is used to encrypt the data. + This random key is itself encrypted using a key which is derived + from SoC's non-volatile secret key and a 16 bit Key identifier. + The resulting encrypted key along with encrypted data is called a + blob. The non-volatile secure key is available for use only during + secure boot. + + During decapsulation, the reverse process is performed to get back + the original data. + + Sub-commands: + blob enc - encapsulating data as a cryptgraphic blob + blob dec - decapsulating cryptgraphic blob to get the data + + Syntax: + + blob enc src dst len km + + Encapsulate and create blob of data $len bytes long + at address $src and store the result at address $dst. + $km is the 16 byte key modifier is also required for + generation/use as key for cryptographic operation. Key + modifier should be 16 byte long. + + blob dec src dst len km + + Decapsulate the blob of data at address $src and + store result of $len byte at addr $dst. + $km is the 16 byte key modifier is also required for + generation/use as key for cryptographic operation. Key + modifier should be 16 byte long. + +config CMD_HASH + bool "Support 'hash' command" + select HASH + help + This provides a way to hash data in memory using various supported + algorithms (such as SHA1, MD5, CRC32). The computed digest can be + saved to memory or to an environment variable. It is also possible + to verify a hash against data in memory. + +config CMD_HVC + bool "Support the 'hvc' command" + depends on ARM_SMCCC + help + Allows issuing Hypervisor Calls (HVCs). Mostly useful for + development and testing. + +config CMD_SMC + bool "Support the 'smc' command" + depends on ARM_SMCCC + help + Allows issuing Secure Monitor Calls (SMCs). Mostly useful for + development and testing. + +config HASH_VERIFY + bool "hash -v" + depends on CMD_HASH + help + Add -v option to verify data against a hash. + +config CMD_SCP03 + bool "scp03 - SCP03 enable and rotate/provision operations" + depends on SCP03 + help + This command provides access to a Trusted Application + running in a TEE to request Secure Channel Protocol 03 + (SCP03) enablement and/or rotation of its SCP03 keys. + +config CMD_TPM_V1 + bool + +config CMD_TPM_V2 + bool + +config CMD_TPM + bool "Enable the 'tpm' command" + depends on TPM_V1 || TPM_V2 + select CMD_TPM_V1 if TPM_V1 + select CMD_TPM_V2 if TPM_V2 + help + This provides a means to talk to a TPM from the command line. A wide + range of commands if provided - see 'tpm help' for details. The + command requires a suitable TPM on your board and the correct driver + must be enabled. + +if CMD_TPM + +config CMD_TPM_TEST + bool "Enable the 'tpm test' command" + depends on TPM_V1 + help + This provides a a series of tests to confirm that the TPMv1.x is + working correctly. The tests cover initialisation, non-volatile RAM, + extend, global lock and checking that timing is within expectations. + The tests pass correctly on Infineon TPMs but may need to be adjusted + for other devices. + +endif + +endmenu + +menu "Firmware commands" +config CMD_CROS_EC + bool "Enable crosec command" + depends on CROS_EC + default y + help + Enable command-line access to the Chrome OS EC (Embedded + Controller). This provides the 'crosec' command which has + a number of sub-commands for performing EC tasks such as + updating its flash, accessing a small saved context area + and talking to the I2C bus behind the EC (if there is one). + +config CMD_SCMI + bool "Enable scmi command" + depends on SCMI_FIRMWARE + help + This command provides user interfaces to several SCMI (System + Control and Management Interface) protocols available on Arm + platforms to manage system resources. +endmenu + +menu "Filesystem commands" +config CMD_BTRFS + bool "Enable the 'btrsubvol' command" + select FS_BTRFS + help + This enables the 'btrsubvol' command to list subvolumes + of a BTRFS filesystem. There are no special commands for + listing BTRFS directories or loading BTRFS files - this + can be done by the generic 'fs' commands (see CMD_FS_GENERIC) + when BTRFS is enabled (see FS_BTRFS). + +config CMD_CBFS + bool "Enable the 'cbfs' command" + depends on FS_CBFS + help + Define this to enable support for reading from a Coreboot + filesystem. This is a ROM-based filesystem used for accessing files + on systems that use coreboot as the first boot-loader and then load + U-Boot to actually boot the Operating System. Available commands are + cbfsinit, cbfsinfo, cbfsls and cbfsload. + +config CMD_CRAMFS + bool "Enable the 'cramfs' command" + depends on FS_CRAMFS + help + This provides commands for dealing with CRAMFS (Compressed ROM + filesystem). CRAMFS is useful when space is tight since files are + compressed. Two commands are provided: + + cramfsls - lists files in a cramfs image + cramfsload - loads a file from a cramfs image + +config CMD_EROFS + bool "EROFS command support" + select FS_EROFS + help + Support for the EROFS fs + +config CMD_EXT2 + bool "ext2 command support" + select FS_EXT4 + help + Enables EXT2 FS command + +config CMD_EXT4 + bool "ext4 command support" + select FS_EXT4 + help + Enables EXT4 FS command + +config CMD_EXT4_WRITE + depends on CMD_EXT4 + bool "ext4 write command support" + select EXT4_WRITE + help + Enables EXT4 FS write command + +config CMD_FAT + bool "FAT command support" + select FS_FAT + help + Support for the FAT fs + +config CMD_SQUASHFS + bool "SquashFS command support" + select FS_SQUASHFS + help + Enables SquashFS filesystem commands (e.g. load, ls). + +config CMD_FS_GENERIC + bool "filesystem commands" + help + Enables filesystem commands (e.g. load, ls) that work for multiple + fs types. + +config CMD_FS_UUID + bool "fsuuid command" + help + Enables fsuuid command for filesystem UUID. + +config CMD_JFFS2 + bool "jffs2 command" + select FS_JFFS2 + help + Enables commands to support the JFFS2 (Journalling Flash File System + version 2) filesystem. This enables fsload, ls and fsinfo which + provide the ability to load files, list directories and obtain + filesystem information. + +config JFFS2_DEV + string "Default device for JFFS2" + depends on CMD_JFFS2 + default "nor0" + help + The default device to use with the jffs2 command. + +config JFFS2_PART_OFFSET + hex "Default offset within flash to locate the JFFS2 image" + depends on CMD_JFFS2 + default 0x0 + help + The default offset within flash to locate the JFFS2 image. + +config JFFS2_PART_SIZE + hex "Default size of JFFS2 partition" + depends on CMD_JFFS2 + default 0xFFFFFFFF + help + The default size of the JFFS2 partition + +config CMD_MTDPARTS + bool "MTD partition support" + depends on !COMPILE_TEST + depends on MTD + select MTD_PARTITIONS + help + MTD partitioning tool support. + It is strongly encouraged to avoid using this command + anymore along with 'sf', 'nand', 'onenand'. One can still + declare the partitions in the mtdparts environment variable + but better use the MTD stack and the 'mtd' command instead. + +config CMD_MTDPARTS_SPREAD + bool "Padd partition size to take account of bad blocks" + depends on CMD_MTDPARTS + help + This enables the 'spread' sub-command of the mtdparts command. + This command will modify the existing mtdparts variable by increasing + the size of the partitions such that 1) each partition's net size is + at least as large as the size specified in the mtdparts variable and + 2) each partition starts on a good block. + +config CMD_MTDPARTS_SHOW_NET_SIZES + bool "Show net size (w/o bad blocks) of partitions" + depends on CMD_MTDPARTS + help + Adds two columns to the printed partition table showing the + effective usable size of a partition, if bad blocks are taken + into account. + +config MTDIDS_DEFAULT + string "Default MTD IDs" + depends on MTD || SPI_FLASH + depends on !SYS_MTDPARTS_RUNTIME + help + Defines a default MTD IDs list for use with MTD partitions in the + Linux MTD command line partitions format. + +config MTDPARTS_DEFAULT + string "Default MTD partition scheme" + depends on MTD || SPI_FLASH + depends on !SYS_MTDPARTS_RUNTIME + help + Defines a default MTD partitioning scheme in the Linux MTD command + line partitions format + +config CMD_ZFS + bool "zfs - Access of ZFS filesystem" + help + This provides commands to accessing a ZFS filesystem, commonly used + on Solaris systems. Two sub-commands are provided: + + zfsls - list files in a directory + zfsload - load a file + + See doc/README.zfs for more details. + +endmenu + +menu "Debug commands" + +config CMD_CBSYSINFO + bool "cbsysinfo" + depends on X86 + default y if SYS_COREBOOT + help + This provides information about the coreboot sysinfo table stored in + memory by coreboot before jumping to U-Boot. It can be useful for + debugging the beaaviour of coreboot or U-Boot. + +config CMD_CBCMOS + bool "cbcmos" + depends on X86 + default y if SYS_COREBOOT + help + This provides information options to check the CMOS RAM checksum, + if present, as well as to update it. + + It is useful when coreboot CMOS-RAM settings must be examined or + updated. + +config CMD_CYCLIC + bool "cyclic - Show information about cyclic functions" + depends on CYCLIC + default y + help + This enables the 'cyclic' command which provides information about + cyclic execution functions. This infrastructure allows registering + functions to be executed cyclically, e.g. every 100ms. These commands + are supported: + + cyclic list - list cyclic functions + cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic + demo function + + See doc/develop/cyclic.rst for more details. + +config CMD_DIAG + bool "diag - Board diagnostics" + help + This command provides access to board diagnostic tests. These are + called Power-on Self Tests (POST). The command allows listing of + available tests and running either all the tests, or specific tests + identified by name. + +config CMD_EVENT + bool "event - Show information about events" + depends on EVENT + default y if EVENT_DEBUG + help + This enables the 'event' command which provides information about + events and event-handler routines. This can help to device event + hadling. + +config CMD_IRQ + bool "irq - Show information about interrupts" + depends on NIOS2 || PPC || X86 + help + This enables two commands: + + interrupts - enable or disable interrupts + irqinfo - print device-specific interrupt information + +config CMD_KGDB + bool "kgdb - Allow debugging of U-Boot with gdb" + depends on PPC + help + This enables a 'kgdb' command which allows gdb to connect to U-Boot + over a serial link for debugging purposes. This allows + single-stepping, inspecting variables, etc. This is supported only + on PowerPC at present. + +config CMD_LOG + bool "log - Generation, control and access to logging" + select LOG + select GETOPT + help + This provides access to logging features. It allows the output of + log data to be controlled to a limited extent (setting up the default + maximum log level for emitting of records). It also provides access + to a command used for testing the log system. + +config CMD_TRACE + bool "trace - Support tracing of function calls and timing" + depends on TRACE + default y + help + 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 analysis (e.g. using bootchart). See doc/develop/trace.rst + for full details. + +config CMD_AVB + bool "avb - Android Verified Boot 2.0 operations" + depends on AVB_VERIFY + help + Enables a "avb" command to perform verification of partitions using + Android Verified Boot 2.0 functionality. It includes such subcommands: + avb init - initialize avb2 subsystem + avb read_rb - read rollback index + avb write_rb - write rollback index + avb is_unlocked - check device lock state + avb get_uuid - read and print uuid of a partition + avb read_part - read data from partition + avb read_part_hex - read data from partition and output to stdout + avb write_part - write data to partition + avb verify - run full verification chain + +config CMD_STACKPROTECTOR_TEST + bool "Test command for stack protector" + depends on STACKPROTECTOR + help + Enable stackprot_test command + The stackprot_test command will force a stack overrun to test + the stack smashing detection mechanisms. + +endmenu + +config CMD_UBI + tristate "Enable UBI - Unsorted block images commands" + select MTD_UBI + help + UBI is a software layer above MTD layer which admits use of LVM-like + logical volumes on top of MTD devices, hides some complexities of + flash chips like wear and bad blocks and provides some other useful + capabilities. Please, consult the MTD web site for more details + (www.linux-mtd.infradead.org). Activate this option if you want + to use U-Boot UBI commands. + It is also strongly encouraged to also enable CONFIG_MTD to get full + partition support. + +config CMD_UBI_RENAME + bool "Enable rename" + depends on CMD_UBI + help + Enable a "ubi" command to rename ubi volume: + ubi rename <oldname> <newname> + +config CMD_UBIFS + tristate "Enable UBIFS - Unsorted block images filesystem commands" + depends on CMD_UBI + default y if CMD_UBI + select LZO + select GZIP + help + UBIFS is a file system for flash devices which works on top of UBI. + +config CMD_MESON + bool "Amlogic Meson commands" + depends on ARCH_MESON + default y + help + Enable useful commands for the Meson Soc family developed by Amlogic Inc. + +config CMD_SPAWN + bool "spawn and wait commands" + depends on UTHREAD + help + spawn runs a command in the background and sets the job_id environment + variable. wait is used to suspend the shell execution until one or more + jobs are complete. + +config CMD_SPAWN_NUM_JOBS + int "Maximum number of simultaneous jobs for spawn" + default 16 + help + Job identifiers are in the range 1..CMD_SPAWN_NUM_JOBS. In other words + there can be no more that CMD_SPAWN_NUM_JOBS running simultaneously. + When a jobs exits, its identifier is available to be re-used by the next + spawn command. + +endif |