blob: 5f2562bbeade423f0a097402504be3bb5dcd98c4 [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
34config AUTO_COMPLETE
35 bool "Enable auto complete using TAB"
36 depends on CMDLINE
37 default y
38 help
39 Enable auto completion of commands using TAB.
40
41config SYS_LONGHELP
42 bool "Enable long help messages"
43 depends on CMDLINE
44 default y if CMDLINE
45 help
46 Defined when you want long help messages included
47 Do not set this option when short of memory.
48
Simon Glass29499a02016-01-17 20:53:51 -070049config SYS_PROMPT
50 string "Shell prompt"
Michal Simekf048cae2019-09-25 12:32:41 +020051 default "Zynq> " if ARCH_ZYNQ
Michal Simek4f107432019-09-25 12:37:15 +020052 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass29499a02016-01-17 20:53:51 -070053 default "=> "
54 help
55 This string is displayed in the command line to the left of the
56 cursor.
57
Christoph Muellner388b1452019-04-05 13:03:46 +020058config SYS_XTRACE
59 string "Command execution tracer"
60 depends on CMDLINE
61 default y if CMDLINE
62 help
63 This option enables the possiblity to print all commands before
64 executing them and after all variables are evaluated (similar
65 to Bash's xtrace/'set -x' feature).
66 To enable the tracer a variable "xtrace" needs to be defined in
67 the environment.
68
Simon Glass29499a02016-01-17 20:53:51 -070069menu "Autoboot options"
70
Masahiro Yamada622a01c2016-06-20 17:33:39 +090071config AUTOBOOT
72 bool "Autoboot"
73 default y
74 help
75 This enables the autoboot. See doc/README.autoboot for detail.
76
Simon Glass29499a02016-01-17 20:53:51 -070077config AUTOBOOT_KEYED
78 bool "Stop autobooting via specific input key / string"
79 default n
80 help
81 This option enables stopping (aborting) of the automatic
82 boot feature only by issuing a specific input key or
83 string. If not enabled, any input key will abort the
84 U-Boot automatic booting process and bring the device
85 to the U-Boot prompt for user input.
86
87config AUTOBOOT_PROMPT
88 string "Autoboot stop prompt"
89 depends on AUTOBOOT_KEYED
90 default "Autoboot in %d seconds\\n"
91 help
92 This string is displayed before the boot delay selected by
93 CONFIG_BOOTDELAY starts. If it is not defined there is no
94 output indicating that autoboot is in progress.
95
96 Note that this define is used as the (only) argument to a
97 printf() call, so it may contain '%' format specifications,
98 provided that it also includes, sepearated by commas exactly
99 like in a printf statement, the required arguments. It is
100 the responsibility of the user to select only such arguments
101 that are valid in the given context.
102
103config AUTOBOOT_ENCRYPTION
104 bool "Enable encryption in autoboot stopping"
105 depends on AUTOBOOT_KEYED
Simon Glassa8cab882019-07-20 20:51:17 -0600106 help
107 This option allows a string to be entered into U-Boot to stop the
108 autoboot. The string itself is hashed and compared against the hash
109 in the environment variable 'bootstopkeysha256'. If it matches then
110 boot stops and a command-line prompt is presented.
111
112 This provides a way to ship a secure production device which can also
113 be accessed at the U-Boot command line.
Simon Glass29499a02016-01-17 20:53:51 -0700114
115config AUTOBOOT_DELAY_STR
116 string "Delay autobooting via specific input key / string"
117 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
118 help
119 This option delays the automatic boot feature by issuing
120 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
121 or the environment variable "bootdelaykey" is specified
122 and this string is received from console input before
123 autoboot starts booting, U-Boot gives a command prompt. The
124 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
125 used, otherwise it never times out.
126
127config AUTOBOOT_STOP_STR
128 string "Stop autobooting via specific input key / string"
129 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
130 help
131 This option enables stopping (aborting) of the automatic
132 boot feature only by issuing a specific input key or
133 string. If CONFIG_AUTOBOOT_STOP_STR or the environment
134 variable "bootstopkey" is specified and this string is
135 received from console input before autoboot starts booting,
136 U-Boot gives a command prompt. The U-Boot prompt never
137 times out, even if CONFIG_BOOT_RETRY_TIME is used.
138
139config AUTOBOOT_KEYED_CTRLC
140 bool "Enable Ctrl-C autoboot interruption"
141 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
142 default n
143 help
144 This option allows for the boot sequence to be interrupted
145 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
146 Setting this variable provides an escape sequence from the
147 limited "password" strings.
148
149config AUTOBOOT_STOP_STR_SHA256
150 string "Stop autobooting via SHA256 encrypted password"
151 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
152 help
153 This option adds the feature to only stop the autobooting,
154 and therefore boot into the U-Boot prompt, when the input
155 string / password matches a values that is encypted via
156 a SHA256 hash and saved in the environment.
157
Simon Glass9e476d92019-07-20 20:51:21 -0600158config AUTOBOOT_USE_MENUKEY
159 bool "Allow a specify key to run a menu from the environment"
160 depends on !AUTOBOOT_KEYED
161 help
162 If a specific key is pressed to stop autoboot, then the commands in
163 the environment variable 'menucmd' are executed before boot starts.
164
165config AUTOBOOT_MENUKEY
166 int "ASCII value of boot key to show a menu"
167 default 0
168 depends on AUTOBOOT_USE_MENUKEY
169 help
170 If this key is pressed to stop autoboot, then the commands in the
171 environment variable 'menucmd' will be executed before boot starts.
172 For example, 33 means "!" in ASCII, so pressing ! at boot would take
173 this action.
174
Simon Glass32679ba2019-07-20 20:51:25 -0600175config AUTOBOOT_MENU_SHOW
176 bool "Show a menu on boot"
AKASHI Takahiroc4927522019-09-12 15:31:22 +0900177 depends on CMD_BOOTMENU
Simon Glass32679ba2019-07-20 20:51:25 -0600178 help
179 This enables the boot menu, controlled by environment variables
180 defined by the board. The menu starts after running the 'preboot'
181 environmnent variable (if enabled) and before handling the boot delay.
182 See README.bootmenu for more details.
183
Simon Glass29499a02016-01-17 20:53:51 -0700184endmenu
185
Sam Protsenko13c1f3a2017-09-28 12:33:45 -0700186config BUILD_BIN2C
187 bool
188
Simon Glass29499a02016-01-17 20:53:51 -0700189comment "Commands"
190
191menu "Info commands"
192
193config CMD_BDI
194 bool "bdinfo"
195 default y
196 help
197 Print board info
198
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900199config CMD_CONFIG
200 bool "config"
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900201 default SANDBOX
Michal Simek84f3dec2018-07-23 15:55:13 +0200202 select BUILD_BIN2C
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900203 help
204 Print ".config" contents.
205
206 If this option is enabled, the ".config" file contents are embedded
207 in the U-Boot image and can be printed on the console by the "config"
208 command. This provides information of which options are enabled on
209 the running U-Boot.
210
Simon Glass29499a02016-01-17 20:53:51 -0700211config CMD_CONSOLE
212 bool "coninfo"
213 default y
214 help
215 Print console devices and information.
216
217config CMD_CPU
218 bool "cpu"
219 help
220 Print information about available CPUs. This normally shows the
221 number of CPUs, type (e.g. manufacturer, architecture, product or
222 internal name) and clock frequency. Other information may be
223 available depending on the CPU driver.
224
225config CMD_LICENSE
226 bool "license"
Masahiro Yamada81680332017-01-30 11:12:08 +0900227 select BUILD_BIN2C
Simon Glass29499a02016-01-17 20:53:51 -0700228 help
229 Print GPL license text
230
Simon Glass8c501022019-12-06 21:41:54 -0700231config CMD_PMC
232 bool "pmc"
233 help
234 Provides access to the Intel Power-Management Controller (PMC) so
235 that its state can be examined. This does not currently support
236 changing the state but it is still useful for debugging and seeing
237 what is going on.
238
Christophe Leroye538bbc2017-08-04 16:34:40 -0600239config CMD_REGINFO
240 bool "reginfo"
241 depends on PPC
242 help
243 Register dump
244
Simon Glass29499a02016-01-17 20:53:51 -0700245endmenu
246
247menu "Boot commands"
248
249config CMD_BOOTD
250 bool "bootd"
251 default y
252 help
253 Run the command stored in the environment "bootcmd", i.e.
254 "bootd" does the same thing as "run bootcmd".
255
256config CMD_BOOTM
257 bool "bootm"
258 default y
259 help
260 Boot an application image from the memory.
261
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500262config CMD_BOOTZ
263 bool "bootz"
264 help
265 Boot the Linux zImage
266
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400267config CMD_BOOTI
268 bool "booti"
Atish Patra583b4092019-05-06 17:49:39 -0700269 depends on ARM64 || RISCV
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400270 default y
271 help
272 Boot an AArch64 Linux Kernel image from memory.
273
Tom Rini9a102072019-09-20 17:36:50 -0400274config BOOTM_LINUX
275 bool "Support booting Linux OS images"
276 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
277 default y
278 help
279 Support booting the Linux kernel directly via a command such as bootm
280 or booti or bootz.
281
282config BOOTM_NETBSD
283 bool "Support booting NetBSD (non-EFI) loader images"
284 depends on CMD_BOOTM
285 default y
286 help
287 Support booting NetBSD via the bootm command.
288
289config BOOTM_OPENRTOS
290 bool "Support booting OPENRTOS / FreeRTOS images"
291 depends on CMD_BOOTM
292 help
293 Support booting OPENRTOS / FreeRTOS via the bootm command.
294
295config BOOTM_OSE
296 bool "Support booting Enea OSE images"
Tom Rini1d0b1fc2019-12-05 18:46:11 -0500297 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini9a102072019-09-20 17:36:50 -0400298 depends on CMD_BOOTM
299 help
300 Support booting Enea OSE images via the bootm command.
301
302config BOOTM_PLAN9
303 bool "Support booting Plan9 OS images"
304 depends on CMD_BOOTM
305 default y
306 help
307 Support booting Plan9 images via the bootm command.
308
309config BOOTM_RTEMS
310 bool "Support booting RTEMS OS images"
311 depends on CMD_BOOTM
312 default y
313 help
314 Support booting RTEMS images via the bootm command.
315
316config BOOTM_VXWORKS
317 bool "Support booting VxWorks OS images"
318 depends on CMD_BOOTM
319 default y
320 help
321 Support booting VxWorks images via the bootm command.
322
AKASHI Takahiro8d95b6e2019-11-08 10:32:15 +0900323config CMD_BOOTEFI
324 bool "bootefi"
325 depends on EFI_LOADER
326 default y
327 help
328 Boot an EFI image from memory.
329
Alexander Grafb5483512016-11-17 22:40:10 +0100330config CMD_BOOTEFI_HELLO_COMPILE
331 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardt0f675d92019-11-07 08:05:17 +0100332 depends on CMD_BOOTEFI && !CPU_V7M
Alexander Grafb5483512016-11-17 22:40:10 +0100333 default y
334 help
335 This compiles a standard EFI hello world application with U-Boot so
336 that it can be used with the test/py testing framework. This is useful
337 for testing that EFI is working at a basic level, and for bringing
338 up EFI support on a new architecture.
339
340 No additional space will be required in the resulting U-Boot binary
341 when this option is enabled.
342
Simon Glassfac4ced2016-11-07 08:47:08 -0700343config CMD_BOOTEFI_HELLO
344 bool "Allow booting a standard EFI hello world for testing"
Alexander Grafb5483512016-11-17 22:40:10 +0100345 depends on CMD_BOOTEFI_HELLO_COMPILE
Simon Glassfac4ced2016-11-07 08:47:08 -0700346 help
347 This adds a standard EFI hello world application to U-Boot so that
348 it can be used with the 'bootefi hello' command. This is useful
349 for testing that EFI is working at a basic level, and for bringing
350 up EFI support on a new architecture.
351
Heinrich Schuchardtd33ae3e2017-09-15 10:06:11 +0200352source lib/efi_selftest/Kconfig
353
Tom Rini697f4732016-11-29 09:14:56 -0500354config CMD_BOOTMENU
355 bool "bootmenu"
356 select MENU
357 help
358 Add an ANSI terminal boot menu command.
359
Sam Protsenko92f95bb2018-08-16 23:34:13 +0300360config CMD_DTIMG
361 bool "dtimg"
362 help
363 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
364 image into RAM, dump image structure information, etc. Those dtb/dtbo
365 files should be merged in one dtb further, which needs to be passed to
366 the kernel, as part of a boot process.
367
Simon Glass29499a02016-01-17 20:53:51 -0700368config CMD_ELF
369 bool "bootelf, bootvx"
370 default y
371 help
372 Boot an ELF/vxWorks image from the memory.
373
Michal Simekf168c652016-04-06 20:28:04 +0200374config CMD_FDT
375 bool "Flattened Device Tree utility commands"
376 default y
377 depends on OF_LIBFDT
378 help
379 Do FDT related setup before booting into the Operating System.
380
Simon Glass29499a02016-01-17 20:53:51 -0700381config CMD_GO
382 bool "go"
383 default y
384 help
385 Start an application at a given address.
386
387config CMD_RUN
388 bool "run"
389 default y
390 help
391 Run the command in the given environment variable.
392
393config CMD_IMI
394 bool "iminfo"
395 default y
396 help
397 Print header information for application image.
398
399config CMD_IMLS
400 bool "imls"
Simon Glass29499a02016-01-17 20:53:51 -0700401 help
402 List all images found in flash
403
404config CMD_XIMG
405 bool "imxtract"
406 default y
407 help
408 Extract a part of a multi-image.
409
Simon Glassc6567fa2017-08-04 16:34:48 -0600410config CMD_SPL
411 bool "spl export - Export boot information for Falcon boot"
412 depends on SPL
413 help
414 Falcon mode allows booting directly from SPL into an Operating
415 System such as Linux, thus skipping U-Boot proper. See
416 doc/README.falcon for full information about how to use this
417 command.
418
Simon Glassc034e3d2017-08-04 16:34:49 -0600419config CMD_SPL_NAND_OFS
Lukasz Majewski10797442019-05-16 16:01:36 +0200420 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewskie73ce322019-05-16 16:01:35 +0200421 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Simon Glassc034e3d2017-08-04 16:34:49 -0600422 default 0
423 help
424 This provides the offset of the command line arguments for Linux
425 when booting from NAND in Falcon mode. See doc/README.falcon
426 for full information about how to use this option (and also see
427 board/gateworks/gw_ventana/README for an example).
428
Lukasz Majewski06d92532019-05-16 16:01:37 +0200429config CMD_SPL_NOR_OFS
430 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
431 depends on CMD_SPL && SPL_NOR_SUPPORT
432 default 0
433 help
434 This provides the offset of the command line arguments or dtb for
435 Linux when booting from NOR in Falcon mode.
436
Simon Glass51ef45a2017-08-04 16:34:50 -0600437config CMD_SPL_WRITE_SIZE
438 hex "Size of argument area"
439 depends on CMD_SPL
440 default 0x2000
441 help
442 This provides the size of the command-line argument area in NAND
443 flash used by Falcon-mode boot. See the documentation until CMD_SPL
444 for detail.
445
Marek Vasut113c0252018-02-10 16:22:05 +0100446config CMD_FITUPD
447 bool "fitImage update command"
448 help
449 Implements the 'fitupd' command, which allows to automatically
450 store software updates present on a TFTP server in NOR Flash
451
Simon Glassa18b9692017-08-04 16:34:57 -0600452config CMD_THOR_DOWNLOAD
453 bool "thor - TIZEN 'thor' download"
Marek Szyprowskide4752e2019-10-02 12:29:08 +0200454 select DFU
Simon Glassa18b9692017-08-04 16:34:57 -0600455 help
456 Implements the 'thor' download protocol. This is a way of
457 downloading a software update over USB from an attached host.
458 There is no documentation about this within the U-Boot source code
459 but you should be able to find something on the interwebs.
460
Simon Glass01d097d2017-08-04 16:35:03 -0600461config CMD_ZBOOT
462 bool "zboot - x86 boot command"
463 help
464 With x86 machines it is common to boot a bzImage file which
465 contains both a kernel and a setup.bin file. The latter includes
466 configuration information from the dark ages which x86 boards still
467 need to pick things out of.
468
469 Consider using FIT in preference to this since it supports directly
470 booting both 32- and 64-bit kernels, as well as secure boot.
471 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
472
Simon Glass29499a02016-01-17 20:53:51 -0700473endmenu
474
475menu "Environment commands"
476
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500477config CMD_ASKENV
478 bool "ask for env variable"
479 help
480 Ask for environment variable
481
Simon Glass29499a02016-01-17 20:53:51 -0700482config CMD_EXPORTENV
483 bool "env export"
484 default y
485 help
486 Export environments.
487
488config CMD_IMPORTENV
489 bool "env import"
490 default y
491 help
492 Import environments.
493
494config CMD_EDITENV
495 bool "editenv"
496 default y
497 help
498 Edit environment variable.
499
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500500config CMD_GREPENV
501 bool "search env"
502 help
503 Allow for searching environment variables
504
Simon Glass29499a02016-01-17 20:53:51 -0700505config CMD_SAVEENV
506 bool "saveenv"
507 default y
508 help
509 Save all environment variables into the compiled-in persistent
510 storage.
511
Frank Wunderlich33afa932019-06-29 11:36:19 +0200512config CMD_ERASEENV
513 bool "eraseenv"
514 default n
515 depends on CMD_SAVEENV
516 help
517 Erase environment variables from the compiled-in persistent
518 storage.
519
Simon Glass29499a02016-01-17 20:53:51 -0700520config CMD_ENV_EXISTS
521 bool "env exists"
522 default y
523 help
524 Check if a variable is defined in the environment for use in
525 shell scripting.
526
Simon Glass84d67c72017-05-17 03:25:13 -0600527config CMD_ENV_CALLBACK
528 bool "env callbacks - print callbacks and their associated variables"
529 help
530 Some environment variable have callbacks defined by
531 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
532 For example changing "baudrate" adjust the serial baud rate. This
533 command lists the currently defined callbacks.
534
Simon Glassc31e2d82017-05-17 03:25:14 -0600535config CMD_ENV_FLAGS
536 bool "env flags -print variables that have non-default flags"
537 help
538 Some environment variables have special flags that control their
539 behaviour. For example, serial# can only be written once and cannot
540 be deleted. This command shows the variables that have special
541 flags.
542
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900543config CMD_NVEDIT_EFI
544 bool "env [set|print] -e - set/print UEFI variables"
545 depends on EFI_LOADER
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900546 imply HEXDUMP
547 help
548 UEFI variables are encoded as some form of U-Boot variables.
549 If enabled, we are allowed to set/print UEFI variables using
550 "env" command with "-e" option without knowing details.
551
Leo Ruan7450b872019-05-24 17:20:19 +0200552config CMD_NVEDIT_INFO
553 bool "env info - print or evaluate environment information"
554 help
555 Print environment information:
556 - env_valid : is environment valid
557 - env_ready : is environment imported into hash table
558 - env_use_default : is default environment used
559
560 This command can be optionally used for evaluation in scripts:
561 [-d] : evaluate whether default environment is used
562 [-p] : evaluate whether environment can be persisted
563 The result of multiple evaluations will be combined with AND.
564
Simon Glass29499a02016-01-17 20:53:51 -0700565endmenu
566
567menu "Memory commands"
568
Mario Six8a4f6642018-03-28 14:39:18 +0200569config CMD_BINOP
570 bool "binop"
571 help
572 Compute binary operations (xor, or, and) of byte arrays of arbitrary
573 size from memory and store the result in memory or the environment.
574
Simon Glass29499a02016-01-17 20:53:51 -0700575config CMD_CRC32
576 bool "crc32"
577 default y
Michal Simek84f3dec2018-07-23 15:55:13 +0200578 select HASH
Simon Glass29499a02016-01-17 20:53:51 -0700579 help
580 Compute CRC32.
581
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100582config CRC32_VERIFY
583 bool "crc32 -v"
584 depends on CMD_CRC32
585 help
586 Add -v option to verify data against a crc32 checksum.
587
Simon Glass4590d4e2017-05-17 03:25:10 -0600588config CMD_EEPROM
589 bool "eeprom - EEPROM subsystem"
590 help
591 (deprecated, needs conversion to driver model)
592 Provides commands to read and write EEPROM (Electrically Erasable
593 Programmable Read Only Memory) chips that are connected over an
594 I2C bus.
595
596config CMD_EEPROM_LAYOUT
597 bool "Enable layout-aware eeprom commands"
598 depends on CMD_EEPROM
599 help
600 (deprecated, needs conversion to driver model)
601 When enabled, additional eeprom sub-commands become available.
602
603 eeprom print - prints the contents of the eeprom in a human-readable
604 way (eeprom layout fields, and data formatted to be fit for human
605 consumption).
606
607 eeprom update - allows user to update eeprom fields by specifying
608 the field name, and providing the new data in a human readable format
609 (same format as displayed by the eeprom print command).
610
611 Both commands can either auto detect the layout, or be told which
612 layout to use.
613
614 Feature API:
615 __weak int parse_layout_version(char *str)
616 - override to provide your own layout name parsing
617 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
618 int layout_version);
619 - override to setup the layout metadata based on the version
620 __weak int eeprom_layout_detect(unsigned char *data)
621 - override to provide your own algorithm for detecting layout
622 version
623 eeprom_field.c
624 - contains various printing and updating functions for common
625 types of eeprom fields. Can be used for defining
626 custom layouts.
627
628config EEPROM_LAYOUT_HELP_STRING
629 string "Tells user what layout names are supported"
630 depends on CMD_EEPROM_LAYOUT
631 default "<not defined>"
632 help
633 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
634 command's help.
635
Simon Glass26c20532017-08-04 16:34:51 -0600636config LOOPW
637 bool "loopw"
638 help
639 Infinite write loop on address range
640
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000641config CMD_MD5SUM
642 bool "md5sum"
643 default n
644 select MD5
645 help
646 Compute MD5 checksum.
647
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100648config MD5SUM_VERIFY
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000649 bool "md5sum -v"
650 default n
651 depends on CMD_MD5SUM
652 help
653 Add -v option to verify data against an MD5 checksum.
654
Simon Glass26c20532017-08-04 16:34:51 -0600655config CMD_MEMINFO
656 bool "meminfo"
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100657 help
Simon Glass26c20532017-08-04 16:34:51 -0600658 Display memory information.
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100659
Simon Glass26c20532017-08-04 16:34:51 -0600660config CMD_MEMORY
661 bool "md, mm, nm, mw, cp, cmp, base, loop"
662 default y
Simon Glass29499a02016-01-17 20:53:51 -0700663 help
Simon Glass26c20532017-08-04 16:34:51 -0600664 Memory commands.
665 md - memory display
666 mm - memory modify (auto-incrementing address)
667 nm - memory modify (constant address)
668 mw - memory write (fill)
669 cp - memory copy
670 cmp - memory compare
671 base - print or set address offset
672 loop - initialize loop on address range
Simon Glass29499a02016-01-17 20:53:51 -0700673
Adam Ford1ef0c492019-08-14 07:54:34 -0500674config MX_CYCLIC
675 bool "Enable cyclic md/mw commands"
676 depends on CMD_MEMORY
677 help
678 Add the "mdc" and "mwc" memory commands. These are cyclic
679 "md/mw" commands.
680 Examples:
681
682 => mdc.b 10 4 500
683 This command will print 4 bytes (10,11,12,13) each 500 ms.
684
685 => mwc.l 100 12345678 10
686 This command will write 12345678 to address 100 all 10 ms.
687
Jean-Jacques Hiblotd3f09372019-07-02 14:23:26 +0200688config CMD_RANDOM
689 bool "random"
690 default y
691 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
692 help
693 random - fill memory with random data
694
Simon Glass29499a02016-01-17 20:53:51 -0700695config CMD_MEMTEST
696 bool "memtest"
697 help
698 Simple RAM read/write test.
699
Mario Six00518992018-03-28 14:38:14 +0200700if CMD_MEMTEST
701
702config SYS_ALT_MEMTEST
703 bool "Alternative test"
704 help
705 Use a more complete alternative memory test.
706
707endif
708
Simon Glass29499a02016-01-17 20:53:51 -0700709config CMD_MX_CYCLIC
710 bool "mdc, mwc"
711 help
712 mdc - memory display cyclic
713 mwc - memory write cyclic
714
Simon Glass26c20532017-08-04 16:34:51 -0600715config CMD_SHA1SUM
716 bool "sha1sum"
717 select SHA1
Simon Glass29499a02016-01-17 20:53:51 -0700718 help
Simon Glass26c20532017-08-04 16:34:51 -0600719 Compute SHA1 checksum.
720
721config SHA1SUM_VERIFY
722 bool "sha1sum -v"
723 depends on CMD_SHA1SUM
724 help
725 Add -v option to verify data against a SHA1 checksum.
Simon Glass29499a02016-01-17 20:53:51 -0700726
Simon Glass8e83ca82017-08-04 16:34:52 -0600727config CMD_STRINGS
728 bool "strings - display strings in memory"
729 help
730 This works similarly to the Unix 'strings' command except that it
731 works with a memory range. String of printable characters found
732 within the range are displayed. The minimum number of characters
733 for a sequence to be considered a string can be provided.
734
Simon Glassbecaa8f2017-05-17 03:25:43 -0600735endmenu
736
737menu "Compression commands"
738
739config CMD_LZMADEC
740 bool "lzmadec"
Tom Rini3237bc62017-09-29 14:32:44 -0400741 default y if CMD_BOOTI
Simon Glassbecaa8f2017-05-17 03:25:43 -0600742 select LZMA
743 help
744 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
745 image from memory.
746
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900747config CMD_UNZIP
748 bool "unzip"
Tom Rini3237bc62017-09-29 14:32:44 -0400749 default y if CMD_BOOTI
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900750 help
751 Uncompress a zip-compressed memory region.
752
753config CMD_ZIP
754 bool "zip"
755 help
756 Compress a memory region with zlib deflate method.
757
Simon Glass29499a02016-01-17 20:53:51 -0700758endmenu
759
760menu "Device access commands"
761
Simon Glass036bbb12017-08-04 16:34:28 -0600762config CMD_ARMFLASH
763 #depends on FLASH_CFI_DRIVER
764 bool "armflash"
765 help
766 ARM Ltd reference designs flash partition access
767
Neil Armstrong49261c72018-04-27 15:17:57 +0200768config CMD_ADC
769 bool "adc - Access Analog to Digital Converters info and data"
770 select ADC
771 select DM_REGULATOR
772 help
773 Shows ADC device info and permit printing one-shot analog converted
774 data from a named Analog to Digital Converter.
775
Eugeniu Rosca35c34be2019-05-23 17:32:22 +0200776config CMD_BCB
777 bool "bcb"
778 depends on MMC
779 depends on PARTITIONS
780 help
781 Read/modify/write the fields of Bootloader Control Block, usually
782 stored on the flash "misc" partition with its structure defined in:
783 https://android.googlesource.com/platform/bootable/recovery/+/master/
784 bootloader_message/include/bootloader_message/bootloader_message.h
785
786 Some real-life use-cases include (but are not limited to):
787 - Determine the "boot reason" (and act accordingly):
788 https://source.android.com/devices/bootloader/boot-reason
789 - Get/pass a list of commands from/to recovery:
790 https://android.googlesource.com/platform/bootable/recovery
791 - Inspect/dump the contents of the BCB fields
792
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200793config CMD_BIND
794 bool "bind/unbind - Bind or unbind a device to/from a driver"
795 depends on DM
796 help
797 Bind or unbind a device to/from a driver from the command line.
798 This is useful in situations where a device may be handled by several
799 drivers. For example, this can be used to bind a UDC to the usb ether
800 gadget driver from the command line.
801
Simon Glass04ac6f12017-04-26 22:28:02 -0600802config CMD_CLK
803 bool "clk - Show clock frequencies"
804 help
805 (deprecated)
806 Shows clock frequences by calling a sock_clk_dump() hook function.
807 This is depreated in favour of using the CLK uclass and accessing
808 clock values from associated drivers. However currently no command
809 exists for this.
810
Simon Glass036bbb12017-08-04 16:34:28 -0600811config CMD_DEMO
812 bool "demo - Demonstration commands for driver model"
813 depends on DM
814 help
815 Provides a 'demo' command which can be used to play around with
816 driver model. To use this properly you will need to enable one or
817 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
818 Otherwise you will always get an empty list of devices. The demo
819 devices are defined in the sandbox device tree, so the easiest
820 option is to use sandbox and pass the -d point to sandbox's
821 u-boot.dtb file.
822
823config CMD_DFU
824 bool "dfu"
Marek Vasutea84f802018-02-16 16:41:17 +0100825 select DFU
Simon Glass036bbb12017-08-04 16:34:28 -0600826 help
827 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass663b0cc2017-08-04 16:35:06 -0600828 class device via USB. This command requires that the "dfu_alt_info"
829 environment variable be set and define the alt settings to expose to
830 the host.
Simon Glass036bbb12017-08-04 16:34:28 -0600831
Simon Glass29499a02016-01-17 20:53:51 -0700832config CMD_DM
833 bool "dm - Access to driver model information"
834 depends on DM
Simon Glass29499a02016-01-17 20:53:51 -0700835 help
836 Provides access to driver model data structures and information,
837 such as a list of devices, list of uclasses and the state of each
838 device (e.g. activated). This is not required for operation, but
839 can be useful to see the state of driver model for debugging or
840 interest.
841
Alex Kiernan65de9552018-05-29 15:30:39 +0000842config CMD_FASTBOOT
843 bool "fastboot - Android fastboot support"
844 depends on FASTBOOT
845 help
846 This enables the command "fastboot" which enables the Android
847 fastboot mode for the platform. Fastboot is a protocol for
848 downloading images, flashing and device control used on
Alex Kiernand5aa57c2018-05-29 15:30:53 +0000849 Android devices. Fastboot requires either the network stack
850 enabled or support for acting as a USB device.
Alex Kiernan65de9552018-05-29 15:30:39 +0000851
Eugeniu Roscac37e68f2019-07-19 23:26:11 +0200852 See doc/android/fastboot.txt for more information.
Alex Kiernan65de9552018-05-29 15:30:39 +0000853
Simon Glass036bbb12017-08-04 16:34:28 -0600854config CMD_FDC
855 bool "fdcboot - Boot from floppy device"
Simon Glass29499a02016-01-17 20:53:51 -0700856 help
Simon Glass036bbb12017-08-04 16:34:28 -0600857 The 'fdtboot' command allows booting an image from a floppy disk.
858
859config CMD_FLASH
860 bool "flinfo, erase, protect"
861 default y
Miquel Raynald2418202019-10-25 19:39:30 +0200862 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass036bbb12017-08-04 16:34:28 -0600863 help
864 NOR flash support.
865 flinfo - print FLASH memory information
866 erase - FLASH memory
867 protect - enable or disable FLASH write protection
868
869config CMD_FPGA
870 bool "fpga"
Tuomas Tynkkynen5ca16b32018-01-27 20:28:40 +0200871 depends on FPGA
Simon Glass036bbb12017-08-04 16:34:28 -0600872 default y
873 help
874 FPGA support.
875
876config CMD_FPGA_LOADBP
877 bool "fpga loadbp - load partial bitstream (Xilinx only)"
878 depends on CMD_FPGA
879 help
880 Supports loading an FPGA device from a bitstream buffer containing
881 a partial bitstream.
882
883config CMD_FPGA_LOADFS
884 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
885 depends on CMD_FPGA
886 help
887 Supports loading an FPGA device from a FAT filesystem.
888
889config CMD_FPGA_LOADMK
890 bool "fpga loadmk - load bitstream from image"
891 depends on CMD_FPGA
892 help
893 Supports loading an FPGA device from a image generated by mkimage.
894
895config CMD_FPGA_LOADP
896 bool "fpga loadp - load partial bitstream"
897 depends on CMD_FPGA
898 help
899 Supports loading an FPGA device from a bitstream buffer containing
900 a partial bitstream.
901
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +0530902config CMD_FPGA_LOAD_SECURE
903 bool "fpga loads - loads secure bitstreams (Xilinx only)"
904 depends on CMD_FPGA
905 help
906 Enables the fpga loads command which is used to load secure
907 (authenticated or encrypted or both) bitstreams on to FPGA.
908
Simon Glass036bbb12017-08-04 16:34:28 -0600909config CMD_FPGAD
910 bool "fpgad - dump FPGA registers"
911 help
912 (legacy, needs conversion to driver model)
913 Provides a way to dump FPGA registers by calling the board-specific
914 fpga_get_reg() function. This functions similarly to the 'md'
915 command.
916
917config CMD_FUSE
918 bool "fuse - support for the fuse subssystem"
919 help
920 (deprecated - needs conversion to driver model)
921 This allows reading, sensing, programming or overriding fuses
922 which control the behaviour of the device. The command uses the
923 fuse_...() API.
924
925config CMD_GPIO
926 bool "gpio"
927 help
928 GPIO support.
929
930config CMD_GPT
931 bool "GPT (GUID Partition Table) command"
Simon Glass036bbb12017-08-04 16:34:28 -0600932 select EFI_PARTITION
Adam Fordb10ba902018-02-06 12:43:56 -0600933 select HAVE_BLOCK_DEVICE
Michal Simek84f3dec2018-07-23 15:55:13 +0200934 select PARTITION_UUIDS
Maxime Ripard24336442017-08-24 11:52:32 +0200935 imply RANDOM_UUID
Simon Glass036bbb12017-08-04 16:34:28 -0600936 help
937 Enable the 'gpt' command to ready and write GPT style partition
938 tables.
939
Maxime Ripard24336442017-08-24 11:52:32 +0200940config RANDOM_UUID
941 bool "GPT Random UUID generation"
Adam Ford70c8f052018-02-06 12:14:28 -0600942 select LIB_UUID
Maxime Ripard24336442017-08-24 11:52:32 +0200943 help
944 Enable the generation of partitions with random UUIDs if none
945 are provided.
946
Simon Glass036bbb12017-08-04 16:34:28 -0600947config CMD_GPT_RENAME
948 bool "GPT partition renaming commands"
949 depends on CMD_GPT
950 help
951 Enables the 'gpt' command to interchange names on two GPT
952 partitions via the 'gpt swap' command or to rename single
953 partitions via the 'rename' command.
Simon Glass29499a02016-01-17 20:53:51 -0700954
Simon Glassa831eca2017-05-17 03:25:29 -0600955config CMD_IDE
956 bool "ide - Support for IDE drivers"
Simon Glassb569a012017-05-17 03:25:30 -0600957 select IDE
Simon Glassa831eca2017-05-17 03:25:29 -0600958 help
959 Provides an 'ide' command which allows accessing the IDE drive,
960 reseting the IDE interface, printing the partition table and
961 geting device info. It also enables the 'diskboot' command which
962 permits booting from an IDE drive.
963
Simon Glass3bebbe62017-05-17 03:25:34 -0600964config CMD_IO
965 bool "io - Support for performing I/O accesses"
966 help
967 Provides an 'iod' command to display I/O space and an 'iow' command
968 to write values to the I/O space. This can be useful for manually
969 checking the state of devices during boot when debugging device
970 drivers, etc.
971
Simon Glass30daabc2017-05-17 03:25:36 -0600972config CMD_IOTRACE
973 bool "iotrace - Support for tracing I/O activity"
974 help
975 Provides an 'iotrace' command which supports recording I/O reads and
976 writes in a trace buffer in memory . It also maintains a checksum
977 of the trace records (even if space is exhausted) so that the
978 sequence of I/O accesses can be verified.
979
980 When debugging drivers it is useful to see what I/O accesses were
981 done and in what order.
982
983 Even if the individual accesses are of little interest it can be
984 useful to verify that the access pattern is consistent each time
985 an operation is performed. In this case a checksum can be used to
986 characterise the operation of a driver. The checksum can be compared
987 across different runs of the operation to verify that the driver is
988 working properly.
989
990 In particular, when performing major refactoring of the driver, where
991 the access pattern should not change, the checksum provides assurance
992 that the refactoring work has not broken the driver.
993
994 This works by sneaking into the io.h heder for an architecture and
995 redirecting I/O accesses through iotrace's tracing mechanism.
996
997 For now no commands are provided to examine the trace buffer. The
998 format is fairly simple, so 'md' is a reasonable substitute.
999
1000 Note: The checksum feature is only useful for I/O regions where the
1001 contents do not change outside of software control. Where this is not
1002 suitable you can fall back to manually comparing the addresses. It
1003 might be useful to enhance tracing to only checksum the accesses and
1004 not the data read/written.
1005
Simon Glass036bbb12017-08-04 16:34:28 -06001006config CMD_I2C
1007 bool "i2c"
1008 help
1009 I2C support.
1010
Eugen Hristevb879c842018-09-18 10:35:33 +03001011config CMD_W1
1012 depends on W1
1013 default y if W1
1014 bool "w1 - Support for Dallas 1-Wire protocol"
1015 help
1016 Dallas 1-wire protocol support
1017
Simon Glass29499a02016-01-17 20:53:51 -07001018config CMD_LOADB
1019 bool "loadb"
1020 default y
1021 help
1022 Load a binary file over serial line.
1023
1024config CMD_LOADS
1025 bool "loads"
1026 default y
1027 help
1028 Load an S-Record file over serial line
1029
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001030config CMD_MMC
1031 bool "mmc"
1032 help
1033 MMC memory mapped support.
1034
Alex Kiernan60e0f612018-05-08 04:43:31 +00001035config CMD_MMC_RPMB
1036 bool "Enable support for RPMB in the mmc command"
1037 depends on CMD_MMC
1038 help
1039 Enable the commands for reading, writing and programming the
1040 key for the Replay Protection Memory Block partition in eMMC.
1041
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001042config CMD_MMC_SWRITE
1043 bool "mmc swrite"
1044 depends on CMD_MMC && MMC_WRITE
1045 select IMAGE_SPARSE
1046 help
1047 Enable support for the "mmc swrite" command to write Android sparse
1048 images to eMMC.
1049
Miquel Raynal741f4c72018-09-29 12:58:28 +02001050config CMD_MTD
1051 bool "mtd"
Miquel Raynald2418202019-10-25 19:39:30 +02001052 depends on MTD
Miquel Raynal741f4c72018-09-29 12:58:28 +02001053 select MTD_PARTITIONS
1054 help
1055 MTD commands support.
1056
Simon Glass29499a02016-01-17 20:53:51 -07001057config CMD_NAND
1058 bool "nand"
Maxime Ripard5a5d71f2017-03-03 15:13:30 +01001059 default y if NAND_SUNXI
Miquel Raynald2418202019-10-25 19:39:30 +02001060 depends on MTD_RAW_NAND
Simon Glass29499a02016-01-17 20:53:51 -07001061 help
1062 NAND support.
1063
Boris Brezillon19907782017-02-27 18:22:07 +01001064if CMD_NAND
1065config CMD_NAND_TRIMFFS
1066 bool "nand write.trimffs"
Hans de Goedefd42c052017-02-27 18:22:10 +01001067 default y if ARCH_SUNXI
Boris Brezillon19907782017-02-27 18:22:07 +01001068 help
1069 Allows one to skip empty pages when flashing something on a NAND.
1070
1071config CMD_NAND_LOCK_UNLOCK
1072 bool "nand lock/unlock"
1073 help
1074 NAND locking support.
1075
1076config CMD_NAND_TORTURE
1077 bool "nand torture"
1078 help
1079 NAND torture support.
1080
1081endif # CMD_NAND
1082
Zhikang Zhang49455652017-08-03 02:30:59 -07001083config CMD_NVME
1084 bool "nvme"
1085 depends on NVME
1086 default y if NVME
1087 help
1088 NVM Express device support
1089
Simon Glassa2a82072017-08-04 16:34:31 -06001090config CMD_ONENAND
1091 bool "onenand - access to onenand device"
Miquel Raynald2418202019-10-25 19:39:30 +02001092 depends on MTD
Simon Glassa2a82072017-08-04 16:34:31 -06001093 help
1094 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1095 various useful features. This command allows reading, writing,
1096 and erasing blocks. It allso provides a way to show and change
1097 bad blocks, and test the device.
1098
Mario Sixf8395902018-09-27 09:19:34 +02001099config CMD_OSD
1100 bool "osd"
1101 help
1102 Enable the 'osd' command which allows to query information from and
1103 write text data to a on-screen display (OSD) device; a virtual device
1104 associated with a display capable of displaying a text overlay on the
1105 display it's associated with..
1106
Patrick Delaunay73287092017-01-27 11:00:42 +01001107config CMD_PART
1108 bool "part"
Adam Fordb10ba902018-02-06 12:43:56 -06001109 select HAVE_BLOCK_DEVICE
Michal Simek84f3dec2018-07-23 15:55:13 +02001110 select PARTITION_UUIDS
Patrick Delaunay73287092017-01-27 11:00:42 +01001111 help
1112 Read and display information about the partition table on
1113 various media.
1114
Simon Glassc88a09a2017-08-04 16:34:34 -06001115config CMD_PCI
1116 bool "pci - Access PCI devices"
1117 help
1118 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1119 used on some devices to allow the CPU to communicate with its
1120 peripherals. Sub-commands allow bus enumeration, displaying and
1121 changing configuration space and a few other features.
1122
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001123config CMD_PINMUX
1124 bool "pinmux - show pins muxing"
1125 default y if PINCTRL
1126 help
1127 Parse all available pin-controllers and show pins muxing. This
1128 is useful for debug purpoer to check the pin muxing and to know if
1129 a pin is configured as a GPIO or as an alternate function.
1130
Adam Fordc4f16322018-09-09 07:05:57 -05001131config CMD_POWEROFF
1132 bool "poweroff"
1133 help
1134 Poweroff/Shutdown the system
1135
Simon Glassc05459b2017-08-04 16:34:39 -06001136config CMD_READ
1137 bool "read - Read binary data from a partition"
1138 help
1139 Provides low-level access to the data in a partition.
1140
Simon Glass036bbb12017-08-04 16:34:28 -06001141config CMD_REMOTEPROC
1142 bool "remoteproc"
1143 depends on REMOTEPROC
1144 help
1145 Support for Remote Processor control
1146
1147config CMD_SATA
1148 bool "sata - Access SATA subsystem"
1149 select SATA
1150 help
1151 SATA (Serial Advanced Technology Attachment) is a serial bus
1152 standard for connecting to hard drives and other storage devices.
1153 This command provides information about attached devices and allows
1154 reading, writing and other operations.
1155
1156 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1157 Attachment, where AT refers to an IBM AT (Advanced Technology)
1158 computer released in 1984.
1159
Simon Glassd09f3772017-08-04 16:34:43 -06001160config CMD_SAVES
1161 bool "saves - Save a file over serial in S-Record format"
1162 help
1163 Provides a way to save a binary file using the Motorola S-Record
1164 format over the serial line.
1165
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001166config CMD_SCSI
1167 bool "scsi - Access to SCSI devices"
1168 default y if SCSI
1169 help
1170 This provides a 'scsi' command which provides access to SCSI (Small
1171 Computer System Interface) devices. The command provides a way to
1172 scan the bus, reset the bus, read and write data and get information
1173 about devices.
1174
Simon Glass6870d2e2017-08-04 16:34:45 -06001175config CMD_SDRAM
1176 bool "sdram - Print SDRAM configuration information"
1177 help
1178 Provides information about attached SDRAM. This assumed that the
1179 SDRAM has an EEPROM with information that can be read using the
1180 I2C bus. This is only available on some boards.
1181
Simon Glass29499a02016-01-17 20:53:51 -07001182config CMD_SF
1183 bool "sf"
Tom Rinie5289a72019-05-29 17:01:28 -04001184 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Teki132e81f2019-10-16 17:59:42 +05301185 default y if DM_SPI_FLASH
Simon Glass29499a02016-01-17 20:53:51 -07001186 help
1187 SPI Flash support
1188
Simon Glass86b1b652017-08-04 16:34:46 -06001189config CMD_SF_TEST
1190 bool "sf test - Allow testing of SPI flash"
Tom Rinie5289a72019-05-29 17:01:28 -04001191 depends on CMD_SF
Simon Glass86b1b652017-08-04 16:34:46 -06001192 help
1193 Provides a way to test that SPI flash is working correctly. The
1194 test is destructive, in that an area of SPI flash must be provided
1195 for the test to use. Performance information is also provided,
1196 measuring the performance of reading, writing and erasing in
1197 Mbps (Million Bits Per Second). This value should approximately
1198 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1199 everything is working properly.
1200
Simon Glass29499a02016-01-17 20:53:51 -07001201config CMD_SPI
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001202 bool "sspi - Command to access spi device"
Tom Rinie5289a72019-05-29 17:01:28 -04001203 depends on SPI
Simon Glass29499a02016-01-17 20:53:51 -07001204 help
1205 SPI utility command.
1206
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001207config DEFAULT_SPI_BUS
1208 int "default spi bus used by sspi command"
1209 depends on CMD_SPI
1210 default 0
1211
1212config DEFAULT_SPI_MODE
1213 hex "default spi mode used by sspi command (see include/spi.h)"
1214 depends on CMD_SPI
1215 default 0
1216
Simon Glass80a56cd2017-08-04 16:35:00 -06001217config CMD_TSI148
1218 bool "tsi148 - Command to access tsi148 device"
1219 help
1220 This provides various sub-commands to initialise and configure the
1221 Turndra tsi148 device. See the command help for full details.
1222
Faiz Abbas61e9fbb2019-10-15 18:24:40 +05301223config CMD_UFS
1224 bool "Enable UFS - Universal Flash Subsystem commands"
1225 depends on UFS
1226 help
1227 "This provides commands to initialise and configure universal flash
1228 subsystem devices"
1229
Simon Glass0c03c1a2017-08-04 16:35:01 -06001230config CMD_UNIVERSE
1231 bool "universe - Command to set up the Turndra Universe controller"
1232 help
1233 This allows setting up the VMEbus provided by this controller.
1234 See the command help for full details.
1235
Simon Glass29499a02016-01-17 20:53:51 -07001236config CMD_USB
1237 bool "usb"
Adam Fordb10ba902018-02-06 12:43:56 -06001238 select HAVE_BLOCK_DEVICE
Simon Glass29499a02016-01-17 20:53:51 -07001239 help
1240 USB support.
1241
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001242config CMD_USB_SDP
1243 bool "sdp"
1244 select USB_FUNCTION_SDP
1245 help
1246 Enables the command "sdp" which is used to have U-Boot emulating the
1247 Serial Download Protocol (SDP) via USB.
Michal Simekf751ff52018-07-23 15:55:12 +02001248
Eddie Cai5e3020b2017-12-15 08:17:11 +08001249config CMD_ROCKUSB
1250 bool "rockusb"
1251 depends on USB_FUNCTION_ROCKUSB
1252 help
Michal Simekf751ff52018-07-23 15:55:12 +02001253 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai5e3020b2017-12-15 08:17:11 +08001254 read/write info, image to/from devices. This enable rockusb command
1255 support to communication with rockusb device. for more detail about
1256 this command, please read doc/README.rockusb.
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001257
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001258config CMD_USB_MASS_STORAGE
1259 bool "UMS usb mass storage"
Lukasz Majewski6e782742018-01-29 19:28:02 +01001260 select USB_FUNCTION_MASS_STORAGE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001261 help
1262 USB mass storage support
1263
Tuomas Tynkkynen10a60d22018-10-15 02:21:12 -07001264config CMD_VIRTIO
1265 bool "virtio"
1266 depends on VIRTIO
1267 default y if VIRTIO
1268 help
1269 VirtIO block device support
1270
Michael Walle23964a82019-04-06 02:24:02 +02001271config CMD_WDT
1272 bool "wdt"
1273 depends on WDT
1274 help
1275 This provides commands to control the watchdog timer devices.
1276
Mario Sixfd1cc422018-08-09 14:51:21 +02001277config CMD_AXI
1278 bool "axi"
1279 depends on AXI
1280 help
1281 Enable the command "axi" for accessing AXI (Advanced eXtensible
1282 Interface) busses, a on-chip interconnect specification for managing
1283 functional blocks in SoC designs, which is also often used in designs
1284 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass29499a02016-01-17 20:53:51 -07001285endmenu
1286
1287
1288menu "Shell scripting commands"
1289
1290config CMD_ECHO
1291 bool "echo"
1292 default y
1293 help
1294 Echo args to console
1295
1296config CMD_ITEST
1297 bool "itest"
1298 default y
1299 help
1300 Return true/false on integer compare.
1301
1302config CMD_SOURCE
1303 bool "source"
1304 default y
1305 help
1306 Run script from memory
1307
1308config CMD_SETEXPR
1309 bool "setexpr"
1310 default y
1311 help
1312 Evaluate boolean and math expressions and store the result in an env
1313 variable.
1314 Also supports loading the value at a memory location into a variable.
1315 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1316
1317endmenu
1318
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001319menu "Android support commands"
1320
1321config CMD_AB_SELECT
1322 bool "ab_select"
1323 default n
1324 depends on ANDROID_AB
1325 help
1326 On Android devices with more than one boot slot (multiple copies of
1327 the kernel and system images) this provides a command to select which
1328 slot should be used to boot from and register the boot attempt. This
1329 is used by the new A/B update model where one slot is updated in the
1330 background while running from the other slot.
1331
1332endmenu
1333
Michal Simek2f785a12018-02-26 16:01:02 +01001334if NET
1335
Joe Hershbergerb0429462018-04-13 15:26:30 -05001336menuconfig CMD_NET
1337 bool "Network commands"
1338 default y
Adam Ford53705472018-07-20 23:03:57 -05001339 imply NETDEVICES
Joe Hershbergerb0429462018-04-13 15:26:30 -05001340
1341if CMD_NET
1342
1343config CMD_BOOTP
1344 bool "bootp"
Simon Glass29499a02016-01-17 20:53:51 -07001345 default y
1346 help
Simon Glass29499a02016-01-17 20:53:51 -07001347 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerb0429462018-04-13 15:26:30 -05001348
Joe Hershberger01261792018-04-13 15:26:33 -05001349config CMD_DHCP
1350 bool "dhcp"
1351 depends on CMD_BOOTP
1352 help
1353 Boot image via network using DHCP/TFTP protocol
1354
Joe Hershberger0824ad92018-04-13 15:26:32 -05001355config BOOTP_BOOTPATH
Joe Hershberger06661e12018-04-13 15:26:34 -05001356 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001357 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001358 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001359 help
1360 Even though the config is called BOOTP_BOOTPATH, it stores the
1361 path in the variable 'rootpath'.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001362
1363config BOOTP_DNS
Joe Hershberger06661e12018-04-13 15:26:34 -05001364 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001365 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001366 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001367 help
1368 The primary DNS server is stored as 'dnsip'. If two servers are
1369 returned, you must set BOOTP_DNS2 to store that second server IP
1370 also.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001371
Joe Hershberger63e70712018-04-13 15:26:35 -05001372config BOOTP_DNS2
1373 bool "Store 'dnsip2' from BOOTP/DHCP server"
1374 depends on BOOTP_DNS
1375 help
1376 If a DHCP client requests the DNS server IP from a DHCP server,
1377 it is possible that more than one DNS serverip is offered to the
1378 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1379 server IP will be stored in the additional environment
1380 variable "dnsip2". The first DNS serverip is always
1381 stored in the variable "dnsip", when BOOTP_DNS is defined.
1382
Joe Hershberger0824ad92018-04-13 15:26:32 -05001383config BOOTP_GATEWAY
Joe Hershberger06661e12018-04-13 15:26:34 -05001384 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001385 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001386 depends on CMD_BOOTP
1387
1388config BOOTP_HOSTNAME
Joe Hershberger06661e12018-04-13 15:26:34 -05001389 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001390 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001391 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001392 help
1393 The name may or may not be qualified with the local domain name.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001394
Alexander Graf427e6952018-06-15 10:29:28 +02001395config BOOTP_PREFER_SERVERIP
1396 bool "serverip variable takes precedent over DHCP server IP."
1397 depends on CMD_BOOTP
1398 help
1399 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1400
1401 With this option enabled, the 'serverip' variable in the environment
1402 takes precedence over DHCP server IP and will only be set by the DHCP
1403 server if not already set in the environment.
1404
Joe Hershberger0824ad92018-04-13 15:26:32 -05001405config BOOTP_SUBNETMASK
Joe Hershberger06661e12018-04-13 15:26:34 -05001406 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001407 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001408 depends on CMD_BOOTP
1409
Chris Packhambfa7c212018-05-03 20:19:02 +12001410config BOOTP_NTPSERVER
1411 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1412 depends on CMD_BOOTP
1413
Ramon Friedac598c12019-07-18 21:43:30 +03001414config CMD_PCAP
1415 bool "pcap capture"
1416 help
1417 Selecting this will allow capturing all Ethernet packets and store
1418 them in physical memory in a PCAP formated file,
1419 later to be analyzed by PCAP reader application (IE. WireShark).
1420
Joe Hershberger0824ad92018-04-13 15:26:32 -05001421config BOOTP_PXE
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001422 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001423 default y
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001424 depends on CMD_BOOTP && CMD_PXE
1425 help
1426 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001427
1428config BOOTP_PXE_CLIENTARCH
1429 hex
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001430 depends on BOOTP_PXE
Joe Hershberger0824ad92018-04-13 15:26:32 -05001431 default 0x16 if ARM64
1432 default 0x15 if ARM
1433 default 0 if X86
1434
1435config BOOTP_VCI_STRING
1436 string
1437 depends on CMD_BOOTP
Michal Simekf4359382018-04-26 18:21:29 +05301438 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger0824ad92018-04-13 15:26:32 -05001439 default "U-Boot.armv8" if ARM64
1440 default "U-Boot.arm" if ARM
1441 default "U-Boot"
1442
Joe Hershbergerb0429462018-04-13 15:26:30 -05001443config CMD_TFTPBOOT
1444 bool "tftpboot"
1445 default y
1446 help
Simon Glass29499a02016-01-17 20:53:51 -07001447 tftpboot - boot image via network using TFTP protocol
1448
1449config CMD_TFTPPUT
1450 bool "tftp put"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001451 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001452 help
1453 TFTP put command, for uploading files to a server
1454
1455config CMD_TFTPSRV
1456 bool "tftpsrv"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001457 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001458 help
1459 Act as a TFTP server and boot the first received file
1460
Joe Hershberger0824ad92018-04-13 15:26:32 -05001461config NET_TFTP_VARS
1462 bool "Control TFTP timeout and count through environment"
1463 depends on CMD_TFTPBOOT
1464 default y
1465 help
1466 If set, allows controlling the TFTP timeout through the
1467 environment variable tftptimeout, and the TFTP maximum
1468 timeout count through the variable tftptimeoutcountmax.
1469 If unset, timeout and maximum are hard-defined as 1 second
1470 and 10 timouts per TFTP transfer.
1471
Simon Glass29499a02016-01-17 20:53:51 -07001472config CMD_RARP
1473 bool "rarpboot"
1474 help
1475 Boot image via network using RARP/TFTP protocol
1476
Simon Glass29499a02016-01-17 20:53:51 -07001477config CMD_NFS
1478 bool "nfs"
1479 default y
1480 help
1481 Boot image via network using NFS protocol.
1482
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001483config CMD_MII
1484 bool "mii"
Ramon Frieddeb6c502019-09-13 18:25:03 +03001485 imply CMD_MDIO
1486 help
1487 If set, allows 802.3(clause 22) MII Management functions interface access
1488 The management interface specified in Clause 22 provides
1489 a simple, two signal, serial interface to connect a
1490 Station Management entity and a managed PHY for providing access
1491 to management parameters and services.
1492 The interface is referred to as the MII management interface.
1493
1494config CMD_MDIO
1495 bool "mdio"
1496 depends on PHYLIB
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001497 help
Ramon Frieddeb6c502019-09-13 18:25:03 +03001498 If set, allows Enable 802.3(clause 45) MDIO interface registers access
1499 The MDIO interface is orthogonal to the MII interface and extends
1500 it by adding access to more registers through indirect addressing.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001501
Simon Glass29499a02016-01-17 20:53:51 -07001502config CMD_PING
1503 bool "ping"
1504 help
1505 Send ICMP ECHO_REQUEST to network host
1506
1507config CMD_CDP
1508 bool "cdp"
1509 help
1510 Perform CDP network configuration
1511
1512config CMD_SNTP
1513 bool "sntp"
1514 help
1515 Synchronize RTC via network
1516
1517config CMD_DNS
1518 bool "dns"
1519 help
1520 Lookup the IP of a hostname
1521
1522config CMD_LINK_LOCAL
1523 bool "linklocal"
Joe Hershberger51d78982018-04-30 12:45:22 -05001524 select LIB_RAND
Simon Glass29499a02016-01-17 20:53:51 -07001525 help
1526 Acquire a network IP address using the link-local protocol
1527
Joe Hershberger0824ad92018-04-13 15:26:32 -05001528endif
1529
Simon Glass12b85702017-05-17 03:25:17 -06001530config CMD_ETHSW
1531 bool "ethsw"
1532 help
1533 Allow control of L2 Ethernet switch commands. These are supported
1534 by the vsc9953 Ethernet driver at present. Sub-commands allow
1535 operations such as enabling / disabling a port and
1536 viewing/maintaining the filtering database (FDB)
1537
Joe Hershberger0824ad92018-04-13 15:26:32 -05001538config CMD_PXE
1539 bool "pxe"
1540 select MENU
1541 help
1542 Boot image via network using PXE protocol
Michal Simek2f785a12018-02-26 16:01:02 +01001543
Lothar Felten776fc102018-06-22 22:29:54 +02001544config CMD_WOL
1545 bool "wol"
1546 help
1547 Wait for wake-on-lan Magic Packet
1548
Joe Hershbergerb0429462018-04-13 15:26:30 -05001549endif
Simon Glass29499a02016-01-17 20:53:51 -07001550
1551menu "Misc commands"
1552
Simon Glassb575bfc2017-04-26 22:27:55 -06001553config CMD_BMP
1554 bool "Enable 'bmp' command"
1555 depends on LCD || DM_VIDEO || VIDEO
1556 help
Andrius Å tikonas1d5ccd62019-09-23 22:43:41 +01001557 This provides a way to obtain information about a BMP-format image
Simon Glassb575bfc2017-04-26 22:27:55 -06001558 and to display it. BMP (which presumably stands for BitMaP) is a
1559 file format defined by Microsoft which supports images of various
1560 depths, formats and compression methods. Headers on the file
1561 determine the formats used. This command can be used by first loading
1562 the image into RAM, then using this command to look at it or display
1563 it.
1564
Alex Kiernane710fa62018-05-12 05:49:47 +00001565config CMD_BOOTCOUNT
1566 bool "bootcount"
1567 depends on BOOTCOUNT_LIMIT
1568 help
1569 Enable the bootcount command, which allows interrogation and
1570 reset of the bootcounter.
1571
Simon Glassffab9a02017-04-26 22:27:56 -06001572config CMD_BSP
1573 bool "Enable board-specific commands"
1574 help
1575 (deprecated: instead, please define a Kconfig option for each command)
1576
1577 Some boards have board-specific commands which are only enabled
1578 during developemnt and need to be turned off for production. This
1579 option provides a way to control this. The commands that are enabled
1580 vary depending on the board.
1581
Tomas Melinc17dae52016-11-25 11:01:03 +02001582config CMD_BKOPS_ENABLE
1583 bool "mmc bkops enable"
1584 depends on CMD_MMC
1585 default n
1586 help
1587 Enable command for setting manual background operations handshake
1588 on a eMMC device. The feature is optionally available on eMMC devices
1589 conforming to standard >= 4.41.
1590
Eric Nelsonfaf4f052016-03-28 10:05:44 -07001591config CMD_BLOCK_CACHE
1592 bool "blkcache - control and stats for block cache"
1593 depends on BLOCK_CACHE
1594 default y if BLOCK_CACHE
1595 help
1596 Enable the blkcache command, which can be used to control the
1597 operation of the cache functions.
1598 This is most useful when fine-tuning the operation of the cache
1599 during development, but also allows the cache to be disabled when
1600 it might hurt performance (e.g. when using the ums command).
1601
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001602config CMD_CACHE
1603 bool "icache or dcache"
1604 help
1605 Enable the "icache" and "dcache" commands
1606
Heinrich Schuchardt13ea6852018-09-07 19:43:11 +02001607config CMD_CONITRACE
1608 bool "conitrace - trace console input codes"
1609 help
1610 Enable the 'conitrace' command which displays the codes received
1611 from the console input as hexadecimal numbers.
1612
Anatolij Gustschine0455a42018-12-01 10:47:20 +01001613config CMD_CLS
1614 bool "Enable clear screen command 'cls'"
1615 depends on CFB_CONSOLE || DM_VIDEO || LCD || VIDEO
1616 default y if LCD
1617 help
1618 Enable the 'cls' command which clears the screen contents
1619 on video frame buffer.
1620
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001621config CMD_EFIDEBUG
1622 bool "efidebug - display/configure UEFI environment"
1623 depends on EFI_LOADER
Heinrich Schuchardt3db35912019-05-11 09:53:33 +02001624 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001625 default n
1626 help
1627 Enable the 'efidebug' command which provides a subset of UEFI
1628 shell utility with simplified functionality. It will be useful
1629 particularly for managing boot parameters as well as examining
1630 various EFI status for debugging.
1631
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01001632config CMD_EXCEPTION
1633 bool "exception - raise exception"
1634 depends on ARM || RISCV || X86
1635 help
1636 Enable the 'exception' command which allows to raise an exception.
1637
Simon Glassfc8a5292017-04-10 11:34:59 -06001638config CMD_LED
1639 bool "led"
Jan Kiszka89077ba2019-01-03 09:08:42 +01001640 depends on LED
Simon Glassfc8a5292017-04-10 11:34:59 -06001641 default y if LED
1642 help
1643 Enable the 'led' command which allows for control of LEDs supported
1644 by the board. The LEDs can be listed with 'led list' and controlled
1645 with led on/off/togle/blink. Any LED drivers can be controlled with
1646 this command, e.g. led_gpio.
1647
Chris Packham3e257df2017-04-29 15:20:28 +12001648config CMD_DATE
1649 bool "date"
1650 default y if DM_RTC
AKASHI Takahiro51ba5222019-11-13 09:44:49 +09001651 select LIB_DATE
Chris Packham3e257df2017-04-29 15:20:28 +12001652 help
1653 Enable the 'date' command for getting/setting the time/date in RTC
1654 devices.
1655
Simon Glass29499a02016-01-17 20:53:51 -07001656config CMD_TIME
1657 bool "time"
1658 help
1659 Run commands and summarize execution time.
1660
Simon Glassfa744522017-05-17 03:25:23 -06001661config CMD_GETTIME
1662 bool "gettime - read elapsed time"
1663 help
1664 Enable the 'gettime' command which reads the elapsed time since
1665 U-Boot started running. This shows the time in seconds and
1666 milliseconds. See also the 'bootstage' command which provides more
1667 flexibility for boot timing.
1668
Simon Glass29499a02016-01-17 20:53:51 -07001669# TODO: rename to CMD_SLEEP
1670config CMD_MISC
1671 bool "sleep"
1672 default y
1673 help
1674 Delay execution for some time
1675
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02001676config MP
1677 bool "support for multiprocessor"
1678 help
1679 This provides an option to brinup
1680 different processors in multiprocessor
1681 cases.
1682
Simon Glass29499a02016-01-17 20:53:51 -07001683config CMD_TIMER
1684 bool "timer"
1685 help
1686 Access the system timer.
1687
Simon Glass29499a02016-01-17 20:53:51 -07001688config CMD_SOUND
1689 bool "sound"
1690 depends on SOUND
1691 help
1692 This provides basic access to the U-Boot's sound support. The main
1693 feature is to play a beep.
1694
1695 sound init - set up sound system
1696 sound play - play a sound
1697
Patrice Chotard7b81c052019-11-25 09:07:38 +01001698config CMD_SYSBOOT
1699 bool "sysboot"
1700 select MENU
1701 help
1702 Boot image via local extlinux.conf file
1703
Miao Yan92106272016-05-22 19:37:17 -07001704config CMD_QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04001705 bool "qfw"
Miao Yan4fcd7f22016-05-22 19:37:14 -07001706 select QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04001707 help
1708 This provides access to the QEMU firmware interface. The main
1709 feature is to allow easy loading of files passed to qemu-system
1710 via -kernel / -initrd
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02001711
1712source "cmd/mvebu/Kconfig"
1713
Simon Glass89342ef2017-08-04 16:34:55 -06001714config CMD_TERMINAL
1715 bool "terminal - provides a way to attach a serial terminal"
1716 help
1717 Provides a 'cu'-like serial terminal command. This can be used to
1718 access other serial ports from the system console. The terminal
1719 is very simple with no special processing of characters. As with
1720 cu, you can press ~. (tilde followed by period) to exit.
1721
Simon Glass6d56aad2017-08-04 16:35:02 -06001722config CMD_UUID
1723 bool "uuid, guid - generation of unique IDs"
Adam Ford70c8f052018-02-06 12:14:28 -06001724 select LIB_UUID
Simon Glass6d56aad2017-08-04 16:35:02 -06001725 help
1726 This enables two commands:
1727
1728 uuid - generate random Universally Unique Identifier
1729 guid - generate Globally Unique Identifier based on random UUID
1730
1731 The two commands are very similar except for the endianness of the
1732 output.
1733
Simon Glass29499a02016-01-17 20:53:51 -07001734endmenu
1735
Lokesh Vutla962c4e02017-12-29 11:47:49 +05301736source "cmd/ti/Kconfig"
1737
Simon Glass29499a02016-01-17 20:53:51 -07001738config CMD_BOOTSTAGE
1739 bool "Enable the 'bootstage' command"
1740 depends on BOOTSTAGE
1741 help
1742 Add a 'bootstage' command which supports printing a report
1743 and un/stashing of bootstage data.
1744
1745menu "Power commands"
1746config CMD_PMIC
1747 bool "Enable Driver Model PMIC command"
1748 depends on DM_PMIC
1749 help
1750 This is the pmic command, based on a driver model pmic's API.
1751 Command features are unchanged:
1752 - list - list pmic devices
1753 - pmic dev <id> - show or [set] operating pmic device (NEW)
1754 - pmic dump - dump registers
1755 - pmic read address - read byte of register at address
1756 - pmic write address - write byte to register at address
1757 The only one change for this command is 'dev' subcommand.
1758
1759config CMD_REGULATOR
1760 bool "Enable Driver Model REGULATOR command"
1761 depends on DM_REGULATOR
1762 help
1763 This command is based on driver model regulator's API.
1764 User interface features:
1765 - list - list regulator devices
1766 - regulator dev <id> - show or [set] operating regulator device
1767 - regulator info - print constraints info
1768 - regulator status - print operating status
1769 - regulator value <val] <-f> - print/[set] voltage value [uV]
1770 - regulator current <val> - print/[set] current value [uA]
1771 - regulator mode <id> - print/[set] operating mode id
1772 - regulator enable - enable the regulator output
1773 - regulator disable - disable the regulator output
1774
1775 The '-f' (force) option can be used for set the value which exceeds
1776 the limits, which are found in device-tree and are kept in regulator's
1777 uclass platdata structure.
1778
1779endmenu
1780
1781menu "Security commands"
Simon Glass528fdd12017-04-26 22:27:49 -06001782config CMD_AES
1783 bool "Enable the 'aes' command"
1784 select AES
1785 help
1786 This provides a means to encrypt and decrypt data using the AES
1787 (Advanced Encryption Standard). This algorithm uses a symetric key
1788 and is widely used as a streaming cipher. Different key lengths are
1789 supported by the algorithm but this command only supports 128 bits
1790 at present.
1791
Simon Glass311ec4f2017-04-26 22:27:53 -06001792config CMD_BLOB
1793 bool "Enable the 'blob' command"
1794 help
1795 This is used with the Freescale secure boot mechanism.
1796
1797 Freescale's SEC block has built-in Blob Protocol which provides
1798 a method for protecting user-defined data across system power
1799 cycles. SEC block protects data in a data structure called a Blob,
1800 which provides both confidentiality and integrity protection.
1801
1802 Encapsulating data as a blob
1803 Each time that the Blob Protocol is used to protect data, a
1804 different randomly generated key is used to encrypt the data.
1805 This random key is itself encrypted using a key which is derived
1806 from SoC's non-volatile secret key and a 16 bit Key identifier.
1807 The resulting encrypted key along with encrypted data is called a
1808 blob. The non-volatile secure key is available for use only during
1809 secure boot.
1810
1811 During decapsulation, the reverse process is performed to get back
1812 the original data.
1813
1814 Sub-commands:
Michal Simekf751ff52018-07-23 15:55:12 +02001815 blob enc - encapsulating data as a cryptgraphic blob
Simon Glass311ec4f2017-04-26 22:27:53 -06001816 blob dec - decapsulating cryptgraphic blob to get the data
1817
1818 Syntax:
1819
1820 blob enc src dst len km
1821
1822 Encapsulate and create blob of data $len bytes long
1823 at address $src and store the result at address $dst.
1824 $km is the 16 byte key modifier is also required for
1825 generation/use as key for cryptographic operation. Key
1826 modifier should be 16 byte long.
1827
1828 blob dec src dst len km
1829
1830 Decapsulate the blob of data at address $src and
1831 store result of $len byte at addr $dst.
1832 $km is the 16 byte key modifier is also required for
1833 generation/use as key for cryptographic operation. Key
1834 modifier should be 16 byte long.
1835
Simon Glass027608e2017-05-17 03:25:25 -06001836config CMD_HASH
1837 bool "Support 'hash' command"
Simon Glassb22ec7a2017-05-17 09:05:34 -06001838 select HASH
Simon Glass027608e2017-05-17 03:25:25 -06001839 help
1840 This provides a way to hash data in memory using various supported
1841 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1842 saved to memory or to an environment variable. It is also possible
1843 to verify a hash against data in memory.
1844
Michalis Pappasd382d222018-04-13 10:40:57 +03001845config CMD_HVC
1846 bool "Support the 'hvc' command"
1847 depends on ARM_SMCCC
1848 help
1849 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
1850 development and testing.
1851
1852config CMD_SMC
1853 bool "Support the 'smc' command"
1854 depends on ARM_SMCCC
1855 help
1856 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
1857 development and testing.
1858
Daniel Thompsona9e2c672017-05-19 17:26:58 +01001859config HASH_VERIFY
1860 bool "hash -v"
1861 depends on CMD_HASH
1862 help
1863 Add -v option to verify data against a hash.
1864
Miquel Raynal294f82a2018-05-15 11:57:05 +02001865config CMD_TPM_V1
1866 bool
1867
1868config CMD_TPM_V2
1869 bool
Tom Rini124a7ac2018-07-28 09:20:12 -04001870 select CMD_LOG
Miquel Raynal294f82a2018-05-15 11:57:05 +02001871
Simon Glass29499a02016-01-17 20:53:51 -07001872config CMD_TPM
1873 bool "Enable the 'tpm' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02001874 depends on TPM_V1 || TPM_V2
1875 select CMD_TPM_V1 if TPM_V1
1876 select CMD_TPM_V2 if TPM_V2
Simon Glass29499a02016-01-17 20:53:51 -07001877 help
1878 This provides a means to talk to a TPM from the command line. A wide
1879 range of commands if provided - see 'tpm help' for details. The
1880 command requires a suitable TPM on your board and the correct driver
1881 must be enabled.
1882
Miquel Raynal294f82a2018-05-15 11:57:05 +02001883if CMD_TPM
1884
Simon Glass29499a02016-01-17 20:53:51 -07001885config CMD_TPM_TEST
1886 bool "Enable the 'tpm test' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02001887 depends on TPM_V1
Simon Glass29499a02016-01-17 20:53:51 -07001888 help
Miquel Raynal294f82a2018-05-15 11:57:05 +02001889 This provides a a series of tests to confirm that the TPMv1.x is
1890 working correctly. The tests cover initialisation, non-volatile RAM,
1891 extend, global lock and checking that timing is within expectations.
1892 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass29499a02016-01-17 20:53:51 -07001893 for other devices.
1894
Miquel Raynal294f82a2018-05-15 11:57:05 +02001895endif
1896
Simon Glass29499a02016-01-17 20:53:51 -07001897endmenu
1898
Moritz Fischer62b30272016-10-04 17:08:08 -07001899menu "Firmware commands"
1900config CMD_CROS_EC
1901 bool "Enable crosec command"
1902 depends on CROS_EC
1903 default y
1904 help
1905 Enable command-line access to the Chrome OS EC (Embedded
1906 Controller). This provides the 'crosec' command which has
1907 a number of sub-commands for performing EC tasks such as
1908 updating its flash, accessing a small saved context area
1909 and talking to the I2C bus behind the EC (if there is one).
1910endmenu
1911
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001912menu "Filesystem commands"
Marek Behún27cec792017-09-03 17:00:30 +02001913config CMD_BTRFS
1914 bool "Enable the 'btrsubvol' command"
1915 select FS_BTRFS
1916 help
1917 This enables the 'btrsubvol' command to list subvolumes
1918 of a BTRFS filesystem. There are no special commands for
1919 listing BTRFS directories or loading BTRFS files - this
1920 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
1921 when BTRFS is enabled (see FS_BTRFS).
1922
Simon Glass0501e3e2017-04-26 22:27:58 -06001923config CMD_CBFS
1924 bool "Enable the 'cbfs' command"
Simon Glass579b51a2017-04-26 22:27:59 -06001925 depends on FS_CBFS
Simon Glass0501e3e2017-04-26 22:27:58 -06001926 help
1927 Define this to enable support for reading from a Coreboot
1928 filesystem. This is a ROM-based filesystem used for accessing files
1929 on systems that use coreboot as the first boot-loader and then load
1930 U-Boot to actually boot the Operating System. Available commands are
1931 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1932
Simon Glass519805e2017-04-26 22:28:03 -06001933config CMD_CRAMFS
1934 bool "Enable the 'cramfs' command"
Simon Glass690f5092017-04-26 22:28:04 -06001935 depends on FS_CRAMFS
Simon Glass519805e2017-04-26 22:28:03 -06001936 help
1937 This provides commands for dealing with CRAMFS (Compressed ROM
1938 filesystem). CRAMFS is useful when space is tight since files are
1939 compressed. Two commands are provided:
1940
1941 cramfsls - lists files in a cramfs image
1942 cramfsload - loads a file from a cramfs image
1943
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001944config CMD_EXT2
1945 bool "ext2 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001946 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001947 help
1948 Enables EXT2 FS command
1949
1950config CMD_EXT4
1951 bool "ext4 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001952 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001953 help
1954 Enables EXT4 FS command
1955
1956config CMD_EXT4_WRITE
1957 depends on CMD_EXT4
1958 bool "ext4 write command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001959 select EXT4_WRITE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001960 help
1961 Enables EXT4 FS write command
1962
1963config CMD_FAT
1964 bool "FAT command support"
Sekhar Nori1909a7b2017-06-02 17:53:59 +05301965 select FS_FAT
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001966 help
1967 Support for the FAT fs
1968
1969config CMD_FS_GENERIC
1970 bool "filesystem commands"
1971 help
1972 Enables filesystem commands (e.g. load, ls) that work for multiple
1973 fs types.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001974
Josua Mayerf5ebfe72017-04-24 10:10:45 +02001975config CMD_FS_UUID
1976 bool "fsuuid command"
1977 help
1978 Enables fsuuid command for filesystem UUID.
1979
Simon Glassc4abb4b2017-05-17 03:25:37 -06001980config CMD_JFFS2
1981 bool "jffs2 command"
Simon Glass8c6c7c22017-05-17 03:25:38 -06001982 select FS_JFFS2
Simon Glassc4abb4b2017-05-17 03:25:37 -06001983 help
1984 Enables commands to support the JFFS2 (Journalling Flash File System
1985 version 2) filesystem. This enables fsload, ls and fsinfo which
1986 provide the ability to load files, list directories and obtain
1987 filesystem information.
1988
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001989config CMD_MTDPARTS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001990 bool "MTD partition support"
Miquel Raynald2418202019-10-25 19:39:30 +02001991 depends on MTD
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001992 help
Miquel Raynal007dddc2018-09-29 12:58:30 +02001993 MTD partitioning tool support.
1994 It is strongly encouraged to avoid using this command
1995 anymore along with 'sf', 'nand', 'onenand'. One can still
1996 declare the partitions in the mtdparts environment variable
1997 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001998
Simon Glass66d7db02017-08-04 16:34:30 -06001999config CMD_MTDPARTS_SPREAD
2000 bool "Padd partition size to take account of bad blocks"
2001 depends on CMD_MTDPARTS
2002 help
2003 This enables the 'spread' sub-command of the mtdparts command.
2004 This command will modify the existing mtdparts variable by increasing
2005 the size of the partitions such that 1) each partition's net size is
2006 at least as large as the size specified in the mtdparts variable and
2007 2) each partition starts on a good block.
2008
Alexander Dahl6cae4f42019-10-30 16:53:55 +01002009config CMD_MTDPARTS_SHOW_NET_SIZES
2010 bool "Show net size (w/o bad blocks) of partitions"
2011 depends on CMD_MTDPARTS
2012 help
2013 Adds two columns to the printed partition table showing the
2014 effective usable size of a partition, if bad blocks are taken
2015 into account.
2016
Miquel Raynalf21322f2019-10-03 19:50:25 +02002017config MTDIDS_DEFAULT
2018 string "Default MTD IDs"
Miquel Raynald2418202019-10-25 19:39:30 +02002019 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002020 help
2021 Defines a default MTD IDs list for use with MTD partitions in the
2022 Linux MTD command line partitions format.
2023
2024config MTDPARTS_DEFAULT
2025 string "Default MTD partition scheme"
Miquel Raynald2418202019-10-25 19:39:30 +02002026 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002027 help
2028 Defines a default MTD partitioning scheme in the Linux MTD command
2029 line partitions format
2030
Simon Glassed4ee312017-08-04 16:34:41 -06002031config CMD_REISER
2032 bool "reiser - Access to reiserfs filesystems"
2033 help
2034 This provides two commands which operate on a resierfs filesystem,
2035 commonly used some years ago:
2036
2037 reiserls - list files
2038 reiserload - load a file
2039
Simon Glass19c5caf2017-08-04 16:34:58 -06002040config CMD_YAFFS2
2041 bool "yaffs2 - Access of YAFFS2 filesystem"
2042 depends on YAFFS2
2043 default y
2044 help
2045 This provides commands for accessing a YAFFS2 filesystem. Yet
2046 Another Flash Filesystem 2 is a filesystem designed specifically
2047 for NAND flash. It incorporates bad-block management and ensures
2048 that device writes are sequential regardless of filesystem
2049 activity.
2050
Simon Glassdc82dee2017-08-04 16:35:04 -06002051config CMD_ZFS
2052 bool "zfs - Access of ZFS filesystem"
2053 help
2054 This provides commands to accessing a ZFS filesystem, commonly used
2055 on Solaris systems. Two sub-commands are provided:
2056
2057 zfsls - list files in a directory
2058 zfsload - load a file
2059
2060 See doc/README.zfs for more details.
2061
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002062endmenu
2063
Simon Glass3423f212017-04-26 22:27:52 -06002064menu "Debug commands"
2065
2066config CMD_BEDBUG
2067 bool "bedbug"
2068 help
2069 The bedbug (emBEDded deBUGger) command provides debugging features
2070 for some PowerPC processors. For details please see the
2071 docuemntation in doc/README.beddbug
2072
Simon Glass20ea5632017-04-26 22:28:08 -06002073config CMD_DIAG
2074 bool "diag - Board diagnostics"
2075 help
2076 This command provides access to board diagnostic tests. These are
2077 called Power-on Self Tests (POST). The command allows listing of
2078 available tests and running either all the tests, or specific tests
2079 identified by name.
2080
Simon Glass4c3a6202017-05-17 03:25:39 -06002081config CMD_IRQ
2082 bool "irq - Show information about interrupts"
Heiko Schocher6f90e582017-06-14 05:49:40 +02002083 depends on !ARM && !MIPS && !SH
Simon Glass4c3a6202017-05-17 03:25:39 -06002084 help
2085 This enables two commands:
2086
2087 interrupts - enable or disable interrupts
2088 irqinfo - print device-specific interrupt information
Simon Glassfd9948c2017-05-17 03:25:40 -06002089
2090config CMD_KGDB
2091 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simek9d364412018-10-04 14:26:13 +02002092 depends on PPC
Simon Glassfd9948c2017-05-17 03:25:40 -06002093 help
2094 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2095 over a serial link for debugging purposes. This allows
2096 single-stepping, inspecting variables, etc. This is supported only
2097 on PowerPC at present.
2098
Simon Glass5684f8f2017-12-04 13:48:26 -07002099config CMD_LOG
2100 bool "log - Generation, control and access to logging"
Heinrich Schuchardt74bad682018-04-19 22:02:46 +02002101 select LOG
Simon Glass5684f8f2017-12-04 13:48:26 -07002102 help
2103 This provides access to logging features. It allows the output of
2104 log data to be controlled to a limited extent (setting up the default
Simon Glass14c8a062017-12-04 13:48:27 -07002105 maximum log level for emitting of records). It also provides access
2106 to a command used for testing the log system.
Simon Glass5684f8f2017-12-04 13:48:26 -07002107
Simon Glass126cb792017-08-04 16:34:59 -06002108config CMD_TRACE
2109 bool "trace - Support tracing of function calls and timing"
2110 help
2111 Enables a command to control using of function tracing within
2112 U-Boot. This allows recording of call traces including timing
2113 information. The command can write data to memory for exporting
Simon Glassbfce7fc2019-04-08 13:20:51 -06002114 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glass126cb792017-08-04 16:34:59 -06002115 details.
2116
Igor Opaniuk60291192018-06-03 21:56:39 +03002117config CMD_AVB
2118 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniuke0df0352018-07-17 14:33:25 +03002119 depends on AVB_VERIFY
Igor Opaniuk60291192018-06-03 21:56:39 +03002120 default n
2121 help
2122 Enables a "avb" command to perform verification of partitions using
2123 Android Verified Boot 2.0 functionality. It includes such subcommands:
2124 avb init - initialize avb2 subsystem
2125 avb read_rb - read rollback index
2126 avb write_rb - write rollback index
2127 avb is_unlocked - check device lock state
2128 avb get_uuid - read and print uuid of a partition
2129 avb read_part - read data from partition
2130 avb read_part_hex - read data from partition and output to stdout
2131 avb write_part - write data to partition
2132 avb verify - run full verification chain
Simon Glass3423f212017-04-26 22:27:52 -06002133endmenu
2134
Heiko Schocher09dbb852016-09-21 07:58:19 +02002135config CMD_UBI
2136 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher09dbb852016-09-21 07:58:19 +02002137 select MTD_UBI
2138 help
2139 UBI is a software layer above MTD layer which admits use of LVM-like
2140 logical volumes on top of MTD devices, hides some complexities of
2141 flash chips like wear and bad blocks and provides some other useful
2142 capabilities. Please, consult the MTD web site for more details
2143 (www.linux-mtd.infradead.org). Activate this option if you want
2144 to use U-Boot UBI commands.
Miquel Raynal12f1ff12018-09-29 12:58:29 +02002145 It is also strongly encouraged to also enable CONFIG_MTD to get full
2146 partition support.
Heiko Schocher09dbb852016-09-21 07:58:19 +02002147
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002148config CMD_UBIFS
2149 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard1e6a0962017-03-03 14:53:22 +01002150 depends on CMD_UBI
Michal Simek84f3dec2018-07-23 15:55:13 +02002151 default y if CMD_UBI
Karl Beldan3418eeb2017-07-12 16:11:47 +00002152 select LZO
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002153 help
2154 UBIFS is a file system for flash devices which works on top of UBI.
2155
Simon Glass29499a02016-01-17 20:53:51 -07002156endmenu