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