blob: 4e61565aab169c7ba408b80673eec7b844a8293e [file] [log] [blame]
Simon Glass72a8cf82016-01-17 20:53:51 -07001menu "Command line interface"
2
Simon Glass302a6482016-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 Glass72a8cf82016-01-17 20:53:51 -070014config HUSH_PARSER
15 bool "Use hush shell"
Simon Glass302a6482016-03-13 19:07:28 -060016 depends on CMDLINE
Simon Glass72a8cf82016-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 Fordd021e942018-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 Glass72a8cf82016-01-17 20:53:51 -070049config SYS_PROMPT
50 string "Shell prompt"
51 default "=> "
52 help
53 This string is displayed in the command line to the left of the
54 cursor.
55
Christoph Muellner7ae31fc2019-04-05 13:03:46 +020056config SYS_XTRACE
57 string "Command execution tracer"
58 depends on CMDLINE
59 default y if CMDLINE
60 help
61 This option enables the possiblity to print all commands before
62 executing them and after all variables are evaluated (similar
63 to Bash's xtrace/'set -x' feature).
64 To enable the tracer a variable "xtrace" needs to be defined in
65 the environment.
66
Simon Glass72a8cf82016-01-17 20:53:51 -070067menu "Autoboot options"
68
Masahiro Yamada41598c82016-06-20 17:33:39 +090069config AUTOBOOT
70 bool "Autoboot"
71 default y
72 help
73 This enables the autoboot. See doc/README.autoboot for detail.
74
Simon Glass72a8cf82016-01-17 20:53:51 -070075config AUTOBOOT_KEYED
76 bool "Stop autobooting via specific input key / string"
77 default n
78 help
79 This option enables stopping (aborting) of the automatic
80 boot feature only by issuing a specific input key or
81 string. If not enabled, any input key will abort the
82 U-Boot automatic booting process and bring the device
83 to the U-Boot prompt for user input.
84
85config AUTOBOOT_PROMPT
86 string "Autoboot stop prompt"
87 depends on AUTOBOOT_KEYED
88 default "Autoboot in %d seconds\\n"
89 help
90 This string is displayed before the boot delay selected by
91 CONFIG_BOOTDELAY starts. If it is not defined there is no
92 output indicating that autoboot is in progress.
93
94 Note that this define is used as the (only) argument to a
95 printf() call, so it may contain '%' format specifications,
96 provided that it also includes, sepearated by commas exactly
97 like in a printf statement, the required arguments. It is
98 the responsibility of the user to select only such arguments
99 that are valid in the given context.
100
101config AUTOBOOT_ENCRYPTION
102 bool "Enable encryption in autoboot stopping"
103 depends on AUTOBOOT_KEYED
Simon Glass88fa4be2019-07-20 20:51:17 -0600104 help
105 This option allows a string to be entered into U-Boot to stop the
106 autoboot. The string itself is hashed and compared against the hash
107 in the environment variable 'bootstopkeysha256'. If it matches then
108 boot stops and a command-line prompt is presented.
109
110 This provides a way to ship a secure production device which can also
111 be accessed at the U-Boot command line.
Simon Glass72a8cf82016-01-17 20:53:51 -0700112
113config AUTOBOOT_DELAY_STR
114 string "Delay autobooting via specific input key / string"
115 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
116 help
117 This option delays the automatic boot feature by issuing
118 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
119 or the environment variable "bootdelaykey" is specified
120 and this string is received from console input before
121 autoboot starts booting, U-Boot gives a command prompt. The
122 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
123 used, otherwise it never times out.
124
125config AUTOBOOT_STOP_STR
126 string "Stop autobooting via specific input key / string"
127 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
128 help
129 This option enables stopping (aborting) of the automatic
130 boot feature only by issuing a specific input key or
131 string. If CONFIG_AUTOBOOT_STOP_STR or the environment
132 variable "bootstopkey" is specified and this string is
133 received from console input before autoboot starts booting,
134 U-Boot gives a command prompt. The U-Boot prompt never
135 times out, even if CONFIG_BOOT_RETRY_TIME is used.
136
137config AUTOBOOT_KEYED_CTRLC
138 bool "Enable Ctrl-C autoboot interruption"
139 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
140 default n
141 help
142 This option allows for the boot sequence to be interrupted
143 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
144 Setting this variable provides an escape sequence from the
145 limited "password" strings.
146
147config AUTOBOOT_STOP_STR_SHA256
148 string "Stop autobooting via SHA256 encrypted password"
149 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
150 help
151 This option adds the feature to only stop the autobooting,
152 and therefore boot into the U-Boot prompt, when the input
153 string / password matches a values that is encypted via
154 a SHA256 hash and saved in the environment.
155
Simon Glass8fc31e22019-07-20 20:51:21 -0600156config AUTOBOOT_USE_MENUKEY
157 bool "Allow a specify key to run a menu from the environment"
158 depends on !AUTOBOOT_KEYED
159 help
160 If a specific key is pressed to stop autoboot, then the commands in
161 the environment variable 'menucmd' are executed before boot starts.
162
163config AUTOBOOT_MENUKEY
164 int "ASCII value of boot key to show a menu"
165 default 0
166 depends on AUTOBOOT_USE_MENUKEY
167 help
168 If this key is pressed to stop autoboot, then the commands in the
169 environment variable 'menucmd' will be executed before boot starts.
170 For example, 33 means "!" in ASCII, so pressing ! at boot would take
171 this action.
172
Simon Glasscf9803a2019-07-20 20:51:25 -0600173config AUTOBOOT_MENU_SHOW
174 bool "Show a menu on boot"
AKASHI Takahirodd2d9892019-09-12 15:31:22 +0900175 depends on CMD_BOOTMENU
Simon Glasscf9803a2019-07-20 20:51:25 -0600176 help
177 This enables the boot menu, controlled by environment variables
178 defined by the board. The menu starts after running the 'preboot'
179 environmnent variable (if enabled) and before handling the boot delay.
180 See README.bootmenu for more details.
181
Simon Glass72a8cf82016-01-17 20:53:51 -0700182endmenu
183
Sam Protsenko610eec72017-09-28 12:33:45 -0700184config BUILD_BIN2C
185 bool
186
Simon Glass72a8cf82016-01-17 20:53:51 -0700187comment "Commands"
188
189menu "Info commands"
190
191config CMD_BDI
192 bool "bdinfo"
193 default y
194 help
195 Print board info
196
Masahiro Yamada61304db2017-01-30 11:12:07 +0900197config CMD_CONFIG
198 bool "config"
Masahiro Yamada61304db2017-01-30 11:12:07 +0900199 default SANDBOX
Michal Simek5ed063d2018-07-23 15:55:13 +0200200 select BUILD_BIN2C
Masahiro Yamada61304db2017-01-30 11:12:07 +0900201 help
202 Print ".config" contents.
203
204 If this option is enabled, the ".config" file contents are embedded
205 in the U-Boot image and can be printed on the console by the "config"
206 command. This provides information of which options are enabled on
207 the running U-Boot.
208
Simon Glass72a8cf82016-01-17 20:53:51 -0700209config CMD_CONSOLE
210 bool "coninfo"
211 default y
212 help
213 Print console devices and information.
214
215config CMD_CPU
216 bool "cpu"
217 help
218 Print information about available CPUs. This normally shows the
219 number of CPUs, type (e.g. manufacturer, architecture, product or
220 internal name) and clock frequency. Other information may be
221 available depending on the CPU driver.
222
223config CMD_LICENSE
224 bool "license"
Masahiro Yamadad726f222017-01-30 11:12:08 +0900225 select BUILD_BIN2C
Simon Glass72a8cf82016-01-17 20:53:51 -0700226 help
227 Print GPL license text
228
Christophe Leroyfa379222017-08-04 16:34:40 -0600229config CMD_REGINFO
230 bool "reginfo"
231 depends on PPC
232 help
233 Register dump
234
Simon Glass72a8cf82016-01-17 20:53:51 -0700235endmenu
236
237menu "Boot commands"
238
239config CMD_BOOTD
240 bool "bootd"
241 default y
242 help
243 Run the command stored in the environment "bootcmd", i.e.
244 "bootd" does the same thing as "run bootcmd".
245
246config CMD_BOOTM
247 bool "bootm"
248 default y
249 help
250 Boot an application image from the memory.
251
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500252config CMD_BOOTZ
253 bool "bootz"
254 help
255 Boot the Linux zImage
256
Masahiro Yamada26959272016-08-12 08:31:16 -0400257config CMD_BOOTI
258 bool "booti"
Atish Patra3cedc972019-05-06 17:49:39 -0700259 depends on ARM64 || RISCV
Masahiro Yamada26959272016-08-12 08:31:16 -0400260 default y
261 help
262 Boot an AArch64 Linux Kernel image from memory.
263
Alexander Grafb9939332016-03-10 00:27:20 +0100264config CMD_BOOTEFI
265 bool "bootefi"
266 depends on EFI_LOADER
267 default y
268 help
269 Boot an EFI image from memory.
270
Tom Rini4b0bcfa2019-09-20 17:36:50 -0400271config BOOTM_LINUX
272 bool "Support booting Linux OS images"
273 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
274 default y
275 help
276 Support booting the Linux kernel directly via a command such as bootm
277 or booti or bootz.
278
279config BOOTM_NETBSD
280 bool "Support booting NetBSD (non-EFI) loader images"
281 depends on CMD_BOOTM
282 default y
283 help
284 Support booting NetBSD via the bootm command.
285
286config BOOTM_OPENRTOS
287 bool "Support booting OPENRTOS / FreeRTOS images"
288 depends on CMD_BOOTM
289 help
290 Support booting OPENRTOS / FreeRTOS via the bootm command.
291
292config BOOTM_OSE
293 bool "Support booting Enea OSE images"
294 depends on CMD_BOOTM
295 help
296 Support booting Enea OSE images via the bootm command.
297
298config BOOTM_PLAN9
299 bool "Support booting Plan9 OS images"
300 depends on CMD_BOOTM
301 default y
302 help
303 Support booting Plan9 images via the bootm command.
304
305config BOOTM_RTEMS
306 bool "Support booting RTEMS OS images"
307 depends on CMD_BOOTM
308 default y
309 help
310 Support booting RTEMS images via the bootm command.
311
312config BOOTM_VXWORKS
313 bool "Support booting VxWorks OS images"
314 depends on CMD_BOOTM
315 default y
316 help
317 Support booting VxWorks images via the bootm command.
318
Alexander Graf95b62b22016-11-17 22:40:10 +0100319config CMD_BOOTEFI_HELLO_COMPILE
320 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardt0ea87412018-12-30 10:11:14 +0100321 depends on CMD_BOOTEFI && !CPU_V7M && !SANDBOX
Alexander Graf95b62b22016-11-17 22:40:10 +0100322 default y
323 help
324 This compiles a standard EFI hello world application with U-Boot so
325 that it can be used with the test/py testing framework. This is useful
326 for testing that EFI is working at a basic level, and for bringing
327 up EFI support on a new architecture.
328
329 No additional space will be required in the resulting U-Boot binary
330 when this option is enabled.
331
Simon Glassc7ae3df2016-11-07 08:47:08 -0700332config CMD_BOOTEFI_HELLO
333 bool "Allow booting a standard EFI hello world for testing"
Alexander Graf95b62b22016-11-17 22:40:10 +0100334 depends on CMD_BOOTEFI_HELLO_COMPILE
Simon Glassc7ae3df2016-11-07 08:47:08 -0700335 help
336 This adds a standard EFI hello world application to U-Boot so that
337 it can be used with the 'bootefi hello' command. This is useful
338 for testing that EFI is working at a basic level, and for bringing
339 up EFI support on a new architecture.
340
Heinrich Schuchardt623b3a52017-09-15 10:06:11 +0200341source lib/efi_selftest/Kconfig
342
Tom Rini4880b022016-11-29 09:14:56 -0500343config CMD_BOOTMENU
344 bool "bootmenu"
345 select MENU
346 help
347 Add an ANSI terminal boot menu command.
348
Sam Protsenkod03e76a2018-08-16 23:34:13 +0300349config CMD_DTIMG
350 bool "dtimg"
351 help
352 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
353 image into RAM, dump image structure information, etc. Those dtb/dtbo
354 files should be merged in one dtb further, which needs to be passed to
355 the kernel, as part of a boot process.
356
Simon Glass72a8cf82016-01-17 20:53:51 -0700357config CMD_ELF
358 bool "bootelf, bootvx"
359 default y
360 help
361 Boot an ELF/vxWorks image from the memory.
362
Michal Simek23922e22016-04-06 20:28:04 +0200363config CMD_FDT
364 bool "Flattened Device Tree utility commands"
365 default y
366 depends on OF_LIBFDT
367 help
368 Do FDT related setup before booting into the Operating System.
369
Simon Glass72a8cf82016-01-17 20:53:51 -0700370config CMD_GO
371 bool "go"
372 default y
373 help
374 Start an application at a given address.
375
376config CMD_RUN
377 bool "run"
378 default y
379 help
380 Run the command in the given environment variable.
381
382config CMD_IMI
383 bool "iminfo"
384 default y
385 help
386 Print header information for application image.
387
388config CMD_IMLS
389 bool "imls"
Simon Glass72a8cf82016-01-17 20:53:51 -0700390 help
391 List all images found in flash
392
393config CMD_XIMG
394 bool "imxtract"
395 default y
396 help
397 Extract a part of a multi-image.
398
Simon Glass72c30332017-08-04 16:34:48 -0600399config CMD_SPL
400 bool "spl export - Export boot information for Falcon boot"
401 depends on SPL
402 help
403 Falcon mode allows booting directly from SPL into an Operating
404 System such as Linux, thus skipping U-Boot proper. See
405 doc/README.falcon for full information about how to use this
406 command.
407
Simon Glass203dc1b2017-08-04 16:34:49 -0600408config CMD_SPL_NAND_OFS
Lukasz Majewskif63c43b2019-05-16 16:01:36 +0200409 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewski7cb179e2019-05-16 16:01:35 +0200410 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Simon Glass203dc1b2017-08-04 16:34:49 -0600411 default 0
412 help
413 This provides the offset of the command line arguments for Linux
414 when booting from NAND in Falcon mode. See doc/README.falcon
415 for full information about how to use this option (and also see
416 board/gateworks/gw_ventana/README for an example).
417
Lukasz Majewskief9e57d2019-05-16 16:01:37 +0200418config CMD_SPL_NOR_OFS
419 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
420 depends on CMD_SPL && SPL_NOR_SUPPORT
421 default 0
422 help
423 This provides the offset of the command line arguments or dtb for
424 Linux when booting from NOR in Falcon mode.
425
Simon Glass3a91a252017-08-04 16:34:50 -0600426config CMD_SPL_WRITE_SIZE
427 hex "Size of argument area"
428 depends on CMD_SPL
429 default 0x2000
430 help
431 This provides the size of the command-line argument area in NAND
432 flash used by Falcon-mode boot. See the documentation until CMD_SPL
433 for detail.
434
Marek Vasutac084322018-02-10 16:22:05 +0100435config CMD_FITUPD
436 bool "fitImage update command"
437 help
438 Implements the 'fitupd' command, which allows to automatically
439 store software updates present on a TFTP server in NOR Flash
440
Simon Glass9b92a8d2017-08-04 16:34:57 -0600441config CMD_THOR_DOWNLOAD
442 bool "thor - TIZEN 'thor' download"
443 help
444 Implements the 'thor' download protocol. This is a way of
445 downloading a software update over USB from an attached host.
446 There is no documentation about this within the U-Boot source code
447 but you should be able to find something on the interwebs.
448
Simon Glasse7a815f2017-08-04 16:35:03 -0600449config CMD_ZBOOT
450 bool "zboot - x86 boot command"
451 help
452 With x86 machines it is common to boot a bzImage file which
453 contains both a kernel and a setup.bin file. The latter includes
454 configuration information from the dark ages which x86 boards still
455 need to pick things out of.
456
457 Consider using FIT in preference to this since it supports directly
458 booting both 32- and 64-bit kernels, as well as secure boot.
459 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
460
Simon Glass72a8cf82016-01-17 20:53:51 -0700461endmenu
462
463menu "Environment commands"
464
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500465config CMD_ASKENV
466 bool "ask for env variable"
467 help
468 Ask for environment variable
469
Simon Glass72a8cf82016-01-17 20:53:51 -0700470config CMD_EXPORTENV
471 bool "env export"
472 default y
473 help
474 Export environments.
475
476config CMD_IMPORTENV
477 bool "env import"
478 default y
479 help
480 Import environments.
481
482config CMD_EDITENV
483 bool "editenv"
484 default y
485 help
486 Edit environment variable.
487
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500488config CMD_GREPENV
489 bool "search env"
490 help
491 Allow for searching environment variables
492
Simon Glass72a8cf82016-01-17 20:53:51 -0700493config CMD_SAVEENV
494 bool "saveenv"
495 default y
496 help
497 Save all environment variables into the compiled-in persistent
498 storage.
499
Frank Wunderlichcd121bd2019-06-29 11:36:19 +0200500config CMD_ERASEENV
501 bool "eraseenv"
502 default n
503 depends on CMD_SAVEENV
504 help
505 Erase environment variables from the compiled-in persistent
506 storage.
507
Simon Glass72a8cf82016-01-17 20:53:51 -0700508config CMD_ENV_EXISTS
509 bool "env exists"
510 default y
511 help
512 Check if a variable is defined in the environment for use in
513 shell scripting.
514
Simon Glassa55d29d2017-05-17 03:25:13 -0600515config CMD_ENV_CALLBACK
516 bool "env callbacks - print callbacks and their associated variables"
517 help
518 Some environment variable have callbacks defined by
519 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
520 For example changing "baudrate" adjust the serial baud rate. This
521 command lists the currently defined callbacks.
522
Simon Glassffc76582017-05-17 03:25:14 -0600523config CMD_ENV_FLAGS
524 bool "env flags -print variables that have non-default flags"
525 help
526 Some environment variables have special flags that control their
527 behaviour. For example, serial# can only be written once and cannot
528 be deleted. This command shows the variables that have special
529 flags.
530
AKASHI Takahiro49d81fd2019-02-25 15:54:36 +0900531config CMD_NVEDIT_EFI
532 bool "env [set|print] -e - set/print UEFI variables"
533 depends on EFI_LOADER
534 default y
535 imply HEXDUMP
536 help
537 UEFI variables are encoded as some form of U-Boot variables.
538 If enabled, we are allowed to set/print UEFI variables using
539 "env" command with "-e" option without knowing details.
540
Leo Ruan8e921202019-05-24 17:20:19 +0200541config CMD_NVEDIT_INFO
542 bool "env info - print or evaluate environment information"
543 help
544 Print environment information:
545 - env_valid : is environment valid
546 - env_ready : is environment imported into hash table
547 - env_use_default : is default environment used
548
549 This command can be optionally used for evaluation in scripts:
550 [-d] : evaluate whether default environment is used
551 [-p] : evaluate whether environment can be persisted
552 The result of multiple evaluations will be combined with AND.
553
Simon Glass72a8cf82016-01-17 20:53:51 -0700554endmenu
555
556menu "Memory commands"
557
Mario Six55b25562018-03-28 14:39:18 +0200558config CMD_BINOP
559 bool "binop"
560 help
561 Compute binary operations (xor, or, and) of byte arrays of arbitrary
562 size from memory and store the result in memory or the environment.
563
Simon Glass72a8cf82016-01-17 20:53:51 -0700564config CMD_CRC32
565 bool "crc32"
566 default y
Michal Simek5ed063d2018-07-23 15:55:13 +0200567 select HASH
Simon Glass72a8cf82016-01-17 20:53:51 -0700568 help
569 Compute CRC32.
570
Daniel Thompson221a9492017-05-19 17:26:58 +0100571config CRC32_VERIFY
572 bool "crc32 -v"
573 depends on CMD_CRC32
574 help
575 Add -v option to verify data against a crc32 checksum.
576
Simon Glassa1dc9802017-05-17 03:25:10 -0600577config CMD_EEPROM
578 bool "eeprom - EEPROM subsystem"
579 help
580 (deprecated, needs conversion to driver model)
581 Provides commands to read and write EEPROM (Electrically Erasable
582 Programmable Read Only Memory) chips that are connected over an
583 I2C bus.
584
585config CMD_EEPROM_LAYOUT
586 bool "Enable layout-aware eeprom commands"
587 depends on CMD_EEPROM
588 help
589 (deprecated, needs conversion to driver model)
590 When enabled, additional eeprom sub-commands become available.
591
592 eeprom print - prints the contents of the eeprom in a human-readable
593 way (eeprom layout fields, and data formatted to be fit for human
594 consumption).
595
596 eeprom update - allows user to update eeprom fields by specifying
597 the field name, and providing the new data in a human readable format
598 (same format as displayed by the eeprom print command).
599
600 Both commands can either auto detect the layout, or be told which
601 layout to use.
602
603 Feature API:
604 __weak int parse_layout_version(char *str)
605 - override to provide your own layout name parsing
606 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
607 int layout_version);
608 - override to setup the layout metadata based on the version
609 __weak int eeprom_layout_detect(unsigned char *data)
610 - override to provide your own algorithm for detecting layout
611 version
612 eeprom_field.c
613 - contains various printing and updating functions for common
614 types of eeprom fields. Can be used for defining
615 custom layouts.
616
617config EEPROM_LAYOUT_HELP_STRING
618 string "Tells user what layout names are supported"
619 depends on CMD_EEPROM_LAYOUT
620 default "<not defined>"
621 help
622 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
623 command's help.
624
Simon Glassba71be52017-08-04 16:34:51 -0600625config LOOPW
626 bool "loopw"
627 help
628 Infinite write loop on address range
629
Andre Przywarabea79d72017-03-15 01:19:05 +0000630config CMD_MD5SUM
631 bool "md5sum"
632 default n
633 select MD5
634 help
635 Compute MD5 checksum.
636
Daniel Thompson221a9492017-05-19 17:26:58 +0100637config MD5SUM_VERIFY
Andre Przywarabea79d72017-03-15 01:19:05 +0000638 bool "md5sum -v"
639 default n
640 depends on CMD_MD5SUM
641 help
642 Add -v option to verify data against an MD5 checksum.
643
Simon Glassba71be52017-08-04 16:34:51 -0600644config CMD_MEMINFO
645 bool "meminfo"
Daniel Thompson221a9492017-05-19 17:26:58 +0100646 help
Simon Glassba71be52017-08-04 16:34:51 -0600647 Display memory information.
Daniel Thompson221a9492017-05-19 17:26:58 +0100648
Simon Glassba71be52017-08-04 16:34:51 -0600649config CMD_MEMORY
650 bool "md, mm, nm, mw, cp, cmp, base, loop"
651 default y
Daniel Thompson221a9492017-05-19 17:26:58 +0100652 help
Simon Glassba71be52017-08-04 16:34:51 -0600653 Memory commands.
654 md - memory display
655 mm - memory modify (auto-incrementing address)
656 nm - memory modify (constant address)
657 mw - memory write (fill)
658 cp - memory copy
659 cmp - memory compare
660 base - print or set address offset
661 loop - initialize loop on address range
Simon Glass72a8cf82016-01-17 20:53:51 -0700662
Adam Ford78f28772019-08-14 07:54:34 -0500663config MX_CYCLIC
664 bool "Enable cyclic md/mw commands"
665 depends on CMD_MEMORY
666 help
667 Add the "mdc" and "mwc" memory commands. These are cyclic
668 "md/mw" commands.
669 Examples:
670
671 => mdc.b 10 4 500
672 This command will print 4 bytes (10,11,12,13) each 500 ms.
673
674 => mwc.l 100 12345678 10
675 This command will write 12345678 to address 100 all 10 ms.
676
Jean-Jacques Hiblot803e1a32019-07-02 14:23:26 +0200677config CMD_RANDOM
678 bool "random"
679 default y
680 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
681 help
682 random - fill memory with random data
683
Simon Glass72a8cf82016-01-17 20:53:51 -0700684config CMD_MEMTEST
685 bool "memtest"
686 help
687 Simple RAM read/write test.
688
Mario Sixe89f8aa2018-03-28 14:38:14 +0200689if CMD_MEMTEST
690
691config SYS_ALT_MEMTEST
692 bool "Alternative test"
693 help
694 Use a more complete alternative memory test.
695
696endif
697
Simon Glass72a8cf82016-01-17 20:53:51 -0700698config CMD_MX_CYCLIC
699 bool "mdc, mwc"
700 help
701 mdc - memory display cyclic
702 mwc - memory write cyclic
703
Simon Glassba71be52017-08-04 16:34:51 -0600704config CMD_SHA1SUM
705 bool "sha1sum"
706 select SHA1
Simon Glass72a8cf82016-01-17 20:53:51 -0700707 help
Simon Glassba71be52017-08-04 16:34:51 -0600708 Compute SHA1 checksum.
709
710config SHA1SUM_VERIFY
711 bool "sha1sum -v"
712 depends on CMD_SHA1SUM
713 help
714 Add -v option to verify data against a SHA1 checksum.
Simon Glass72a8cf82016-01-17 20:53:51 -0700715
Simon Glass00805d72017-08-04 16:34:52 -0600716config CMD_STRINGS
717 bool "strings - display strings in memory"
718 help
719 This works similarly to the Unix 'strings' command except that it
720 works with a memory range. String of printable characters found
721 within the range are displayed. The minimum number of characters
722 for a sequence to be considered a string can be provided.
723
Simon Glassee7c0e72017-05-17 03:25:43 -0600724endmenu
725
726menu "Compression commands"
727
728config CMD_LZMADEC
729 bool "lzmadec"
Tom Rini99e46df2017-09-29 14:32:44 -0400730 default y if CMD_BOOTI
Simon Glassee7c0e72017-05-17 03:25:43 -0600731 select LZMA
732 help
733 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
734 image from memory.
735
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900736config CMD_UNZIP
737 bool "unzip"
Tom Rini99e46df2017-09-29 14:32:44 -0400738 default y if CMD_BOOTI
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900739 help
740 Uncompress a zip-compressed memory region.
741
742config CMD_ZIP
743 bool "zip"
744 help
745 Compress a memory region with zlib deflate method.
746
Simon Glass72a8cf82016-01-17 20:53:51 -0700747endmenu
748
749menu "Device access commands"
750
Simon Glass0c19b4d2017-08-04 16:34:28 -0600751config CMD_ARMFLASH
752 #depends on FLASH_CFI_DRIVER
753 bool "armflash"
754 help
755 ARM Ltd reference designs flash partition access
756
Neil Armstrong051ebe32018-04-27 15:17:57 +0200757config CMD_ADC
758 bool "adc - Access Analog to Digital Converters info and data"
759 select ADC
760 select DM_REGULATOR
761 help
762 Shows ADC device info and permit printing one-shot analog converted
763 data from a named Analog to Digital Converter.
764
Eugeniu Roscadb7b7a02019-05-23 17:32:22 +0200765config CMD_BCB
766 bool "bcb"
767 depends on MMC
768 depends on PARTITIONS
769 help
770 Read/modify/write the fields of Bootloader Control Block, usually
771 stored on the flash "misc" partition with its structure defined in:
772 https://android.googlesource.com/platform/bootable/recovery/+/master/
773 bootloader_message/include/bootloader_message/bootloader_message.h
774
775 Some real-life use-cases include (but are not limited to):
776 - Determine the "boot reason" (and act accordingly):
777 https://source.android.com/devices/bootloader/boot-reason
778 - Get/pass a list of commands from/to recovery:
779 https://android.googlesource.com/platform/bootable/recovery
780 - Inspect/dump the contents of the BCB fields
781
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +0200782config CMD_BIND
783 bool "bind/unbind - Bind or unbind a device to/from a driver"
784 depends on DM
785 help
786 Bind or unbind a device to/from a driver from the command line.
787 This is useful in situations where a device may be handled by several
788 drivers. For example, this can be used to bind a UDC to the usb ether
789 gadget driver from the command line.
790
Simon Glassd3156282017-04-26 22:28:02 -0600791config CMD_CLK
792 bool "clk - Show clock frequencies"
793 help
794 (deprecated)
795 Shows clock frequences by calling a sock_clk_dump() hook function.
796 This is depreated in favour of using the CLK uclass and accessing
797 clock values from associated drivers. However currently no command
798 exists for this.
799
Simon Glass72a8cf82016-01-17 20:53:51 -0700800config CMD_DEMO
801 bool "demo - Demonstration commands for driver model"
802 depends on DM
803 help
804 Provides a 'demo' command which can be used to play around with
805 driver model. To use this properly you will need to enable one or
806 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
807 Otherwise you will always get an empty list of devices. The demo
808 devices are defined in the sandbox device tree, so the easiest
809 option is to use sandbox and pass the -d point to sandbox's
810 u-boot.dtb file.
811
Simon Glass0c19b4d2017-08-04 16:34:28 -0600812config CMD_DFU
813 bool "dfu"
Marek Vasut0f44d332018-02-16 16:41:17 +0100814 select DFU
Simon Glass0c19b4d2017-08-04 16:34:28 -0600815 help
816 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass00fd59d2017-08-04 16:35:06 -0600817 class device via USB. This command requires that the "dfu_alt_info"
818 environment variable be set and define the alt settings to expose to
819 the host.
Simon Glass0c19b4d2017-08-04 16:34:28 -0600820
821config CMD_DM
822 bool "dm - Access to driver model information"
823 depends on DM
Simon Glass0c19b4d2017-08-04 16:34:28 -0600824 help
825 Provides access to driver model data structures and information,
826 such as a list of devices, list of uclasses and the state of each
827 device (e.g. activated). This is not required for operation, but
828 can be useful to see the state of driver model for debugging or
829 interest.
830
Alex Kiernan312a10f2018-05-29 15:30:39 +0000831config CMD_FASTBOOT
832 bool "fastboot - Android fastboot support"
833 depends on FASTBOOT
834 help
835 This enables the command "fastboot" which enables the Android
836 fastboot mode for the platform. Fastboot is a protocol for
837 downloading images, flashing and device control used on
Alex Kiernanf73a7df2018-05-29 15:30:53 +0000838 Android devices. Fastboot requires either the network stack
839 enabled or support for acting as a USB device.
Alex Kiernan312a10f2018-05-29 15:30:39 +0000840
Eugeniu Roscacef4de82019-07-19 23:26:11 +0200841 See doc/android/fastboot.txt for more information.
Alex Kiernan312a10f2018-05-29 15:30:39 +0000842
Simon Glass0c19b4d2017-08-04 16:34:28 -0600843config CMD_FDC
844 bool "fdcboot - Boot from floppy device"
845 help
846 The 'fdtboot' command allows booting an image from a floppy disk.
847
848config CMD_FLASH
849 bool "flinfo, erase, protect"
850 default y
851 help
852 NOR flash support.
853 flinfo - print FLASH memory information
854 erase - FLASH memory
855 protect - enable or disable FLASH write protection
856
857config CMD_FPGA
858 bool "fpga"
Tuomas Tynkkynena4fa8112018-01-27 20:28:40 +0200859 depends on FPGA
Simon Glass0c19b4d2017-08-04 16:34:28 -0600860 default y
861 help
862 FPGA support.
863
864config CMD_FPGA_LOADBP
865 bool "fpga loadbp - load partial bitstream (Xilinx only)"
866 depends on CMD_FPGA
867 help
868 Supports loading an FPGA device from a bitstream buffer containing
869 a partial bitstream.
870
871config CMD_FPGA_LOADFS
872 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
873 depends on CMD_FPGA
874 help
875 Supports loading an FPGA device from a FAT filesystem.
876
877config CMD_FPGA_LOADMK
878 bool "fpga loadmk - load bitstream from image"
879 depends on CMD_FPGA
880 help
881 Supports loading an FPGA device from a image generated by mkimage.
882
883config CMD_FPGA_LOADP
884 bool "fpga loadp - load partial bitstream"
885 depends on CMD_FPGA
886 help
887 Supports loading an FPGA device from a bitstream buffer containing
888 a partial bitstream.
889
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +0530890config CMD_FPGA_LOAD_SECURE
891 bool "fpga loads - loads secure bitstreams (Xilinx only)"
892 depends on CMD_FPGA
893 help
894 Enables the fpga loads command which is used to load secure
895 (authenticated or encrypted or both) bitstreams on to FPGA.
896
Simon Glass0c19b4d2017-08-04 16:34:28 -0600897config CMD_FPGAD
898 bool "fpgad - dump FPGA registers"
899 help
900 (legacy, needs conversion to driver model)
901 Provides a way to dump FPGA registers by calling the board-specific
902 fpga_get_reg() function. This functions similarly to the 'md'
903 command.
904
905config CMD_FUSE
906 bool "fuse - support for the fuse subssystem"
907 help
908 (deprecated - needs conversion to driver model)
909 This allows reading, sensing, programming or overriding fuses
910 which control the behaviour of the device. The command uses the
911 fuse_...() API.
912
913config CMD_GPIO
914 bool "gpio"
915 help
916 GPIO support.
917
918config CMD_GPT
919 bool "GPT (GUID Partition Table) command"
Simon Glass0c19b4d2017-08-04 16:34:28 -0600920 select EFI_PARTITION
Adam Ford1811a922018-02-06 12:43:56 -0600921 select HAVE_BLOCK_DEVICE
Michal Simek5ed063d2018-07-23 15:55:13 +0200922 select PARTITION_UUIDS
Maxime Ripard47738ac2017-08-24 11:52:32 +0200923 imply RANDOM_UUID
Simon Glass0c19b4d2017-08-04 16:34:28 -0600924 help
925 Enable the 'gpt' command to ready and write GPT style partition
926 tables.
927
Maxime Ripard47738ac2017-08-24 11:52:32 +0200928config RANDOM_UUID
929 bool "GPT Random UUID generation"
Adam Forda451bc22018-02-06 12:14:28 -0600930 select LIB_UUID
Maxime Ripard47738ac2017-08-24 11:52:32 +0200931 help
932 Enable the generation of partitions with random UUIDs if none
933 are provided.
934
Simon Glass0c19b4d2017-08-04 16:34:28 -0600935config CMD_GPT_RENAME
936 bool "GPT partition renaming commands"
937 depends on CMD_GPT
938 help
939 Enables the 'gpt' command to interchange names on two GPT
940 partitions via the 'gpt swap' command or to rename single
941 partitions via the 'rename' command.
942
Simon Glass75eb9972017-05-17 03:25:29 -0600943config CMD_IDE
944 bool "ide - Support for IDE drivers"
Simon Glassfc843a02017-05-17 03:25:30 -0600945 select IDE
Simon Glass75eb9972017-05-17 03:25:29 -0600946 help
947 Provides an 'ide' command which allows accessing the IDE drive,
948 reseting the IDE interface, printing the partition table and
949 geting device info. It also enables the 'diskboot' command which
950 permits booting from an IDE drive.
951
Simon Glass594e8d12017-05-17 03:25:34 -0600952config CMD_IO
953 bool "io - Support for performing I/O accesses"
954 help
955 Provides an 'iod' command to display I/O space and an 'iow' command
956 to write values to the I/O space. This can be useful for manually
957 checking the state of devices during boot when debugging device
958 drivers, etc.
959
Simon Glass7d0f5c12017-05-17 03:25:36 -0600960config CMD_IOTRACE
961 bool "iotrace - Support for tracing I/O activity"
962 help
963 Provides an 'iotrace' command which supports recording I/O reads and
964 writes in a trace buffer in memory . It also maintains a checksum
965 of the trace records (even if space is exhausted) so that the
966 sequence of I/O accesses can be verified.
967
968 When debugging drivers it is useful to see what I/O accesses were
969 done and in what order.
970
971 Even if the individual accesses are of little interest it can be
972 useful to verify that the access pattern is consistent each time
973 an operation is performed. In this case a checksum can be used to
974 characterise the operation of a driver. The checksum can be compared
975 across different runs of the operation to verify that the driver is
976 working properly.
977
978 In particular, when performing major refactoring of the driver, where
979 the access pattern should not change, the checksum provides assurance
980 that the refactoring work has not broken the driver.
981
982 This works by sneaking into the io.h heder for an architecture and
983 redirecting I/O accesses through iotrace's tracing mechanism.
984
985 For now no commands are provided to examine the trace buffer. The
986 format is fairly simple, so 'md' is a reasonable substitute.
987
988 Note: The checksum feature is only useful for I/O regions where the
989 contents do not change outside of software control. Where this is not
990 suitable you can fall back to manually comparing the addresses. It
991 might be useful to enhance tracing to only checksum the accesses and
992 not the data read/written.
993
Simon Glass0c19b4d2017-08-04 16:34:28 -0600994config CMD_I2C
995 bool "i2c"
996 help
997 I2C support.
998
Eugen Hristevd05266f2018-09-18 10:35:33 +0300999config CMD_W1
1000 depends on W1
1001 default y if W1
1002 bool "w1 - Support for Dallas 1-Wire protocol"
1003 help
1004 Dallas 1-wire protocol support
1005
Simon Glass72a8cf82016-01-17 20:53:51 -07001006config CMD_LOADB
1007 bool "loadb"
1008 default y
1009 help
1010 Load a binary file over serial line.
1011
1012config CMD_LOADS
1013 bool "loads"
1014 default y
1015 help
1016 Load an S-Record file over serial line
1017
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001018config CMD_MMC
1019 bool "mmc"
1020 help
1021 MMC memory mapped support.
1022
Alex Kiernan5a7b11e2018-05-08 04:43:31 +00001023config CMD_MMC_RPMB
1024 bool "Enable support for RPMB in the mmc command"
1025 depends on CMD_MMC
1026 help
1027 Enable the commands for reading, writing and programming the
1028 key for the Replay Protection Memory Block partition in eMMC.
1029
Alex Kiernanc232d142018-05-29 15:30:52 +00001030config CMD_MMC_SWRITE
1031 bool "mmc swrite"
1032 depends on CMD_MMC && MMC_WRITE
1033 select IMAGE_SPARSE
1034 help
1035 Enable support for the "mmc swrite" command to write Android sparse
1036 images to eMMC.
1037
Miquel Raynal5db66b32018-09-29 12:58:28 +02001038config CMD_MTD
1039 bool "mtd"
1040 select MTD_PARTITIONS
1041 help
1042 MTD commands support.
1043
Simon Glass72a8cf82016-01-17 20:53:51 -07001044config CMD_NAND
1045 bool "nand"
Maxime Ripard522c2822017-03-03 15:13:30 +01001046 default y if NAND_SUNXI
Simon Glass72a8cf82016-01-17 20:53:51 -07001047 help
1048 NAND support.
1049
Boris Brezillone915d202017-02-27 18:22:07 +01001050if CMD_NAND
1051config CMD_NAND_TRIMFFS
1052 bool "nand write.trimffs"
Hans de Goeded482a8d2017-02-27 18:22:10 +01001053 default y if ARCH_SUNXI
Boris Brezillone915d202017-02-27 18:22:07 +01001054 help
1055 Allows one to skip empty pages when flashing something on a NAND.
1056
1057config CMD_NAND_LOCK_UNLOCK
1058 bool "nand lock/unlock"
1059 help
1060 NAND locking support.
1061
1062config CMD_NAND_TORTURE
1063 bool "nand torture"
1064 help
1065 NAND torture support.
1066
1067endif # CMD_NAND
1068
Zhikang Zhang0adc38b2017-08-03 02:30:59 -07001069config CMD_NVME
1070 bool "nvme"
1071 depends on NVME
1072 default y if NVME
1073 help
1074 NVM Express device support
1075
Simon Glass978f0852017-08-04 16:34:31 -06001076config CMD_ONENAND
1077 bool "onenand - access to onenand device"
1078 help
1079 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1080 various useful features. This command allows reading, writing,
1081 and erasing blocks. It allso provides a way to show and change
1082 bad blocks, and test the device.
1083
Mario Six3bf65cb2018-09-27 09:19:34 +02001084config CMD_OSD
1085 bool "osd"
1086 help
1087 Enable the 'osd' command which allows to query information from and
1088 write text data to a on-screen display (OSD) device; a virtual device
1089 associated with a display capable of displaying a text overlay on the
1090 display it's associated with..
1091
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001092config CMD_PART
1093 bool "part"
Adam Ford1811a922018-02-06 12:43:56 -06001094 select HAVE_BLOCK_DEVICE
Michal Simek5ed063d2018-07-23 15:55:13 +02001095 select PARTITION_UUIDS
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001096 help
1097 Read and display information about the partition table on
1098 various media.
1099
Simon Glass6500ec72017-08-04 16:34:34 -06001100config CMD_PCI
1101 bool "pci - Access PCI devices"
1102 help
1103 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1104 used on some devices to allow the CPU to communicate with its
1105 peripherals. Sub-commands allow bus enumeration, displaying and
1106 changing configuration space and a few other features.
1107
Patrice Chotardd5a83132018-10-24 14:10:17 +02001108config CMD_PINMUX
1109 bool "pinmux - show pins muxing"
1110 default y if PINCTRL
1111 help
1112 Parse all available pin-controllers and show pins muxing. This
1113 is useful for debug purpoer to check the pin muxing and to know if
1114 a pin is configured as a GPIO or as an alternate function.
1115
Adam Ford577c40a2018-09-09 07:05:57 -05001116config CMD_POWEROFF
1117 bool "poweroff"
1118 help
1119 Poweroff/Shutdown the system
1120
Simon Glassb75dfd22017-08-04 16:34:39 -06001121config CMD_READ
1122 bool "read - Read binary data from a partition"
1123 help
1124 Provides low-level access to the data in a partition.
1125
Simon Glass72a8cf82016-01-17 20:53:51 -07001126config CMD_REMOTEPROC
1127 bool "remoteproc"
1128 depends on REMOTEPROC
1129 help
1130 Support for Remote Processor control
1131
Simon Glass3bf926c2017-06-14 21:28:24 -06001132config CMD_SATA
1133 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -06001134 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -06001135 help
1136 SATA (Serial Advanced Technology Attachment) is a serial bus
1137 standard for connecting to hard drives and other storage devices.
1138 This command provides information about attached devices and allows
1139 reading, writing and other operations.
1140
1141 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1142 Attachment, where AT refers to an IBM AT (Advanced Technology)
1143 computer released in 1984.
1144
Simon Glass15dc63d2017-08-04 16:34:43 -06001145config CMD_SAVES
1146 bool "saves - Save a file over serial in S-Record format"
1147 help
1148 Provides a way to save a binary file using the Motorola S-Record
1149 format over the serial line.
1150
Heinrich Schuchardt0c3fecd2018-02-14 08:05:44 +01001151config CMD_SCSI
1152 bool "scsi - Access to SCSI devices"
1153 default y if SCSI
1154 help
1155 This provides a 'scsi' command which provides access to SCSI (Small
1156 Computer System Interface) devices. The command provides a way to
1157 scan the bus, reset the bus, read and write data and get information
1158 about devices.
1159
Simon Glassefce2442017-08-04 16:34:45 -06001160config CMD_SDRAM
1161 bool "sdram - Print SDRAM configuration information"
1162 help
1163 Provides information about attached SDRAM. This assumed that the
1164 SDRAM has an EEPROM with information that can be read using the
1165 I2C bus. This is only available on some boards.
1166
Simon Glass0c19b4d2017-08-04 16:34:28 -06001167config CMD_SF
1168 bool "sf"
Tom Rinia4298dd2019-05-29 17:01:28 -04001169 depends on DM_SPI_FLASH || SPI_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001170 help
1171 SPI Flash support
1172
Simon Glass719d36e2017-08-04 16:34:46 -06001173config CMD_SF_TEST
1174 bool "sf test - Allow testing of SPI flash"
Tom Rinia4298dd2019-05-29 17:01:28 -04001175 depends on CMD_SF
Simon Glass719d36e2017-08-04 16:34:46 -06001176 help
1177 Provides a way to test that SPI flash is working correctly. The
1178 test is destructive, in that an area of SPI flash must be provided
1179 for the test to use. Performance information is also provided,
1180 measuring the performance of reading, writing and erasing in
1181 Mbps (Million Bits Per Second). This value should approximately
1182 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1183 everything is working properly.
1184
Simon Glass0c19b4d2017-08-04 16:34:28 -06001185config CMD_SPI
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001186 bool "sspi - Command to access spi device"
Tom Rinia4298dd2019-05-29 17:01:28 -04001187 depends on SPI
Simon Glass0c19b4d2017-08-04 16:34:28 -06001188 help
1189 SPI utility command.
1190
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001191config DEFAULT_SPI_BUS
1192 int "default spi bus used by sspi command"
1193 depends on CMD_SPI
1194 default 0
1195
1196config DEFAULT_SPI_MODE
1197 hex "default spi mode used by sspi command (see include/spi.h)"
1198 depends on CMD_SPI
1199 default 0
1200
Simon Glass5605aa82017-08-04 16:35:00 -06001201config CMD_TSI148
1202 bool "tsi148 - Command to access tsi148 device"
1203 help
1204 This provides various sub-commands to initialise and configure the
1205 Turndra tsi148 device. See the command help for full details.
1206
Simon Glass2a242e32017-08-04 16:35:01 -06001207config CMD_UNIVERSE
1208 bool "universe - Command to set up the Turndra Universe controller"
1209 help
1210 This allows setting up the VMEbus provided by this controller.
1211 See the command help for full details.
1212
Simon Glass0c19b4d2017-08-04 16:34:28 -06001213config CMD_USB
1214 bool "usb"
Adam Ford1811a922018-02-06 12:43:56 -06001215 select HAVE_BLOCK_DEVICE
Simon Glass0c19b4d2017-08-04 16:34:28 -06001216 help
1217 USB support.
1218
Stefan Agner2f005692017-08-16 11:00:53 -07001219config CMD_USB_SDP
1220 bool "sdp"
1221 select USB_FUNCTION_SDP
1222 help
1223 Enables the command "sdp" which is used to have U-Boot emulating the
1224 Serial Download Protocol (SDP) via USB.
Michal Simek6e7bdde2018-07-23 15:55:12 +02001225
Eddie Cai453c95e2017-12-15 08:17:11 +08001226config CMD_ROCKUSB
1227 bool "rockusb"
1228 depends on USB_FUNCTION_ROCKUSB
1229 help
Michal Simek6e7bdde2018-07-23 15:55:12 +02001230 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai453c95e2017-12-15 08:17:11 +08001231 read/write info, image to/from devices. This enable rockusb command
1232 support to communication with rockusb device. for more detail about
1233 this command, please read doc/README.rockusb.
Stefan Agner2f005692017-08-16 11:00:53 -07001234
Simon Glass0c19b4d2017-08-04 16:34:28 -06001235config CMD_USB_MASS_STORAGE
1236 bool "UMS usb mass storage"
Lukasz Majewskie4d46042018-01-29 19:28:02 +01001237 select USB_FUNCTION_MASS_STORAGE
Simon Glass0c19b4d2017-08-04 16:34:28 -06001238 help
1239 USB mass storage support
1240
Tuomas Tynkkynen78e12902018-10-15 02:21:12 -07001241config CMD_VIRTIO
1242 bool "virtio"
1243 depends on VIRTIO
1244 default y if VIRTIO
1245 help
1246 VirtIO block device support
1247
Michael Walle82a00be2019-04-06 02:24:02 +02001248config CMD_WDT
1249 bool "wdt"
1250 depends on WDT
1251 help
1252 This provides commands to control the watchdog timer devices.
1253
Mario Six37c4a5f2018-08-09 14:51:21 +02001254config CMD_AXI
1255 bool "axi"
1256 depends on AXI
1257 help
1258 Enable the command "axi" for accessing AXI (Advanced eXtensible
1259 Interface) busses, a on-chip interconnect specification for managing
1260 functional blocks in SoC designs, which is also often used in designs
1261 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass72a8cf82016-01-17 20:53:51 -07001262endmenu
1263
1264
1265menu "Shell scripting commands"
1266
1267config CMD_ECHO
1268 bool "echo"
1269 default y
1270 help
1271 Echo args to console
1272
1273config CMD_ITEST
1274 bool "itest"
1275 default y
1276 help
1277 Return true/false on integer compare.
1278
1279config CMD_SOURCE
1280 bool "source"
1281 default y
1282 help
1283 Run script from memory
1284
1285config CMD_SETEXPR
1286 bool "setexpr"
1287 default y
1288 help
1289 Evaluate boolean and math expressions and store the result in an env
1290 variable.
1291 Also supports loading the value at a memory location into a variable.
1292 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1293
1294endmenu
1295
Ruslan Trofymenko17030c72019-07-05 15:37:33 +03001296menu "Android support commands"
1297
1298config CMD_AB_SELECT
1299 bool "ab_select"
1300 default n
1301 depends on ANDROID_AB
1302 help
1303 On Android devices with more than one boot slot (multiple copies of
1304 the kernel and system images) this provides a command to select which
1305 slot should be used to boot from and register the boot attempt. This
1306 is used by the new A/B update model where one slot is updated in the
1307 background while running from the other slot.
1308
1309endmenu
1310
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001311if NET
1312
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001313menuconfig CMD_NET
1314 bool "Network commands"
1315 default y
Adam Fordd7869b22018-07-20 23:03:57 -05001316 imply NETDEVICES
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001317
1318if CMD_NET
1319
1320config CMD_BOOTP
1321 bool "bootp"
Simon Glass72a8cf82016-01-17 20:53:51 -07001322 default y
1323 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001324 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001325
Joe Hershbergere88b2562018-04-13 15:26:33 -05001326config CMD_DHCP
1327 bool "dhcp"
1328 depends on CMD_BOOTP
1329 help
1330 Boot image via network using DHCP/TFTP protocol
1331
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001332config BOOTP_BOOTPATH
Joe Hershberger8df69d92018-04-13 15:26:34 -05001333 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001334 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001335 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001336 help
1337 Even though the config is called BOOTP_BOOTPATH, it stores the
1338 path in the variable 'rootpath'.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001339
1340config BOOTP_DNS
Joe Hershberger8df69d92018-04-13 15:26:34 -05001341 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001342 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001343 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001344 help
1345 The primary DNS server is stored as 'dnsip'. If two servers are
1346 returned, you must set BOOTP_DNS2 to store that second server IP
1347 also.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001348
Joe Hershberger80449c02018-04-13 15:26:35 -05001349config BOOTP_DNS2
1350 bool "Store 'dnsip2' from BOOTP/DHCP server"
1351 depends on BOOTP_DNS
1352 help
1353 If a DHCP client requests the DNS server IP from a DHCP server,
1354 it is possible that more than one DNS serverip is offered to the
1355 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1356 server IP will be stored in the additional environment
1357 variable "dnsip2". The first DNS serverip is always
1358 stored in the variable "dnsip", when BOOTP_DNS is defined.
1359
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001360config BOOTP_GATEWAY
Joe Hershberger8df69d92018-04-13 15:26:34 -05001361 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001362 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001363 depends on CMD_BOOTP
1364
1365config BOOTP_HOSTNAME
Joe Hershberger8df69d92018-04-13 15:26:34 -05001366 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001367 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001368 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001369 help
1370 The name may or may not be qualified with the local domain name.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001371
Alexander Grafbdce3402018-06-15 10:29:28 +02001372config BOOTP_PREFER_SERVERIP
1373 bool "serverip variable takes precedent over DHCP server IP."
1374 depends on CMD_BOOTP
1375 help
1376 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1377
1378 With this option enabled, the 'serverip' variable in the environment
1379 takes precedence over DHCP server IP and will only be set by the DHCP
1380 server if not already set in the environment.
1381
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001382config BOOTP_SUBNETMASK
Joe Hershberger8df69d92018-04-13 15:26:34 -05001383 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001384 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001385 depends on CMD_BOOTP
1386
Chris Packham9b23c732018-05-03 20:19:02 +12001387config BOOTP_NTPSERVER
1388 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1389 depends on CMD_BOOTP
1390
Ramon Fried3eaac632019-07-18 21:43:30 +03001391config CMD_PCAP
1392 bool "pcap capture"
1393 help
1394 Selecting this will allow capturing all Ethernet packets and store
1395 them in physical memory in a PCAP formated file,
1396 later to be analyzed by PCAP reader application (IE. WireShark).
1397
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001398config BOOTP_PXE
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001399 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001400 default y
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001401 depends on CMD_BOOTP && CMD_PXE
1402 help
1403 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001404
1405config BOOTP_PXE_CLIENTARCH
1406 hex
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001407 depends on BOOTP_PXE
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001408 default 0x16 if ARM64
1409 default 0x15 if ARM
1410 default 0 if X86
1411
1412config BOOTP_VCI_STRING
1413 string
1414 depends on CMD_BOOTP
Michal Simek4bbd6b12018-04-26 18:21:29 +05301415 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001416 default "U-Boot.armv8" if ARM64
1417 default "U-Boot.arm" if ARM
1418 default "U-Boot"
1419
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001420config CMD_TFTPBOOT
1421 bool "tftpboot"
1422 default y
1423 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001424 tftpboot - boot image via network using TFTP protocol
1425
1426config CMD_TFTPPUT
1427 bool "tftp put"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001428 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001429 help
1430 TFTP put command, for uploading files to a server
1431
1432config CMD_TFTPSRV
1433 bool "tftpsrv"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001434 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001435 help
1436 Act as a TFTP server and boot the first received file
1437
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001438config NET_TFTP_VARS
1439 bool "Control TFTP timeout and count through environment"
1440 depends on CMD_TFTPBOOT
1441 default y
1442 help
1443 If set, allows controlling the TFTP timeout through the
1444 environment variable tftptimeout, and the TFTP maximum
1445 timeout count through the variable tftptimeoutcountmax.
1446 If unset, timeout and maximum are hard-defined as 1 second
1447 and 10 timouts per TFTP transfer.
1448
Simon Glass72a8cf82016-01-17 20:53:51 -07001449config CMD_RARP
1450 bool "rarpboot"
1451 help
1452 Boot image via network using RARP/TFTP protocol
1453
Simon Glass72a8cf82016-01-17 20:53:51 -07001454config CMD_NFS
1455 bool "nfs"
1456 default y
1457 help
1458 Boot image via network using NFS protocol.
1459
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001460config CMD_MII
1461 bool "mii"
1462 help
1463 Enable MII utility commands.
1464
Simon Glass72a8cf82016-01-17 20:53:51 -07001465config CMD_PING
1466 bool "ping"
1467 help
1468 Send ICMP ECHO_REQUEST to network host
1469
1470config CMD_CDP
1471 bool "cdp"
1472 help
1473 Perform CDP network configuration
1474
1475config CMD_SNTP
1476 bool "sntp"
1477 help
1478 Synchronize RTC via network
1479
1480config CMD_DNS
1481 bool "dns"
1482 help
1483 Lookup the IP of a hostname
1484
1485config CMD_LINK_LOCAL
1486 bool "linklocal"
Joe Hershberger6f0dc0c2018-04-30 12:45:22 -05001487 select LIB_RAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001488 help
1489 Acquire a network IP address using the link-local protocol
1490
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001491endif
1492
Simon Glassef072202017-05-17 03:25:17 -06001493config CMD_ETHSW
1494 bool "ethsw"
1495 help
1496 Allow control of L2 Ethernet switch commands. These are supported
1497 by the vsc9953 Ethernet driver at present. Sub-commands allow
1498 operations such as enabling / disabling a port and
1499 viewing/maintaining the filtering database (FDB)
1500
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001501config CMD_PXE
1502 bool "pxe"
1503 select MENU
1504 help
1505 Boot image via network using PXE protocol
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001506
Lothar Feltend8970da2018-06-22 22:29:54 +02001507config CMD_WOL
1508 bool "wol"
1509 help
1510 Wait for wake-on-lan Magic Packet
1511
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001512endif
Simon Glass72a8cf82016-01-17 20:53:51 -07001513
1514menu "Misc commands"
1515
Simon Glass0f710252017-04-26 22:27:55 -06001516config CMD_BMP
1517 bool "Enable 'bmp' command"
1518 depends on LCD || DM_VIDEO || VIDEO
1519 help
Andrius Å tikonas60a9aeb2019-09-23 22:43:41 +01001520 This provides a way to obtain information about a BMP-format image
Simon Glass0f710252017-04-26 22:27:55 -06001521 and to display it. BMP (which presumably stands for BitMaP) is a
1522 file format defined by Microsoft which supports images of various
1523 depths, formats and compression methods. Headers on the file
1524 determine the formats used. This command can be used by first loading
1525 the image into RAM, then using this command to look at it or display
1526 it.
1527
Alex Kiernanb11ed7d2018-05-12 05:49:47 +00001528config CMD_BOOTCOUNT
1529 bool "bootcount"
1530 depends on BOOTCOUNT_LIMIT
1531 help
1532 Enable the bootcount command, which allows interrogation and
1533 reset of the bootcounter.
1534
Simon Glass4893e342017-04-26 22:27:56 -06001535config CMD_BSP
1536 bool "Enable board-specific commands"
1537 help
1538 (deprecated: instead, please define a Kconfig option for each command)
1539
1540 Some boards have board-specific commands which are only enabled
1541 during developemnt and need to be turned off for production. This
1542 option provides a way to control this. The commands that are enabled
1543 vary depending on the board.
1544
Tomas Melincd3d4882016-11-25 11:01:03 +02001545config CMD_BKOPS_ENABLE
1546 bool "mmc bkops enable"
1547 depends on CMD_MMC
1548 default n
1549 help
1550 Enable command for setting manual background operations handshake
1551 on a eMMC device. The feature is optionally available on eMMC devices
1552 conforming to standard >= 4.41.
1553
Eric Nelsone40cf342016-03-28 10:05:44 -07001554config CMD_BLOCK_CACHE
1555 bool "blkcache - control and stats for block cache"
1556 depends on BLOCK_CACHE
1557 default y if BLOCK_CACHE
1558 help
1559 Enable the blkcache command, which can be used to control the
1560 operation of the cache functions.
1561 This is most useful when fine-tuning the operation of the cache
1562 during development, but also allows the cache to be disabled when
1563 it might hurt performance (e.g. when using the ums command).
1564
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001565config CMD_CACHE
1566 bool "icache or dcache"
1567 help
1568 Enable the "icache" and "dcache" commands
1569
Heinrich Schuchardt29cfc092018-09-07 19:43:11 +02001570config CMD_CONITRACE
1571 bool "conitrace - trace console input codes"
1572 help
1573 Enable the 'conitrace' command which displays the codes received
1574 from the console input as hexadecimal numbers.
1575
Anatolij Gustschin4e92e602018-12-01 10:47:20 +01001576config CMD_CLS
1577 bool "Enable clear screen command 'cls'"
1578 depends on CFB_CONSOLE || DM_VIDEO || LCD || VIDEO
1579 default y if LCD
1580 help
1581 Enable the 'cls' command which clears the screen contents
1582 on video frame buffer.
1583
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09001584config CMD_EFIDEBUG
1585 bool "efidebug - display/configure UEFI environment"
1586 depends on EFI_LOADER
Heinrich Schuchardt64b5ba42019-05-11 09:53:33 +02001587 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09001588 default n
1589 help
1590 Enable the 'efidebug' command which provides a subset of UEFI
1591 shell utility with simplified functionality. It will be useful
1592 particularly for managing boot parameters as well as examining
1593 various EFI status for debugging.
1594
Heinrich Schuchardtdab87882018-12-26 17:20:35 +01001595config CMD_EXCEPTION
1596 bool "exception - raise exception"
1597 depends on ARM || RISCV || X86
1598 help
1599 Enable the 'exception' command which allows to raise an exception.
1600
Simon Glassffe20522017-04-10 11:34:59 -06001601config CMD_LED
1602 bool "led"
Jan Kiszka2ab6e742019-01-03 09:08:42 +01001603 depends on LED
Simon Glassffe20522017-04-10 11:34:59 -06001604 default y if LED
1605 help
1606 Enable the 'led' command which allows for control of LEDs supported
1607 by the board. The LEDs can be listed with 'led list' and controlled
1608 with led on/off/togle/blink. Any LED drivers can be controlled with
1609 this command, e.g. led_gpio.
1610
Chris Packhamc9032ce2017-04-29 15:20:28 +12001611config CMD_DATE
1612 bool "date"
1613 default y if DM_RTC
1614 help
1615 Enable the 'date' command for getting/setting the time/date in RTC
1616 devices.
1617
Simon Glass72a8cf82016-01-17 20:53:51 -07001618config CMD_TIME
1619 bool "time"
1620 help
1621 Run commands and summarize execution time.
1622
Simon Glassd91a9d72017-05-17 03:25:23 -06001623config CMD_GETTIME
1624 bool "gettime - read elapsed time"
1625 help
1626 Enable the 'gettime' command which reads the elapsed time since
1627 U-Boot started running. This shows the time in seconds and
1628 milliseconds. See also the 'bootstage' command which provides more
1629 flexibility for boot timing.
1630
Simon Glass72a8cf82016-01-17 20:53:51 -07001631# TODO: rename to CMD_SLEEP
1632config CMD_MISC
1633 bool "sleep"
1634 default y
1635 help
1636 Delay execution for some time
1637
Siva Durga Prasad Paladugu0fd2290c2018-06-19 12:24:23 +02001638config MP
1639 bool "support for multiprocessor"
1640 help
1641 This provides an option to brinup
1642 different processors in multiprocessor
1643 cases.
1644
Simon Glass72a8cf82016-01-17 20:53:51 -07001645config CMD_TIMER
1646 bool "timer"
1647 help
1648 Access the system timer.
1649
Simon Glass72a8cf82016-01-17 20:53:51 -07001650config CMD_SOUND
1651 bool "sound"
1652 depends on SOUND
1653 help
1654 This provides basic access to the U-Boot's sound support. The main
1655 feature is to play a beep.
1656
1657 sound init - set up sound system
1658 sound play - play a sound
1659
Miao Yan18686592016-05-22 19:37:17 -07001660config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001661 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -07001662 select QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001663 help
1664 This provides access to the QEMU firmware interface. The main
1665 feature is to allow easy loading of files passed to qemu-system
1666 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02001667
1668source "cmd/mvebu/Kconfig"
1669
Simon Glass3cef3b32017-08-04 16:34:55 -06001670config CMD_TERMINAL
1671 bool "terminal - provides a way to attach a serial terminal"
1672 help
1673 Provides a 'cu'-like serial terminal command. This can be used to
1674 access other serial ports from the system console. The terminal
1675 is very simple with no special processing of characters. As with
1676 cu, you can press ~. (tilde followed by period) to exit.
1677
Simon Glass1aa4e8d2017-08-04 16:35:02 -06001678config CMD_UUID
1679 bool "uuid, guid - generation of unique IDs"
Adam Forda451bc22018-02-06 12:14:28 -06001680 select LIB_UUID
Simon Glass1aa4e8d2017-08-04 16:35:02 -06001681 help
1682 This enables two commands:
1683
1684 uuid - generate random Universally Unique Identifier
1685 guid - generate Globally Unique Identifier based on random UUID
1686
1687 The two commands are very similar except for the endianness of the
1688 output.
1689
Simon Glass72a8cf82016-01-17 20:53:51 -07001690endmenu
1691
Lokesh Vutla5cd96612017-12-29 11:47:49 +05301692source "cmd/ti/Kconfig"
1693
Simon Glass72a8cf82016-01-17 20:53:51 -07001694config CMD_BOOTSTAGE
1695 bool "Enable the 'bootstage' command"
1696 depends on BOOTSTAGE
1697 help
1698 Add a 'bootstage' command which supports printing a report
1699 and un/stashing of bootstage data.
1700
1701menu "Power commands"
1702config CMD_PMIC
1703 bool "Enable Driver Model PMIC command"
1704 depends on DM_PMIC
1705 help
1706 This is the pmic command, based on a driver model pmic's API.
1707 Command features are unchanged:
1708 - list - list pmic devices
1709 - pmic dev <id> - show or [set] operating pmic device (NEW)
1710 - pmic dump - dump registers
1711 - pmic read address - read byte of register at address
1712 - pmic write address - write byte to register at address
1713 The only one change for this command is 'dev' subcommand.
1714
1715config CMD_REGULATOR
1716 bool "Enable Driver Model REGULATOR command"
1717 depends on DM_REGULATOR
1718 help
1719 This command is based on driver model regulator's API.
1720 User interface features:
1721 - list - list regulator devices
1722 - regulator dev <id> - show or [set] operating regulator device
1723 - regulator info - print constraints info
1724 - regulator status - print operating status
1725 - regulator value <val] <-f> - print/[set] voltage value [uV]
1726 - regulator current <val> - print/[set] current value [uA]
1727 - regulator mode <id> - print/[set] operating mode id
1728 - regulator enable - enable the regulator output
1729 - regulator disable - disable the regulator output
1730
1731 The '-f' (force) option can be used for set the value which exceeds
1732 the limits, which are found in device-tree and are kept in regulator's
1733 uclass platdata structure.
1734
1735endmenu
1736
1737menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06001738config CMD_AES
1739 bool "Enable the 'aes' command"
1740 select AES
1741 help
1742 This provides a means to encrypt and decrypt data using the AES
1743 (Advanced Encryption Standard). This algorithm uses a symetric key
1744 and is widely used as a streaming cipher. Different key lengths are
1745 supported by the algorithm but this command only supports 128 bits
1746 at present.
1747
Simon Glassc04b9b32017-04-26 22:27:53 -06001748config CMD_BLOB
1749 bool "Enable the 'blob' command"
1750 help
1751 This is used with the Freescale secure boot mechanism.
1752
1753 Freescale's SEC block has built-in Blob Protocol which provides
1754 a method for protecting user-defined data across system power
1755 cycles. SEC block protects data in a data structure called a Blob,
1756 which provides both confidentiality and integrity protection.
1757
1758 Encapsulating data as a blob
1759 Each time that the Blob Protocol is used to protect data, a
1760 different randomly generated key is used to encrypt the data.
1761 This random key is itself encrypted using a key which is derived
1762 from SoC's non-volatile secret key and a 16 bit Key identifier.
1763 The resulting encrypted key along with encrypted data is called a
1764 blob. The non-volatile secure key is available for use only during
1765 secure boot.
1766
1767 During decapsulation, the reverse process is performed to get back
1768 the original data.
1769
1770 Sub-commands:
Michal Simek6e7bdde2018-07-23 15:55:12 +02001771 blob enc - encapsulating data as a cryptgraphic blob
Simon Glassc04b9b32017-04-26 22:27:53 -06001772 blob dec - decapsulating cryptgraphic blob to get the data
1773
1774 Syntax:
1775
1776 blob enc src dst len km
1777
1778 Encapsulate and create blob of data $len bytes long
1779 at address $src and store the result at address $dst.
1780 $km is the 16 byte key modifier is also required for
1781 generation/use as key for cryptographic operation. Key
1782 modifier should be 16 byte long.
1783
1784 blob dec src dst len km
1785
1786 Decapsulate the blob of data at address $src and
1787 store result of $len byte at addr $dst.
1788 $km is the 16 byte key modifier is also required for
1789 generation/use as key for cryptographic operation. Key
1790 modifier should be 16 byte long.
1791
Simon Glass551c3932017-05-17 03:25:25 -06001792config CMD_HASH
1793 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06001794 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06001795 help
1796 This provides a way to hash data in memory using various supported
1797 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1798 saved to memory or to an environment variable. It is also possible
1799 to verify a hash against data in memory.
1800
Michalis Pappas666028f2018-04-13 10:40:57 +03001801config CMD_HVC
1802 bool "Support the 'hvc' command"
1803 depends on ARM_SMCCC
1804 help
1805 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
1806 development and testing.
1807
1808config CMD_SMC
1809 bool "Support the 'smc' command"
1810 depends on ARM_SMCCC
1811 help
1812 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
1813 development and testing.
1814
Daniel Thompson221a9492017-05-19 17:26:58 +01001815config HASH_VERIFY
1816 bool "hash -v"
1817 depends on CMD_HASH
1818 help
1819 Add -v option to verify data against a hash.
1820
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001821config CMD_TPM_V1
1822 bool
1823
1824config CMD_TPM_V2
1825 bool
Tom Rini3a8c8bf2018-07-28 09:20:12 -04001826 select CMD_LOG
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001827
Simon Glass72a8cf82016-01-17 20:53:51 -07001828config CMD_TPM
1829 bool "Enable the 'tpm' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001830 depends on TPM_V1 || TPM_V2
1831 select CMD_TPM_V1 if TPM_V1
1832 select CMD_TPM_V2 if TPM_V2
Simon Glass72a8cf82016-01-17 20:53:51 -07001833 help
1834 This provides a means to talk to a TPM from the command line. A wide
1835 range of commands if provided - see 'tpm help' for details. The
1836 command requires a suitable TPM on your board and the correct driver
1837 must be enabled.
1838
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001839if CMD_TPM
1840
Simon Glass72a8cf82016-01-17 20:53:51 -07001841config CMD_TPM_TEST
1842 bool "Enable the 'tpm test' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001843 depends on TPM_V1
Simon Glass72a8cf82016-01-17 20:53:51 -07001844 help
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001845 This provides a a series of tests to confirm that the TPMv1.x is
1846 working correctly. The tests cover initialisation, non-volatile RAM,
1847 extend, global lock and checking that timing is within expectations.
1848 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass72a8cf82016-01-17 20:53:51 -07001849 for other devices.
1850
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001851endif
1852
Simon Glass72a8cf82016-01-17 20:53:51 -07001853endmenu
1854
Moritz Fischerbfeba012016-10-04 17:08:08 -07001855menu "Firmware commands"
1856config CMD_CROS_EC
1857 bool "Enable crosec command"
1858 depends on CROS_EC
1859 default y
1860 help
1861 Enable command-line access to the Chrome OS EC (Embedded
1862 Controller). This provides the 'crosec' command which has
1863 a number of sub-commands for performing EC tasks such as
1864 updating its flash, accessing a small saved context area
1865 and talking to the I2C bus behind the EC (if there is one).
1866endmenu
1867
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001868menu "Filesystem commands"
Marek Behún9d845502017-09-03 17:00:30 +02001869config CMD_BTRFS
1870 bool "Enable the 'btrsubvol' command"
1871 select FS_BTRFS
1872 help
1873 This enables the 'btrsubvol' command to list subvolumes
1874 of a BTRFS filesystem. There are no special commands for
1875 listing BTRFS directories or loading BTRFS files - this
1876 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
1877 when BTRFS is enabled (see FS_BTRFS).
1878
Simon Glassd66a10f2017-04-26 22:27:58 -06001879config CMD_CBFS
1880 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06001881 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06001882 help
1883 Define this to enable support for reading from a Coreboot
1884 filesystem. This is a ROM-based filesystem used for accessing files
1885 on systems that use coreboot as the first boot-loader and then load
1886 U-Boot to actually boot the Operating System. Available commands are
1887 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1888
Simon Glass97072742017-04-26 22:28:03 -06001889config CMD_CRAMFS
1890 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06001891 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06001892 help
1893 This provides commands for dealing with CRAMFS (Compressed ROM
1894 filesystem). CRAMFS is useful when space is tight since files are
1895 compressed. Two commands are provided:
1896
1897 cramfsls - lists files in a cramfs image
1898 cramfsload - loads a file from a cramfs image
1899
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001900config CMD_EXT2
1901 bool "ext2 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001902 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001903 help
1904 Enables EXT2 FS command
1905
1906config CMD_EXT4
1907 bool "ext4 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001908 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001909 help
1910 Enables EXT4 FS command
1911
1912config CMD_EXT4_WRITE
1913 depends on CMD_EXT4
1914 bool "ext4 write command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001915 select EXT4_WRITE
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001916 help
1917 Enables EXT4 FS write command
1918
1919config CMD_FAT
1920 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05301921 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001922 help
1923 Support for the FAT fs
1924
1925config CMD_FS_GENERIC
1926 bool "filesystem commands"
1927 help
1928 Enables filesystem commands (e.g. load, ls) that work for multiple
1929 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001930
Josua Mayerefbe99c2017-04-24 10:10:45 +02001931config CMD_FS_UUID
1932 bool "fsuuid command"
1933 help
1934 Enables fsuuid command for filesystem UUID.
1935
Simon Glassb8682a72017-05-17 03:25:37 -06001936config CMD_JFFS2
1937 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06001938 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06001939 help
1940 Enables commands to support the JFFS2 (Journalling Flash File System
1941 version 2) filesystem. This enables fsload, ls and fsinfo which
1942 provide the ability to load files, list directories and obtain
1943 filesystem information.
1944
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001945config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001946 bool "MTD partition support"
Adam Ford9c5b0092018-07-07 22:18:22 -05001947 select MTD_DEVICE if (CMD_NAND || NAND)
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001948 help
Miquel Raynal938db6f2018-09-29 12:58:30 +02001949 MTD partitioning tool support.
1950 It is strongly encouraged to avoid using this command
1951 anymore along with 'sf', 'nand', 'onenand'. One can still
1952 declare the partitions in the mtdparts environment variable
1953 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001954
1955config MTDIDS_DEFAULT
1956 string "Default MTD IDs"
Boris Brezillon03303fb2018-11-13 12:43:11 +01001957 depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001958 help
Tom Rini43ede0b2017-10-22 17:55:07 -04001959 Defines a default MTD IDs list for use with MTD partitions in the
1960 Linux MTD command line partitions format.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001961
1962config MTDPARTS_DEFAULT
1963 string "Default MTD partition scheme"
Boris Brezillon03303fb2018-11-13 12:43:11 +01001964 depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001965 help
1966 Defines a default MTD partitioning scheme in the Linux MTD command
1967 line partitions format
1968
Simon Glasscb70e6c2017-08-04 16:34:30 -06001969config CMD_MTDPARTS_SPREAD
1970 bool "Padd partition size to take account of bad blocks"
1971 depends on CMD_MTDPARTS
1972 help
1973 This enables the 'spread' sub-command of the mtdparts command.
1974 This command will modify the existing mtdparts variable by increasing
1975 the size of the partitions such that 1) each partition's net size is
1976 at least as large as the size specified in the mtdparts variable and
1977 2) each partition starts on a good block.
1978
Simon Glassf8803a92017-08-04 16:34:41 -06001979config CMD_REISER
1980 bool "reiser - Access to reiserfs filesystems"
1981 help
1982 This provides two commands which operate on a resierfs filesystem,
1983 commonly used some years ago:
1984
1985 reiserls - list files
1986 reiserload - load a file
1987
Simon Glass7a764312017-08-04 16:34:58 -06001988config CMD_YAFFS2
1989 bool "yaffs2 - Access of YAFFS2 filesystem"
1990 depends on YAFFS2
1991 default y
1992 help
1993 This provides commands for accessing a YAFFS2 filesystem. Yet
1994 Another Flash Filesystem 2 is a filesystem designed specifically
1995 for NAND flash. It incorporates bad-block management and ensures
1996 that device writes are sequential regardless of filesystem
1997 activity.
1998
Simon Glass54feea12017-08-04 16:35:04 -06001999config CMD_ZFS
2000 bool "zfs - Access of ZFS filesystem"
2001 help
2002 This provides commands to accessing a ZFS filesystem, commonly used
2003 on Solaris systems. Two sub-commands are provided:
2004
2005 zfsls - list files in a directory
2006 zfsload - load a file
2007
2008 See doc/README.zfs for more details.
2009
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002010endmenu
2011
Simon Glassac20a1b2017-04-26 22:27:52 -06002012menu "Debug commands"
2013
2014config CMD_BEDBUG
2015 bool "bedbug"
2016 help
2017 The bedbug (emBEDded deBUGger) command provides debugging features
2018 for some PowerPC processors. For details please see the
2019 docuemntation in doc/README.beddbug
2020
Simon Glass3bd25cb2017-04-26 22:28:08 -06002021config CMD_DIAG
2022 bool "diag - Board diagnostics"
2023 help
2024 This command provides access to board diagnostic tests. These are
2025 called Power-on Self Tests (POST). The command allows listing of
2026 available tests and running either all the tests, or specific tests
2027 identified by name.
2028
Simon Glass1b330892017-05-17 03:25:39 -06002029config CMD_IRQ
2030 bool "irq - Show information about interrupts"
Heiko Schocher064b55c2017-06-14 05:49:40 +02002031 depends on !ARM && !MIPS && !SH
Simon Glass1b330892017-05-17 03:25:39 -06002032 help
2033 This enables two commands:
2034
2035 interrupts - enable or disable interrupts
2036 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06002037
2038config CMD_KGDB
2039 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simekb9205502018-10-04 14:26:13 +02002040 depends on PPC
Simon Glass6bac2272017-05-17 03:25:40 -06002041 help
2042 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2043 over a serial link for debugging purposes. This allows
2044 single-stepping, inspecting variables, etc. This is supported only
2045 on PowerPC at present.
2046
Simon Glassd5f61f22017-12-04 13:48:26 -07002047config CMD_LOG
2048 bool "log - Generation, control and access to logging"
Heinrich Schuchardt83a1f932018-04-19 22:02:46 +02002049 select LOG
Simon Glassd5f61f22017-12-04 13:48:26 -07002050 help
2051 This provides access to logging features. It allows the output of
2052 log data to be controlled to a limited extent (setting up the default
Simon Glassef11ed82017-12-04 13:48:27 -07002053 maximum log level for emitting of records). It also provides access
2054 to a command used for testing the log system.
Simon Glassd5f61f22017-12-04 13:48:26 -07002055
Simon Glassce058ae2017-08-04 16:34:59 -06002056config CMD_TRACE
2057 bool "trace - Support tracing of function calls and timing"
2058 help
2059 Enables a command to control using of function tracing within
2060 U-Boot. This allows recording of call traces including timing
2061 information. The command can write data to memory for exporting
Simon Glassa24a78d2019-04-08 13:20:51 -06002062 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glassce058ae2017-08-04 16:34:59 -06002063 details.
2064
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002065config CMD_AVB
2066 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniukb0aa74a2018-07-17 14:33:25 +03002067 depends on AVB_VERIFY
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002068 default n
2069 help
2070 Enables a "avb" command to perform verification of partitions using
2071 Android Verified Boot 2.0 functionality. It includes such subcommands:
2072 avb init - initialize avb2 subsystem
2073 avb read_rb - read rollback index
2074 avb write_rb - write rollback index
2075 avb is_unlocked - check device lock state
2076 avb get_uuid - read and print uuid of a partition
2077 avb read_part - read data from partition
2078 avb read_part_hex - read data from partition and output to stdout
2079 avb write_part - write data to partition
2080 avb verify - run full verification chain
Simon Glassac20a1b2017-04-26 22:27:52 -06002081endmenu
2082
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002083config CMD_UBI
2084 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002085 select MTD_UBI
2086 help
2087 UBI is a software layer above MTD layer which admits use of LVM-like
2088 logical volumes on top of MTD devices, hides some complexities of
2089 flash chips like wear and bad blocks and provides some other useful
2090 capabilities. Please, consult the MTD web site for more details
2091 (www.linux-mtd.infradead.org). Activate this option if you want
2092 to use U-Boot UBI commands.
Miquel Raynalc58fb2c2018-09-29 12:58:29 +02002093 It is also strongly encouraged to also enable CONFIG_MTD to get full
2094 partition support.
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002095
Boris Brezillon173aafb2017-02-27 18:22:06 +01002096config CMD_UBIFS
2097 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01002098 depends on CMD_UBI
Michal Simek5ed063d2018-07-23 15:55:13 +02002099 default y if CMD_UBI
Karl Beldan24fc9532017-07-12 16:11:47 +00002100 select LZO
Boris Brezillon173aafb2017-02-27 18:22:06 +01002101 help
2102 UBIFS is a file system for flash devices which works on top of UBI.
2103
Simon Glass72a8cf82016-01-17 20:53:51 -07002104endmenu