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