1menu "Command line interface" 2 3config CMDLINE 4 bool "Support U-Boot commands" 5 default y 6 help 7 Enable U-Boot's command-line functions. This provides a means 8 to enter commands into U-Boot for a wide variety of purposes. It 9 also allows scripts (containing commands) to be executed. 10 Various commands and command categorys can be indivdually enabled. 11 Depending on the number of commands enabled, this can add 12 substantially to the size of U-Boot. 13 14config HUSH_PARSER 15 bool "Use hush shell" 16 depends on CMDLINE 17 help 18 This option enables the "hush" shell (from Busybox) as command line 19 interpreter, thus enabling powerful command line syntax like 20 if...then...else...fi conditionals or `&&' and '||' 21 constructs ("shell scripts"). 22 23 If disabled, you get the old, much simpler behaviour with a somewhat 24 smaller memory footprint. 25 26config CMDLINE_EDITING 27 bool "Enable command line editing" 28 depends on CMDLINE 29 default y 30 help 31 Enable editing and History functions for interactive command line 32 input operations 33 34config AUTO_COMPLETE 35 bool "Enable auto complete using TAB" 36 depends on CMDLINE 37 default y 38 help 39 Enable auto completion of commands using TAB. 40 41config SYS_LONGHELP 42 bool "Enable long help messages" 43 depends on CMDLINE 44 default y if CMDLINE 45 help 46 Defined when you want long help messages included 47 Do not set this option when short of memory. 48 49config SYS_PROMPT 50 string "Shell prompt" 51 default "=> " 52 help 53 This string is displayed in the command line to the left of the 54 cursor. 55 56menu "Autoboot options" 57 58config AUTOBOOT 59 bool "Autoboot" 60 default y 61 help 62 This enables the autoboot. See doc/README.autoboot for detail. 63 64config AUTOBOOT_KEYED 65 bool "Stop autobooting via specific input key / string" 66 default n 67 help 68 This option enables stopping (aborting) of the automatic 69 boot feature only by issuing a specific input key or 70 string. If not enabled, any input key will abort the 71 U-Boot automatic booting process and bring the device 72 to the U-Boot prompt for user input. 73 74config AUTOBOOT_PROMPT 75 string "Autoboot stop prompt" 76 depends on AUTOBOOT_KEYED 77 default "Autoboot in %d seconds\\n" 78 help 79 This string is displayed before the boot delay selected by 80 CONFIG_BOOTDELAY starts. If it is not defined there is no 81 output indicating that autoboot is in progress. 82 83 Note that this define is used as the (only) argument to a 84 printf() call, so it may contain '%' format specifications, 85 provided that it also includes, sepearated by commas exactly 86 like in a printf statement, the required arguments. It is 87 the responsibility of the user to select only such arguments 88 that are valid in the given context. 89 90config AUTOBOOT_ENCRYPTION 91 bool "Enable encryption in autoboot stopping" 92 depends on AUTOBOOT_KEYED 93 default n 94 95config AUTOBOOT_DELAY_STR 96 string "Delay autobooting via specific input key / string" 97 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION 98 help 99 This option delays the automatic boot feature by issuing 100 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR 101 or the environment variable "bootdelaykey" is specified 102 and this string is received from console input before 103 autoboot starts booting, U-Boot gives a command prompt. The 104 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is 105 used, otherwise it never times out. 106 107config AUTOBOOT_STOP_STR 108 string "Stop autobooting via specific input key / string" 109 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION 110 help 111 This option enables stopping (aborting) of the automatic 112 boot feature only by issuing a specific input key or 113 string. If CONFIG_AUTOBOOT_STOP_STR or the environment 114 variable "bootstopkey" is specified and this string is 115 received from console input before autoboot starts booting, 116 U-Boot gives a command prompt. The U-Boot prompt never 117 times out, even if CONFIG_BOOT_RETRY_TIME is used. 118 119config AUTOBOOT_KEYED_CTRLC 120 bool "Enable Ctrl-C autoboot interruption" 121 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION 122 default n 123 help 124 This option allows for the boot sequence to be interrupted 125 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey". 126 Setting this variable provides an escape sequence from the 127 limited "password" strings. 128 129config AUTOBOOT_STOP_STR_SHA256 130 string "Stop autobooting via SHA256 encrypted password" 131 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION 132 help 133 This option adds the feature to only stop the autobooting, 134 and therefore boot into the U-Boot prompt, when the input 135 string / password matches a values that is encypted via 136 a SHA256 hash and saved in the environment. 137 138endmenu 139 140source "cmd/fastboot/Kconfig" 141 142config BUILD_BIN2C 143 bool 144 145comment "Commands" 146 147menu "Info commands" 148 149config CMD_BDI 150 bool "bdinfo" 151 default y 152 help 153 Print board info 154 155config CMD_CONFIG 156 bool "config" 157 select BUILD_BIN2C 158 default SANDBOX 159 help 160 Print ".config" contents. 161 162 If this option is enabled, the ".config" file contents are embedded 163 in the U-Boot image and can be printed on the console by the "config" 164 command. This provides information of which options are enabled on 165 the running U-Boot. 166 167config CMD_CONSOLE 168 bool "coninfo" 169 default y 170 help 171 Print console devices and information. 172 173config CMD_CPU 174 bool "cpu" 175 help 176 Print information about available CPUs. This normally shows the 177 number of CPUs, type (e.g. manufacturer, architecture, product or 178 internal name) and clock frequency. Other information may be 179 available depending on the CPU driver. 180 181config CMD_LICENSE 182 bool "license" 183 select BUILD_BIN2C 184 help 185 Print GPL license text 186 187config CMD_REGINFO 188 bool "reginfo" 189 depends on PPC 190 help 191 Register dump 192 193endmenu 194 195menu "Boot commands" 196 197config CMD_BOOTD 198 bool "bootd" 199 default y 200 help 201 Run the command stored in the environment "bootcmd", i.e. 202 "bootd" does the same thing as "run bootcmd". 203 204config CMD_BOOTM 205 bool "bootm" 206 default y 207 help 208 Boot an application image from the memory. 209 210config CMD_BOOTZ 211 bool "bootz" 212 help 213 Boot the Linux zImage 214 215config CMD_BOOTI 216 bool "booti" 217 depends on ARM64 218 default y 219 help 220 Boot an AArch64 Linux Kernel image from memory. 221 222config CMD_BOOTEFI 223 bool "bootefi" 224 depends on EFI_LOADER 225 default y 226 help 227 Boot an EFI image from memory. 228 229config CMD_BOOTEFI_HELLO_COMPILE 230 bool "Compile a standard EFI hello world binary for testing" 231 depends on CMD_BOOTEFI && (ARM || X86) 232 default y 233 help 234 This compiles a standard EFI hello world application with U-Boot so 235 that it can be used with the test/py testing framework. This is useful 236 for testing that EFI is working at a basic level, and for bringing 237 up EFI support on a new architecture. 238 239 No additional space will be required in the resulting U-Boot binary 240 when this option is enabled. 241 242config CMD_BOOTEFI_HELLO 243 bool "Allow booting a standard EFI hello world for testing" 244 depends on CMD_BOOTEFI_HELLO_COMPILE 245 help 246 This adds a standard EFI hello world application to U-Boot so that 247 it can be used with the 'bootefi hello' command. This is useful 248 for testing that EFI is working at a basic level, and for bringing 249 up EFI support on a new architecture. 250 251source lib/efi_selftest/Kconfig 252 253config CMD_BOOTMENU 254 bool "bootmenu" 255 select MENU 256 help 257 Add an ANSI terminal boot menu command. 258 259config CMD_ELF 260 bool "bootelf, bootvx" 261 default y 262 help 263 Boot an ELF/vxWorks image from the memory. 264 265config CMD_FDT 266 bool "Flattened Device Tree utility commands" 267 default y 268 depends on OF_LIBFDT 269 help 270 Do FDT related setup before booting into the Operating System. 271 272config CMD_GO 273 bool "go" 274 default y 275 help 276 Start an application at a given address. 277 278config CMD_RUN 279 bool "run" 280 default y 281 help 282 Run the command in the given environment variable. 283 284config CMD_IMI 285 bool "iminfo" 286 default y 287 help 288 Print header information for application image. 289 290config CMD_IMLS 291 bool "imls" 292 help 293 List all images found in flash 294 295config CMD_XIMG 296 bool "imxtract" 297 default y 298 help 299 Extract a part of a multi-image. 300 301config CMD_POWEROFF 302 bool "poweroff" 303 help 304 Poweroff/Shutdown the system 305 306config CMD_SPL 307 bool "spl export - Export boot information for Falcon boot" 308 depends on SPL 309 help 310 Falcon mode allows booting directly from SPL into an Operating 311 System such as Linux, thus skipping U-Boot proper. See 312 doc/README.falcon for full information about how to use this 313 command. 314 315config CMD_SPL_NAND_OFS 316 hex "Offset of OS command line args for Falcon-mode NAND boot" 317 depends on CMD_SPL 318 default 0 319 help 320 This provides the offset of the command line arguments for Linux 321 when booting from NAND in Falcon mode. See doc/README.falcon 322 for full information about how to use this option (and also see 323 board/gateworks/gw_ventana/README for an example). 324 325config CMD_SPL_WRITE_SIZE 326 hex "Size of argument area" 327 depends on CMD_SPL 328 default 0x2000 329 help 330 This provides the size of the command-line argument area in NAND 331 flash used by Falcon-mode boot. See the documentation until CMD_SPL 332 for detail. 333 334config CMD_FITUPD 335 bool "fitImage update command" 336 help 337 Implements the 'fitupd' command, which allows to automatically 338 store software updates present on a TFTP server in NOR Flash 339 340config CMD_THOR_DOWNLOAD 341 bool "thor - TIZEN 'thor' download" 342 help 343 Implements the 'thor' download protocol. This is a way of 344 downloading a software update over USB from an attached host. 345 There is no documentation about this within the U-Boot source code 346 but you should be able to find something on the interwebs. 347 348config CMD_ZBOOT 349 bool "zboot - x86 boot command" 350 help 351 With x86 machines it is common to boot a bzImage file which 352 contains both a kernel and a setup.bin file. The latter includes 353 configuration information from the dark ages which x86 boards still 354 need to pick things out of. 355 356 Consider using FIT in preference to this since it supports directly 357 booting both 32- and 64-bit kernels, as well as secure boot. 358 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt 359 360endmenu 361 362menu "Environment commands" 363 364config CMD_ASKENV 365 bool "ask for env variable" 366 help 367 Ask for environment variable 368 369config CMD_EXPORTENV 370 bool "env export" 371 default y 372 help 373 Export environments. 374 375config CMD_IMPORTENV 376 bool "env import" 377 default y 378 help 379 Import environments. 380 381config CMD_EDITENV 382 bool "editenv" 383 default y 384 help 385 Edit environment variable. 386 387config CMD_GREPENV 388 bool "search env" 389 help 390 Allow for searching environment variables 391 392config CMD_SAVEENV 393 bool "saveenv" 394 default y 395 help 396 Save all environment variables into the compiled-in persistent 397 storage. 398 399config CMD_ENV_EXISTS 400 bool "env exists" 401 default y 402 help 403 Check if a variable is defined in the environment for use in 404 shell scripting. 405 406config CMD_ENV_CALLBACK 407 bool "env callbacks - print callbacks and their associated variables" 408 help 409 Some environment variable have callbacks defined by 410 U_BOOT_ENV_CALLBACK. These are called when the variable changes. 411 For example changing "baudrate" adjust the serial baud rate. This 412 command lists the currently defined callbacks. 413 414config CMD_ENV_FLAGS 415 bool "env flags -print variables that have non-default flags" 416 help 417 Some environment variables have special flags that control their 418 behaviour. For example, serial# can only be written once and cannot 419 be deleted. This command shows the variables that have special 420 flags. 421 422endmenu 423 424menu "Memory commands" 425 426config CMD_CRC32 427 bool "crc32" 428 select HASH 429 default y 430 help 431 Compute CRC32. 432 433config CRC32_VERIFY 434 bool "crc32 -v" 435 depends on CMD_CRC32 436 help 437 Add -v option to verify data against a crc32 checksum. 438 439config CMD_EEPROM 440 bool "eeprom - EEPROM subsystem" 441 help 442 (deprecated, needs conversion to driver model) 443 Provides commands to read and write EEPROM (Electrically Erasable 444 Programmable Read Only Memory) chips that are connected over an 445 I2C bus. 446 447config CMD_EEPROM_LAYOUT 448 bool "Enable layout-aware eeprom commands" 449 depends on CMD_EEPROM 450 help 451 (deprecated, needs conversion to driver model) 452 When enabled, additional eeprom sub-commands become available. 453 454 eeprom print - prints the contents of the eeprom in a human-readable 455 way (eeprom layout fields, and data formatted to be fit for human 456 consumption). 457 458 eeprom update - allows user to update eeprom fields by specifying 459 the field name, and providing the new data in a human readable format 460 (same format as displayed by the eeprom print command). 461 462 Both commands can either auto detect the layout, or be told which 463 layout to use. 464 465 Feature API: 466 __weak int parse_layout_version(char *str) 467 - override to provide your own layout name parsing 468 __weak void __eeprom_layout_assign(struct eeprom_layout *layout, 469 int layout_version); 470 - override to setup the layout metadata based on the version 471 __weak int eeprom_layout_detect(unsigned char *data) 472 - override to provide your own algorithm for detecting layout 473 version 474 eeprom_field.c 475 - contains various printing and updating functions for common 476 types of eeprom fields. Can be used for defining 477 custom layouts. 478 479config EEPROM_LAYOUT_HELP_STRING 480 string "Tells user what layout names are supported" 481 depends on CMD_EEPROM_LAYOUT 482 default "<not defined>" 483 help 484 Help printed with the LAYOUT VERSIONS part of the 'eeprom' 485 command's help. 486 487config LOOPW 488 bool "loopw" 489 help 490 Infinite write loop on address range 491 492config CMD_MD5SUM 493 bool "md5sum" 494 default n 495 select MD5 496 help 497 Compute MD5 checksum. 498 499config MD5SUM_VERIFY 500 bool "md5sum -v" 501 default n 502 depends on CMD_MD5SUM 503 help 504 Add -v option to verify data against an MD5 checksum. 505 506config CMD_MEMINFO 507 bool "meminfo" 508 help 509 Display memory information. 510 511config CMD_MEMORY 512 bool "md, mm, nm, mw, cp, cmp, base, loop" 513 default y 514 help 515 Memory commands. 516 md - memory display 517 mm - memory modify (auto-incrementing address) 518 nm - memory modify (constant address) 519 mw - memory write (fill) 520 cp - memory copy 521 cmp - memory compare 522 base - print or set address offset 523 loop - initialize loop on address range 524 525config CMD_MEMTEST 526 bool "memtest" 527 help 528 Simple RAM read/write test. 529 530config CMD_MX_CYCLIC 531 bool "mdc, mwc" 532 help 533 mdc - memory display cyclic 534 mwc - memory write cyclic 535 536config CMD_SHA1SUM 537 bool "sha1sum" 538 select SHA1 539 help 540 Compute SHA1 checksum. 541 542config SHA1SUM_VERIFY 543 bool "sha1sum -v" 544 depends on CMD_SHA1SUM 545 help 546 Add -v option to verify data against a SHA1 checksum. 547 548config CMD_STRINGS 549 bool "strings - display strings in memory" 550 help 551 This works similarly to the Unix 'strings' command except that it 552 works with a memory range. String of printable characters found 553 within the range are displayed. The minimum number of characters 554 for a sequence to be considered a string can be provided. 555 556endmenu 557 558menu "Compression commands" 559 560config CMD_LZMADEC 561 bool "lzmadec" 562 default y if CMD_BOOTI 563 select LZMA 564 help 565 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm) 566 image from memory. 567 568config CMD_UNZIP 569 bool "unzip" 570 default y if CMD_BOOTI 571 help 572 Uncompress a zip-compressed memory region. 573 574config CMD_ZIP 575 bool "zip" 576 help 577 Compress a memory region with zlib deflate method. 578 579endmenu 580 581menu "Device access commands" 582 583config CMD_ARMFLASH 584 #depends on FLASH_CFI_DRIVER 585 bool "armflash" 586 help 587 ARM Ltd reference designs flash partition access 588 589config CMD_CLK 590 bool "clk - Show clock frequencies" 591 help 592 (deprecated) 593 Shows clock frequences by calling a sock_clk_dump() hook function. 594 This is depreated in favour of using the CLK uclass and accessing 595 clock values from associated drivers. However currently no command 596 exists for this. 597 598config CMD_DEMO 599 bool "demo - Demonstration commands for driver model" 600 depends on DM 601 help 602 Provides a 'demo' command which can be used to play around with 603 driver model. To use this properly you will need to enable one or 604 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE). 605 Otherwise you will always get an empty list of devices. The demo 606 devices are defined in the sandbox device tree, so the easiest 607 option is to use sandbox and pass the -d point to sandbox's 608 u-boot.dtb file. 609 610config CMD_DFU 611 bool "dfu" 612 select DFU 613 help 614 Enables the command "dfu" which is used to have U-Boot create a DFU 615 class device via USB. This command requires that the "dfu_alt_info" 616 environment variable be set and define the alt settings to expose to 617 the host. 618 619config CMD_DM 620 bool "dm - Access to driver model information" 621 depends on DM 622 default y 623 help 624 Provides access to driver model data structures and information, 625 such as a list of devices, list of uclasses and the state of each 626 device (e.g. activated). This is not required for operation, but 627 can be useful to see the state of driver model for debugging or 628 interest. 629 630config CMD_FDC 631 bool "fdcboot - Boot from floppy device" 632 help 633 The 'fdtboot' command allows booting an image from a floppy disk. 634 635config CMD_FLASH 636 bool "flinfo, erase, protect" 637 default y 638 help 639 NOR flash support. 640 flinfo - print FLASH memory information 641 erase - FLASH memory 642 protect - enable or disable FLASH write protection 643 644config CMD_FPGA 645 bool "fpga" 646 depends on FPGA 647 default y 648 help 649 FPGA support. 650 651config CMD_FPGA_LOADBP 652 bool "fpga loadbp - load partial bitstream (Xilinx only)" 653 depends on CMD_FPGA 654 help 655 Supports loading an FPGA device from a bitstream buffer containing 656 a partial bitstream. 657 658config CMD_FPGA_LOADFS 659 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)" 660 depends on CMD_FPGA 661 help 662 Supports loading an FPGA device from a FAT filesystem. 663 664config CMD_FPGA_LOADMK 665 bool "fpga loadmk - load bitstream from image" 666 depends on CMD_FPGA 667 help 668 Supports loading an FPGA device from a image generated by mkimage. 669 670config CMD_FPGA_LOADP 671 bool "fpga loadp - load partial bitstream" 672 depends on CMD_FPGA 673 help 674 Supports loading an FPGA device from a bitstream buffer containing 675 a partial bitstream. 676 677config CMD_FPGAD 678 bool "fpgad - dump FPGA registers" 679 help 680 (legacy, needs conversion to driver model) 681 Provides a way to dump FPGA registers by calling the board-specific 682 fpga_get_reg() function. This functions similarly to the 'md' 683 command. 684 685config CMD_FUSE 686 bool "fuse - support for the fuse subssystem" 687 help 688 (deprecated - needs conversion to driver model) 689 This allows reading, sensing, programming or overriding fuses 690 which control the behaviour of the device. The command uses the 691 fuse_...() API. 692 693config CMD_GPIO 694 bool "gpio" 695 help 696 GPIO support. 697 698config CMD_GPT 699 bool "GPT (GUID Partition Table) command" 700 select PARTITION_UUIDS 701 select EFI_PARTITION 702 select HAVE_BLOCK_DEVICE 703 imply RANDOM_UUID 704 help 705 Enable the 'gpt' command to ready and write GPT style partition 706 tables. 707 708config RANDOM_UUID 709 bool "GPT Random UUID generation" 710 select LIB_UUID 711 help 712 Enable the generation of partitions with random UUIDs if none 713 are provided. 714 715config CMD_GPT_RENAME 716 bool "GPT partition renaming commands" 717 depends on CMD_GPT 718 help 719 Enables the 'gpt' command to interchange names on two GPT 720 partitions via the 'gpt swap' command or to rename single 721 partitions via the 'rename' command. 722 723config CMD_IDE 724 bool "ide - Support for IDE drivers" 725 select IDE 726 help 727 Provides an 'ide' command which allows accessing the IDE drive, 728 reseting the IDE interface, printing the partition table and 729 geting device info. It also enables the 'diskboot' command which 730 permits booting from an IDE drive. 731 732config CMD_IO 733 bool "io - Support for performing I/O accesses" 734 help 735 Provides an 'iod' command to display I/O space and an 'iow' command 736 to write values to the I/O space. This can be useful for manually 737 checking the state of devices during boot when debugging device 738 drivers, etc. 739 740config CMD_IOTRACE 741 bool "iotrace - Support for tracing I/O activity" 742 help 743 Provides an 'iotrace' command which supports recording I/O reads and 744 writes in a trace buffer in memory . It also maintains a checksum 745 of the trace records (even if space is exhausted) so that the 746 sequence of I/O accesses can be verified. 747 748 When debugging drivers it is useful to see what I/O accesses were 749 done and in what order. 750 751 Even if the individual accesses are of little interest it can be 752 useful to verify that the access pattern is consistent each time 753 an operation is performed. In this case a checksum can be used to 754 characterise the operation of a driver. The checksum can be compared 755 across different runs of the operation to verify that the driver is 756 working properly. 757 758 In particular, when performing major refactoring of the driver, where 759 the access pattern should not change, the checksum provides assurance 760 that the refactoring work has not broken the driver. 761 762 This works by sneaking into the io.h heder for an architecture and 763 redirecting I/O accesses through iotrace's tracing mechanism. 764 765 For now no commands are provided to examine the trace buffer. The 766 format is fairly simple, so 'md' is a reasonable substitute. 767 768 Note: The checksum feature is only useful for I/O regions where the 769 contents do not change outside of software control. Where this is not 770 suitable you can fall back to manually comparing the addresses. It 771 might be useful to enhance tracing to only checksum the accesses and 772 not the data read/written. 773 774config CMD_I2C 775 bool "i2c" 776 help 777 I2C support. 778 779config CMD_LOADB 780 bool "loadb" 781 default y 782 help 783 Load a binary file over serial line. 784 785config CMD_LOADS 786 bool "loads" 787 default y 788 help 789 Load an S-Record file over serial line 790 791config CMD_MMC 792 bool "mmc" 793 help 794 MMC memory mapped support. 795 796config CMD_NAND 797 bool "nand" 798 default y if NAND_SUNXI 799 help 800 NAND support. 801 802if CMD_NAND 803config CMD_NAND_TRIMFFS 804 bool "nand write.trimffs" 805 default y if ARCH_SUNXI 806 help 807 Allows one to skip empty pages when flashing something on a NAND. 808 809config CMD_NAND_LOCK_UNLOCK 810 bool "nand lock/unlock" 811 help 812 NAND locking support. 813 814config CMD_NAND_TORTURE 815 bool "nand torture" 816 help 817 NAND torture support. 818 819endif # CMD_NAND 820 821config CMD_NVME 822 bool "nvme" 823 depends on NVME 824 default y if NVME 825 help 826 NVM Express device support 827 828config CMD_MMC_SPI 829 bool "mmc_spi - Set up MMC SPI device" 830 help 831 Provides a way to set up an MMC (Multimedia Card) SPI (Serial 832 Peripheral Interface) device. The device provides a means of 833 accessing an MMC device via SPI using a single data line, limited 834 to 20MHz. It is useful since it reduces the amount of protocol code 835 required. 836 837config CMD_ONENAND 838 bool "onenand - access to onenand device" 839 help 840 OneNAND is a brand of NAND ('Not AND' gate) flash which provides 841 various useful features. This command allows reading, writing, 842 and erasing blocks. It allso provides a way to show and change 843 bad blocks, and test the device. 844 845config CMD_PART 846 bool "part" 847 select PARTITION_UUIDS 848 select HAVE_BLOCK_DEVICE 849 help 850 Read and display information about the partition table on 851 various media. 852 853config CMD_PCI 854 bool "pci - Access PCI devices" 855 help 856 Provide access to PCI (Peripheral Interconnect Bus), a type of bus 857 used on some devices to allow the CPU to communicate with its 858 peripherals. Sub-commands allow bus enumeration, displaying and 859 changing configuration space and a few other features. 860 861config CMD_PCMCIA 862 bool "pinit - Set up PCMCIA device" 863 help 864 Provides a means to initialise a PCMCIA (Personal Computer Memory 865 Card International Association) device. This is an old standard from 866 about 1990. These devices are typically removable memory or network 867 cards using a standard 68-pin connector. 868 869config CMD_READ 870 bool "read - Read binary data from a partition" 871 help 872 Provides low-level access to the data in a partition. 873 874config CMD_REMOTEPROC 875 bool "remoteproc" 876 depends on REMOTEPROC 877 help 878 Support for Remote Processor control 879 880config CMD_SATA 881 bool "sata - Access SATA subsystem" 882 select SATA 883 help 884 SATA (Serial Advanced Technology Attachment) is a serial bus 885 standard for connecting to hard drives and other storage devices. 886 This command provides information about attached devices and allows 887 reading, writing and other operations. 888 889 SATA replaces PATA (originally just ATA), which stands for Parallel AT 890 Attachment, where AT refers to an IBM AT (Advanced Technology) 891 computer released in 1984. 892 893config CMD_SAVES 894 bool "saves - Save a file over serial in S-Record format" 895 help 896 Provides a way to save a binary file using the Motorola S-Record 897 format over the serial line. 898 899config CMD_SCSI 900 bool "scsi - Access to SCSI devices" 901 default y if SCSI 902 help 903 This provides a 'scsi' command which provides access to SCSI (Small 904 Computer System Interface) devices. The command provides a way to 905 scan the bus, reset the bus, read and write data and get information 906 about devices. 907 908config CMD_SDRAM 909 bool "sdram - Print SDRAM configuration information" 910 help 911 Provides information about attached SDRAM. This assumed that the 912 SDRAM has an EEPROM with information that can be read using the 913 I2C bus. This is only available on some boards. 914 915config CMD_SF 916 bool "sf" 917 help 918 SPI Flash support 919 920config CMD_SF_TEST 921 bool "sf test - Allow testing of SPI flash" 922 help 923 Provides a way to test that SPI flash is working correctly. The 924 test is destructive, in that an area of SPI flash must be provided 925 for the test to use. Performance information is also provided, 926 measuring the performance of reading, writing and erasing in 927 Mbps (Million Bits Per Second). This value should approximately 928 equal the SPI bus speed for a single-bit-wide SPI bus, assuming 929 everything is working properly. 930 931config CMD_SPI 932 bool "sspi" 933 help 934 SPI utility command. 935 936config CMD_TSI148 937 bool "tsi148 - Command to access tsi148 device" 938 help 939 This provides various sub-commands to initialise and configure the 940 Turndra tsi148 device. See the command help for full details. 941 942config CMD_UNIVERSE 943 bool "universe - Command to set up the Turndra Universe controller" 944 help 945 This allows setting up the VMEbus provided by this controller. 946 See the command help for full details. 947 948config CMD_USB 949 bool "usb" 950 select HAVE_BLOCK_DEVICE 951 help 952 USB support. 953 954config CMD_USB_SDP 955 bool "sdp" 956 select USB_FUNCTION_SDP 957 help 958 Enables the command "sdp" which is used to have U-Boot emulating the 959 Serial Download Protocol (SDP) via USB. 960config CMD_ROCKUSB 961 bool "rockusb" 962 depends on USB_FUNCTION_ROCKUSB 963 help 964 Rockusb protocol is widely used by Rockchip SoC based devices. It can 965 read/write info, image to/from devices. This enable rockusb command 966 support to communication with rockusb device. for more detail about 967 this command, please read doc/README.rockusb. 968 969config CMD_USB_MASS_STORAGE 970 bool "UMS usb mass storage" 971 select USB_FUNCTION_MASS_STORAGE 972 help 973 USB mass storage support 974 975endmenu 976 977 978menu "Shell scripting commands" 979 980config CMD_ECHO 981 bool "echo" 982 default y 983 help 984 Echo args to console 985 986config CMD_ITEST 987 bool "itest" 988 default y 989 help 990 Return true/false on integer compare. 991 992config CMD_SOURCE 993 bool "source" 994 default y 995 help 996 Run script from memory 997 998config CMD_SETEXPR 999 bool "setexpr" 1000 default y 1001 help 1002 Evaluate boolean and math expressions and store the result in an env 1003 variable. 1004 Also supports loading the value at a memory location into a variable. 1005 If CONFIG_REGEX is enabled, setexpr also supports a gsub function. 1006 1007endmenu 1008 1009menu "Network commands" 1010 1011if NET 1012 1013config CMD_NET 1014 bool "bootp, tftpboot" 1015 default y 1016 help 1017 Network commands. 1018 bootp - boot image via network using BOOTP/TFTP protocol 1019 tftpboot - boot image via network using TFTP protocol 1020 1021config CMD_TFTPPUT 1022 bool "tftp put" 1023 help 1024 TFTP put command, for uploading files to a server 1025 1026config CMD_TFTPSRV 1027 bool "tftpsrv" 1028 help 1029 Act as a TFTP server and boot the first received file 1030 1031config CMD_RARP 1032 bool "rarpboot" 1033 help 1034 Boot image via network using RARP/TFTP protocol 1035 1036config CMD_DHCP 1037 bool "dhcp" 1038 depends on CMD_NET 1039 help 1040 Boot image via network using DHCP/TFTP protocol 1041 1042config CMD_PXE 1043 bool "pxe" 1044 depends on CMD_NET 1045 select MENU 1046 help 1047 Boot image via network using PXE protocol 1048 1049config CMD_NFS 1050 bool "nfs" 1051 default y 1052 help 1053 Boot image via network using NFS protocol. 1054 1055config CMD_MII 1056 bool "mii" 1057 help 1058 Enable MII utility commands. 1059 1060config CMD_PING 1061 bool "ping" 1062 help 1063 Send ICMP ECHO_REQUEST to network host 1064 1065config CMD_CDP 1066 bool "cdp" 1067 help 1068 Perform CDP network configuration 1069 1070config CMD_SNTP 1071 bool "sntp" 1072 help 1073 Synchronize RTC via network 1074 1075config CMD_DNS 1076 bool "dns" 1077 help 1078 Lookup the IP of a hostname 1079 1080config CMD_LINK_LOCAL 1081 bool "linklocal" 1082 help 1083 Acquire a network IP address using the link-local protocol 1084 1085config CMD_ETHSW 1086 bool "ethsw" 1087 help 1088 Allow control of L2 Ethernet switch commands. These are supported 1089 by the vsc9953 Ethernet driver at present. Sub-commands allow 1090 operations such as enabling / disabling a port and 1091 viewing/maintaining the filtering database (FDB) 1092 1093endif 1094 1095endmenu 1096 1097menu "Misc commands" 1098 1099config CMD_BMP 1100 bool "Enable 'bmp' command" 1101 depends on LCD || DM_VIDEO || VIDEO 1102 help 1103 This provides a way to obtain information about a BMP-format iamge 1104 and to display it. BMP (which presumably stands for BitMaP) is a 1105 file format defined by Microsoft which supports images of various 1106 depths, formats and compression methods. Headers on the file 1107 determine the formats used. This command can be used by first loading 1108 the image into RAM, then using this command to look at it or display 1109 it. 1110 1111config CMD_BSP 1112 bool "Enable board-specific commands" 1113 help 1114 (deprecated: instead, please define a Kconfig option for each command) 1115 1116 Some boards have board-specific commands which are only enabled 1117 during developemnt and need to be turned off for production. This 1118 option provides a way to control this. The commands that are enabled 1119 vary depending on the board. 1120 1121config CMD_BKOPS_ENABLE 1122 bool "mmc bkops enable" 1123 depends on CMD_MMC 1124 default n 1125 help 1126 Enable command for setting manual background operations handshake 1127 on a eMMC device. The feature is optionally available on eMMC devices 1128 conforming to standard >= 4.41. 1129 1130config CMD_BLOCK_CACHE 1131 bool "blkcache - control and stats for block cache" 1132 depends on BLOCK_CACHE 1133 default y if BLOCK_CACHE 1134 help 1135 Enable the blkcache command, which can be used to control the 1136 operation of the cache functions. 1137 This is most useful when fine-tuning the operation of the cache 1138 during development, but also allows the cache to be disabled when 1139 it might hurt performance (e.g. when using the ums command). 1140 1141config CMD_CACHE 1142 bool "icache or dcache" 1143 help 1144 Enable the "icache" and "dcache" commands 1145 1146config CMD_DISPLAY 1147 bool "Enable the 'display' command, for character displays" 1148 help 1149 (this needs porting to driver model) 1150 This enables the 'display' command which allows a string to be 1151 displayed on a simple board-specific display. Implement 1152 display_putc() to use it. 1153 1154config CMD_LED 1155 bool "led" 1156 default y if LED 1157 help 1158 Enable the 'led' command which allows for control of LEDs supported 1159 by the board. The LEDs can be listed with 'led list' and controlled 1160 with led on/off/togle/blink. Any LED drivers can be controlled with 1161 this command, e.g. led_gpio. 1162 1163config CMD_DATE 1164 bool "date" 1165 default y if DM_RTC 1166 help 1167 Enable the 'date' command for getting/setting the time/date in RTC 1168 devices. 1169 1170config CMD_TIME 1171 bool "time" 1172 help 1173 Run commands and summarize execution time. 1174 1175config CMD_GETTIME 1176 bool "gettime - read elapsed time" 1177 help 1178 Enable the 'gettime' command which reads the elapsed time since 1179 U-Boot started running. This shows the time in seconds and 1180 milliseconds. See also the 'bootstage' command which provides more 1181 flexibility for boot timing. 1182 1183# TODO: rename to CMD_SLEEP 1184config CMD_MISC 1185 bool "sleep" 1186 default y 1187 help 1188 Delay execution for some time 1189 1190config CMD_TIMER 1191 bool "timer" 1192 help 1193 Access the system timer. 1194 1195config CMD_SOUND 1196 bool "sound" 1197 depends on SOUND 1198 help 1199 This provides basic access to the U-Boot's sound support. The main 1200 feature is to play a beep. 1201 1202 sound init - set up sound system 1203 sound play - play a sound 1204 1205config CMD_QFW 1206 bool "qfw" 1207 select QFW 1208 help 1209 This provides access to the QEMU firmware interface. The main 1210 feature is to allow easy loading of files passed to qemu-system 1211 via -kernel / -initrd 1212 1213source "cmd/mvebu/Kconfig" 1214 1215config CMD_TERMINAL 1216 bool "terminal - provides a way to attach a serial terminal" 1217 help 1218 Provides a 'cu'-like serial terminal command. This can be used to 1219 access other serial ports from the system console. The terminal 1220 is very simple with no special processing of characters. As with 1221 cu, you can press ~. (tilde followed by period) to exit. 1222 1223config CMD_UUID 1224 bool "uuid, guid - generation of unique IDs" 1225 select LIB_UUID 1226 help 1227 This enables two commands: 1228 1229 uuid - generate random Universally Unique Identifier 1230 guid - generate Globally Unique Identifier based on random UUID 1231 1232 The two commands are very similar except for the endianness of the 1233 output. 1234 1235endmenu 1236 1237source "cmd/ti/Kconfig" 1238 1239config CMD_BOOTSTAGE 1240 bool "Enable the 'bootstage' command" 1241 depends on BOOTSTAGE 1242 help 1243 Add a 'bootstage' command which supports printing a report 1244 and un/stashing of bootstage data. 1245 1246menu "Power commands" 1247config CMD_PMIC 1248 bool "Enable Driver Model PMIC command" 1249 depends on DM_PMIC 1250 help 1251 This is the pmic command, based on a driver model pmic's API. 1252 Command features are unchanged: 1253 - list - list pmic devices 1254 - pmic dev <id> - show or [set] operating pmic device (NEW) 1255 - pmic dump - dump registers 1256 - pmic read address - read byte of register at address 1257 - pmic write address - write byte to register at address 1258 The only one change for this command is 'dev' subcommand. 1259 1260config CMD_REGULATOR 1261 bool "Enable Driver Model REGULATOR command" 1262 depends on DM_REGULATOR 1263 help 1264 This command is based on driver model regulator's API. 1265 User interface features: 1266 - list - list regulator devices 1267 - regulator dev <id> - show or [set] operating regulator device 1268 - regulator info - print constraints info 1269 - regulator status - print operating status 1270 - regulator value <val] <-f> - print/[set] voltage value [uV] 1271 - regulator current <val> - print/[set] current value [uA] 1272 - regulator mode <id> - print/[set] operating mode id 1273 - regulator enable - enable the regulator output 1274 - regulator disable - disable the regulator output 1275 1276 The '-f' (force) option can be used for set the value which exceeds 1277 the limits, which are found in device-tree and are kept in regulator's 1278 uclass platdata structure. 1279 1280endmenu 1281 1282menu "Security commands" 1283config CMD_AES 1284 bool "Enable the 'aes' command" 1285 select AES 1286 help 1287 This provides a means to encrypt and decrypt data using the AES 1288 (Advanced Encryption Standard). This algorithm uses a symetric key 1289 and is widely used as a streaming cipher. Different key lengths are 1290 supported by the algorithm but this command only supports 128 bits 1291 at present. 1292 1293config CMD_BLOB 1294 bool "Enable the 'blob' command" 1295 help 1296 This is used with the Freescale secure boot mechanism. 1297 1298 Freescale's SEC block has built-in Blob Protocol which provides 1299 a method for protecting user-defined data across system power 1300 cycles. SEC block protects data in a data structure called a Blob, 1301 which provides both confidentiality and integrity protection. 1302 1303 Encapsulating data as a blob 1304 Each time that the Blob Protocol is used to protect data, a 1305 different randomly generated key is used to encrypt the data. 1306 This random key is itself encrypted using a key which is derived 1307 from SoC's non-volatile secret key and a 16 bit Key identifier. 1308 The resulting encrypted key along with encrypted data is called a 1309 blob. The non-volatile secure key is available for use only during 1310 secure boot. 1311 1312 During decapsulation, the reverse process is performed to get back 1313 the original data. 1314 1315 Sub-commands: 1316 blob enc - encapsulating data as a cryptgraphic blob 1317 blob dec - decapsulating cryptgraphic blob to get the data 1318 1319 Syntax: 1320 1321 blob enc src dst len km 1322 1323 Encapsulate and create blob of data $len bytes long 1324 at address $src and store the result at address $dst. 1325 $km is the 16 byte key modifier is also required for 1326 generation/use as key for cryptographic operation. Key 1327 modifier should be 16 byte long. 1328 1329 blob dec src dst len km 1330 1331 Decapsulate the blob of data at address $src and 1332 store result of $len byte at addr $dst. 1333 $km is the 16 byte key modifier is also required for 1334 generation/use as key for cryptographic operation. Key 1335 modifier should be 16 byte long. 1336 1337config CMD_HASH 1338 bool "Support 'hash' command" 1339 select HASH 1340 help 1341 This provides a way to hash data in memory using various supported 1342 algorithms (such as SHA1, MD5, CRC32). The computed digest can be 1343 saved to memory or to an environment variable. It is also possible 1344 to verify a hash against data in memory. 1345 1346config HASH_VERIFY 1347 bool "hash -v" 1348 depends on CMD_HASH 1349 help 1350 Add -v option to verify data against a hash. 1351 1352config CMD_TPM 1353 bool "Enable the 'tpm' command" 1354 depends on TPM 1355 help 1356 This provides a means to talk to a TPM from the command line. A wide 1357 range of commands if provided - see 'tpm help' for details. The 1358 command requires a suitable TPM on your board and the correct driver 1359 must be enabled. 1360 1361config CMD_TPM_TEST 1362 bool "Enable the 'tpm test' command" 1363 depends on CMD_TPM 1364 help 1365 This provides a a series of tests to confirm that the TPM is working 1366 correctly. The tests cover initialisation, non-volatile RAM, extend, 1367 global lock and checking that timing is within expectations. The 1368 tests pass correctly on Infineon TPMs but may need to be adjusted 1369 for other devices. 1370 1371endmenu 1372 1373menu "Firmware commands" 1374config CMD_CROS_EC 1375 bool "Enable crosec command" 1376 depends on CROS_EC 1377 default y 1378 help 1379 Enable command-line access to the Chrome OS EC (Embedded 1380 Controller). This provides the 'crosec' command which has 1381 a number of sub-commands for performing EC tasks such as 1382 updating its flash, accessing a small saved context area 1383 and talking to the I2C bus behind the EC (if there is one). 1384endmenu 1385 1386menu "Filesystem commands" 1387config CMD_BTRFS 1388 bool "Enable the 'btrsubvol' command" 1389 select FS_BTRFS 1390 help 1391 This enables the 'btrsubvol' command to list subvolumes 1392 of a BTRFS filesystem. There are no special commands for 1393 listing BTRFS directories or loading BTRFS files - this 1394 can be done by the generic 'fs' commands (see CMD_FS_GENERIC) 1395 when BTRFS is enabled (see FS_BTRFS). 1396 1397config CMD_CBFS 1398 bool "Enable the 'cbfs' command" 1399 depends on FS_CBFS 1400 help 1401 Define this to enable support for reading from a Coreboot 1402 filesystem. This is a ROM-based filesystem used for accessing files 1403 on systems that use coreboot as the first boot-loader and then load 1404 U-Boot to actually boot the Operating System. Available commands are 1405 cbfsinit, cbfsinfo, cbfsls and cbfsload. 1406 1407config CMD_CRAMFS 1408 bool "Enable the 'cramfs' command" 1409 depends on FS_CRAMFS 1410 help 1411 This provides commands for dealing with CRAMFS (Compressed ROM 1412 filesystem). CRAMFS is useful when space is tight since files are 1413 compressed. Two commands are provided: 1414 1415 cramfsls - lists files in a cramfs image 1416 cramfsload - loads a file from a cramfs image 1417 1418config CMD_EXT2 1419 bool "ext2 command support" 1420 select FS_EXT4 1421 help 1422 Enables EXT2 FS command 1423 1424config CMD_EXT4 1425 bool "ext4 command support" 1426 select FS_EXT4 1427 help 1428 Enables EXT4 FS command 1429 1430config CMD_EXT4_WRITE 1431 depends on CMD_EXT4 1432 bool "ext4 write command support" 1433 select EXT4_WRITE 1434 help 1435 Enables EXT4 FS write command 1436 1437config CMD_FAT 1438 bool "FAT command support" 1439 select FS_FAT 1440 help 1441 Support for the FAT fs 1442 1443config CMD_FS_GENERIC 1444 bool "filesystem commands" 1445 help 1446 Enables filesystem commands (e.g. load, ls) that work for multiple 1447 fs types. 1448 1449config CMD_FS_UUID 1450 bool "fsuuid command" 1451 help 1452 Enables fsuuid command for filesystem UUID. 1453 1454config CMD_JFFS2 1455 bool "jffs2 command" 1456 select FS_JFFS2 1457 help 1458 Enables commands to support the JFFS2 (Journalling Flash File System 1459 version 2) filesystem. This enables fsload, ls and fsinfo which 1460 provide the ability to load files, list directories and obtain 1461 filesystem information. 1462 1463config CMD_MTDPARTS 1464 bool "MTD partition support" 1465 help 1466 MTD partition support 1467 1468config MTDIDS_DEFAULT 1469 string "Default MTD IDs" 1470 depends on CMD_MTDPARTS || CMD_NAND || CMD_FLASH 1471 help 1472 Defines a default MTD IDs list for use with MTD partitions in the 1473 Linux MTD command line partitions format. 1474 1475config MTDPARTS_DEFAULT 1476 string "Default MTD partition scheme" 1477 depends on CMD_MTDPARTS || CMD_NAND || CMD_FLASH 1478 help 1479 Defines a default MTD partitioning scheme in the Linux MTD command 1480 line partitions format 1481 1482config CMD_MTDPARTS_SPREAD 1483 bool "Padd partition size to take account of bad blocks" 1484 depends on CMD_MTDPARTS 1485 help 1486 This enables the 'spread' sub-command of the mtdparts command. 1487 This command will modify the existing mtdparts variable by increasing 1488 the size of the partitions such that 1) each partition's net size is 1489 at least as large as the size specified in the mtdparts variable and 1490 2) each partition starts on a good block. 1491 1492config CMD_REISER 1493 bool "reiser - Access to reiserfs filesystems" 1494 help 1495 This provides two commands which operate on a resierfs filesystem, 1496 commonly used some years ago: 1497 1498 reiserls - list files 1499 reiserload - load a file 1500 1501config CMD_YAFFS2 1502 bool "yaffs2 - Access of YAFFS2 filesystem" 1503 depends on YAFFS2 1504 default y 1505 help 1506 This provides commands for accessing a YAFFS2 filesystem. Yet 1507 Another Flash Filesystem 2 is a filesystem designed specifically 1508 for NAND flash. It incorporates bad-block management and ensures 1509 that device writes are sequential regardless of filesystem 1510 activity. 1511 1512config CMD_ZFS 1513 bool "zfs - Access of ZFS filesystem" 1514 help 1515 This provides commands to accessing a ZFS filesystem, commonly used 1516 on Solaris systems. Two sub-commands are provided: 1517 1518 zfsls - list files in a directory 1519 zfsload - load a file 1520 1521 See doc/README.zfs for more details. 1522 1523endmenu 1524 1525menu "Debug commands" 1526 1527config CMD_BEDBUG 1528 bool "bedbug" 1529 help 1530 The bedbug (emBEDded deBUGger) command provides debugging features 1531 for some PowerPC processors. For details please see the 1532 docuemntation in doc/README.beddbug 1533 1534config CMD_DIAG 1535 bool "diag - Board diagnostics" 1536 help 1537 This command provides access to board diagnostic tests. These are 1538 called Power-on Self Tests (POST). The command allows listing of 1539 available tests and running either all the tests, or specific tests 1540 identified by name. 1541 1542config CMD_IRQ 1543 bool "irq - Show information about interrupts" 1544 depends on !ARM && !MIPS && !SH 1545 help 1546 This enables two commands: 1547 1548 interrupts - enable or disable interrupts 1549 irqinfo - print device-specific interrupt information 1550 1551config CMD_KGDB 1552 bool "kgdb - Allow debugging of U-Boot with gdb" 1553 help 1554 This enables a 'kgdb' command which allows gdb to connect to U-Boot 1555 over a serial link for debugging purposes. This allows 1556 single-stepping, inspecting variables, etc. This is supported only 1557 on PowerPC at present. 1558 1559config CMD_LOG 1560 bool "log - Generation, control and access to logging" 1561 help 1562 This provides access to logging features. It allows the output of 1563 log data to be controlled to a limited extent (setting up the default 1564 maximum log level for emitting of records). It also provides access 1565 to a command used for testing the log system. 1566 1567config CMD_TRACE 1568 bool "trace - Support tracing of function calls and timing" 1569 help 1570 Enables a command to control using of function tracing within 1571 U-Boot. This allows recording of call traces including timing 1572 information. The command can write data to memory for exporting 1573 for analsys (e.g. using bootchart). See doc/README.trace for full 1574 details. 1575 1576endmenu 1577 1578config CMD_UBI 1579 tristate "Enable UBI - Unsorted block images commands" 1580 select CRC32 1581 select MTD_UBI 1582 select CMD_MTDPARTS 1583 default y if NAND_SUNXI 1584 help 1585 UBI is a software layer above MTD layer which admits use of LVM-like 1586 logical volumes on top of MTD devices, hides some complexities of 1587 flash chips like wear and bad blocks and provides some other useful 1588 capabilities. Please, consult the MTD web site for more details 1589 (www.linux-mtd.infradead.org). Activate this option if you want 1590 to use U-Boot UBI commands. 1591 1592config CMD_UBIFS 1593 tristate "Enable UBIFS - Unsorted block images filesystem commands" 1594 depends on CMD_UBI 1595 select CRC32 1596 select LZO 1597 default y if CMD_UBI 1598 help 1599 UBIFS is a file system for flash devices which works on top of UBI. 1600 1601endmenu 1602