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