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