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