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_BINOP 427 bool "binop" 428 help 429 Compute binary operations (xor, or, and) of byte arrays of arbitrary 430 size from memory and store the result in memory or the environment. 431 432config CMD_CRC32 433 bool "crc32" 434 select HASH 435 default y 436 help 437 Compute CRC32. 438 439config CRC32_VERIFY 440 bool "crc32 -v" 441 depends on CMD_CRC32 442 help 443 Add -v option to verify data against a crc32 checksum. 444 445config CMD_EEPROM 446 bool "eeprom - EEPROM subsystem" 447 help 448 (deprecated, needs conversion to driver model) 449 Provides commands to read and write EEPROM (Electrically Erasable 450 Programmable Read Only Memory) chips that are connected over an 451 I2C bus. 452 453config CMD_EEPROM_LAYOUT 454 bool "Enable layout-aware eeprom commands" 455 depends on CMD_EEPROM 456 help 457 (deprecated, needs conversion to driver model) 458 When enabled, additional eeprom sub-commands become available. 459 460 eeprom print - prints the contents of the eeprom in a human-readable 461 way (eeprom layout fields, and data formatted to be fit for human 462 consumption). 463 464 eeprom update - allows user to update eeprom fields by specifying 465 the field name, and providing the new data in a human readable format 466 (same format as displayed by the eeprom print command). 467 468 Both commands can either auto detect the layout, or be told which 469 layout to use. 470 471 Feature API: 472 __weak int parse_layout_version(char *str) 473 - override to provide your own layout name parsing 474 __weak void __eeprom_layout_assign(struct eeprom_layout *layout, 475 int layout_version); 476 - override to setup the layout metadata based on the version 477 __weak int eeprom_layout_detect(unsigned char *data) 478 - override to provide your own algorithm for detecting layout 479 version 480 eeprom_field.c 481 - contains various printing and updating functions for common 482 types of eeprom fields. Can be used for defining 483 custom layouts. 484 485config EEPROM_LAYOUT_HELP_STRING 486 string "Tells user what layout names are supported" 487 depends on CMD_EEPROM_LAYOUT 488 default "<not defined>" 489 help 490 Help printed with the LAYOUT VERSIONS part of the 'eeprom' 491 command's help. 492 493config LOOPW 494 bool "loopw" 495 help 496 Infinite write loop on address range 497 498config CMD_MD5SUM 499 bool "md5sum" 500 default n 501 select MD5 502 help 503 Compute MD5 checksum. 504 505config MD5SUM_VERIFY 506 bool "md5sum -v" 507 default n 508 depends on CMD_MD5SUM 509 help 510 Add -v option to verify data against an MD5 checksum. 511 512config CMD_MEMINFO 513 bool "meminfo" 514 help 515 Display memory information. 516 517config CMD_MEMORY 518 bool "md, mm, nm, mw, cp, cmp, base, loop" 519 default y 520 help 521 Memory commands. 522 md - memory display 523 mm - memory modify (auto-incrementing address) 524 nm - memory modify (constant address) 525 mw - memory write (fill) 526 cp - memory copy 527 cmp - memory compare 528 base - print or set address offset 529 loop - initialize loop on address range 530 531config CMD_MEMTEST 532 bool "memtest" 533 help 534 Simple RAM read/write test. 535 536if CMD_MEMTEST 537 538config SYS_ALT_MEMTEST 539 bool "Alternative test" 540 help 541 Use a more complete alternative memory test. 542 543endif 544 545config CMD_MX_CYCLIC 546 bool "mdc, mwc" 547 help 548 mdc - memory display cyclic 549 mwc - memory write cyclic 550 551config CMD_SHA1SUM 552 bool "sha1sum" 553 select SHA1 554 help 555 Compute SHA1 checksum. 556 557config SHA1SUM_VERIFY 558 bool "sha1sum -v" 559 depends on CMD_SHA1SUM 560 help 561 Add -v option to verify data against a SHA1 checksum. 562 563config CMD_STRINGS 564 bool "strings - display strings in memory" 565 help 566 This works similarly to the Unix 'strings' command except that it 567 works with a memory range. String of printable characters found 568 within the range are displayed. The minimum number of characters 569 for a sequence to be considered a string can be provided. 570 571endmenu 572 573menu "Compression commands" 574 575config CMD_LZMADEC 576 bool "lzmadec" 577 default y if CMD_BOOTI 578 select LZMA 579 help 580 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm) 581 image from memory. 582 583config CMD_UNZIP 584 bool "unzip" 585 default y if CMD_BOOTI 586 help 587 Uncompress a zip-compressed memory region. 588 589config CMD_ZIP 590 bool "zip" 591 help 592 Compress a memory region with zlib deflate method. 593 594endmenu 595 596menu "Device access commands" 597 598config CMD_ARMFLASH 599 #depends on FLASH_CFI_DRIVER 600 bool "armflash" 601 help 602 ARM Ltd reference designs flash partition access 603 604config CMD_CLK 605 bool "clk - Show clock frequencies" 606 help 607 (deprecated) 608 Shows clock frequences by calling a sock_clk_dump() hook function. 609 This is depreated in favour of using the CLK uclass and accessing 610 clock values from associated drivers. However currently no command 611 exists for this. 612 613config CMD_DEMO 614 bool "demo - Demonstration commands for driver model" 615 depends on DM 616 help 617 Provides a 'demo' command which can be used to play around with 618 driver model. To use this properly you will need to enable one or 619 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE). 620 Otherwise you will always get an empty list of devices. The demo 621 devices are defined in the sandbox device tree, so the easiest 622 option is to use sandbox and pass the -d point to sandbox's 623 u-boot.dtb file. 624 625config CMD_DFU 626 bool "dfu" 627 select DFU 628 help 629 Enables the command "dfu" which is used to have U-Boot create a DFU 630 class device via USB. This command requires that the "dfu_alt_info" 631 environment variable be set and define the alt settings to expose to 632 the host. 633 634config CMD_DM 635 bool "dm - Access to driver model information" 636 depends on DM 637 default y 638 help 639 Provides access to driver model data structures and information, 640 such as a list of devices, list of uclasses and the state of each 641 device (e.g. activated). This is not required for operation, but 642 can be useful to see the state of driver model for debugging or 643 interest. 644 645config CMD_FDC 646 bool "fdcboot - Boot from floppy device" 647 help 648 The 'fdtboot' command allows booting an image from a floppy disk. 649 650config CMD_FLASH 651 bool "flinfo, erase, protect" 652 default y 653 help 654 NOR flash support. 655 flinfo - print FLASH memory information 656 erase - FLASH memory 657 protect - enable or disable FLASH write protection 658 659config CMD_FPGA 660 bool "fpga" 661 depends on FPGA 662 default y 663 help 664 FPGA support. 665 666config CMD_FPGA_LOADBP 667 bool "fpga loadbp - load partial bitstream (Xilinx only)" 668 depends on CMD_FPGA 669 help 670 Supports loading an FPGA device from a bitstream buffer containing 671 a partial bitstream. 672 673config CMD_FPGA_LOADFS 674 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)" 675 depends on CMD_FPGA 676 help 677 Supports loading an FPGA device from a FAT filesystem. 678 679config CMD_FPGA_LOADMK 680 bool "fpga loadmk - load bitstream from image" 681 depends on CMD_FPGA 682 help 683 Supports loading an FPGA device from a image generated by mkimage. 684 685config CMD_FPGA_LOADP 686 bool "fpga loadp - load partial bitstream" 687 depends on CMD_FPGA 688 help 689 Supports loading an FPGA device from a bitstream buffer containing 690 a partial bitstream. 691 692config CMD_FPGAD 693 bool "fpgad - dump FPGA registers" 694 help 695 (legacy, needs conversion to driver model) 696 Provides a way to dump FPGA registers by calling the board-specific 697 fpga_get_reg() function. This functions similarly to the 'md' 698 command. 699 700config CMD_FUSE 701 bool "fuse - support for the fuse subssystem" 702 help 703 (deprecated - needs conversion to driver model) 704 This allows reading, sensing, programming or overriding fuses 705 which control the behaviour of the device. The command uses the 706 fuse_...() API. 707 708config CMD_GPIO 709 bool "gpio" 710 help 711 GPIO support. 712 713config CMD_GPT 714 bool "GPT (GUID Partition Table) command" 715 select PARTITION_UUIDS 716 select EFI_PARTITION 717 select HAVE_BLOCK_DEVICE 718 imply RANDOM_UUID 719 help 720 Enable the 'gpt' command to ready and write GPT style partition 721 tables. 722 723config RANDOM_UUID 724 bool "GPT Random UUID generation" 725 select LIB_UUID 726 help 727 Enable the generation of partitions with random UUIDs if none 728 are provided. 729 730config CMD_GPT_RENAME 731 bool "GPT partition renaming commands" 732 depends on CMD_GPT 733 help 734 Enables the 'gpt' command to interchange names on two GPT 735 partitions via the 'gpt swap' command or to rename single 736 partitions via the 'rename' command. 737 738config CMD_IDE 739 bool "ide - Support for IDE drivers" 740 select IDE 741 help 742 Provides an 'ide' command which allows accessing the IDE drive, 743 reseting the IDE interface, printing the partition table and 744 geting device info. It also enables the 'diskboot' command which 745 permits booting from an IDE drive. 746 747config CMD_IO 748 bool "io - Support for performing I/O accesses" 749 help 750 Provides an 'iod' command to display I/O space and an 'iow' command 751 to write values to the I/O space. This can be useful for manually 752 checking the state of devices during boot when debugging device 753 drivers, etc. 754 755config CMD_IOTRACE 756 bool "iotrace - Support for tracing I/O activity" 757 help 758 Provides an 'iotrace' command which supports recording I/O reads and 759 writes in a trace buffer in memory . It also maintains a checksum 760 of the trace records (even if space is exhausted) so that the 761 sequence of I/O accesses can be verified. 762 763 When debugging drivers it is useful to see what I/O accesses were 764 done and in what order. 765 766 Even if the individual accesses are of little interest it can be 767 useful to verify that the access pattern is consistent each time 768 an operation is performed. In this case a checksum can be used to 769 characterise the operation of a driver. The checksum can be compared 770 across different runs of the operation to verify that the driver is 771 working properly. 772 773 In particular, when performing major refactoring of the driver, where 774 the access pattern should not change, the checksum provides assurance 775 that the refactoring work has not broken the driver. 776 777 This works by sneaking into the io.h heder for an architecture and 778 redirecting I/O accesses through iotrace's tracing mechanism. 779 780 For now no commands are provided to examine the trace buffer. The 781 format is fairly simple, so 'md' is a reasonable substitute. 782 783 Note: The checksum feature is only useful for I/O regions where the 784 contents do not change outside of software control. Where this is not 785 suitable you can fall back to manually comparing the addresses. It 786 might be useful to enhance tracing to only checksum the accesses and 787 not the data read/written. 788 789config CMD_I2C 790 bool "i2c" 791 help 792 I2C support. 793 794config CMD_LOADB 795 bool "loadb" 796 default y 797 help 798 Load a binary file over serial line. 799 800config CMD_LOADS 801 bool "loads" 802 default y 803 help 804 Load an S-Record file over serial line 805 806config CMD_MMC 807 bool "mmc" 808 help 809 MMC memory mapped support. 810 811config CMD_NAND 812 bool "nand" 813 default y if NAND_SUNXI 814 help 815 NAND support. 816 817if CMD_NAND 818config CMD_NAND_TRIMFFS 819 bool "nand write.trimffs" 820 default y if ARCH_SUNXI 821 help 822 Allows one to skip empty pages when flashing something on a NAND. 823 824config CMD_NAND_LOCK_UNLOCK 825 bool "nand lock/unlock" 826 help 827 NAND locking support. 828 829config CMD_NAND_TORTURE 830 bool "nand torture" 831 help 832 NAND torture support. 833 834endif # CMD_NAND 835 836config CMD_NVME 837 bool "nvme" 838 depends on NVME 839 default y if NVME 840 help 841 NVM Express device support 842 843config CMD_MMC_SPI 844 bool "mmc_spi - Set up MMC SPI device" 845 help 846 Provides a way to set up an MMC (Multimedia Card) SPI (Serial 847 Peripheral Interface) device. The device provides a means of 848 accessing an MMC device via SPI using a single data line, limited 849 to 20MHz. It is useful since it reduces the amount of protocol code 850 required. 851 852config CMD_ONENAND 853 bool "onenand - access to onenand device" 854 help 855 OneNAND is a brand of NAND ('Not AND' gate) flash which provides 856 various useful features. This command allows reading, writing, 857 and erasing blocks. It allso provides a way to show and change 858 bad blocks, and test the device. 859 860config CMD_PART 861 bool "part" 862 select PARTITION_UUIDS 863 select HAVE_BLOCK_DEVICE 864 help 865 Read and display information about the partition table on 866 various media. 867 868config CMD_PCI 869 bool "pci - Access PCI devices" 870 help 871 Provide access to PCI (Peripheral Interconnect Bus), a type of bus 872 used on some devices to allow the CPU to communicate with its 873 peripherals. Sub-commands allow bus enumeration, displaying and 874 changing configuration space and a few other features. 875 876config CMD_PCMCIA 877 bool "pinit - Set up PCMCIA device" 878 help 879 Provides a means to initialise a PCMCIA (Personal Computer Memory 880 Card International Association) device. This is an old standard from 881 about 1990. These devices are typically removable memory or network 882 cards using a standard 68-pin connector. 883 884config CMD_READ 885 bool "read - Read binary data from a partition" 886 help 887 Provides low-level access to the data in a partition. 888 889config CMD_REMOTEPROC 890 bool "remoteproc" 891 depends on REMOTEPROC 892 help 893 Support for Remote Processor control 894 895config CMD_SATA 896 bool "sata - Access SATA subsystem" 897 select SATA 898 help 899 SATA (Serial Advanced Technology Attachment) is a serial bus 900 standard for connecting to hard drives and other storage devices. 901 This command provides information about attached devices and allows 902 reading, writing and other operations. 903 904 SATA replaces PATA (originally just ATA), which stands for Parallel AT 905 Attachment, where AT refers to an IBM AT (Advanced Technology) 906 computer released in 1984. 907 908config CMD_SAVES 909 bool "saves - Save a file over serial in S-Record format" 910 help 911 Provides a way to save a binary file using the Motorola S-Record 912 format over the serial line. 913 914config CMD_SCSI 915 bool "scsi - Access to SCSI devices" 916 default y if SCSI 917 help 918 This provides a 'scsi' command which provides access to SCSI (Small 919 Computer System Interface) devices. The command provides a way to 920 scan the bus, reset the bus, read and write data and get information 921 about devices. 922 923config CMD_SDRAM 924 bool "sdram - Print SDRAM configuration information" 925 help 926 Provides information about attached SDRAM. This assumed that the 927 SDRAM has an EEPROM with information that can be read using the 928 I2C bus. This is only available on some boards. 929 930config CMD_SF 931 bool "sf" 932 help 933 SPI Flash support 934 935config CMD_SF_TEST 936 bool "sf test - Allow testing of SPI flash" 937 help 938 Provides a way to test that SPI flash is working correctly. The 939 test is destructive, in that an area of SPI flash must be provided 940 for the test to use. Performance information is also provided, 941 measuring the performance of reading, writing and erasing in 942 Mbps (Million Bits Per Second). This value should approximately 943 equal the SPI bus speed for a single-bit-wide SPI bus, assuming 944 everything is working properly. 945 946config CMD_SPI 947 bool "sspi" 948 help 949 SPI utility command. 950 951config CMD_TSI148 952 bool "tsi148 - Command to access tsi148 device" 953 help 954 This provides various sub-commands to initialise and configure the 955 Turndra tsi148 device. See the command help for full details. 956 957config CMD_UNIVERSE 958 bool "universe - Command to set up the Turndra Universe controller" 959 help 960 This allows setting up the VMEbus provided by this controller. 961 See the command help for full details. 962 963config CMD_USB 964 bool "usb" 965 select HAVE_BLOCK_DEVICE 966 help 967 USB support. 968 969config CMD_USB_SDP 970 bool "sdp" 971 select USB_FUNCTION_SDP 972 help 973 Enables the command "sdp" which is used to have U-Boot emulating the 974 Serial Download Protocol (SDP) via USB. 975config CMD_ROCKUSB 976 bool "rockusb" 977 depends on USB_FUNCTION_ROCKUSB 978 help 979 Rockusb protocol is widely used by Rockchip SoC based devices. It can 980 read/write info, image to/from devices. This enable rockusb command 981 support to communication with rockusb device. for more detail about 982 this command, please read doc/README.rockusb. 983 984config CMD_USB_MASS_STORAGE 985 bool "UMS usb mass storage" 986 select USB_FUNCTION_MASS_STORAGE 987 help 988 USB mass storage support 989 990endmenu 991 992 993menu "Shell scripting commands" 994 995config CMD_ECHO 996 bool "echo" 997 default y 998 help 999 Echo args to console 1000 1001config CMD_ITEST 1002 bool "itest" 1003 default y 1004 help 1005 Return true/false on integer compare. 1006 1007config CMD_SOURCE 1008 bool "source" 1009 default y 1010 help 1011 Run script from memory 1012 1013config CMD_SETEXPR 1014 bool "setexpr" 1015 default y 1016 help 1017 Evaluate boolean and math expressions and store the result in an env 1018 variable. 1019 Also supports loading the value at a memory location into a variable. 1020 If CONFIG_REGEX is enabled, setexpr also supports a gsub function. 1021 1022endmenu 1023 1024menu "Network commands" 1025 1026if NET 1027 1028config CMD_NET 1029 bool "bootp, tftpboot" 1030 default y 1031 help 1032 Network commands. 1033 bootp - boot image via network using BOOTP/TFTP protocol 1034 tftpboot - boot image via network using TFTP protocol 1035 1036config CMD_TFTPPUT 1037 bool "tftp put" 1038 help 1039 TFTP put command, for uploading files to a server 1040 1041config CMD_TFTPSRV 1042 bool "tftpsrv" 1043 help 1044 Act as a TFTP server and boot the first received file 1045 1046config CMD_RARP 1047 bool "rarpboot" 1048 help 1049 Boot image via network using RARP/TFTP protocol 1050 1051config CMD_DHCP 1052 bool "dhcp" 1053 depends on CMD_NET 1054 help 1055 Boot image via network using DHCP/TFTP protocol 1056 1057config CMD_PXE 1058 bool "pxe" 1059 depends on CMD_NET 1060 select MENU 1061 help 1062 Boot image via network using PXE protocol 1063 1064config CMD_NFS 1065 bool "nfs" 1066 default y 1067 help 1068 Boot image via network using NFS protocol. 1069 1070config CMD_MII 1071 bool "mii" 1072 help 1073 Enable MII utility commands. 1074 1075config CMD_PING 1076 bool "ping" 1077 help 1078 Send ICMP ECHO_REQUEST to network host 1079 1080config CMD_CDP 1081 bool "cdp" 1082 help 1083 Perform CDP network configuration 1084 1085config CMD_SNTP 1086 bool "sntp" 1087 help 1088 Synchronize RTC via network 1089 1090config CMD_DNS 1091 bool "dns" 1092 help 1093 Lookup the IP of a hostname 1094 1095config CMD_LINK_LOCAL 1096 bool "linklocal" 1097 help 1098 Acquire a network IP address using the link-local protocol 1099 1100config CMD_ETHSW 1101 bool "ethsw" 1102 help 1103 Allow control of L2 Ethernet switch commands. These are supported 1104 by the vsc9953 Ethernet driver at present. Sub-commands allow 1105 operations such as enabling / disabling a port and 1106 viewing/maintaining the filtering database (FDB) 1107 1108endif 1109 1110endmenu 1111 1112menu "Misc commands" 1113 1114config CMD_BMP 1115 bool "Enable 'bmp' command" 1116 depends on LCD || DM_VIDEO || VIDEO 1117 help 1118 This provides a way to obtain information about a BMP-format iamge 1119 and to display it. BMP (which presumably stands for BitMaP) is a 1120 file format defined by Microsoft which supports images of various 1121 depths, formats and compression methods. Headers on the file 1122 determine the formats used. This command can be used by first loading 1123 the image into RAM, then using this command to look at it or display 1124 it. 1125 1126config CMD_BSP 1127 bool "Enable board-specific commands" 1128 help 1129 (deprecated: instead, please define a Kconfig option for each command) 1130 1131 Some boards have board-specific commands which are only enabled 1132 during developemnt and need to be turned off for production. This 1133 option provides a way to control this. The commands that are enabled 1134 vary depending on the board. 1135 1136config CMD_BKOPS_ENABLE 1137 bool "mmc bkops enable" 1138 depends on CMD_MMC 1139 default n 1140 help 1141 Enable command for setting manual background operations handshake 1142 on a eMMC device. The feature is optionally available on eMMC devices 1143 conforming to standard >= 4.41. 1144 1145config CMD_BLOCK_CACHE 1146 bool "blkcache - control and stats for block cache" 1147 depends on BLOCK_CACHE 1148 default y if BLOCK_CACHE 1149 help 1150 Enable the blkcache command, which can be used to control the 1151 operation of the cache functions. 1152 This is most useful when fine-tuning the operation of the cache 1153 during development, but also allows the cache to be disabled when 1154 it might hurt performance (e.g. when using the ums command). 1155 1156config CMD_CACHE 1157 bool "icache or dcache" 1158 help 1159 Enable the "icache" and "dcache" commands 1160 1161config CMD_DISPLAY 1162 bool "Enable the 'display' command, for character displays" 1163 help 1164 (this needs porting to driver model) 1165 This enables the 'display' command which allows a string to be 1166 displayed on a simple board-specific display. Implement 1167 display_putc() to use it. 1168 1169config CMD_LED 1170 bool "led" 1171 default y if LED 1172 help 1173 Enable the 'led' command which allows for control of LEDs supported 1174 by the board. The LEDs can be listed with 'led list' and controlled 1175 with led on/off/togle/blink. Any LED drivers can be controlled with 1176 this command, e.g. led_gpio. 1177 1178config CMD_DATE 1179 bool "date" 1180 default y if DM_RTC 1181 help 1182 Enable the 'date' command for getting/setting the time/date in RTC 1183 devices. 1184 1185config CMD_TIME 1186 bool "time" 1187 help 1188 Run commands and summarize execution time. 1189 1190config CMD_GETTIME 1191 bool "gettime - read elapsed time" 1192 help 1193 Enable the 'gettime' command which reads the elapsed time since 1194 U-Boot started running. This shows the time in seconds and 1195 milliseconds. See also the 'bootstage' command which provides more 1196 flexibility for boot timing. 1197 1198# TODO: rename to CMD_SLEEP 1199config CMD_MISC 1200 bool "sleep" 1201 default y 1202 help 1203 Delay execution for some time 1204 1205config CMD_TIMER 1206 bool "timer" 1207 help 1208 Access the system timer. 1209 1210config CMD_SOUND 1211 bool "sound" 1212 depends on SOUND 1213 help 1214 This provides basic access to the U-Boot's sound support. The main 1215 feature is to play a beep. 1216 1217 sound init - set up sound system 1218 sound play - play a sound 1219 1220config CMD_QFW 1221 bool "qfw" 1222 select QFW 1223 help 1224 This provides access to the QEMU firmware interface. The main 1225 feature is to allow easy loading of files passed to qemu-system 1226 via -kernel / -initrd 1227 1228source "cmd/mvebu/Kconfig" 1229 1230config CMD_TERMINAL 1231 bool "terminal - provides a way to attach a serial terminal" 1232 help 1233 Provides a 'cu'-like serial terminal command. This can be used to 1234 access other serial ports from the system console. The terminal 1235 is very simple with no special processing of characters. As with 1236 cu, you can press ~. (tilde followed by period) to exit. 1237 1238config CMD_UUID 1239 bool "uuid, guid - generation of unique IDs" 1240 select LIB_UUID 1241 help 1242 This enables two commands: 1243 1244 uuid - generate random Universally Unique Identifier 1245 guid - generate Globally Unique Identifier based on random UUID 1246 1247 The two commands are very similar except for the endianness of the 1248 output. 1249 1250endmenu 1251 1252source "cmd/ti/Kconfig" 1253 1254config CMD_BOOTSTAGE 1255 bool "Enable the 'bootstage' command" 1256 depends on BOOTSTAGE 1257 help 1258 Add a 'bootstage' command which supports printing a report 1259 and un/stashing of bootstage data. 1260 1261menu "Power commands" 1262config CMD_PMIC 1263 bool "Enable Driver Model PMIC command" 1264 depends on DM_PMIC 1265 help 1266 This is the pmic command, based on a driver model pmic's API. 1267 Command features are unchanged: 1268 - list - list pmic devices 1269 - pmic dev <id> - show or [set] operating pmic device (NEW) 1270 - pmic dump - dump registers 1271 - pmic read address - read byte of register at address 1272 - pmic write address - write byte to register at address 1273 The only one change for this command is 'dev' subcommand. 1274 1275config CMD_REGULATOR 1276 bool "Enable Driver Model REGULATOR command" 1277 depends on DM_REGULATOR 1278 help 1279 This command is based on driver model regulator's API. 1280 User interface features: 1281 - list - list regulator devices 1282 - regulator dev <id> - show or [set] operating regulator device 1283 - regulator info - print constraints info 1284 - regulator status - print operating status 1285 - regulator value <val] <-f> - print/[set] voltage value [uV] 1286 - regulator current <val> - print/[set] current value [uA] 1287 - regulator mode <id> - print/[set] operating mode id 1288 - regulator enable - enable the regulator output 1289 - regulator disable - disable the regulator output 1290 1291 The '-f' (force) option can be used for set the value which exceeds 1292 the limits, which are found in device-tree and are kept in regulator's 1293 uclass platdata structure. 1294 1295endmenu 1296 1297menu "Security commands" 1298config CMD_AES 1299 bool "Enable the 'aes' command" 1300 select AES 1301 help 1302 This provides a means to encrypt and decrypt data using the AES 1303 (Advanced Encryption Standard). This algorithm uses a symetric key 1304 and is widely used as a streaming cipher. Different key lengths are 1305 supported by the algorithm but this command only supports 128 bits 1306 at present. 1307 1308config CMD_BLOB 1309 bool "Enable the 'blob' command" 1310 help 1311 This is used with the Freescale secure boot mechanism. 1312 1313 Freescale's SEC block has built-in Blob Protocol which provides 1314 a method for protecting user-defined data across system power 1315 cycles. SEC block protects data in a data structure called a Blob, 1316 which provides both confidentiality and integrity protection. 1317 1318 Encapsulating data as a blob 1319 Each time that the Blob Protocol is used to protect data, a 1320 different randomly generated key is used to encrypt the data. 1321 This random key is itself encrypted using a key which is derived 1322 from SoC's non-volatile secret key and a 16 bit Key identifier. 1323 The resulting encrypted key along with encrypted data is called a 1324 blob. The non-volatile secure key is available for use only during 1325 secure boot. 1326 1327 During decapsulation, the reverse process is performed to get back 1328 the original data. 1329 1330 Sub-commands: 1331 blob enc - encapsulating data as a cryptgraphic blob 1332 blob dec - decapsulating cryptgraphic blob to get the data 1333 1334 Syntax: 1335 1336 blob enc src dst len km 1337 1338 Encapsulate and create blob of data $len bytes long 1339 at address $src and store the result at address $dst. 1340 $km is the 16 byte key modifier is also required for 1341 generation/use as key for cryptographic operation. Key 1342 modifier should be 16 byte long. 1343 1344 blob dec src dst len km 1345 1346 Decapsulate the blob of data at address $src and 1347 store result of $len byte at addr $dst. 1348 $km is the 16 byte key modifier is also required for 1349 generation/use as key for cryptographic operation. Key 1350 modifier should be 16 byte long. 1351 1352config CMD_HASH 1353 bool "Support 'hash' command" 1354 select HASH 1355 help 1356 This provides a way to hash data in memory using various supported 1357 algorithms (such as SHA1, MD5, CRC32). The computed digest can be 1358 saved to memory or to an environment variable. It is also possible 1359 to verify a hash against data in memory. 1360 1361config HASH_VERIFY 1362 bool "hash -v" 1363 depends on CMD_HASH 1364 help 1365 Add -v option to verify data against a hash. 1366 1367config CMD_TPM 1368 bool "Enable the 'tpm' command" 1369 depends on TPM 1370 help 1371 This provides a means to talk to a TPM from the command line. A wide 1372 range of commands if provided - see 'tpm help' for details. The 1373 command requires a suitable TPM on your board and the correct driver 1374 must be enabled. 1375 1376config CMD_TPM_TEST 1377 bool "Enable the 'tpm test' command" 1378 depends on CMD_TPM 1379 help 1380 This provides a a series of tests to confirm that the TPM is working 1381 correctly. The tests cover initialisation, non-volatile RAM, extend, 1382 global lock and checking that timing is within expectations. The 1383 tests pass correctly on Infineon TPMs but may need to be adjusted 1384 for other devices. 1385 1386endmenu 1387 1388menu "Firmware commands" 1389config CMD_CROS_EC 1390 bool "Enable crosec command" 1391 depends on CROS_EC 1392 default y 1393 help 1394 Enable command-line access to the Chrome OS EC (Embedded 1395 Controller). This provides the 'crosec' command which has 1396 a number of sub-commands for performing EC tasks such as 1397 updating its flash, accessing a small saved context area 1398 and talking to the I2C bus behind the EC (if there is one). 1399endmenu 1400 1401menu "Filesystem commands" 1402config CMD_BTRFS 1403 bool "Enable the 'btrsubvol' command" 1404 select FS_BTRFS 1405 help 1406 This enables the 'btrsubvol' command to list subvolumes 1407 of a BTRFS filesystem. There are no special commands for 1408 listing BTRFS directories or loading BTRFS files - this 1409 can be done by the generic 'fs' commands (see CMD_FS_GENERIC) 1410 when BTRFS is enabled (see FS_BTRFS). 1411 1412config CMD_CBFS 1413 bool "Enable the 'cbfs' command" 1414 depends on FS_CBFS 1415 help 1416 Define this to enable support for reading from a Coreboot 1417 filesystem. This is a ROM-based filesystem used for accessing files 1418 on systems that use coreboot as the first boot-loader and then load 1419 U-Boot to actually boot the Operating System. Available commands are 1420 cbfsinit, cbfsinfo, cbfsls and cbfsload. 1421 1422config CMD_CRAMFS 1423 bool "Enable the 'cramfs' command" 1424 depends on FS_CRAMFS 1425 help 1426 This provides commands for dealing with CRAMFS (Compressed ROM 1427 filesystem). CRAMFS is useful when space is tight since files are 1428 compressed. Two commands are provided: 1429 1430 cramfsls - lists files in a cramfs image 1431 cramfsload - loads a file from a cramfs image 1432 1433config CMD_EXT2 1434 bool "ext2 command support" 1435 select FS_EXT4 1436 help 1437 Enables EXT2 FS command 1438 1439config CMD_EXT4 1440 bool "ext4 command support" 1441 select FS_EXT4 1442 help 1443 Enables EXT4 FS command 1444 1445config CMD_EXT4_WRITE 1446 depends on CMD_EXT4 1447 bool "ext4 write command support" 1448 select EXT4_WRITE 1449 help 1450 Enables EXT4 FS write command 1451 1452config CMD_FAT 1453 bool "FAT command support" 1454 select FS_FAT 1455 help 1456 Support for the FAT fs 1457 1458config CMD_FS_GENERIC 1459 bool "filesystem commands" 1460 help 1461 Enables filesystem commands (e.g. load, ls) that work for multiple 1462 fs types. 1463 1464config CMD_FS_UUID 1465 bool "fsuuid command" 1466 help 1467 Enables fsuuid command for filesystem UUID. 1468 1469config CMD_JFFS2 1470 bool "jffs2 command" 1471 select FS_JFFS2 1472 help 1473 Enables commands to support the JFFS2 (Journalling Flash File System 1474 version 2) filesystem. This enables fsload, ls and fsinfo which 1475 provide the ability to load files, list directories and obtain 1476 filesystem information. 1477 1478config CMD_MTDPARTS 1479 bool "MTD partition support" 1480 help 1481 MTD partition support 1482 1483config MTDIDS_DEFAULT 1484 string "Default MTD IDs" 1485 depends on CMD_MTDPARTS || CMD_NAND || CMD_FLASH 1486 help 1487 Defines a default MTD IDs list for use with MTD partitions in the 1488 Linux MTD command line partitions format. 1489 1490config MTDPARTS_DEFAULT 1491 string "Default MTD partition scheme" 1492 depends on CMD_MTDPARTS || CMD_NAND || CMD_FLASH 1493 help 1494 Defines a default MTD partitioning scheme in the Linux MTD command 1495 line partitions format 1496 1497config CMD_MTDPARTS_SPREAD 1498 bool "Padd partition size to take account of bad blocks" 1499 depends on CMD_MTDPARTS 1500 help 1501 This enables the 'spread' sub-command of the mtdparts command. 1502 This command will modify the existing mtdparts variable by increasing 1503 the size of the partitions such that 1) each partition's net size is 1504 at least as large as the size specified in the mtdparts variable and 1505 2) each partition starts on a good block. 1506 1507config CMD_REISER 1508 bool "reiser - Access to reiserfs filesystems" 1509 help 1510 This provides two commands which operate on a resierfs filesystem, 1511 commonly used some years ago: 1512 1513 reiserls - list files 1514 reiserload - load a file 1515 1516config CMD_YAFFS2 1517 bool "yaffs2 - Access of YAFFS2 filesystem" 1518 depends on YAFFS2 1519 default y 1520 help 1521 This provides commands for accessing a YAFFS2 filesystem. Yet 1522 Another Flash Filesystem 2 is a filesystem designed specifically 1523 for NAND flash. It incorporates bad-block management and ensures 1524 that device writes are sequential regardless of filesystem 1525 activity. 1526 1527config CMD_ZFS 1528 bool "zfs - Access of ZFS filesystem" 1529 help 1530 This provides commands to accessing a ZFS filesystem, commonly used 1531 on Solaris systems. Two sub-commands are provided: 1532 1533 zfsls - list files in a directory 1534 zfsload - load a file 1535 1536 See doc/README.zfs for more details. 1537 1538endmenu 1539 1540menu "Debug commands" 1541 1542config CMD_BEDBUG 1543 bool "bedbug" 1544 help 1545 The bedbug (emBEDded deBUGger) command provides debugging features 1546 for some PowerPC processors. For details please see the 1547 docuemntation in doc/README.beddbug 1548 1549config CMD_DIAG 1550 bool "diag - Board diagnostics" 1551 help 1552 This command provides access to board diagnostic tests. These are 1553 called Power-on Self Tests (POST). The command allows listing of 1554 available tests and running either all the tests, or specific tests 1555 identified by name. 1556 1557config CMD_IRQ 1558 bool "irq - Show information about interrupts" 1559 depends on !ARM && !MIPS && !SH 1560 help 1561 This enables two commands: 1562 1563 interrupts - enable or disable interrupts 1564 irqinfo - print device-specific interrupt information 1565 1566config CMD_KGDB 1567 bool "kgdb - Allow debugging of U-Boot with gdb" 1568 help 1569 This enables a 'kgdb' command which allows gdb to connect to U-Boot 1570 over a serial link for debugging purposes. This allows 1571 single-stepping, inspecting variables, etc. This is supported only 1572 on PowerPC at present. 1573 1574config CMD_LOG 1575 bool "log - Generation, control and access to logging" 1576 help 1577 This provides access to logging features. It allows the output of 1578 log data to be controlled to a limited extent (setting up the default 1579 maximum log level for emitting of records). It also provides access 1580 to a command used for testing the log system. 1581 1582config CMD_TRACE 1583 bool "trace - Support tracing of function calls and timing" 1584 help 1585 Enables a command to control using of function tracing within 1586 U-Boot. This allows recording of call traces including timing 1587 information. The command can write data to memory for exporting 1588 for analsys (e.g. using bootchart). See doc/README.trace for full 1589 details. 1590 1591endmenu 1592 1593config CMD_UBI 1594 tristate "Enable UBI - Unsorted block images commands" 1595 select CRC32 1596 select MTD_UBI 1597 select CMD_MTDPARTS 1598 default y if NAND_SUNXI 1599 help 1600 UBI is a software layer above MTD layer which admits use of LVM-like 1601 logical volumes on top of MTD devices, hides some complexities of 1602 flash chips like wear and bad blocks and provides some other useful 1603 capabilities. Please, consult the MTD web site for more details 1604 (www.linux-mtd.infradead.org). Activate this option if you want 1605 to use U-Boot UBI commands. 1606 1607config CMD_UBIFS 1608 tristate "Enable UBIFS - Unsorted block images filesystem commands" 1609 depends on CMD_UBI 1610 select CRC32 1611 select LZO 1612 default y if CMD_UBI 1613 help 1614 UBIFS is a file system for flash devices which works on top of UBI. 1615 1616endmenu 1617