1menu "Command line interface" 2 3config CMDLINE 4 bool "Support U-Boot commands" 5 default y 6 help 7 Enable U-Boot's command-line functions. This provides a means 8 to enter commands into U-Boot for a wide variety of purposes. It 9 also allows scripts (containing commands) to be executed. 10 Various commands and command categorys can be indivdually enabled. 11 Depending on the number of commands enabled, this can add 12 substantially to the size of U-Boot. 13 14config HUSH_PARSER 15 bool "Use hush shell" 16 depends on CMDLINE 17 help 18 This option enables the "hush" shell (from Busybox) as command line 19 interpreter, thus enabling powerful command line syntax like 20 if...then...else...fi conditionals or `&&' and '||' 21 constructs ("shell scripts"). 22 23 If disabled, you get the old, much simpler behaviour with a somewhat 24 smaller memory footprint. 25 26config CMDLINE_EDITING 27 bool "Enable command line editing" 28 depends on CMDLINE 29 default y 30 help 31 Enable editing and History functions for interactive command line 32 input operations 33 34config CMDLINE_PS_SUPPORT 35 bool "Enable support for changing the command prompt string at run-time" 36 depends on HUSH_PARSER 37 help 38 Only static string in the prompt is supported so far. The string is 39 obtained from environment variables PS1 and PS2. 40 41config AUTO_COMPLETE 42 bool "Enable auto complete using TAB" 43 depends on CMDLINE 44 default y 45 help 46 Enable auto completion of commands using TAB. 47 48config SYS_LONGHELP 49 bool "Enable long help messages" 50 depends on CMDLINE 51 default y if CMDLINE 52 help 53 Defined when you want long help messages included 54 Do not set this option when short of memory. 55 56config SYS_PROMPT 57 string "Shell prompt" 58 default "Zynq> " if ARCH_ZYNQ 59 default "ZynqMP> " if ARCH_ZYNQMP 60 default "=> " 61 help 62 This string is displayed in the command line to the left of the 63 cursor. 64 65config SYS_PROMPT_HUSH_PS2 66 string "Hush shell secondary prompt" 67 depends on HUSH_PARSER 68 default "> " 69 help 70 This defines the secondary prompt string, which is 71 printed when the command interpreter needs more input 72 to complete a command. Usually "> ". 73 74config SYS_MAXARGS 75 int "Maximum number arguments accepted by commands" 76 default 16 77 78config SYS_CBSIZE 79 int "Console input buffer size" 80 default 2048 if ARCH_TEGRA || ARCH_VERSAL || ARCH_ZYNQ || ARCH_ZYNQMP || \ 81 RCAR_GEN3 || TARGET_SOCFPGA_SOC64 82 default 512 if ARCH_MX5 || ARCH_MX6 || ARCH_MX7 || FSL_LSCH2 || \ 83 FSL_LSCH3 || X86 84 default 256 if M68K || PPC 85 default 1024 86 87config SYS_PBSIZE 88 int "Buffer size for console output" 89 default 1024 if ARCH_SUNXI 90 default 1044 91 92config SYS_XTRACE 93 bool "Command execution tracer" 94 depends on CMDLINE 95 default y if CMDLINE 96 help 97 This option enables the possiblity to print all commands before 98 executing them and after all variables are evaluated (similar 99 to Bash's xtrace/'set -x' feature). 100 To enable the tracer a variable "xtrace" needs to be defined in 101 the environment. 102 103config BUILD_BIN2C 104 bool 105 106comment "Commands" 107 108menu "Info commands" 109 110config CMD_ACPI 111 bool "acpi" 112 depends on ACPI 113 default y 114 help 115 List and dump ACPI tables. ACPI (Advanced Configuration and Power 116 Interface) is used mostly on x86 for providing information to the 117 Operating System about devices in the system. The tables are set up 118 by the firmware, typically U-Boot but possibly an earlier firmware 119 module, if U-Boot is chain-loaded from something else. ACPI tables 120 can also include code, to perform hardware-specific tasks required 121 by the Operating Systems. This allows some amount of separation 122 between the firmware and OS, and is particularly useful when you 123 want to make hardware changes without the OS needing to be adjusted. 124 125config CMD_ADDRMAP 126 bool "addrmap" 127 depends on ADDR_MAP 128 default y 129 help 130 List non-identity virtual-physical memory mappings for 32-bit CPUs. 131 132config CMD_BDI 133 bool "bdinfo" 134 default y 135 help 136 Print board info 137 138config CMD_CONFIG 139 bool "config" 140 default SANDBOX 141 select BUILD_BIN2C 142 help 143 Print ".config" contents. 144 145 If this option is enabled, the ".config" file contents are embedded 146 in the U-Boot image and can be printed on the console by the "config" 147 command. This provides information of which options are enabled on 148 the running U-Boot. 149 150config CMD_CONSOLE 151 bool "coninfo" 152 default y 153 help 154 Print console devices and information. 155 156config CMD_CPU 157 bool "cpu" 158 depends on CPU 159 help 160 Print information about available CPUs. This normally shows the 161 number of CPUs, type (e.g. manufacturer, architecture, product or 162 internal name) and clock frequency. Other information may be 163 available depending on the CPU driver. 164 165config CMD_FWU_METADATA 166 bool "fwu metadata read" 167 depends on FWU_MULTI_BANK_UPDATE 168 help 169 Command to read the metadata and dump it's contents 170 171config CMD_LICENSE 172 bool "license" 173 select BUILD_BIN2C 174 help 175 Print GPL license text 176 177config CMD_PMC 178 bool "pmc" 179 help 180 Provides access to the Intel Power-Management Controller (PMC) so 181 that its state can be examined. This does not currently support 182 changing the state but it is still useful for debugging and seeing 183 what is going on. 184 185config CMD_REGINFO 186 bool "reginfo" 187 depends on PPC 188 help 189 Register dump 190 191config CMD_TLV_EEPROM 192 bool "tlv_eeprom" 193 depends on I2C_EEPROM 194 select CRC32 195 help 196 Display and program the system EEPROM data block in ONIE Tlvinfo 197 format. TLV stands for Type-Length-Value. 198 199config SPL_CMD_TLV_EEPROM 200 bool "tlv_eeprom for SPL" 201 depends on SPL_I2C_EEPROM 202 select SPL_DRIVERS_MISC 203 select SPL_CRC32 204 help 205 Read system EEPROM data block in ONIE Tlvinfo format from SPL. 206 207config CMD_SBI 208 bool "sbi" 209 depends on RISCV_SMODE && SBI_V02 210 help 211 Display information about the SBI implementation. 212 213endmenu 214 215menu "Boot commands" 216 217config CMD_BOOTD 218 bool "bootd" 219 default y 220 help 221 Run the command stored in the environment "bootcmd", i.e. 222 "bootd" does the same thing as "run bootcmd". 223 224config CMD_BOOTM 225 bool "bootm" 226 default y 227 help 228 Boot an application image from the memory. 229 230config CMD_BOOTM_PRE_LOAD 231 bool "enable pre-load on bootm" 232 depends on CMD_BOOTM 233 depends on IMAGE_PRE_LOAD 234 default n 235 help 236 Enable support of stage pre-load for the bootm command. 237 This stage allow to check or modify the image provided 238 to the bootm command. 239 240config CMD_BOOTDEV 241 bool "bootdev" 242 depends on BOOTSTD 243 default y if BOOTSTD_FULL 244 help 245 Support listing available bootdevs (boot devices) which can provide an 246 OS to boot, as well as showing information about a particular one. 247 248 This command is not necessary for bootstd to work. 249 250config CMD_BOOTFLOW 251 bool "bootflow" 252 depends on BOOTSTD 253 default y 254 help 255 Support scanning for bootflows available with the bootdevs. The 256 bootflows can optionally be booted. 257 258config CMD_BOOTFLOW_FULL 259 bool "bootflow - extract subcommands" 260 depends on BOOTSTD_FULL 261 default y 262 help 263 Add the ability to list the available bootflows, select one and obtain 264 information about it. 265 266 This command is not necessary for bootstd to work. 267 268config CMD_BOOTMETH 269 bool "bootmeth" 270 depends on BOOTSTD 271 default y if BOOTSTD_FULL 272 help 273 Support listing available bootmethds (methods used to boot an 274 Operating System), as well as selecting the order that the bootmeths 275 are used. 276 277 This command is not necessary for bootstd to work. 278 279config BOOTM_EFI 280 bool "Support booting UEFI FIT images" 281 depends on CMD_BOOTEFI && CMD_BOOTM && FIT 282 default y 283 help 284 Support booting UEFI FIT images via the bootm command. 285 286config CMD_BOOTZ 287 bool "bootz" 288 help 289 Boot the Linux zImage 290 291config CMD_BOOTI 292 bool "booti" 293 depends on ARM64 || RISCV 294 default y 295 help 296 Boot an AArch64 Linux Kernel image from memory. 297 298config BOOTM_LINUX 299 bool "Support booting Linux OS images" 300 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI 301 default y 302 help 303 Support booting the Linux kernel directly via a command such as bootm 304 or booti or bootz. 305 306config BOOTM_NETBSD 307 bool "Support booting NetBSD (non-EFI) loader images" 308 depends on CMD_BOOTM 309 default y 310 help 311 Support booting NetBSD via the bootm command. 312 313config BOOTM_OPENRTOS 314 bool "Support booting OPENRTOS / FreeRTOS images" 315 depends on CMD_BOOTM 316 help 317 Support booting OPENRTOS / FreeRTOS via the bootm command. 318 319config BOOTM_OSE 320 bool "Support booting Enea OSE images" 321 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86) 322 depends on CMD_BOOTM 323 help 324 Support booting Enea OSE images via the bootm command. 325 326config BOOTM_PLAN9 327 bool "Support booting Plan9 OS images" 328 depends on CMD_BOOTM 329 default y 330 help 331 Support booting Plan9 images via the bootm command. 332 333config BOOTM_RTEMS 334 bool "Support booting RTEMS OS images" 335 depends on CMD_BOOTM 336 default y 337 help 338 Support booting RTEMS images via the bootm command. 339 340config CMD_SEAMA 341 bool "Support read SEAMA NAND images" 342 depends on MTD_RAW_NAND 343 help 344 Support reading NAND Seattle Image (SEAMA) images. 345 346config CMD_VBE 347 bool "vbe - Verified Boot for Embedded" 348 depends on BOOTMETH_VBE 349 default y if BOOTSTD_FULL 350 help 351 Provides various subcommands related to VBE, such as listing the 352 available methods, looking at the state and changing which method 353 is used to boot. Updating the parameters is not currently 354 supported. 355 356config BOOTM_VXWORKS 357 bool "Support booting VxWorks OS images" 358 depends on CMD_BOOTM 359 default y 360 help 361 Support booting VxWorks images via the bootm command. 362 363config SYS_BOOTM_LEN 364 hex "Maximum size of a decompresed OS image" 365 depends on CMD_BOOTM || CMD_BOOTI || CMD_BOOTZ || \ 366 LEGACY_IMAGE_FORMAT || SPL_LEGACY_IMAGE_FORMAT 367 default 0x4000000 if PPC || ARM64 368 default 0x1000000 if X86 || ARCH_MX6 || ARCH_MX7 369 default 0x800000 370 help 371 This is the maximum size of the buffer that is used to decompress the OS 372 image in to, if passing a compressed image to bootm/booti/bootz. 373 374config CMD_BOOTEFI 375 bool "bootefi" 376 depends on EFI_LOADER 377 default y 378 help 379 Boot an EFI image from memory. 380 381config CMD_BOOTEFI_HELLO_COMPILE 382 bool "Compile a standard EFI hello world binary for testing" 383 depends on CMD_BOOTEFI && !CPU_V7M 384 default y 385 help 386 This compiles a standard EFI hello world application with U-Boot so 387 that it can be used with the test/py testing framework. This is useful 388 for testing that EFI is working at a basic level, and for bringing 389 up EFI support on a new architecture. 390 391 No additional space will be required in the resulting U-Boot binary 392 when this option is enabled. 393 394config CMD_BOOTEFI_HELLO 395 bool "Allow booting a standard EFI hello world for testing" 396 depends on CMD_BOOTEFI_HELLO_COMPILE 397 default y if CMD_BOOTEFI_SELFTEST 398 help 399 This adds a standard EFI hello world application to U-Boot so that 400 it can be used with the 'bootefi hello' command. This is useful 401 for testing that EFI is working at a basic level, and for bringing 402 up EFI support on a new architecture. 403 404source lib/efi_selftest/Kconfig 405 406config CMD_BOOTMENU 407 bool "bootmenu" 408 select MENU 409 select CHARSET 410 help 411 Add an ANSI terminal boot menu command. 412 413config CMD_ADTIMG 414 bool "adtimg" 415 help 416 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from 417 image into RAM, dump image structure information, etc. Those dtb/dtbo 418 files should be merged in one dtb further, which needs to be passed to 419 the kernel, as part of a boot process. 420 421config CMD_ABOOTIMG 422 bool "abootimg" 423 depends on ANDROID_BOOT_IMAGE 424 help 425 Android Boot Image manipulation commands. Allows one to extract 426 images contained in boot.img, like kernel, ramdisk, dtb, etc, and 427 obtain corresponding meta-information from boot.img. 428 429 See doc/android/boot-image.rst for details. 430 431config CMD_ELF 432 bool "bootelf, bootvx" 433 default y 434 select LIB_ELF 435 help 436 Boot an ELF/vxWorks image from the memory. 437 438config CMD_FDT 439 bool "Flattened Device Tree utility commands" 440 default y 441 depends on OF_LIBFDT 442 help 443 Do FDT related setup before booting into the Operating System. 444 445config SUPPORT_EXTENSION_SCAN 446 bool 447 448config CMD_EXTENSION 449 bool "Extension board management command" 450 select CMD_FDT 451 depends on SUPPORT_EXTENSION_SCAN 452 help 453 Enables the "extension" command, which allows to detect 454 extension boards connected to the system, and apply 455 corresponding Device Tree overlays. 456 457config CMD_GO 458 bool "go" 459 default y 460 help 461 Start an application at a given address. 462 463config CMD_RUN 464 bool "run" 465 default y 466 help 467 Run the command in the given environment variable. 468 469config CMD_IMI 470 bool "iminfo" 471 default y 472 help 473 Print header information for application image. 474 475config CMD_IMLS 476 bool "imls" 477 help 478 List all images found in flash 479 480config CMD_XIMG 481 bool "imxtract" 482 default y 483 help 484 Extract a part of a multi-image. 485 486config CMD_XXD 487 bool "xxd" 488 help 489 Print file as hexdump to standard output 490 491config CMD_SPL 492 bool "spl export - Export boot information for Falcon boot" 493 depends on SPL 494 help 495 Falcon mode allows booting directly from SPL into an Operating 496 System such as Linux, thus skipping U-Boot proper. See 497 doc/README.falcon for full information about how to use this 498 command. 499 500config CMD_SPL_NAND_OFS 501 hex "Offset of OS args or dtb for Falcon-mode NAND boot" 502 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT) 503 default 0 504 help 505 This provides the offset of the command line arguments for Linux 506 when booting from NAND in Falcon mode. See doc/README.falcon 507 for full information about how to use this option (and also see 508 board/gateworks/gw_ventana/README for an example). 509 510config CMD_SPL_NOR_OFS 511 hex "Offset of OS args or dtb for Falcon-mode NOR boot" 512 depends on CMD_SPL && SPL_NOR_SUPPORT 513 default 0 514 help 515 This provides the offset of the command line arguments or dtb for 516 Linux when booting from NOR in Falcon mode. 517 518config CMD_SPL_WRITE_SIZE 519 hex "Size of argument area" 520 depends on CMD_SPL 521 default 0x2000 522 help 523 This provides the size of the command-line argument area in NAND 524 flash used by Falcon-mode boot. See the documentation until CMD_SPL 525 for detail. 526 527config CMD_THOR_DOWNLOAD 528 bool "thor - TIZEN 'thor' download" 529 select DFU 530 help 531 Implements the 'thor' download protocol. This is a way of 532 downloading a software update over USB from an attached host. 533 There is no documentation about this within the U-Boot source code 534 but you should be able to find something on the interwebs. 535 536config THOR_RESET_OFF 537 bool "thor: Disable reset on completion" 538 depends on CMD_THOR_DOWNLOAD 539 540config CMD_ZBOOT 541 bool "zboot - x86 boot command" 542 help 543 With x86 machines it is common to boot a bzImage file which 544 contains both a kernel and a setup.bin file. The latter includes 545 configuration information from the dark ages which x86 boards still 546 need to pick things out of. 547 548 Consider using FIT in preference to this since it supports directly 549 booting both 32- and 64-bit kernels, as well as secure boot. 550 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt 551 552endmenu 553 554menu "Environment commands" 555 556config CMD_ASKENV 557 bool "ask for env variable" 558 help 559 Ask for environment variable 560 561config CMD_EXPORTENV 562 bool "env export" 563 default y 564 help 565 Export environments. 566 567config CMD_IMPORTENV 568 bool "env import" 569 default y 570 help 571 Import environments. 572 573config CMD_EDITENV 574 bool "editenv" 575 default y 576 help 577 Edit environment variable. 578 579config CMD_GREPENV 580 bool "search env" 581 help 582 Allow for searching environment variables 583 584config CMD_SAVEENV 585 bool "saveenv" 586 default y 587 help 588 Save all environment variables into the compiled-in persistent 589 storage. 590 591config CMD_ERASEENV 592 bool "eraseenv" 593 depends on CMD_SAVEENV 594 help 595 Erase environment variables from the compiled-in persistent 596 storage. 597 598config CMD_ENV_EXISTS 599 bool "env exists" 600 default y 601 help 602 Check if a variable is defined in the environment for use in 603 shell scripting. 604 605config CMD_ENV_CALLBACK 606 bool "env callbacks - print callbacks and their associated variables" 607 help 608 Some environment variable have callbacks defined by 609 U_BOOT_ENV_CALLBACK. These are called when the variable changes. 610 For example changing "baudrate" adjust the serial baud rate. This 611 command lists the currently defined callbacks. 612 613config CMD_ENV_FLAGS 614 bool "env flags -print variables that have non-default flags" 615 help 616 Some environment variables have special flags that control their 617 behaviour. For example, serial# can only be written once and cannot 618 be deleted. This command shows the variables that have special 619 flags. 620 621config CMD_NVEDIT_EFI 622 bool "env [set|print] -e - set/print UEFI variables" 623 depends on EFI_LOADER 624 imply HEXDUMP 625 help 626 UEFI variables are encoded as some form of U-Boot variables. 627 If enabled, we are allowed to set/print UEFI variables using 628 "env" command with "-e" option without knowing details. 629 630config CMD_NVEDIT_INDIRECT 631 bool "env indirect - Sets environment value from another" 632 633config CMD_NVEDIT_INFO 634 bool "env info - print or evaluate environment information" 635 help 636 Print environment information: 637 - env_valid : is environment valid 638 - env_ready : is environment imported into hash table 639 - env_use_default : is default environment used 640 641 This command can be optionally used for evaluation in scripts: 642 [-d] : evaluate whether default environment is used 643 [-p] : evaluate whether environment can be persisted 644 [-q] : quiet output 645 The result of multiple evaluations will be combined with AND. 646 647config CMD_NVEDIT_LOAD 648 bool "env load" 649 help 650 Load all environment variables from the compiled-in persistent 651 storage. 652 653config CMD_NVEDIT_SELECT 654 bool "env select" 655 help 656 Select the compiled-in persistent storage of environment variables. 657 658endmenu 659 660menu "Memory commands" 661 662config CMD_BINOP 663 bool "binop" 664 help 665 Compute binary operations (xor, or, and) of byte arrays of arbitrary 666 size from memory and store the result in memory or the environment. 667 668config CMD_BLOBLIST 669 bool "bloblist" 670 default y if BLOBLIST 671 help 672 Show information about the bloblist, a collection of binary blobs 673 held in memory that persist between SPL and U-Boot. In the case of 674 x86 devices the bloblist can be used to hold ACPI tables so that they 675 remain available in memory. 676 677config CMD_CRC32 678 bool "crc32" 679 default y 680 select HASH 681 help 682 Compute CRC32. 683 684config CRC32_VERIFY 685 bool "crc32 -v" 686 depends on CMD_CRC32 687 help 688 Add -v option to verify data against a crc32 checksum. 689 690config CMD_EEPROM 691 bool "eeprom - EEPROM subsystem" 692 help 693 (deprecated, needs conversion to driver model) 694 Provides commands to read and write EEPROM (Electrically Erasable 695 Programmable Read Only Memory) chips that are connected over an 696 I2C bus. 697 698config CMD_EEPROM_LAYOUT 699 bool "Enable layout-aware eeprom commands" 700 depends on CMD_EEPROM 701 help 702 (deprecated, needs conversion to driver model) 703 When enabled, additional eeprom sub-commands become available. 704 705 eeprom print - prints the contents of the eeprom in a human-readable 706 way (eeprom layout fields, and data formatted to be fit for human 707 consumption). 708 709 eeprom update - allows user to update eeprom fields by specifying 710 the field name, and providing the new data in a human readable format 711 (same format as displayed by the eeprom print command). 712 713 Both commands can either auto detect the layout, or be told which 714 layout to use. 715 716 Feature API: 717 __weak int parse_layout_version(char *str) 718 - override to provide your own layout name parsing 719 __weak void __eeprom_layout_assign(struct eeprom_layout *layout, 720 int layout_version); 721 - override to setup the layout metadata based on the version 722 __weak int eeprom_layout_detect(unsigned char *data) 723 - override to provide your own algorithm for detecting layout 724 version 725 eeprom_field.c 726 - contains various printing and updating functions for common 727 types of eeprom fields. Can be used for defining 728 custom layouts. 729 730config EEPROM_LAYOUT_HELP_STRING 731 string "Tells user what layout names are supported" 732 depends on CMD_EEPROM_LAYOUT 733 default "<not defined>" 734 help 735 Help printed with the LAYOUT VERSIONS part of the 'eeprom' 736 command's help. 737 738config SYS_I2C_EEPROM_BUS 739 int "I2C bus of the EEPROM device." 740 depends on CMD_EEPROM 741 default 0 742 743config SYS_I2C_EEPROM_ADDR_LEN 744 int "Length in bytes of the EEPROM memory array address" 745 depends on CMD_EEPROM || ID_EEPROM 746 default 1 747 range 1 2 748 help 749 Note: This is NOT the chip address length! 750 751config SYS_EEPROM_SIZE 752 depends on CMD_EEPROM 753 int "Size in bytes of the EEPROM device" 754 default 256 755 756config SYS_EEPROM_PAGE_WRITE_BITS 757 int "Number of bits used to address bytes in a single page" 758 depends on CMD_EEPROM 759 default 8 760 help 761 The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS. 762 A 64 byte page, for example would require six bits. 763 764config SYS_EEPROM_PAGE_WRITE_DELAY_MS 765 int "Number of milliseconds to delay between page writes" 766 depends on CMD_EEPROM || CMD_I2C 767 default 0 768 769config LOOPW 770 bool "loopw" 771 help 772 Infinite write loop on address range 773 774config CMD_MD5SUM 775 bool "md5sum" 776 select MD5 777 help 778 Compute MD5 checksum. 779 780config MD5SUM_VERIFY 781 bool "md5sum -v" 782 depends on CMD_MD5SUM 783 help 784 Add -v option to verify data against an MD5 checksum. 785 786config CMD_MEMINFO 787 bool "meminfo" 788 help 789 Display memory information. 790 791config CMD_MEMORY 792 bool "md, mm, nm, mw, cp, cmp, base, loop" 793 default y 794 help 795 Memory commands. 796 md - memory display 797 mm - memory modify (auto-incrementing address) 798 nm - memory modify (constant address) 799 mw - memory write (fill) 800 cp - memory copy 801 cmp - memory compare 802 base - print or set address offset 803 loop - initialize loop on address range 804 805config CMD_MEM_SEARCH 806 bool "ms - Memory search" 807 help 808 Memory-search command 809 810 This allows searching through a region of memory looking for hex 811 data (byte, 16-bit word, 32-bit long, also 64-bit on machines that 812 support it). It is also possible to search for a string. The 813 command accepts a memory range and a list of values to search for. 814 The values need to appear in memory in the same order they are given 815 in the command. At most 10 matches can be returned at a time, but 816 pressing return will show the next 10 matches. Environment variables 817 are set for use with scripting (memmatches, memaddr, mempos). 818 819config CMD_MX_CYCLIC 820 bool "Enable cyclic md/mw commands" 821 depends on CMD_MEMORY 822 help 823 Add the "mdc" and "mwc" memory commands. These are cyclic 824 "md/mw" commands. 825 Examples: 826 827 => mdc.b 10 4 500 828 This command will print 4 bytes (10,11,12,13) each 500 ms. 829 830 => mwc.l 100 12345678 10 831 This command will write 12345678 to address 100 all 10 ms. 832 833config CMD_RANDOM 834 bool "random" 835 default y 836 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND) 837 help 838 random - fill memory with random data 839 840config CMD_MEMTEST 841 bool "memtest" 842 help 843 Simple RAM read/write test. 844 845if CMD_MEMTEST 846 847config SYS_ALT_MEMTEST 848 bool "Alternative test" 849 help 850 Use a more complete alternative memory test. 851 852if SYS_ALT_MEMTEST 853 854config SYS_ALT_MEMTEST_BITFLIP 855 bool "Bitflip test" 856 default y 857 help 858 The alternative memory test includes bitflip test since 2020.07. 859 The bitflip test significantly increases the overall test time. 860 Bitflip test can optionally be disabled here. 861 862endif 863 864config SYS_MEMTEST_START 865 hex "default start address for mtest" 866 default 0x0 867 help 868 This is the default start address for mtest for simple read/write 869 test. If no arguments are given to mtest, default address is used 870 as start address. 871 872config SYS_MEMTEST_END 873 hex "default end address for mtest" 874 default 0x1000 875 help 876 This is the default end address for mtest for simple read/write 877 test. If no arguments are given to mtest, default address is used 878 as end address. 879 880endif 881 882config CMD_SHA1SUM 883 bool "sha1sum" 884 select SHA1 885 help 886 Compute SHA1 checksum. 887 888config SHA1SUM_VERIFY 889 bool "sha1sum -v" 890 depends on CMD_SHA1SUM 891 help 892 Add -v option to verify data against a SHA1 checksum. 893 894config CMD_STRINGS 895 bool "strings - display strings in memory" 896 help 897 This works similarly to the Unix 'strings' command except that it 898 works with a memory range. String of printable characters found 899 within the range are displayed. The minimum number of characters 900 for a sequence to be considered a string can be provided. 901 902endmenu 903 904menu "Compression commands" 905 906config CMD_LZMADEC 907 bool "lzmadec" 908 default y if CMD_BOOTI 909 select LZMA 910 help 911 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm) 912 image from memory. 913 914config CMD_UNLZ4 915 bool "unlz4" 916 default y if CMD_BOOTI 917 select LZ4 918 help 919 Support decompressing an LZ4 image from memory region. 920 921config CMD_UNZIP 922 bool "unzip" 923 default y if CMD_BOOTI 924 select GZIP 925 help 926 Uncompress a zip-compressed memory region. 927 928config CMD_ZIP 929 bool "zip" 930 select GZIP_COMPRESSED 931 help 932 Compress a memory region with zlib deflate method. 933 934endmenu 935 936menu "Device access commands" 937 938config CMD_ARMFLASH 939 #depends on FLASH_CFI_DRIVER 940 bool "armflash" 941 help 942 ARM Ltd reference designs flash partition access 943 944config CMD_ADC 945 bool "adc - Access Analog to Digital Converters info and data" 946 select ADC 947 depends on DM_REGULATOR 948 help 949 Shows ADC device info and permit printing one-shot analog converted 950 data from a named Analog to Digital Converter. 951 952config CMD_BCB 953 bool "bcb" 954 depends on MMC 955 depends on PARTITIONS 956 help 957 Read/modify/write the fields of Bootloader Control Block, usually 958 stored on the flash "misc" partition with its structure defined in: 959 https://android.googlesource.com/platform/bootable/recovery/+/master/ 960 bootloader_message/include/bootloader_message/bootloader_message.h 961 962 Some real-life use-cases include (but are not limited to): 963 - Determine the "boot reason" (and act accordingly): 964 https://source.android.com/devices/bootloader/boot-reason 965 - Get/pass a list of commands from/to recovery: 966 https://android.googlesource.com/platform/bootable/recovery 967 - Inspect/dump the contents of the BCB fields 968 969config CMD_BIND 970 bool "bind/unbind - Bind or unbind a device to/from a driver" 971 depends on DM 972 help 973 Bind or unbind a device to/from a driver from the command line. 974 This is useful in situations where a device may be handled by several 975 drivers. For example, this can be used to bind a UDC to the usb ether 976 gadget driver from the command line. 977 978config CMD_CLK 979 bool "clk - Show clock frequencies" 980 help 981 (deprecated) 982 Shows clock frequences by calling a sock_clk_dump() hook function. 983 This is depreated in favour of using the CLK uclass and accessing 984 clock values from associated drivers. However currently no command 985 exists for this. 986 987config CMD_DEMO 988 bool "demo - Demonstration commands for driver model" 989 depends on DM 990 help 991 Provides a 'demo' command which can be used to play around with 992 driver model. To use this properly you will need to enable one or 993 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE). 994 Otherwise you will always get an empty list of devices. The demo 995 devices are defined in the sandbox device tree, so the easiest 996 option is to use sandbox and pass the -d point to sandbox's 997 u-boot.dtb file. 998 999config CMD_DFU 1000 bool "dfu" 1001 select DFU 1002 help 1003 Enables the command "dfu" which is used to have U-Boot create a DFU 1004 class device via USB. This command requires that the "dfu_alt_info" 1005 environment variable be set and define the alt settings to expose to 1006 the host. 1007 1008config CMD_DM 1009 bool "dm - Access to driver model information" 1010 depends on DM 1011 help 1012 Provides access to driver model data structures and information, 1013 such as a list of devices, list of uclasses and the state of each 1014 device (e.g. activated). This is not required for operation, but 1015 can be useful to see the state of driver model for debugging or 1016 interest. 1017 1018config CMD_FASTBOOT 1019 bool "fastboot - Android fastboot support" 1020 depends on FASTBOOT 1021 help 1022 This enables the command "fastboot" which enables the Android 1023 fastboot mode for the platform. Fastboot is a protocol for 1024 downloading images, flashing and device control used on 1025 Android devices. Fastboot requires either the network stack 1026 enabled or support for acting as a USB device. 1027 1028 See doc/android/fastboot.rst for more information. 1029 1030config CMD_FLASH 1031 bool "flinfo, erase, protect" 1032 default y 1033 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH 1034 help 1035 NOR flash support. 1036 flinfo - print FLASH memory information 1037 erase - FLASH memory 1038 protect - enable or disable FLASH write protection 1039 1040config CMD_FPGA 1041 bool "fpga" 1042 depends on FPGA 1043 default y 1044 help 1045 FPGA support. 1046 1047config CMD_FPGA_LOADBP 1048 bool "fpga loadbp - load partial bitstream (Xilinx only)" 1049 depends on CMD_FPGA 1050 help 1051 Supports loading an FPGA device from a bitstream buffer containing 1052 a partial bitstream. 1053 1054config CMD_FPGA_LOADFS 1055 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)" 1056 depends on CMD_FPGA 1057 help 1058 Supports loading an FPGA device from a FAT filesystem. 1059 1060config CMD_FPGA_LOADMK 1061 bool "fpga loadmk - load bitstream from image" 1062 depends on CMD_FPGA 1063 help 1064 Supports loading an FPGA device from a image generated by mkimage. 1065 1066config CMD_FPGA_LOADP 1067 bool "fpga loadp - load partial bitstream" 1068 depends on CMD_FPGA 1069 help 1070 Supports loading an FPGA device from a bitstream buffer containing 1071 a partial bitstream. 1072 1073config CMD_FPGA_LOAD_SECURE 1074 bool "fpga loads - loads secure bitstreams" 1075 depends on CMD_FPGA 1076 select FPGA_LOAD_SECURE 1077 help 1078 Enables the fpga loads command which is used to load secure 1079 (authenticated or encrypted or both) bitstreams on to FPGA. 1080 1081config CMD_FPGAD 1082 bool "fpgad - dump FPGA registers" 1083 help 1084 (legacy, needs conversion to driver model) 1085 Provides a way to dump FPGA registers by calling the board-specific 1086 fpga_get_reg() function. This functions similarly to the 'md' 1087 command. 1088 1089config CMD_FUSE 1090 bool "fuse - support for the fuse subssystem" 1091 help 1092 (deprecated - needs conversion to driver model) 1093 This allows reading, sensing, programming or overriding fuses 1094 which control the behaviour of the device. The command uses the 1095 fuse_...() API. 1096 1097config CMD_GPIO 1098 bool "gpio" 1099 help 1100 GPIO support. 1101 1102config CMD_GPIO_READ 1103 bool "gpio read - save GPIO value to variable" 1104 depends on CMD_GPIO 1105 help 1106 Enables the 'gpio read' command that saves the value 1107 of a GPIO pin to a variable. 1108 1109config CMD_PWM 1110 bool "pwm" 1111 depends on DM_PWM 1112 help 1113 Control PWM channels, this allows invert/config/enable/disable PWM channels. 1114 1115config CMD_GPT 1116 bool "GPT (GUID Partition Table) command" 1117 select EFI_PARTITION 1118 select PARTITION_UUIDS 1119 imply RANDOM_UUID 1120 help 1121 Enable the 'gpt' command to ready and write GPT style partition 1122 tables. 1123 1124config RANDOM_UUID 1125 bool "GPT Random UUID generation" 1126 select LIB_UUID 1127 help 1128 Enable the generation of partitions with random UUIDs if none 1129 are provided. 1130 1131config CMD_GPT_RENAME 1132 bool "GPT partition renaming commands" 1133 depends on CMD_GPT 1134 help 1135 Enables the 'gpt' command to interchange names on two GPT 1136 partitions via the 'gpt swap' command or to rename single 1137 partitions via the 'rename' command. 1138 1139config CMD_IDE 1140 bool "ide - Support for IDE drivers" 1141 select IDE 1142 help 1143 Provides an 'ide' command which allows accessing the IDE drive, 1144 resetting the IDE interface, printing the partition table and 1145 geting device info. It also enables the 'diskboot' command which 1146 permits booting from an IDE drive. 1147 1148config CMD_IO 1149 bool "io - Support for performing I/O accesses" 1150 help 1151 Provides an 'iod' command to display I/O space and an 'iow' command 1152 to write values to the I/O space. This can be useful for manually 1153 checking the state of devices during boot when debugging device 1154 drivers, etc. 1155 1156config CMD_IOTRACE 1157 bool "iotrace - Support for tracing I/O activity" 1158 help 1159 Provides an 'iotrace' command which supports recording I/O reads and 1160 writes in a trace buffer in memory . It also maintains a checksum 1161 of the trace records (even if space is exhausted) so that the 1162 sequence of I/O accesses can be verified. 1163 1164 When debugging drivers it is useful to see what I/O accesses were 1165 done and in what order. 1166 1167 Even if the individual accesses are of little interest it can be 1168 useful to verify that the access pattern is consistent each time 1169 an operation is performed. In this case a checksum can be used to 1170 characterise the operation of a driver. The checksum can be compared 1171 across different runs of the operation to verify that the driver is 1172 working properly. 1173 1174 In particular, when performing major refactoring of the driver, where 1175 the access pattern should not change, the checksum provides assurance 1176 that the refactoring work has not broken the driver. 1177 1178 This works by sneaking into the io.h heder for an architecture and 1179 redirecting I/O accesses through iotrace's tracing mechanism. 1180 1181 For now no commands are provided to examine the trace buffer. The 1182 format is fairly simple, so 'md' is a reasonable substitute. 1183 1184 Note: The checksum feature is only useful for I/O regions where the 1185 contents do not change outside of software control. Where this is not 1186 suitable you can fall back to manually comparing the addresses. It 1187 might be useful to enhance tracing to only checksum the accesses and 1188 not the data read/written. 1189 1190config CMD_I2C 1191 bool "i2c" 1192 help 1193 I2C support. 1194 1195config CMD_W1 1196 depends on W1 1197 default y if W1 1198 bool "w1 - Support for Dallas 1-Wire protocol" 1199 help 1200 Dallas 1-wire protocol support 1201 1202config CMD_LOADB 1203 bool "loadb" 1204 default y 1205 help 1206 Load a binary file over serial line. 1207 1208config CMD_LOADM 1209 bool "loadm" 1210 help 1211 Load a binary over memory mapped. 1212 1213config CMD_LOADS 1214 bool "loads - Load a file over serial in S-Record format" 1215 default y 1216 help 1217 Load an S-Record file over serial line 1218 1219config LOADS_ECHO 1220 bool "Echo all characters received during a loads back to console" 1221 depends on CMD_LOADS 1222 help 1223 If enabled, all characters received during a serial download (using 1224 the "loads" command) are echoed back. This might be needed by some 1225 terminal emulations (like "cu"), but may as well just take time on 1226 others. This sets the initial value of the "loads_echo" environment 1227 variable to 1. 1228 1229config CMD_SAVES 1230 bool "saves - Save a file over serial in S-Record format" 1231 help 1232 Provides a way to save a binary file using the Motorola S-Record 1233 format over the serial line. 1234 1235config SYS_LOADS_BAUD_CHANGE 1236 bool "Enable a temporary baudrate change during loads/saves command" 1237 depends on CMD_LOADS || CMD_SAVES 1238 1239config CMD_LOADXY_TIMEOUT 1240 int "loadxy_timeout" 1241 range 0 2000 1242 default 90 1243 help 1244 Initial timeout for loadx and loady commands. Zero means infinity. 1245 1246config CMD_LSBLK 1247 depends on BLK 1248 bool "lsblk - list block drivers and devices" 1249 help 1250 Print list of available block device drivers, and for each, the list 1251 of known block devices. 1252 1253config CMD_MBR 1254 bool "MBR (Master Boot Record) command" 1255 select DOS_PARTITION 1256 help 1257 Enable the 'mbr' command to ready and write MBR (Master Boot Record) 1258 style partition tables. 1259 1260config CMD_MISC 1261 bool "misc" 1262 depends on MISC 1263 help 1264 Enable the command "misc" for accessing miscellaneous devices with 1265 a MISC uclass driver. The command provides listing all MISC devices 1266 as well as read and write functionalities via their drivers. 1267 1268config CMD_MMC 1269 bool "mmc" 1270 depends on MMC 1271 help 1272 MMC memory mapped support. 1273 1274if CMD_MMC 1275 1276config CMD_BKOPS_ENABLE 1277 bool "mmc bkops enable" 1278 depends on CMD_MMC 1279 help 1280 Enable command for setting manual background operations handshake 1281 on a eMMC device. The feature is optionally available on eMMC devices 1282 conforming to standard >= 4.41. 1283 1284config CMD_MMC_RPMB 1285 bool "Enable support for RPMB in the mmc command" 1286 depends on SUPPORT_EMMC_RPMB 1287 help 1288 Enable the commands for reading, writing and programming the 1289 key for the Replay Protection Memory Block partition in eMMC. 1290 1291config CMD_MMC_SWRITE 1292 bool "mmc swrite" 1293 depends on MMC_WRITE 1294 select IMAGE_SPARSE 1295 help 1296 Enable support for the "mmc swrite" command to write Android sparse 1297 images to eMMC. 1298 1299endif 1300 1301config CMD_CLONE 1302 bool "clone" 1303 depends on BLK 1304 help 1305 Enable storage cloning over block devices, useful for 1306 initial flashing by external block device without network 1307 or usb support. 1308 1309config CMD_OPTEE_RPMB 1310 bool "Enable read/write support on RPMB via OPTEE" 1311 depends on SUPPORT_EMMC_RPMB && OPTEE 1312 help 1313 Enable the commands for reading, writing persistent named values 1314 in the Replay Protection Memory Block partition in eMMC by 1315 using Persistent Objects in OPTEE 1316 1317config CMD_MTD 1318 bool "mtd" 1319 depends on MTD 1320 select MTD_PARTITIONS 1321 help 1322 MTD commands support. 1323 1324config CMD_MUX 1325 bool "mux" 1326 depends on MULTIPLEXER 1327 help 1328 List, select, and deselect mux controllers on the fly. 1329 1330config CMD_NAND 1331 bool "nand" 1332 default y if NAND_SUNXI 1333 depends on MTD_RAW_NAND 1334 help 1335 NAND support. 1336 1337if CMD_NAND 1338config CMD_NAND_TRIMFFS 1339 bool "nand write.trimffs" 1340 default y if ARCH_SUNXI 1341 help 1342 Allows one to skip empty pages when flashing something on a NAND. 1343 1344config CMD_NAND_LOCK_UNLOCK 1345 bool "nand lock/unlock" 1346 help 1347 NAND locking support. 1348 1349config CMD_NAND_TORTURE 1350 bool "nand torture" 1351 help 1352 NAND torture support. 1353 1354endif # CMD_NAND 1355 1356config CMD_NVME 1357 bool "nvme" 1358 depends on NVME 1359 default y if NVME 1360 help 1361 NVM Express device support 1362 1363config CMD_ONENAND 1364 bool "onenand - access to onenand device" 1365 depends on MTD 1366 help 1367 OneNAND is a brand of NAND ('Not AND' gate) flash which provides 1368 various useful features. This command allows reading, writing, 1369 and erasing blocks. It allso provides a way to show and change 1370 bad blocks, and test the device. 1371 1372config USE_ONENAND_BOARD_INIT 1373 bool "Call onenand_board_init() in the onenand command" 1374 depends on CMD_ONENAND 1375 1376config CMD_OSD 1377 bool "osd" 1378 help 1379 Enable the 'osd' command which allows to query information from and 1380 write text data to a on-screen display (OSD) device; a virtual device 1381 associated with a display capable of displaying a text overlay on the 1382 display it's associated with.. 1383 1384config CMD_PART 1385 bool "part" 1386 depends on PARTITIONS 1387 select PARTITION_UUIDS 1388 help 1389 Read and display information about the partition table on 1390 various media. 1391 1392config CMD_PCI 1393 bool "pci - Access PCI devices" 1394 help 1395 Provide access to PCI (Peripheral Interconnect Bus), a type of bus 1396 used on some devices to allow the CPU to communicate with its 1397 peripherals. Sub-commands allow bus enumeration, displaying and 1398 changing configuration space and a few other features. 1399 1400config CMD_PCI_MPS 1401 bool "pci_mps - Configure PCI device MPS" 1402 depends on PCI 1403 help 1404 Enables PCI Express Maximum Packet Size (MPS) tuning. This 1405 command configures the PCI Express MPS of each endpoint to the 1406 largest value supported by all devices below the root complex. 1407 The Maximum Read Request Size will not be altered. This method is 1408 the same algorithm as used by Linux pci=pcie_bus_safe. 1409 1410config CMD_PINMUX 1411 bool "pinmux - show pins muxing" 1412 depends on PINCTRL 1413 default y if PINCTRL 1414 help 1415 Parse all available pin-controllers and show pins muxing. This 1416 is useful for debug purpoer to check the pin muxing and to know if 1417 a pin is configured as a GPIO or as an alternate function. 1418 1419config CMD_POWEROFF 1420 bool "poweroff" 1421 help 1422 Poweroff/Shutdown the system 1423 1424config CMD_READ 1425 bool "read - Read binary data from a partition" 1426 help 1427 Provides low-level access to the data in a partition. 1428 1429config CMD_REMOTEPROC 1430 bool "remoteproc" 1431 depends on REMOTEPROC 1432 help 1433 Support for Remote Processor control 1434 1435config CMD_SATA 1436 bool "sata - Access SATA subsystem" 1437 select SATA 1438 help 1439 SATA (Serial Advanced Technology Attachment) is a serial bus 1440 standard for connecting to hard drives and other storage devices. 1441 This command provides information about attached devices and allows 1442 reading, writing and other operations. 1443 1444 SATA replaces PATA (originally just ATA), which stands for Parallel AT 1445 Attachment, where AT refers to an IBM AT (Advanced Technology) 1446 computer released in 1984. 1447 1448config CMD_SCSI 1449 bool "scsi - Access to SCSI devices" 1450 depends on SCSI 1451 default y 1452 help 1453 This provides a 'scsi' command which provides access to SCSI (Small 1454 Computer System Interface) devices. The command provides a way to 1455 scan the bus, reset the bus, read and write data and get information 1456 about devices. 1457 1458config CMD_SDRAM 1459 bool "sdram - Print SDRAM configuration information" 1460 help 1461 Provides information about attached SDRAM. This assumed that the 1462 SDRAM has an EEPROM with information that can be read using the 1463 I2C bus. This is only available on some boards. 1464 1465config CMD_SF 1466 bool "sf" 1467 depends on DM_SPI_FLASH || SPI_FLASH 1468 default y if DM_SPI_FLASH 1469 help 1470 SPI Flash support 1471 1472config CMD_SF_TEST 1473 bool "sf test - Allow testing of SPI flash" 1474 depends on CMD_SF 1475 help 1476 Provides a way to test that SPI flash is working correctly. The 1477 test is destructive, in that an area of SPI flash must be provided 1478 for the test to use. Performance information is also provided, 1479 measuring the performance of reading, writing and erasing in 1480 Mbps (Million Bits Per Second). This value should approximately 1481 equal the SPI bus speed for a single-bit-wide SPI bus, assuming 1482 everything is working properly. 1483 1484config CMD_SPI 1485 bool "sspi - Command to access spi device" 1486 depends on SPI 1487 help 1488 SPI utility command. 1489 1490config DEFAULT_SPI_BUS 1491 int "default spi bus used by sspi command" 1492 depends on CMD_SPI 1493 default 0 1494 1495config DEFAULT_SPI_MODE 1496 hex "default spi mode used by sspi command (see include/spi.h)" 1497 depends on CMD_SPI 1498 default 0 1499 1500config CMD_TEMPERATURE 1501 bool "temperature - display the temperature from thermal sensors" 1502 depends on DM_THERMAL 1503 help 1504 Provides a way to list thermal sensors and to get their readings. 1505 1506config CMD_TSI148 1507 bool "tsi148 - Command to access tsi148 device" 1508 help 1509 This provides various sub-commands to initialise and configure the 1510 Turndra tsi148 device. See the command help for full details. 1511 1512config CMD_UFS 1513 bool "Enable UFS - Universal Flash Subsystem commands" 1514 depends on UFS 1515 help 1516 "This provides commands to initialise and configure universal flash 1517 subsystem devices" 1518 1519config CMD_UNIVERSE 1520 bool "universe - Command to set up the Turndra Universe controller" 1521 help 1522 This allows setting up the VMEbus provided by this controller. 1523 See the command help for full details. 1524 1525config CMD_USB 1526 bool "usb" 1527 depends on USB_HOST 1528 help 1529 USB support. 1530 1531config CMD_USB_SDP 1532 bool "sdp" 1533 select USB_FUNCTION_SDP 1534 help 1535 Enables the command "sdp" which is used to have U-Boot emulating the 1536 Serial Download Protocol (SDP) via USB. 1537 1538config CMD_ROCKUSB 1539 bool "rockusb" 1540 depends on USB_FUNCTION_ROCKUSB 1541 help 1542 Rockusb protocol is widely used by Rockchip SoC based devices. It can 1543 read/write info, image to/from devices. This enable rockusb command 1544 support to communication with rockusb device. for more detail about 1545 this command, please read doc/README.rockusb. 1546 1547config CMD_USB_MASS_STORAGE 1548 bool "UMS usb mass storage" 1549 depends on USB_GADGET_DOWNLOAD 1550 select USB_FUNCTION_MASS_STORAGE 1551 depends on BLK && USB_GADGET 1552 help 1553 Enables the command "ums" and the USB mass storage support to the 1554 export a block device: U-Boot, the USB device, acts as a simple 1555 external hard drive plugged on the host USB port. 1556 1557config CMD_UMS_ABORT_KEYED 1558 bool "UMS abort with any key" 1559 depends on CMD_USB_MASS_STORAGE 1560 help 1561 Allow interruption of usb mass storage run with any key pressed. 1562 1563config CMD_PVBLOCK 1564 bool "Xen para-virtualized block device" 1565 depends on XEN 1566 select PVBLOCK 1567 help 1568 Xen para-virtualized block device support 1569 1570config CMD_VIRTIO 1571 bool "virtio" 1572 depends on VIRTIO 1573 default y if VIRTIO 1574 help 1575 VirtIO block device support 1576 1577config CMD_WDT 1578 bool "wdt" 1579 depends on WDT 1580 help 1581 This provides commands to control the watchdog timer devices. 1582 1583config CMD_WRITE 1584 bool "write - Write binary data to a partition" 1585 help 1586 Provides low-level write access to a partition. 1587 1588config CMD_AXI 1589 bool "axi" 1590 depends on AXI 1591 help 1592 Enable the command "axi" for accessing AXI (Advanced eXtensible 1593 Interface) busses, a on-chip interconnect specification for managing 1594 functional blocks in SoC designs, which is also often used in designs 1595 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs). 1596endmenu 1597 1598 1599menu "Shell scripting commands" 1600 1601config CMD_CAT 1602 bool "cat" 1603 help 1604 Print file to standard output 1605 1606config CMD_ECHO 1607 bool "echo" 1608 default y 1609 help 1610 Echo args to console 1611 1612config CMD_ITEST 1613 bool "itest" 1614 default y 1615 help 1616 Return true/false on integer compare. 1617 1618config CMD_SOURCE 1619 bool "source" 1620 default y 1621 help 1622 Run script from memory 1623 1624config CMD_SETEXPR 1625 bool "setexpr" 1626 default y 1627 help 1628 Evaluate boolean and math expressions and store the result in an env 1629 variable. 1630 Also supports loading the value at a memory location into a variable. 1631 If CONFIG_REGEX is enabled, setexpr also supports a gsub function. 1632 1633config CMD_SETEXPR_FMT 1634 bool "setexpr_fmt" 1635 depends on CMD_SETEXPR 1636 help 1637 Evaluate format string expression and store result in an environment 1638 variable. 1639 1640endmenu 1641 1642menu "Android support commands" 1643 1644config CMD_AB_SELECT 1645 bool "ab_select" 1646 depends on ANDROID_AB 1647 help 1648 On Android devices with more than one boot slot (multiple copies of 1649 the kernel and system images) this provides a command to select which 1650 slot should be used to boot from and register the boot attempt. This 1651 is used by the new A/B update model where one slot is updated in the 1652 background while running from the other slot. 1653 1654endmenu 1655 1656if NET 1657 1658menuconfig CMD_NET 1659 bool "Network commands" 1660 default y 1661 imply NETDEVICES 1662 1663if CMD_NET 1664 1665config CMD_BOOTP 1666 bool "bootp" 1667 default y 1668 help 1669 bootp - boot image via network using BOOTP/TFTP protocol 1670 1671config CMD_DHCP 1672 bool "dhcp" 1673 depends on CMD_BOOTP 1674 help 1675 Boot image via network using DHCP/TFTP protocol 1676 1677config CMD_DHCP6 1678 bool "dhcp6" 1679 depends on IPV6 1680 help 1681 Boot image via network using DHCPv6/TFTP protocol using IPv6. 1682 1683 Will perform 4-message exchange with DHCPv6 server, requesting 1684 the minimum required options to TFTP boot. Complies with RFC 8415. 1685 1686config BOOTP_MAY_FAIL 1687 bool "Allow for the BOOTP/DHCP server to not be found" 1688 depends on CMD_BOOTP 1689 help 1690 If the DHCP server is not found after the configured retry count, the 1691 call will fail instead of starting over. This can be used to fail 1692 over to Link-local IP address configuration if the DHCP server is not 1693 available. 1694 1695config BOOTP_BOOTPATH 1696 bool "Request & store 'rootpath' from BOOTP/DHCP server" 1697 default y 1698 depends on CMD_BOOTP 1699 help 1700 Even though the config is called BOOTP_BOOTPATH, it stores the 1701 path in the variable 'rootpath'. 1702 1703config BOOTP_VENDOREX 1704 bool "Support vendor extensions from BOOTP/DHCP server" 1705 depends on CMD_BOOTP 1706 1707config BOOTP_BOOTFILESIZE 1708 bool "Request & store 'bootfilesize' from BOOTP/DHCP server" 1709 depends on CMD_BOOTP 1710 1711config BOOTP_DNS 1712 bool "Request & store 'dnsip' from BOOTP/DHCP server" 1713 default y 1714 depends on CMD_BOOTP 1715 help 1716 The primary DNS server is stored as 'dnsip'. If two servers are 1717 returned, you must set BOOTP_DNS2 to store that second server IP 1718 also. 1719 1720config BOOTP_DNS2 1721 bool "Store 'dnsip2' from BOOTP/DHCP server" 1722 depends on BOOTP_DNS 1723 help 1724 If a DHCP client requests the DNS server IP from a DHCP server, 1725 it is possible that more than one DNS serverip is offered to the 1726 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS 1727 server IP will be stored in the additional environment 1728 variable "dnsip2". The first DNS serverip is always 1729 stored in the variable "dnsip", when BOOTP_DNS is defined. 1730 1731config BOOTP_GATEWAY 1732 bool "Request & store 'gatewayip' from BOOTP/DHCP server" 1733 default y 1734 depends on CMD_BOOTP 1735 1736config BOOTP_HOSTNAME 1737 bool "Request & store 'hostname' from BOOTP/DHCP server" 1738 default y 1739 depends on CMD_BOOTP 1740 help 1741 The name may or may not be qualified with the local domain name. 1742 1743config BOOTP_PREFER_SERVERIP 1744 bool "serverip variable takes precedent over DHCP server IP." 1745 depends on CMD_BOOTP 1746 help 1747 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable. 1748 1749 With this option enabled, the 'serverip' variable in the environment 1750 takes precedence over DHCP server IP and will only be set by the DHCP 1751 server if not already set in the environment. 1752 1753config BOOTP_SUBNETMASK 1754 bool "Request & store 'netmask' from BOOTP/DHCP server" 1755 default y 1756 depends on CMD_BOOTP 1757 1758config BOOTP_NISDOMAIN 1759 bool "Request & store 'nisdomain' from BOOTP/DHCP server" 1760 depends on CMD_BOOTP 1761 1762config BOOTP_NTPSERVER 1763 bool "Request & store 'ntpserverip' from BOOTP/DHCP server" 1764 depends on CMD_BOOTP 1765 1766config BOOTP_TIMEOFFSET 1767 bool "Request & store 'timeoffset' from BOOTP/DHCP server" 1768 depends on CMD_BOOTP && CMD_SNTP 1769 1770config CMD_PCAP 1771 bool "pcap capture" 1772 help 1773 Selecting this will allow capturing all Ethernet packets and store 1774 them in physical memory in a PCAP formated file, 1775 later to be analyzed by PCAP reader application (IE. WireShark). 1776 1777config BOOTP_PXE 1778 bool "Send PXE client arch to BOOTP/DHCP server" 1779 default y 1780 depends on CMD_BOOTP && CMD_PXE 1781 help 1782 Supported for ARM, ARM64, and x86 for now. 1783 1784config BOOTP_PXE_CLIENTARCH 1785 hex 1786 depends on BOOTP_PXE 1787 default 0x16 if ARM64 1788 default 0x15 if ARM 1789 default 0 if X86 1790 1791config BOOTP_VCI_STRING 1792 string 1793 depends on CMD_BOOTP 1794 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R 1795 default "U-Boot.armv8" if ARM64 1796 default "U-Boot.arm" if ARM 1797 default "U-Boot" 1798 1799if CMD_DHCP6 1800 1801config DHCP6_PXE_CLIENTARCH 1802 hex 1803 default 0x16 if ARM64 1804 default 0x15 if ARM 1805 default 0xFF 1806 1807config DHCP6_PXE_DHCP_OPTION 1808 bool "Request & store 'pxe_configfile' from DHCP6 server" 1809 1810config DHCP6_ENTERPRISE_ID 1811 int "Enterprise ID to send in DHCPv6 Vendor Class Option" 1812 default 0 1813 1814endif 1815 1816config CMD_TFTPBOOT 1817 bool "tftpboot" 1818 default y 1819 help 1820 tftpboot - load file via network using TFTP protocol 1821 1822config CMD_TFTPPUT 1823 bool "tftp put" 1824 depends on CMD_TFTPBOOT 1825 help 1826 TFTP put command, for uploading files to a server 1827 1828config CMD_TFTPSRV 1829 bool "tftpsrv" 1830 depends on CMD_TFTPBOOT 1831 help 1832 Act as a TFTP server and boot the first received file 1833 1834config NET_TFTP_VARS 1835 bool "Control TFTP timeout and count through environment" 1836 depends on CMD_TFTPBOOT 1837 default y 1838 help 1839 If set, allows controlling the TFTP timeout through the 1840 environment variable tftptimeout, and the TFTP maximum 1841 timeout count through the variable tftptimeoutcountmax. 1842 If unset, timeout and maximum are hard-defined as 1 second 1843 and 10 timouts per TFTP transfer. 1844 1845config CMD_RARP 1846 bool "rarpboot" 1847 help 1848 Boot image via network using RARP/TFTP protocol 1849 1850config CMD_NFS 1851 bool "nfs" 1852 default y 1853 help 1854 Boot image via network using NFS protocol. 1855 1856config NFS_TIMEOUT 1857 int "Timeout in milliseconds for NFS mounts" 1858 depends on CMD_NFS 1859 default 2000 1860 help 1861 Timeout in milliseconds used in NFS protocol. If you encounter 1862 "ERROR: Cannot umount" in nfs command, try longer timeout such as 1863 10000. 1864 1865config SYS_DISABLE_AUTOLOAD 1866 bool "Disable automatically loading files over the network" 1867 depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP 1868 help 1869 Typically, commands such as "dhcp" will attempt to automatically 1870 load a file from the network, once the initial network configuration 1871 is complete. Enable this option to disable this behavior and instead 1872 require files to be loaded over the network by subsequent commands. 1873 1874config CMD_WGET 1875 bool "wget" 1876 select PROT_TCP 1877 help 1878 wget is a simple command to download kernel, or other files, 1879 from a http server over TCP. 1880 1881config CMD_MII 1882 bool "mii" 1883 imply CMD_MDIO 1884 help 1885 If set, allows 802.3(clause 22) MII Management functions interface access 1886 The management interface specified in Clause 22 provides 1887 a simple, two signal, serial interface to connect a 1888 Station Management entity and a managed PHY for providing access 1889 to management parameters and services. 1890 The interface is referred to as the MII management interface. 1891 1892config MII_INIT 1893 bool "Call mii_init() in the mii command" 1894 depends on CMD_MII && (MPC8XX_FEC || FSLDMAFE || MCFFEC) 1895 1896config CMD_MDIO 1897 bool "mdio" 1898 depends on PHYLIB 1899 help 1900 If set, allows Enable 802.3(clause 45) MDIO interface registers access 1901 The MDIO interface is orthogonal to the MII interface and extends 1902 it by adding access to more registers through indirect addressing. 1903 1904config CMD_PING 1905 bool "ping" 1906 help 1907 Send ICMP ECHO_REQUEST to network host 1908 1909config CMD_PING6 1910 bool "ping6" 1911 depends on IPV6 1912 default y if (CMD_PING && IPV6) 1913 help 1914 Send ICMPv6 ECHO_REQUEST to network host 1915 1916config CMD_CDP 1917 bool "cdp" 1918 help 1919 Perform CDP network configuration 1920 1921config CMD_SNTP 1922 bool "sntp" 1923 select PROT_UDP 1924 help 1925 Synchronize RTC via network 1926 1927config CMD_DNS 1928 bool "dns" 1929 help 1930 Lookup the IP of a hostname 1931 1932config CMD_LINK_LOCAL 1933 bool "linklocal" 1934 select LIB_RAND 1935 help 1936 Acquire a network IP address using the link-local protocol 1937 1938config CMD_NCSI 1939 bool "ncsi" 1940 depends on PHY_NCSI 1941 help 1942 Manually configure the attached NIC via NC-SI. 1943 Normally this happens automatically before other network 1944 operations. 1945 1946config IPV6_ROUTER_DISCOVERY 1947 bool "Do IPv6 router discovery" 1948 depends on IPV6 1949 help 1950 Will automatically perform router solicitation on first IPv6 1951 network operation 1952endif 1953 1954config CMD_ETHSW 1955 bool "ethsw" 1956 help 1957 Allow control of L2 Ethernet switch commands. These are supported 1958 by the vsc9953 Ethernet driver at present. Sub-commands allow 1959 operations such as enabling / disabling a port and 1960 viewing/maintaining the filtering database (FDB) 1961 1962config CMD_PXE 1963 bool "pxe" 1964 select PXE_UTILS 1965 help 1966 Boot image via network using PXE protocol 1967 1968config CMD_WOL 1969 bool "wol" 1970 help 1971 Wait for wake-on-lan Magic Packet 1972 1973endif 1974 1975menu "Misc commands" 1976 1977config CMD_2048 1978 bool "Play 2048" 1979 help 1980 This is a simple sliding block puzzle game designed by Italian web 1981 developer Gabriele Cirulli. The game's objective is to slide numbered 1982 tiles on a grid to combine them to create a tile with the number 1983 2048. 1984 1985 This needs ANSI support on your terminal to work. It is not fully 1986 functional on a video device. 1987 1988config CMD_BMP 1989 bool "Enable 'bmp' command" 1990 depends on VIDEO 1991 help 1992 This provides a way to obtain information about a BMP-format image 1993 and to display it. BMP (which presumably stands for BitMaP) is a 1994 file format defined by Microsoft which supports images of various 1995 depths, formats and compression methods. Headers on the file 1996 determine the formats used. This command can be used by first loading 1997 the image into RAM, then using this command to look at it or display 1998 it. 1999 2000config CMD_BOOTCOUNT 2001 bool "bootcount" 2002 depends on BOOTCOUNT_LIMIT 2003 help 2004 Enable the bootcount command, which allows interrogation and 2005 reset of the bootcounter. 2006 2007config CMD_BSP 2008 bool "Enable board-specific commands" 2009 help 2010 (deprecated: instead, please define a Kconfig option for each command) 2011 2012 Some boards have board-specific commands which are only enabled 2013 during developemnt and need to be turned off for production. This 2014 option provides a way to control this. The commands that are enabled 2015 vary depending on the board. 2016 2017config CMD_BLOCK_CACHE 2018 bool "blkcache - control and stats for block cache" 2019 depends on BLOCK_CACHE 2020 default y if BLOCK_CACHE 2021 help 2022 Enable the blkcache command, which can be used to control the 2023 operation of the cache functions. 2024 This is most useful when fine-tuning the operation of the cache 2025 during development, but also allows the cache to be disabled when 2026 it might hurt performance (e.g. when using the ums command). 2027 2028config CMD_BLKMAP 2029 bool "blkmap - Composable virtual block devices" 2030 depends on BLKMAP 2031 default y if BLKMAP 2032 help 2033 Create virtual block devices that are backed by various sources, 2034 e.g. RAM, or parts of an existing block device. Though much more 2035 rudimentary, it borrows a lot of ideas from Linux's device mapper 2036 subsystem. 2037 2038 Example use-cases: 2039 - Treat a region of RAM as a block device, i.e. a RAM disk. This let's 2040 you extract files from filesystem images stored in RAM (perhaps as a 2041 result of a TFTP transfer). 2042 - Create a virtual partition on an existing device. This let's you 2043 access filesystems that aren't stored at an exact partition 2044 boundary. A common example is a filesystem image embedded in an FIT 2045 image. 2046 2047config CMD_BUTTON 2048 bool "button" 2049 depends on BUTTON 2050 default y if BUTTON 2051 help 2052 Enable the 'button' command which allows to get the status of 2053 buttons supported by the board. The buttonss can be listed with 2054 'button list' and state can be known with 'button <label>'. 2055 Any button drivers can be controlled with this command, e.g. 2056 button_gpio. 2057 2058config CMD_CACHE 2059 bool "icache or dcache" 2060 help 2061 Enable the "icache" and "dcache" commands 2062 2063config CMD_CONITRACE 2064 bool "conitrace - trace console input codes" 2065 help 2066 Enable the 'conitrace' command which displays the codes received 2067 from the console input as hexadecimal numbers. 2068 2069config CMD_CLS 2070 bool "Enable clear screen command 'cls'" 2071 default y if LCD || VIDEO 2072 help 2073 Enable the 'cls' command which clears the screen contents 2074 on video frame buffer. 2075 2076config CMD_EFIDEBUG 2077 bool "efidebug - display/configure UEFI environment" 2078 depends on EFI_LOADER 2079 select EFI_DEVICE_PATH_TO_TEXT 2080 help 2081 Enable the 'efidebug' command which provides a subset of UEFI 2082 shell utility with simplified functionality. It will be useful 2083 particularly for managing boot parameters as well as examining 2084 various EFI status for debugging. 2085 2086config CMD_EFICONFIG 2087 bool "eficonfig - provide menu-driven uefi variables maintenance interface" 2088 default y if !HAS_BOARD_SIZE_LIMIT 2089 depends on CMD_BOOTEFI_BOOTMGR 2090 select MENU 2091 help 2092 Enable the 'eficonfig' command which provides the menu-driven UEFI 2093 variable maintenance interface. 2094 2095config CMD_EXCEPTION 2096 bool "exception - raise exception" 2097 depends on ARM || RISCV || SANDBOX || X86 2098 help 2099 Enable the 'exception' command which allows to raise an exception. 2100 2101config CMD_LED 2102 bool "led" 2103 depends on LED 2104 default y if LED 2105 help 2106 Enable the 'led' command which allows for control of LEDs supported 2107 by the board. The LEDs can be listed with 'led list' and controlled 2108 with led on/off/togle/blink. Any LED drivers can be controlled with 2109 this command, e.g. led_gpio. 2110 2111config CMD_INI 2112 bool "ini" 2113 help 2114 Enable the 'ini' command which allows a .ini file to be parsed and 2115 placed into environment variables. Please check the source code for 2116 this as there is no documentation. 2117 2118config CMD_DATE 2119 bool "date" 2120 default y if DM_RTC 2121 select LIB_DATE 2122 help 2123 Enable the 'date' command for getting/setting the time/date in RTC 2124 devices. 2125 2126config CMD_RTC 2127 bool "rtc" 2128 depends on DM_RTC 2129 help 2130 Enable the 'rtc' command for low-level access to RTC devices. 2131 2132config CMD_TIME 2133 bool "time" 2134 help 2135 Run commands and summarize execution time. 2136 2137config CMD_GETTIME 2138 bool "gettime - read elapsed time" 2139 help 2140 Enable the 'gettime' command which reads the elapsed time since 2141 U-Boot started running. This shows the time in seconds and 2142 milliseconds. See also the 'bootstage' command which provides more 2143 flexibility for boot timing. 2144 2145config CMD_PAUSE 2146 bool "pause command" 2147 help 2148 Delay execution waiting for any user input. 2149 Useful to allow the user to read a failure log. 2150 2151config CMD_RNG 2152 bool "rng command" 2153 depends on DM_RNG 2154 default y if SANDBOX 2155 select HEXDUMP 2156 help 2157 Print bytes from the hardware random number generator. 2158 2159config CMD_KASLRSEED 2160 bool "kaslrseed" 2161 depends on DM_RNG 2162 help 2163 Set the kaslr-seed in the chosen node with entropy provided by a 2164 hardware random number generator. 2165 2166config CMD_SLEEP 2167 bool "sleep" 2168 default y 2169 help 2170 Delay execution for some time 2171 2172config CMD_MP 2173 bool "support for multiprocessor commands" 2174 depends on MP 2175 default y 2176 help 2177 This enables commands to bringup different processors 2178 in multiprocessor cases. 2179 2180config CMD_TIMER 2181 bool "timer" 2182 help 2183 Access the system timer. 2184 2185config CMD_SOUND 2186 bool "sound" 2187 depends on SOUND 2188 help 2189 This provides basic access to the U-Boot's sound support. The main 2190 feature is to play a beep. 2191 2192 sound init - set up sound system 2193 sound play - play a sound 2194 2195config CMD_SYSBOOT 2196 bool "sysboot" 2197 select PXE_UTILS 2198 help 2199 Boot image via local extlinux.conf file 2200 2201config CMD_QFW 2202 bool "qfw" 2203 select QFW 2204 help 2205 This provides access to the QEMU firmware interface. The main 2206 feature is to allow easy loading of files passed to qemu-system 2207 via -kernel / -initrd 2208 2209config CMD_PSTORE 2210 bool "pstore" 2211 help 2212 This provides access to Linux PStore with Rammoops backend. The main 2213 feature is to allow to display or save PStore records. 2214 2215 See doc/pstore.rst for more information. 2216 2217if CMD_PSTORE 2218 2219config CMD_PSTORE_MEM_ADDR 2220 hex "Memory Address" 2221 depends on CMD_PSTORE 2222 help 2223 Base addr used for PStore ramoops memory, should be identical to 2224 ramoops.mem_address parameter used by kernel 2225 2226config CMD_PSTORE_MEM_SIZE 2227 hex "Memory size" 2228 depends on CMD_PSTORE 2229 default "0x10000" 2230 help 2231 Size of PStore ramoops memory, should be identical to ramoops.mem_size 2232 parameter used by kernel, a power of 2 and larger than the sum of the 2233 record sizes 2234 2235config CMD_PSTORE_RECORD_SIZE 2236 hex "Dump record size" 2237 depends on CMD_PSTORE 2238 default "0x1000" 2239 help 2240 Size of each dump done on oops/panic, should be identical to 2241 ramoops.record_size parameter used by kernel and a power of 2 2242 Must be non-zero 2243 2244config CMD_PSTORE_CONSOLE_SIZE 2245 hex "Kernel console log size" 2246 depends on CMD_PSTORE 2247 default "0x1000" 2248 help 2249 Size of kernel console log, should be identical to 2250 ramoops.console_size parameter used by kernel and a power of 2 2251 Must be non-zero 2252 2253config CMD_PSTORE_FTRACE_SIZE 2254 hex "FTrace log size" 2255 depends on CMD_PSTORE 2256 default "0x1000" 2257 help 2258 Size of ftrace log, should be identical to ramoops.ftrace_size 2259 parameter used by kernel and a power of 2 2260 2261config CMD_PSTORE_PMSG_SIZE 2262 hex "User space message log size" 2263 depends on CMD_PSTORE 2264 default "0x1000" 2265 help 2266 Size of user space message log, should be identical to 2267 ramoops.pmsg_size parameter used by kernel and a power of 2 2268 2269config CMD_PSTORE_ECC_SIZE 2270 int "ECC size" 2271 depends on CMD_PSTORE 2272 default "0" 2273 help 2274 if non-zero, the option enables ECC support and specifies ECC buffer 2275 size in bytes (1 is a special value, means 16 bytes ECC), should be 2276 identical to ramoops.ramoops_ecc parameter used by kernel 2277 2278endif 2279 2280source "cmd/mvebu/Kconfig" 2281 2282config CMD_TERMINAL 2283 bool "terminal - provides a way to attach a serial terminal" 2284 help 2285 Provides a 'cu'-like serial terminal command. This can be used to 2286 access other serial ports from the system console. The terminal 2287 is very simple with no special processing of characters. As with 2288 cu, you can press ~. (tilde followed by period) to exit. 2289 2290config CMD_UUID 2291 bool "uuid, guid - generation of unique IDs" 2292 select LIB_UUID 2293 help 2294 This enables two commands: 2295 2296 uuid - generate random Universally Unique Identifier 2297 guid - generate Globally Unique Identifier based on random UUID 2298 2299 The two commands are very similar except for the endianness of the 2300 output. 2301 2302config CMD_VIDCONSOLE 2303 bool "lcdputs and setcurs" 2304 depends on VIDEO 2305 default y 2306 help 2307 Enabling this will provide 'setcurs' and 'lcdputs' commands which 2308 support cursor positioning and drawing strings on the video 2309 console (framebuffer). 2310 2311 The name 'lcdputs' is a bit of a misnomer, but so named because the 2312 video device is often an LCD. 2313 2314config CMD_SELECT_FONT 2315 bool "select font size" 2316 depends on VIDEO 2317 default n 2318 help 2319 Enabling this will provide 'font' command. 2320 Allows font selection at runtime. 2321 2322endmenu 2323 2324source "cmd/ti/Kconfig" 2325 2326config CMD_BOOTSTAGE 2327 bool "Enable the 'bootstage' command" 2328 depends on BOOTSTAGE 2329 help 2330 Add a 'bootstage' command which supports printing a report 2331 and un/stashing of bootstage data. 2332 2333menu "Power commands" 2334config CMD_PMIC 2335 bool "Enable Driver Model PMIC command" 2336 depends on DM_PMIC 2337 help 2338 This is the pmic command, based on a driver model pmic's API. 2339 Command features are unchanged: 2340 - list - list pmic devices 2341 - pmic dev <id> - show or [set] operating pmic device (NEW) 2342 - pmic dump - dump registers 2343 - pmic read address - read byte of register at address 2344 - pmic write address - write byte to register at address 2345 The only one change for this command is 'dev' subcommand. 2346 2347config CMD_REGULATOR 2348 bool "Enable Driver Model REGULATOR command" 2349 depends on DM_REGULATOR 2350 help 2351 This command is based on driver model regulator's API. 2352 User interface features: 2353 - list - list regulator devices 2354 - regulator dev <id> - show or [set] operating regulator device 2355 - regulator info - print constraints info 2356 - regulator status - print operating status 2357 - regulator value <val] <-f> - print/[set] voltage value [uV] 2358 - regulator current <val> - print/[set] current value [uA] 2359 - regulator mode <id> - print/[set] operating mode id 2360 - regulator enable - enable the regulator output 2361 - regulator disable - disable the regulator output 2362 2363 The '-f' (force) option can be used for set the value which exceeds 2364 the limits, which are found in device-tree and are kept in regulator's 2365 uclass plat structure. 2366 2367endmenu 2368 2369menu "Security commands" 2370config CMD_AES 2371 bool "Enable the 'aes' command" 2372 select AES 2373 help 2374 This provides a means to encrypt and decrypt data using the AES 2375 (Advanced Encryption Standard). This algorithm uses a symetric key 2376 and is widely used as a streaming cipher. Different key lengths are 2377 supported by the algorithm but this command only supports 128 bits 2378 at present. 2379 2380config CMD_BLOB 2381 bool "Enable the 'blob' command" 2382 depends on !MX6ULL && !MX6SLL && !MX6SL 2383 select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M 2384 help 2385 This is used with the Freescale secure boot mechanism. 2386 2387 Freescale's SEC block has built-in Blob Protocol which provides 2388 a method for protecting user-defined data across system power 2389 cycles. SEC block protects data in a data structure called a Blob, 2390 which provides both confidentiality and integrity protection. 2391 2392 Encapsulating data as a blob 2393 Each time that the Blob Protocol is used to protect data, a 2394 different randomly generated key is used to encrypt the data. 2395 This random key is itself encrypted using a key which is derived 2396 from SoC's non-volatile secret key and a 16 bit Key identifier. 2397 The resulting encrypted key along with encrypted data is called a 2398 blob. The non-volatile secure key is available for use only during 2399 secure boot. 2400 2401 During decapsulation, the reverse process is performed to get back 2402 the original data. 2403 2404 Sub-commands: 2405 blob enc - encapsulating data as a cryptgraphic blob 2406 blob dec - decapsulating cryptgraphic blob to get the data 2407 2408 Syntax: 2409 2410 blob enc src dst len km 2411 2412 Encapsulate and create blob of data $len bytes long 2413 at address $src and store the result at address $dst. 2414 $km is the 16 byte key modifier is also required for 2415 generation/use as key for cryptographic operation. Key 2416 modifier should be 16 byte long. 2417 2418 blob dec src dst len km 2419 2420 Decapsulate the blob of data at address $src and 2421 store result of $len byte at addr $dst. 2422 $km is the 16 byte key modifier is also required for 2423 generation/use as key for cryptographic operation. Key 2424 modifier should be 16 byte long. 2425 2426config CMD_HASH 2427 bool "Support 'hash' command" 2428 select HASH 2429 help 2430 This provides a way to hash data in memory using various supported 2431 algorithms (such as SHA1, MD5, CRC32). The computed digest can be 2432 saved to memory or to an environment variable. It is also possible 2433 to verify a hash against data in memory. 2434 2435config CMD_HVC 2436 bool "Support the 'hvc' command" 2437 depends on ARM_SMCCC 2438 help 2439 Allows issuing Hypervisor Calls (HVCs). Mostly useful for 2440 development and testing. 2441 2442config CMD_SMC 2443 bool "Support the 'smc' command" 2444 depends on ARM_SMCCC 2445 help 2446 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for 2447 development and testing. 2448 2449config HASH_VERIFY 2450 bool "hash -v" 2451 depends on CMD_HASH 2452 help 2453 Add -v option to verify data against a hash. 2454 2455config CMD_SCP03 2456 bool "scp03 - SCP03 enable and rotate/provision operations" 2457 depends on SCP03 2458 help 2459 This command provides access to a Trusted Application 2460 running in a TEE to request Secure Channel Protocol 03 2461 (SCP03) enablement and/or rotation of its SCP03 keys. 2462 2463config CMD_TPM_V1 2464 bool 2465 2466config CMD_TPM_V2 2467 bool 2468 2469config CMD_TPM 2470 bool "Enable the 'tpm' command" 2471 depends on TPM_V1 || TPM_V2 2472 select CMD_TPM_V1 if TPM_V1 2473 select CMD_TPM_V2 if TPM_V2 2474 help 2475 This provides a means to talk to a TPM from the command line. A wide 2476 range of commands if provided - see 'tpm help' for details. The 2477 command requires a suitable TPM on your board and the correct driver 2478 must be enabled. 2479 2480if CMD_TPM 2481 2482config CMD_TPM_TEST 2483 bool "Enable the 'tpm test' command" 2484 depends on TPM_V1 2485 help 2486 This provides a a series of tests to confirm that the TPMv1.x is 2487 working correctly. The tests cover initialisation, non-volatile RAM, 2488 extend, global lock and checking that timing is within expectations. 2489 The tests pass correctly on Infineon TPMs but may need to be adjusted 2490 for other devices. 2491 2492endif 2493 2494endmenu 2495 2496menu "Firmware commands" 2497config CMD_CROS_EC 2498 bool "Enable crosec command" 2499 depends on CROS_EC 2500 default y 2501 help 2502 Enable command-line access to the Chrome OS EC (Embedded 2503 Controller). This provides the 'crosec' command which has 2504 a number of sub-commands for performing EC tasks such as 2505 updating its flash, accessing a small saved context area 2506 and talking to the I2C bus behind the EC (if there is one). 2507endmenu 2508 2509menu "Filesystem commands" 2510config CMD_BTRFS 2511 bool "Enable the 'btrsubvol' command" 2512 select FS_BTRFS 2513 help 2514 This enables the 'btrsubvol' command to list subvolumes 2515 of a BTRFS filesystem. There are no special commands for 2516 listing BTRFS directories or loading BTRFS files - this 2517 can be done by the generic 'fs' commands (see CMD_FS_GENERIC) 2518 when BTRFS is enabled (see FS_BTRFS). 2519 2520config CMD_CBFS 2521 bool "Enable the 'cbfs' command" 2522 depends on FS_CBFS 2523 help 2524 Define this to enable support for reading from a Coreboot 2525 filesystem. This is a ROM-based filesystem used for accessing files 2526 on systems that use coreboot as the first boot-loader and then load 2527 U-Boot to actually boot the Operating System. Available commands are 2528 cbfsinit, cbfsinfo, cbfsls and cbfsload. 2529 2530config CMD_CRAMFS 2531 bool "Enable the 'cramfs' command" 2532 depends on FS_CRAMFS 2533 help 2534 This provides commands for dealing with CRAMFS (Compressed ROM 2535 filesystem). CRAMFS is useful when space is tight since files are 2536 compressed. Two commands are provided: 2537 2538 cramfsls - lists files in a cramfs image 2539 cramfsload - loads a file from a cramfs image 2540 2541config CMD_EROFS 2542 bool "EROFS command support" 2543 select FS_EROFS 2544 help 2545 Support for the EROFS fs 2546 2547config CMD_EXT2 2548 bool "ext2 command support" 2549 select FS_EXT4 2550 help 2551 Enables EXT2 FS command 2552 2553config CMD_EXT4 2554 bool "ext4 command support" 2555 select FS_EXT4 2556 help 2557 Enables EXT4 FS command 2558 2559config CMD_EXT4_WRITE 2560 depends on CMD_EXT4 2561 bool "ext4 write command support" 2562 select EXT4_WRITE 2563 help 2564 Enables EXT4 FS write command 2565 2566config CMD_FAT 2567 bool "FAT command support" 2568 select FS_FAT 2569 help 2570 Support for the FAT fs 2571 2572config CMD_SQUASHFS 2573 bool "SquashFS command support" 2574 select FS_SQUASHFS 2575 help 2576 Enables SquashFS filesystem commands (e.g. load, ls). 2577 2578config CMD_FS_GENERIC 2579 bool "filesystem commands" 2580 help 2581 Enables filesystem commands (e.g. load, ls) that work for multiple 2582 fs types. 2583 2584config CMD_FS_UUID 2585 bool "fsuuid command" 2586 help 2587 Enables fsuuid command for filesystem UUID. 2588 2589config CMD_JFFS2 2590 bool "jffs2 command" 2591 select FS_JFFS2 2592 help 2593 Enables commands to support the JFFS2 (Journalling Flash File System 2594 version 2) filesystem. This enables fsload, ls and fsinfo which 2595 provide the ability to load files, list directories and obtain 2596 filesystem information. 2597 2598config JFFS2_DEV 2599 string "Default device for JFFS2" 2600 depends on CMD_JFFS2 2601 default "nor0" 2602 help 2603 The default device to use with the jffs2 command. 2604 2605config JFFS2_PART_OFFSET 2606 hex "Default offset within flash to locate the JFFS2 image" 2607 depends on CMD_JFFS2 2608 default 0x0 2609 help 2610 The default offset within flash to locate the JFFS2 image. 2611 2612config JFFS2_PART_SIZE 2613 hex "Default size of JFFS2 partition" 2614 depends on CMD_JFFS2 2615 default 0xFFFFFFFF 2616 help 2617 The default size of the JFFS2 partition 2618 2619config CMD_MTDPARTS 2620 bool "MTD partition support" 2621 depends on MTD 2622 help 2623 MTD partitioning tool support. 2624 It is strongly encouraged to avoid using this command 2625 anymore along with 'sf', 'nand', 'onenand'. One can still 2626 declare the partitions in the mtdparts environment variable 2627 but better use the MTD stack and the 'mtd' command instead. 2628 2629config CMD_MTDPARTS_SPREAD 2630 bool "Padd partition size to take account of bad blocks" 2631 depends on CMD_MTDPARTS 2632 help 2633 This enables the 'spread' sub-command of the mtdparts command. 2634 This command will modify the existing mtdparts variable by increasing 2635 the size of the partitions such that 1) each partition's net size is 2636 at least as large as the size specified in the mtdparts variable and 2637 2) each partition starts on a good block. 2638 2639config CMD_MTDPARTS_SHOW_NET_SIZES 2640 bool "Show net size (w/o bad blocks) of partitions" 2641 depends on CMD_MTDPARTS 2642 help 2643 Adds two columns to the printed partition table showing the 2644 effective usable size of a partition, if bad blocks are taken 2645 into account. 2646 2647config MTDIDS_DEFAULT 2648 string "Default MTD IDs" 2649 depends on MTD || SPI_FLASH 2650 depends on !SYS_MTDPARTS_RUNTIME 2651 help 2652 Defines a default MTD IDs list for use with MTD partitions in the 2653 Linux MTD command line partitions format. 2654 2655config MTDPARTS_DEFAULT 2656 string "Default MTD partition scheme" 2657 depends on MTD || SPI_FLASH 2658 depends on !SYS_MTDPARTS_RUNTIME 2659 help 2660 Defines a default MTD partitioning scheme in the Linux MTD command 2661 line partitions format 2662 2663config CMD_REISER 2664 bool "reiser - Access to reiserfs filesystems" 2665 help 2666 This provides two commands which operate on a resierfs filesystem, 2667 commonly used some years ago: 2668 2669 reiserls - list files 2670 reiserload - load a file 2671 2672config CMD_YAFFS2 2673 bool "yaffs2 - Access of YAFFS2 filesystem" 2674 depends on YAFFS2 2675 default y 2676 help 2677 This provides commands for accessing a YAFFS2 filesystem. Yet 2678 Another Flash Filesystem 2 is a filesystem designed specifically 2679 for NAND flash. It incorporates bad-block management and ensures 2680 that device writes are sequential regardless of filesystem 2681 activity. 2682 2683config CMD_ZFS 2684 bool "zfs - Access of ZFS filesystem" 2685 help 2686 This provides commands to accessing a ZFS filesystem, commonly used 2687 on Solaris systems. Two sub-commands are provided: 2688 2689 zfsls - list files in a directory 2690 zfsload - load a file 2691 2692 See doc/README.zfs for more details. 2693 2694endmenu 2695 2696menu "Debug commands" 2697 2698config CMD_CBSYSINFO 2699 bool "cbsysinfo" 2700 depends on X86 2701 default y if SYS_COREBOOT 2702 help 2703 This provides information about the coreboot sysinfo table stored in 2704 memory by coreboot before jumping to U-Boot. It can be useful for 2705 debugging the beaaviour of coreboot or U-Boot. 2706 2707config CMD_CYCLIC 2708 bool "cyclic - Show information about cyclic functions" 2709 depends on CYCLIC 2710 default y 2711 help 2712 This enables the 'cyclic' command which provides information about 2713 cyclic execution functions. This infrastructure allows registering 2714 functions to be executed cyclically, e.g. every 100ms. These commands 2715 are supported: 2716 2717 cyclic list - list cyclic functions 2718 cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic 2719 demo function 2720 2721 See doc/develop/cyclic.rst for more details. 2722 2723config CMD_DIAG 2724 bool "diag - Board diagnostics" 2725 help 2726 This command provides access to board diagnostic tests. These are 2727 called Power-on Self Tests (POST). The command allows listing of 2728 available tests and running either all the tests, or specific tests 2729 identified by name. 2730 2731config CMD_EVENT 2732 bool "event - Show information about events" 2733 depends on EVENT 2734 default y if EVENT_DEBUG 2735 help 2736 This enables the 'event' command which provides information about 2737 events and event-handler routines. This can help to device event 2738 hadling. 2739 2740config CMD_IRQ 2741 bool "irq - Show information about interrupts" 2742 depends on !ARM && !MIPS && !RISCV && !SH 2743 help 2744 This enables two commands: 2745 2746 interrupts - enable or disable interrupts 2747 irqinfo - print device-specific interrupt information 2748 2749config CMD_KGDB 2750 bool "kgdb - Allow debugging of U-Boot with gdb" 2751 depends on PPC 2752 help 2753 This enables a 'kgdb' command which allows gdb to connect to U-Boot 2754 over a serial link for debugging purposes. This allows 2755 single-stepping, inspecting variables, etc. This is supported only 2756 on PowerPC at present. 2757 2758config CMD_LOG 2759 bool "log - Generation, control and access to logging" 2760 select LOG 2761 select GETOPT 2762 help 2763 This provides access to logging features. It allows the output of 2764 log data to be controlled to a limited extent (setting up the default 2765 maximum log level for emitting of records). It also provides access 2766 to a command used for testing the log system. 2767 2768config CMD_TRACE 2769 bool "trace - Support tracing of function calls and timing" 2770 depends on TRACE 2771 default y 2772 help 2773 Enables a command to control using of function tracing within 2774 U-Boot. This allows recording of call traces including timing 2775 information. The command can write data to memory for exporting 2776 for analysis (e.g. using bootchart). See doc/README.trace for full 2777 details. 2778 2779config CMD_AVB 2780 bool "avb - Android Verified Boot 2.0 operations" 2781 depends on AVB_VERIFY 2782 help 2783 Enables a "avb" command to perform verification of partitions using 2784 Android Verified Boot 2.0 functionality. It includes such subcommands: 2785 avb init - initialize avb2 subsystem 2786 avb read_rb - read rollback index 2787 avb write_rb - write rollback index 2788 avb is_unlocked - check device lock state 2789 avb get_uuid - read and print uuid of a partition 2790 avb read_part - read data from partition 2791 avb read_part_hex - read data from partition and output to stdout 2792 avb write_part - write data to partition 2793 avb verify - run full verification chain 2794 2795config CMD_STACKPROTECTOR_TEST 2796 bool "Test command for stack protector" 2797 depends on STACKPROTECTOR 2798 help 2799 Enable stackprot_test command 2800 The stackprot_test command will force a stack overrun to test 2801 the stack smashing detection mechanisms. 2802 2803endmenu 2804 2805config CMD_UBI 2806 tristate "Enable UBI - Unsorted block images commands" 2807 select MTD_UBI 2808 help 2809 UBI is a software layer above MTD layer which admits use of LVM-like 2810 logical volumes on top of MTD devices, hides some complexities of 2811 flash chips like wear and bad blocks and provides some other useful 2812 capabilities. Please, consult the MTD web site for more details 2813 (www.linux-mtd.infradead.org). Activate this option if you want 2814 to use U-Boot UBI commands. 2815 It is also strongly encouraged to also enable CONFIG_MTD to get full 2816 partition support. 2817 2818config CMD_UBI_RENAME 2819 bool "Enable rename" 2820 depends on CMD_UBI 2821 help 2822 Enable a "ubi" command to rename ubi volume: 2823 ubi rename <oldname> <newname> 2824 2825config CMD_UBIFS 2826 tristate "Enable UBIFS - Unsorted block images filesystem commands" 2827 depends on CMD_UBI 2828 default y if CMD_UBI 2829 select LZO 2830 select GZIP 2831 help 2832 UBIFS is a file system for flash devices which works on top of UBI. 2833 2834config MMC_SPEED_MODE_SET 2835 bool "set speed mode using mmc command" 2836 depends on CMD_MMC 2837 default n 2838 help 2839 Enable setting speed mode using mmc rescan and mmc dev commands. 2840 The speed mode is provided as the last argument in these commands 2841 and is indicated using the index from enum bus_mode in 2842 include/mmc.h. A speed mode can be set only if it has already 2843 been enabled in the device tree. 2844 2845config CMD_MESON 2846 bool "Amlogic Meson commands" 2847 depends on ARCH_MESON 2848 default y 2849 help 2850 Enable useful commands for the Meson Soc family developed by Amlogic Inc. 2851endmenu 2852