blob: 54197160116b3d609c1710975bb56a69506a6c91 [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
Samuel Mendoza-Jonasfeebd6c2022-08-08 21:46:04 +09301845config CMD_NCSI
1846 bool "ncsi"
1847 depends on PHY_NCSI
1848 help
1849 Manually configure the attached NIC via NC-SI.
1850 Normally this happens automatically before other network
1851 operations.
1852
Joe Hershberger0824ad92018-04-13 15:26:32 -05001853endif
1854
Simon Glass12b85702017-05-17 03:25:17 -06001855config CMD_ETHSW
1856 bool "ethsw"
1857 help
1858 Allow control of L2 Ethernet switch commands. These are supported
1859 by the vsc9953 Ethernet driver at present. Sub-commands allow
1860 operations such as enabling / disabling a port and
1861 viewing/maintaining the filtering database (FDB)
1862
Joe Hershberger0824ad92018-04-13 15:26:32 -05001863config CMD_PXE
1864 bool "pxe"
John Keeping9b60a172022-07-28 11:19:15 +01001865 select PXE_UTILS
Joe Hershberger0824ad92018-04-13 15:26:32 -05001866 help
1867 Boot image via network using PXE protocol
Michal Simek2f785a12018-02-26 16:01:02 +01001868
Lothar Felten776fc102018-06-22 22:29:54 +02001869config CMD_WOL
1870 bool "wol"
1871 help
1872 Wait for wake-on-lan Magic Packet
1873
Joe Hershbergerb0429462018-04-13 15:26:30 -05001874endif
Simon Glass29499a02016-01-17 20:53:51 -07001875
1876menu "Misc commands"
1877
Simon Glassb575bfc2017-04-26 22:27:55 -06001878config CMD_BMP
1879 bool "Enable 'bmp' command"
1880 depends on LCD || DM_VIDEO || VIDEO
1881 help
Andrius Štikonas1d5ccd62019-09-23 22:43:41 +01001882 This provides a way to obtain information about a BMP-format image
Simon Glassb575bfc2017-04-26 22:27:55 -06001883 and to display it. BMP (which presumably stands for BitMaP) is a
1884 file format defined by Microsoft which supports images of various
1885 depths, formats and compression methods. Headers on the file
1886 determine the formats used. This command can be used by first loading
1887 the image into RAM, then using this command to look at it or display
1888 it.
1889
Alex Kiernane710fa62018-05-12 05:49:47 +00001890config CMD_BOOTCOUNT
1891 bool "bootcount"
1892 depends on BOOTCOUNT_LIMIT
1893 help
1894 Enable the bootcount command, which allows interrogation and
1895 reset of the bootcounter.
1896
Simon Glassffab9a02017-04-26 22:27:56 -06001897config CMD_BSP
1898 bool "Enable board-specific commands"
1899 help
1900 (deprecated: instead, please define a Kconfig option for each command)
1901
1902 Some boards have board-specific commands which are only enabled
1903 during developemnt and need to be turned off for production. This
1904 option provides a way to control this. The commands that are enabled
1905 vary depending on the board.
1906
Eric Nelsonfaf4f052016-03-28 10:05:44 -07001907config CMD_BLOCK_CACHE
1908 bool "blkcache - control and stats for block cache"
1909 depends on BLOCK_CACHE
1910 default y if BLOCK_CACHE
1911 help
1912 Enable the blkcache command, which can be used to control the
1913 operation of the cache functions.
1914 This is most useful when fine-tuning the operation of the cache
1915 during development, but also allows the cache to be disabled when
1916 it might hurt performance (e.g. when using the ums command).
1917
Philippe Reynesa558b182020-07-24 18:19:47 +02001918config CMD_BUTTON
1919 bool "button"
1920 depends on BUTTON
1921 default y if BUTTON
1922 help
1923 Enable the 'button' command which allows to get the status of
1924 buttons supported by the board. The buttonss can be listed with
1925 'button list' and state can be known with 'button <label>'.
1926 Any button drivers can be controlled with this command, e.g.
1927 button_gpio.
1928
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001929config CMD_CACHE
1930 bool "icache or dcache"
1931 help
1932 Enable the "icache" and "dcache" commands
1933
Heinrich Schuchardt13ea6852018-09-07 19:43:11 +02001934config CMD_CONITRACE
1935 bool "conitrace - trace console input codes"
1936 help
1937 Enable the 'conitrace' command which displays the codes received
1938 from the console input as hexadecimal numbers.
1939
Anatolij Gustschine0455a42018-12-01 10:47:20 +01001940config CMD_CLS
1941 bool "Enable clear screen command 'cls'"
Simon Glassa8173bc2022-10-06 08:36:15 -06001942 default y if LCD || DM_VIDEO
Anatolij Gustschine0455a42018-12-01 10:47:20 +01001943 help
1944 Enable the 'cls' command which clears the screen contents
1945 on video frame buffer.
1946
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001947config CMD_EFIDEBUG
1948 bool "efidebug - display/configure UEFI environment"
1949 depends on EFI_LOADER
Heinrich Schuchardt3db35912019-05-11 09:53:33 +02001950 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001951 help
1952 Enable the 'efidebug' command which provides a subset of UEFI
1953 shell utility with simplified functionality. It will be useful
1954 particularly for managing boot parameters as well as examining
1955 various EFI status for debugging.
1956
Masahisa Kojimac5ff0a02022-09-12 17:33:50 +09001957config CMD_EFICONFIG
1958 bool "eficonfig - provide menu-driven uefi variables maintenance interface"
1959 depends on CMD_BOOTEFI_BOOTMGR
1960 help
1961 Enable the 'eficonfig' command which provides the menu-driven UEFI
1962 variable maintenance interface.
1963
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01001964config CMD_EXCEPTION
1965 bool "exception - raise exception"
Heinrich Schuchardtadaea9c2020-11-12 00:29:57 +01001966 depends on ARM || RISCV || SANDBOX || X86
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01001967 help
1968 Enable the 'exception' command which allows to raise an exception.
1969
Simon Glassfc8a5292017-04-10 11:34:59 -06001970config CMD_LED
1971 bool "led"
Jan Kiszka89077ba2019-01-03 09:08:42 +01001972 depends on LED
Simon Glassfc8a5292017-04-10 11:34:59 -06001973 default y if LED
1974 help
1975 Enable the 'led' command which allows for control of LEDs supported
1976 by the board. The LEDs can be listed with 'led list' and controlled
1977 with led on/off/togle/blink. Any LED drivers can be controlled with
1978 this command, e.g. led_gpio.
1979
Chris Packham3e257df2017-04-29 15:20:28 +12001980config CMD_DATE
1981 bool "date"
1982 default y if DM_RTC
AKASHI Takahiro51ba5222019-11-13 09:44:49 +09001983 select LIB_DATE
Chris Packham3e257df2017-04-29 15:20:28 +12001984 help
1985 Enable the 'date' command for getting/setting the time/date in RTC
1986 devices.
1987
Rasmus Villemoescc092022020-07-06 22:01:15 +02001988config CMD_RTC
1989 bool "rtc"
1990 depends on DM_RTC
1991 help
1992 Enable the 'rtc' command for low-level access to RTC devices.
1993
Simon Glass29499a02016-01-17 20:53:51 -07001994config CMD_TIME
1995 bool "time"
1996 help
1997 Run commands and summarize execution time.
1998
Simon Glassfa744522017-05-17 03:25:23 -06001999config CMD_GETTIME
2000 bool "gettime - read elapsed time"
2001 help
2002 Enable the 'gettime' command which reads the elapsed time since
2003 U-Boot started running. This shows the time in seconds and
2004 milliseconds. See also the 'bootstage' command which provides more
2005 flexibility for boot timing.
2006
Samuel Dionne-Riele69e1f12022-08-18 15:44:04 -04002007config CMD_PAUSE
2008 bool "pause command"
2009 help
2010 Delay execution waiting for any user input.
2011 Useful to allow the user to read a failure log.
2012
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002013config CMD_RNG
2014 bool "rng command"
2015 depends on DM_RNG
Sughosh Ganu6daac6b2022-07-22 21:32:09 +05302016 default y if SANDBOX
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002017 select HEXDUMP
2018 help
2019 Print bytes from the hardware random number generator.
2020
Chris Morgan61a96182021-08-25 11:22:57 -05002021config CMD_KASLRSEED
2022 bool "kaslrseed"
2023 depends on DM_RNG
2024 help
2025 Set the kaslr-seed in the chosen node with entropy provided by a
2026 hardware random number generator.
2027
Bin Meng7c4f7be2020-10-13 18:45:05 +08002028config CMD_SLEEP
Simon Glass29499a02016-01-17 20:53:51 -07002029 bool "sleep"
2030 default y
2031 help
2032 Delay execution for some time
2033
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002034config CMD_MP
2035 bool "support for multiprocessor commands"
2036 depends on MP
2037 default y
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002038 help
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002039 This enables commands to bringup different processors
2040 in multiprocessor cases.
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002041
Simon Glass29499a02016-01-17 20:53:51 -07002042config CMD_TIMER
2043 bool "timer"
2044 help
2045 Access the system timer.
2046
Simon Glass29499a02016-01-17 20:53:51 -07002047config CMD_SOUND
2048 bool "sound"
2049 depends on SOUND
2050 help
2051 This provides basic access to the U-Boot's sound support. The main
2052 feature is to play a beep.
2053
2054 sound init - set up sound system
2055 sound play - play a sound
2056
Patrice Chotard7b81c052019-11-25 09:07:38 +01002057config CMD_SYSBOOT
2058 bool "sysboot"
John Keeping9b60a172022-07-28 11:19:15 +01002059 select PXE_UTILS
Patrice Chotard7b81c052019-11-25 09:07:38 +01002060 help
2061 Boot image via local extlinux.conf file
2062
Miao Yan92106272016-05-22 19:37:17 -07002063config CMD_QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002064 bool "qfw"
Miao Yan4fcd7f22016-05-22 19:37:14 -07002065 select QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002066 help
2067 This provides access to the QEMU firmware interface. The main
2068 feature is to allow easy loading of files passed to qemu-system
2069 via -kernel / -initrd
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002070
Frédéric Danised2e8e42020-03-20 10:59:22 +01002071config CMD_PSTORE
2072 bool "pstore"
2073 help
2074 This provides access to Linux PStore with Rammoops backend. The main
2075 feature is to allow to display or save PStore records.
2076
2077 See doc/pstore.rst for more information.
2078
2079if CMD_PSTORE
2080
2081config CMD_PSTORE_MEM_ADDR
2082 hex "Memory Address"
2083 depends on CMD_PSTORE
2084 help
2085 Base addr used for PStore ramoops memory, should be identical to
2086 ramoops.mem_address parameter used by kernel
2087
2088config CMD_PSTORE_MEM_SIZE
2089 hex "Memory size"
2090 depends on CMD_PSTORE
2091 default "0x10000"
2092 help
2093 Size of PStore ramoops memory, should be identical to ramoops.mem_size
2094 parameter used by kernel, a power of 2 and larger than the sum of the
2095 record sizes
2096
2097config CMD_PSTORE_RECORD_SIZE
2098 hex "Dump record size"
2099 depends on CMD_PSTORE
2100 default "0x1000"
2101 help
2102 Size of each dump done on oops/panic, should be identical to
2103 ramoops.record_size parameter used by kernel and a power of 2
2104 Must be non-zero
2105
2106config CMD_PSTORE_CONSOLE_SIZE
2107 hex "Kernel console log size"
2108 depends on CMD_PSTORE
2109 default "0x1000"
2110 help
2111 Size of kernel console log, should be identical to
2112 ramoops.console_size parameter used by kernel and a power of 2
2113 Must be non-zero
2114
2115config CMD_PSTORE_FTRACE_SIZE
2116 hex "FTrace log size"
2117 depends on CMD_PSTORE
2118 default "0x1000"
2119 help
2120 Size of ftrace log, should be identical to ramoops.ftrace_size
2121 parameter used by kernel and a power of 2
2122
2123config CMD_PSTORE_PMSG_SIZE
2124 hex "User space message log size"
2125 depends on CMD_PSTORE
2126 default "0x1000"
2127 help
2128 Size of user space message log, should be identical to
2129 ramoops.pmsg_size parameter used by kernel and a power of 2
2130
2131config CMD_PSTORE_ECC_SIZE
2132 int "ECC size"
2133 depends on CMD_PSTORE
2134 default "0"
2135 help
2136 if non-zero, the option enables ECC support and specifies ECC buffer
2137 size in bytes (1 is a special value, means 16 bytes ECC), should be
2138 identical to ramoops.ramoops_ecc parameter used by kernel
2139
2140endif
2141
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002142source "cmd/mvebu/Kconfig"
2143
Simon Glass89342ef2017-08-04 16:34:55 -06002144config CMD_TERMINAL
2145 bool "terminal - provides a way to attach a serial terminal"
2146 help
2147 Provides a 'cu'-like serial terminal command. This can be used to
2148 access other serial ports from the system console. The terminal
2149 is very simple with no special processing of characters. As with
2150 cu, you can press ~. (tilde followed by period) to exit.
2151
Simon Glass6d56aad2017-08-04 16:35:02 -06002152config CMD_UUID
2153 bool "uuid, guid - generation of unique IDs"
Adam Ford70c8f052018-02-06 12:14:28 -06002154 select LIB_UUID
Simon Glass6d56aad2017-08-04 16:35:02 -06002155 help
2156 This enables two commands:
2157
2158 uuid - generate random Universally Unique Identifier
2159 guid - generate Globally Unique Identifier based on random UUID
2160
2161 The two commands are very similar except for the endianness of the
2162 output.
2163
Simon Glass724e2a42022-10-06 08:36:06 -06002164config CMD_VIDCONSOLE
2165 bool "lcdputs and setcurs"
2166 depends on DM_VIDEO
2167 default y
2168 help
2169 Enabling this will provide 'setcurs' and 'lcdputs' commands which
2170 support cursor positioning and drawing strings on the video
2171 console (framebuffer).
2172
2173 The name 'lcdputs' is a bit of a misnomer, but so named because the
2174 video device is often an LCD.
2175
Simon Glass29499a02016-01-17 20:53:51 -07002176endmenu
2177
Lokesh Vutla962c4e02017-12-29 11:47:49 +05302178source "cmd/ti/Kconfig"
2179
Simon Glass29499a02016-01-17 20:53:51 -07002180config CMD_BOOTSTAGE
2181 bool "Enable the 'bootstage' command"
2182 depends on BOOTSTAGE
2183 help
2184 Add a 'bootstage' command which supports printing a report
2185 and un/stashing of bootstage data.
2186
2187menu "Power commands"
2188config CMD_PMIC
2189 bool "Enable Driver Model PMIC command"
2190 depends on DM_PMIC
2191 help
2192 This is the pmic command, based on a driver model pmic's API.
2193 Command features are unchanged:
2194 - list - list pmic devices
2195 - pmic dev <id> - show or [set] operating pmic device (NEW)
2196 - pmic dump - dump registers
2197 - pmic read address - read byte of register at address
2198 - pmic write address - write byte to register at address
2199 The only one change for this command is 'dev' subcommand.
2200
2201config CMD_REGULATOR
2202 bool "Enable Driver Model REGULATOR command"
2203 depends on DM_REGULATOR
2204 help
2205 This command is based on driver model regulator's API.
2206 User interface features:
2207 - list - list regulator devices
2208 - regulator dev <id> - show or [set] operating regulator device
2209 - regulator info - print constraints info
2210 - regulator status - print operating status
2211 - regulator value <val] <-f> - print/[set] voltage value [uV]
2212 - regulator current <val> - print/[set] current value [uA]
2213 - regulator mode <id> - print/[set] operating mode id
2214 - regulator enable - enable the regulator output
2215 - regulator disable - disable the regulator output
2216
2217 The '-f' (force) option can be used for set the value which exceeds
2218 the limits, which are found in device-tree and are kept in regulator's
Simon Glass71fa5b42020-12-03 16:55:18 -07002219 uclass plat structure.
Simon Glass29499a02016-01-17 20:53:51 -07002220
2221endmenu
2222
2223menu "Security commands"
Simon Glass528fdd12017-04-26 22:27:49 -06002224config CMD_AES
2225 bool "Enable the 'aes' command"
2226 select AES
2227 help
2228 This provides a means to encrypt and decrypt data using the AES
2229 (Advanced Encryption Standard). This algorithm uses a symetric key
2230 and is widely used as a streaming cipher. Different key lengths are
2231 supported by the algorithm but this command only supports 128 bits
2232 at present.
2233
Simon Glass311ec4f2017-04-26 22:27:53 -06002234config CMD_BLOB
2235 bool "Enable the 'blob' command"
Aymen Sghaierf18c71f2021-03-25 17:30:27 +08002236 depends on !MX6ULL && !MX6SLL && !MX6SL
2237 select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
Simon Glass311ec4f2017-04-26 22:27:53 -06002238 help
2239 This is used with the Freescale secure boot mechanism.
2240
2241 Freescale's SEC block has built-in Blob Protocol which provides
2242 a method for protecting user-defined data across system power
2243 cycles. SEC block protects data in a data structure called a Blob,
2244 which provides both confidentiality and integrity protection.
2245
2246 Encapsulating data as a blob
2247 Each time that the Blob Protocol is used to protect data, a
2248 different randomly generated key is used to encrypt the data.
2249 This random key is itself encrypted using a key which is derived
2250 from SoC's non-volatile secret key and a 16 bit Key identifier.
2251 The resulting encrypted key along with encrypted data is called a
2252 blob. The non-volatile secure key is available for use only during
2253 secure boot.
2254
2255 During decapsulation, the reverse process is performed to get back
2256 the original data.
2257
2258 Sub-commands:
Michal Simekf751ff52018-07-23 15:55:12 +02002259 blob enc - encapsulating data as a cryptgraphic blob
Simon Glass311ec4f2017-04-26 22:27:53 -06002260 blob dec - decapsulating cryptgraphic blob to get the data
2261
2262 Syntax:
2263
2264 blob enc src dst len km
2265
2266 Encapsulate and create blob of data $len bytes long
2267 at address $src and store the result at address $dst.
2268 $km is the 16 byte key modifier is also required for
2269 generation/use as key for cryptographic operation. Key
2270 modifier should be 16 byte long.
2271
2272 blob dec src dst len km
2273
2274 Decapsulate the blob of data at address $src and
2275 store result of $len byte at addr $dst.
2276 $km is the 16 byte key modifier is also required for
2277 generation/use as key for cryptographic operation. Key
2278 modifier should be 16 byte long.
2279
Simon Glass027608e2017-05-17 03:25:25 -06002280config CMD_HASH
2281 bool "Support 'hash' command"
Simon Glassb22ec7a2017-05-17 09:05:34 -06002282 select HASH
Simon Glass027608e2017-05-17 03:25:25 -06002283 help
2284 This provides a way to hash data in memory using various supported
2285 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
2286 saved to memory or to an environment variable. It is also possible
2287 to verify a hash against data in memory.
2288
Michalis Pappasd382d222018-04-13 10:40:57 +03002289config CMD_HVC
2290 bool "Support the 'hvc' command"
2291 depends on ARM_SMCCC
2292 help
2293 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
2294 development and testing.
2295
2296config CMD_SMC
2297 bool "Support the 'smc' command"
2298 depends on ARM_SMCCC
2299 help
2300 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
2301 development and testing.
2302
Daniel Thompsona9e2c672017-05-19 17:26:58 +01002303config HASH_VERIFY
2304 bool "hash -v"
2305 depends on CMD_HASH
2306 help
2307 Add -v option to verify data against a hash.
2308
Jorge Ramirez-Ortiz7d80df92021-02-14 16:27:24 +01002309config CMD_SCP03
2310 bool "scp03 - SCP03 enable and rotate/provision operations"
2311 depends on SCP03
2312 help
2313 This command provides access to a Trusted Application
2314 running in a TEE to request Secure Channel Protocol 03
2315 (SCP03) enablement and/or rotation of its SCP03 keys.
2316
Miquel Raynal294f82a2018-05-15 11:57:05 +02002317config CMD_TPM_V1
2318 bool
2319
2320config CMD_TPM_V2
2321 bool
2322
Simon Glass29499a02016-01-17 20:53:51 -07002323config CMD_TPM
2324 bool "Enable the 'tpm' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002325 depends on TPM_V1 || TPM_V2
2326 select CMD_TPM_V1 if TPM_V1
2327 select CMD_TPM_V2 if TPM_V2
Simon Glass29499a02016-01-17 20:53:51 -07002328 help
2329 This provides a means to talk to a TPM from the command line. A wide
2330 range of commands if provided - see 'tpm help' for details. The
2331 command requires a suitable TPM on your board and the correct driver
2332 must be enabled.
2333
Miquel Raynal294f82a2018-05-15 11:57:05 +02002334if CMD_TPM
2335
Simon Glass29499a02016-01-17 20:53:51 -07002336config CMD_TPM_TEST
2337 bool "Enable the 'tpm test' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002338 depends on TPM_V1
Simon Glass29499a02016-01-17 20:53:51 -07002339 help
Miquel Raynal294f82a2018-05-15 11:57:05 +02002340 This provides a a series of tests to confirm that the TPMv1.x is
2341 working correctly. The tests cover initialisation, non-volatile RAM,
2342 extend, global lock and checking that timing is within expectations.
2343 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass29499a02016-01-17 20:53:51 -07002344 for other devices.
2345
Miquel Raynal294f82a2018-05-15 11:57:05 +02002346endif
2347
Simon Glass29499a02016-01-17 20:53:51 -07002348endmenu
2349
Moritz Fischer62b30272016-10-04 17:08:08 -07002350menu "Firmware commands"
2351config CMD_CROS_EC
2352 bool "Enable crosec command"
2353 depends on CROS_EC
2354 default y
2355 help
2356 Enable command-line access to the Chrome OS EC (Embedded
2357 Controller). This provides the 'crosec' command which has
2358 a number of sub-commands for performing EC tasks such as
2359 updating its flash, accessing a small saved context area
2360 and talking to the I2C bus behind the EC (if there is one).
2361endmenu
2362
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002363menu "Filesystem commands"
Marek Behún27cec792017-09-03 17:00:30 +02002364config CMD_BTRFS
2365 bool "Enable the 'btrsubvol' command"
2366 select FS_BTRFS
2367 help
2368 This enables the 'btrsubvol' command to list subvolumes
2369 of a BTRFS filesystem. There are no special commands for
2370 listing BTRFS directories or loading BTRFS files - this
2371 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
2372 when BTRFS is enabled (see FS_BTRFS).
2373
Simon Glass0501e3e2017-04-26 22:27:58 -06002374config CMD_CBFS
2375 bool "Enable the 'cbfs' command"
Simon Glass579b51a2017-04-26 22:27:59 -06002376 depends on FS_CBFS
Simon Glass0501e3e2017-04-26 22:27:58 -06002377 help
2378 Define this to enable support for reading from a Coreboot
2379 filesystem. This is a ROM-based filesystem used for accessing files
2380 on systems that use coreboot as the first boot-loader and then load
2381 U-Boot to actually boot the Operating System. Available commands are
2382 cbfsinit, cbfsinfo, cbfsls and cbfsload.
2383
Simon Glass519805e2017-04-26 22:28:03 -06002384config CMD_CRAMFS
2385 bool "Enable the 'cramfs' command"
Simon Glass690f5092017-04-26 22:28:04 -06002386 depends on FS_CRAMFS
Simon Glass519805e2017-04-26 22:28:03 -06002387 help
2388 This provides commands for dealing with CRAMFS (Compressed ROM
2389 filesystem). CRAMFS is useful when space is tight since files are
2390 compressed. Two commands are provided:
2391
2392 cramfsls - lists files in a cramfs image
2393 cramfsload - loads a file from a cramfs image
2394
Huang Jiananc8eefae2022-02-26 15:05:50 +08002395config CMD_EROFS
2396 bool "EROFS command support"
2397 select FS_EROFS
2398 help
2399 Support for the EROFS fs
2400
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002401config CMD_EXT2
2402 bool "ext2 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002403 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002404 help
2405 Enables EXT2 FS command
2406
2407config CMD_EXT4
2408 bool "ext4 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002409 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002410 help
2411 Enables EXT4 FS command
2412
2413config CMD_EXT4_WRITE
2414 depends on CMD_EXT4
2415 bool "ext4 write command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002416 select EXT4_WRITE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002417 help
2418 Enables EXT4 FS write command
2419
2420config CMD_FAT
2421 bool "FAT command support"
Sekhar Nori1909a7b2017-06-02 17:53:59 +05302422 select FS_FAT
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002423 help
2424 Support for the FAT fs
2425
Joao Marcos Costaa12c66f2020-07-30 15:33:48 +02002426config CMD_SQUASHFS
2427 bool "SquashFS command support"
2428 select FS_SQUASHFS
2429 help
2430 Enables SquashFS filesystem commands (e.g. load, ls).
2431
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002432config CMD_FS_GENERIC
2433 bool "filesystem commands"
2434 help
2435 Enables filesystem commands (e.g. load, ls) that work for multiple
2436 fs types.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002437
Josua Mayerf5ebfe72017-04-24 10:10:45 +02002438config CMD_FS_UUID
2439 bool "fsuuid command"
2440 help
2441 Enables fsuuid command for filesystem UUID.
2442
Simon Glassc4abb4b2017-05-17 03:25:37 -06002443config CMD_JFFS2
2444 bool "jffs2 command"
Simon Glass8c6c7c22017-05-17 03:25:38 -06002445 select FS_JFFS2
Simon Glassc4abb4b2017-05-17 03:25:37 -06002446 help
2447 Enables commands to support the JFFS2 (Journalling Flash File System
2448 version 2) filesystem. This enables fsload, ls and fsinfo which
2449 provide the ability to load files, list directories and obtain
2450 filesystem information.
2451
Tom Rini9c8268d2021-12-17 18:08:47 -05002452config JFFS2_DEV
2453 string "Default device for JFFS2"
2454 depends on CMD_JFFS2
2455 default "nor0"
2456 help
2457 The default device to use with the jffs2 command.
2458
2459config JFFS2_PART_OFFSET
2460 hex "Default offset within flash to locate the JFFS2 image"
2461 depends on CMD_JFFS2
2462 default 0x0
2463 help
2464 The default offset within flash to locate the JFFS2 image.
2465
2466config JFFS2_PART_SIZE
2467 hex "Default size of JFFS2 partition"
2468 depends on CMD_JFFS2
2469 default 0xFFFFFFFF
2470 help
2471 The default size of the JFFS2 partition
2472
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002473config CMD_MTDPARTS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002474 bool "MTD partition support"
Miquel Raynald2418202019-10-25 19:39:30 +02002475 depends on MTD
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002476 help
Miquel Raynal007dddc2018-09-29 12:58:30 +02002477 MTD partitioning tool support.
2478 It is strongly encouraged to avoid using this command
2479 anymore along with 'sf', 'nand', 'onenand'. One can still
2480 declare the partitions in the mtdparts environment variable
2481 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002482
Simon Glass66d7db02017-08-04 16:34:30 -06002483config CMD_MTDPARTS_SPREAD
2484 bool "Padd partition size to take account of bad blocks"
2485 depends on CMD_MTDPARTS
2486 help
2487 This enables the 'spread' sub-command of the mtdparts command.
2488 This command will modify the existing mtdparts variable by increasing
2489 the size of the partitions such that 1) each partition's net size is
2490 at least as large as the size specified in the mtdparts variable and
2491 2) each partition starts on a good block.
2492
Alexander Dahl6cae4f42019-10-30 16:53:55 +01002493config CMD_MTDPARTS_SHOW_NET_SIZES
2494 bool "Show net size (w/o bad blocks) of partitions"
2495 depends on CMD_MTDPARTS
2496 help
2497 Adds two columns to the printed partition table showing the
2498 effective usable size of a partition, if bad blocks are taken
2499 into account.
2500
Miquel Raynalf21322f2019-10-03 19:50:25 +02002501config MTDIDS_DEFAULT
2502 string "Default MTD IDs"
Miquel Raynald2418202019-10-25 19:39:30 +02002503 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002504 help
2505 Defines a default MTD IDs list for use with MTD partitions in the
2506 Linux MTD command line partitions format.
2507
2508config MTDPARTS_DEFAULT
2509 string "Default MTD partition scheme"
Miquel Raynald2418202019-10-25 19:39:30 +02002510 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002511 help
2512 Defines a default MTD partitioning scheme in the Linux MTD command
2513 line partitions format
2514
Simon Glassed4ee312017-08-04 16:34:41 -06002515config CMD_REISER
2516 bool "reiser - Access to reiserfs filesystems"
2517 help
2518 This provides two commands which operate on a resierfs filesystem,
2519 commonly used some years ago:
2520
2521 reiserls - list files
2522 reiserload - load a file
2523
Simon Glass19c5caf2017-08-04 16:34:58 -06002524config CMD_YAFFS2
2525 bool "yaffs2 - Access of YAFFS2 filesystem"
2526 depends on YAFFS2
2527 default y
2528 help
2529 This provides commands for accessing a YAFFS2 filesystem. Yet
2530 Another Flash Filesystem 2 is a filesystem designed specifically
2531 for NAND flash. It incorporates bad-block management and ensures
2532 that device writes are sequential regardless of filesystem
2533 activity.
2534
Simon Glassdc82dee2017-08-04 16:35:04 -06002535config CMD_ZFS
2536 bool "zfs - Access of ZFS filesystem"
2537 help
2538 This provides commands to accessing a ZFS filesystem, commonly used
2539 on Solaris systems. Two sub-commands are provided:
2540
2541 zfsls - list files in a directory
2542 zfsload - load a file
2543
2544 See doc/README.zfs for more details.
2545
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002546endmenu
2547
Simon Glass3423f212017-04-26 22:27:52 -06002548menu "Debug commands"
2549
Simon Glasse1efad22021-03-15 18:00:24 +13002550config CMD_CBSYSINFO
2551 bool "cbsysinfo"
2552 depends on X86
2553 default y if SYS_COREBOOT
2554 help
2555 This provides information about the coreboot sysinfo table stored in
2556 memory by coreboot before jumping to U-Boot. It can be useful for
2557 debugging the beaaviour of coreboot or U-Boot.
2558
Stefan Roese2702b272022-09-02 13:57:51 +02002559config CMD_CYCLIC
2560 bool "cyclic - Show information about cyclic functions"
2561 depends on CYCLIC
2562 default y
2563 help
2564 This enables the 'cyclic' command which provides information about
2565 cyclic execution functions. This infrastructure allows registering
2566 functions to be executed cyclically, e.g. every 100ms. These commands
2567 are supported:
2568
2569 cyclic list - list cyclic functions
2570 cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic
2571 demo function
2572
2573 See doc/develop/cyclic.rst for more details.
2574
Simon Glass20ea5632017-04-26 22:28:08 -06002575config CMD_DIAG
2576 bool "diag - Board diagnostics"
2577 help
2578 This command provides access to board diagnostic tests. These are
2579 called Power-on Self Tests (POST). The command allows listing of
2580 available tests and running either all the tests, or specific tests
2581 identified by name.
2582
Simon Glass3304fa82022-03-04 08:43:06 -07002583config CMD_EVENT
2584 bool "event - Show information about events"
2585 default y if EVENT_DEBUG
2586 help
2587 This enables the 'event' command which provides information about
2588 events and event-handler routines. This can help to device event
2589 hadling.
2590
Simon Glass4c3a6202017-05-17 03:25:39 -06002591config CMD_IRQ
2592 bool "irq - Show information about interrupts"
Pragnesh Patel3375e0b2020-08-24 20:38:55 +05302593 depends on !ARM && !MIPS && !RISCV && !SH
Simon Glass4c3a6202017-05-17 03:25:39 -06002594 help
2595 This enables two commands:
2596
2597 interrupts - enable or disable interrupts
2598 irqinfo - print device-specific interrupt information
Simon Glassfd9948c2017-05-17 03:25:40 -06002599
2600config CMD_KGDB
2601 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simek9d364412018-10-04 14:26:13 +02002602 depends on PPC
Simon Glassfd9948c2017-05-17 03:25:40 -06002603 help
2604 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2605 over a serial link for debugging purposes. This allows
2606 single-stepping, inspecting variables, etc. This is supported only
2607 on PowerPC at present.
2608
Simon Glass5684f8f2017-12-04 13:48:26 -07002609config CMD_LOG
2610 bool "log - Generation, control and access to logging"
Heinrich Schuchardt74bad682018-04-19 22:02:46 +02002611 select LOG
Sean Anderson304882e2020-10-27 19:55:38 -04002612 select GETOPT
Simon Glass5684f8f2017-12-04 13:48:26 -07002613 help
2614 This provides access to logging features. It allows the output of
2615 log data to be controlled to a limited extent (setting up the default
Simon Glass14c8a062017-12-04 13:48:27 -07002616 maximum log level for emitting of records). It also provides access
2617 to a command used for testing the log system.
Simon Glass5684f8f2017-12-04 13:48:26 -07002618
Simon Glass126cb792017-08-04 16:34:59 -06002619config CMD_TRACE
2620 bool "trace - Support tracing of function calls and timing"
Simon Glass84b77112021-11-24 09:26:39 -07002621 depends on TRACE
2622 default y
Simon Glass126cb792017-08-04 16:34:59 -06002623 help
2624 Enables a command to control using of function tracing within
2625 U-Boot. This allows recording of call traces including timing
2626 information. The command can write data to memory for exporting
Simon Glassbfce7fc2019-04-08 13:20:51 -06002627 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glass126cb792017-08-04 16:34:59 -06002628 details.
2629
Igor Opaniuk60291192018-06-03 21:56:39 +03002630config CMD_AVB
2631 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniuke0df0352018-07-17 14:33:25 +03002632 depends on AVB_VERIFY
Igor Opaniuk60291192018-06-03 21:56:39 +03002633 help
2634 Enables a "avb" command to perform verification of partitions using
2635 Android Verified Boot 2.0 functionality. It includes such subcommands:
2636 avb init - initialize avb2 subsystem
2637 avb read_rb - read rollback index
2638 avb write_rb - write rollback index
2639 avb is_unlocked - check device lock state
2640 avb get_uuid - read and print uuid of a partition
2641 avb read_part - read data from partition
2642 avb read_part_hex - read data from partition and output to stdout
2643 avb write_part - write data to partition
2644 avb verify - run full verification chain
Joel Peshkin369d87a2021-04-11 11:21:58 +02002645
2646config CMD_STACKPROTECTOR_TEST
2647 bool "Test command for stack protector"
2648 depends on STACKPROTECTOR
2649 help
2650 Enable stackprot_test command
2651 The stackprot_test command will force a stack overrun to test
2652 the stack smashing detection mechanisms.
2653
Simon Glass3423f212017-04-26 22:27:52 -06002654endmenu
2655
Heiko Schocher09dbb852016-09-21 07:58:19 +02002656config CMD_UBI
2657 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher09dbb852016-09-21 07:58:19 +02002658 select MTD_UBI
2659 help
2660 UBI is a software layer above MTD layer which admits use of LVM-like
2661 logical volumes on top of MTD devices, hides some complexities of
2662 flash chips like wear and bad blocks and provides some other useful
2663 capabilities. Please, consult the MTD web site for more details
2664 (www.linux-mtd.infradead.org). Activate this option if you want
2665 to use U-Boot UBI commands.
Miquel Raynal12f1ff12018-09-29 12:58:29 +02002666 It is also strongly encouraged to also enable CONFIG_MTD to get full
2667 partition support.
Heiko Schocher09dbb852016-09-21 07:58:19 +02002668
Philippe Reynes10d53222020-03-23 19:20:47 +01002669config CMD_UBI_RENAME
2670 bool "Enable rename"
2671 depends on CMD_UBI
Philippe Reynes10d53222020-03-23 19:20:47 +01002672 help
2673 Enable a "ubi" command to rename ubi volume:
2674 ubi rename <oldname> <newname>
2675
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002676config CMD_UBIFS
2677 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard1e6a0962017-03-03 14:53:22 +01002678 depends on CMD_UBI
Michal Simek84f3dec2018-07-23 15:55:13 +02002679 default y if CMD_UBI
Karl Beldan3418eeb2017-07-12 16:11:47 +00002680 select LZO
Pali Rohár67a8b272022-05-23 22:50:36 +02002681 select GZIP
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002682 help
2683 UBIFS is a file system for flash devices which works on top of UBI.
2684
Aswath Govindrajubb5b9fe2021-08-13 23:04:41 +05302685config MMC_SPEED_MODE_SET
2686 bool "set speed mode using mmc command"
2687 depends on CMD_MMC
2688 default n
2689 help
2690 Enable setting speed mode using mmc rescan and mmc dev commands.
2691 The speed mode is provided as the last argument in these commands
2692 and is indicated using the index from enum bus_mode in
2693 include/mmc.h. A speed mode can be set only if it has already
2694 been enabled in the device tree.
Simon Glass29499a02016-01-17 20:53:51 -07002695endmenu