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