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