menu "Command line interface" config CMDLINE bool "Support U-Boot commands" 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 categorys can be indivdually enabled. Depending on the number of commands enabled, this can add substantially to the size of U-Boot. config HUSH_PARSER bool "Use hush shell" depends on CMDLINE 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. config CMDLINE_EDITING bool "Enable command line editing" depends on CMDLINE default y help Enable editing and History functions for interactive command line input operations config AUTO_COMPLETE bool "Enable auto complete using TAB" depends on CMDLINE default y help Enable auto completion of commands using TAB. config SYS_LONGHELP bool "Enable long help messages" depends on CMDLINE default y if CMDLINE 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 "=> " help 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 bool "Autoboot" default y help This enables the autoboot. See doc/README.autoboot for detail. config AUTOBOOT_KEYED bool "Stop autobooting via specific input key / string" default n help This option enables stopping (aborting) of the automatic boot feature only by issuing a specific input key or string. If not enabled, any input key will abort the U-Boot automatic booting process and bring the device to the U-Boot prompt for user input. config AUTOBOOT_PROMPT string "Autoboot stop prompt" depends on AUTOBOOT_KEYED default "Autoboot in %d seconds\\n" help This string is displayed before the boot delay selected by CONFIG_BOOTDELAY starts. If it is not defined there is no output indicating that autoboot is in progress. Note that this define is used as the (only) argument to a printf() call, so it may contain '%' format specifications, provided that it also includes, sepearated by commas exactly like in a printf statement, the required arguments. It is the responsibility of the user to select only such arguments that are valid in the given context. config AUTOBOOT_ENCRYPTION bool "Enable encryption in autoboot stopping" depends on AUTOBOOT_KEYED help This option allows a string to be entered into U-Boot to stop the autoboot. The string itself is hashed and compared against the hash in the environment variable 'bootstopkeysha256'. If it matches then boot stops and a command-line prompt is presented. This provides a way to ship a secure production device which can also be accessed at the U-Boot command line. config AUTOBOOT_DELAY_STR string "Delay autobooting via specific input key / string" depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION help This option delays the automatic boot feature by issuing a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR or the environment variable "bootdelaykey" is specified and this string is received from console input before autoboot starts booting, U-Boot gives a command prompt. The U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is used, otherwise it never times out. config AUTOBOOT_STOP_STR string "Stop autobooting via specific input key / string" depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION help This option enables stopping (aborting) of the automatic boot feature only by issuing a specific input key or string. If CONFIG_AUTOBOOT_STOP_STR or the environment variable "bootstopkey" is specified and this string is received from console input before autoboot starts booting, U-Boot gives a command prompt. The U-Boot prompt never times out, even if CONFIG_BOOT_RETRY_TIME is used. config AUTOBOOT_KEYED_CTRLC bool "Enable Ctrl-C autoboot interruption" depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION default n help This option allows for the boot sequence to be interrupted by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey". Setting this variable provides an escape sequence from the limited "password" strings. config AUTOBOOT_STOP_STR_SHA256 string "Stop autobooting via SHA256 encrypted password" depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION help This option adds the feature to only stop the autobooting, and therefore boot into the U-Boot prompt, when the input string / password matches a values that is encypted via a SHA256 hash and saved in the environment. config AUTOBOOT_USE_MENUKEY bool "Allow a specify key to run a menu from the environment" depends on !AUTOBOOT_KEYED help If a specific key is pressed to stop autoboot, then the commands in the environment variable 'menucmd' are executed before boot starts. config AUTOBOOT_MENUKEY int "ASCII value of boot key to show a menu" default 0 depends on AUTOBOOT_USE_MENUKEY help If this key is pressed to stop autoboot, then the commands in the environment variable 'menucmd' will be executed before boot starts. For example, 33 means "!" in ASCII, so pressing ! at boot would take this action. config AUTOBOOT_MENU_SHOW bool "Show a menu on boot" help This enables the boot menu, controlled by environment variables defined by the board. The menu starts after running the 'preboot' environmnent variable (if enabled) and before handling the boot delay. See README.bootmenu for more details. endmenu config BUILD_BIN2C bool comment "Commands" menu "Info commands" config CMD_BDI bool "bdinfo" default y help Print board info config CMD_CONFIG bool "config" default SANDBOX select BUILD_BIN2C 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" 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_LICENSE bool "license" select BUILD_BIN2C help Print GPL license text config CMD_REGINFO bool "reginfo" depends on PPC help Register dump 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_BOOTZ bool "bootz" help Boot the Linux zImage config CMD_BOOTI bool "booti" depends on ARM64 || RISCV default y help Boot an AArch64 Linux Kernel image from memory. config CMD_BOOTEFI bool "bootefi" depends on EFI_LOADER default y help Boot an EFI image from memory. config CMD_BOOTEFI_HELLO_COMPILE bool "Compile a standard EFI hello world binary for testing" depends on CMD_BOOTEFI && !CPU_V7M && !SANDBOX default y help This compiles a standard EFI hello world application with U-Boot so that it can be used with the test/py testing framework. This is useful for testing that EFI is working at a basic level, and for bringing up EFI support on a new architecture. No additional space will be required in the resulting U-Boot binary when this option is enabled. config CMD_BOOTEFI_HELLO bool "Allow booting a standard EFI hello world for testing" depends on CMD_BOOTEFI_HELLO_COMPILE 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 config CMD_BOOTMENU bool "bootmenu" select MENU help Add an ANSI terminal boot menu command. config CMD_DTIMG bool "dtimg" 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_ELF bool "bootelf, bootvx" default y help Boot an ELF/vxWorks image from the memory. 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 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" help List all images found in flash config CMD_XIMG bool "imxtract" default y help Extract a part of a multi-image. 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 0 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 0 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_FITUPD bool "fitImage update command" help Implements the 'fitupd' command, which allows to automatically store software updates present on a TFTP server in NOR Flash config CMD_THOR_DOWNLOAD bool "thor - TIZEN 'thor' 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 CMD_ZBOOT bool "zboot - x86 boot command" 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/uImage.FIT/x86-fit-boot.txt 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" 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 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 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" 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_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" 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_HELP_STRING string "Tells user what layout names are supported" depends on CMD_EEPROM_LAYOUT default "" help Help printed with the LAYOUT VERSIONS part of the 'eeprom' command's help. config LOOPW bool "loopw" help Infinite write loop on address range config CMD_MD5SUM bool "md5sum" default n select MD5 help Compute MD5 checksum. config MD5SUM_VERIFY bool "md5sum -v" default n depends on CMD_MD5SUM help Add -v option to verify data against an MD5 checksum. config CMD_MEMINFO bool "meminfo" help Display memory 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_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. endif config CMD_MX_CYCLIC bool "mdc, mwc" help mdc - memory display cyclic mwc - memory write cyclic 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_UNZIP bool "unzip" default y if CMD_BOOTI help Uncompress a zip-compressed memory region. config CMD_ZIP bool "zip" help Compress a memory region with zlib deflate method. endmenu menu "Device access commands" config CMD_ARMFLASH #depends on FLASH_CFI_DRIVER bool "armflash" help ARM Ltd reference designs flash partition access config CMD_ADC bool "adc - Access Analog to Digital Converters info and data" select ADC select 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 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 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 clock frequencies" help (deprecated) Shows clock frequences by calling a sock_clk_dump() hook function. This is depreated in favour of using the CLK uclass and accessing clock values from associated drivers. However currently no command exists for this. 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.txt for more information. config CMD_FDC bool "fdcboot - Boot from floppy device" help The 'fdtboot' command allows booting an image from a floppy disk. config CMD_FLASH bool "flinfo, erase, protect" default y 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_LOADBP bool "fpga loadbp - load partial bitstream (Xilinx only)" depends on CMD_FPGA help Supports loading an FPGA device from a bitstream buffer containing a partial bitstream. config CMD_FPGA_LOADFS bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)" depends on CMD_FPGA 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_LOADP bool "fpga loadp - load partial bitstream" depends on CMD_FPGA help Supports loading an FPGA device from a bitstream buffer containing a partial bitstream. config CMD_FPGA_LOAD_SECURE bool "fpga loads - loads secure bitstreams (Xilinx only)" depends on CMD_FPGA 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" 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" 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_GPIO bool "gpio" help GPIO support. config CMD_GPT bool "GPT (GUID Partition Table) command" select EFI_PARTITION select HAVE_BLOCK_DEVICE select PARTITION_UUIDS imply RANDOM_UUID help Enable the 'gpt' command to ready and write GPT style partition tables. config RANDOM_UUID bool "GPT Random UUID generation" select LIB_UUID help Enable the generation of partitions with random UUIDs if none are provided. 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" select IDE help Provides an 'ide' command which allows accessing the IDE drive, reseting 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_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_LOADS bool "loads" default y help Load an S-Record file over serial line config CMD_MMC bool "mmc" help MMC memory mapped support. config CMD_MMC_RPMB bool "Enable support for RPMB in the mmc command" depends on CMD_MMC 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 CMD_MMC && MMC_WRITE select IMAGE_SPARSE help Enable support for the "mmc swrite" command to write Android sparse images to eMMC. config CMD_MTD bool "mtd" select MTD_PARTITIONS help MTD commands support. config CMD_NAND bool "nand" default y if NAND_SUNXI 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. 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" 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 CMD_OSD bool "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" select HAVE_BLOCK_DEVICE 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_PINMUX bool "pinmux - show pins muxing" 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 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_SAVES bool "saves - Save a file over serial in S-Record format" help Provides a way to save a binary file using the Motorola S-Record format over the serial line. config CMD_SCSI bool "scsi - Access to SCSI devices" default y if SCSI 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 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 0 config CMD_TSI148 bool "tsi148 - Command to access tsi148 device" help This provides various sub-commands to initialise and configure the Turndra tsi148 device. See the command help for full details. config CMD_UNIVERSE bool "universe - Command to set up the Turndra Universe controller" help This allows setting up the VMEbus provided by this controller. See the command help for full details. config CMD_USB bool "usb" select HAVE_BLOCK_DEVICE help USB support. config CMD_USB_SDP bool "sdp" 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_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" select USB_FUNCTION_MASS_STORAGE help USB mass storage 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_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_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. endmenu menu "Android support commands" config CMD_AB_SELECT bool "ab_select" default n depends on ANDROID_AB help On Android devices with more than one boot slot (multiple copies of the kernel and system images) this provides a command to select which slot should be used to boot from and register the boot attempt. This is used by the new A/B update model where one slot is updated in the background while running from the other slot. endmenu if NET menuconfig CMD_NET bool "Network commands" default y imply NETDEVICES if CMD_NET config CMD_BOOTP bool "bootp" default y help bootp - boot image via network using BOOTP/TFTP protocol config CMD_DHCP bool "dhcp" depends on CMD_BOOTP help Boot image via network using DHCP/TFTP protocol 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_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_NTPSERVER bool "Request & store 'ntpserverip' from BOOTP/DHCP server" depends on CMD_BOOTP 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 BOOTP_PXE_CLIENTARCH hex depends on BOOTP_PXE default 0x16 if ARM64 default 0x15 if ARM default 0 if X86 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 CMD_TFTPBOOT bool "tftpboot" default y help tftpboot - boot image via network using TFTP protocol 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" default y help Boot image via network using NFS protocol. config CMD_MII bool "mii" help Enable MII utility commands. config CMD_PING bool "ping" help Send ICMP ECHO_REQUEST to network host config CMD_CDP bool "cdp" help Perform CDP network configuration config CMD_SNTP bool "sntp" help Synchronize RTC via network config CMD_DNS bool "dns" help Lookup the IP of a hostname config CMD_LINK_LOCAL bool "linklocal" select LIB_RAND help Acquire a network IP address using the link-local protocol endif 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_PXE bool "pxe" select MENU help Boot image via network using PXE protocol config CMD_WOL bool "wol" help Wait for wake-on-lan Magic Packet endif menu "Misc commands" config CMD_BMP bool "Enable 'bmp' command" depends on LCD || DM_VIDEO || VIDEO help This provides a way to obtain information about a BMP-format iamge 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_BKOPS_ENABLE bool "mmc bkops enable" depends on CMD_MMC default n 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_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_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'" depends on CFB_CONSOLE || DM_VIDEO || LCD || VIDEO default y if LCD 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 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 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_DATE bool "date" default y if DM_RTC help Enable the 'date' command for getting/setting the time/date in 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. # TODO: rename to CMD_SLEEP config CMD_MISC bool "sleep" default y help Delay execution for some time config MP bool "support for multiprocessor" help This provides an option to brinup 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_QFW bool "qfw" select QFW 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 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. 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 - 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 - show or [set] operating regulator device - regulator info - print constraints info - regulator status - print operating status - regulator value - print/[set] voltage value [uV] - regulator current - print/[set] current value [uA] - regulator mode - 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 platdata 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" 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_TPM_V1 bool config CMD_TPM_V2 bool select CMD_LOG 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). 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_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_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 CMD_MTDPARTS bool "MTD partition support" select MTD_DEVICE if (CMD_NAND || NAND) 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 MTDIDS_DEFAULT string "Default MTD IDs" depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH 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_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH help Defines a default MTD partitioning scheme in the Linux MTD command line partitions format 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_REISER bool "reiser - Access to reiserfs filesystems" help This provides two commands which operate on a resierfs filesystem, commonly used some years ago: reiserls - list files reiserload - load a file config CMD_YAFFS2 bool "yaffs2 - Access of YAFFS2 filesystem" depends on YAFFS2 default y help This provides commands for accessing a YAFFS2 filesystem. Yet Another Flash Filesystem 2 is a filesystem designed specifically for NAND flash. It incorporates bad-block management and ensures that device writes are sequential regardless of filesystem activity. 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_BEDBUG bool "bedbug" help The bedbug (emBEDded deBUGger) command provides debugging features for some PowerPC processors. For details please see the docuemntation in doc/README.beddbug 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_IRQ bool "irq - Show information about interrupts" depends on !ARM && !MIPS && !SH 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 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" 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/README.trace for full details. config CMD_AVB bool "avb - Android Verified Boot 2.0 operations" depends on AVB_VERIFY default n 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 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_UBIFS tristate "Enable UBIFS - Unsorted block images filesystem commands" depends on CMD_UBI default y if CMD_UBI select LZO help UBIFS is a file system for flash devices which works on top of UBI. endmenu