blob: 16030e34a12e388e4c3f7c27bf5718bb5f6855a1 [file] [log] [blame]
Simon Glass29499a02016-01-17 20:53:51 -07001menu "Command line interface"
2
Simon Glassaa34ef22016-03-13 19:07:28 -06003config CMDLINE
4 bool "Support U-Boot commands"
5 default y
6 help
7 Enable U-Boot's command-line functions. This provides a means
8 to enter commands into U-Boot for a wide variety of purposes. It
9 also allows scripts (containing commands) to be executed.
10 Various commands and command categorys can be indivdually enabled.
11 Depending on the number of commands enabled, this can add
12 substantially to the size of U-Boot.
13
Simon Glass29499a02016-01-17 20:53:51 -070014config HUSH_PARSER
15 bool "Use hush shell"
Simon Glassaa34ef22016-03-13 19:07:28 -060016 depends on CMDLINE
Simon Glass29499a02016-01-17 20:53:51 -070017 help
18 This option enables the "hush" shell (from Busybox) as command line
19 interpreter, thus enabling powerful command line syntax like
20 if...then...else...fi conditionals or `&&' and '||'
21 constructs ("shell scripts").
22
23 If disabled, you get the old, much simpler behaviour with a somewhat
24 smaller memory footprint.
25
Adam Ford58dbf862018-02-06 07:58:59 -060026config CMDLINE_EDITING
27 bool "Enable command line editing"
28 depends on CMDLINE
29 default y
30 help
31 Enable editing and History functions for interactive command line
32 input operations
33
Tom Rini24d32042022-03-30 18:07:14 -040034config CMDLINE_PS_SUPPORT
35 bool "Enable support for changing the command prompt string at run-time"
36 depends on HUSH_PARSER
37 help
38 Only static string in the prompt is supported so far. The string is
39 obtained from environment variables PS1 and PS2.
40
Adam Ford58dbf862018-02-06 07:58:59 -060041config AUTO_COMPLETE
42 bool "Enable auto complete using TAB"
43 depends on CMDLINE
44 default y
45 help
46 Enable auto completion of commands using TAB.
47
48config SYS_LONGHELP
49 bool "Enable long help messages"
50 depends on CMDLINE
51 default y if CMDLINE
52 help
53 Defined when you want long help messages included
54 Do not set this option when short of memory.
55
Simon Glass29499a02016-01-17 20:53:51 -070056config SYS_PROMPT
57 string "Shell prompt"
Michal Simekf048cae2019-09-25 12:32:41 +020058 default "Zynq> " if ARCH_ZYNQ
Michal Simek4f107432019-09-25 12:37:15 +020059 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass29499a02016-01-17 20:53:51 -070060 default "=> "
61 help
62 This string is displayed in the command line to the left of the
63 cursor.
64
Patrick Delaunaya81e9dc2020-10-26 09:31:42 +010065config SYS_PROMPT_HUSH_PS2
66 string "Hush shell secondary prompt"
67 depends on HUSH_PARSER
68 default "> "
69 help
70 This defines the secondary prompt string, which is
71 printed when the command interpreter needs more input
72 to complete a command. Usually "> ".
73
Tom Riniba5c2b02022-05-11 16:21:06 -040074config SYS_MAXARGS
75 int "Maximum number arguments accepted by commands"
76 default 16
77
Tom Riniae17fa32022-05-11 18:01:06 -040078config SYS_CBSIZE
79 int "Console input buffer size"
80 default 2048 if ARCH_TEGRA || ARCH_VERSAL || ARCH_ZYNQ || ARCH_ZYNQMP || \
81 RCAR_GEN3 || TARGET_SOCFPGA_SOC64
82 default 512 if ARCH_MX5 || ARCH_MX6 || ARCH_MX7 || FSL_LSCH2 || \
83 FSL_LSCH3 || X86
84 default 256 if M68K || PPC
85 default 1024
86
Tom Rinicbfa1392022-05-11 17:38:09 -040087config SYS_PBSIZE
88 int "Buffer size for console output"
Andre Przywara3f5873f2022-09-13 01:23:58 +010089 default 1024 if ARCH_SUNXI
Tom Rinicbfa1392022-05-11 17:38:09 -040090 default 1044
91
Christoph Muellner388b1452019-04-05 13:03:46 +020092config SYS_XTRACE
Sean Anderson1f863052021-03-04 11:34:23 -050093 bool "Command execution tracer"
Christoph Muellner388b1452019-04-05 13:03:46 +020094 depends on CMDLINE
95 default y if CMDLINE
96 help
97 This option enables the possiblity to print all commands before
98 executing them and after all variables are evaluated (similar
99 to Bash's xtrace/'set -x' feature).
100 To enable the tracer a variable "xtrace" needs to be defined in
101 the environment.
102
Sam Protsenko13c1f3a2017-09-28 12:33:45 -0700103config BUILD_BIN2C
104 bool
105
Simon Glass29499a02016-01-17 20:53:51 -0700106comment "Commands"
107
108menu "Info commands"
109
Simon Glassfaf08c72020-04-26 09:19:53 -0600110config CMD_ACPI
111 bool "acpi"
Heinrich Schuchardt97430462021-01-20 21:37:56 +0100112 depends on ACPIGEN
113 default y
Simon Glassfaf08c72020-04-26 09:19:53 -0600114 help
115 List and dump ACPI tables. ACPI (Advanced Configuration and Power
116 Interface) is used mostly on x86 for providing information to the
117 Operating System about devices in the system. The tables are set up
118 by the firmware, typically U-Boot but possibly an earlier firmware
119 module, if U-Boot is chain-loaded from something else. ACPI tables
120 can also include code, to perform hardware-specific tasks required
121 by the Operating Systems. This allows some amount of separation
122 between the firmware and OS, and is particularly useful when you
123 want to make hardware changes without the OS needing to be adjusted.
124
Bin Meng70b22cf2021-02-25 17:22:34 +0800125config CMD_ADDRMAP
126 bool "addrmap"
127 depends on ADDR_MAP
128 default y
129 help
130 List non-identity virtual-physical memory mappings for 32-bit CPUs.
131
Simon Glass29499a02016-01-17 20:53:51 -0700132config CMD_BDI
133 bool "bdinfo"
134 default y
135 help
136 Print board info
137
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900138config CMD_CONFIG
139 bool "config"
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900140 default SANDBOX
Michal Simek84f3dec2018-07-23 15:55:13 +0200141 select BUILD_BIN2C
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900142 help
143 Print ".config" contents.
144
145 If this option is enabled, the ".config" file contents are embedded
146 in the U-Boot image and can be printed on the console by the "config"
147 command. This provides information of which options are enabled on
148 the running U-Boot.
149
Simon Glass29499a02016-01-17 20:53:51 -0700150config CMD_CONSOLE
151 bool "coninfo"
152 default y
153 help
154 Print console devices and information.
155
156config CMD_CPU
157 bool "cpu"
Heinrich Schuchardt1cdcd0c2020-11-05 00:29:11 +0100158 depends on CPU
Simon Glass29499a02016-01-17 20:53:51 -0700159 help
160 Print information about available CPUs. This normally shows the
161 number of CPUs, type (e.g. manufacturer, architecture, product or
162 internal name) and clock frequency. Other information may be
163 available depending on the CPU driver.
164
165config CMD_LICENSE
166 bool "license"
Masahiro Yamada81680332017-01-30 11:12:08 +0900167 select BUILD_BIN2C
Simon Glass29499a02016-01-17 20:53:51 -0700168 help
169 Print GPL license text
170
Simon Glass8c501022019-12-06 21:41:54 -0700171config CMD_PMC
172 bool "pmc"
173 help
174 Provides access to the Intel Power-Management Controller (PMC) so
175 that its state can be examined. This does not currently support
176 changing the state but it is still useful for debugging and seeing
177 what is going on.
178
Christophe Leroye538bbc2017-08-04 16:34:40 -0600179config CMD_REGINFO
180 bool "reginfo"
181 depends on PPC
182 help
183 Register dump
184
Baruch Siachfad48982020-01-21 15:44:54 +0200185config CMD_TLV_EEPROM
186 bool "tlv_eeprom"
187 depends on I2C_EEPROM
Pali Rohár2bbf40b2022-05-30 10:42:35 +0200188 select CRC32
Baruch Siachfad48982020-01-21 15:44:54 +0200189 help
190 Display and program the system EEPROM data block in ONIE Tlvinfo
191 format. TLV stands for Type-Length-Value.
192
193config SPL_CMD_TLV_EEPROM
194 bool "tlv_eeprom for SPL"
195 depends on SPL_I2C_EEPROM
Simon Glass284cb9c2021-07-10 21:14:31 -0600196 select SPL_DRIVERS_MISC
Pali Rohár2bbf40b2022-05-30 10:42:35 +0200197 select SPL_CRC32
Baruch Siachfad48982020-01-21 15:44:54 +0200198 help
199 Read system EEPROM data block in ONIE Tlvinfo format from SPL.
200
Heinrich Schuchardt95492ae2020-08-20 19:43:39 +0200201config CMD_SBI
202 bool "sbi"
203 depends on RISCV_SMODE && SBI_V02
204 help
205 Display information about the SBI implementation.
206
Simon Glass29499a02016-01-17 20:53:51 -0700207endmenu
208
209menu "Boot commands"
210
211config CMD_BOOTD
212 bool "bootd"
213 default y
214 help
215 Run the command stored in the environment "bootcmd", i.e.
216 "bootd" does the same thing as "run bootcmd".
217
218config CMD_BOOTM
219 bool "bootm"
220 default y
221 help
222 Boot an application image from the memory.
223
Philippe Reynesae1f2ca2022-03-28 22:57:00 +0200224config CMD_BOOTM_PRE_LOAD
225 bool "enable pre-load on bootm"
226 depends on CMD_BOOTM
227 depends on IMAGE_PRE_LOAD
228 default n
229 help
230 Enable support of stage pre-load for the bootm command.
231 This stage allow to check or modify the image provided
232 to the bootm command.
233
Simon Glass379f4382022-04-24 23:31:10 -0600234config CMD_BOOTDEV
235 bool "bootdev"
236 depends on BOOTSTD
237 default y if BOOTSTD_FULL
238 help
239 Support listing available bootdevs (boot devices) which can provide an
240 OS to boot, as well as showing information about a particular one.
241
242 This command is not necessary for bootstd to work.
243
Simon Glass7617f492022-04-24 23:31:11 -0600244config CMD_BOOTFLOW
245 bool "bootflow"
246 depends on BOOTSTD
247 default y
248 help
249 Support scanning for bootflows available with the bootdevs. The
250 bootflows can optionally be booted.
251
252config CMD_BOOTFLOW_FULL
253 bool "bootflow - extract subcommands"
254 depends on BOOTSTD_FULL
255 default y if BOOTSTD_FULL
256 help
257 Add the ability to list the available bootflows, select one and obtain
258 information about it.
259
260 This command is not necessary for bootstd to work.
261
Simon Glassc49fd722022-04-24 23:31:12 -0600262config CMD_BOOTMETH
263 bool "bootmeth"
264 depends on BOOTSTD
265 default y if BOOTSTD_FULL
266 help
267 Support listing available bootmethds (methods used to boot an
268 Operating System), as well as selecting the order that the bootmeths
269 are used.
270
271 This command is not necessary for bootstd to work.
272
Cristian Ciocaltea6aca5982019-12-24 18:05:39 +0200273config BOOTM_EFI
274 bool "Support booting UEFI FIT images"
275 depends on CMD_BOOTEFI && CMD_BOOTM && FIT
276 default y
277 help
278 Support booting UEFI FIT images via the bootm command.
279
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500280config CMD_BOOTZ
281 bool "bootz"
282 help
283 Boot the Linux zImage
284
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400285config CMD_BOOTI
286 bool "booti"
Atish Patra583b4092019-05-06 17:49:39 -0700287 depends on ARM64 || RISCV
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400288 default y
289 help
290 Boot an AArch64 Linux Kernel image from memory.
291
Tom Rini9a102072019-09-20 17:36:50 -0400292config BOOTM_LINUX
293 bool "Support booting Linux OS images"
294 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
295 default y
296 help
297 Support booting the Linux kernel directly via a command such as bootm
298 or booti or bootz.
299
300config BOOTM_NETBSD
301 bool "Support booting NetBSD (non-EFI) loader images"
302 depends on CMD_BOOTM
303 default y
304 help
305 Support booting NetBSD via the bootm command.
306
307config BOOTM_OPENRTOS
308 bool "Support booting OPENRTOS / FreeRTOS images"
309 depends on CMD_BOOTM
310 help
311 Support booting OPENRTOS / FreeRTOS via the bootm command.
312
313config BOOTM_OSE
314 bool "Support booting Enea OSE images"
Tom Rini1d0b1fc2019-12-05 18:46:11 -0500315 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini9a102072019-09-20 17:36:50 -0400316 depends on CMD_BOOTM
317 help
318 Support booting Enea OSE images via the bootm command.
319
320config BOOTM_PLAN9
321 bool "Support booting Plan9 OS images"
322 depends on CMD_BOOTM
323 default y
324 help
325 Support booting Plan9 images via the bootm command.
326
327config BOOTM_RTEMS
328 bool "Support booting RTEMS OS images"
329 depends on CMD_BOOTM
330 default y
331 help
332 Support booting RTEMS images via the bootm command.
333
Simon Glasse5a7b772022-07-30 15:52:37 -0600334config CMD_VBE
335 bool "vbe - Verified Boot for Embedded"
336 depends on BOOTMETH_VBE
Simon Glassd39d5b22022-08-23 10:14:05 -0700337 default y if BOOTSTD_FULL
Simon Glasse5a7b772022-07-30 15:52:37 -0600338 help
339 Provides various subcommands related to VBE, such as listing the
340 available methods, looking at the state and changing which method
341 is used to boot. Updating the parameters is not currently
342 supported.
343
Tom Rini9a102072019-09-20 17:36:50 -0400344config BOOTM_VXWORKS
345 bool "Support booting VxWorks OS images"
346 depends on CMD_BOOTM
347 default y
348 help
349 Support booting VxWorks images via the bootm command.
350
Tom Rinif3c2f992022-06-25 19:29:46 -0400351config SYS_BOOTM_LEN
352 hex "Maximum size of a decompresed OS image"
353 depends on CMD_BOOTM || CMD_BOOTI || CMD_BOOTZ
354 default 0x4000000 if PPC || ARM64
355 default 0x1000000 if X86 || ARCH_MX6 || ARCH_MX7
356 default 0x800000
357 help
358 This is the maximum size of the buffer that is used to decompress the OS
359 image in to, if passing a compressed image to bootm/booti/bootz.
360
AKASHI Takahiro8d95b6e2019-11-08 10:32:15 +0900361config CMD_BOOTEFI
362 bool "bootefi"
363 depends on EFI_LOADER
364 default y
365 help
366 Boot an EFI image from memory.
367
Alexander Grafb5483512016-11-17 22:40:10 +0100368config CMD_BOOTEFI_HELLO_COMPILE
369 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardt0f675d92019-11-07 08:05:17 +0100370 depends on CMD_BOOTEFI && !CPU_V7M
Alexander Grafb5483512016-11-17 22:40:10 +0100371 default y
372 help
373 This compiles a standard EFI hello world application with U-Boot so
374 that it can be used with the test/py testing framework. This is useful
375 for testing that EFI is working at a basic level, and for bringing
376 up EFI support on a new architecture.
377
378 No additional space will be required in the resulting U-Boot binary
379 when this option is enabled.
380
Simon Glassfac4ced2016-11-07 08:47:08 -0700381config CMD_BOOTEFI_HELLO
382 bool "Allow booting a standard EFI hello world for testing"
Alexander Grafb5483512016-11-17 22:40:10 +0100383 depends on CMD_BOOTEFI_HELLO_COMPILE
Heinrich Schuchardt9ad6e1e2020-07-13 07:33:40 +0200384 default y if CMD_BOOTEFI_SELFTEST
Simon Glassfac4ced2016-11-07 08:47:08 -0700385 help
386 This adds a standard EFI hello world application to U-Boot so that
387 it can be used with the 'bootefi hello' command. This is useful
388 for testing that EFI is working at a basic level, and for bringing
389 up EFI support on a new architecture.
390
Heinrich Schuchardtd33ae3e2017-09-15 10:06:11 +0200391source lib/efi_selftest/Kconfig
392
Tom Rini697f4732016-11-29 09:14:56 -0500393config CMD_BOOTMENU
394 bool "bootmenu"
395 select MENU
Masahisa Kojima015405a2022-04-28 17:09:41 +0900396 select CHARSET
Tom Rini697f4732016-11-29 09:14:56 -0500397 help
398 Add an ANSI terminal boot menu command.
399
Eugeniu Roscaee98dac2019-12-24 17:51:06 +0100400config CMD_ADTIMG
401 bool "adtimg"
Sam Protsenko92f95bb2018-08-16 23:34:13 +0300402 help
403 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
404 image into RAM, dump image structure information, etc. Those dtb/dtbo
405 files should be merged in one dtb further, which needs to be passed to
406 the kernel, as part of a boot process.
407
Sam Protsenko035502e2020-01-24 17:53:42 +0200408config CMD_ABOOTIMG
409 bool "abootimg"
410 depends on ANDROID_BOOT_IMAGE
411 help
412 Android Boot Image manipulation commands. Allows one to extract
413 images contained in boot.img, like kernel, ramdisk, dtb, etc, and
414 obtain corresponding meta-information from boot.img.
415
Sam Protsenkod8efc7c2020-01-24 17:53:43 +0200416 See doc/android/boot-image.rst for details.
417
Simon Glass29499a02016-01-17 20:53:51 -0700418config CMD_ELF
419 bool "bootelf, bootvx"
420 default y
Keerthy76f361a2020-02-12 13:55:03 +0530421 select LIB_ELF
Simon Glass29499a02016-01-17 20:53:51 -0700422 help
423 Boot an ELF/vxWorks image from the memory.
424
Michal Simekf168c652016-04-06 20:28:04 +0200425config CMD_FDT
426 bool "Flattened Device Tree utility commands"
427 default y
428 depends on OF_LIBFDT
429 help
430 Do FDT related setup before booting into the Operating System.
431
Kory Maincent7444a7d2021-05-04 19:31:22 +0200432config SUPPORT_EXTENSION_SCAN
433 bool
434
435config CMD_EXTENSION
436 bool "Extension board management command"
437 select CMD_FDT
438 depends on SUPPORT_EXTENSION_SCAN
439 help
440 Enables the "extension" command, which allows to detect
441 extension boards connected to the system, and apply
442 corresponding Device Tree overlays.
443
Simon Glass29499a02016-01-17 20:53:51 -0700444config CMD_GO
445 bool "go"
446 default y
447 help
448 Start an application at a given address.
449
450config CMD_RUN
451 bool "run"
452 default y
453 help
454 Run the command in the given environment variable.
455
456config CMD_IMI
457 bool "iminfo"
458 default y
459 help
460 Print header information for application image.
461
462config CMD_IMLS
463 bool "imls"
Simon Glass29499a02016-01-17 20:53:51 -0700464 help
465 List all images found in flash
466
467config CMD_XIMG
468 bool "imxtract"
469 default y
470 help
471 Extract a part of a multi-image.
472
Roger Knechtf841bb82022-09-03 13:15:04 +0000473config CMD_XXD
474 bool "xxd"
475 help
476 Print file as hexdump to standard output
477
Simon Glassc6567fa2017-08-04 16:34:48 -0600478config CMD_SPL
479 bool "spl export - Export boot information for Falcon boot"
480 depends on SPL
481 help
482 Falcon mode allows booting directly from SPL into an Operating
483 System such as Linux, thus skipping U-Boot proper. See
484 doc/README.falcon for full information about how to use this
485 command.
486
Simon Glassc034e3d2017-08-04 16:34:49 -0600487config CMD_SPL_NAND_OFS
Lukasz Majewski10797442019-05-16 16:01:36 +0200488 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewskie73ce322019-05-16 16:01:35 +0200489 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Simon Glassc034e3d2017-08-04 16:34:49 -0600490 default 0
491 help
492 This provides the offset of the command line arguments for Linux
493 when booting from NAND in Falcon mode. See doc/README.falcon
494 for full information about how to use this option (and also see
495 board/gateworks/gw_ventana/README for an example).
496
Lukasz Majewski06d92532019-05-16 16:01:37 +0200497config CMD_SPL_NOR_OFS
498 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
499 depends on CMD_SPL && SPL_NOR_SUPPORT
500 default 0
501 help
502 This provides the offset of the command line arguments or dtb for
503 Linux when booting from NOR in Falcon mode.
504
Simon Glass51ef45a2017-08-04 16:34:50 -0600505config CMD_SPL_WRITE_SIZE
506 hex "Size of argument area"
507 depends on CMD_SPL
508 default 0x2000
509 help
510 This provides the size of the command-line argument area in NAND
511 flash used by Falcon-mode boot. See the documentation until CMD_SPL
512 for detail.
513
Simon Glassa18b9692017-08-04 16:34:57 -0600514config CMD_THOR_DOWNLOAD
515 bool "thor - TIZEN 'thor' download"
Marek Szyprowskide4752e2019-10-02 12:29:08 +0200516 select DFU
Simon Glassa18b9692017-08-04 16:34:57 -0600517 help
518 Implements the 'thor' download protocol. This is a way of
519 downloading a software update over USB from an attached host.
520 There is no documentation about this within the U-Boot source code
521 but you should be able to find something on the interwebs.
522
Simon Glass01d097d2017-08-04 16:35:03 -0600523config CMD_ZBOOT
524 bool "zboot - x86 boot command"
525 help
526 With x86 machines it is common to boot a bzImage file which
527 contains both a kernel and a setup.bin file. The latter includes
528 configuration information from the dark ages which x86 boards still
529 need to pick things out of.
530
531 Consider using FIT in preference to this since it supports directly
532 booting both 32- and 64-bit kernels, as well as secure boot.
533 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
534
Simon Glass29499a02016-01-17 20:53:51 -0700535endmenu
536
537menu "Environment commands"
538
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500539config CMD_ASKENV
540 bool "ask for env variable"
541 help
542 Ask for environment variable
543
Simon Glass29499a02016-01-17 20:53:51 -0700544config CMD_EXPORTENV
545 bool "env export"
546 default y
547 help
548 Export environments.
549
550config CMD_IMPORTENV
551 bool "env import"
552 default y
553 help
554 Import environments.
555
556config CMD_EDITENV
557 bool "editenv"
558 default y
559 help
560 Edit environment variable.
561
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500562config CMD_GREPENV
563 bool "search env"
564 help
565 Allow for searching environment variables
566
Simon Glass29499a02016-01-17 20:53:51 -0700567config CMD_SAVEENV
568 bool "saveenv"
569 default y
570 help
571 Save all environment variables into the compiled-in persistent
572 storage.
573
Frank Wunderlich33afa932019-06-29 11:36:19 +0200574config CMD_ERASEENV
575 bool "eraseenv"
Frank Wunderlich33afa932019-06-29 11:36:19 +0200576 depends on CMD_SAVEENV
577 help
578 Erase environment variables from the compiled-in persistent
579 storage.
580
Simon Glass29499a02016-01-17 20:53:51 -0700581config CMD_ENV_EXISTS
582 bool "env exists"
583 default y
584 help
585 Check if a variable is defined in the environment for use in
586 shell scripting.
587
Simon Glass84d67c72017-05-17 03:25:13 -0600588config CMD_ENV_CALLBACK
589 bool "env callbacks - print callbacks and their associated variables"
590 help
591 Some environment variable have callbacks defined by
592 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
593 For example changing "baudrate" adjust the serial baud rate. This
594 command lists the currently defined callbacks.
595
Simon Glassc31e2d82017-05-17 03:25:14 -0600596config CMD_ENV_FLAGS
597 bool "env flags -print variables that have non-default flags"
598 help
599 Some environment variables have special flags that control their
600 behaviour. For example, serial# can only be written once and cannot
601 be deleted. This command shows the variables that have special
602 flags.
603
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900604config CMD_NVEDIT_EFI
605 bool "env [set|print] -e - set/print UEFI variables"
606 depends on EFI_LOADER
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900607 imply HEXDUMP
608 help
609 UEFI variables are encoded as some form of U-Boot variables.
610 If enabled, we are allowed to set/print UEFI variables using
611 "env" command with "-e" option without knowing details.
612
Samuel Dionne-Riel46127db2021-12-20 18:31:56 -0500613config CMD_NVEDIT_INDIRECT
614 bool "env indirect - Sets environment value from another"
615
Leo Ruan7450b872019-05-24 17:20:19 +0200616config CMD_NVEDIT_INFO
617 bool "env info - print or evaluate environment information"
618 help
619 Print environment information:
620 - env_valid : is environment valid
621 - env_ready : is environment imported into hash table
622 - env_use_default : is default environment used
623
624 This command can be optionally used for evaluation in scripts:
625 [-d] : evaluate whether default environment is used
626 [-p] : evaluate whether environment can be persisted
Patrick Delaunay109ec8f2020-06-19 14:03:34 +0200627 [-q] : quiet output
Leo Ruan7450b872019-05-24 17:20:19 +0200628 The result of multiple evaluations will be combined with AND.
629
Patrick Delaunay748e42e2020-07-28 11:51:20 +0200630config CMD_NVEDIT_LOAD
631 bool "env load"
632 help
633 Load all environment variables from the compiled-in persistent
634 storage.
635
Patrick Delaunaya59f7ec2020-07-28 11:51:21 +0200636config CMD_NVEDIT_SELECT
637 bool "env select"
638 help
639 Select the compiled-in persistent storage of environment variables.
640
Simon Glass29499a02016-01-17 20:53:51 -0700641endmenu
642
643menu "Memory commands"
644
Mario Six8a4f6642018-03-28 14:39:18 +0200645config CMD_BINOP
646 bool "binop"
647 help
648 Compute binary operations (xor, or, and) of byte arrays of arbitrary
649 size from memory and store the result in memory or the environment.
650
Simon Glassb936a972020-09-19 18:49:26 -0600651config CMD_BLOBLIST
652 bool "bloblist"
653 default y if BLOBLIST
654 help
655 Show information about the bloblist, a collection of binary blobs
656 held in memory that persist between SPL and U-Boot. In the case of
657 x86 devices the bloblist can be used to hold ACPI tables so that they
658 remain available in memory.
659
Simon Glass29499a02016-01-17 20:53:51 -0700660config CMD_CRC32
661 bool "crc32"
662 default y
Michal Simek84f3dec2018-07-23 15:55:13 +0200663 select HASH
Simon Glass29499a02016-01-17 20:53:51 -0700664 help
665 Compute CRC32.
666
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100667config CRC32_VERIFY
668 bool "crc32 -v"
669 depends on CMD_CRC32
670 help
671 Add -v option to verify data against a crc32 checksum.
672
Simon Glass4590d4e2017-05-17 03:25:10 -0600673config CMD_EEPROM
674 bool "eeprom - EEPROM subsystem"
675 help
676 (deprecated, needs conversion to driver model)
677 Provides commands to read and write EEPROM (Electrically Erasable
678 Programmable Read Only Memory) chips that are connected over an
679 I2C bus.
680
681config CMD_EEPROM_LAYOUT
682 bool "Enable layout-aware eeprom commands"
683 depends on CMD_EEPROM
684 help
685 (deprecated, needs conversion to driver model)
686 When enabled, additional eeprom sub-commands become available.
687
688 eeprom print - prints the contents of the eeprom in a human-readable
689 way (eeprom layout fields, and data formatted to be fit for human
690 consumption).
691
692 eeprom update - allows user to update eeprom fields by specifying
693 the field name, and providing the new data in a human readable format
694 (same format as displayed by the eeprom print command).
695
696 Both commands can either auto detect the layout, or be told which
697 layout to use.
698
699 Feature API:
700 __weak int parse_layout_version(char *str)
701 - override to provide your own layout name parsing
702 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
703 int layout_version);
704 - override to setup the layout metadata based on the version
705 __weak int eeprom_layout_detect(unsigned char *data)
706 - override to provide your own algorithm for detecting layout
707 version
708 eeprom_field.c
709 - contains various printing and updating functions for common
710 types of eeprom fields. Can be used for defining
711 custom layouts.
712
713config EEPROM_LAYOUT_HELP_STRING
714 string "Tells user what layout names are supported"
715 depends on CMD_EEPROM_LAYOUT
716 default "<not defined>"
717 help
718 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
719 command's help.
720
Tom Rinifaed5672021-08-17 17:59:45 -0400721config SYS_I2C_EEPROM_BUS
722 int "I2C bus of the EEPROM device."
723 depends on CMD_EEPROM
724 default 0
725
726config SYS_I2C_EEPROM_ADDR_LEN
727 int "Length in bytes of the EEPROM memory array address"
728 depends on CMD_EEPROM || ID_EEPROM
729 default 1
730 range 1 2
731 help
732 Note: This is NOT the chip address length!
733
734config SYS_EEPROM_SIZE
735 depends on CMD_EEPROM
736 int "Size in bytes of the EEPROM device"
737 default 256
738
739config SYS_EEPROM_PAGE_WRITE_BITS
740 int "Number of bits used to address bytes in a single page"
741 depends on CMD_EEPROM
742 default 8
743 help
744 The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS.
745 A 64 byte page, for example would require six bits.
746
747config SYS_EEPROM_PAGE_WRITE_DELAY_MS
748 int "Number of milliseconds to delay between page writes"
749 depends on CMD_EEPROM || CMD_I2C
750 default 0
751
Simon Glass26c20532017-08-04 16:34:51 -0600752config LOOPW
753 bool "loopw"
754 help
755 Infinite write loop on address range
756
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000757config CMD_MD5SUM
758 bool "md5sum"
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000759 select MD5
760 help
761 Compute MD5 checksum.
762
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100763config MD5SUM_VERIFY
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000764 bool "md5sum -v"
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000765 depends on CMD_MD5SUM
766 help
767 Add -v option to verify data against an MD5 checksum.
768
Simon Glass26c20532017-08-04 16:34:51 -0600769config CMD_MEMINFO
770 bool "meminfo"
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100771 help
Simon Glass26c20532017-08-04 16:34:51 -0600772 Display memory information.
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100773
Simon Glass26c20532017-08-04 16:34:51 -0600774config CMD_MEMORY
775 bool "md, mm, nm, mw, cp, cmp, base, loop"
776 default y
Simon Glass29499a02016-01-17 20:53:51 -0700777 help
Simon Glass26c20532017-08-04 16:34:51 -0600778 Memory commands.
779 md - memory display
780 mm - memory modify (auto-incrementing address)
781 nm - memory modify (constant address)
782 mw - memory write (fill)
783 cp - memory copy
784 cmp - memory compare
785 base - print or set address offset
786 loop - initialize loop on address range
Simon Glass29499a02016-01-17 20:53:51 -0700787
Simon Glass573c0fa2020-07-28 19:41:14 -0600788config CMD_MEM_SEARCH
Simon Glass19038de2020-06-02 19:26:49 -0600789 bool "ms - Memory search"
790 help
791 Memory-search command
792
793 This allows searching through a region of memory looking for hex
794 data (byte, 16-bit word, 32-bit long, also 64-bit on machines that
795 support it). It is also possible to search for a string. The
796 command accepts a memory range and a list of values to search for.
797 The values need to appear in memory in the same order they are given
798 in the command. At most 10 matches can be returned at a time, but
799 pressing return will show the next 10 matches. Environment variables
800 are set for use with scripting (memmatches, memaddr, mempos).
801
Joel Johnsondb5a97e2020-01-29 09:17:18 -0700802config CMD_MX_CYCLIC
Adam Ford1ef0c492019-08-14 07:54:34 -0500803 bool "Enable cyclic md/mw commands"
804 depends on CMD_MEMORY
805 help
806 Add the "mdc" and "mwc" memory commands. These are cyclic
807 "md/mw" commands.
808 Examples:
809
810 => mdc.b 10 4 500
811 This command will print 4 bytes (10,11,12,13) each 500 ms.
812
813 => mwc.l 100 12345678 10
814 This command will write 12345678 to address 100 all 10 ms.
815
Jean-Jacques Hiblotd3f09372019-07-02 14:23:26 +0200816config CMD_RANDOM
817 bool "random"
818 default y
819 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
820 help
821 random - fill memory with random data
822
Simon Glass29499a02016-01-17 20:53:51 -0700823config CMD_MEMTEST
824 bool "memtest"
825 help
826 Simple RAM read/write test.
827
Mario Six00518992018-03-28 14:38:14 +0200828if CMD_MEMTEST
829
830config SYS_ALT_MEMTEST
831 bool "Alternative test"
832 help
833 Use a more complete alternative memory test.
834
Ralph Siemsen1c39c102020-09-09 12:10:00 -0400835if SYS_ALT_MEMTEST
836
837config SYS_ALT_MEMTEST_BITFLIP
838 bool "Bitflip test"
839 default y
840 help
841 The alternative memory test includes bitflip test since 2020.07.
842 The bitflip test significantly increases the overall test time.
843 Bitflip test can optionally be disabled here.
844
845endif
846
Ashok Reddy Soma41e8edf2020-05-04 15:26:21 +0200847config SYS_MEMTEST_START
848 hex "default start address for mtest"
Tom Rinic2ac2f62021-12-12 22:12:29 -0500849 default 0x0
Ashok Reddy Soma41e8edf2020-05-04 15:26:21 +0200850 help
851 This is the default start address for mtest for simple read/write
852 test. If no arguments are given to mtest, default address is used
853 as start address.
854
855config SYS_MEMTEST_END
856 hex "default end address for mtest"
857 default 0x1000
858 help
859 This is the default end address for mtest for simple read/write
860 test. If no arguments are given to mtest, default address is used
861 as end address.
862
Mario Six00518992018-03-28 14:38:14 +0200863endif
864
Simon Glass26c20532017-08-04 16:34:51 -0600865config CMD_SHA1SUM
866 bool "sha1sum"
867 select SHA1
Simon Glass29499a02016-01-17 20:53:51 -0700868 help
Simon Glass26c20532017-08-04 16:34:51 -0600869 Compute SHA1 checksum.
870
871config SHA1SUM_VERIFY
872 bool "sha1sum -v"
873 depends on CMD_SHA1SUM
874 help
875 Add -v option to verify data against a SHA1 checksum.
Simon Glass29499a02016-01-17 20:53:51 -0700876
Simon Glass8e83ca82017-08-04 16:34:52 -0600877config CMD_STRINGS
878 bool "strings - display strings in memory"
879 help
880 This works similarly to the Unix 'strings' command except that it
881 works with a memory range. String of printable characters found
882 within the range are displayed. The minimum number of characters
883 for a sequence to be considered a string can be provided.
884
Simon Glassbecaa8f2017-05-17 03:25:43 -0600885endmenu
886
887menu "Compression commands"
888
889config CMD_LZMADEC
890 bool "lzmadec"
Tom Rini3237bc62017-09-29 14:32:44 -0400891 default y if CMD_BOOTI
Simon Glassbecaa8f2017-05-17 03:25:43 -0600892 select LZMA
893 help
894 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
895 image from memory.
896
Yusuke Ashidukaa20545d2020-02-20 20:48:01 +0900897config CMD_UNLZ4
898 bool "unlz4"
899 default y if CMD_BOOTI
900 select LZ4
901 help
902 Support decompressing an LZ4 image from memory region.
903
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900904config CMD_UNZIP
905 bool "unzip"
Tom Rini3237bc62017-09-29 14:32:44 -0400906 default y if CMD_BOOTI
Michael Wallef253f2c2020-05-22 14:07:35 +0200907 select GZIP
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900908 help
909 Uncompress a zip-compressed memory region.
910
911config CMD_ZIP
912 bool "zip"
Michael Walle3a6e3512020-05-22 14:07:36 +0200913 select GZIP_COMPRESSED
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900914 help
915 Compress a memory region with zlib deflate method.
916
Simon Glass29499a02016-01-17 20:53:51 -0700917endmenu
918
919menu "Device access commands"
920
Simon Glass036bbb12017-08-04 16:34:28 -0600921config CMD_ARMFLASH
922 #depends on FLASH_CFI_DRIVER
923 bool "armflash"
924 help
925 ARM Ltd reference designs flash partition access
926
Neil Armstrong49261c72018-04-27 15:17:57 +0200927config CMD_ADC
928 bool "adc - Access Analog to Digital Converters info and data"
929 select ADC
Michal Simek463c3862020-08-19 10:44:17 +0200930 depends on DM_REGULATOR
Neil Armstrong49261c72018-04-27 15:17:57 +0200931 help
932 Shows ADC device info and permit printing one-shot analog converted
933 data from a named Analog to Digital Converter.
934
Eugeniu Rosca35c34be2019-05-23 17:32:22 +0200935config CMD_BCB
936 bool "bcb"
937 depends on MMC
938 depends on PARTITIONS
939 help
940 Read/modify/write the fields of Bootloader Control Block, usually
941 stored on the flash "misc" partition with its structure defined in:
942 https://android.googlesource.com/platform/bootable/recovery/+/master/
943 bootloader_message/include/bootloader_message/bootloader_message.h
944
945 Some real-life use-cases include (but are not limited to):
946 - Determine the "boot reason" (and act accordingly):
947 https://source.android.com/devices/bootloader/boot-reason
948 - Get/pass a list of commands from/to recovery:
949 https://android.googlesource.com/platform/bootable/recovery
950 - Inspect/dump the contents of the BCB fields
951
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200952config CMD_BIND
953 bool "bind/unbind - Bind or unbind a device to/from a driver"
954 depends on DM
955 help
956 Bind or unbind a device to/from a driver from the command line.
957 This is useful in situations where a device may be handled by several
958 drivers. For example, this can be used to bind a UDC to the usb ether
959 gadget driver from the command line.
960
Simon Glass04ac6f12017-04-26 22:28:02 -0600961config CMD_CLK
962 bool "clk - Show clock frequencies"
963 help
964 (deprecated)
965 Shows clock frequences by calling a sock_clk_dump() hook function.
966 This is depreated in favour of using the CLK uclass and accessing
967 clock values from associated drivers. However currently no command
968 exists for this.
969
Simon Glass036bbb12017-08-04 16:34:28 -0600970config CMD_DEMO
971 bool "demo - Demonstration commands for driver model"
972 depends on DM
973 help
974 Provides a 'demo' command which can be used to play around with
975 driver model. To use this properly you will need to enable one or
976 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
977 Otherwise you will always get an empty list of devices. The demo
978 devices are defined in the sandbox device tree, so the easiest
979 option is to use sandbox and pass the -d point to sandbox's
980 u-boot.dtb file.
981
982config CMD_DFU
983 bool "dfu"
Marek Vasutea84f802018-02-16 16:41:17 +0100984 select DFU
Simon Glass036bbb12017-08-04 16:34:28 -0600985 help
986 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass663b0cc2017-08-04 16:35:06 -0600987 class device via USB. This command requires that the "dfu_alt_info"
988 environment variable be set and define the alt settings to expose to
989 the host.
Simon Glass036bbb12017-08-04 16:34:28 -0600990
Simon Glass29499a02016-01-17 20:53:51 -0700991config CMD_DM
992 bool "dm - Access to driver model information"
993 depends on DM
Simon Glass29499a02016-01-17 20:53:51 -0700994 help
995 Provides access to driver model data structures and information,
996 such as a list of devices, list of uclasses and the state of each
997 device (e.g. activated). This is not required for operation, but
998 can be useful to see the state of driver model for debugging or
999 interest.
1000
Alex Kiernan65de9552018-05-29 15:30:39 +00001001config CMD_FASTBOOT
1002 bool "fastboot - Android fastboot support"
1003 depends on FASTBOOT
1004 help
1005 This enables the command "fastboot" which enables the Android
1006 fastboot mode for the platform. Fastboot is a protocol for
1007 downloading images, flashing and device control used on
Alex Kiernand5aa57c2018-05-29 15:30:53 +00001008 Android devices. Fastboot requires either the network stack
1009 enabled or support for acting as a USB device.
Alex Kiernan65de9552018-05-29 15:30:39 +00001010
Sam Protsenkocd43fa12020-01-24 17:53:44 +02001011 See doc/android/fastboot.rst for more information.
Alex Kiernan65de9552018-05-29 15:30:39 +00001012
Simon Glass036bbb12017-08-04 16:34:28 -06001013config CMD_FLASH
1014 bool "flinfo, erase, protect"
1015 default y
Miquel Raynald2418202019-10-25 19:39:30 +02001016 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass036bbb12017-08-04 16:34:28 -06001017 help
1018 NOR flash support.
1019 flinfo - print FLASH memory information
1020 erase - FLASH memory
1021 protect - enable or disable FLASH write protection
1022
1023config CMD_FPGA
1024 bool "fpga"
Tuomas Tynkkynen5ca16b32018-01-27 20:28:40 +02001025 depends on FPGA
Simon Glass036bbb12017-08-04 16:34:28 -06001026 default y
1027 help
1028 FPGA support.
1029
1030config CMD_FPGA_LOADBP
1031 bool "fpga loadbp - load partial bitstream (Xilinx only)"
1032 depends on CMD_FPGA
1033 help
1034 Supports loading an FPGA device from a bitstream buffer containing
1035 a partial bitstream.
1036
1037config CMD_FPGA_LOADFS
1038 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
1039 depends on CMD_FPGA
1040 help
1041 Supports loading an FPGA device from a FAT filesystem.
1042
1043config CMD_FPGA_LOADMK
1044 bool "fpga loadmk - load bitstream from image"
1045 depends on CMD_FPGA
1046 help
1047 Supports loading an FPGA device from a image generated by mkimage.
1048
1049config CMD_FPGA_LOADP
1050 bool "fpga loadp - load partial bitstream"
1051 depends on CMD_FPGA
1052 help
1053 Supports loading an FPGA device from a bitstream buffer containing
1054 a partial bitstream.
1055
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301056config CMD_FPGA_LOAD_SECURE
Oleksandr Suvorovfbe31bb2022-07-22 17:16:02 +03001057 bool "fpga loads - loads secure bitstreams"
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301058 depends on CMD_FPGA
Oleksandr Suvorovfbe31bb2022-07-22 17:16:02 +03001059 select FPGA_LOAD_SECURE
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301060 help
1061 Enables the fpga loads command which is used to load secure
1062 (authenticated or encrypted or both) bitstreams on to FPGA.
1063
Simon Glass036bbb12017-08-04 16:34:28 -06001064config CMD_FPGAD
1065 bool "fpgad - dump FPGA registers"
1066 help
1067 (legacy, needs conversion to driver model)
1068 Provides a way to dump FPGA registers by calling the board-specific
1069 fpga_get_reg() function. This functions similarly to the 'md'
1070 command.
1071
1072config CMD_FUSE
1073 bool "fuse - support for the fuse subssystem"
1074 help
1075 (deprecated - needs conversion to driver model)
1076 This allows reading, sensing, programming or overriding fuses
1077 which control the behaviour of the device. The command uses the
1078 fuse_...() API.
1079
1080config CMD_GPIO
1081 bool "gpio"
1082 help
1083 GPIO support.
1084
Diego Rondini5ffde632022-04-11 12:02:09 +02001085config CMD_GPIO_READ
1086 bool "gpio read - save GPIO value to variable"
1087 depends on CMD_GPIO
1088 help
1089 Enables the 'gpio read' command that saves the value
1090 of a GPIO pin to a variable.
1091
Pragnesh Patel1d5955f2020-12-22 11:30:05 +05301092config CMD_PWM
1093 bool "pwm"
1094 depends on DM_PWM
1095 help
1096 Control PWM channels, this allows invert/config/enable/disable PWM channels.
1097
Simon Glass036bbb12017-08-04 16:34:28 -06001098config CMD_GPT
1099 bool "GPT (GUID Partition Table) command"
Simon Glass036bbb12017-08-04 16:34:28 -06001100 select EFI_PARTITION
Michal Simek84f3dec2018-07-23 15:55:13 +02001101 select PARTITION_UUIDS
Maxime Ripard24336442017-08-24 11:52:32 +02001102 imply RANDOM_UUID
Simon Glass036bbb12017-08-04 16:34:28 -06001103 help
1104 Enable the 'gpt' command to ready and write GPT style partition
1105 tables.
1106
Maxime Ripard24336442017-08-24 11:52:32 +02001107config RANDOM_UUID
1108 bool "GPT Random UUID generation"
Adam Ford70c8f052018-02-06 12:14:28 -06001109 select LIB_UUID
Maxime Ripard24336442017-08-24 11:52:32 +02001110 help
1111 Enable the generation of partitions with random UUIDs if none
1112 are provided.
1113
Simon Glass036bbb12017-08-04 16:34:28 -06001114config CMD_GPT_RENAME
1115 bool "GPT partition renaming commands"
1116 depends on CMD_GPT
1117 help
1118 Enables the 'gpt' command to interchange names on two GPT
1119 partitions via the 'gpt swap' command or to rename single
1120 partitions via the 'rename' command.
Simon Glass29499a02016-01-17 20:53:51 -07001121
Simon Glassa831eca2017-05-17 03:25:29 -06001122config CMD_IDE
1123 bool "ide - Support for IDE drivers"
Simon Glassb569a012017-05-17 03:25:30 -06001124 select IDE
Simon Glassa831eca2017-05-17 03:25:29 -06001125 help
1126 Provides an 'ide' command which allows accessing the IDE drive,
Vagrant Cascadian33203c32021-12-21 13:06:56 -08001127 resetting the IDE interface, printing the partition table and
Simon Glassa831eca2017-05-17 03:25:29 -06001128 geting device info. It also enables the 'diskboot' command which
1129 permits booting from an IDE drive.
1130
Simon Glass3bebbe62017-05-17 03:25:34 -06001131config CMD_IO
1132 bool "io - Support for performing I/O accesses"
1133 help
1134 Provides an 'iod' command to display I/O space and an 'iow' command
1135 to write values to the I/O space. This can be useful for manually
1136 checking the state of devices during boot when debugging device
1137 drivers, etc.
1138
Simon Glass30daabc2017-05-17 03:25:36 -06001139config CMD_IOTRACE
1140 bool "iotrace - Support for tracing I/O activity"
1141 help
1142 Provides an 'iotrace' command which supports recording I/O reads and
1143 writes in a trace buffer in memory . It also maintains a checksum
1144 of the trace records (even if space is exhausted) so that the
1145 sequence of I/O accesses can be verified.
1146
1147 When debugging drivers it is useful to see what I/O accesses were
1148 done and in what order.
1149
1150 Even if the individual accesses are of little interest it can be
1151 useful to verify that the access pattern is consistent each time
1152 an operation is performed. In this case a checksum can be used to
1153 characterise the operation of a driver. The checksum can be compared
1154 across different runs of the operation to verify that the driver is
1155 working properly.
1156
1157 In particular, when performing major refactoring of the driver, where
1158 the access pattern should not change, the checksum provides assurance
1159 that the refactoring work has not broken the driver.
1160
1161 This works by sneaking into the io.h heder for an architecture and
1162 redirecting I/O accesses through iotrace's tracing mechanism.
1163
1164 For now no commands are provided to examine the trace buffer. The
1165 format is fairly simple, so 'md' is a reasonable substitute.
1166
1167 Note: The checksum feature is only useful for I/O regions where the
1168 contents do not change outside of software control. Where this is not
1169 suitable you can fall back to manually comparing the addresses. It
1170 might be useful to enhance tracing to only checksum the accesses and
1171 not the data read/written.
1172
Simon Glass036bbb12017-08-04 16:34:28 -06001173config CMD_I2C
1174 bool "i2c"
1175 help
1176 I2C support.
1177
Eugen Hristevb879c842018-09-18 10:35:33 +03001178config CMD_W1
1179 depends on W1
1180 default y if W1
1181 bool "w1 - Support for Dallas 1-Wire protocol"
1182 help
1183 Dallas 1-wire protocol support
1184
Simon Glass29499a02016-01-17 20:53:51 -07001185config CMD_LOADB
1186 bool "loadb"
1187 default y
1188 help
1189 Load a binary file over serial line.
1190
Rui Miguel Silva433f15a2022-05-11 10:55:40 +01001191config CMD_LOADM
1192 bool "loadm"
1193 help
1194 Load a binary over memory mapped.
1195
Simon Glass29499a02016-01-17 20:53:51 -07001196config CMD_LOADS
1197 bool "loads"
1198 default y
1199 help
1200 Load an S-Record file over serial line
1201
Pali Rohár5dc80cc2022-08-27 16:37:55 +02001202config CMD_LOADXY_TIMEOUT
1203 int "loadxy_timeout"
1204 range 0 2000
1205 default 90
1206 help
1207 Initial timeout for loadx and loady commands. Zero means infinity.
1208
Niel Fourie09262bb2020-03-30 17:22:58 +02001209config CMD_LSBLK
1210 depends on BLK
1211 bool "lsblk - list block drivers and devices"
1212 help
1213 Print list of available block device drivers, and for each, the list
1214 of known block devices.
1215
Marek Szyprowski6427b5b2020-12-23 13:55:15 +01001216config CMD_MBR
1217 bool "MBR (Master Boot Record) command"
1218 select DOS_PARTITION
Marek Szyprowski6427b5b2020-12-23 13:55:15 +01001219 help
1220 Enable the 'mbr' command to ready and write MBR (Master Boot Record)
1221 style partition tables.
1222
Bin Menge1dae502020-10-14 14:34:52 +08001223config CMD_MISC
1224 bool "misc"
1225 depends on MISC
1226 help
1227 Enable the command "misc" for accessing miscellaneous devices with
1228 a MISC uclass driver. The command provides listing all MISC devices
1229 as well as read and write functionalities via their drivers.
1230
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001231config CMD_MMC
1232 bool "mmc"
Heinrich Schuchardt3ae9e6a2021-03-27 11:43:54 +01001233 depends on MMC
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001234 help
1235 MMC memory mapped support.
1236
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001237if CMD_MMC
1238
1239config CMD_BKOPS_ENABLE
1240 bool "mmc bkops enable"
1241 depends on CMD_MMC
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001242 help
1243 Enable command for setting manual background operations handshake
1244 on a eMMC device. The feature is optionally available on eMMC devices
1245 conforming to standard >= 4.41.
1246
Alex Kiernan60e0f612018-05-08 04:43:31 +00001247config CMD_MMC_RPMB
1248 bool "Enable support for RPMB in the mmc command"
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001249 depends on SUPPORT_EMMC_RPMB
Alex Kiernan60e0f612018-05-08 04:43:31 +00001250 help
1251 Enable the commands for reading, writing and programming the
1252 key for the Replay Protection Memory Block partition in eMMC.
1253
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001254config CMD_MMC_SWRITE
1255 bool "mmc swrite"
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001256 depends on MMC_WRITE
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001257 select IMAGE_SPARSE
1258 help
1259 Enable support for the "mmc swrite" command to write Android sparse
1260 images to eMMC.
1261
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001262endif
1263
John Chaufce6f982020-07-02 12:01:21 +08001264config CMD_CLONE
1265 bool "clone"
1266 depends on BLK
1267 help
1268 Enable storage cloning over block devices, useful for
1269 initial flashing by external block device without network
1270 or usb support.
1271
Ruchika Gupta1a994352020-10-23 13:39:33 +05301272config CMD_OPTEE_RPMB
1273 bool "Enable read/write support on RPMB via OPTEE"
1274 depends on SUPPORT_EMMC_RPMB && OPTEE
1275 help
1276 Enable the commands for reading, writing persistent named values
1277 in the Replay Protection Memory Block partition in eMMC by
1278 using Persistent Objects in OPTEE
1279
Miquel Raynal741f4c72018-09-29 12:58:28 +02001280config CMD_MTD
1281 bool "mtd"
Miquel Raynald2418202019-10-25 19:39:30 +02001282 depends on MTD
Miquel Raynal741f4c72018-09-29 12:58:28 +02001283 select MTD_PARTITIONS
1284 help
1285 MTD commands support.
1286
Pratyush Yadavbecd9b72020-10-16 16:16:35 +05301287config CMD_MUX
1288 bool "mux"
1289 depends on MULTIPLEXER
1290 help
1291 List, select, and deselect mux controllers on the fly.
1292
Simon Glass29499a02016-01-17 20:53:51 -07001293config CMD_NAND
1294 bool "nand"
Maxime Ripard5a5d71f2017-03-03 15:13:30 +01001295 default y if NAND_SUNXI
Miquel Raynald2418202019-10-25 19:39:30 +02001296 depends on MTD_RAW_NAND
Simon Glass29499a02016-01-17 20:53:51 -07001297 help
1298 NAND support.
1299
Boris Brezillon19907782017-02-27 18:22:07 +01001300if CMD_NAND
1301config CMD_NAND_TRIMFFS
1302 bool "nand write.trimffs"
Hans de Goedefd42c052017-02-27 18:22:10 +01001303 default y if ARCH_SUNXI
Boris Brezillon19907782017-02-27 18:22:07 +01001304 help
1305 Allows one to skip empty pages when flashing something on a NAND.
1306
1307config CMD_NAND_LOCK_UNLOCK
1308 bool "nand lock/unlock"
1309 help
1310 NAND locking support.
1311
1312config CMD_NAND_TORTURE
1313 bool "nand torture"
1314 help
1315 NAND torture support.
1316
1317endif # CMD_NAND
1318
Zhikang Zhang49455652017-08-03 02:30:59 -07001319config CMD_NVME
1320 bool "nvme"
1321 depends on NVME
1322 default y if NVME
1323 help
1324 NVM Express device support
1325
Simon Glassa2a82072017-08-04 16:34:31 -06001326config CMD_ONENAND
1327 bool "onenand - access to onenand device"
Miquel Raynald2418202019-10-25 19:39:30 +02001328 depends on MTD
Simon Glassa2a82072017-08-04 16:34:31 -06001329 help
1330 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1331 various useful features. This command allows reading, writing,
1332 and erasing blocks. It allso provides a way to show and change
1333 bad blocks, and test the device.
1334
Tom Rinie7751242022-06-15 12:03:51 -04001335config USE_ONENAND_BOARD_INIT
1336 bool "Call onenand_board_init() in the onenand command"
1337 depends on CMD_ONENAND
1338
Mario Sixf8395902018-09-27 09:19:34 +02001339config CMD_OSD
1340 bool "osd"
1341 help
1342 Enable the 'osd' command which allows to query information from and
1343 write text data to a on-screen display (OSD) device; a virtual device
1344 associated with a display capable of displaying a text overlay on the
1345 display it's associated with..
1346
Patrick Delaunay73287092017-01-27 11:00:42 +01001347config CMD_PART
1348 bool "part"
AKASHI Takahiro783bc122022-04-22 10:44:30 +09001349 depends on PARTITIONS
Michal Simek84f3dec2018-07-23 15:55:13 +02001350 select PARTITION_UUIDS
Patrick Delaunay73287092017-01-27 11:00:42 +01001351 help
1352 Read and display information about the partition table on
1353 various media.
1354
Simon Glassc88a09a2017-08-04 16:34:34 -06001355config CMD_PCI
1356 bool "pci - Access PCI devices"
1357 help
1358 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1359 used on some devices to allow the CPU to communicate with its
1360 peripherals. Sub-commands allow bus enumeration, displaying and
1361 changing configuration space and a few other features.
1362
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001363config CMD_PINMUX
1364 bool "pinmux - show pins muxing"
Marek Behún9ff24b62021-02-09 21:23:47 +01001365 depends on PINCTRL
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001366 default y if PINCTRL
1367 help
1368 Parse all available pin-controllers and show pins muxing. This
1369 is useful for debug purpoer to check the pin muxing and to know if
1370 a pin is configured as a GPIO or as an alternate function.
1371
Adam Fordc4f16322018-09-09 07:05:57 -05001372config CMD_POWEROFF
1373 bool "poweroff"
1374 help
1375 Poweroff/Shutdown the system
1376
Simon Glassc05459b2017-08-04 16:34:39 -06001377config CMD_READ
1378 bool "read - Read binary data from a partition"
1379 help
1380 Provides low-level access to the data in a partition.
1381
Simon Glass036bbb12017-08-04 16:34:28 -06001382config CMD_REMOTEPROC
1383 bool "remoteproc"
1384 depends on REMOTEPROC
1385 help
1386 Support for Remote Processor control
1387
1388config CMD_SATA
1389 bool "sata - Access SATA subsystem"
1390 select SATA
1391 help
1392 SATA (Serial Advanced Technology Attachment) is a serial bus
1393 standard for connecting to hard drives and other storage devices.
1394 This command provides information about attached devices and allows
1395 reading, writing and other operations.
1396
1397 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1398 Attachment, where AT refers to an IBM AT (Advanced Technology)
1399 computer released in 1984.
1400
Simon Glassd09f3772017-08-04 16:34:43 -06001401config CMD_SAVES
1402 bool "saves - Save a file over serial in S-Record format"
1403 help
1404 Provides a way to save a binary file using the Motorola S-Record
1405 format over the serial line.
1406
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001407config CMD_SCSI
1408 bool "scsi - Access to SCSI devices"
1409 default y if SCSI
1410 help
1411 This provides a 'scsi' command which provides access to SCSI (Small
1412 Computer System Interface) devices. The command provides a way to
1413 scan the bus, reset the bus, read and write data and get information
1414 about devices.
1415
Simon Glass6870d2e2017-08-04 16:34:45 -06001416config CMD_SDRAM
1417 bool "sdram - Print SDRAM configuration information"
1418 help
1419 Provides information about attached SDRAM. This assumed that the
1420 SDRAM has an EEPROM with information that can be read using the
1421 I2C bus. This is only available on some boards.
1422
Simon Glass29499a02016-01-17 20:53:51 -07001423config CMD_SF
1424 bool "sf"
Tom Rinie5289a72019-05-29 17:01:28 -04001425 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Teki132e81f2019-10-16 17:59:42 +05301426 default y if DM_SPI_FLASH
Simon Glass29499a02016-01-17 20:53:51 -07001427 help
1428 SPI Flash support
1429
Simon Glass86b1b652017-08-04 16:34:46 -06001430config CMD_SF_TEST
1431 bool "sf test - Allow testing of SPI flash"
Tom Rinie5289a72019-05-29 17:01:28 -04001432 depends on CMD_SF
Simon Glass86b1b652017-08-04 16:34:46 -06001433 help
1434 Provides a way to test that SPI flash is working correctly. The
1435 test is destructive, in that an area of SPI flash must be provided
1436 for the test to use. Performance information is also provided,
1437 measuring the performance of reading, writing and erasing in
1438 Mbps (Million Bits Per Second). This value should approximately
1439 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1440 everything is working properly.
1441
Simon Glass29499a02016-01-17 20:53:51 -07001442config CMD_SPI
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001443 bool "sspi - Command to access spi device"
Tom Rinie5289a72019-05-29 17:01:28 -04001444 depends on SPI
Simon Glass29499a02016-01-17 20:53:51 -07001445 help
1446 SPI utility command.
1447
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001448config DEFAULT_SPI_BUS
1449 int "default spi bus used by sspi command"
1450 depends on CMD_SPI
1451 default 0
1452
1453config DEFAULT_SPI_MODE
1454 hex "default spi mode used by sspi command (see include/spi.h)"
1455 depends on CMD_SPI
1456 default 0
1457
Robert Marko99e6fde2022-09-06 13:30:33 +02001458config CMD_TEMPERATURE
1459 bool "temperature - display the temperature from thermal sensors"
1460 depends on DM_THERMAL
1461 help
1462 Provides a way to list thermal sensors and to get their readings.
1463
Simon Glass80a56cd2017-08-04 16:35:00 -06001464config CMD_TSI148
1465 bool "tsi148 - Command to access tsi148 device"
1466 help
1467 This provides various sub-commands to initialise and configure the
1468 Turndra tsi148 device. See the command help for full details.
1469
Faiz Abbas61e9fbb2019-10-15 18:24:40 +05301470config CMD_UFS
1471 bool "Enable UFS - Universal Flash Subsystem commands"
1472 depends on UFS
1473 help
1474 "This provides commands to initialise and configure universal flash
1475 subsystem devices"
1476
Simon Glass0c03c1a2017-08-04 16:35:01 -06001477config CMD_UNIVERSE
1478 bool "universe - Command to set up the Turndra Universe controller"
1479 help
1480 This allows setting up the VMEbus provided by this controller.
1481 See the command help for full details.
1482
Simon Glass29499a02016-01-17 20:53:51 -07001483config CMD_USB
1484 bool "usb"
Tom Rini8a091622021-07-09 10:11:55 -04001485 depends on USB_HOST
Simon Glass29499a02016-01-17 20:53:51 -07001486 help
1487 USB support.
1488
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001489config CMD_USB_SDP
1490 bool "sdp"
1491 select USB_FUNCTION_SDP
1492 help
1493 Enables the command "sdp" which is used to have U-Boot emulating the
1494 Serial Download Protocol (SDP) via USB.
Michal Simekf751ff52018-07-23 15:55:12 +02001495
Eddie Cai5e3020b2017-12-15 08:17:11 +08001496config CMD_ROCKUSB
1497 bool "rockusb"
1498 depends on USB_FUNCTION_ROCKUSB
1499 help
Michal Simekf751ff52018-07-23 15:55:12 +02001500 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai5e3020b2017-12-15 08:17:11 +08001501 read/write info, image to/from devices. This enable rockusb command
1502 support to communication with rockusb device. for more detail about
1503 this command, please read doc/README.rockusb.
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001504
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001505config CMD_USB_MASS_STORAGE
1506 bool "UMS usb mass storage"
Tom Rini4b783d92021-05-22 08:47:16 -04001507 depends on USB_GADGET_DOWNLOAD
Lukasz Majewski6e782742018-01-29 19:28:02 +01001508 select USB_FUNCTION_MASS_STORAGE
Patrick Delaunaye1dc2532021-06-04 18:51:46 +02001509 depends on BLK && USB_GADGET
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001510 help
Patrick Delaunaye1dc2532021-06-04 18:51:46 +02001511 Enables the command "ums" and the USB mass storage support to the
1512 export a block device: U-Boot, the USB device, acts as a simple
1513 external hard drive plugged on the host USB port.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001514
Anastasiia Lukianenko4fec7f82020-08-06 12:42:55 +03001515config CMD_PVBLOCK
1516 bool "Xen para-virtualized block device"
1517 depends on XEN
1518 select PVBLOCK
1519 help
1520 Xen para-virtualized block device support
1521
Tuomas Tynkkynen10a60d22018-10-15 02:21:12 -07001522config CMD_VIRTIO
1523 bool "virtio"
1524 depends on VIRTIO
1525 default y if VIRTIO
1526 help
1527 VirtIO block device support
1528
Michael Walle23964a82019-04-06 02:24:02 +02001529config CMD_WDT
1530 bool "wdt"
1531 depends on WDT
1532 help
1533 This provides commands to control the watchdog timer devices.
1534
Mario Sixfd1cc422018-08-09 14:51:21 +02001535config CMD_AXI
1536 bool "axi"
1537 depends on AXI
1538 help
1539 Enable the command "axi" for accessing AXI (Advanced eXtensible
1540 Interface) busses, a on-chip interconnect specification for managing
1541 functional blocks in SoC designs, which is also often used in designs
1542 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass29499a02016-01-17 20:53:51 -07001543endmenu
1544
1545
1546menu "Shell scripting commands"
1547
Roger Knecht11827c42022-09-03 11:34:53 +00001548config CMD_CAT
1549 bool "cat"
1550 help
1551 Print file to standard output
1552
Simon Glass29499a02016-01-17 20:53:51 -07001553config CMD_ECHO
1554 bool "echo"
1555 default y
1556 help
1557 Echo args to console
1558
1559config CMD_ITEST
1560 bool "itest"
1561 default y
1562 help
1563 Return true/false on integer compare.
1564
1565config CMD_SOURCE
1566 bool "source"
1567 default y
1568 help
1569 Run script from memory
1570
1571config CMD_SETEXPR
1572 bool "setexpr"
1573 default y
1574 help
1575 Evaluate boolean and math expressions and store the result in an env
1576 variable.
1577 Also supports loading the value at a memory location into a variable.
1578 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1579
Roland Gaudig2c9e7c22021-07-23 12:29:21 +00001580config CMD_SETEXPR_FMT
1581 bool "setexpr_fmt"
Roland Gaudig2c9e7c22021-07-23 12:29:21 +00001582 depends on CMD_SETEXPR
1583 help
1584 Evaluate format string expression and store result in an environment
1585 variable.
1586
Simon Glass29499a02016-01-17 20:53:51 -07001587endmenu
1588
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001589menu "Android support commands"
1590
1591config CMD_AB_SELECT
1592 bool "ab_select"
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001593 depends on ANDROID_AB
1594 help
1595 On Android devices with more than one boot slot (multiple copies of
1596 the kernel and system images) this provides a command to select which
1597 slot should be used to boot from and register the boot attempt. This
1598 is used by the new A/B update model where one slot is updated in the
1599 background while running from the other slot.
1600
1601endmenu
1602
Michal Simek2f785a12018-02-26 16:01:02 +01001603if NET
1604
Joe Hershbergerb0429462018-04-13 15:26:30 -05001605menuconfig CMD_NET
1606 bool "Network commands"
1607 default y
Adam Ford53705472018-07-20 23:03:57 -05001608 imply NETDEVICES
Joe Hershbergerb0429462018-04-13 15:26:30 -05001609
1610if CMD_NET
1611
1612config CMD_BOOTP
1613 bool "bootp"
Simon Glass29499a02016-01-17 20:53:51 -07001614 default y
1615 help
Simon Glass29499a02016-01-17 20:53:51 -07001616 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerb0429462018-04-13 15:26:30 -05001617
Joe Hershberger01261792018-04-13 15:26:33 -05001618config CMD_DHCP
1619 bool "dhcp"
1620 depends on CMD_BOOTP
1621 help
1622 Boot image via network using DHCP/TFTP protocol
1623
Tom Rini1c47c4a2022-02-25 11:19:50 -05001624config BOOTP_MAY_FAIL
1625 bool "Allow for the BOOTP/DHCP server to not be found"
1626 depends on CMD_BOOTP
1627 help
1628 If the DHCP server is not found after the configured retry count, the
1629 call will fail instead of starting over. This can be used to fail
1630 over to Link-local IP address configuration if the DHCP server is not
1631 available.
1632
Joe Hershberger0824ad92018-04-13 15:26:32 -05001633config BOOTP_BOOTPATH
Joe Hershberger06661e12018-04-13 15:26:34 -05001634 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001635 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001636 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001637 help
1638 Even though the config is called BOOTP_BOOTPATH, it stores the
1639 path in the variable 'rootpath'.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001640
Tom Rini1c47c4a2022-02-25 11:19:50 -05001641config BOOTP_VENDOREX
1642 bool "Support vendor extensions from BOOTP/DHCP server"
1643 depends on CMD_BOOTP
1644
1645config BOOTP_BOOTFILESIZE
1646 bool "Request & store 'bootfilesize' from BOOTP/DHCP server"
1647 depends on CMD_BOOTP
1648
Joe Hershberger0824ad92018-04-13 15:26:32 -05001649config BOOTP_DNS
Joe Hershberger06661e12018-04-13 15:26:34 -05001650 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001651 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001652 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001653 help
1654 The primary DNS server is stored as 'dnsip'. If two servers are
1655 returned, you must set BOOTP_DNS2 to store that second server IP
1656 also.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001657
Joe Hershberger63e70712018-04-13 15:26:35 -05001658config BOOTP_DNS2
1659 bool "Store 'dnsip2' from BOOTP/DHCP server"
1660 depends on BOOTP_DNS
1661 help
1662 If a DHCP client requests the DNS server IP from a DHCP server,
1663 it is possible that more than one DNS serverip is offered to the
1664 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1665 server IP will be stored in the additional environment
1666 variable "dnsip2". The first DNS serverip is always
1667 stored in the variable "dnsip", when BOOTP_DNS is defined.
1668
Joe Hershberger0824ad92018-04-13 15:26:32 -05001669config BOOTP_GATEWAY
Joe Hershberger06661e12018-04-13 15:26:34 -05001670 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001671 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001672 depends on CMD_BOOTP
1673
1674config BOOTP_HOSTNAME
Joe Hershberger06661e12018-04-13 15:26:34 -05001675 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001676 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001677 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001678 help
1679 The name may or may not be qualified with the local domain name.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001680
Alexander Graf427e6952018-06-15 10:29:28 +02001681config BOOTP_PREFER_SERVERIP
1682 bool "serverip variable takes precedent over DHCP server IP."
1683 depends on CMD_BOOTP
1684 help
1685 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1686
1687 With this option enabled, the 'serverip' variable in the environment
1688 takes precedence over DHCP server IP and will only be set by the DHCP
1689 server if not already set in the environment.
1690
Joe Hershberger0824ad92018-04-13 15:26:32 -05001691config BOOTP_SUBNETMASK
Joe Hershberger06661e12018-04-13 15:26:34 -05001692 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001693 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001694 depends on CMD_BOOTP
1695
Tom Rini1c47c4a2022-02-25 11:19:50 -05001696config BOOTP_NISDOMAIN
1697 bool "Request & store 'nisdomain' from BOOTP/DHCP server"
1698 depends on CMD_BOOTP
1699
Chris Packhambfa7c212018-05-03 20:19:02 +12001700config BOOTP_NTPSERVER
1701 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1702 depends on CMD_BOOTP
1703
Tom Rini1c47c4a2022-02-25 11:19:50 -05001704config BOOTP_TIMEOFFSET
1705 bool "Request & store 'timeoffset' from BOOTP/DHCP server"
1706 depends on CMD_BOOTP && CMD_SNTP
1707
Ramon Friedac598c12019-07-18 21:43:30 +03001708config CMD_PCAP
1709 bool "pcap capture"
1710 help
1711 Selecting this will allow capturing all Ethernet packets and store
1712 them in physical memory in a PCAP formated file,
1713 later to be analyzed by PCAP reader application (IE. WireShark).
1714
Joe Hershberger0824ad92018-04-13 15:26:32 -05001715config BOOTP_PXE
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001716 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001717 default y
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001718 depends on CMD_BOOTP && CMD_PXE
1719 help
1720 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001721
1722config BOOTP_PXE_CLIENTARCH
1723 hex
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001724 depends on BOOTP_PXE
Joe Hershberger0824ad92018-04-13 15:26:32 -05001725 default 0x16 if ARM64
1726 default 0x15 if ARM
1727 default 0 if X86
1728
1729config BOOTP_VCI_STRING
1730 string
1731 depends on CMD_BOOTP
Michal Simekf4359382018-04-26 18:21:29 +05301732 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger0824ad92018-04-13 15:26:32 -05001733 default "U-Boot.armv8" if ARM64
1734 default "U-Boot.arm" if ARM
1735 default "U-Boot"
1736
Joe Hershbergerb0429462018-04-13 15:26:30 -05001737config CMD_TFTPBOOT
1738 bool "tftpboot"
1739 default y
1740 help
Heinrich Schuchardt7d289f12022-09-04 09:08:11 +02001741 tftpboot - load file via network using TFTP protocol
Simon Glass29499a02016-01-17 20:53:51 -07001742
1743config CMD_TFTPPUT
1744 bool "tftp put"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001745 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001746 help
1747 TFTP put command, for uploading files to a server
1748
1749config CMD_TFTPSRV
1750 bool "tftpsrv"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001751 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001752 help
1753 Act as a TFTP server and boot the first received file
1754
Joe Hershberger0824ad92018-04-13 15:26:32 -05001755config NET_TFTP_VARS
1756 bool "Control TFTP timeout and count through environment"
1757 depends on CMD_TFTPBOOT
1758 default y
1759 help
1760 If set, allows controlling the TFTP timeout through the
1761 environment variable tftptimeout, and the TFTP maximum
1762 timeout count through the variable tftptimeoutcountmax.
1763 If unset, timeout and maximum are hard-defined as 1 second
1764 and 10 timouts per TFTP transfer.
1765
Simon Glass29499a02016-01-17 20:53:51 -07001766config CMD_RARP
1767 bool "rarpboot"
1768 help
1769 Boot image via network using RARP/TFTP protocol
1770
Simon Glass29499a02016-01-17 20:53:51 -07001771config CMD_NFS
1772 bool "nfs"
1773 default y
1774 help
1775 Boot image via network using NFS protocol.
1776
Tom Rini0d1c4742022-03-11 09:12:05 -05001777config NFS_TIMEOUT
1778 int "Timeout in milliseconds for NFS mounts"
1779 depends on CMD_NFS
1780 default 2000
1781 help
1782 Timeout in milliseconds used in NFS protocol. If you encounter
1783 "ERROR: Cannot umount" in nfs command, try longer timeout such as
1784 10000.
1785
Tom Rini065d6612022-06-13 22:57:35 -04001786config SYS_DISABLE_AUTOLOAD
1787 bool "Disable automatically loading files over the network"
1788 depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP
1789 help
1790 Typically, commands such as "dhcp" will attempt to automatically
1791 load a file from the network, once the initial network configuration
1792 is complete. Enable this option to disable this behavior and instead
1793 require files to be loaded over the network by subsequent commands.
1794
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001795config CMD_MII
1796 bool "mii"
Ramon Frieddeb6c502019-09-13 18:25:03 +03001797 imply CMD_MDIO
1798 help
1799 If set, allows 802.3(clause 22) MII Management functions interface access
1800 The management interface specified in Clause 22 provides
1801 a simple, two signal, serial interface to connect a
1802 Station Management entity and a managed PHY for providing access
1803 to management parameters and services.
1804 The interface is referred to as the MII management interface.
1805
Tom Rini1a0c7dc2022-03-18 08:38:27 -04001806config MII_INIT
1807 bool "Call mii_init() in the mii command"
1808 depends on CMD_MII && (MPC8XX_FEC || FSLDMAFE || MCFFEC)
1809
Ramon Frieddeb6c502019-09-13 18:25:03 +03001810config CMD_MDIO
1811 bool "mdio"
1812 depends on PHYLIB
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001813 help
Ramon Frieddeb6c502019-09-13 18:25:03 +03001814 If set, allows Enable 802.3(clause 45) MDIO interface registers access
1815 The MDIO interface is orthogonal to the MII interface and extends
1816 it by adding access to more registers through indirect addressing.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001817
Simon Glass29499a02016-01-17 20:53:51 -07001818config CMD_PING
1819 bool "ping"
1820 help
1821 Send ICMP ECHO_REQUEST to network host
1822
1823config CMD_CDP
1824 bool "cdp"
1825 help
1826 Perform CDP network configuration
1827
1828config CMD_SNTP
1829 bool "sntp"
Philippe Reynes2829d992020-09-18 14:13:02 +02001830 select PROT_UDP
Simon Glass29499a02016-01-17 20:53:51 -07001831 help
1832 Synchronize RTC via network
1833
1834config CMD_DNS
1835 bool "dns"
1836 help
1837 Lookup the IP of a hostname
1838
1839config CMD_LINK_LOCAL
1840 bool "linklocal"
Joe Hershberger51d78982018-04-30 12:45:22 -05001841 select LIB_RAND
Simon Glass29499a02016-01-17 20:53:51 -07001842 help
1843 Acquire a network IP address using the link-local protocol
1844
Joe Hershberger0824ad92018-04-13 15:26:32 -05001845endif
1846
Simon Glass12b85702017-05-17 03:25:17 -06001847config CMD_ETHSW
1848 bool "ethsw"
1849 help
1850 Allow control of L2 Ethernet switch commands. These are supported
1851 by the vsc9953 Ethernet driver at present. Sub-commands allow
1852 operations such as enabling / disabling a port and
1853 viewing/maintaining the filtering database (FDB)
1854
Joe Hershberger0824ad92018-04-13 15:26:32 -05001855config CMD_PXE
1856 bool "pxe"
John Keeping9b60a172022-07-28 11:19:15 +01001857 select PXE_UTILS
Joe Hershberger0824ad92018-04-13 15:26:32 -05001858 help
1859 Boot image via network using PXE protocol
Michal Simek2f785a12018-02-26 16:01:02 +01001860
Lothar Felten776fc102018-06-22 22:29:54 +02001861config CMD_WOL
1862 bool "wol"
1863 help
1864 Wait for wake-on-lan Magic Packet
1865
Joe Hershbergerb0429462018-04-13 15:26:30 -05001866endif
Simon Glass29499a02016-01-17 20:53:51 -07001867
1868menu "Misc commands"
1869
Simon Glassb575bfc2017-04-26 22:27:55 -06001870config CMD_BMP
1871 bool "Enable 'bmp' command"
1872 depends on LCD || DM_VIDEO || VIDEO
1873 help
Andrius Štikonas1d5ccd62019-09-23 22:43:41 +01001874 This provides a way to obtain information about a BMP-format image
Simon Glassb575bfc2017-04-26 22:27:55 -06001875 and to display it. BMP (which presumably stands for BitMaP) is a
1876 file format defined by Microsoft which supports images of various
1877 depths, formats and compression methods. Headers on the file
1878 determine the formats used. This command can be used by first loading
1879 the image into RAM, then using this command to look at it or display
1880 it.
1881
Alex Kiernane710fa62018-05-12 05:49:47 +00001882config CMD_BOOTCOUNT
1883 bool "bootcount"
1884 depends on BOOTCOUNT_LIMIT
1885 help
1886 Enable the bootcount command, which allows interrogation and
1887 reset of the bootcounter.
1888
Simon Glassffab9a02017-04-26 22:27:56 -06001889config CMD_BSP
1890 bool "Enable board-specific commands"
1891 help
1892 (deprecated: instead, please define a Kconfig option for each command)
1893
1894 Some boards have board-specific commands which are only enabled
1895 during developemnt and need to be turned off for production. This
1896 option provides a way to control this. The commands that are enabled
1897 vary depending on the board.
1898
Eric Nelsonfaf4f052016-03-28 10:05:44 -07001899config CMD_BLOCK_CACHE
1900 bool "blkcache - control and stats for block cache"
1901 depends on BLOCK_CACHE
1902 default y if BLOCK_CACHE
1903 help
1904 Enable the blkcache command, which can be used to control the
1905 operation of the cache functions.
1906 This is most useful when fine-tuning the operation of the cache
1907 during development, but also allows the cache to be disabled when
1908 it might hurt performance (e.g. when using the ums command).
1909
Philippe Reynesa558b182020-07-24 18:19:47 +02001910config CMD_BUTTON
1911 bool "button"
1912 depends on BUTTON
1913 default y if BUTTON
1914 help
1915 Enable the 'button' command which allows to get the status of
1916 buttons supported by the board. The buttonss can be listed with
1917 'button list' and state can be known with 'button <label>'.
1918 Any button drivers can be controlled with this command, e.g.
1919 button_gpio.
1920
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001921config CMD_CACHE
1922 bool "icache or dcache"
1923 help
1924 Enable the "icache" and "dcache" commands
1925
Heinrich Schuchardt13ea6852018-09-07 19:43:11 +02001926config CMD_CONITRACE
1927 bool "conitrace - trace console input codes"
1928 help
1929 Enable the 'conitrace' command which displays the codes received
1930 from the console input as hexadecimal numbers.
1931
Anatolij Gustschine0455a42018-12-01 10:47:20 +01001932config CMD_CLS
1933 bool "Enable clear screen command 'cls'"
Anatolij Gustschine0455a42018-12-01 10:47:20 +01001934 default y if LCD
1935 help
1936 Enable the 'cls' command which clears the screen contents
1937 on video frame buffer.
1938
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001939config CMD_EFIDEBUG
1940 bool "efidebug - display/configure UEFI environment"
1941 depends on EFI_LOADER
Heinrich Schuchardt3db35912019-05-11 09:53:33 +02001942 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001943 help
1944 Enable the 'efidebug' command which provides a subset of UEFI
1945 shell utility with simplified functionality. It will be useful
1946 particularly for managing boot parameters as well as examining
1947 various EFI status for debugging.
1948
Masahisa Kojimac5ff0a02022-09-12 17:33:50 +09001949config CMD_EFICONFIG
1950 bool "eficonfig - provide menu-driven uefi variables maintenance interface"
1951 depends on CMD_BOOTEFI_BOOTMGR
1952 help
1953 Enable the 'eficonfig' command which provides the menu-driven UEFI
1954 variable maintenance interface.
1955
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01001956config CMD_EXCEPTION
1957 bool "exception - raise exception"
Heinrich Schuchardtadaea9c2020-11-12 00:29:57 +01001958 depends on ARM || RISCV || SANDBOX || X86
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01001959 help
1960 Enable the 'exception' command which allows to raise an exception.
1961
Simon Glassfc8a5292017-04-10 11:34:59 -06001962config CMD_LED
1963 bool "led"
Jan Kiszka89077ba2019-01-03 09:08:42 +01001964 depends on LED
Simon Glassfc8a5292017-04-10 11:34:59 -06001965 default y if LED
1966 help
1967 Enable the 'led' command which allows for control of LEDs supported
1968 by the board. The LEDs can be listed with 'led list' and controlled
1969 with led on/off/togle/blink. Any LED drivers can be controlled with
1970 this command, e.g. led_gpio.
1971
Chris Packham3e257df2017-04-29 15:20:28 +12001972config CMD_DATE
1973 bool "date"
1974 default y if DM_RTC
AKASHI Takahiro51ba5222019-11-13 09:44:49 +09001975 select LIB_DATE
Chris Packham3e257df2017-04-29 15:20:28 +12001976 help
1977 Enable the 'date' command for getting/setting the time/date in RTC
1978 devices.
1979
Rasmus Villemoescc092022020-07-06 22:01:15 +02001980config CMD_RTC
1981 bool "rtc"
1982 depends on DM_RTC
1983 help
1984 Enable the 'rtc' command for low-level access to RTC devices.
1985
Simon Glass29499a02016-01-17 20:53:51 -07001986config CMD_TIME
1987 bool "time"
1988 help
1989 Run commands and summarize execution time.
1990
Simon Glassfa744522017-05-17 03:25:23 -06001991config CMD_GETTIME
1992 bool "gettime - read elapsed time"
1993 help
1994 Enable the 'gettime' command which reads the elapsed time since
1995 U-Boot started running. This shows the time in seconds and
1996 milliseconds. See also the 'bootstage' command which provides more
1997 flexibility for boot timing.
1998
Samuel Dionne-Riele69e1f12022-08-18 15:44:04 -04001999config CMD_PAUSE
2000 bool "pause command"
2001 help
2002 Delay execution waiting for any user input.
2003 Useful to allow the user to read a failure log.
2004
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002005config CMD_RNG
2006 bool "rng command"
2007 depends on DM_RNG
Sughosh Ganu6daac6b2022-07-22 21:32:09 +05302008 default y if SANDBOX
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002009 select HEXDUMP
2010 help
2011 Print bytes from the hardware random number generator.
2012
Chris Morgan61a96182021-08-25 11:22:57 -05002013config CMD_KASLRSEED
2014 bool "kaslrseed"
2015 depends on DM_RNG
2016 help
2017 Set the kaslr-seed in the chosen node with entropy provided by a
2018 hardware random number generator.
2019
Bin Meng7c4f7be2020-10-13 18:45:05 +08002020config CMD_SLEEP
Simon Glass29499a02016-01-17 20:53:51 -07002021 bool "sleep"
2022 default y
2023 help
2024 Delay execution for some time
2025
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002026config CMD_MP
2027 bool "support for multiprocessor commands"
2028 depends on MP
2029 default y
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002030 help
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002031 This enables commands to bringup different processors
2032 in multiprocessor cases.
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002033
Simon Glass29499a02016-01-17 20:53:51 -07002034config CMD_TIMER
2035 bool "timer"
2036 help
2037 Access the system timer.
2038
Simon Glass29499a02016-01-17 20:53:51 -07002039config CMD_SOUND
2040 bool "sound"
2041 depends on SOUND
2042 help
2043 This provides basic access to the U-Boot's sound support. The main
2044 feature is to play a beep.
2045
2046 sound init - set up sound system
2047 sound play - play a sound
2048
Patrice Chotard7b81c052019-11-25 09:07:38 +01002049config CMD_SYSBOOT
2050 bool "sysboot"
John Keeping9b60a172022-07-28 11:19:15 +01002051 select PXE_UTILS
Patrice Chotard7b81c052019-11-25 09:07:38 +01002052 help
2053 Boot image via local extlinux.conf file
2054
Miao Yan92106272016-05-22 19:37:17 -07002055config CMD_QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002056 bool "qfw"
Miao Yan4fcd7f22016-05-22 19:37:14 -07002057 select QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002058 help
2059 This provides access to the QEMU firmware interface. The main
2060 feature is to allow easy loading of files passed to qemu-system
2061 via -kernel / -initrd
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002062
Frédéric Danised2e8e42020-03-20 10:59:22 +01002063config CMD_PSTORE
2064 bool "pstore"
2065 help
2066 This provides access to Linux PStore with Rammoops backend. The main
2067 feature is to allow to display or save PStore records.
2068
2069 See doc/pstore.rst for more information.
2070
2071if CMD_PSTORE
2072
2073config CMD_PSTORE_MEM_ADDR
2074 hex "Memory Address"
2075 depends on CMD_PSTORE
2076 help
2077 Base addr used for PStore ramoops memory, should be identical to
2078 ramoops.mem_address parameter used by kernel
2079
2080config CMD_PSTORE_MEM_SIZE
2081 hex "Memory size"
2082 depends on CMD_PSTORE
2083 default "0x10000"
2084 help
2085 Size of PStore ramoops memory, should be identical to ramoops.mem_size
2086 parameter used by kernel, a power of 2 and larger than the sum of the
2087 record sizes
2088
2089config CMD_PSTORE_RECORD_SIZE
2090 hex "Dump record size"
2091 depends on CMD_PSTORE
2092 default "0x1000"
2093 help
2094 Size of each dump done on oops/panic, should be identical to
2095 ramoops.record_size parameter used by kernel and a power of 2
2096 Must be non-zero
2097
2098config CMD_PSTORE_CONSOLE_SIZE
2099 hex "Kernel console log size"
2100 depends on CMD_PSTORE
2101 default "0x1000"
2102 help
2103 Size of kernel console log, should be identical to
2104 ramoops.console_size parameter used by kernel and a power of 2
2105 Must be non-zero
2106
2107config CMD_PSTORE_FTRACE_SIZE
2108 hex "FTrace log size"
2109 depends on CMD_PSTORE
2110 default "0x1000"
2111 help
2112 Size of ftrace log, should be identical to ramoops.ftrace_size
2113 parameter used by kernel and a power of 2
2114
2115config CMD_PSTORE_PMSG_SIZE
2116 hex "User space message log size"
2117 depends on CMD_PSTORE
2118 default "0x1000"
2119 help
2120 Size of user space message log, should be identical to
2121 ramoops.pmsg_size parameter used by kernel and a power of 2
2122
2123config CMD_PSTORE_ECC_SIZE
2124 int "ECC size"
2125 depends on CMD_PSTORE
2126 default "0"
2127 help
2128 if non-zero, the option enables ECC support and specifies ECC buffer
2129 size in bytes (1 is a special value, means 16 bytes ECC), should be
2130 identical to ramoops.ramoops_ecc parameter used by kernel
2131
2132endif
2133
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002134source "cmd/mvebu/Kconfig"
2135
Simon Glass89342ef2017-08-04 16:34:55 -06002136config CMD_TERMINAL
2137 bool "terminal - provides a way to attach a serial terminal"
2138 help
2139 Provides a 'cu'-like serial terminal command. This can be used to
2140 access other serial ports from the system console. The terminal
2141 is very simple with no special processing of characters. As with
2142 cu, you can press ~. (tilde followed by period) to exit.
2143
Simon Glass6d56aad2017-08-04 16:35:02 -06002144config CMD_UUID
2145 bool "uuid, guid - generation of unique IDs"
Adam Ford70c8f052018-02-06 12:14:28 -06002146 select LIB_UUID
Simon Glass6d56aad2017-08-04 16:35:02 -06002147 help
2148 This enables two commands:
2149
2150 uuid - generate random Universally Unique Identifier
2151 guid - generate Globally Unique Identifier based on random UUID
2152
2153 The two commands are very similar except for the endianness of the
2154 output.
2155
Simon Glass29499a02016-01-17 20:53:51 -07002156endmenu
2157
Lokesh Vutla962c4e02017-12-29 11:47:49 +05302158source "cmd/ti/Kconfig"
2159
Simon Glass29499a02016-01-17 20:53:51 -07002160config CMD_BOOTSTAGE
2161 bool "Enable the 'bootstage' command"
2162 depends on BOOTSTAGE
2163 help
2164 Add a 'bootstage' command which supports printing a report
2165 and un/stashing of bootstage data.
2166
2167menu "Power commands"
2168config CMD_PMIC
2169 bool "Enable Driver Model PMIC command"
2170 depends on DM_PMIC
2171 help
2172 This is the pmic command, based on a driver model pmic's API.
2173 Command features are unchanged:
2174 - list - list pmic devices
2175 - pmic dev <id> - show or [set] operating pmic device (NEW)
2176 - pmic dump - dump registers
2177 - pmic read address - read byte of register at address
2178 - pmic write address - write byte to register at address
2179 The only one change for this command is 'dev' subcommand.
2180
2181config CMD_REGULATOR
2182 bool "Enable Driver Model REGULATOR command"
2183 depends on DM_REGULATOR
2184 help
2185 This command is based on driver model regulator's API.
2186 User interface features:
2187 - list - list regulator devices
2188 - regulator dev <id> - show or [set] operating regulator device
2189 - regulator info - print constraints info
2190 - regulator status - print operating status
2191 - regulator value <val] <-f> - print/[set] voltage value [uV]
2192 - regulator current <val> - print/[set] current value [uA]
2193 - regulator mode <id> - print/[set] operating mode id
2194 - regulator enable - enable the regulator output
2195 - regulator disable - disable the regulator output
2196
2197 The '-f' (force) option can be used for set the value which exceeds
2198 the limits, which are found in device-tree and are kept in regulator's
Simon Glass71fa5b42020-12-03 16:55:18 -07002199 uclass plat structure.
Simon Glass29499a02016-01-17 20:53:51 -07002200
2201endmenu
2202
2203menu "Security commands"
Simon Glass528fdd12017-04-26 22:27:49 -06002204config CMD_AES
2205 bool "Enable the 'aes' command"
2206 select AES
2207 help
2208 This provides a means to encrypt and decrypt data using the AES
2209 (Advanced Encryption Standard). This algorithm uses a symetric key
2210 and is widely used as a streaming cipher. Different key lengths are
2211 supported by the algorithm but this command only supports 128 bits
2212 at present.
2213
Simon Glass311ec4f2017-04-26 22:27:53 -06002214config CMD_BLOB
2215 bool "Enable the 'blob' command"
Aymen Sghaierf18c71f2021-03-25 17:30:27 +08002216 depends on !MX6ULL && !MX6SLL && !MX6SL
2217 select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
Simon Glass311ec4f2017-04-26 22:27:53 -06002218 help
2219 This is used with the Freescale secure boot mechanism.
2220
2221 Freescale's SEC block has built-in Blob Protocol which provides
2222 a method for protecting user-defined data across system power
2223 cycles. SEC block protects data in a data structure called a Blob,
2224 which provides both confidentiality and integrity protection.
2225
2226 Encapsulating data as a blob
2227 Each time that the Blob Protocol is used to protect data, a
2228 different randomly generated key is used to encrypt the data.
2229 This random key is itself encrypted using a key which is derived
2230 from SoC's non-volatile secret key and a 16 bit Key identifier.
2231 The resulting encrypted key along with encrypted data is called a
2232 blob. The non-volatile secure key is available for use only during
2233 secure boot.
2234
2235 During decapsulation, the reverse process is performed to get back
2236 the original data.
2237
2238 Sub-commands:
Michal Simekf751ff52018-07-23 15:55:12 +02002239 blob enc - encapsulating data as a cryptgraphic blob
Simon Glass311ec4f2017-04-26 22:27:53 -06002240 blob dec - decapsulating cryptgraphic blob to get the data
2241
2242 Syntax:
2243
2244 blob enc src dst len km
2245
2246 Encapsulate and create blob of data $len bytes long
2247 at address $src and store the result at address $dst.
2248 $km is the 16 byte key modifier is also required for
2249 generation/use as key for cryptographic operation. Key
2250 modifier should be 16 byte long.
2251
2252 blob dec src dst len km
2253
2254 Decapsulate the blob of data at address $src and
2255 store result of $len byte at addr $dst.
2256 $km is the 16 byte key modifier is also required for
2257 generation/use as key for cryptographic operation. Key
2258 modifier should be 16 byte long.
2259
Simon Glass027608e2017-05-17 03:25:25 -06002260config CMD_HASH
2261 bool "Support 'hash' command"
Simon Glassb22ec7a2017-05-17 09:05:34 -06002262 select HASH
Simon Glass027608e2017-05-17 03:25:25 -06002263 help
2264 This provides a way to hash data in memory using various supported
2265 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
2266 saved to memory or to an environment variable. It is also possible
2267 to verify a hash against data in memory.
2268
Michalis Pappasd382d222018-04-13 10:40:57 +03002269config CMD_HVC
2270 bool "Support the 'hvc' command"
2271 depends on ARM_SMCCC
2272 help
2273 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
2274 development and testing.
2275
2276config CMD_SMC
2277 bool "Support the 'smc' command"
2278 depends on ARM_SMCCC
2279 help
2280 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
2281 development and testing.
2282
Daniel Thompsona9e2c672017-05-19 17:26:58 +01002283config HASH_VERIFY
2284 bool "hash -v"
2285 depends on CMD_HASH
2286 help
2287 Add -v option to verify data against a hash.
2288
Jorge Ramirez-Ortiz7d80df92021-02-14 16:27:24 +01002289config CMD_SCP03
2290 bool "scp03 - SCP03 enable and rotate/provision operations"
2291 depends on SCP03
2292 help
2293 This command provides access to a Trusted Application
2294 running in a TEE to request Secure Channel Protocol 03
2295 (SCP03) enablement and/or rotation of its SCP03 keys.
2296
Miquel Raynal294f82a2018-05-15 11:57:05 +02002297config CMD_TPM_V1
2298 bool
2299
2300config CMD_TPM_V2
2301 bool
2302
Simon Glass29499a02016-01-17 20:53:51 -07002303config CMD_TPM
2304 bool "Enable the 'tpm' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002305 depends on TPM_V1 || TPM_V2
2306 select CMD_TPM_V1 if TPM_V1
2307 select CMD_TPM_V2 if TPM_V2
Simon Glass29499a02016-01-17 20:53:51 -07002308 help
2309 This provides a means to talk to a TPM from the command line. A wide
2310 range of commands if provided - see 'tpm help' for details. The
2311 command requires a suitable TPM on your board and the correct driver
2312 must be enabled.
2313
Miquel Raynal294f82a2018-05-15 11:57:05 +02002314if CMD_TPM
2315
Simon Glass29499a02016-01-17 20:53:51 -07002316config CMD_TPM_TEST
2317 bool "Enable the 'tpm test' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002318 depends on TPM_V1
Simon Glass29499a02016-01-17 20:53:51 -07002319 help
Miquel Raynal294f82a2018-05-15 11:57:05 +02002320 This provides a a series of tests to confirm that the TPMv1.x is
2321 working correctly. The tests cover initialisation, non-volatile RAM,
2322 extend, global lock and checking that timing is within expectations.
2323 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass29499a02016-01-17 20:53:51 -07002324 for other devices.
2325
Miquel Raynal294f82a2018-05-15 11:57:05 +02002326endif
2327
Simon Glass29499a02016-01-17 20:53:51 -07002328endmenu
2329
Moritz Fischer62b30272016-10-04 17:08:08 -07002330menu "Firmware commands"
2331config CMD_CROS_EC
2332 bool "Enable crosec command"
2333 depends on CROS_EC
2334 default y
2335 help
2336 Enable command-line access to the Chrome OS EC (Embedded
2337 Controller). This provides the 'crosec' command which has
2338 a number of sub-commands for performing EC tasks such as
2339 updating its flash, accessing a small saved context area
2340 and talking to the I2C bus behind the EC (if there is one).
2341endmenu
2342
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002343menu "Filesystem commands"
Marek Behún27cec792017-09-03 17:00:30 +02002344config CMD_BTRFS
2345 bool "Enable the 'btrsubvol' command"
2346 select FS_BTRFS
2347 help
2348 This enables the 'btrsubvol' command to list subvolumes
2349 of a BTRFS filesystem. There are no special commands for
2350 listing BTRFS directories or loading BTRFS files - this
2351 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
2352 when BTRFS is enabled (see FS_BTRFS).
2353
Simon Glass0501e3e2017-04-26 22:27:58 -06002354config CMD_CBFS
2355 bool "Enable the 'cbfs' command"
Simon Glass579b51a2017-04-26 22:27:59 -06002356 depends on FS_CBFS
Simon Glass0501e3e2017-04-26 22:27:58 -06002357 help
2358 Define this to enable support for reading from a Coreboot
2359 filesystem. This is a ROM-based filesystem used for accessing files
2360 on systems that use coreboot as the first boot-loader and then load
2361 U-Boot to actually boot the Operating System. Available commands are
2362 cbfsinit, cbfsinfo, cbfsls and cbfsload.
2363
Simon Glass519805e2017-04-26 22:28:03 -06002364config CMD_CRAMFS
2365 bool "Enable the 'cramfs' command"
Simon Glass690f5092017-04-26 22:28:04 -06002366 depends on FS_CRAMFS
Simon Glass519805e2017-04-26 22:28:03 -06002367 help
2368 This provides commands for dealing with CRAMFS (Compressed ROM
2369 filesystem). CRAMFS is useful when space is tight since files are
2370 compressed. Two commands are provided:
2371
2372 cramfsls - lists files in a cramfs image
2373 cramfsload - loads a file from a cramfs image
2374
Huang Jiananc8eefae2022-02-26 15:05:50 +08002375config CMD_EROFS
2376 bool "EROFS command support"
2377 select FS_EROFS
2378 help
2379 Support for the EROFS fs
2380
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002381config CMD_EXT2
2382 bool "ext2 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002383 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002384 help
2385 Enables EXT2 FS command
2386
2387config CMD_EXT4
2388 bool "ext4 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002389 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002390 help
2391 Enables EXT4 FS command
2392
2393config CMD_EXT4_WRITE
2394 depends on CMD_EXT4
2395 bool "ext4 write command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002396 select EXT4_WRITE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002397 help
2398 Enables EXT4 FS write command
2399
2400config CMD_FAT
2401 bool "FAT command support"
Sekhar Nori1909a7b2017-06-02 17:53:59 +05302402 select FS_FAT
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002403 help
2404 Support for the FAT fs
2405
Joao Marcos Costaa12c66f2020-07-30 15:33:48 +02002406config CMD_SQUASHFS
2407 bool "SquashFS command support"
2408 select FS_SQUASHFS
2409 help
2410 Enables SquashFS filesystem commands (e.g. load, ls).
2411
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002412config CMD_FS_GENERIC
2413 bool "filesystem commands"
2414 help
2415 Enables filesystem commands (e.g. load, ls) that work for multiple
2416 fs types.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002417
Josua Mayerf5ebfe72017-04-24 10:10:45 +02002418config CMD_FS_UUID
2419 bool "fsuuid command"
2420 help
2421 Enables fsuuid command for filesystem UUID.
2422
Simon Glassc4abb4b2017-05-17 03:25:37 -06002423config CMD_JFFS2
2424 bool "jffs2 command"
Simon Glass8c6c7c22017-05-17 03:25:38 -06002425 select FS_JFFS2
Simon Glassc4abb4b2017-05-17 03:25:37 -06002426 help
2427 Enables commands to support the JFFS2 (Journalling Flash File System
2428 version 2) filesystem. This enables fsload, ls and fsinfo which
2429 provide the ability to load files, list directories and obtain
2430 filesystem information.
2431
Tom Rini9c8268d2021-12-17 18:08:47 -05002432config JFFS2_DEV
2433 string "Default device for JFFS2"
2434 depends on CMD_JFFS2
2435 default "nor0"
2436 help
2437 The default device to use with the jffs2 command.
2438
2439config JFFS2_PART_OFFSET
2440 hex "Default offset within flash to locate the JFFS2 image"
2441 depends on CMD_JFFS2
2442 default 0x0
2443 help
2444 The default offset within flash to locate the JFFS2 image.
2445
2446config JFFS2_PART_SIZE
2447 hex "Default size of JFFS2 partition"
2448 depends on CMD_JFFS2
2449 default 0xFFFFFFFF
2450 help
2451 The default size of the JFFS2 partition
2452
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002453config CMD_MTDPARTS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002454 bool "MTD partition support"
Miquel Raynald2418202019-10-25 19:39:30 +02002455 depends on MTD
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002456 help
Miquel Raynal007dddc2018-09-29 12:58:30 +02002457 MTD partitioning tool support.
2458 It is strongly encouraged to avoid using this command
2459 anymore along with 'sf', 'nand', 'onenand'. One can still
2460 declare the partitions in the mtdparts environment variable
2461 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002462
Simon Glass66d7db02017-08-04 16:34:30 -06002463config CMD_MTDPARTS_SPREAD
2464 bool "Padd partition size to take account of bad blocks"
2465 depends on CMD_MTDPARTS
2466 help
2467 This enables the 'spread' sub-command of the mtdparts command.
2468 This command will modify the existing mtdparts variable by increasing
2469 the size of the partitions such that 1) each partition's net size is
2470 at least as large as the size specified in the mtdparts variable and
2471 2) each partition starts on a good block.
2472
Alexander Dahl6cae4f42019-10-30 16:53:55 +01002473config CMD_MTDPARTS_SHOW_NET_SIZES
2474 bool "Show net size (w/o bad blocks) of partitions"
2475 depends on CMD_MTDPARTS
2476 help
2477 Adds two columns to the printed partition table showing the
2478 effective usable size of a partition, if bad blocks are taken
2479 into account.
2480
Miquel Raynalf21322f2019-10-03 19:50:25 +02002481config MTDIDS_DEFAULT
2482 string "Default MTD IDs"
Miquel Raynald2418202019-10-25 19:39:30 +02002483 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002484 help
2485 Defines a default MTD IDs list for use with MTD partitions in the
2486 Linux MTD command line partitions format.
2487
2488config MTDPARTS_DEFAULT
2489 string "Default MTD partition scheme"
Miquel Raynald2418202019-10-25 19:39:30 +02002490 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002491 help
2492 Defines a default MTD partitioning scheme in the Linux MTD command
2493 line partitions format
2494
Simon Glassed4ee312017-08-04 16:34:41 -06002495config CMD_REISER
2496 bool "reiser - Access to reiserfs filesystems"
2497 help
2498 This provides two commands which operate on a resierfs filesystem,
2499 commonly used some years ago:
2500
2501 reiserls - list files
2502 reiserload - load a file
2503
Simon Glass19c5caf2017-08-04 16:34:58 -06002504config CMD_YAFFS2
2505 bool "yaffs2 - Access of YAFFS2 filesystem"
2506 depends on YAFFS2
2507 default y
2508 help
2509 This provides commands for accessing a YAFFS2 filesystem. Yet
2510 Another Flash Filesystem 2 is a filesystem designed specifically
2511 for NAND flash. It incorporates bad-block management and ensures
2512 that device writes are sequential regardless of filesystem
2513 activity.
2514
Simon Glassdc82dee2017-08-04 16:35:04 -06002515config CMD_ZFS
2516 bool "zfs - Access of ZFS filesystem"
2517 help
2518 This provides commands to accessing a ZFS filesystem, commonly used
2519 on Solaris systems. Two sub-commands are provided:
2520
2521 zfsls - list files in a directory
2522 zfsload - load a file
2523
2524 See doc/README.zfs for more details.
2525
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002526endmenu
2527
Simon Glass3423f212017-04-26 22:27:52 -06002528menu "Debug commands"
2529
Simon Glasse1efad22021-03-15 18:00:24 +13002530config CMD_CBSYSINFO
2531 bool "cbsysinfo"
2532 depends on X86
2533 default y if SYS_COREBOOT
2534 help
2535 This provides information about the coreboot sysinfo table stored in
2536 memory by coreboot before jumping to U-Boot. It can be useful for
2537 debugging the beaaviour of coreboot or U-Boot.
2538
Stefan Roese2702b272022-09-02 13:57:51 +02002539config CMD_CYCLIC
2540 bool "cyclic - Show information about cyclic functions"
2541 depends on CYCLIC
2542 default y
2543 help
2544 This enables the 'cyclic' command which provides information about
2545 cyclic execution functions. This infrastructure allows registering
2546 functions to be executed cyclically, e.g. every 100ms. These commands
2547 are supported:
2548
2549 cyclic list - list cyclic functions
2550 cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic
2551 demo function
2552
2553 See doc/develop/cyclic.rst for more details.
2554
Simon Glass20ea5632017-04-26 22:28:08 -06002555config CMD_DIAG
2556 bool "diag - Board diagnostics"
2557 help
2558 This command provides access to board diagnostic tests. These are
2559 called Power-on Self Tests (POST). The command allows listing of
2560 available tests and running either all the tests, or specific tests
2561 identified by name.
2562
Simon Glass3304fa82022-03-04 08:43:06 -07002563config CMD_EVENT
2564 bool "event - Show information about events"
2565 default y if EVENT_DEBUG
2566 help
2567 This enables the 'event' command which provides information about
2568 events and event-handler routines. This can help to device event
2569 hadling.
2570
Simon Glass4c3a6202017-05-17 03:25:39 -06002571config CMD_IRQ
2572 bool "irq - Show information about interrupts"
Pragnesh Patel3375e0b2020-08-24 20:38:55 +05302573 depends on !ARM && !MIPS && !RISCV && !SH
Simon Glass4c3a6202017-05-17 03:25:39 -06002574 help
2575 This enables two commands:
2576
2577 interrupts - enable or disable interrupts
2578 irqinfo - print device-specific interrupt information
Simon Glassfd9948c2017-05-17 03:25:40 -06002579
2580config CMD_KGDB
2581 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simek9d364412018-10-04 14:26:13 +02002582 depends on PPC
Simon Glassfd9948c2017-05-17 03:25:40 -06002583 help
2584 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2585 over a serial link for debugging purposes. This allows
2586 single-stepping, inspecting variables, etc. This is supported only
2587 on PowerPC at present.
2588
Simon Glass5684f8f2017-12-04 13:48:26 -07002589config CMD_LOG
2590 bool "log - Generation, control and access to logging"
Heinrich Schuchardt74bad682018-04-19 22:02:46 +02002591 select LOG
Sean Anderson304882e2020-10-27 19:55:38 -04002592 select GETOPT
Simon Glass5684f8f2017-12-04 13:48:26 -07002593 help
2594 This provides access to logging features. It allows the output of
2595 log data to be controlled to a limited extent (setting up the default
Simon Glass14c8a062017-12-04 13:48:27 -07002596 maximum log level for emitting of records). It also provides access
2597 to a command used for testing the log system.
Simon Glass5684f8f2017-12-04 13:48:26 -07002598
Simon Glass126cb792017-08-04 16:34:59 -06002599config CMD_TRACE
2600 bool "trace - Support tracing of function calls and timing"
Simon Glass84b77112021-11-24 09:26:39 -07002601 depends on TRACE
2602 default y
Simon Glass126cb792017-08-04 16:34:59 -06002603 help
2604 Enables a command to control using of function tracing within
2605 U-Boot. This allows recording of call traces including timing
2606 information. The command can write data to memory for exporting
Simon Glassbfce7fc2019-04-08 13:20:51 -06002607 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glass126cb792017-08-04 16:34:59 -06002608 details.
2609
Igor Opaniuk60291192018-06-03 21:56:39 +03002610config CMD_AVB
2611 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniuke0df0352018-07-17 14:33:25 +03002612 depends on AVB_VERIFY
Igor Opaniuk60291192018-06-03 21:56:39 +03002613 help
2614 Enables a "avb" command to perform verification of partitions using
2615 Android Verified Boot 2.0 functionality. It includes such subcommands:
2616 avb init - initialize avb2 subsystem
2617 avb read_rb - read rollback index
2618 avb write_rb - write rollback index
2619 avb is_unlocked - check device lock state
2620 avb get_uuid - read and print uuid of a partition
2621 avb read_part - read data from partition
2622 avb read_part_hex - read data from partition and output to stdout
2623 avb write_part - write data to partition
2624 avb verify - run full verification chain
Joel Peshkin369d87a2021-04-11 11:21:58 +02002625
2626config CMD_STACKPROTECTOR_TEST
2627 bool "Test command for stack protector"
2628 depends on STACKPROTECTOR
2629 help
2630 Enable stackprot_test command
2631 The stackprot_test command will force a stack overrun to test
2632 the stack smashing detection mechanisms.
2633
Simon Glass3423f212017-04-26 22:27:52 -06002634endmenu
2635
Heiko Schocher09dbb852016-09-21 07:58:19 +02002636config CMD_UBI
2637 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher09dbb852016-09-21 07:58:19 +02002638 select MTD_UBI
2639 help
2640 UBI is a software layer above MTD layer which admits use of LVM-like
2641 logical volumes on top of MTD devices, hides some complexities of
2642 flash chips like wear and bad blocks and provides some other useful
2643 capabilities. Please, consult the MTD web site for more details
2644 (www.linux-mtd.infradead.org). Activate this option if you want
2645 to use U-Boot UBI commands.
Miquel Raynal12f1ff12018-09-29 12:58:29 +02002646 It is also strongly encouraged to also enable CONFIG_MTD to get full
2647 partition support.
Heiko Schocher09dbb852016-09-21 07:58:19 +02002648
Philippe Reynes10d53222020-03-23 19:20:47 +01002649config CMD_UBI_RENAME
2650 bool "Enable rename"
2651 depends on CMD_UBI
Philippe Reynes10d53222020-03-23 19:20:47 +01002652 help
2653 Enable a "ubi" command to rename ubi volume:
2654 ubi rename <oldname> <newname>
2655
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002656config CMD_UBIFS
2657 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard1e6a0962017-03-03 14:53:22 +01002658 depends on CMD_UBI
Michal Simek84f3dec2018-07-23 15:55:13 +02002659 default y if CMD_UBI
Karl Beldan3418eeb2017-07-12 16:11:47 +00002660 select LZO
Pali Rohár67a8b272022-05-23 22:50:36 +02002661 select GZIP
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002662 help
2663 UBIFS is a file system for flash devices which works on top of UBI.
2664
Aswath Govindrajubb5b9fe2021-08-13 23:04:41 +05302665config MMC_SPEED_MODE_SET
2666 bool "set speed mode using mmc command"
2667 depends on CMD_MMC
2668 default n
2669 help
2670 Enable setting speed mode using mmc rescan and mmc dev commands.
2671 The speed mode is provided as the last argument in these commands
2672 and is indicated using the index from enum bus_mode in
2673 include/mmc.h. A speed mode can be set only if it has already
2674 been enabled in the device tree.
Simon Glass29499a02016-01-17 20:53:51 -07002675endmenu