blob: 80849ba7df1c7cbaa4dbdc53a30b8ade64cafaab [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
Christophe Leroye538bbc2017-08-04 16:34:40 -0600231config CMD_REGINFO
232 bool "reginfo"
233 depends on PPC
234 help
235 Register dump
236
Simon Glass29499a02016-01-17 20:53:51 -0700237endmenu
238
239menu "Boot commands"
240
241config CMD_BOOTD
242 bool "bootd"
243 default y
244 help
245 Run the command stored in the environment "bootcmd", i.e.
246 "bootd" does the same thing as "run bootcmd".
247
248config CMD_BOOTM
249 bool "bootm"
250 default y
251 help
252 Boot an application image from the memory.
253
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500254config CMD_BOOTZ
255 bool "bootz"
256 help
257 Boot the Linux zImage
258
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400259config CMD_BOOTI
260 bool "booti"
Atish Patra583b4092019-05-06 17:49:39 -0700261 depends on ARM64 || RISCV
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400262 default y
263 help
264 Boot an AArch64 Linux Kernel image from memory.
265
Alexander Grafe2b04f22016-03-10 00:27:20 +0100266config CMD_BOOTEFI
267 bool "bootefi"
268 depends on EFI_LOADER
269 default y
270 help
271 Boot an EFI image from memory.
272
Tom Rini9a102072019-09-20 17:36:50 -0400273config BOOTM_LINUX
274 bool "Support booting Linux OS images"
275 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
276 default y
277 help
278 Support booting the Linux kernel directly via a command such as bootm
279 or booti or bootz.
280
281config BOOTM_NETBSD
282 bool "Support booting NetBSD (non-EFI) loader images"
283 depends on CMD_BOOTM
284 default y
285 help
286 Support booting NetBSD via the bootm command.
287
288config BOOTM_OPENRTOS
289 bool "Support booting OPENRTOS / FreeRTOS images"
290 depends on CMD_BOOTM
291 help
292 Support booting OPENRTOS / FreeRTOS via the bootm command.
293
294config BOOTM_OSE
295 bool "Support booting Enea OSE images"
296 depends on CMD_BOOTM
297 help
298 Support booting Enea OSE images via the bootm command.
299
300config BOOTM_PLAN9
301 bool "Support booting Plan9 OS images"
302 depends on CMD_BOOTM
303 default y
304 help
305 Support booting Plan9 images via the bootm command.
306
307config BOOTM_RTEMS
308 bool "Support booting RTEMS OS images"
309 depends on CMD_BOOTM
310 default y
311 help
312 Support booting RTEMS images via the bootm command.
313
314config BOOTM_VXWORKS
315 bool "Support booting VxWorks OS images"
316 depends on CMD_BOOTM
317 default y
318 help
319 Support booting VxWorks images via the bootm command.
320
Alexander Grafb5483512016-11-17 22:40:10 +0100321config CMD_BOOTEFI_HELLO_COMPILE
322 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardta26adcd2018-12-30 10:11:14 +0100323 depends on CMD_BOOTEFI && !CPU_V7M && !SANDBOX
Alexander Grafb5483512016-11-17 22:40:10 +0100324 default y
325 help
326 This compiles a standard EFI hello world application with U-Boot so
327 that it can be used with the test/py testing framework. This is useful
328 for testing that EFI is working at a basic level, and for bringing
329 up EFI support on a new architecture.
330
331 No additional space will be required in the resulting U-Boot binary
332 when this option is enabled.
333
Simon Glassfac4ced2016-11-07 08:47:08 -0700334config CMD_BOOTEFI_HELLO
335 bool "Allow booting a standard EFI hello world for testing"
Alexander Grafb5483512016-11-17 22:40:10 +0100336 depends on CMD_BOOTEFI_HELLO_COMPILE
Simon Glassfac4ced2016-11-07 08:47:08 -0700337 help
338 This adds a standard EFI hello world application to U-Boot so that
339 it can be used with the 'bootefi hello' command. This is useful
340 for testing that EFI is working at a basic level, and for bringing
341 up EFI support on a new architecture.
342
Heinrich Schuchardtd33ae3e2017-09-15 10:06:11 +0200343source lib/efi_selftest/Kconfig
344
Tom Rini697f4732016-11-29 09:14:56 -0500345config CMD_BOOTMENU
346 bool "bootmenu"
347 select MENU
348 help
349 Add an ANSI terminal boot menu command.
350
Sam Protsenko92f95bb2018-08-16 23:34:13 +0300351config CMD_DTIMG
352 bool "dtimg"
353 help
354 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
355 image into RAM, dump image structure information, etc. Those dtb/dtbo
356 files should be merged in one dtb further, which needs to be passed to
357 the kernel, as part of a boot process.
358
Simon Glass29499a02016-01-17 20:53:51 -0700359config CMD_ELF
360 bool "bootelf, bootvx"
361 default y
362 help
363 Boot an ELF/vxWorks image from the memory.
364
Michal Simekf168c652016-04-06 20:28:04 +0200365config CMD_FDT
366 bool "Flattened Device Tree utility commands"
367 default y
368 depends on OF_LIBFDT
369 help
370 Do FDT related setup before booting into the Operating System.
371
Simon Glass29499a02016-01-17 20:53:51 -0700372config CMD_GO
373 bool "go"
374 default y
375 help
376 Start an application at a given address.
377
378config CMD_RUN
379 bool "run"
380 default y
381 help
382 Run the command in the given environment variable.
383
384config CMD_IMI
385 bool "iminfo"
386 default y
387 help
388 Print header information for application image.
389
390config CMD_IMLS
391 bool "imls"
Simon Glass29499a02016-01-17 20:53:51 -0700392 help
393 List all images found in flash
394
395config CMD_XIMG
396 bool "imxtract"
397 default y
398 help
399 Extract a part of a multi-image.
400
Simon Glassc6567fa2017-08-04 16:34:48 -0600401config CMD_SPL
402 bool "spl export - Export boot information for Falcon boot"
403 depends on SPL
404 help
405 Falcon mode allows booting directly from SPL into an Operating
406 System such as Linux, thus skipping U-Boot proper. See
407 doc/README.falcon for full information about how to use this
408 command.
409
Simon Glassc034e3d2017-08-04 16:34:49 -0600410config CMD_SPL_NAND_OFS
Lukasz Majewski10797442019-05-16 16:01:36 +0200411 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewskie73ce322019-05-16 16:01:35 +0200412 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Simon Glassc034e3d2017-08-04 16:34:49 -0600413 default 0
414 help
415 This provides the offset of the command line arguments for Linux
416 when booting from NAND in Falcon mode. See doc/README.falcon
417 for full information about how to use this option (and also see
418 board/gateworks/gw_ventana/README for an example).
419
Lukasz Majewski06d92532019-05-16 16:01:37 +0200420config CMD_SPL_NOR_OFS
421 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
422 depends on CMD_SPL && SPL_NOR_SUPPORT
423 default 0
424 help
425 This provides the offset of the command line arguments or dtb for
426 Linux when booting from NOR in Falcon mode.
427
Simon Glass51ef45a2017-08-04 16:34:50 -0600428config CMD_SPL_WRITE_SIZE
429 hex "Size of argument area"
430 depends on CMD_SPL
431 default 0x2000
432 help
433 This provides the size of the command-line argument area in NAND
434 flash used by Falcon-mode boot. See the documentation until CMD_SPL
435 for detail.
436
Marek Vasut113c0252018-02-10 16:22:05 +0100437config CMD_FITUPD
438 bool "fitImage update command"
439 help
440 Implements the 'fitupd' command, which allows to automatically
441 store software updates present on a TFTP server in NOR Flash
442
Simon Glassa18b9692017-08-04 16:34:57 -0600443config CMD_THOR_DOWNLOAD
444 bool "thor - TIZEN 'thor' download"
445 help
446 Implements the 'thor' download protocol. This is a way of
447 downloading a software update over USB from an attached host.
448 There is no documentation about this within the U-Boot source code
449 but you should be able to find something on the interwebs.
450
Simon Glass01d097d2017-08-04 16:35:03 -0600451config CMD_ZBOOT
452 bool "zboot - x86 boot command"
453 help
454 With x86 machines it is common to boot a bzImage file which
455 contains both a kernel and a setup.bin file. The latter includes
456 configuration information from the dark ages which x86 boards still
457 need to pick things out of.
458
459 Consider using FIT in preference to this since it supports directly
460 booting both 32- and 64-bit kernels, as well as secure boot.
461 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
462
Simon Glass29499a02016-01-17 20:53:51 -0700463endmenu
464
465menu "Environment commands"
466
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500467config CMD_ASKENV
468 bool "ask for env variable"
469 help
470 Ask for environment variable
471
Simon Glass29499a02016-01-17 20:53:51 -0700472config CMD_EXPORTENV
473 bool "env export"
474 default y
475 help
476 Export environments.
477
478config CMD_IMPORTENV
479 bool "env import"
480 default y
481 help
482 Import environments.
483
484config CMD_EDITENV
485 bool "editenv"
486 default y
487 help
488 Edit environment variable.
489
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500490config CMD_GREPENV
491 bool "search env"
492 help
493 Allow for searching environment variables
494
Simon Glass29499a02016-01-17 20:53:51 -0700495config CMD_SAVEENV
496 bool "saveenv"
497 default y
498 help
499 Save all environment variables into the compiled-in persistent
500 storage.
501
Frank Wunderlich33afa932019-06-29 11:36:19 +0200502config CMD_ERASEENV
503 bool "eraseenv"
504 default n
505 depends on CMD_SAVEENV
506 help
507 Erase environment variables from the compiled-in persistent
508 storage.
509
Simon Glass29499a02016-01-17 20:53:51 -0700510config CMD_ENV_EXISTS
511 bool "env exists"
512 default y
513 help
514 Check if a variable is defined in the environment for use in
515 shell scripting.
516
Simon Glass84d67c72017-05-17 03:25:13 -0600517config CMD_ENV_CALLBACK
518 bool "env callbacks - print callbacks and their associated variables"
519 help
520 Some environment variable have callbacks defined by
521 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
522 For example changing "baudrate" adjust the serial baud rate. This
523 command lists the currently defined callbacks.
524
Simon Glassc31e2d82017-05-17 03:25:14 -0600525config CMD_ENV_FLAGS
526 bool "env flags -print variables that have non-default flags"
527 help
528 Some environment variables have special flags that control their
529 behaviour. For example, serial# can only be written once and cannot
530 be deleted. This command shows the variables that have special
531 flags.
532
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900533config CMD_NVEDIT_EFI
534 bool "env [set|print] -e - set/print UEFI variables"
535 depends on EFI_LOADER
536 default y
537 imply HEXDUMP
538 help
539 UEFI variables are encoded as some form of U-Boot variables.
540 If enabled, we are allowed to set/print UEFI variables using
541 "env" command with "-e" option without knowing details.
542
Leo Ruan7450b872019-05-24 17:20:19 +0200543config CMD_NVEDIT_INFO
544 bool "env info - print or evaluate environment information"
545 help
546 Print environment information:
547 - env_valid : is environment valid
548 - env_ready : is environment imported into hash table
549 - env_use_default : is default environment used
550
551 This command can be optionally used for evaluation in scripts:
552 [-d] : evaluate whether default environment is used
553 [-p] : evaluate whether environment can be persisted
554 The result of multiple evaluations will be combined with AND.
555
Simon Glass29499a02016-01-17 20:53:51 -0700556endmenu
557
558menu "Memory commands"
559
Mario Six8a4f6642018-03-28 14:39:18 +0200560config CMD_BINOP
561 bool "binop"
562 help
563 Compute binary operations (xor, or, and) of byte arrays of arbitrary
564 size from memory and store the result in memory or the environment.
565
Simon Glass29499a02016-01-17 20:53:51 -0700566config CMD_CRC32
567 bool "crc32"
568 default y
Michal Simek84f3dec2018-07-23 15:55:13 +0200569 select HASH
Simon Glass29499a02016-01-17 20:53:51 -0700570 help
571 Compute CRC32.
572
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100573config CRC32_VERIFY
574 bool "crc32 -v"
575 depends on CMD_CRC32
576 help
577 Add -v option to verify data against a crc32 checksum.
578
Simon Glass4590d4e2017-05-17 03:25:10 -0600579config CMD_EEPROM
580 bool "eeprom - EEPROM subsystem"
581 help
582 (deprecated, needs conversion to driver model)
583 Provides commands to read and write EEPROM (Electrically Erasable
584 Programmable Read Only Memory) chips that are connected over an
585 I2C bus.
586
587config CMD_EEPROM_LAYOUT
588 bool "Enable layout-aware eeprom commands"
589 depends on CMD_EEPROM
590 help
591 (deprecated, needs conversion to driver model)
592 When enabled, additional eeprom sub-commands become available.
593
594 eeprom print - prints the contents of the eeprom in a human-readable
595 way (eeprom layout fields, and data formatted to be fit for human
596 consumption).
597
598 eeprom update - allows user to update eeprom fields by specifying
599 the field name, and providing the new data in a human readable format
600 (same format as displayed by the eeprom print command).
601
602 Both commands can either auto detect the layout, or be told which
603 layout to use.
604
605 Feature API:
606 __weak int parse_layout_version(char *str)
607 - override to provide your own layout name parsing
608 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
609 int layout_version);
610 - override to setup the layout metadata based on the version
611 __weak int eeprom_layout_detect(unsigned char *data)
612 - override to provide your own algorithm for detecting layout
613 version
614 eeprom_field.c
615 - contains various printing and updating functions for common
616 types of eeprom fields. Can be used for defining
617 custom layouts.
618
619config EEPROM_LAYOUT_HELP_STRING
620 string "Tells user what layout names are supported"
621 depends on CMD_EEPROM_LAYOUT
622 default "<not defined>"
623 help
624 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
625 command's help.
626
Simon Glass26c20532017-08-04 16:34:51 -0600627config LOOPW
628 bool "loopw"
629 help
630 Infinite write loop on address range
631
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000632config CMD_MD5SUM
633 bool "md5sum"
634 default n
635 select MD5
636 help
637 Compute MD5 checksum.
638
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100639config MD5SUM_VERIFY
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000640 bool "md5sum -v"
641 default n
642 depends on CMD_MD5SUM
643 help
644 Add -v option to verify data against an MD5 checksum.
645
Simon Glass26c20532017-08-04 16:34:51 -0600646config CMD_MEMINFO
647 bool "meminfo"
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100648 help
Simon Glass26c20532017-08-04 16:34:51 -0600649 Display memory information.
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100650
Simon Glass26c20532017-08-04 16:34:51 -0600651config CMD_MEMORY
652 bool "md, mm, nm, mw, cp, cmp, base, loop"
653 default y
Simon Glass29499a02016-01-17 20:53:51 -0700654 help
Simon Glass26c20532017-08-04 16:34:51 -0600655 Memory commands.
656 md - memory display
657 mm - memory modify (auto-incrementing address)
658 nm - memory modify (constant address)
659 mw - memory write (fill)
660 cp - memory copy
661 cmp - memory compare
662 base - print or set address offset
663 loop - initialize loop on address range
Simon Glass29499a02016-01-17 20:53:51 -0700664
Adam Ford1ef0c492019-08-14 07:54:34 -0500665config MX_CYCLIC
666 bool "Enable cyclic md/mw commands"
667 depends on CMD_MEMORY
668 help
669 Add the "mdc" and "mwc" memory commands. These are cyclic
670 "md/mw" commands.
671 Examples:
672
673 => mdc.b 10 4 500
674 This command will print 4 bytes (10,11,12,13) each 500 ms.
675
676 => mwc.l 100 12345678 10
677 This command will write 12345678 to address 100 all 10 ms.
678
Jean-Jacques Hiblotd3f09372019-07-02 14:23:26 +0200679config CMD_RANDOM
680 bool "random"
681 default y
682 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
683 help
684 random - fill memory with random data
685
Simon Glass29499a02016-01-17 20:53:51 -0700686config CMD_MEMTEST
687 bool "memtest"
688 help
689 Simple RAM read/write test.
690
Mario Six00518992018-03-28 14:38:14 +0200691if CMD_MEMTEST
692
693config SYS_ALT_MEMTEST
694 bool "Alternative test"
695 help
696 Use a more complete alternative memory test.
697
698endif
699
Simon Glass29499a02016-01-17 20:53:51 -0700700config CMD_MX_CYCLIC
701 bool "mdc, mwc"
702 help
703 mdc - memory display cyclic
704 mwc - memory write cyclic
705
Simon Glass26c20532017-08-04 16:34:51 -0600706config CMD_SHA1SUM
707 bool "sha1sum"
708 select SHA1
Simon Glass29499a02016-01-17 20:53:51 -0700709 help
Simon Glass26c20532017-08-04 16:34:51 -0600710 Compute SHA1 checksum.
711
712config SHA1SUM_VERIFY
713 bool "sha1sum -v"
714 depends on CMD_SHA1SUM
715 help
716 Add -v option to verify data against a SHA1 checksum.
Simon Glass29499a02016-01-17 20:53:51 -0700717
Simon Glass8e83ca82017-08-04 16:34:52 -0600718config CMD_STRINGS
719 bool "strings - display strings in memory"
720 help
721 This works similarly to the Unix 'strings' command except that it
722 works with a memory range. String of printable characters found
723 within the range are displayed. The minimum number of characters
724 for a sequence to be considered a string can be provided.
725
Simon Glassbecaa8f2017-05-17 03:25:43 -0600726endmenu
727
728menu "Compression commands"
729
730config CMD_LZMADEC
731 bool "lzmadec"
Tom Rini3237bc62017-09-29 14:32:44 -0400732 default y if CMD_BOOTI
Simon Glassbecaa8f2017-05-17 03:25:43 -0600733 select LZMA
734 help
735 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
736 image from memory.
737
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900738config CMD_UNZIP
739 bool "unzip"
Tom Rini3237bc62017-09-29 14:32:44 -0400740 default y if CMD_BOOTI
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900741 help
742 Uncompress a zip-compressed memory region.
743
744config CMD_ZIP
745 bool "zip"
746 help
747 Compress a memory region with zlib deflate method.
748
Simon Glass29499a02016-01-17 20:53:51 -0700749endmenu
750
751menu "Device access commands"
752
Simon Glass036bbb12017-08-04 16:34:28 -0600753config CMD_ARMFLASH
754 #depends on FLASH_CFI_DRIVER
755 bool "armflash"
756 help
757 ARM Ltd reference designs flash partition access
758
Neil Armstrong49261c72018-04-27 15:17:57 +0200759config CMD_ADC
760 bool "adc - Access Analog to Digital Converters info and data"
761 select ADC
762 select DM_REGULATOR
763 help
764 Shows ADC device info and permit printing one-shot analog converted
765 data from a named Analog to Digital Converter.
766
Eugeniu Rosca35c34be2019-05-23 17:32:22 +0200767config CMD_BCB
768 bool "bcb"
769 depends on MMC
770 depends on PARTITIONS
771 help
772 Read/modify/write the fields of Bootloader Control Block, usually
773 stored on the flash "misc" partition with its structure defined in:
774 https://android.googlesource.com/platform/bootable/recovery/+/master/
775 bootloader_message/include/bootloader_message/bootloader_message.h
776
777 Some real-life use-cases include (but are not limited to):
778 - Determine the "boot reason" (and act accordingly):
779 https://source.android.com/devices/bootloader/boot-reason
780 - Get/pass a list of commands from/to recovery:
781 https://android.googlesource.com/platform/bootable/recovery
782 - Inspect/dump the contents of the BCB fields
783
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200784config CMD_BIND
785 bool "bind/unbind - Bind or unbind a device to/from a driver"
786 depends on DM
787 help
788 Bind or unbind a device to/from a driver from the command line.
789 This is useful in situations where a device may be handled by several
790 drivers. For example, this can be used to bind a UDC to the usb ether
791 gadget driver from the command line.
792
Simon Glass04ac6f12017-04-26 22:28:02 -0600793config CMD_CLK
794 bool "clk - Show clock frequencies"
795 help
796 (deprecated)
797 Shows clock frequences by calling a sock_clk_dump() hook function.
798 This is depreated in favour of using the CLK uclass and accessing
799 clock values from associated drivers. However currently no command
800 exists for this.
801
Simon Glass036bbb12017-08-04 16:34:28 -0600802config CMD_DEMO
803 bool "demo - Demonstration commands for driver model"
804 depends on DM
805 help
806 Provides a 'demo' command which can be used to play around with
807 driver model. To use this properly you will need to enable one or
808 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
809 Otherwise you will always get an empty list of devices. The demo
810 devices are defined in the sandbox device tree, so the easiest
811 option is to use sandbox and pass the -d point to sandbox's
812 u-boot.dtb file.
813
814config CMD_DFU
815 bool "dfu"
Marek Vasutea84f802018-02-16 16:41:17 +0100816 select DFU
Simon Glass036bbb12017-08-04 16:34:28 -0600817 help
818 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass663b0cc2017-08-04 16:35:06 -0600819 class device via USB. This command requires that the "dfu_alt_info"
820 environment variable be set and define the alt settings to expose to
821 the host.
Simon Glass036bbb12017-08-04 16:34:28 -0600822
Simon Glass29499a02016-01-17 20:53:51 -0700823config CMD_DM
824 bool "dm - Access to driver model information"
825 depends on DM
Simon Glass29499a02016-01-17 20:53:51 -0700826 help
827 Provides access to driver model data structures and information,
828 such as a list of devices, list of uclasses and the state of each
829 device (e.g. activated). This is not required for operation, but
830 can be useful to see the state of driver model for debugging or
831 interest.
832
Alex Kiernan65de9552018-05-29 15:30:39 +0000833config CMD_FASTBOOT
834 bool "fastboot - Android fastboot support"
835 depends on FASTBOOT
836 help
837 This enables the command "fastboot" which enables the Android
838 fastboot mode for the platform. Fastboot is a protocol for
839 downloading images, flashing and device control used on
Alex Kiernand5aa57c2018-05-29 15:30:53 +0000840 Android devices. Fastboot requires either the network stack
841 enabled or support for acting as a USB device.
Alex Kiernan65de9552018-05-29 15:30:39 +0000842
Eugeniu Roscac37e68f2019-07-19 23:26:11 +0200843 See doc/android/fastboot.txt for more information.
Alex Kiernan65de9552018-05-29 15:30:39 +0000844
Simon Glass036bbb12017-08-04 16:34:28 -0600845config CMD_FDC
846 bool "fdcboot - Boot from floppy device"
Simon Glass29499a02016-01-17 20:53:51 -0700847 help
Simon Glass036bbb12017-08-04 16:34:28 -0600848 The 'fdtboot' command allows booting an image from a floppy disk.
849
850config CMD_FLASH
851 bool "flinfo, erase, protect"
852 default y
853 help
854 NOR flash support.
855 flinfo - print FLASH memory information
856 erase - FLASH memory
857 protect - enable or disable FLASH write protection
858
859config CMD_FPGA
860 bool "fpga"
Tuomas Tynkkynen5ca16b32018-01-27 20:28:40 +0200861 depends on FPGA
Simon Glass036bbb12017-08-04 16:34:28 -0600862 default y
863 help
864 FPGA support.
865
866config CMD_FPGA_LOADBP
867 bool "fpga loadbp - load partial bitstream (Xilinx only)"
868 depends on CMD_FPGA
869 help
870 Supports loading an FPGA device from a bitstream buffer containing
871 a partial bitstream.
872
873config CMD_FPGA_LOADFS
874 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
875 depends on CMD_FPGA
876 help
877 Supports loading an FPGA device from a FAT filesystem.
878
879config CMD_FPGA_LOADMK
880 bool "fpga loadmk - load bitstream from image"
881 depends on CMD_FPGA
882 help
883 Supports loading an FPGA device from a image generated by mkimage.
884
885config CMD_FPGA_LOADP
886 bool "fpga loadp - load partial bitstream"
887 depends on CMD_FPGA
888 help
889 Supports loading an FPGA device from a bitstream buffer containing
890 a partial bitstream.
891
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +0530892config CMD_FPGA_LOAD_SECURE
893 bool "fpga loads - loads secure bitstreams (Xilinx only)"
894 depends on CMD_FPGA
895 help
896 Enables the fpga loads command which is used to load secure
897 (authenticated or encrypted or both) bitstreams on to FPGA.
898
Simon Glass036bbb12017-08-04 16:34:28 -0600899config CMD_FPGAD
900 bool "fpgad - dump FPGA registers"
901 help
902 (legacy, needs conversion to driver model)
903 Provides a way to dump FPGA registers by calling the board-specific
904 fpga_get_reg() function. This functions similarly to the 'md'
905 command.
906
907config CMD_FUSE
908 bool "fuse - support for the fuse subssystem"
909 help
910 (deprecated - needs conversion to driver model)
911 This allows reading, sensing, programming or overriding fuses
912 which control the behaviour of the device. The command uses the
913 fuse_...() API.
914
915config CMD_GPIO
916 bool "gpio"
917 help
918 GPIO support.
919
920config CMD_GPT
921 bool "GPT (GUID Partition Table) command"
Simon Glass036bbb12017-08-04 16:34:28 -0600922 select EFI_PARTITION
Adam Fordb10ba902018-02-06 12:43:56 -0600923 select HAVE_BLOCK_DEVICE
Michal Simek84f3dec2018-07-23 15:55:13 +0200924 select PARTITION_UUIDS
Maxime Ripard24336442017-08-24 11:52:32 +0200925 imply RANDOM_UUID
Simon Glass036bbb12017-08-04 16:34:28 -0600926 help
927 Enable the 'gpt' command to ready and write GPT style partition
928 tables.
929
Maxime Ripard24336442017-08-24 11:52:32 +0200930config RANDOM_UUID
931 bool "GPT Random UUID generation"
Adam Ford70c8f052018-02-06 12:14:28 -0600932 select LIB_UUID
Maxime Ripard24336442017-08-24 11:52:32 +0200933 help
934 Enable the generation of partitions with random UUIDs if none
935 are provided.
936
Simon Glass036bbb12017-08-04 16:34:28 -0600937config CMD_GPT_RENAME
938 bool "GPT partition renaming commands"
939 depends on CMD_GPT
940 help
941 Enables the 'gpt' command to interchange names on two GPT
942 partitions via the 'gpt swap' command or to rename single
943 partitions via the 'rename' command.
Simon Glass29499a02016-01-17 20:53:51 -0700944
Simon Glassa831eca2017-05-17 03:25:29 -0600945config CMD_IDE
946 bool "ide - Support for IDE drivers"
Simon Glassb569a012017-05-17 03:25:30 -0600947 select IDE
Simon Glassa831eca2017-05-17 03:25:29 -0600948 help
949 Provides an 'ide' command which allows accessing the IDE drive,
950 reseting the IDE interface, printing the partition table and
951 geting device info. It also enables the 'diskboot' command which
952 permits booting from an IDE drive.
953
Simon Glass3bebbe62017-05-17 03:25:34 -0600954config CMD_IO
955 bool "io - Support for performing I/O accesses"
956 help
957 Provides an 'iod' command to display I/O space and an 'iow' command
958 to write values to the I/O space. This can be useful for manually
959 checking the state of devices during boot when debugging device
960 drivers, etc.
961
Simon Glass30daabc2017-05-17 03:25:36 -0600962config CMD_IOTRACE
963 bool "iotrace - Support for tracing I/O activity"
964 help
965 Provides an 'iotrace' command which supports recording I/O reads and
966 writes in a trace buffer in memory . It also maintains a checksum
967 of the trace records (even if space is exhausted) so that the
968 sequence of I/O accesses can be verified.
969
970 When debugging drivers it is useful to see what I/O accesses were
971 done and in what order.
972
973 Even if the individual accesses are of little interest it can be
974 useful to verify that the access pattern is consistent each time
975 an operation is performed. In this case a checksum can be used to
976 characterise the operation of a driver. The checksum can be compared
977 across different runs of the operation to verify that the driver is
978 working properly.
979
980 In particular, when performing major refactoring of the driver, where
981 the access pattern should not change, the checksum provides assurance
982 that the refactoring work has not broken the driver.
983
984 This works by sneaking into the io.h heder for an architecture and
985 redirecting I/O accesses through iotrace's tracing mechanism.
986
987 For now no commands are provided to examine the trace buffer. The
988 format is fairly simple, so 'md' is a reasonable substitute.
989
990 Note: The checksum feature is only useful for I/O regions where the
991 contents do not change outside of software control. Where this is not
992 suitable you can fall back to manually comparing the addresses. It
993 might be useful to enhance tracing to only checksum the accesses and
994 not the data read/written.
995
Simon Glass036bbb12017-08-04 16:34:28 -0600996config CMD_I2C
997 bool "i2c"
998 help
999 I2C support.
1000
Eugen Hristevb879c842018-09-18 10:35:33 +03001001config CMD_W1
1002 depends on W1
1003 default y if W1
1004 bool "w1 - Support for Dallas 1-Wire protocol"
1005 help
1006 Dallas 1-wire protocol support
1007
Simon Glass29499a02016-01-17 20:53:51 -07001008config CMD_LOADB
1009 bool "loadb"
1010 default y
1011 help
1012 Load a binary file over serial line.
1013
1014config CMD_LOADS
1015 bool "loads"
1016 default y
1017 help
1018 Load an S-Record file over serial line
1019
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001020config CMD_MMC
1021 bool "mmc"
1022 help
1023 MMC memory mapped support.
1024
Alex Kiernan60e0f612018-05-08 04:43:31 +00001025config CMD_MMC_RPMB
1026 bool "Enable support for RPMB in the mmc command"
1027 depends on CMD_MMC
1028 help
1029 Enable the commands for reading, writing and programming the
1030 key for the Replay Protection Memory Block partition in eMMC.
1031
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001032config CMD_MMC_SWRITE
1033 bool "mmc swrite"
1034 depends on CMD_MMC && MMC_WRITE
1035 select IMAGE_SPARSE
1036 help
1037 Enable support for the "mmc swrite" command to write Android sparse
1038 images to eMMC.
1039
Miquel Raynal741f4c72018-09-29 12:58:28 +02001040config CMD_MTD
1041 bool "mtd"
1042 select MTD_PARTITIONS
1043 help
1044 MTD commands support.
1045
Simon Glass29499a02016-01-17 20:53:51 -07001046config CMD_NAND
1047 bool "nand"
Maxime Ripard5a5d71f2017-03-03 15:13:30 +01001048 default y if NAND_SUNXI
Simon Glass29499a02016-01-17 20:53:51 -07001049 help
1050 NAND support.
1051
Boris Brezillon19907782017-02-27 18:22:07 +01001052if CMD_NAND
1053config CMD_NAND_TRIMFFS
1054 bool "nand write.trimffs"
Hans de Goedefd42c052017-02-27 18:22:10 +01001055 default y if ARCH_SUNXI
Boris Brezillon19907782017-02-27 18:22:07 +01001056 help
1057 Allows one to skip empty pages when flashing something on a NAND.
1058
1059config CMD_NAND_LOCK_UNLOCK
1060 bool "nand lock/unlock"
1061 help
1062 NAND locking support.
1063
1064config CMD_NAND_TORTURE
1065 bool "nand torture"
1066 help
1067 NAND torture support.
1068
1069endif # CMD_NAND
1070
Zhikang Zhang49455652017-08-03 02:30:59 -07001071config CMD_NVME
1072 bool "nvme"
1073 depends on NVME
1074 default y if NVME
1075 help
1076 NVM Express device support
1077
Simon Glassa2a82072017-08-04 16:34:31 -06001078config CMD_ONENAND
1079 bool "onenand - access to onenand device"
1080 help
1081 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1082 various useful features. This command allows reading, writing,
1083 and erasing blocks. It allso provides a way to show and change
1084 bad blocks, and test the device.
1085
Mario Sixf8395902018-09-27 09:19:34 +02001086config CMD_OSD
1087 bool "osd"
1088 help
1089 Enable the 'osd' command which allows to query information from and
1090 write text data to a on-screen display (OSD) device; a virtual device
1091 associated with a display capable of displaying a text overlay on the
1092 display it's associated with..
1093
Patrick Delaunay73287092017-01-27 11:00:42 +01001094config CMD_PART
1095 bool "part"
Adam Fordb10ba902018-02-06 12:43:56 -06001096 select HAVE_BLOCK_DEVICE
Michal Simek84f3dec2018-07-23 15:55:13 +02001097 select PARTITION_UUIDS
Patrick Delaunay73287092017-01-27 11:00:42 +01001098 help
1099 Read and display information about the partition table on
1100 various media.
1101
Simon Glassc88a09a2017-08-04 16:34:34 -06001102config CMD_PCI
1103 bool "pci - Access PCI devices"
1104 help
1105 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1106 used on some devices to allow the CPU to communicate with its
1107 peripherals. Sub-commands allow bus enumeration, displaying and
1108 changing configuration space and a few other features.
1109
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001110config CMD_PINMUX
1111 bool "pinmux - show pins muxing"
1112 default y if PINCTRL
1113 help
1114 Parse all available pin-controllers and show pins muxing. This
1115 is useful for debug purpoer to check the pin muxing and to know if
1116 a pin is configured as a GPIO or as an alternate function.
1117
Adam Fordc4f16322018-09-09 07:05:57 -05001118config CMD_POWEROFF
1119 bool "poweroff"
1120 help
1121 Poweroff/Shutdown the system
1122
Simon Glassc05459b2017-08-04 16:34:39 -06001123config CMD_READ
1124 bool "read - Read binary data from a partition"
1125 help
1126 Provides low-level access to the data in a partition.
1127
Simon Glass036bbb12017-08-04 16:34:28 -06001128config CMD_REMOTEPROC
1129 bool "remoteproc"
1130 depends on REMOTEPROC
1131 help
1132 Support for Remote Processor control
1133
1134config CMD_SATA
1135 bool "sata - Access SATA subsystem"
1136 select SATA
1137 help
1138 SATA (Serial Advanced Technology Attachment) is a serial bus
1139 standard for connecting to hard drives and other storage devices.
1140 This command provides information about attached devices and allows
1141 reading, writing and other operations.
1142
1143 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1144 Attachment, where AT refers to an IBM AT (Advanced Technology)
1145 computer released in 1984.
1146
Simon Glassd09f3772017-08-04 16:34:43 -06001147config CMD_SAVES
1148 bool "saves - Save a file over serial in S-Record format"
1149 help
1150 Provides a way to save a binary file using the Motorola S-Record
1151 format over the serial line.
1152
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001153config CMD_SCSI
1154 bool "scsi - Access to SCSI devices"
1155 default y if SCSI
1156 help
1157 This provides a 'scsi' command which provides access to SCSI (Small
1158 Computer System Interface) devices. The command provides a way to
1159 scan the bus, reset the bus, read and write data and get information
1160 about devices.
1161
Simon Glass6870d2e2017-08-04 16:34:45 -06001162config CMD_SDRAM
1163 bool "sdram - Print SDRAM configuration information"
1164 help
1165 Provides information about attached SDRAM. This assumed that the
1166 SDRAM has an EEPROM with information that can be read using the
1167 I2C bus. This is only available on some boards.
1168
Simon Glass29499a02016-01-17 20:53:51 -07001169config CMD_SF
1170 bool "sf"
Tom Rinie5289a72019-05-29 17:01:28 -04001171 depends on DM_SPI_FLASH || SPI_FLASH
Simon Glass29499a02016-01-17 20:53:51 -07001172 help
1173 SPI Flash support
1174
Simon Glass86b1b652017-08-04 16:34:46 -06001175config CMD_SF_TEST
1176 bool "sf test - Allow testing of SPI flash"
Tom Rinie5289a72019-05-29 17:01:28 -04001177 depends on CMD_SF
Simon Glass86b1b652017-08-04 16:34:46 -06001178 help
1179 Provides a way to test that SPI flash is working correctly. The
1180 test is destructive, in that an area of SPI flash must be provided
1181 for the test to use. Performance information is also provided,
1182 measuring the performance of reading, writing and erasing in
1183 Mbps (Million Bits Per Second). This value should approximately
1184 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1185 everything is working properly.
1186
Simon Glass29499a02016-01-17 20:53:51 -07001187config CMD_SPI
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001188 bool "sspi - Command to access spi device"
Tom Rinie5289a72019-05-29 17:01:28 -04001189 depends on SPI
Simon Glass29499a02016-01-17 20:53:51 -07001190 help
1191 SPI utility command.
1192
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001193config DEFAULT_SPI_BUS
1194 int "default spi bus used by sspi command"
1195 depends on CMD_SPI
1196 default 0
1197
1198config DEFAULT_SPI_MODE
1199 hex "default spi mode used by sspi command (see include/spi.h)"
1200 depends on CMD_SPI
1201 default 0
1202
Simon Glass80a56cd2017-08-04 16:35:00 -06001203config CMD_TSI148
1204 bool "tsi148 - Command to access tsi148 device"
1205 help
1206 This provides various sub-commands to initialise and configure the
1207 Turndra tsi148 device. See the command help for full details.
1208
Simon Glass0c03c1a2017-08-04 16:35:01 -06001209config CMD_UNIVERSE
1210 bool "universe - Command to set up the Turndra Universe controller"
1211 help
1212 This allows setting up the VMEbus provided by this controller.
1213 See the command help for full details.
1214
Simon Glass29499a02016-01-17 20:53:51 -07001215config CMD_USB
1216 bool "usb"
Adam Fordb10ba902018-02-06 12:43:56 -06001217 select HAVE_BLOCK_DEVICE
Simon Glass29499a02016-01-17 20:53:51 -07001218 help
1219 USB support.
1220
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001221config CMD_USB_SDP
1222 bool "sdp"
1223 select USB_FUNCTION_SDP
1224 help
1225 Enables the command "sdp" which is used to have U-Boot emulating the
1226 Serial Download Protocol (SDP) via USB.
Michal Simekf751ff52018-07-23 15:55:12 +02001227
Eddie Cai5e3020b2017-12-15 08:17:11 +08001228config CMD_ROCKUSB
1229 bool "rockusb"
1230 depends on USB_FUNCTION_ROCKUSB
1231 help
Michal Simekf751ff52018-07-23 15:55:12 +02001232 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai5e3020b2017-12-15 08:17:11 +08001233 read/write info, image to/from devices. This enable rockusb command
1234 support to communication with rockusb device. for more detail about
1235 this command, please read doc/README.rockusb.
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001236
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001237config CMD_USB_MASS_STORAGE
1238 bool "UMS usb mass storage"
Lukasz Majewski6e782742018-01-29 19:28:02 +01001239 select USB_FUNCTION_MASS_STORAGE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001240 help
1241 USB mass storage support
1242
Tuomas Tynkkynen10a60d22018-10-15 02:21:12 -07001243config CMD_VIRTIO
1244 bool "virtio"
1245 depends on VIRTIO
1246 default y if VIRTIO
1247 help
1248 VirtIO block device support
1249
Michael Walle23964a82019-04-06 02:24:02 +02001250config CMD_WDT
1251 bool "wdt"
1252 depends on WDT
1253 help
1254 This provides commands to control the watchdog timer devices.
1255
Mario Sixfd1cc422018-08-09 14:51:21 +02001256config CMD_AXI
1257 bool "axi"
1258 depends on AXI
1259 help
1260 Enable the command "axi" for accessing AXI (Advanced eXtensible
1261 Interface) busses, a on-chip interconnect specification for managing
1262 functional blocks in SoC designs, which is also often used in designs
1263 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass29499a02016-01-17 20:53:51 -07001264endmenu
1265
1266
1267menu "Shell scripting commands"
1268
1269config CMD_ECHO
1270 bool "echo"
1271 default y
1272 help
1273 Echo args to console
1274
1275config CMD_ITEST
1276 bool "itest"
1277 default y
1278 help
1279 Return true/false on integer compare.
1280
1281config CMD_SOURCE
1282 bool "source"
1283 default y
1284 help
1285 Run script from memory
1286
1287config CMD_SETEXPR
1288 bool "setexpr"
1289 default y
1290 help
1291 Evaluate boolean and math expressions and store the result in an env
1292 variable.
1293 Also supports loading the value at a memory location into a variable.
1294 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1295
1296endmenu
1297
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001298menu "Android support commands"
1299
1300config CMD_AB_SELECT
1301 bool "ab_select"
1302 default n
1303 depends on ANDROID_AB
1304 help
1305 On Android devices with more than one boot slot (multiple copies of
1306 the kernel and system images) this provides a command to select which
1307 slot should be used to boot from and register the boot attempt. This
1308 is used by the new A/B update model where one slot is updated in the
1309 background while running from the other slot.
1310
1311endmenu
1312
Michal Simek2f785a12018-02-26 16:01:02 +01001313if NET
1314
Joe Hershbergerb0429462018-04-13 15:26:30 -05001315menuconfig CMD_NET
1316 bool "Network commands"
1317 default y
Adam Ford53705472018-07-20 23:03:57 -05001318 imply NETDEVICES
Joe Hershbergerb0429462018-04-13 15:26:30 -05001319
1320if CMD_NET
1321
1322config CMD_BOOTP
1323 bool "bootp"
Simon Glass29499a02016-01-17 20:53:51 -07001324 default y
1325 help
Simon Glass29499a02016-01-17 20:53:51 -07001326 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerb0429462018-04-13 15:26:30 -05001327
Joe Hershberger01261792018-04-13 15:26:33 -05001328config CMD_DHCP
1329 bool "dhcp"
1330 depends on CMD_BOOTP
1331 help
1332 Boot image via network using DHCP/TFTP protocol
1333
Joe Hershberger0824ad92018-04-13 15:26:32 -05001334config BOOTP_BOOTPATH
Joe Hershberger06661e12018-04-13 15:26:34 -05001335 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001336 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001337 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001338 help
1339 Even though the config is called BOOTP_BOOTPATH, it stores the
1340 path in the variable 'rootpath'.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001341
1342config BOOTP_DNS
Joe Hershberger06661e12018-04-13 15:26:34 -05001343 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001344 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001345 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001346 help
1347 The primary DNS server is stored as 'dnsip'. If two servers are
1348 returned, you must set BOOTP_DNS2 to store that second server IP
1349 also.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001350
Joe Hershberger63e70712018-04-13 15:26:35 -05001351config BOOTP_DNS2
1352 bool "Store 'dnsip2' from BOOTP/DHCP server"
1353 depends on BOOTP_DNS
1354 help
1355 If a DHCP client requests the DNS server IP from a DHCP server,
1356 it is possible that more than one DNS serverip is offered to the
1357 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1358 server IP will be stored in the additional environment
1359 variable "dnsip2". The first DNS serverip is always
1360 stored in the variable "dnsip", when BOOTP_DNS is defined.
1361
Joe Hershberger0824ad92018-04-13 15:26:32 -05001362config BOOTP_GATEWAY
Joe Hershberger06661e12018-04-13 15:26:34 -05001363 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001364 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001365 depends on CMD_BOOTP
1366
1367config BOOTP_HOSTNAME
Joe Hershberger06661e12018-04-13 15:26:34 -05001368 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001369 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001370 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001371 help
1372 The name may or may not be qualified with the local domain name.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001373
Alexander Graf427e6952018-06-15 10:29:28 +02001374config BOOTP_PREFER_SERVERIP
1375 bool "serverip variable takes precedent over DHCP server IP."
1376 depends on CMD_BOOTP
1377 help
1378 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1379
1380 With this option enabled, the 'serverip' variable in the environment
1381 takes precedence over DHCP server IP and will only be set by the DHCP
1382 server if not already set in the environment.
1383
Joe Hershberger0824ad92018-04-13 15:26:32 -05001384config BOOTP_SUBNETMASK
Joe Hershberger06661e12018-04-13 15:26:34 -05001385 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001386 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001387 depends on CMD_BOOTP
1388
Chris Packhambfa7c212018-05-03 20:19:02 +12001389config BOOTP_NTPSERVER
1390 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1391 depends on CMD_BOOTP
1392
Ramon Friedac598c12019-07-18 21:43:30 +03001393config CMD_PCAP
1394 bool "pcap capture"
1395 help
1396 Selecting this will allow capturing all Ethernet packets and store
1397 them in physical memory in a PCAP formated file,
1398 later to be analyzed by PCAP reader application (IE. WireShark).
1399
Joe Hershberger0824ad92018-04-13 15:26:32 -05001400config BOOTP_PXE
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001401 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001402 default y
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001403 depends on CMD_BOOTP && CMD_PXE
1404 help
1405 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001406
1407config BOOTP_PXE_CLIENTARCH
1408 hex
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001409 depends on BOOTP_PXE
Joe Hershberger0824ad92018-04-13 15:26:32 -05001410 default 0x16 if ARM64
1411 default 0x15 if ARM
1412 default 0 if X86
1413
1414config BOOTP_VCI_STRING
1415 string
1416 depends on CMD_BOOTP
Michal Simekf4359382018-04-26 18:21:29 +05301417 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger0824ad92018-04-13 15:26:32 -05001418 default "U-Boot.armv8" if ARM64
1419 default "U-Boot.arm" if ARM
1420 default "U-Boot"
1421
Joe Hershbergerb0429462018-04-13 15:26:30 -05001422config CMD_TFTPBOOT
1423 bool "tftpboot"
1424 default y
1425 help
Simon Glass29499a02016-01-17 20:53:51 -07001426 tftpboot - boot image via network using TFTP protocol
1427
1428config CMD_TFTPPUT
1429 bool "tftp put"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001430 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001431 help
1432 TFTP put command, for uploading files to a server
1433
1434config CMD_TFTPSRV
1435 bool "tftpsrv"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001436 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001437 help
1438 Act as a TFTP server and boot the first received file
1439
Joe Hershberger0824ad92018-04-13 15:26:32 -05001440config NET_TFTP_VARS
1441 bool "Control TFTP timeout and count through environment"
1442 depends on CMD_TFTPBOOT
1443 default y
1444 help
1445 If set, allows controlling the TFTP timeout through the
1446 environment variable tftptimeout, and the TFTP maximum
1447 timeout count through the variable tftptimeoutcountmax.
1448 If unset, timeout and maximum are hard-defined as 1 second
1449 and 10 timouts per TFTP transfer.
1450
Simon Glass29499a02016-01-17 20:53:51 -07001451config CMD_RARP
1452 bool "rarpboot"
1453 help
1454 Boot image via network using RARP/TFTP protocol
1455
Simon Glass29499a02016-01-17 20:53:51 -07001456config CMD_NFS
1457 bool "nfs"
1458 default y
1459 help
1460 Boot image via network using NFS protocol.
1461
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001462config CMD_MII
1463 bool "mii"
1464 help
1465 Enable MII utility commands.
1466
Simon Glass29499a02016-01-17 20:53:51 -07001467config CMD_PING
1468 bool "ping"
1469 help
1470 Send ICMP ECHO_REQUEST to network host
1471
1472config CMD_CDP
1473 bool "cdp"
1474 help
1475 Perform CDP network configuration
1476
1477config CMD_SNTP
1478 bool "sntp"
1479 help
1480 Synchronize RTC via network
1481
1482config CMD_DNS
1483 bool "dns"
1484 help
1485 Lookup the IP of a hostname
1486
1487config CMD_LINK_LOCAL
1488 bool "linklocal"
Joe Hershberger51d78982018-04-30 12:45:22 -05001489 select LIB_RAND
Simon Glass29499a02016-01-17 20:53:51 -07001490 help
1491 Acquire a network IP address using the link-local protocol
1492
Joe Hershberger0824ad92018-04-13 15:26:32 -05001493endif
1494
Simon Glass12b85702017-05-17 03:25:17 -06001495config CMD_ETHSW
1496 bool "ethsw"
1497 help
1498 Allow control of L2 Ethernet switch commands. These are supported
1499 by the vsc9953 Ethernet driver at present. Sub-commands allow
1500 operations such as enabling / disabling a port and
1501 viewing/maintaining the filtering database (FDB)
1502
Joe Hershberger0824ad92018-04-13 15:26:32 -05001503config CMD_PXE
1504 bool "pxe"
1505 select MENU
1506 help
1507 Boot image via network using PXE protocol
Michal Simek2f785a12018-02-26 16:01:02 +01001508
Lothar Felten776fc102018-06-22 22:29:54 +02001509config CMD_WOL
1510 bool "wol"
1511 help
1512 Wait for wake-on-lan Magic Packet
1513
Joe Hershbergerb0429462018-04-13 15:26:30 -05001514endif
Simon Glass29499a02016-01-17 20:53:51 -07001515
1516menu "Misc commands"
1517
Simon Glassb575bfc2017-04-26 22:27:55 -06001518config CMD_BMP
1519 bool "Enable 'bmp' command"
1520 depends on LCD || DM_VIDEO || VIDEO
1521 help
Andrius Å tikonas1d5ccd62019-09-23 22:43:41 +01001522 This provides a way to obtain information about a BMP-format image
Simon Glassb575bfc2017-04-26 22:27:55 -06001523 and to display it. BMP (which presumably stands for BitMaP) is a
1524 file format defined by Microsoft which supports images of various
1525 depths, formats and compression methods. Headers on the file
1526 determine the formats used. This command can be used by first loading
1527 the image into RAM, then using this command to look at it or display
1528 it.
1529
Alex Kiernane710fa62018-05-12 05:49:47 +00001530config CMD_BOOTCOUNT
1531 bool "bootcount"
1532 depends on BOOTCOUNT_LIMIT
1533 help
1534 Enable the bootcount command, which allows interrogation and
1535 reset of the bootcounter.
1536
Simon Glassffab9a02017-04-26 22:27:56 -06001537config CMD_BSP
1538 bool "Enable board-specific commands"
1539 help
1540 (deprecated: instead, please define a Kconfig option for each command)
1541
1542 Some boards have board-specific commands which are only enabled
1543 during developemnt and need to be turned off for production. This
1544 option provides a way to control this. The commands that are enabled
1545 vary depending on the board.
1546
Tomas Melinc17dae52016-11-25 11:01:03 +02001547config CMD_BKOPS_ENABLE
1548 bool "mmc bkops enable"
1549 depends on CMD_MMC
1550 default n
1551 help
1552 Enable command for setting manual background operations handshake
1553 on a eMMC device. The feature is optionally available on eMMC devices
1554 conforming to standard >= 4.41.
1555
Eric Nelsonfaf4f052016-03-28 10:05:44 -07001556config CMD_BLOCK_CACHE
1557 bool "blkcache - control and stats for block cache"
1558 depends on BLOCK_CACHE
1559 default y if BLOCK_CACHE
1560 help
1561 Enable the blkcache command, which can be used to control the
1562 operation of the cache functions.
1563 This is most useful when fine-tuning the operation of the cache
1564 during development, but also allows the cache to be disabled when
1565 it might hurt performance (e.g. when using the ums command).
1566
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001567config CMD_CACHE
1568 bool "icache or dcache"
1569 help
1570 Enable the "icache" and "dcache" commands
1571
Heinrich Schuchardt13ea6852018-09-07 19:43:11 +02001572config CMD_CONITRACE
1573 bool "conitrace - trace console input codes"
1574 help
1575 Enable the 'conitrace' command which displays the codes received
1576 from the console input as hexadecimal numbers.
1577
Anatolij Gustschine0455a42018-12-01 10:47:20 +01001578config CMD_CLS
1579 bool "Enable clear screen command 'cls'"
1580 depends on CFB_CONSOLE || DM_VIDEO || LCD || VIDEO
1581 default y if LCD
1582 help
1583 Enable the 'cls' command which clears the screen contents
1584 on video frame buffer.
1585
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001586config CMD_EFIDEBUG
1587 bool "efidebug - display/configure UEFI environment"
1588 depends on EFI_LOADER
Heinrich Schuchardt3db35912019-05-11 09:53:33 +02001589 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001590 default n
1591 help
1592 Enable the 'efidebug' command which provides a subset of UEFI
1593 shell utility with simplified functionality. It will be useful
1594 particularly for managing boot parameters as well as examining
1595 various EFI status for debugging.
1596
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01001597config CMD_EXCEPTION
1598 bool "exception - raise exception"
1599 depends on ARM || RISCV || X86
1600 help
1601 Enable the 'exception' command which allows to raise an exception.
1602
Simon Glassfc8a5292017-04-10 11:34:59 -06001603config CMD_LED
1604 bool "led"
Jan Kiszka89077ba2019-01-03 09:08:42 +01001605 depends on LED
Simon Glassfc8a5292017-04-10 11:34:59 -06001606 default y if LED
1607 help
1608 Enable the 'led' command which allows for control of LEDs supported
1609 by the board. The LEDs can be listed with 'led list' and controlled
1610 with led on/off/togle/blink. Any LED drivers can be controlled with
1611 this command, e.g. led_gpio.
1612
Chris Packham3e257df2017-04-29 15:20:28 +12001613config CMD_DATE
1614 bool "date"
1615 default y if DM_RTC
1616 help
1617 Enable the 'date' command for getting/setting the time/date in RTC
1618 devices.
1619
Simon Glass29499a02016-01-17 20:53:51 -07001620config CMD_TIME
1621 bool "time"
1622 help
1623 Run commands and summarize execution time.
1624
Simon Glassfa744522017-05-17 03:25:23 -06001625config CMD_GETTIME
1626 bool "gettime - read elapsed time"
1627 help
1628 Enable the 'gettime' command which reads the elapsed time since
1629 U-Boot started running. This shows the time in seconds and
1630 milliseconds. See also the 'bootstage' command which provides more
1631 flexibility for boot timing.
1632
Simon Glass29499a02016-01-17 20:53:51 -07001633# TODO: rename to CMD_SLEEP
1634config CMD_MISC
1635 bool "sleep"
1636 default y
1637 help
1638 Delay execution for some time
1639
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02001640config MP
1641 bool "support for multiprocessor"
1642 help
1643 This provides an option to brinup
1644 different processors in multiprocessor
1645 cases.
1646
Simon Glass29499a02016-01-17 20:53:51 -07001647config CMD_TIMER
1648 bool "timer"
1649 help
1650 Access the system timer.
1651
Simon Glass29499a02016-01-17 20:53:51 -07001652config CMD_SOUND
1653 bool "sound"
1654 depends on SOUND
1655 help
1656 This provides basic access to the U-Boot's sound support. The main
1657 feature is to play a beep.
1658
1659 sound init - set up sound system
1660 sound play - play a sound
1661
Miao Yan92106272016-05-22 19:37:17 -07001662config CMD_QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04001663 bool "qfw"
Miao Yan4fcd7f22016-05-22 19:37:14 -07001664 select QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04001665 help
1666 This provides access to the QEMU firmware interface. The main
1667 feature is to allow easy loading of files passed to qemu-system
1668 via -kernel / -initrd
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02001669
1670source "cmd/mvebu/Kconfig"
1671
Simon Glass89342ef2017-08-04 16:34:55 -06001672config CMD_TERMINAL
1673 bool "terminal - provides a way to attach a serial terminal"
1674 help
1675 Provides a 'cu'-like serial terminal command. This can be used to
1676 access other serial ports from the system console. The terminal
1677 is very simple with no special processing of characters. As with
1678 cu, you can press ~. (tilde followed by period) to exit.
1679
Simon Glass6d56aad2017-08-04 16:35:02 -06001680config CMD_UUID
1681 bool "uuid, guid - generation of unique IDs"
Adam Ford70c8f052018-02-06 12:14:28 -06001682 select LIB_UUID
Simon Glass6d56aad2017-08-04 16:35:02 -06001683 help
1684 This enables two commands:
1685
1686 uuid - generate random Universally Unique Identifier
1687 guid - generate Globally Unique Identifier based on random UUID
1688
1689 The two commands are very similar except for the endianness of the
1690 output.
1691
Simon Glass29499a02016-01-17 20:53:51 -07001692endmenu
1693
Lokesh Vutla962c4e02017-12-29 11:47:49 +05301694source "cmd/ti/Kconfig"
1695
Simon Glass29499a02016-01-17 20:53:51 -07001696config CMD_BOOTSTAGE
1697 bool "Enable the 'bootstage' command"
1698 depends on BOOTSTAGE
1699 help
1700 Add a 'bootstage' command which supports printing a report
1701 and un/stashing of bootstage data.
1702
1703menu "Power commands"
1704config CMD_PMIC
1705 bool "Enable Driver Model PMIC command"
1706 depends on DM_PMIC
1707 help
1708 This is the pmic command, based on a driver model pmic's API.
1709 Command features are unchanged:
1710 - list - list pmic devices
1711 - pmic dev <id> - show or [set] operating pmic device (NEW)
1712 - pmic dump - dump registers
1713 - pmic read address - read byte of register at address
1714 - pmic write address - write byte to register at address
1715 The only one change for this command is 'dev' subcommand.
1716
1717config CMD_REGULATOR
1718 bool "Enable Driver Model REGULATOR command"
1719 depends on DM_REGULATOR
1720 help
1721 This command is based on driver model regulator's API.
1722 User interface features:
1723 - list - list regulator devices
1724 - regulator dev <id> - show or [set] operating regulator device
1725 - regulator info - print constraints info
1726 - regulator status - print operating status
1727 - regulator value <val] <-f> - print/[set] voltage value [uV]
1728 - regulator current <val> - print/[set] current value [uA]
1729 - regulator mode <id> - print/[set] operating mode id
1730 - regulator enable - enable the regulator output
1731 - regulator disable - disable the regulator output
1732
1733 The '-f' (force) option can be used for set the value which exceeds
1734 the limits, which are found in device-tree and are kept in regulator's
1735 uclass platdata structure.
1736
1737endmenu
1738
1739menu "Security commands"
Simon Glass528fdd12017-04-26 22:27:49 -06001740config CMD_AES
1741 bool "Enable the 'aes' command"
1742 select AES
1743 help
1744 This provides a means to encrypt and decrypt data using the AES
1745 (Advanced Encryption Standard). This algorithm uses a symetric key
1746 and is widely used as a streaming cipher. Different key lengths are
1747 supported by the algorithm but this command only supports 128 bits
1748 at present.
1749
Simon Glass311ec4f2017-04-26 22:27:53 -06001750config CMD_BLOB
1751 bool "Enable the 'blob' command"
1752 help
1753 This is used with the Freescale secure boot mechanism.
1754
1755 Freescale's SEC block has built-in Blob Protocol which provides
1756 a method for protecting user-defined data across system power
1757 cycles. SEC block protects data in a data structure called a Blob,
1758 which provides both confidentiality and integrity protection.
1759
1760 Encapsulating data as a blob
1761 Each time that the Blob Protocol is used to protect data, a
1762 different randomly generated key is used to encrypt the data.
1763 This random key is itself encrypted using a key which is derived
1764 from SoC's non-volatile secret key and a 16 bit Key identifier.
1765 The resulting encrypted key along with encrypted data is called a
1766 blob. The non-volatile secure key is available for use only during
1767 secure boot.
1768
1769 During decapsulation, the reverse process is performed to get back
1770 the original data.
1771
1772 Sub-commands:
Michal Simekf751ff52018-07-23 15:55:12 +02001773 blob enc - encapsulating data as a cryptgraphic blob
Simon Glass311ec4f2017-04-26 22:27:53 -06001774 blob dec - decapsulating cryptgraphic blob to get the data
1775
1776 Syntax:
1777
1778 blob enc src dst len km
1779
1780 Encapsulate and create blob of data $len bytes long
1781 at address $src and store the result at address $dst.
1782 $km is the 16 byte key modifier is also required for
1783 generation/use as key for cryptographic operation. Key
1784 modifier should be 16 byte long.
1785
1786 blob dec src dst len km
1787
1788 Decapsulate the blob of data at address $src and
1789 store result of $len byte at addr $dst.
1790 $km is the 16 byte key modifier is also required for
1791 generation/use as key for cryptographic operation. Key
1792 modifier should be 16 byte long.
1793
Simon Glass027608e2017-05-17 03:25:25 -06001794config CMD_HASH
1795 bool "Support 'hash' command"
Simon Glassb22ec7a2017-05-17 09:05:34 -06001796 select HASH
Simon Glass027608e2017-05-17 03:25:25 -06001797 help
1798 This provides a way to hash data in memory using various supported
1799 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1800 saved to memory or to an environment variable. It is also possible
1801 to verify a hash against data in memory.
1802
Michalis Pappasd382d222018-04-13 10:40:57 +03001803config CMD_HVC
1804 bool "Support the 'hvc' command"
1805 depends on ARM_SMCCC
1806 help
1807 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
1808 development and testing.
1809
1810config CMD_SMC
1811 bool "Support the 'smc' command"
1812 depends on ARM_SMCCC
1813 help
1814 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
1815 development and testing.
1816
Daniel Thompsona9e2c672017-05-19 17:26:58 +01001817config HASH_VERIFY
1818 bool "hash -v"
1819 depends on CMD_HASH
1820 help
1821 Add -v option to verify data against a hash.
1822
Miquel Raynal294f82a2018-05-15 11:57:05 +02001823config CMD_TPM_V1
1824 bool
1825
1826config CMD_TPM_V2
1827 bool
Tom Rini124a7ac2018-07-28 09:20:12 -04001828 select CMD_LOG
Miquel Raynal294f82a2018-05-15 11:57:05 +02001829
Simon Glass29499a02016-01-17 20:53:51 -07001830config CMD_TPM
1831 bool "Enable the 'tpm' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02001832 depends on TPM_V1 || TPM_V2
1833 select CMD_TPM_V1 if TPM_V1
1834 select CMD_TPM_V2 if TPM_V2
Simon Glass29499a02016-01-17 20:53:51 -07001835 help
1836 This provides a means to talk to a TPM from the command line. A wide
1837 range of commands if provided - see 'tpm help' for details. The
1838 command requires a suitable TPM on your board and the correct driver
1839 must be enabled.
1840
Miquel Raynal294f82a2018-05-15 11:57:05 +02001841if CMD_TPM
1842
Simon Glass29499a02016-01-17 20:53:51 -07001843config CMD_TPM_TEST
1844 bool "Enable the 'tpm test' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02001845 depends on TPM_V1
Simon Glass29499a02016-01-17 20:53:51 -07001846 help
Miquel Raynal294f82a2018-05-15 11:57:05 +02001847 This provides a a series of tests to confirm that the TPMv1.x is
1848 working correctly. The tests cover initialisation, non-volatile RAM,
1849 extend, global lock and checking that timing is within expectations.
1850 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass29499a02016-01-17 20:53:51 -07001851 for other devices.
1852
Miquel Raynal294f82a2018-05-15 11:57:05 +02001853endif
1854
Simon Glass29499a02016-01-17 20:53:51 -07001855endmenu
1856
Moritz Fischer62b30272016-10-04 17:08:08 -07001857menu "Firmware commands"
1858config CMD_CROS_EC
1859 bool "Enable crosec command"
1860 depends on CROS_EC
1861 default y
1862 help
1863 Enable command-line access to the Chrome OS EC (Embedded
1864 Controller). This provides the 'crosec' command which has
1865 a number of sub-commands for performing EC tasks such as
1866 updating its flash, accessing a small saved context area
1867 and talking to the I2C bus behind the EC (if there is one).
1868endmenu
1869
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001870menu "Filesystem commands"
Marek Behún27cec792017-09-03 17:00:30 +02001871config CMD_BTRFS
1872 bool "Enable the 'btrsubvol' command"
1873 select FS_BTRFS
1874 help
1875 This enables the 'btrsubvol' command to list subvolumes
1876 of a BTRFS filesystem. There are no special commands for
1877 listing BTRFS directories or loading BTRFS files - this
1878 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
1879 when BTRFS is enabled (see FS_BTRFS).
1880
Simon Glass0501e3e2017-04-26 22:27:58 -06001881config CMD_CBFS
1882 bool "Enable the 'cbfs' command"
Simon Glass579b51a2017-04-26 22:27:59 -06001883 depends on FS_CBFS
Simon Glass0501e3e2017-04-26 22:27:58 -06001884 help
1885 Define this to enable support for reading from a Coreboot
1886 filesystem. This is a ROM-based filesystem used for accessing files
1887 on systems that use coreboot as the first boot-loader and then load
1888 U-Boot to actually boot the Operating System. Available commands are
1889 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1890
Simon Glass519805e2017-04-26 22:28:03 -06001891config CMD_CRAMFS
1892 bool "Enable the 'cramfs' command"
Simon Glass690f5092017-04-26 22:28:04 -06001893 depends on FS_CRAMFS
Simon Glass519805e2017-04-26 22:28:03 -06001894 help
1895 This provides commands for dealing with CRAMFS (Compressed ROM
1896 filesystem). CRAMFS is useful when space is tight since files are
1897 compressed. Two commands are provided:
1898
1899 cramfsls - lists files in a cramfs image
1900 cramfsload - loads a file from a cramfs image
1901
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001902config CMD_EXT2
1903 bool "ext2 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001904 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001905 help
1906 Enables EXT2 FS command
1907
1908config CMD_EXT4
1909 bool "ext4 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001910 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001911 help
1912 Enables EXT4 FS command
1913
1914config CMD_EXT4_WRITE
1915 depends on CMD_EXT4
1916 bool "ext4 write command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001917 select EXT4_WRITE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001918 help
1919 Enables EXT4 FS write command
1920
1921config CMD_FAT
1922 bool "FAT command support"
Sekhar Nori1909a7b2017-06-02 17:53:59 +05301923 select FS_FAT
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001924 help
1925 Support for the FAT fs
1926
1927config CMD_FS_GENERIC
1928 bool "filesystem commands"
1929 help
1930 Enables filesystem commands (e.g. load, ls) that work for multiple
1931 fs types.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001932
Josua Mayerf5ebfe72017-04-24 10:10:45 +02001933config CMD_FS_UUID
1934 bool "fsuuid command"
1935 help
1936 Enables fsuuid command for filesystem UUID.
1937
Simon Glassc4abb4b2017-05-17 03:25:37 -06001938config CMD_JFFS2
1939 bool "jffs2 command"
Simon Glass8c6c7c22017-05-17 03:25:38 -06001940 select FS_JFFS2
Simon Glassc4abb4b2017-05-17 03:25:37 -06001941 help
1942 Enables commands to support the JFFS2 (Journalling Flash File System
1943 version 2) filesystem. This enables fsload, ls and fsinfo which
1944 provide the ability to load files, list directories and obtain
1945 filesystem information.
1946
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001947config CMD_MTDPARTS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001948 bool "MTD partition support"
Adam Fordac44a302018-07-07 22:18:22 -05001949 select MTD_DEVICE if (CMD_NAND || NAND)
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001950 help
Miquel Raynal007dddc2018-09-29 12:58:30 +02001951 MTD partitioning tool support.
1952 It is strongly encouraged to avoid using this command
1953 anymore along with 'sf', 'nand', 'onenand'. One can still
1954 declare the partitions in the mtdparts environment variable
1955 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001956
1957config MTDIDS_DEFAULT
1958 string "Default MTD IDs"
Boris Brezillon45c23202018-11-13 12:43:11 +01001959 depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001960 help
Tom Rini5ad8e112017-10-22 17:55:07 -04001961 Defines a default MTD IDs list for use with MTD partitions in the
1962 Linux MTD command line partitions format.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001963
1964config MTDPARTS_DEFAULT
1965 string "Default MTD partition scheme"
Boris Brezillon45c23202018-11-13 12:43:11 +01001966 depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01001967 help
1968 Defines a default MTD partitioning scheme in the Linux MTD command
1969 line partitions format
1970
Simon Glass66d7db02017-08-04 16:34:30 -06001971config CMD_MTDPARTS_SPREAD
1972 bool "Padd partition size to take account of bad blocks"
1973 depends on CMD_MTDPARTS
1974 help
1975 This enables the 'spread' sub-command of the mtdparts command.
1976 This command will modify the existing mtdparts variable by increasing
1977 the size of the partitions such that 1) each partition's net size is
1978 at least as large as the size specified in the mtdparts variable and
1979 2) each partition starts on a good block.
1980
Simon Glassed4ee312017-08-04 16:34:41 -06001981config CMD_REISER
1982 bool "reiser - Access to reiserfs filesystems"
1983 help
1984 This provides two commands which operate on a resierfs filesystem,
1985 commonly used some years ago:
1986
1987 reiserls - list files
1988 reiserload - load a file
1989
Simon Glass19c5caf2017-08-04 16:34:58 -06001990config CMD_YAFFS2
1991 bool "yaffs2 - Access of YAFFS2 filesystem"
1992 depends on YAFFS2
1993 default y
1994 help
1995 This provides commands for accessing a YAFFS2 filesystem. Yet
1996 Another Flash Filesystem 2 is a filesystem designed specifically
1997 for NAND flash. It incorporates bad-block management and ensures
1998 that device writes are sequential regardless of filesystem
1999 activity.
2000
Simon Glassdc82dee2017-08-04 16:35:04 -06002001config CMD_ZFS
2002 bool "zfs - Access of ZFS filesystem"
2003 help
2004 This provides commands to accessing a ZFS filesystem, commonly used
2005 on Solaris systems. Two sub-commands are provided:
2006
2007 zfsls - list files in a directory
2008 zfsload - load a file
2009
2010 See doc/README.zfs for more details.
2011
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002012endmenu
2013
Simon Glass3423f212017-04-26 22:27:52 -06002014menu "Debug commands"
2015
2016config CMD_BEDBUG
2017 bool "bedbug"
2018 help
2019 The bedbug (emBEDded deBUGger) command provides debugging features
2020 for some PowerPC processors. For details please see the
2021 docuemntation in doc/README.beddbug
2022
Simon Glass20ea5632017-04-26 22:28:08 -06002023config CMD_DIAG
2024 bool "diag - Board diagnostics"
2025 help
2026 This command provides access to board diagnostic tests. These are
2027 called Power-on Self Tests (POST). The command allows listing of
2028 available tests and running either all the tests, or specific tests
2029 identified by name.
2030
Simon Glass4c3a6202017-05-17 03:25:39 -06002031config CMD_IRQ
2032 bool "irq - Show information about interrupts"
Heiko Schocher6f90e582017-06-14 05:49:40 +02002033 depends on !ARM && !MIPS && !SH
Simon Glass4c3a6202017-05-17 03:25:39 -06002034 help
2035 This enables two commands:
2036
2037 interrupts - enable or disable interrupts
2038 irqinfo - print device-specific interrupt information
Simon Glassfd9948c2017-05-17 03:25:40 -06002039
2040config CMD_KGDB
2041 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simek9d364412018-10-04 14:26:13 +02002042 depends on PPC
Simon Glassfd9948c2017-05-17 03:25:40 -06002043 help
2044 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2045 over a serial link for debugging purposes. This allows
2046 single-stepping, inspecting variables, etc. This is supported only
2047 on PowerPC at present.
2048
Simon Glass5684f8f2017-12-04 13:48:26 -07002049config CMD_LOG
2050 bool "log - Generation, control and access to logging"
Heinrich Schuchardt74bad682018-04-19 22:02:46 +02002051 select LOG
Simon Glass5684f8f2017-12-04 13:48:26 -07002052 help
2053 This provides access to logging features. It allows the output of
2054 log data to be controlled to a limited extent (setting up the default
Simon Glass14c8a062017-12-04 13:48:27 -07002055 maximum log level for emitting of records). It also provides access
2056 to a command used for testing the log system.
Simon Glass5684f8f2017-12-04 13:48:26 -07002057
Simon Glass126cb792017-08-04 16:34:59 -06002058config CMD_TRACE
2059 bool "trace - Support tracing of function calls and timing"
2060 help
2061 Enables a command to control using of function tracing within
2062 U-Boot. This allows recording of call traces including timing
2063 information. The command can write data to memory for exporting
Simon Glassbfce7fc2019-04-08 13:20:51 -06002064 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glass126cb792017-08-04 16:34:59 -06002065 details.
2066
Igor Opaniuk60291192018-06-03 21:56:39 +03002067config CMD_AVB
2068 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniuke0df0352018-07-17 14:33:25 +03002069 depends on AVB_VERIFY
Igor Opaniuk60291192018-06-03 21:56:39 +03002070 default n
2071 help
2072 Enables a "avb" command to perform verification of partitions using
2073 Android Verified Boot 2.0 functionality. It includes such subcommands:
2074 avb init - initialize avb2 subsystem
2075 avb read_rb - read rollback index
2076 avb write_rb - write rollback index
2077 avb is_unlocked - check device lock state
2078 avb get_uuid - read and print uuid of a partition
2079 avb read_part - read data from partition
2080 avb read_part_hex - read data from partition and output to stdout
2081 avb write_part - write data to partition
2082 avb verify - run full verification chain
Simon Glass3423f212017-04-26 22:27:52 -06002083endmenu
2084
Heiko Schocher09dbb852016-09-21 07:58:19 +02002085config CMD_UBI
2086 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher09dbb852016-09-21 07:58:19 +02002087 select MTD_UBI
2088 help
2089 UBI is a software layer above MTD layer which admits use of LVM-like
2090 logical volumes on top of MTD devices, hides some complexities of
2091 flash chips like wear and bad blocks and provides some other useful
2092 capabilities. Please, consult the MTD web site for more details
2093 (www.linux-mtd.infradead.org). Activate this option if you want
2094 to use U-Boot UBI commands.
Miquel Raynal12f1ff12018-09-29 12:58:29 +02002095 It is also strongly encouraged to also enable CONFIG_MTD to get full
2096 partition support.
Heiko Schocher09dbb852016-09-21 07:58:19 +02002097
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002098config CMD_UBIFS
2099 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard1e6a0962017-03-03 14:53:22 +01002100 depends on CMD_UBI
Michal Simek84f3dec2018-07-23 15:55:13 +02002101 default y if CMD_UBI
Karl Beldan3418eeb2017-07-12 16:11:47 +00002102 select LZO
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002103 help
2104 UBIFS is a file system for flash devices which works on top of UBI.
2105
Simon Glass29499a02016-01-17 20:53:51 -07002106endmenu