blob: 629a90afb7b5240f1f517723dc2817c6e9de19af [file] [log] [blame]
Simon Glassd4ebc6b2023-10-26 14:31:29 -04001menuconfig CMDLINE
2 bool "Command line interface"
Simon Glassaa34ef22016-03-13 19:07:28 -06003 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
Simon Glassd4ebc6b2023-10-26 14:31:29 -040012if CMDLINE
13
Simon Glass29499a02016-01-17 20:53:51 -070014config HUSH_PARSER
15 bool "Use hush shell"
Simon Glass29499a02016-01-17 20:53:51 -070016 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
Adam Ford58dbf862018-02-06 07:58:59 -060025config CMDLINE_EDITING
26 bool "Enable command line editing"
Adam Ford58dbf862018-02-06 07:58:59 -060027 default y
28 help
29 Enable editing and History functions for interactive command line
30 input operations
31
Tom Rini24d32042022-03-30 18:07:14 -040032config CMDLINE_PS_SUPPORT
33 bool "Enable support for changing the command prompt string at run-time"
34 depends on HUSH_PARSER
35 help
36 Only static string in the prompt is supported so far. The string is
37 obtained from environment variables PS1 and PS2.
38
Adam Ford58dbf862018-02-06 07:58:59 -060039config AUTO_COMPLETE
40 bool "Enable auto complete using TAB"
Adam Ford58dbf862018-02-06 07:58:59 -060041 default y
42 help
43 Enable auto completion of commands using TAB.
44
45config SYS_LONGHELP
46 bool "Enable long help messages"
Simon Glassd4ebc6b2023-10-26 14:31:29 -040047 default y
Adam Ford58dbf862018-02-06 07:58:59 -060048 help
49 Defined when you want long help messages included
50 Do not set this option when short of memory.
51
Simon Glass29499a02016-01-17 20:53:51 -070052config SYS_PROMPT
53 string "Shell prompt"
Michal Simekf048cae2019-09-25 12:32:41 +020054 default "Zynq> " if ARCH_ZYNQ
Michal Simek4f107432019-09-25 12:37:15 +020055 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass29499a02016-01-17 20:53:51 -070056 default "=> "
57 help
58 This string is displayed in the command line to the left of the
59 cursor.
60
Patrick Delaunaya81e9dc2020-10-26 09:31:42 +010061config SYS_PROMPT_HUSH_PS2
62 string "Hush shell secondary prompt"
63 depends on HUSH_PARSER
64 default "> "
65 help
66 This defines the secondary prompt string, which is
67 printed when the command interpreter needs more input
68 to complete a command. Usually "> ".
69
Tom Riniba5c2b02022-05-11 16:21:06 -040070config SYS_MAXARGS
71 int "Maximum number arguments accepted by commands"
72 default 16
73
Christoph Muellner388b1452019-04-05 13:03:46 +020074config SYS_XTRACE
Sean Anderson1f863052021-03-04 11:34:23 -050075 bool "Command execution tracer"
Simon Glassd4ebc6b2023-10-26 14:31:29 -040076 default y
Christoph Muellner388b1452019-04-05 13:03:46 +020077 help
78 This option enables the possiblity to print all commands before
79 executing them and after all variables are evaluated (similar
80 to Bash's xtrace/'set -x' feature).
81 To enable the tracer a variable "xtrace" needs to be defined in
82 the environment.
83
Sam Protsenko13c1f3a2017-09-28 12:33:45 -070084config BUILD_BIN2C
85 bool
86
Simon Glass29499a02016-01-17 20:53:51 -070087comment "Commands"
88
89menu "Info commands"
90
Simon Glassfaf08c72020-04-26 09:19:53 -060091config CMD_ACPI
92 bool "acpi"
Simon Glasse264be42023-05-04 16:54:57 -060093 depends on ACPI
Heinrich Schuchardt97430462021-01-20 21:37:56 +010094 default y
Simon Glassfaf08c72020-04-26 09:19:53 -060095 help
96 List and dump ACPI tables. ACPI (Advanced Configuration and Power
97 Interface) is used mostly on x86 for providing information to the
98 Operating System about devices in the system. The tables are set up
99 by the firmware, typically U-Boot but possibly an earlier firmware
100 module, if U-Boot is chain-loaded from something else. ACPI tables
101 can also include code, to perform hardware-specific tasks required
102 by the Operating Systems. This allows some amount of separation
103 between the firmware and OS, and is particularly useful when you
104 want to make hardware changes without the OS needing to be adjusted.
105
Bin Meng70b22cf2021-02-25 17:22:34 +0800106config CMD_ADDRMAP
107 bool "addrmap"
108 depends on ADDR_MAP
109 default y
110 help
111 List non-identity virtual-physical memory mappings for 32-bit CPUs.
112
Simon Glass29499a02016-01-17 20:53:51 -0700113config CMD_BDI
114 bool "bdinfo"
115 default y
116 help
117 Print board info
118
Simon Glass5087c772023-07-15 21:38:46 -0600119config CMD_BDINFO_EXTRA
120 bool "bdinfo extra features"
121 default y if SANDBOX || X86
122 help
123 Show additional information about the board. This uses a little more
124 code space but provides more options, particularly those useful for
125 bringup, development and debugging.
126
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900127config CMD_CONFIG
128 bool "config"
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900129 default SANDBOX
Michal Simek84f3dec2018-07-23 15:55:13 +0200130 select BUILD_BIN2C
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900131 help
132 Print ".config" contents.
133
134 If this option is enabled, the ".config" file contents are embedded
135 in the U-Boot image and can be printed on the console by the "config"
136 command. This provides information of which options are enabled on
137 the running U-Boot.
138
Simon Glass29499a02016-01-17 20:53:51 -0700139config CMD_CONSOLE
140 bool "coninfo"
141 default y
142 help
143 Print console devices and information.
144
145config CMD_CPU
146 bool "cpu"
Heinrich Schuchardt1cdcd0c2020-11-05 00:29:11 +0100147 depends on CPU
Simon Glass29499a02016-01-17 20:53:51 -0700148 help
149 Print information about available CPUs. This normally shows the
150 number of CPUs, type (e.g. manufacturer, architecture, product or
151 internal name) and clock frequency. Other information may be
152 available depending on the CPU driver.
153
Sughosh Ganu0f951fd2022-10-21 18:16:04 +0530154config CMD_FWU_METADATA
155 bool "fwu metadata read"
156 depends on FWU_MULTI_BANK_UPDATE
157 help
158 Command to read the metadata and dump it's contents
159
Simon Glass4c0bf972023-10-01 19:13:06 -0600160config CMD_HISTORY
161 bool "history"
162 depends on CMDLINE_EDITING
163 help
164 Show the command-line history, i.e. a list of commands that are in
165 the history buffer.
166
Simon Glass29499a02016-01-17 20:53:51 -0700167config CMD_LICENSE
168 bool "license"
Masahiro Yamada81680332017-01-30 11:12:08 +0900169 select BUILD_BIN2C
Simon Glass29499a02016-01-17 20:53:51 -0700170 help
171 Print GPL license text
172
Simon Glass8c501022019-12-06 21:41:54 -0700173config CMD_PMC
174 bool "pmc"
175 help
176 Provides access to the Intel Power-Management Controller (PMC) so
177 that its state can be examined. This does not currently support
178 changing the state but it is still useful for debugging and seeing
179 what is going on.
180
Christophe Leroye538bbc2017-08-04 16:34:40 -0600181config CMD_REGINFO
182 bool "reginfo"
183 depends on PPC
184 help
185 Register dump
186
Baruch Siachfad48982020-01-21 15:44:54 +0200187config CMD_TLV_EEPROM
188 bool "tlv_eeprom"
189 depends on I2C_EEPROM
Pali Rohár2bbf40b2022-05-30 10:42:35 +0200190 select CRC32
Baruch Siachfad48982020-01-21 15:44:54 +0200191 help
192 Display and program the system EEPROM data block in ONIE Tlvinfo
193 format. TLV stands for Type-Length-Value.
194
195config SPL_CMD_TLV_EEPROM
196 bool "tlv_eeprom for SPL"
197 depends on SPL_I2C_EEPROM
Simon Glass284cb9c2021-07-10 21:14:31 -0600198 select SPL_DRIVERS_MISC
Pali Rohár2bbf40b2022-05-30 10:42:35 +0200199 select SPL_CRC32
Baruch Siachfad48982020-01-21 15:44:54 +0200200 help
201 Read system EEPROM data block in ONIE Tlvinfo format from SPL.
202
Heinrich Schuchardt95492ae2020-08-20 19:43:39 +0200203config CMD_SBI
204 bool "sbi"
205 depends on RISCV_SMODE && SBI_V02
206 help
207 Display information about the SBI implementation.
208
Simon Glass29499a02016-01-17 20:53:51 -0700209endmenu
210
211menu "Boot commands"
212
213config CMD_BOOTD
214 bool "bootd"
215 default y
216 help
217 Run the command stored in the environment "bootcmd", i.e.
218 "bootd" does the same thing as "run bootcmd".
219
220config CMD_BOOTM
221 bool "bootm"
222 default y
223 help
224 Boot an application image from the memory.
225
Philippe Reynesae1f2ca2022-03-28 22:57:00 +0200226config CMD_BOOTM_PRE_LOAD
227 bool "enable pre-load on bootm"
228 depends on CMD_BOOTM
229 depends on IMAGE_PRE_LOAD
Philippe Reynesae1f2ca2022-03-28 22:57:00 +0200230 help
231 Enable support of stage pre-load for the bootm command.
232 This stage allow to check or modify the image provided
233 to the bootm command.
234
Simon Glass379f4382022-04-24 23:31:10 -0600235config CMD_BOOTDEV
236 bool "bootdev"
237 depends on BOOTSTD
238 default y if BOOTSTD_FULL
239 help
240 Support listing available bootdevs (boot devices) which can provide an
241 OS to boot, as well as showing information about a particular one.
242
243 This command is not necessary for bootstd to work.
244
Simon Glass7617f492022-04-24 23:31:11 -0600245config CMD_BOOTFLOW
246 bool "bootflow"
247 depends on BOOTSTD
248 default y
249 help
250 Support scanning for bootflows available with the bootdevs. The
251 bootflows can optionally be booted.
252
253config CMD_BOOTFLOW_FULL
254 bool "bootflow - extract subcommands"
255 depends on BOOTSTD_FULL
Simon Glass2d5a8e12023-05-06 08:27:09 -0600256 default y
Simon Glass7617f492022-04-24 23:31:11 -0600257 help
258 Add the ability to list the available bootflows, select one and obtain
259 information about it.
260
261 This command is not necessary for bootstd to work.
262
Simon Glassc49fd722022-04-24 23:31:12 -0600263config CMD_BOOTMETH
264 bool "bootmeth"
265 depends on BOOTSTD
266 default y if BOOTSTD_FULL
267 help
268 Support listing available bootmethds (methods used to boot an
269 Operating System), as well as selecting the order that the bootmeths
270 are used.
271
272 This command is not necessary for bootstd to work.
273
Cristian Ciocaltea6aca5982019-12-24 18:05:39 +0200274config BOOTM_EFI
275 bool "Support booting UEFI FIT images"
276 depends on CMD_BOOTEFI && CMD_BOOTM && FIT
277 default y
278 help
279 Support booting UEFI FIT images via the bootm command.
280
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500281config CMD_BOOTZ
282 bool "bootz"
283 help
284 Boot the Linux zImage
285
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400286config CMD_BOOTI
287 bool "booti"
Atish Patra583b4092019-05-06 17:49:39 -0700288 depends on ARM64 || RISCV
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400289 default y
290 help
291 Boot an AArch64 Linux Kernel image from memory.
292
Tom Rini9a102072019-09-20 17:36:50 -0400293config BOOTM_LINUX
294 bool "Support booting Linux OS images"
295 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
296 default y
297 help
298 Support booting the Linux kernel directly via a command such as bootm
299 or booti or bootz.
300
301config BOOTM_NETBSD
302 bool "Support booting NetBSD (non-EFI) loader images"
303 depends on CMD_BOOTM
304 default y
305 help
306 Support booting NetBSD via the bootm command.
307
308config BOOTM_OPENRTOS
309 bool "Support booting OPENRTOS / FreeRTOS images"
310 depends on CMD_BOOTM
311 help
312 Support booting OPENRTOS / FreeRTOS via the bootm command.
313
314config BOOTM_OSE
315 bool "Support booting Enea OSE images"
Tom Rini1d0b1fc2019-12-05 18:46:11 -0500316 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini9a102072019-09-20 17:36:50 -0400317 depends on CMD_BOOTM
318 help
319 Support booting Enea OSE images via the bootm command.
320
321config BOOTM_PLAN9
322 bool "Support booting Plan9 OS images"
323 depends on CMD_BOOTM
324 default y
325 help
326 Support booting Plan9 images via the bootm command.
327
328config BOOTM_RTEMS
329 bool "Support booting RTEMS OS images"
330 depends on CMD_BOOTM
331 default y
332 help
333 Support booting RTEMS images via the bootm command.
334
Linus Walleijbef39252023-02-01 00:16:13 +0100335config CMD_SEAMA
336 bool "Support read SEAMA NAND images"
337 depends on MTD_RAW_NAND
338 help
339 Support reading NAND Seattle Image (SEAMA) images.
340
Simon Glasse5a7b772022-07-30 15:52:37 -0600341config CMD_VBE
342 bool "vbe - Verified Boot for Embedded"
343 depends on BOOTMETH_VBE
Simon Glassd39d5b22022-08-23 10:14:05 -0700344 default y if BOOTSTD_FULL
Simon Glasse5a7b772022-07-30 15:52:37 -0600345 help
346 Provides various subcommands related to VBE, such as listing the
347 available methods, looking at the state and changing which method
348 is used to boot. Updating the parameters is not currently
349 supported.
350
Tom Rini9a102072019-09-20 17:36:50 -0400351config BOOTM_VXWORKS
352 bool "Support booting VxWorks OS images"
353 depends on CMD_BOOTM
354 default y
355 help
356 Support booting VxWorks images via the bootm command.
357
AKASHI Takahiro8d95b6e2019-11-08 10:32:15 +0900358config CMD_BOOTEFI
359 bool "bootefi"
360 depends on EFI_LOADER
361 default y
362 help
363 Boot an EFI image from memory.
364
Simon Glassd1e46f02023-10-26 14:31:20 -0400365config CMD_BOOTEFI_BOOTMGR
366 bool "UEFI Boot Manager command"
367 depends on BOOTEFI_BOOTMGR && CMD_BOOTEFI
368 default y
369 help
370 Select this option to enable the 'bootmgr' subcommand of 'bootefi'.
371 This subcommand will allow you to select the UEFI binary to be booted
372 via UEFI variables Boot####, BootOrder, and BootNext.
373
Alexander Grafb5483512016-11-17 22:40:10 +0100374config CMD_BOOTEFI_HELLO_COMPILE
375 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardt0f675d92019-11-07 08:05:17 +0100376 depends on CMD_BOOTEFI && !CPU_V7M
Alexander Grafb5483512016-11-17 22:40:10 +0100377 default y
378 help
379 This compiles a standard EFI hello world application with U-Boot so
380 that it can be used with the test/py testing framework. This is useful
381 for testing that EFI is working at a basic level, and for bringing
382 up EFI support on a new architecture.
383
384 No additional space will be required in the resulting U-Boot binary
385 when this option is enabled.
386
Simon Glassfac4ced2016-11-07 08:47:08 -0700387config CMD_BOOTEFI_HELLO
388 bool "Allow booting a standard EFI hello world for testing"
Alexander Grafb5483512016-11-17 22:40:10 +0100389 depends on CMD_BOOTEFI_HELLO_COMPILE
Heinrich Schuchardt9ad6e1e2020-07-13 07:33:40 +0200390 default y if CMD_BOOTEFI_SELFTEST
Simon Glassfac4ced2016-11-07 08:47:08 -0700391 help
392 This adds a standard EFI hello world application to U-Boot so that
393 it can be used with the 'bootefi hello' command. This is useful
394 for testing that EFI is working at a basic level, and for bringing
395 up EFI support on a new architecture.
396
Heinrich Schuchardtd33ae3e2017-09-15 10:06:11 +0200397source lib/efi_selftest/Kconfig
398
Tom Rini697f4732016-11-29 09:14:56 -0500399config CMD_BOOTMENU
400 bool "bootmenu"
401 select MENU
Masahisa Kojima015405a2022-04-28 17:09:41 +0900402 select CHARSET
Tom Rini697f4732016-11-29 09:14:56 -0500403 help
404 Add an ANSI terminal boot menu command.
405
Eugeniu Roscaee98dac2019-12-24 17:51:06 +0100406config CMD_ADTIMG
407 bool "adtimg"
Sam Protsenko92f95bb2018-08-16 23:34:13 +0300408 help
409 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
410 image into RAM, dump image structure information, etc. Those dtb/dtbo
411 files should be merged in one dtb further, which needs to be passed to
412 the kernel, as part of a boot process.
413
Sam Protsenko035502e2020-01-24 17:53:42 +0200414config CMD_ABOOTIMG
415 bool "abootimg"
416 depends on ANDROID_BOOT_IMAGE
417 help
418 Android Boot Image manipulation commands. Allows one to extract
419 images contained in boot.img, like kernel, ramdisk, dtb, etc, and
420 obtain corresponding meta-information from boot.img.
421
Sam Protsenkod8efc7c2020-01-24 17:53:43 +0200422 See doc/android/boot-image.rst for details.
423
Simon Glassc8925112023-06-01 10:23:02 -0600424config CMD_CEDIT
425 bool "cedit - Configuration editor"
426 depends on CEDIT
427 default y
428 help
429 Provides a command to allow editing of board configuration and
430 providing a UI for the user to adjust settings. Subcommands allow
431 loading and saving of configuration as well as showing an editor.
432
Simon Glass29499a02016-01-17 20:53:51 -0700433config CMD_ELF
434 bool "bootelf, bootvx"
435 default y
Keerthy76f361a2020-02-12 13:55:03 +0530436 select LIB_ELF
Simon Glass29499a02016-01-17 20:53:51 -0700437 help
438 Boot an ELF/vxWorks image from the memory.
439
Michal Simekf168c652016-04-06 20:28:04 +0200440config CMD_FDT
441 bool "Flattened Device Tree utility commands"
442 default y
443 depends on OF_LIBFDT
444 help
445 Do FDT related setup before booting into the Operating System.
446
Kory Maincent7444a7d2021-05-04 19:31:22 +0200447config SUPPORT_EXTENSION_SCAN
448 bool
449
450config CMD_EXTENSION
451 bool "Extension board management command"
452 select CMD_FDT
453 depends on SUPPORT_EXTENSION_SCAN
454 help
455 Enables the "extension" command, which allows to detect
456 extension boards connected to the system, and apply
457 corresponding Device Tree overlays.
458
Simon Glass29499a02016-01-17 20:53:51 -0700459config CMD_GO
460 bool "go"
461 default y
462 help
463 Start an application at a given address.
464
465config CMD_RUN
466 bool "run"
467 default y
468 help
469 Run the command in the given environment variable.
470
471config CMD_IMI
472 bool "iminfo"
473 default y
474 help
475 Print header information for application image.
476
477config CMD_IMLS
478 bool "imls"
Simon Glass29499a02016-01-17 20:53:51 -0700479 help
480 List all images found in flash
481
482config CMD_XIMG
483 bool "imxtract"
484 default y
485 help
486 Extract a part of a multi-image.
487
Simon Glassc6567fa2017-08-04 16:34:48 -0600488config CMD_SPL
489 bool "spl export - Export boot information for Falcon boot"
490 depends on SPL
491 help
492 Falcon mode allows booting directly from SPL into an Operating
493 System such as Linux, thus skipping U-Boot proper. See
494 doc/README.falcon for full information about how to use this
495 command.
496
Simon Glassc034e3d2017-08-04 16:34:49 -0600497config CMD_SPL_NAND_OFS
Lukasz Majewski10797442019-05-16 16:01:36 +0200498 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewskie73ce322019-05-16 16:01:35 +0200499 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Tom Rinif18679c2023-08-02 11:09:43 -0400500 default 0x0
Simon Glassc034e3d2017-08-04 16:34:49 -0600501 help
502 This provides the offset of the command line arguments for Linux
503 when booting from NAND in Falcon mode. See doc/README.falcon
504 for full information about how to use this option (and also see
505 board/gateworks/gw_ventana/README for an example).
506
Lukasz Majewski06d92532019-05-16 16:01:37 +0200507config CMD_SPL_NOR_OFS
508 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
509 depends on CMD_SPL && SPL_NOR_SUPPORT
Tom Rinif18679c2023-08-02 11:09:43 -0400510 default 0x0
Lukasz Majewski06d92532019-05-16 16:01:37 +0200511 help
512 This provides the offset of the command line arguments or dtb for
513 Linux when booting from NOR in Falcon mode.
514
Simon Glass51ef45a2017-08-04 16:34:50 -0600515config CMD_SPL_WRITE_SIZE
516 hex "Size of argument area"
517 depends on CMD_SPL
518 default 0x2000
519 help
520 This provides the size of the command-line argument area in NAND
521 flash used by Falcon-mode boot. See the documentation until CMD_SPL
522 for detail.
523
Simon Glassa18b9692017-08-04 16:34:57 -0600524config CMD_THOR_DOWNLOAD
525 bool "thor - TIZEN 'thor' download"
Marek Szyprowskide4752e2019-10-02 12:29:08 +0200526 select DFU
Venkatesh Yadav Abbarapu7143f2a2023-09-04 08:45:27 +0530527 select USB_FUNCTION_THOR
528 depends on USB_GADGET_DOWNLOAD
Simon Glassa18b9692017-08-04 16:34:57 -0600529 help
530 Implements the 'thor' download protocol. This is a way of
531 downloading a software update over USB from an attached host.
532 There is no documentation about this within the U-Boot source code
533 but you should be able to find something on the interwebs.
534
Tom Rini40791152022-12-02 16:42:46 -0500535config THOR_RESET_OFF
536 bool "thor: Disable reset on completion"
537 depends on CMD_THOR_DOWNLOAD
538
Simon Glass01d097d2017-08-04 16:35:03 -0600539config CMD_ZBOOT
540 bool "zboot - x86 boot command"
541 help
542 With x86 machines it is common to boot a bzImage file which
543 contains both a kernel and a setup.bin file. The latter includes
544 configuration information from the dark ages which x86 boards still
545 need to pick things out of.
546
547 Consider using FIT in preference to this since it supports directly
548 booting both 32- and 64-bit kernels, as well as secure boot.
549 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
550
Simon Glass29499a02016-01-17 20:53:51 -0700551endmenu
552
553menu "Environment commands"
554
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500555config CMD_ASKENV
556 bool "ask for env variable"
557 help
558 Ask for environment variable
559
Simon Glass29499a02016-01-17 20:53:51 -0700560config CMD_EXPORTENV
561 bool "env export"
562 default y
563 help
564 Export environments.
565
566config CMD_IMPORTENV
567 bool "env import"
568 default y
569 help
570 Import environments.
571
572config CMD_EDITENV
573 bool "editenv"
574 default y
575 help
576 Edit environment variable.
577
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500578config CMD_GREPENV
579 bool "search env"
580 help
581 Allow for searching environment variables
582
Simon Glass29499a02016-01-17 20:53:51 -0700583config CMD_SAVEENV
584 bool "saveenv"
585 default y
586 help
587 Save all environment variables into the compiled-in persistent
588 storage.
589
Frank Wunderlich33afa932019-06-29 11:36:19 +0200590config CMD_ERASEENV
591 bool "eraseenv"
Frank Wunderlich33afa932019-06-29 11:36:19 +0200592 depends on CMD_SAVEENV
593 help
594 Erase environment variables from the compiled-in persistent
595 storage.
596
Simon Glass29499a02016-01-17 20:53:51 -0700597config CMD_ENV_EXISTS
598 bool "env exists"
599 default y
600 help
601 Check if a variable is defined in the environment for use in
602 shell scripting.
603
Simon Glass84d67c72017-05-17 03:25:13 -0600604config CMD_ENV_CALLBACK
605 bool "env callbacks - print callbacks and their associated variables"
606 help
607 Some environment variable have callbacks defined by
608 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
609 For example changing "baudrate" adjust the serial baud rate. This
610 command lists the currently defined callbacks.
611
Simon Glassc31e2d82017-05-17 03:25:14 -0600612config CMD_ENV_FLAGS
613 bool "env flags -print variables that have non-default flags"
614 help
615 Some environment variables have special flags that control their
616 behaviour. For example, serial# can only be written once and cannot
617 be deleted. This command shows the variables that have special
618 flags.
619
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900620config CMD_NVEDIT_EFI
621 bool "env [set|print] -e - set/print UEFI variables"
622 depends on EFI_LOADER
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900623 imply HEXDUMP
624 help
625 UEFI variables are encoded as some form of U-Boot variables.
626 If enabled, we are allowed to set/print UEFI variables using
627 "env" command with "-e" option without knowing details.
628
Samuel Dionne-Riel46127db2021-12-20 18:31:56 -0500629config CMD_NVEDIT_INDIRECT
630 bool "env indirect - Sets environment value from another"
631
Leo Ruan7450b872019-05-24 17:20:19 +0200632config CMD_NVEDIT_INFO
633 bool "env info - print or evaluate environment information"
634 help
635 Print environment information:
636 - env_valid : is environment valid
637 - env_ready : is environment imported into hash table
638 - env_use_default : is default environment used
639
640 This command can be optionally used for evaluation in scripts:
641 [-d] : evaluate whether default environment is used
642 [-p] : evaluate whether environment can be persisted
Patrick Delaunay109ec8f2020-06-19 14:03:34 +0200643 [-q] : quiet output
Leo Ruan7450b872019-05-24 17:20:19 +0200644 The result of multiple evaluations will be combined with AND.
645
Patrick Delaunay748e42e2020-07-28 11:51:20 +0200646config CMD_NVEDIT_LOAD
647 bool "env load"
648 help
649 Load all environment variables from the compiled-in persistent
650 storage.
651
Patrick Delaunaya59f7ec2020-07-28 11:51:21 +0200652config CMD_NVEDIT_SELECT
653 bool "env select"
654 help
655 Select the compiled-in persistent storage of environment variables.
656
Simon Glass29499a02016-01-17 20:53:51 -0700657endmenu
658
659menu "Memory commands"
660
Mario Six8a4f6642018-03-28 14:39:18 +0200661config CMD_BINOP
662 bool "binop"
663 help
664 Compute binary operations (xor, or, and) of byte arrays of arbitrary
665 size from memory and store the result in memory or the environment.
666
Simon Glassb936a972020-09-19 18:49:26 -0600667config CMD_BLOBLIST
668 bool "bloblist"
669 default y if BLOBLIST
670 help
671 Show information about the bloblist, a collection of binary blobs
672 held in memory that persist between SPL and U-Boot. In the case of
673 x86 devices the bloblist can be used to hold ACPI tables so that they
674 remain available in memory.
675
Simon Glass29499a02016-01-17 20:53:51 -0700676config CMD_CRC32
677 bool "crc32"
678 default y
Michal Simek84f3dec2018-07-23 15:55:13 +0200679 select HASH
Simon Glass29499a02016-01-17 20:53:51 -0700680 help
681 Compute CRC32.
682
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100683config CRC32_VERIFY
684 bool "crc32 -v"
685 depends on CMD_CRC32
686 help
687 Add -v option to verify data against a crc32 checksum.
688
Simon Glass4590d4e2017-05-17 03:25:10 -0600689config CMD_EEPROM
690 bool "eeprom - EEPROM subsystem"
691 help
692 (deprecated, needs conversion to driver model)
693 Provides commands to read and write EEPROM (Electrically Erasable
694 Programmable Read Only Memory) chips that are connected over an
695 I2C bus.
696
697config CMD_EEPROM_LAYOUT
698 bool "Enable layout-aware eeprom commands"
699 depends on CMD_EEPROM
700 help
701 (deprecated, needs conversion to driver model)
702 When enabled, additional eeprom sub-commands become available.
703
704 eeprom print - prints the contents of the eeprom in a human-readable
705 way (eeprom layout fields, and data formatted to be fit for human
706 consumption).
707
708 eeprom update - allows user to update eeprom fields by specifying
709 the field name, and providing the new data in a human readable format
710 (same format as displayed by the eeprom print command).
711
712 Both commands can either auto detect the layout, or be told which
713 layout to use.
714
715 Feature API:
716 __weak int parse_layout_version(char *str)
717 - override to provide your own layout name parsing
718 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
719 int layout_version);
720 - override to setup the layout metadata based on the version
721 __weak int eeprom_layout_detect(unsigned char *data)
722 - override to provide your own algorithm for detecting layout
723 version
724 eeprom_field.c
725 - contains various printing and updating functions for common
726 types of eeprom fields. Can be used for defining
727 custom layouts.
728
729config EEPROM_LAYOUT_HELP_STRING
730 string "Tells user what layout names are supported"
731 depends on CMD_EEPROM_LAYOUT
732 default "<not defined>"
733 help
734 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
735 command's help.
736
Tom Rinifaed5672021-08-17 17:59:45 -0400737config SYS_I2C_EEPROM_BUS
738 int "I2C bus of the EEPROM device."
739 depends on CMD_EEPROM
740 default 0
741
742config SYS_I2C_EEPROM_ADDR_LEN
743 int "Length in bytes of the EEPROM memory array address"
744 depends on CMD_EEPROM || ID_EEPROM
745 default 1
746 range 1 2
747 help
748 Note: This is NOT the chip address length!
749
750config SYS_EEPROM_SIZE
751 depends on CMD_EEPROM
752 int "Size in bytes of the EEPROM device"
753 default 256
754
755config SYS_EEPROM_PAGE_WRITE_BITS
756 int "Number of bits used to address bytes in a single page"
757 depends on CMD_EEPROM
758 default 8
759 help
760 The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS.
761 A 64 byte page, for example would require six bits.
762
763config SYS_EEPROM_PAGE_WRITE_DELAY_MS
764 int "Number of milliseconds to delay between page writes"
765 depends on CMD_EEPROM || CMD_I2C
766 default 0
767
Simon Glass26c20532017-08-04 16:34:51 -0600768config LOOPW
769 bool "loopw"
770 help
771 Infinite write loop on address range
772
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000773config CMD_MD5SUM
774 bool "md5sum"
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000775 select MD5
776 help
777 Compute MD5 checksum.
778
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100779config MD5SUM_VERIFY
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000780 bool "md5sum -v"
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000781 depends on CMD_MD5SUM
782 help
783 Add -v option to verify data against an MD5 checksum.
784
Simon Glass26c20532017-08-04 16:34:51 -0600785config CMD_MEMINFO
786 bool "meminfo"
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100787 help
Simon Glass26c20532017-08-04 16:34:51 -0600788 Display memory information.
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100789
Simon Glass26c20532017-08-04 16:34:51 -0600790config CMD_MEMORY
791 bool "md, mm, nm, mw, cp, cmp, base, loop"
792 default y
Simon Glass29499a02016-01-17 20:53:51 -0700793 help
Simon Glass26c20532017-08-04 16:34:51 -0600794 Memory commands.
795 md - memory display
796 mm - memory modify (auto-incrementing address)
797 nm - memory modify (constant address)
798 mw - memory write (fill)
799 cp - memory copy
800 cmp - memory compare
801 base - print or set address offset
802 loop - initialize loop on address range
Simon Glass29499a02016-01-17 20:53:51 -0700803
Simon Glass573c0fa2020-07-28 19:41:14 -0600804config CMD_MEM_SEARCH
Simon Glass19038de2020-06-02 19:26:49 -0600805 bool "ms - Memory search"
806 help
807 Memory-search command
808
809 This allows searching through a region of memory looking for hex
810 data (byte, 16-bit word, 32-bit long, also 64-bit on machines that
811 support it). It is also possible to search for a string. The
812 command accepts a memory range and a list of values to search for.
813 The values need to appear in memory in the same order they are given
814 in the command. At most 10 matches can be returned at a time, but
815 pressing return will show the next 10 matches. Environment variables
816 are set for use with scripting (memmatches, memaddr, mempos).
817
Joel Johnsondb5a97e2020-01-29 09:17:18 -0700818config CMD_MX_CYCLIC
Adam Ford1ef0c492019-08-14 07:54:34 -0500819 bool "Enable cyclic md/mw commands"
820 depends on CMD_MEMORY
821 help
822 Add the "mdc" and "mwc" memory commands. These are cyclic
823 "md/mw" commands.
824 Examples:
825
826 => mdc.b 10 4 500
827 This command will print 4 bytes (10,11,12,13) each 500 ms.
828
829 => mwc.l 100 12345678 10
830 This command will write 12345678 to address 100 all 10 ms.
831
Jean-Jacques Hiblotd3f09372019-07-02 14:23:26 +0200832config CMD_RANDOM
833 bool "random"
834 default y
835 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
836 help
837 random - fill memory with random data
838
Simon Glass29499a02016-01-17 20:53:51 -0700839config CMD_MEMTEST
840 bool "memtest"
841 help
842 Simple RAM read/write test.
843
Mario Six00518992018-03-28 14:38:14 +0200844if CMD_MEMTEST
845
846config SYS_ALT_MEMTEST
847 bool "Alternative test"
848 help
849 Use a more complete alternative memory test.
850
Ralph Siemsen1c39c102020-09-09 12:10:00 -0400851if SYS_ALT_MEMTEST
852
853config SYS_ALT_MEMTEST_BITFLIP
854 bool "Bitflip test"
855 default y
856 help
857 The alternative memory test includes bitflip test since 2020.07.
858 The bitflip test significantly increases the overall test time.
859 Bitflip test can optionally be disabled here.
860
861endif
862
Ashok Reddy Soma41e8edf2020-05-04 15:26:21 +0200863config SYS_MEMTEST_START
864 hex "default start address for mtest"
Tom Rinic2ac2f62021-12-12 22:12:29 -0500865 default 0x0
Ashok Reddy Soma41e8edf2020-05-04 15:26:21 +0200866 help
867 This is the default start address for mtest for simple read/write
868 test. If no arguments are given to mtest, default address is used
869 as start address.
870
871config SYS_MEMTEST_END
872 hex "default end address for mtest"
873 default 0x1000
874 help
875 This is the default end address for mtest for simple read/write
876 test. If no arguments are given to mtest, default address is used
877 as end address.
878
Mario Six00518992018-03-28 14:38:14 +0200879endif
880
Simon Glass26c20532017-08-04 16:34:51 -0600881config CMD_SHA1SUM
882 bool "sha1sum"
883 select SHA1
Simon Glass29499a02016-01-17 20:53:51 -0700884 help
Simon Glass26c20532017-08-04 16:34:51 -0600885 Compute SHA1 checksum.
886
887config SHA1SUM_VERIFY
888 bool "sha1sum -v"
889 depends on CMD_SHA1SUM
890 help
891 Add -v option to verify data against a SHA1 checksum.
Simon Glass29499a02016-01-17 20:53:51 -0700892
Simon Glass8e83ca82017-08-04 16:34:52 -0600893config CMD_STRINGS
894 bool "strings - display strings in memory"
895 help
896 This works similarly to the Unix 'strings' command except that it
897 works with a memory range. String of printable characters found
898 within the range are displayed. The minimum number of characters
899 for a sequence to be considered a string can be provided.
900
Simon Glassbecaa8f2017-05-17 03:25:43 -0600901endmenu
902
903menu "Compression commands"
904
905config CMD_LZMADEC
906 bool "lzmadec"
Tom Rini3237bc62017-09-29 14:32:44 -0400907 default y if CMD_BOOTI
Simon Glassbecaa8f2017-05-17 03:25:43 -0600908 select LZMA
909 help
910 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
911 image from memory.
912
Yusuke Ashidukaa20545d2020-02-20 20:48:01 +0900913config CMD_UNLZ4
914 bool "unlz4"
915 default y if CMD_BOOTI
916 select LZ4
917 help
918 Support decompressing an LZ4 image from memory region.
919
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900920config CMD_UNZIP
921 bool "unzip"
Tom Rini3237bc62017-09-29 14:32:44 -0400922 default y if CMD_BOOTI
Michael Wallef253f2c2020-05-22 14:07:35 +0200923 select GZIP
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900924 help
925 Uncompress a zip-compressed memory region.
926
927config CMD_ZIP
928 bool "zip"
Michael Walle3a6e3512020-05-22 14:07:36 +0200929 select GZIP_COMPRESSED
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900930 help
931 Compress a memory region with zlib deflate method.
932
Simon Glass29499a02016-01-17 20:53:51 -0700933endmenu
934
935menu "Device access commands"
936
Abdellatif El Khlifi5ad079f2023-08-04 14:33:43 +0100937config CMD_ARMFFA
938 bool "Arm FF-A test command"
939 depends on ARM_FFA_TRANSPORT
940 help
941 Provides a test command for the FF-A support
942 supported options:
943 - Listing the partition(s) info
944 - Sending a data pattern to the specified partition
945 - Displaying the arm_ffa device info
946
Simon Glass036bbb12017-08-04 16:34:28 -0600947config CMD_ARMFLASH
948 #depends on FLASH_CFI_DRIVER
949 bool "armflash"
950 help
951 ARM Ltd reference designs flash partition access
952
Neil Armstrong49261c72018-04-27 15:17:57 +0200953config CMD_ADC
954 bool "adc - Access Analog to Digital Converters info and data"
955 select ADC
Michal Simek463c3862020-08-19 10:44:17 +0200956 depends on DM_REGULATOR
Neil Armstrong49261c72018-04-27 15:17:57 +0200957 help
958 Shows ADC device info and permit printing one-shot analog converted
959 data from a named Analog to Digital Converter.
960
Eugeniu Rosca35c34be2019-05-23 17:32:22 +0200961config CMD_BCB
962 bool "bcb"
963 depends on MMC
964 depends on PARTITIONS
965 help
966 Read/modify/write the fields of Bootloader Control Block, usually
967 stored on the flash "misc" partition with its structure defined in:
968 https://android.googlesource.com/platform/bootable/recovery/+/master/
969 bootloader_message/include/bootloader_message/bootloader_message.h
970
971 Some real-life use-cases include (but are not limited to):
972 - Determine the "boot reason" (and act accordingly):
973 https://source.android.com/devices/bootloader/boot-reason
974 - Get/pass a list of commands from/to recovery:
975 https://android.googlesource.com/platform/bootable/recovery
976 - Inspect/dump the contents of the BCB fields
977
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200978config CMD_BIND
979 bool "bind/unbind - Bind or unbind a device to/from a driver"
980 depends on DM
Tom Rini1f9c3d02023-08-04 12:06:21 -0400981 default y if USB_ETHER
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200982 help
983 Bind or unbind a device to/from a driver from the command line.
984 This is useful in situations where a device may be handled by several
985 drivers. For example, this can be used to bind a UDC to the usb ether
986 gadget driver from the command line.
987
Simon Glass04ac6f12017-04-26 22:28:02 -0600988config CMD_CLK
989 bool "clk - Show clock frequencies"
990 help
991 (deprecated)
992 Shows clock frequences by calling a sock_clk_dump() hook function.
993 This is depreated in favour of using the CLK uclass and accessing
994 clock values from associated drivers. However currently no command
995 exists for this.
996
Simon Glass036bbb12017-08-04 16:34:28 -0600997config CMD_DEMO
998 bool "demo - Demonstration commands for driver model"
999 depends on DM
1000 help
1001 Provides a 'demo' command which can be used to play around with
1002 driver model. To use this properly you will need to enable one or
1003 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
1004 Otherwise you will always get an empty list of devices. The demo
1005 devices are defined in the sandbox device tree, so the easiest
1006 option is to use sandbox and pass the -d point to sandbox's
1007 u-boot.dtb file.
1008
1009config CMD_DFU
1010 bool "dfu"
Marek Vasutea84f802018-02-16 16:41:17 +01001011 select DFU
Simon Glass036bbb12017-08-04 16:34:28 -06001012 help
1013 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass663b0cc2017-08-04 16:35:06 -06001014 class device via USB. This command requires that the "dfu_alt_info"
1015 environment variable be set and define the alt settings to expose to
1016 the host.
Simon Glass036bbb12017-08-04 16:34:28 -06001017
Simon Glass29499a02016-01-17 20:53:51 -07001018config CMD_DM
1019 bool "dm - Access to driver model information"
1020 depends on DM
Simon Glass29499a02016-01-17 20:53:51 -07001021 help
1022 Provides access to driver model data structures and information,
1023 such as a list of devices, list of uclasses and the state of each
1024 device (e.g. activated). This is not required for operation, but
1025 can be useful to see the state of driver model for debugging or
1026 interest.
1027
Alex Kiernan65de9552018-05-29 15:30:39 +00001028config CMD_FASTBOOT
1029 bool "fastboot - Android fastboot support"
1030 depends on FASTBOOT
1031 help
1032 This enables the command "fastboot" which enables the Android
1033 fastboot mode for the platform. Fastboot is a protocol for
1034 downloading images, flashing and device control used on
Alex Kiernand5aa57c2018-05-29 15:30:53 +00001035 Android devices. Fastboot requires either the network stack
1036 enabled or support for acting as a USB device.
Alex Kiernan65de9552018-05-29 15:30:39 +00001037
Sam Protsenkocd43fa12020-01-24 17:53:44 +02001038 See doc/android/fastboot.rst for more information.
Alex Kiernan65de9552018-05-29 15:30:39 +00001039
Simon Glass036bbb12017-08-04 16:34:28 -06001040config CMD_FLASH
1041 bool "flinfo, erase, protect"
1042 default y
Miquel Raynald2418202019-10-25 19:39:30 +02001043 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass036bbb12017-08-04 16:34:28 -06001044 help
1045 NOR flash support.
1046 flinfo - print FLASH memory information
1047 erase - FLASH memory
1048 protect - enable or disable FLASH write protection
1049
1050config CMD_FPGA
1051 bool "fpga"
Tuomas Tynkkynen5ca16b32018-01-27 20:28:40 +02001052 depends on FPGA
Simon Glass036bbb12017-08-04 16:34:28 -06001053 default y
1054 help
1055 FPGA support.
1056
1057config CMD_FPGA_LOADBP
1058 bool "fpga loadbp - load partial bitstream (Xilinx only)"
1059 depends on CMD_FPGA
1060 help
1061 Supports loading an FPGA device from a bitstream buffer containing
1062 a partial bitstream.
1063
1064config CMD_FPGA_LOADFS
1065 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
1066 depends on CMD_FPGA
1067 help
1068 Supports loading an FPGA device from a FAT filesystem.
1069
1070config CMD_FPGA_LOADMK
1071 bool "fpga loadmk - load bitstream from image"
1072 depends on CMD_FPGA
1073 help
1074 Supports loading an FPGA device from a image generated by mkimage.
1075
1076config CMD_FPGA_LOADP
1077 bool "fpga loadp - load partial bitstream"
1078 depends on CMD_FPGA
1079 help
1080 Supports loading an FPGA device from a bitstream buffer containing
1081 a partial bitstream.
1082
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301083config CMD_FPGA_LOAD_SECURE
Oleksandr Suvorovfbe31bb2022-07-22 17:16:02 +03001084 bool "fpga loads - loads secure bitstreams"
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301085 depends on CMD_FPGA
Oleksandr Suvorovfbe31bb2022-07-22 17:16:02 +03001086 select FPGA_LOAD_SECURE
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301087 help
1088 Enables the fpga loads command which is used to load secure
1089 (authenticated or encrypted or both) bitstreams on to FPGA.
1090
Simon Glass036bbb12017-08-04 16:34:28 -06001091config CMD_FPGAD
1092 bool "fpgad - dump FPGA registers"
1093 help
1094 (legacy, needs conversion to driver model)
1095 Provides a way to dump FPGA registers by calling the board-specific
1096 fpga_get_reg() function. This functions similarly to the 'md'
1097 command.
1098
1099config CMD_FUSE
1100 bool "fuse - support for the fuse subssystem"
1101 help
1102 (deprecated - needs conversion to driver model)
1103 This allows reading, sensing, programming or overriding fuses
1104 which control the behaviour of the device. The command uses the
1105 fuse_...() API.
1106
1107config CMD_GPIO
1108 bool "gpio"
1109 help
1110 GPIO support.
1111
Diego Rondini5ffde632022-04-11 12:02:09 +02001112config CMD_GPIO_READ
1113 bool "gpio read - save GPIO value to variable"
1114 depends on CMD_GPIO
1115 help
1116 Enables the 'gpio read' command that saves the value
1117 of a GPIO pin to a variable.
1118
Pragnesh Patel1d5955f2020-12-22 11:30:05 +05301119config CMD_PWM
1120 bool "pwm"
1121 depends on DM_PWM
1122 help
1123 Control PWM channels, this allows invert/config/enable/disable PWM channels.
1124
Simon Glass036bbb12017-08-04 16:34:28 -06001125config CMD_GPT
1126 bool "GPT (GUID Partition Table) command"
Simon Glass036bbb12017-08-04 16:34:28 -06001127 select EFI_PARTITION
Michal Simek84f3dec2018-07-23 15:55:13 +02001128 select PARTITION_UUIDS
Maxime Ripard24336442017-08-24 11:52:32 +02001129 imply RANDOM_UUID
Simon Glass036bbb12017-08-04 16:34:28 -06001130 help
1131 Enable the 'gpt' command to ready and write GPT style partition
1132 tables.
1133
1134config CMD_GPT_RENAME
1135 bool "GPT partition renaming commands"
1136 depends on CMD_GPT
1137 help
1138 Enables the 'gpt' command to interchange names on two GPT
1139 partitions via the 'gpt swap' command or to rename single
1140 partitions via the 'rename' command.
Simon Glass29499a02016-01-17 20:53:51 -07001141
Simon Glassa831eca2017-05-17 03:25:29 -06001142config CMD_IDE
1143 bool "ide - Support for IDE drivers"
Simon Glassb569a012017-05-17 03:25:30 -06001144 select IDE
Simon Glassa831eca2017-05-17 03:25:29 -06001145 help
1146 Provides an 'ide' command which allows accessing the IDE drive,
Vagrant Cascadian33203c32021-12-21 13:06:56 -08001147 resetting the IDE interface, printing the partition table and
Simon Glassa831eca2017-05-17 03:25:29 -06001148 geting device info. It also enables the 'diskboot' command which
1149 permits booting from an IDE drive.
1150
Simon Glass3bebbe62017-05-17 03:25:34 -06001151config CMD_IO
1152 bool "io - Support for performing I/O accesses"
1153 help
1154 Provides an 'iod' command to display I/O space and an 'iow' command
1155 to write values to the I/O space. This can be useful for manually
1156 checking the state of devices during boot when debugging device
1157 drivers, etc.
1158
Simon Glass30daabc2017-05-17 03:25:36 -06001159config CMD_IOTRACE
1160 bool "iotrace - Support for tracing I/O activity"
1161 help
1162 Provides an 'iotrace' command which supports recording I/O reads and
1163 writes in a trace buffer in memory . It also maintains a checksum
1164 of the trace records (even if space is exhausted) so that the
1165 sequence of I/O accesses can be verified.
1166
1167 When debugging drivers it is useful to see what I/O accesses were
1168 done and in what order.
1169
1170 Even if the individual accesses are of little interest it can be
1171 useful to verify that the access pattern is consistent each time
1172 an operation is performed. In this case a checksum can be used to
1173 characterise the operation of a driver. The checksum can be compared
1174 across different runs of the operation to verify that the driver is
1175 working properly.
1176
1177 In particular, when performing major refactoring of the driver, where
1178 the access pattern should not change, the checksum provides assurance
1179 that the refactoring work has not broken the driver.
1180
1181 This works by sneaking into the io.h heder for an architecture and
1182 redirecting I/O accesses through iotrace's tracing mechanism.
1183
1184 For now no commands are provided to examine the trace buffer. The
1185 format is fairly simple, so 'md' is a reasonable substitute.
1186
1187 Note: The checksum feature is only useful for I/O regions where the
1188 contents do not change outside of software control. Where this is not
1189 suitable you can fall back to manually comparing the addresses. It
1190 might be useful to enhance tracing to only checksum the accesses and
1191 not the data read/written.
1192
Simon Glass036bbb12017-08-04 16:34:28 -06001193config CMD_I2C
1194 bool "i2c"
1195 help
1196 I2C support.
1197
Eugen Hristevb879c842018-09-18 10:35:33 +03001198config CMD_W1
1199 depends on W1
1200 default y if W1
1201 bool "w1 - Support for Dallas 1-Wire protocol"
1202 help
1203 Dallas 1-wire protocol support
1204
Simon Glass29499a02016-01-17 20:53:51 -07001205config CMD_LOADB
1206 bool "loadb"
1207 default y
1208 help
1209 Load a binary file over serial line.
1210
Rui Miguel Silva433f15a2022-05-11 10:55:40 +01001211config CMD_LOADM
1212 bool "loadm"
1213 help
1214 Load a binary over memory mapped.
1215
Simon Glass29499a02016-01-17 20:53:51 -07001216config CMD_LOADS
Tom Rini5a70f172022-10-28 20:27:02 -04001217 bool "loads - Load a file over serial in S-Record format"
Simon Glass29499a02016-01-17 20:53:51 -07001218 default y
1219 help
1220 Load an S-Record file over serial line
1221
Tom Rini5a70f172022-10-28 20:27:02 -04001222config LOADS_ECHO
1223 bool "Echo all characters received during a loads back to console"
1224 depends on CMD_LOADS
1225 help
1226 If enabled, all characters received during a serial download (using
1227 the "loads" command) are echoed back. This might be needed by some
1228 terminal emulations (like "cu"), but may as well just take time on
1229 others. This sets the initial value of the "loads_echo" environment
1230 variable to 1.
1231
1232config CMD_SAVES
1233 bool "saves - Save a file over serial in S-Record format"
Ying Sun86dff472023-06-25 16:24:47 +08001234 depends on CMD_LOADS
Tom Rini5a70f172022-10-28 20:27:02 -04001235 help
1236 Provides a way to save a binary file using the Motorola S-Record
1237 format over the serial line.
1238
1239config SYS_LOADS_BAUD_CHANGE
1240 bool "Enable a temporary baudrate change during loads/saves command"
1241 depends on CMD_LOADS || CMD_SAVES
1242
Pali Rohár5dc80cc2022-08-27 16:37:55 +02001243config CMD_LOADXY_TIMEOUT
1244 int "loadxy_timeout"
1245 range 0 2000
1246 default 90
1247 help
1248 Initial timeout for loadx and loady commands. Zero means infinity.
1249
Niel Fourie09262bb2020-03-30 17:22:58 +02001250config CMD_LSBLK
1251 depends on BLK
1252 bool "lsblk - list block drivers and devices"
1253 help
1254 Print list of available block device drivers, and for each, the list
1255 of known block devices.
1256
Marek Szyprowski6427b5b2020-12-23 13:55:15 +01001257config CMD_MBR
1258 bool "MBR (Master Boot Record) command"
1259 select DOS_PARTITION
Marek Szyprowski6427b5b2020-12-23 13:55:15 +01001260 help
1261 Enable the 'mbr' command to ready and write MBR (Master Boot Record)
1262 style partition tables.
1263
Bin Menge1dae502020-10-14 14:34:52 +08001264config CMD_MISC
1265 bool "misc"
1266 depends on MISC
1267 help
1268 Enable the command "misc" for accessing miscellaneous devices with
1269 a MISC uclass driver. The command provides listing all MISC devices
1270 as well as read and write functionalities via their drivers.
1271
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001272config CMD_MMC
1273 bool "mmc"
Heinrich Schuchardt3ae9e6a2021-03-27 11:43:54 +01001274 depends on MMC
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001275 help
1276 MMC memory mapped support.
1277
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001278if CMD_MMC
1279
1280config CMD_BKOPS_ENABLE
1281 bool "mmc bkops enable"
1282 depends on CMD_MMC
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001283 help
1284 Enable command for setting manual background operations handshake
1285 on a eMMC device. The feature is optionally available on eMMC devices
1286 conforming to standard >= 4.41.
1287
Marek Vasut1f692e32023-10-31 13:20:17 +01001288config CMD_MMC_REG
1289 bool "Enable support for reading card registers in the mmc command"
1290 depends on CMD_MMC
1291 help
1292 Enable the commands for reading card registers. This is useful
1293 mostly for debugging or extracting details from the card.
1294
Alex Kiernan60e0f612018-05-08 04:43:31 +00001295config CMD_MMC_RPMB
1296 bool "Enable support for RPMB in the mmc command"
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001297 depends on SUPPORT_EMMC_RPMB
Alex Kiernan60e0f612018-05-08 04:43:31 +00001298 help
1299 Enable the commands for reading, writing and programming the
1300 key for the Replay Protection Memory Block partition in eMMC.
1301
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001302config CMD_MMC_SWRITE
1303 bool "mmc swrite"
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001304 depends on MMC_WRITE
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001305 select IMAGE_SPARSE
1306 help
1307 Enable support for the "mmc swrite" command to write Android sparse
1308 images to eMMC.
1309
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001310endif
1311
John Chaufce6f982020-07-02 12:01:21 +08001312config CMD_CLONE
1313 bool "clone"
1314 depends on BLK
1315 help
1316 Enable storage cloning over block devices, useful for
1317 initial flashing by external block device without network
1318 or usb support.
1319
Ruchika Gupta1a994352020-10-23 13:39:33 +05301320config CMD_OPTEE_RPMB
1321 bool "Enable read/write support on RPMB via OPTEE"
1322 depends on SUPPORT_EMMC_RPMB && OPTEE
1323 help
1324 Enable the commands for reading, writing persistent named values
1325 in the Replay Protection Memory Block partition in eMMC by
1326 using Persistent Objects in OPTEE
1327
Miquel Raynal741f4c72018-09-29 12:58:28 +02001328config CMD_MTD
1329 bool "mtd"
Miquel Raynald2418202019-10-25 19:39:30 +02001330 depends on MTD
Miquel Raynal741f4c72018-09-29 12:58:28 +02001331 select MTD_PARTITIONS
1332 help
1333 MTD commands support.
1334
Pratyush Yadavbecd9b72020-10-16 16:16:35 +05301335config CMD_MUX
1336 bool "mux"
1337 depends on MULTIPLEXER
1338 help
1339 List, select, and deselect mux controllers on the fly.
1340
Simon Glass29499a02016-01-17 20:53:51 -07001341config CMD_NAND
1342 bool "nand"
Maxime Ripard5a5d71f2017-03-03 15:13:30 +01001343 default y if NAND_SUNXI
Miquel Raynald2418202019-10-25 19:39:30 +02001344 depends on MTD_RAW_NAND
Simon Glass29499a02016-01-17 20:53:51 -07001345 help
1346 NAND support.
1347
Boris Brezillon19907782017-02-27 18:22:07 +01001348if CMD_NAND
1349config CMD_NAND_TRIMFFS
1350 bool "nand write.trimffs"
Hans de Goedefd42c052017-02-27 18:22:10 +01001351 default y if ARCH_SUNXI
Boris Brezillon19907782017-02-27 18:22:07 +01001352 help
1353 Allows one to skip empty pages when flashing something on a NAND.
1354
1355config CMD_NAND_LOCK_UNLOCK
1356 bool "nand lock/unlock"
1357 help
1358 NAND locking support.
1359
1360config CMD_NAND_TORTURE
1361 bool "nand torture"
1362 help
1363 NAND torture support.
1364
1365endif # CMD_NAND
1366
Zhikang Zhang49455652017-08-03 02:30:59 -07001367config CMD_NVME
1368 bool "nvme"
1369 depends on NVME
1370 default y if NVME
1371 help
1372 NVM Express device support
1373
Simon Glassa2a82072017-08-04 16:34:31 -06001374config CMD_ONENAND
1375 bool "onenand - access to onenand device"
Miquel Raynald2418202019-10-25 19:39:30 +02001376 depends on MTD
Simon Glassa2a82072017-08-04 16:34:31 -06001377 help
1378 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1379 various useful features. This command allows reading, writing,
1380 and erasing blocks. It allso provides a way to show and change
1381 bad blocks, and test the device.
1382
Tom Rinie7751242022-06-15 12:03:51 -04001383config USE_ONENAND_BOARD_INIT
1384 bool "Call onenand_board_init() in the onenand command"
1385 depends on CMD_ONENAND
1386
Mario Sixf8395902018-09-27 09:19:34 +02001387config CMD_OSD
1388 bool "osd"
1389 help
1390 Enable the 'osd' command which allows to query information from and
1391 write text data to a on-screen display (OSD) device; a virtual device
1392 associated with a display capable of displaying a text overlay on the
1393 display it's associated with..
1394
Patrick Delaunay73287092017-01-27 11:00:42 +01001395config CMD_PART
1396 bool "part"
AKASHI Takahiro783bc122022-04-22 10:44:30 +09001397 depends on PARTITIONS
Michal Simek84f3dec2018-07-23 15:55:13 +02001398 select PARTITION_UUIDS
Patrick Delaunay73287092017-01-27 11:00:42 +01001399 help
1400 Read and display information about the partition table on
1401 various media.
1402
Simon Glassc88a09a2017-08-04 16:34:34 -06001403config CMD_PCI
1404 bool "pci - Access PCI devices"
1405 help
1406 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1407 used on some devices to allow the CPU to communicate with its
1408 peripherals. Sub-commands allow bus enumeration, displaying and
1409 changing configuration space and a few other features.
1410
Stephen Carlson3d876c42023-03-10 11:07:13 -08001411config CMD_PCI_MPS
1412 bool "pci_mps - Configure PCI device MPS"
1413 depends on PCI
1414 help
1415 Enables PCI Express Maximum Packet Size (MPS) tuning. This
1416 command configures the PCI Express MPS of each endpoint to the
1417 largest value supported by all devices below the root complex.
1418 The Maximum Read Request Size will not be altered. This method is
1419 the same algorithm as used by Linux pci=pcie_bus_safe.
1420
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001421config CMD_PINMUX
1422 bool "pinmux - show pins muxing"
Marek Behún9ff24b62021-02-09 21:23:47 +01001423 depends on PINCTRL
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001424 default y if PINCTRL
1425 help
1426 Parse all available pin-controllers and show pins muxing. This
1427 is useful for debug purpoer to check the pin muxing and to know if
1428 a pin is configured as a GPIO or as an alternate function.
1429
Adam Fordc4f16322018-09-09 07:05:57 -05001430config CMD_POWEROFF
1431 bool "poweroff"
1432 help
1433 Poweroff/Shutdown the system
1434
Simon Glassc05459b2017-08-04 16:34:39 -06001435config CMD_READ
1436 bool "read - Read binary data from a partition"
1437 help
1438 Provides low-level access to the data in a partition.
1439
Simon Glass036bbb12017-08-04 16:34:28 -06001440config CMD_REMOTEPROC
1441 bool "remoteproc"
1442 depends on REMOTEPROC
1443 help
1444 Support for Remote Processor control
1445
1446config CMD_SATA
1447 bool "sata - Access SATA subsystem"
1448 select SATA
1449 help
1450 SATA (Serial Advanced Technology Attachment) is a serial bus
1451 standard for connecting to hard drives and other storage devices.
1452 This command provides information about attached devices and allows
1453 reading, writing and other operations.
1454
1455 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1456 Attachment, where AT refers to an IBM AT (Advanced Technology)
1457 computer released in 1984.
1458
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001459config CMD_SCSI
1460 bool "scsi - Access to SCSI devices"
Heinrich Schuchardtb9a76c72023-03-26 19:10:38 +02001461 depends on SCSI
1462 default y
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001463 help
1464 This provides a 'scsi' command which provides access to SCSI (Small
1465 Computer System Interface) devices. The command provides a way to
1466 scan the bus, reset the bus, read and write data and get information
1467 about devices.
1468
Simon Glass6870d2e2017-08-04 16:34:45 -06001469config CMD_SDRAM
1470 bool "sdram - Print SDRAM configuration information"
1471 help
1472 Provides information about attached SDRAM. This assumed that the
1473 SDRAM has an EEPROM with information that can be read using the
1474 I2C bus. This is only available on some boards.
1475
Simon Glass29499a02016-01-17 20:53:51 -07001476config CMD_SF
1477 bool "sf"
Tom Rinie5289a72019-05-29 17:01:28 -04001478 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Teki132e81f2019-10-16 17:59:42 +05301479 default y if DM_SPI_FLASH
Simon Glass29499a02016-01-17 20:53:51 -07001480 help
1481 SPI Flash support
1482
Simon Glass86b1b652017-08-04 16:34:46 -06001483config CMD_SF_TEST
1484 bool "sf test - Allow testing of SPI flash"
Tom Rinie5289a72019-05-29 17:01:28 -04001485 depends on CMD_SF
Simon Glass86b1b652017-08-04 16:34:46 -06001486 help
1487 Provides a way to test that SPI flash is working correctly. The
1488 test is destructive, in that an area of SPI flash must be provided
1489 for the test to use. Performance information is also provided,
1490 measuring the performance of reading, writing and erasing in
1491 Mbps (Million Bits Per Second). This value should approximately
1492 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1493 everything is working properly.
1494
Simon Glass29499a02016-01-17 20:53:51 -07001495config CMD_SPI
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001496 bool "sspi - Command to access spi device"
Tom Rinie5289a72019-05-29 17:01:28 -04001497 depends on SPI
Simon Glass29499a02016-01-17 20:53:51 -07001498 help
1499 SPI utility command.
1500
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001501config DEFAULT_SPI_BUS
1502 int "default spi bus used by sspi command"
1503 depends on CMD_SPI
1504 default 0
1505
1506config DEFAULT_SPI_MODE
1507 hex "default spi mode used by sspi command (see include/spi.h)"
1508 depends on CMD_SPI
Tom Rinif18679c2023-08-02 11:09:43 -04001509 default 0x0
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001510
Robert Marko99e6fde2022-09-06 13:30:33 +02001511config CMD_TEMPERATURE
1512 bool "temperature - display the temperature from thermal sensors"
1513 depends on DM_THERMAL
1514 help
1515 Provides a way to list thermal sensors and to get their readings.
1516
Simon Glass80a56cd2017-08-04 16:35:00 -06001517config CMD_TSI148
1518 bool "tsi148 - Command to access tsi148 device"
1519 help
1520 This provides various sub-commands to initialise and configure the
1521 Turndra tsi148 device. See the command help for full details.
1522
Faiz Abbas61e9fbb2019-10-15 18:24:40 +05301523config CMD_UFS
1524 bool "Enable UFS - Universal Flash Subsystem commands"
1525 depends on UFS
1526 help
1527 "This provides commands to initialise and configure universal flash
1528 subsystem devices"
1529
Simon Glass0c03c1a2017-08-04 16:35:01 -06001530config CMD_UNIVERSE
1531 bool "universe - Command to set up the Turndra Universe controller"
1532 help
1533 This allows setting up the VMEbus provided by this controller.
1534 See the command help for full details.
1535
Simon Glass29499a02016-01-17 20:53:51 -07001536config CMD_USB
1537 bool "usb"
Tom Rini8a091622021-07-09 10:11:55 -04001538 depends on USB_HOST
Simon Glass29499a02016-01-17 20:53:51 -07001539 help
1540 USB support.
1541
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001542config CMD_USB_SDP
1543 bool "sdp"
1544 select USB_FUNCTION_SDP
1545 help
1546 Enables the command "sdp" which is used to have U-Boot emulating the
1547 Serial Download Protocol (SDP) via USB.
Michal Simekf751ff52018-07-23 15:55:12 +02001548
Johan Jonkerff1d73f2023-10-18 16:01:40 +02001549config CMD_RKMTD
1550 bool "rkmtd"
1551 select RKMTD
1552 help
1553 Enable the command "rkmtd" to create a virtual block device to transfer
1554 Rockchip boot block data to and from NAND with block orientated tools
1555 like "ums" and "rockusb".
1556
Eddie Cai5e3020b2017-12-15 08:17:11 +08001557config CMD_ROCKUSB
1558 bool "rockusb"
1559 depends on USB_FUNCTION_ROCKUSB
1560 help
Michal Simekf751ff52018-07-23 15:55:12 +02001561 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai5e3020b2017-12-15 08:17:11 +08001562 read/write info, image to/from devices. This enable rockusb command
1563 support to communication with rockusb device. for more detail about
1564 this command, please read doc/README.rockusb.
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001565
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001566config CMD_USB_MASS_STORAGE
1567 bool "UMS usb mass storage"
Tom Rini4b783d92021-05-22 08:47:16 -04001568 depends on USB_GADGET_DOWNLOAD
Lukasz Majewski6e782742018-01-29 19:28:02 +01001569 select USB_FUNCTION_MASS_STORAGE
Patrick Delaunaye1dc2532021-06-04 18:51:46 +02001570 depends on BLK && USB_GADGET
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001571 help
Patrick Delaunaye1dc2532021-06-04 18:51:46 +02001572 Enables the command "ums" and the USB mass storage support to the
1573 export a block device: U-Boot, the USB device, acts as a simple
1574 external hard drive plugged on the host USB port.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001575
Svyatoslav Ryhelbb8068d2023-03-20 21:01:43 +02001576config CMD_UMS_ABORT_KEYED
1577 bool "UMS abort with any key"
1578 depends on CMD_USB_MASS_STORAGE
1579 help
1580 Allow interruption of usb mass storage run with any key pressed.
1581
Anastasiia Lukianenko4fec7f82020-08-06 12:42:55 +03001582config CMD_PVBLOCK
1583 bool "Xen para-virtualized block device"
1584 depends on XEN
1585 select PVBLOCK
1586 help
1587 Xen para-virtualized block device support
1588
Tuomas Tynkkynen10a60d22018-10-15 02:21:12 -07001589config CMD_VIRTIO
1590 bool "virtio"
1591 depends on VIRTIO
1592 default y if VIRTIO
1593 help
1594 VirtIO block device support
1595
Michael Walle23964a82019-04-06 02:24:02 +02001596config CMD_WDT
1597 bool "wdt"
1598 depends on WDT
1599 help
1600 This provides commands to control the watchdog timer devices.
1601
Rasmus Villemoesc614b832023-03-02 09:12:22 +01001602config CMD_WRITE
1603 bool "write - Write binary data to a partition"
1604 help
1605 Provides low-level write access to a partition.
1606
Mario Sixfd1cc422018-08-09 14:51:21 +02001607config CMD_AXI
1608 bool "axi"
1609 depends on AXI
1610 help
1611 Enable the command "axi" for accessing AXI (Advanced eXtensible
1612 Interface) busses, a on-chip interconnect specification for managing
1613 functional blocks in SoC designs, which is also often used in designs
1614 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass29499a02016-01-17 20:53:51 -07001615endmenu
1616
1617
1618menu "Shell scripting commands"
1619
Roger Knecht11827c42022-09-03 11:34:53 +00001620config CMD_CAT
1621 bool "cat"
1622 help
1623 Print file to standard output
1624
Simon Glass29499a02016-01-17 20:53:51 -07001625config CMD_ECHO
1626 bool "echo"
1627 default y
1628 help
1629 Echo args to console
1630
1631config CMD_ITEST
1632 bool "itest"
1633 default y
1634 help
1635 Return true/false on integer compare.
1636
1637config CMD_SOURCE
1638 bool "source"
1639 default y
1640 help
1641 Run script from memory
1642
1643config CMD_SETEXPR
1644 bool "setexpr"
1645 default y
1646 help
1647 Evaluate boolean and math expressions and store the result in an env
1648 variable.
1649 Also supports loading the value at a memory location into a variable.
1650 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1651
Roland Gaudig2c9e7c22021-07-23 12:29:21 +00001652config CMD_SETEXPR_FMT
1653 bool "setexpr_fmt"
Roland Gaudig2c9e7c22021-07-23 12:29:21 +00001654 depends on CMD_SETEXPR
1655 help
1656 Evaluate format string expression and store result in an environment
1657 variable.
1658
Roger Knecht4c29c2b2023-09-07 14:51:43 +00001659config CMD_XXD
1660 bool "xxd"
1661 help
1662 Print file as hexdump to standard output
1663
Simon Glass29499a02016-01-17 20:53:51 -07001664endmenu
1665
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001666menu "Android support commands"
1667
1668config CMD_AB_SELECT
1669 bool "ab_select"
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001670 depends on ANDROID_AB
1671 help
1672 On Android devices with more than one boot slot (multiple copies of
1673 the kernel and system images) this provides a command to select which
1674 slot should be used to boot from and register the boot attempt. This
1675 is used by the new A/B update model where one slot is updated in the
1676 background while running from the other slot.
1677
1678endmenu
1679
Michal Simek2f785a12018-02-26 16:01:02 +01001680if NET
1681
Joe Hershbergerb0429462018-04-13 15:26:30 -05001682menuconfig CMD_NET
1683 bool "Network commands"
1684 default y
Adam Ford53705472018-07-20 23:03:57 -05001685 imply NETDEVICES
Joe Hershbergerb0429462018-04-13 15:26:30 -05001686
1687if CMD_NET
1688
1689config CMD_BOOTP
1690 bool "bootp"
Simon Glass29499a02016-01-17 20:53:51 -07001691 default y
1692 help
Simon Glass29499a02016-01-17 20:53:51 -07001693 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerb0429462018-04-13 15:26:30 -05001694
Joe Hershberger01261792018-04-13 15:26:33 -05001695config CMD_DHCP
1696 bool "dhcp"
1697 depends on CMD_BOOTP
1698 help
1699 Boot image via network using DHCP/TFTP protocol
1700
Sean Edmondba802862023-04-11 10:48:47 -07001701config CMD_DHCP6
1702 bool "dhcp6"
1703 depends on IPV6
1704 help
1705 Boot image via network using DHCPv6/TFTP protocol using IPv6.
1706
1707 Will perform 4-message exchange with DHCPv6 server, requesting
1708 the minimum required options to TFTP boot. Complies with RFC 8415.
1709
Tom Rini1c47c4a2022-02-25 11:19:50 -05001710config BOOTP_MAY_FAIL
1711 bool "Allow for the BOOTP/DHCP server to not be found"
1712 depends on CMD_BOOTP
1713 help
1714 If the DHCP server is not found after the configured retry count, the
1715 call will fail instead of starting over. This can be used to fail
1716 over to Link-local IP address configuration if the DHCP server is not
1717 available.
1718
Joe Hershberger0824ad92018-04-13 15:26:32 -05001719config BOOTP_BOOTPATH
Joe Hershberger06661e12018-04-13 15:26:34 -05001720 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001721 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001722 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001723 help
1724 Even though the config is called BOOTP_BOOTPATH, it stores the
1725 path in the variable 'rootpath'.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001726
Tom Rini1c47c4a2022-02-25 11:19:50 -05001727config BOOTP_VENDOREX
1728 bool "Support vendor extensions from BOOTP/DHCP server"
1729 depends on CMD_BOOTP
1730
1731config BOOTP_BOOTFILESIZE
1732 bool "Request & store 'bootfilesize' from BOOTP/DHCP server"
1733 depends on CMD_BOOTP
1734
Joe Hershberger0824ad92018-04-13 15:26:32 -05001735config BOOTP_DNS
Joe Hershberger06661e12018-04-13 15:26:34 -05001736 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001737 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001738 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001739 help
1740 The primary DNS server is stored as 'dnsip'. If two servers are
1741 returned, you must set BOOTP_DNS2 to store that second server IP
1742 also.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001743
Joe Hershberger63e70712018-04-13 15:26:35 -05001744config BOOTP_DNS2
1745 bool "Store 'dnsip2' from BOOTP/DHCP server"
1746 depends on BOOTP_DNS
1747 help
1748 If a DHCP client requests the DNS server IP from a DHCP server,
1749 it is possible that more than one DNS serverip is offered to the
1750 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1751 server IP will be stored in the additional environment
1752 variable "dnsip2". The first DNS serverip is always
1753 stored in the variable "dnsip", when BOOTP_DNS is defined.
1754
Joe Hershberger0824ad92018-04-13 15:26:32 -05001755config BOOTP_GATEWAY
Joe Hershberger06661e12018-04-13 15:26:34 -05001756 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001757 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001758 depends on CMD_BOOTP
1759
1760config BOOTP_HOSTNAME
Joe Hershberger06661e12018-04-13 15:26:34 -05001761 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001762 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001763 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001764 help
1765 The name may or may not be qualified with the local domain name.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001766
Alexander Graf427e6952018-06-15 10:29:28 +02001767config BOOTP_PREFER_SERVERIP
1768 bool "serverip variable takes precedent over DHCP server IP."
1769 depends on CMD_BOOTP
1770 help
1771 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1772
1773 With this option enabled, the 'serverip' variable in the environment
1774 takes precedence over DHCP server IP and will only be set by the DHCP
1775 server if not already set in the environment.
1776
Joe Hershberger0824ad92018-04-13 15:26:32 -05001777config BOOTP_SUBNETMASK
Joe Hershberger06661e12018-04-13 15:26:34 -05001778 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001779 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001780 depends on CMD_BOOTP
1781
Tom Rini1c47c4a2022-02-25 11:19:50 -05001782config BOOTP_NISDOMAIN
1783 bool "Request & store 'nisdomain' from BOOTP/DHCP server"
1784 depends on CMD_BOOTP
1785
Chris Packhambfa7c212018-05-03 20:19:02 +12001786config BOOTP_NTPSERVER
1787 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1788 depends on CMD_BOOTP
1789
Tom Rini1c47c4a2022-02-25 11:19:50 -05001790config BOOTP_TIMEOFFSET
1791 bool "Request & store 'timeoffset' from BOOTP/DHCP server"
1792 depends on CMD_BOOTP && CMD_SNTP
1793
Ramon Friedac598c12019-07-18 21:43:30 +03001794config CMD_PCAP
1795 bool "pcap capture"
1796 help
1797 Selecting this will allow capturing all Ethernet packets and store
1798 them in physical memory in a PCAP formated file,
1799 later to be analyzed by PCAP reader application (IE. WireShark).
1800
Joe Hershberger0824ad92018-04-13 15:26:32 -05001801config BOOTP_PXE
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001802 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001803 default y
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001804 depends on CMD_BOOTP && CMD_PXE
1805 help
1806 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001807
1808config BOOTP_PXE_CLIENTARCH
1809 hex
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001810 depends on BOOTP_PXE
Joe Hershberger0824ad92018-04-13 15:26:32 -05001811 default 0x16 if ARM64
1812 default 0x15 if ARM
Tom Rinif18679c2023-08-02 11:09:43 -04001813 default 0x0 if X86
Joe Hershberger0824ad92018-04-13 15:26:32 -05001814
Sean Edmond57867112023-07-25 16:20:30 -07001815config BOOTP_PXE_DHCP_OPTION
1816 bool "Request & store 'pxe_configfile' from BOOTP/DHCP server"
1817 depends on BOOTP_PXE
1818
Joe Hershberger0824ad92018-04-13 15:26:32 -05001819config BOOTP_VCI_STRING
1820 string
1821 depends on CMD_BOOTP
Michal Simekf4359382018-04-26 18:21:29 +05301822 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger0824ad92018-04-13 15:26:32 -05001823 default "U-Boot.armv8" if ARM64
1824 default "U-Boot.arm" if ARM
1825 default "U-Boot"
1826
Sean Edmondba802862023-04-11 10:48:47 -07001827if CMD_DHCP6
1828
1829config DHCP6_PXE_CLIENTARCH
1830 hex
1831 default 0x16 if ARM64
1832 default 0x15 if ARM
1833 default 0xFF
1834
1835config DHCP6_PXE_DHCP_OPTION
1836 bool "Request & store 'pxe_configfile' from DHCP6 server"
1837
1838config DHCP6_ENTERPRISE_ID
1839 int "Enterprise ID to send in DHCPv6 Vendor Class Option"
1840 default 0
1841
1842endif
1843
Joe Hershbergerb0429462018-04-13 15:26:30 -05001844config CMD_TFTPBOOT
1845 bool "tftpboot"
1846 default y
1847 help
Heinrich Schuchardt7d289f12022-09-04 09:08:11 +02001848 tftpboot - load file via network using TFTP protocol
Simon Glass29499a02016-01-17 20:53:51 -07001849
1850config CMD_TFTPPUT
1851 bool "tftp put"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001852 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001853 help
1854 TFTP put command, for uploading files to a server
1855
1856config CMD_TFTPSRV
1857 bool "tftpsrv"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001858 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001859 help
1860 Act as a TFTP server and boot the first received file
1861
Joe Hershberger0824ad92018-04-13 15:26:32 -05001862config NET_TFTP_VARS
1863 bool "Control TFTP timeout and count through environment"
1864 depends on CMD_TFTPBOOT
1865 default y
1866 help
1867 If set, allows controlling the TFTP timeout through the
1868 environment variable tftptimeout, and the TFTP maximum
1869 timeout count through the variable tftptimeoutcountmax.
1870 If unset, timeout and maximum are hard-defined as 1 second
1871 and 10 timouts per TFTP transfer.
1872
Simon Glass29499a02016-01-17 20:53:51 -07001873config CMD_RARP
1874 bool "rarpboot"
1875 help
1876 Boot image via network using RARP/TFTP protocol
1877
Simon Glass29499a02016-01-17 20:53:51 -07001878config CMD_NFS
1879 bool "nfs"
Simon Glass29499a02016-01-17 20:53:51 -07001880 help
1881 Boot image via network using NFS protocol.
1882
Tom Rini0d1c4742022-03-11 09:12:05 -05001883config NFS_TIMEOUT
1884 int "Timeout in milliseconds for NFS mounts"
1885 depends on CMD_NFS
1886 default 2000
1887 help
1888 Timeout in milliseconds used in NFS protocol. If you encounter
1889 "ERROR: Cannot umount" in nfs command, try longer timeout such as
1890 10000.
1891
Tom Rini065d6612022-06-13 22:57:35 -04001892config SYS_DISABLE_AUTOLOAD
1893 bool "Disable automatically loading files over the network"
1894 depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP
1895 help
1896 Typically, commands such as "dhcp" will attempt to automatically
1897 load a file from the network, once the initial network configuration
1898 is complete. Enable this option to disable this behavior and instead
1899 require files to be loaded over the network by subsequent commands.
1900
Ying-Chun Liu (PaulLiu)cc96a1d2022-11-08 14:17:29 +08001901config CMD_WGET
1902 bool "wget"
Michael Walle34aa0752022-12-28 16:27:15 +01001903 select PROT_TCP
Ying-Chun Liu (PaulLiu)cc96a1d2022-11-08 14:17:29 +08001904 help
1905 wget is a simple command to download kernel, or other files,
1906 from a http server over TCP.
1907
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001908config CMD_MII
1909 bool "mii"
Ramon Frieddeb6c502019-09-13 18:25:03 +03001910 imply CMD_MDIO
1911 help
1912 If set, allows 802.3(clause 22) MII Management functions interface access
1913 The management interface specified in Clause 22 provides
1914 a simple, two signal, serial interface to connect a
1915 Station Management entity and a managed PHY for providing access
1916 to management parameters and services.
1917 The interface is referred to as the MII management interface.
1918
Tom Rini1a0c7dc2022-03-18 08:38:27 -04001919config MII_INIT
1920 bool "Call mii_init() in the mii command"
1921 depends on CMD_MII && (MPC8XX_FEC || FSLDMAFE || MCFFEC)
1922
Ramon Frieddeb6c502019-09-13 18:25:03 +03001923config CMD_MDIO
1924 bool "mdio"
1925 depends on PHYLIB
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001926 help
Ramon Frieddeb6c502019-09-13 18:25:03 +03001927 If set, allows Enable 802.3(clause 45) MDIO interface registers access
1928 The MDIO interface is orthogonal to the MII interface and extends
1929 it by adding access to more registers through indirect addressing.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001930
Simon Glass29499a02016-01-17 20:53:51 -07001931config CMD_PING
1932 bool "ping"
1933 help
1934 Send ICMP ECHO_REQUEST to network host
1935
Viacheslav Mitrofanove03c8aa2022-12-02 12:18:08 +03001936config CMD_PING6
1937 bool "ping6"
1938 depends on IPV6
1939 default y if (CMD_PING && IPV6)
1940 help
1941 Send ICMPv6 ECHO_REQUEST to network host
1942
Simon Glass29499a02016-01-17 20:53:51 -07001943config CMD_CDP
1944 bool "cdp"
1945 help
1946 Perform CDP network configuration
1947
1948config CMD_SNTP
1949 bool "sntp"
Philippe Reynes2829d992020-09-18 14:13:02 +02001950 select PROT_UDP
Simon Glass29499a02016-01-17 20:53:51 -07001951 help
1952 Synchronize RTC via network
1953
1954config CMD_DNS
1955 bool "dns"
1956 help
1957 Lookup the IP of a hostname
1958
1959config CMD_LINK_LOCAL
1960 bool "linklocal"
Joe Hershberger51d78982018-04-30 12:45:22 -05001961 select LIB_RAND
Simon Glass29499a02016-01-17 20:53:51 -07001962 help
1963 Acquire a network IP address using the link-local protocol
1964
Samuel Mendoza-Jonasfeebd6c2022-08-08 21:46:04 +09301965config CMD_NCSI
1966 bool "ncsi"
1967 depends on PHY_NCSI
1968 help
1969 Manually configure the attached NIC via NC-SI.
1970 Normally this happens automatically before other network
1971 operations.
1972
Ehsan Mohandesia0d6d272023-04-21 17:08:21 -07001973config IPV6_ROUTER_DISCOVERY
1974 bool "Do IPv6 router discovery"
1975 depends on IPV6
1976 help
1977 Will automatically perform router solicitation on first IPv6
1978 network operation
Joe Hershberger0824ad92018-04-13 15:26:32 -05001979endif
1980
Simon Glass12b85702017-05-17 03:25:17 -06001981config CMD_ETHSW
1982 bool "ethsw"
1983 help
1984 Allow control of L2 Ethernet switch commands. These are supported
1985 by the vsc9953 Ethernet driver at present. Sub-commands allow
1986 operations such as enabling / disabling a port and
1987 viewing/maintaining the filtering database (FDB)
1988
Joe Hershberger0824ad92018-04-13 15:26:32 -05001989config CMD_PXE
1990 bool "pxe"
John Keeping9b60a172022-07-28 11:19:15 +01001991 select PXE_UTILS
Joe Hershberger0824ad92018-04-13 15:26:32 -05001992 help
1993 Boot image via network using PXE protocol
Michal Simek2f785a12018-02-26 16:01:02 +01001994
Lothar Felten776fc102018-06-22 22:29:54 +02001995config CMD_WOL
1996 bool "wol"
1997 help
1998 Wait for wake-on-lan Magic Packet
1999
Joe Hershbergerb0429462018-04-13 15:26:30 -05002000endif
Simon Glass29499a02016-01-17 20:53:51 -07002001
2002menu "Misc commands"
2003
Simon Glassb158b8f2023-02-07 14:33:53 -07002004config CMD_2048
2005 bool "Play 2048"
2006 help
2007 This is a simple sliding block puzzle game designed by Italian web
2008 developer Gabriele Cirulli. The game's objective is to slide numbered
2009 tiles on a grid to combine them to create a tile with the number
2010 2048.
2011
2012 This needs ANSI support on your terminal to work. It is not fully
2013 functional on a video device.
2014
Simon Glassb575bfc2017-04-26 22:27:55 -06002015config CMD_BMP
2016 bool "Enable 'bmp' command"
Simon Glass52cb5042022-10-18 07:46:31 -06002017 depends on VIDEO
Samuel Dionne-Rielaa3c9bb2023-07-18 14:27:36 +05302018 select BMP
Simon Glassb575bfc2017-04-26 22:27:55 -06002019 help
Andrius Štikonas1d5ccd62019-09-23 22:43:41 +01002020 This provides a way to obtain information about a BMP-format image
Simon Glassb575bfc2017-04-26 22:27:55 -06002021 and to display it. BMP (which presumably stands for BitMaP) is a
2022 file format defined by Microsoft which supports images of various
2023 depths, formats and compression methods. Headers on the file
2024 determine the formats used. This command can be used by first loading
2025 the image into RAM, then using this command to look at it or display
2026 it.
2027
Alex Kiernane710fa62018-05-12 05:49:47 +00002028config CMD_BOOTCOUNT
2029 bool "bootcount"
2030 depends on BOOTCOUNT_LIMIT
2031 help
2032 Enable the bootcount command, which allows interrogation and
2033 reset of the bootcounter.
2034
Simon Glassffab9a02017-04-26 22:27:56 -06002035config CMD_BSP
2036 bool "Enable board-specific commands"
2037 help
2038 (deprecated: instead, please define a Kconfig option for each command)
2039
2040 Some boards have board-specific commands which are only enabled
2041 during developemnt and need to be turned off for production. This
2042 option provides a way to control this. The commands that are enabled
2043 vary depending on the board.
2044
Eric Nelsonfaf4f052016-03-28 10:05:44 -07002045config CMD_BLOCK_CACHE
2046 bool "blkcache - control and stats for block cache"
2047 depends on BLOCK_CACHE
2048 default y if BLOCK_CACHE
2049 help
2050 Enable the blkcache command, which can be used to control the
2051 operation of the cache functions.
2052 This is most useful when fine-tuning the operation of the cache
2053 during development, but also allows the cache to be disabled when
2054 it might hurt performance (e.g. when using the ums command).
2055
Tobias Waldekranz91ec2592023-02-16 16:33:52 +01002056config CMD_BLKMAP
2057 bool "blkmap - Composable virtual block devices"
2058 depends on BLKMAP
2059 default y if BLKMAP
2060 help
2061 Create virtual block devices that are backed by various sources,
2062 e.g. RAM, or parts of an existing block device. Though much more
2063 rudimentary, it borrows a lot of ideas from Linux's device mapper
2064 subsystem.
2065
2066 Example use-cases:
2067 - Treat a region of RAM as a block device, i.e. a RAM disk. This let's
2068 you extract files from filesystem images stored in RAM (perhaps as a
2069 result of a TFTP transfer).
2070 - Create a virtual partition on an existing device. This let's you
2071 access filesystems that aren't stored at an exact partition
2072 boundary. A common example is a filesystem image embedded in an FIT
2073 image.
2074
Philippe Reynesa558b182020-07-24 18:19:47 +02002075config CMD_BUTTON
2076 bool "button"
2077 depends on BUTTON
2078 default y if BUTTON
2079 help
2080 Enable the 'button' command which allows to get the status of
2081 buttons supported by the board. The buttonss can be listed with
2082 'button list' and state can be known with 'button <label>'.
2083 Any button drivers can be controlled with this command, e.g.
2084 button_gpio.
2085
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002086config CMD_CACHE
2087 bool "icache or dcache"
2088 help
2089 Enable the "icache" and "dcache" commands
2090
Heinrich Schuchardt13ea6852018-09-07 19:43:11 +02002091config CMD_CONITRACE
2092 bool "conitrace - trace console input codes"
2093 help
2094 Enable the 'conitrace' command which displays the codes received
2095 from the console input as hexadecimal numbers.
2096
Anatolij Gustschine0455a42018-12-01 10:47:20 +01002097config CMD_CLS
2098 bool "Enable clear screen command 'cls'"
John Keeping36ce43b2022-11-23 17:16:14 +00002099 default y if LCD || VIDEO
Anatolij Gustschine0455a42018-12-01 10:47:20 +01002100 help
2101 Enable the 'cls' command which clears the screen contents
2102 on video frame buffer.
2103
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09002104config CMD_EFIDEBUG
2105 bool "efidebug - display/configure UEFI environment"
2106 depends on EFI_LOADER
Heinrich Schuchardt3db35912019-05-11 09:53:33 +02002107 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09002108 help
2109 Enable the 'efidebug' command which provides a subset of UEFI
2110 shell utility with simplified functionality. It will be useful
2111 particularly for managing boot parameters as well as examining
2112 various EFI status for debugging.
2113
Masahisa Kojimac5ff0a02022-09-12 17:33:50 +09002114config CMD_EFICONFIG
2115 bool "eficonfig - provide menu-driven uefi variables maintenance interface"
Heinrich Schuchardt323bfa52023-02-08 09:57:00 +01002116 default y if !HAS_BOARD_SIZE_LIMIT
Simon Glassd1e46f02023-10-26 14:31:20 -04002117 depends on BOOTEFI_BOOTMGR
Heinrich Schuchardtaecf40e2023-02-08 13:56:33 +01002118 select MENU
Masahisa Kojimac5ff0a02022-09-12 17:33:50 +09002119 help
2120 Enable the 'eficonfig' command which provides the menu-driven UEFI
2121 variable maintenance interface.
2122
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01002123config CMD_EXCEPTION
2124 bool "exception - raise exception"
Heinrich Schuchardtadaea9c2020-11-12 00:29:57 +01002125 depends on ARM || RISCV || SANDBOX || X86
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01002126 help
2127 Enable the 'exception' command which allows to raise an exception.
2128
Simon Glassfc8a5292017-04-10 11:34:59 -06002129config CMD_LED
2130 bool "led"
Jan Kiszka89077ba2019-01-03 09:08:42 +01002131 depends on LED
Simon Glassfc8a5292017-04-10 11:34:59 -06002132 default y if LED
2133 help
2134 Enable the 'led' command which allows for control of LEDs supported
2135 by the board. The LEDs can be listed with 'led list' and controlled
2136 with led on/off/togle/blink. Any LED drivers can be controlled with
2137 this command, e.g. led_gpio.
2138
Simon Glassfbcd3b72023-02-01 13:19:24 -07002139config CMD_INI
2140 bool "ini"
2141 help
2142 Enable the 'ini' command which allows a .ini file to be parsed and
2143 placed into environment variables. Please check the source code for
2144 this as there is no documentation.
2145
Chris Packham3e257df2017-04-29 15:20:28 +12002146config CMD_DATE
2147 bool "date"
2148 default y if DM_RTC
AKASHI Takahiro51ba5222019-11-13 09:44:49 +09002149 select LIB_DATE
Chris Packham3e257df2017-04-29 15:20:28 +12002150 help
2151 Enable the 'date' command for getting/setting the time/date in RTC
2152 devices.
2153
Rasmus Villemoescc092022020-07-06 22:01:15 +02002154config CMD_RTC
2155 bool "rtc"
2156 depends on DM_RTC
2157 help
2158 Enable the 'rtc' command for low-level access to RTC devices.
2159
Simon Glass29499a02016-01-17 20:53:51 -07002160config CMD_TIME
2161 bool "time"
2162 help
2163 Run commands and summarize execution time.
2164
Simon Glassfa744522017-05-17 03:25:23 -06002165config CMD_GETTIME
2166 bool "gettime - read elapsed time"
2167 help
2168 Enable the 'gettime' command which reads the elapsed time since
2169 U-Boot started running. This shows the time in seconds and
2170 milliseconds. See also the 'bootstage' command which provides more
2171 flexibility for boot timing.
2172
Samuel Dionne-Riele69e1f12022-08-18 15:44:04 -04002173config CMD_PAUSE
2174 bool "pause command"
2175 help
2176 Delay execution waiting for any user input.
2177 Useful to allow the user to read a failure log.
2178
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002179config CMD_RNG
2180 bool "rng command"
2181 depends on DM_RNG
Sughosh Ganu6daac6b2022-07-22 21:32:09 +05302182 default y if SANDBOX
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002183 select HEXDUMP
2184 help
2185 Print bytes from the hardware random number generator.
2186
Chris Morgan61a96182021-08-25 11:22:57 -05002187config CMD_KASLRSEED
2188 bool "kaslrseed"
2189 depends on DM_RNG
2190 help
2191 Set the kaslr-seed in the chosen node with entropy provided by a
2192 hardware random number generator.
2193
Bin Meng7c4f7be2020-10-13 18:45:05 +08002194config CMD_SLEEP
Simon Glass29499a02016-01-17 20:53:51 -07002195 bool "sleep"
2196 default y
2197 help
2198 Delay execution for some time
2199
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002200config CMD_MP
2201 bool "support for multiprocessor commands"
2202 depends on MP
2203 default y
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002204 help
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002205 This enables commands to bringup different processors
2206 in multiprocessor cases.
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002207
Simon Glass29499a02016-01-17 20:53:51 -07002208config CMD_TIMER
2209 bool "timer"
2210 help
2211 Access the system timer.
2212
Simon Glass29499a02016-01-17 20:53:51 -07002213config CMD_SOUND
2214 bool "sound"
2215 depends on SOUND
2216 help
2217 This provides basic access to the U-Boot's sound support. The main
2218 feature is to play a beep.
2219
2220 sound init - set up sound system
2221 sound play - play a sound
2222
Patrice Chotard7b81c052019-11-25 09:07:38 +01002223config CMD_SYSBOOT
2224 bool "sysboot"
John Keeping9b60a172022-07-28 11:19:15 +01002225 select PXE_UTILS
Patrice Chotard7b81c052019-11-25 09:07:38 +01002226 help
2227 Boot image via local extlinux.conf file
2228
Miao Yan92106272016-05-22 19:37:17 -07002229config CMD_QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002230 bool "qfw"
Miao Yan4fcd7f22016-05-22 19:37:14 -07002231 select QFW
Tom Rinibbf245d2023-10-26 14:31:14 -04002232 default y if TARGET_QEMU_ARM_32BIT || TARGET_QEMU_ARM_64BIT || \
2233 TARGET_QEMU_X86 || TARGET_QEMU_X86_64
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002234 help
2235 This provides access to the QEMU firmware interface. The main
2236 feature is to allow easy loading of files passed to qemu-system
2237 via -kernel / -initrd
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002238
Frédéric Danised2e8e42020-03-20 10:59:22 +01002239config CMD_PSTORE
2240 bool "pstore"
2241 help
2242 This provides access to Linux PStore with Rammoops backend. The main
2243 feature is to allow to display or save PStore records.
2244
2245 See doc/pstore.rst for more information.
2246
2247if CMD_PSTORE
2248
2249config CMD_PSTORE_MEM_ADDR
2250 hex "Memory Address"
2251 depends on CMD_PSTORE
2252 help
2253 Base addr used for PStore ramoops memory, should be identical to
2254 ramoops.mem_address parameter used by kernel
2255
2256config CMD_PSTORE_MEM_SIZE
2257 hex "Memory size"
2258 depends on CMD_PSTORE
2259 default "0x10000"
2260 help
2261 Size of PStore ramoops memory, should be identical to ramoops.mem_size
2262 parameter used by kernel, a power of 2 and larger than the sum of the
2263 record sizes
2264
2265config CMD_PSTORE_RECORD_SIZE
2266 hex "Dump record size"
2267 depends on CMD_PSTORE
2268 default "0x1000"
2269 help
2270 Size of each dump done on oops/panic, should be identical to
2271 ramoops.record_size parameter used by kernel and a power of 2
2272 Must be non-zero
2273
2274config CMD_PSTORE_CONSOLE_SIZE
2275 hex "Kernel console log size"
2276 depends on CMD_PSTORE
2277 default "0x1000"
2278 help
2279 Size of kernel console log, should be identical to
2280 ramoops.console_size parameter used by kernel and a power of 2
2281 Must be non-zero
2282
2283config CMD_PSTORE_FTRACE_SIZE
2284 hex "FTrace log size"
2285 depends on CMD_PSTORE
2286 default "0x1000"
2287 help
2288 Size of ftrace log, should be identical to ramoops.ftrace_size
2289 parameter used by kernel and a power of 2
2290
2291config CMD_PSTORE_PMSG_SIZE
2292 hex "User space message log size"
2293 depends on CMD_PSTORE
2294 default "0x1000"
2295 help
2296 Size of user space message log, should be identical to
2297 ramoops.pmsg_size parameter used by kernel and a power of 2
2298
2299config CMD_PSTORE_ECC_SIZE
2300 int "ECC size"
2301 depends on CMD_PSTORE
2302 default "0"
2303 help
2304 if non-zero, the option enables ECC support and specifies ECC buffer
2305 size in bytes (1 is a special value, means 16 bytes ECC), should be
2306 identical to ramoops.ramoops_ecc parameter used by kernel
2307
2308endif
2309
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002310source "cmd/mvebu/Kconfig"
2311
Simon Glass89342ef2017-08-04 16:34:55 -06002312config CMD_TERMINAL
2313 bool "terminal - provides a way to attach a serial terminal"
2314 help
2315 Provides a 'cu'-like serial terminal command. This can be used to
2316 access other serial ports from the system console. The terminal
2317 is very simple with no special processing of characters. As with
2318 cu, you can press ~. (tilde followed by period) to exit.
2319
Simon Glass6d56aad2017-08-04 16:35:02 -06002320config CMD_UUID
2321 bool "uuid, guid - generation of unique IDs"
Adam Ford70c8f052018-02-06 12:14:28 -06002322 select LIB_UUID
Simon Glass6d56aad2017-08-04 16:35:02 -06002323 help
2324 This enables two commands:
2325
2326 uuid - generate random Universally Unique Identifier
2327 guid - generate Globally Unique Identifier based on random UUID
2328
2329 The two commands are very similar except for the endianness of the
2330 output.
2331
Simon Glass724e2a42022-10-06 08:36:06 -06002332config CMD_VIDCONSOLE
2333 bool "lcdputs and setcurs"
Simon Glass52cb5042022-10-18 07:46:31 -06002334 depends on VIDEO
Simon Glass724e2a42022-10-06 08:36:06 -06002335 default y
2336 help
2337 Enabling this will provide 'setcurs' and 'lcdputs' commands which
2338 support cursor positioning and drawing strings on the video
2339 console (framebuffer).
2340
2341 The name 'lcdputs' is a bit of a misnomer, but so named because the
2342 video device is often an LCD.
2343
Dzmitry Sankouskibb165e42023-03-07 13:21:16 +03002344config CMD_SELECT_FONT
2345 bool "select font size"
2346 depends on VIDEO
Simon Glass9faa7a32023-10-26 14:31:18 -04002347 default y if CONSOLE_TRUETYPE
Dzmitry Sankouskibb165e42023-03-07 13:21:16 +03002348 help
2349 Enabling this will provide 'font' command.
2350 Allows font selection at runtime.
2351
Simon Glass29499a02016-01-17 20:53:51 -07002352endmenu
2353
Lokesh Vutla962c4e02017-12-29 11:47:49 +05302354source "cmd/ti/Kconfig"
2355
Simon Glass29499a02016-01-17 20:53:51 -07002356config CMD_BOOTSTAGE
2357 bool "Enable the 'bootstage' command"
2358 depends on BOOTSTAGE
2359 help
2360 Add a 'bootstage' command which supports printing a report
2361 and un/stashing of bootstage data.
2362
2363menu "Power commands"
2364config CMD_PMIC
2365 bool "Enable Driver Model PMIC command"
2366 depends on DM_PMIC
2367 help
2368 This is the pmic command, based on a driver model pmic's API.
2369 Command features are unchanged:
2370 - list - list pmic devices
2371 - pmic dev <id> - show or [set] operating pmic device (NEW)
2372 - pmic dump - dump registers
2373 - pmic read address - read byte of register at address
2374 - pmic write address - write byte to register at address
2375 The only one change for this command is 'dev' subcommand.
2376
2377config CMD_REGULATOR
2378 bool "Enable Driver Model REGULATOR command"
2379 depends on DM_REGULATOR
2380 help
2381 This command is based on driver model regulator's API.
2382 User interface features:
2383 - list - list regulator devices
2384 - regulator dev <id> - show or [set] operating regulator device
2385 - regulator info - print constraints info
2386 - regulator status - print operating status
2387 - regulator value <val] <-f> - print/[set] voltage value [uV]
2388 - regulator current <val> - print/[set] current value [uA]
2389 - regulator mode <id> - print/[set] operating mode id
2390 - regulator enable - enable the regulator output
2391 - regulator disable - disable the regulator output
2392
2393 The '-f' (force) option can be used for set the value which exceeds
2394 the limits, which are found in device-tree and are kept in regulator's
Simon Glass71fa5b42020-12-03 16:55:18 -07002395 uclass plat structure.
Simon Glass29499a02016-01-17 20:53:51 -07002396
2397endmenu
2398
2399menu "Security commands"
Simon Glass528fdd12017-04-26 22:27:49 -06002400config CMD_AES
2401 bool "Enable the 'aes' command"
2402 select AES
2403 help
2404 This provides a means to encrypt and decrypt data using the AES
2405 (Advanced Encryption Standard). This algorithm uses a symetric key
2406 and is widely used as a streaming cipher. Different key lengths are
2407 supported by the algorithm but this command only supports 128 bits
2408 at present.
2409
Simon Glass311ec4f2017-04-26 22:27:53 -06002410config CMD_BLOB
2411 bool "Enable the 'blob' command"
Aymen Sghaierf18c71f2021-03-25 17:30:27 +08002412 depends on !MX6ULL && !MX6SLL && !MX6SL
2413 select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
Simon Glass311ec4f2017-04-26 22:27:53 -06002414 help
2415 This is used with the Freescale secure boot mechanism.
2416
2417 Freescale's SEC block has built-in Blob Protocol which provides
2418 a method for protecting user-defined data across system power
2419 cycles. SEC block protects data in a data structure called a Blob,
2420 which provides both confidentiality and integrity protection.
2421
2422 Encapsulating data as a blob
2423 Each time that the Blob Protocol is used to protect data, a
2424 different randomly generated key is used to encrypt the data.
2425 This random key is itself encrypted using a key which is derived
2426 from SoC's non-volatile secret key and a 16 bit Key identifier.
2427 The resulting encrypted key along with encrypted data is called a
2428 blob. The non-volatile secure key is available for use only during
2429 secure boot.
2430
2431 During decapsulation, the reverse process is performed to get back
2432 the original data.
2433
2434 Sub-commands:
Michal Simekf751ff52018-07-23 15:55:12 +02002435 blob enc - encapsulating data as a cryptgraphic blob
Simon Glass311ec4f2017-04-26 22:27:53 -06002436 blob dec - decapsulating cryptgraphic blob to get the data
2437
2438 Syntax:
2439
2440 blob enc src dst len km
2441
2442 Encapsulate and create blob of data $len bytes long
2443 at address $src and store the result at address $dst.
2444 $km is the 16 byte key modifier is also required for
2445 generation/use as key for cryptographic operation. Key
2446 modifier should be 16 byte long.
2447
2448 blob dec src dst len km
2449
2450 Decapsulate the blob of data at address $src and
2451 store result of $len byte at addr $dst.
2452 $km is the 16 byte key modifier is also required for
2453 generation/use as key for cryptographic operation. Key
2454 modifier should be 16 byte long.
2455
Simon Glass027608e2017-05-17 03:25:25 -06002456config CMD_HASH
2457 bool "Support 'hash' command"
Simon Glassb22ec7a2017-05-17 09:05:34 -06002458 select HASH
Simon Glass027608e2017-05-17 03:25:25 -06002459 help
2460 This provides a way to hash data in memory using various supported
2461 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
2462 saved to memory or to an environment variable. It is also possible
2463 to verify a hash against data in memory.
2464
Michalis Pappasd382d222018-04-13 10:40:57 +03002465config CMD_HVC
2466 bool "Support the 'hvc' command"
2467 depends on ARM_SMCCC
2468 help
2469 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
2470 development and testing.
2471
2472config CMD_SMC
2473 bool "Support the 'smc' command"
2474 depends on ARM_SMCCC
2475 help
2476 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
2477 development and testing.
2478
Daniel Thompsona9e2c672017-05-19 17:26:58 +01002479config HASH_VERIFY
2480 bool "hash -v"
2481 depends on CMD_HASH
2482 help
2483 Add -v option to verify data against a hash.
2484
Jorge Ramirez-Ortiz7d80df92021-02-14 16:27:24 +01002485config CMD_SCP03
2486 bool "scp03 - SCP03 enable and rotate/provision operations"
2487 depends on SCP03
2488 help
2489 This command provides access to a Trusted Application
2490 running in a TEE to request Secure Channel Protocol 03
2491 (SCP03) enablement and/or rotation of its SCP03 keys.
2492
Miquel Raynal294f82a2018-05-15 11:57:05 +02002493config CMD_TPM_V1
2494 bool
2495
2496config CMD_TPM_V2
2497 bool
2498
Simon Glass29499a02016-01-17 20:53:51 -07002499config CMD_TPM
2500 bool "Enable the 'tpm' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002501 depends on TPM_V1 || TPM_V2
2502 select CMD_TPM_V1 if TPM_V1
2503 select CMD_TPM_V2 if TPM_V2
Simon Glass29499a02016-01-17 20:53:51 -07002504 help
2505 This provides a means to talk to a TPM from the command line. A wide
2506 range of commands if provided - see 'tpm help' for details. The
2507 command requires a suitable TPM on your board and the correct driver
2508 must be enabled.
2509
Miquel Raynal294f82a2018-05-15 11:57:05 +02002510if CMD_TPM
2511
Simon Glass29499a02016-01-17 20:53:51 -07002512config CMD_TPM_TEST
2513 bool "Enable the 'tpm test' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002514 depends on TPM_V1
Simon Glass29499a02016-01-17 20:53:51 -07002515 help
Miquel Raynal294f82a2018-05-15 11:57:05 +02002516 This provides a a series of tests to confirm that the TPMv1.x is
2517 working correctly. The tests cover initialisation, non-volatile RAM,
2518 extend, global lock and checking that timing is within expectations.
2519 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass29499a02016-01-17 20:53:51 -07002520 for other devices.
2521
Miquel Raynal294f82a2018-05-15 11:57:05 +02002522endif
2523
Simon Glass29499a02016-01-17 20:53:51 -07002524endmenu
2525
Moritz Fischer62b30272016-10-04 17:08:08 -07002526menu "Firmware commands"
2527config CMD_CROS_EC
2528 bool "Enable crosec command"
2529 depends on CROS_EC
2530 default y
2531 help
2532 Enable command-line access to the Chrome OS EC (Embedded
2533 Controller). This provides the 'crosec' command which has
2534 a number of sub-commands for performing EC tasks such as
2535 updating its flash, accessing a small saved context area
2536 and talking to the I2C bus behind the EC (if there is one).
2537endmenu
2538
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002539menu "Filesystem commands"
Marek Behún27cec792017-09-03 17:00:30 +02002540config CMD_BTRFS
2541 bool "Enable the 'btrsubvol' command"
2542 select FS_BTRFS
2543 help
2544 This enables the 'btrsubvol' command to list subvolumes
2545 of a BTRFS filesystem. There are no special commands for
2546 listing BTRFS directories or loading BTRFS files - this
2547 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
2548 when BTRFS is enabled (see FS_BTRFS).
2549
Simon Glass0501e3e2017-04-26 22:27:58 -06002550config CMD_CBFS
2551 bool "Enable the 'cbfs' command"
Simon Glass579b51a2017-04-26 22:27:59 -06002552 depends on FS_CBFS
Simon Glass0501e3e2017-04-26 22:27:58 -06002553 help
2554 Define this to enable support for reading from a Coreboot
2555 filesystem. This is a ROM-based filesystem used for accessing files
2556 on systems that use coreboot as the first boot-loader and then load
2557 U-Boot to actually boot the Operating System. Available commands are
2558 cbfsinit, cbfsinfo, cbfsls and cbfsload.
2559
Simon Glass519805e2017-04-26 22:28:03 -06002560config CMD_CRAMFS
2561 bool "Enable the 'cramfs' command"
Simon Glass690f5092017-04-26 22:28:04 -06002562 depends on FS_CRAMFS
Simon Glass519805e2017-04-26 22:28:03 -06002563 help
2564 This provides commands for dealing with CRAMFS (Compressed ROM
2565 filesystem). CRAMFS is useful when space is tight since files are
2566 compressed. Two commands are provided:
2567
2568 cramfsls - lists files in a cramfs image
2569 cramfsload - loads a file from a cramfs image
2570
Huang Jiananc8eefae2022-02-26 15:05:50 +08002571config CMD_EROFS
2572 bool "EROFS command support"
2573 select FS_EROFS
2574 help
2575 Support for the EROFS fs
2576
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002577config CMD_EXT2
2578 bool "ext2 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002579 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002580 help
2581 Enables EXT2 FS command
2582
2583config CMD_EXT4
2584 bool "ext4 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002585 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002586 help
2587 Enables EXT4 FS command
2588
2589config CMD_EXT4_WRITE
2590 depends on CMD_EXT4
2591 bool "ext4 write command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002592 select EXT4_WRITE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002593 help
2594 Enables EXT4 FS write command
2595
2596config CMD_FAT
2597 bool "FAT command support"
Sekhar Nori1909a7b2017-06-02 17:53:59 +05302598 select FS_FAT
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002599 help
2600 Support for the FAT fs
2601
Joao Marcos Costaa12c66f2020-07-30 15:33:48 +02002602config CMD_SQUASHFS
2603 bool "SquashFS command support"
2604 select FS_SQUASHFS
2605 help
2606 Enables SquashFS filesystem commands (e.g. load, ls).
2607
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002608config CMD_FS_GENERIC
2609 bool "filesystem commands"
2610 help
2611 Enables filesystem commands (e.g. load, ls) that work for multiple
2612 fs types.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002613
Josua Mayerf5ebfe72017-04-24 10:10:45 +02002614config CMD_FS_UUID
2615 bool "fsuuid command"
2616 help
2617 Enables fsuuid command for filesystem UUID.
2618
Simon Glassc4abb4b2017-05-17 03:25:37 -06002619config CMD_JFFS2
2620 bool "jffs2 command"
Simon Glass8c6c7c22017-05-17 03:25:38 -06002621 select FS_JFFS2
Simon Glassc4abb4b2017-05-17 03:25:37 -06002622 help
2623 Enables commands to support the JFFS2 (Journalling Flash File System
2624 version 2) filesystem. This enables fsload, ls and fsinfo which
2625 provide the ability to load files, list directories and obtain
2626 filesystem information.
2627
Tom Rini9c8268d2021-12-17 18:08:47 -05002628config JFFS2_DEV
2629 string "Default device for JFFS2"
2630 depends on CMD_JFFS2
2631 default "nor0"
2632 help
2633 The default device to use with the jffs2 command.
2634
2635config JFFS2_PART_OFFSET
2636 hex "Default offset within flash to locate the JFFS2 image"
2637 depends on CMD_JFFS2
2638 default 0x0
2639 help
2640 The default offset within flash to locate the JFFS2 image.
2641
2642config JFFS2_PART_SIZE
2643 hex "Default size of JFFS2 partition"
2644 depends on CMD_JFFS2
2645 default 0xFFFFFFFF
2646 help
2647 The default size of the JFFS2 partition
2648
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002649config CMD_MTDPARTS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002650 bool "MTD partition support"
Miquel Raynald2418202019-10-25 19:39:30 +02002651 depends on MTD
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002652 help
Miquel Raynal007dddc2018-09-29 12:58:30 +02002653 MTD partitioning tool support.
2654 It is strongly encouraged to avoid using this command
2655 anymore along with 'sf', 'nand', 'onenand'. One can still
2656 declare the partitions in the mtdparts environment variable
2657 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002658
Simon Glass66d7db02017-08-04 16:34:30 -06002659config CMD_MTDPARTS_SPREAD
2660 bool "Padd partition size to take account of bad blocks"
2661 depends on CMD_MTDPARTS
2662 help
2663 This enables the 'spread' sub-command of the mtdparts command.
2664 This command will modify the existing mtdparts variable by increasing
2665 the size of the partitions such that 1) each partition's net size is
2666 at least as large as the size specified in the mtdparts variable and
2667 2) each partition starts on a good block.
2668
Alexander Dahl6cae4f42019-10-30 16:53:55 +01002669config CMD_MTDPARTS_SHOW_NET_SIZES
2670 bool "Show net size (w/o bad blocks) of partitions"
2671 depends on CMD_MTDPARTS
2672 help
2673 Adds two columns to the printed partition table showing the
2674 effective usable size of a partition, if bad blocks are taken
2675 into account.
2676
Miquel Raynalf21322f2019-10-03 19:50:25 +02002677config MTDIDS_DEFAULT
2678 string "Default MTD IDs"
Miquel Raynald2418202019-10-25 19:39:30 +02002679 depends on MTD || SPI_FLASH
Patrick Delaunay1e8e8282022-12-08 09:10:13 +01002680 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynalf21322f2019-10-03 19:50:25 +02002681 help
2682 Defines a default MTD IDs list for use with MTD partitions in the
2683 Linux MTD command line partitions format.
2684
2685config MTDPARTS_DEFAULT
2686 string "Default MTD partition scheme"
Miquel Raynald2418202019-10-25 19:39:30 +02002687 depends on MTD || SPI_FLASH
Patrick Delaunay1e8e8282022-12-08 09:10:13 +01002688 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynalf21322f2019-10-03 19:50:25 +02002689 help
2690 Defines a default MTD partitioning scheme in the Linux MTD command
2691 line partitions format
2692
Simon Glassed4ee312017-08-04 16:34:41 -06002693config CMD_REISER
2694 bool "reiser - Access to reiserfs filesystems"
2695 help
2696 This provides two commands which operate on a resierfs filesystem,
2697 commonly used some years ago:
2698
2699 reiserls - list files
2700 reiserload - load a file
2701
Simon Glass19c5caf2017-08-04 16:34:58 -06002702config CMD_YAFFS2
2703 bool "yaffs2 - Access of YAFFS2 filesystem"
2704 depends on YAFFS2
2705 default y
2706 help
2707 This provides commands for accessing a YAFFS2 filesystem. Yet
2708 Another Flash Filesystem 2 is a filesystem designed specifically
2709 for NAND flash. It incorporates bad-block management and ensures
2710 that device writes are sequential regardless of filesystem
2711 activity.
2712
Simon Glassdc82dee2017-08-04 16:35:04 -06002713config CMD_ZFS
2714 bool "zfs - Access of ZFS filesystem"
2715 help
2716 This provides commands to accessing a ZFS filesystem, commonly used
2717 on Solaris systems. Two sub-commands are provided:
2718
2719 zfsls - list files in a directory
2720 zfsload - load a file
2721
2722 See doc/README.zfs for more details.
2723
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002724endmenu
2725
Simon Glass3423f212017-04-26 22:27:52 -06002726menu "Debug commands"
2727
Simon Glasse1efad22021-03-15 18:00:24 +13002728config CMD_CBSYSINFO
2729 bool "cbsysinfo"
2730 depends on X86
2731 default y if SYS_COREBOOT
2732 help
2733 This provides information about the coreboot sysinfo table stored in
2734 memory by coreboot before jumping to U-Boot. It can be useful for
2735 debugging the beaaviour of coreboot or U-Boot.
2736
Stefan Roese2702b272022-09-02 13:57:51 +02002737config CMD_CYCLIC
2738 bool "cyclic - Show information about cyclic functions"
2739 depends on CYCLIC
2740 default y
2741 help
2742 This enables the 'cyclic' command which provides information about
2743 cyclic execution functions. This infrastructure allows registering
2744 functions to be executed cyclically, e.g. every 100ms. These commands
2745 are supported:
2746
2747 cyclic list - list cyclic functions
2748 cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic
2749 demo function
2750
2751 See doc/develop/cyclic.rst for more details.
2752
Simon Glass20ea5632017-04-26 22:28:08 -06002753config CMD_DIAG
2754 bool "diag - Board diagnostics"
2755 help
2756 This command provides access to board diagnostic tests. These are
2757 called Power-on Self Tests (POST). The command allows listing of
2758 available tests and running either all the tests, or specific tests
2759 identified by name.
2760
Simon Glass3304fa82022-03-04 08:43:06 -07002761config CMD_EVENT
2762 bool "event - Show information about events"
Tom Rini7d3684a2023-01-16 15:46:49 -05002763 depends on EVENT
Simon Glass3304fa82022-03-04 08:43:06 -07002764 default y if EVENT_DEBUG
2765 help
2766 This enables the 'event' command which provides information about
2767 events and event-handler routines. This can help to device event
2768 hadling.
2769
Simon Glass4c3a6202017-05-17 03:25:39 -06002770config CMD_IRQ
2771 bool "irq - Show information about interrupts"
Pragnesh Patel3375e0b2020-08-24 20:38:55 +05302772 depends on !ARM && !MIPS && !RISCV && !SH
Simon Glass4c3a6202017-05-17 03:25:39 -06002773 help
2774 This enables two commands:
2775
2776 interrupts - enable or disable interrupts
2777 irqinfo - print device-specific interrupt information
Simon Glassfd9948c2017-05-17 03:25:40 -06002778
2779config CMD_KGDB
2780 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simek9d364412018-10-04 14:26:13 +02002781 depends on PPC
Simon Glassfd9948c2017-05-17 03:25:40 -06002782 help
2783 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2784 over a serial link for debugging purposes. This allows
2785 single-stepping, inspecting variables, etc. This is supported only
2786 on PowerPC at present.
2787
Simon Glass5684f8f2017-12-04 13:48:26 -07002788config CMD_LOG
2789 bool "log - Generation, control and access to logging"
Heinrich Schuchardt74bad682018-04-19 22:02:46 +02002790 select LOG
Sean Anderson304882e2020-10-27 19:55:38 -04002791 select GETOPT
Simon Glass5684f8f2017-12-04 13:48:26 -07002792 help
2793 This provides access to logging features. It allows the output of
2794 log data to be controlled to a limited extent (setting up the default
Simon Glass14c8a062017-12-04 13:48:27 -07002795 maximum log level for emitting of records). It also provides access
2796 to a command used for testing the log system.
Simon Glass5684f8f2017-12-04 13:48:26 -07002797
Simon Glass126cb792017-08-04 16:34:59 -06002798config CMD_TRACE
2799 bool "trace - Support tracing of function calls and timing"
Simon Glass84b77112021-11-24 09:26:39 -07002800 depends on TRACE
2801 default y
Simon Glass126cb792017-08-04 16:34:59 -06002802 help
2803 Enables a command to control using of function tracing within
2804 U-Boot. This allows recording of call traces including timing
2805 information. The command can write data to memory for exporting
Simon Glassbfce7fc2019-04-08 13:20:51 -06002806 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glass126cb792017-08-04 16:34:59 -06002807 details.
2808
Igor Opaniuk60291192018-06-03 21:56:39 +03002809config CMD_AVB
2810 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniuke0df0352018-07-17 14:33:25 +03002811 depends on AVB_VERIFY
Igor Opaniuk60291192018-06-03 21:56:39 +03002812 help
2813 Enables a "avb" command to perform verification of partitions using
2814 Android Verified Boot 2.0 functionality. It includes such subcommands:
2815 avb init - initialize avb2 subsystem
2816 avb read_rb - read rollback index
2817 avb write_rb - write rollback index
2818 avb is_unlocked - check device lock state
2819 avb get_uuid - read and print uuid of a partition
2820 avb read_part - read data from partition
2821 avb read_part_hex - read data from partition and output to stdout
2822 avb write_part - write data to partition
2823 avb verify - run full verification chain
Joel Peshkin369d87a2021-04-11 11:21:58 +02002824
2825config CMD_STACKPROTECTOR_TEST
2826 bool "Test command for stack protector"
2827 depends on STACKPROTECTOR
2828 help
2829 Enable stackprot_test command
2830 The stackprot_test command will force a stack overrun to test
2831 the stack smashing detection mechanisms.
2832
Simon Glass3423f212017-04-26 22:27:52 -06002833endmenu
2834
Heiko Schocher09dbb852016-09-21 07:58:19 +02002835config CMD_UBI
2836 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher09dbb852016-09-21 07:58:19 +02002837 select MTD_UBI
2838 help
2839 UBI is a software layer above MTD layer which admits use of LVM-like
2840 logical volumes on top of MTD devices, hides some complexities of
2841 flash chips like wear and bad blocks and provides some other useful
2842 capabilities. Please, consult the MTD web site for more details
2843 (www.linux-mtd.infradead.org). Activate this option if you want
2844 to use U-Boot UBI commands.
Miquel Raynal12f1ff12018-09-29 12:58:29 +02002845 It is also strongly encouraged to also enable CONFIG_MTD to get full
2846 partition support.
Heiko Schocher09dbb852016-09-21 07:58:19 +02002847
Philippe Reynes10d53222020-03-23 19:20:47 +01002848config CMD_UBI_RENAME
2849 bool "Enable rename"
2850 depends on CMD_UBI
Philippe Reynes10d53222020-03-23 19:20:47 +01002851 help
2852 Enable a "ubi" command to rename ubi volume:
2853 ubi rename <oldname> <newname>
2854
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002855config CMD_UBIFS
2856 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard1e6a0962017-03-03 14:53:22 +01002857 depends on CMD_UBI
Michal Simek84f3dec2018-07-23 15:55:13 +02002858 default y if CMD_UBI
Karl Beldan3418eeb2017-07-12 16:11:47 +00002859 select LZO
Pali Rohár67a8b272022-05-23 22:50:36 +02002860 select GZIP
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002861 help
2862 UBIFS is a file system for flash devices which works on top of UBI.
2863
Aswath Govindrajubb5b9fe2021-08-13 23:04:41 +05302864config MMC_SPEED_MODE_SET
2865 bool "set speed mode using mmc command"
2866 depends on CMD_MMC
Aswath Govindrajubb5b9fe2021-08-13 23:04:41 +05302867 help
2868 Enable setting speed mode using mmc rescan and mmc dev commands.
2869 The speed mode is provided as the last argument in these commands
2870 and is indicated using the index from enum bus_mode in
2871 include/mmc.h. A speed mode can be set only if it has already
2872 been enabled in the device tree.
Alexey Romanov68c4a372023-01-10 13:56:47 +03002873
2874config CMD_MESON
2875 bool "Amlogic Meson commands"
2876 depends on ARCH_MESON
2877 default y
2878 help
2879 Enable useful commands for the Meson Soc family developed by Amlogic Inc.
Simon Glassd4ebc6b2023-10-26 14:31:29 -04002880
2881endif