blob: 6403bc45a5ef790726deff449330236f32c7e25f [file] [log] [blame]
Simon Glass29499a02016-01-17 20:53:51 -07001menu "Command line interface"
2
Simon Glassaa34ef22016-03-13 19:07:28 -06003config CMDLINE
4 bool "Support U-Boot commands"
5 default y
6 help
7 Enable U-Boot's command-line functions. This provides a means
8 to enter commands into U-Boot for a wide variety of purposes. It
9 also allows scripts (containing commands) to be executed.
10 Various commands and command categorys can be indivdually enabled.
11 Depending on the number of commands enabled, this can add
12 substantially to the size of U-Boot.
13
Simon Glass29499a02016-01-17 20:53:51 -070014config HUSH_PARSER
15 bool "Use hush shell"
Simon Glassaa34ef22016-03-13 19:07:28 -060016 depends on CMDLINE
Simon Glass29499a02016-01-17 20:53:51 -070017 help
18 This option enables the "hush" shell (from Busybox) as command line
19 interpreter, thus enabling powerful command line syntax like
20 if...then...else...fi conditionals or `&&' and '||'
21 constructs ("shell scripts").
22
23 If disabled, you get the old, much simpler behaviour with a somewhat
24 smaller memory footprint.
25
Adam Ford58dbf862018-02-06 07:58:59 -060026config CMDLINE_EDITING
27 bool "Enable command line editing"
28 depends on CMDLINE
29 default y
30 help
31 Enable editing and History functions for interactive command line
32 input operations
33
34config AUTO_COMPLETE
35 bool "Enable auto complete using TAB"
36 depends on CMDLINE
37 default y
38 help
39 Enable auto completion of commands using TAB.
40
41config SYS_LONGHELP
42 bool "Enable long help messages"
43 depends on CMDLINE
44 default y if CMDLINE
45 help
46 Defined when you want long help messages included
47 Do not set this option when short of memory.
48
Simon Glass29499a02016-01-17 20:53:51 -070049config SYS_PROMPT
50 string "Shell prompt"
Michal Simekf048cae2019-09-25 12:32:41 +020051 default "Zynq> " if ARCH_ZYNQ
Michal Simek4f107432019-09-25 12:37:15 +020052 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass29499a02016-01-17 20:53:51 -070053 default "=> "
54 help
55 This string is displayed in the command line to the left of the
56 cursor.
57
Christoph Muellner388b1452019-04-05 13:03:46 +020058config SYS_XTRACE
59 string "Command execution tracer"
60 depends on CMDLINE
61 default y if CMDLINE
62 help
63 This option enables the possiblity to print all commands before
64 executing them and after all variables are evaluated (similar
65 to Bash's xtrace/'set -x' feature).
66 To enable the tracer a variable "xtrace" needs to be defined in
67 the environment.
68
Simon Glass29499a02016-01-17 20:53:51 -070069menu "Autoboot options"
70
Masahiro Yamada622a01c2016-06-20 17:33:39 +090071config AUTOBOOT
72 bool "Autoboot"
73 default y
74 help
75 This enables the autoboot. See doc/README.autoboot for detail.
76
Simon Glass29499a02016-01-17 20:53:51 -070077config AUTOBOOT_KEYED
78 bool "Stop autobooting via specific input key / string"
79 default n
80 help
81 This option enables stopping (aborting) of the automatic
82 boot feature only by issuing a specific input key or
83 string. If not enabled, any input key will abort the
84 U-Boot automatic booting process and bring the device
85 to the U-Boot prompt for user input.
86
87config AUTOBOOT_PROMPT
88 string "Autoboot stop prompt"
89 depends on AUTOBOOT_KEYED
90 default "Autoboot in %d seconds\\n"
91 help
92 This string is displayed before the boot delay selected by
93 CONFIG_BOOTDELAY starts. If it is not defined there is no
94 output indicating that autoboot is in progress.
95
96 Note that this define is used as the (only) argument to a
97 printf() call, so it may contain '%' format specifications,
98 provided that it also includes, sepearated by commas exactly
99 like in a printf statement, the required arguments. It is
100 the responsibility of the user to select only such arguments
101 that are valid in the given context.
102
103config AUTOBOOT_ENCRYPTION
104 bool "Enable encryption in autoboot stopping"
105 depends on AUTOBOOT_KEYED
Simon Glassa8cab882019-07-20 20:51:17 -0600106 help
107 This option allows a string to be entered into U-Boot to stop the
108 autoboot. The string itself is hashed and compared against the hash
109 in the environment variable 'bootstopkeysha256'. If it matches then
110 boot stops and a command-line prompt is presented.
111
112 This provides a way to ship a secure production device which can also
113 be accessed at the U-Boot command line.
Simon Glass29499a02016-01-17 20:53:51 -0700114
115config AUTOBOOT_DELAY_STR
116 string "Delay autobooting via specific input key / string"
117 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
118 help
119 This option delays the automatic boot feature by issuing
120 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
121 or the environment variable "bootdelaykey" is specified
122 and this string is received from console input before
123 autoboot starts booting, U-Boot gives a command prompt. The
124 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
125 used, otherwise it never times out.
126
127config AUTOBOOT_STOP_STR
128 string "Stop autobooting via specific input key / string"
129 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
130 help
131 This option enables stopping (aborting) of the automatic
132 boot feature only by issuing a specific input key or
133 string. If CONFIG_AUTOBOOT_STOP_STR or the environment
134 variable "bootstopkey" is specified and this string is
135 received from console input before autoboot starts booting,
136 U-Boot gives a command prompt. The U-Boot prompt never
137 times out, even if CONFIG_BOOT_RETRY_TIME is used.
138
139config AUTOBOOT_KEYED_CTRLC
140 bool "Enable Ctrl-C autoboot interruption"
141 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
142 default n
143 help
144 This option allows for the boot sequence to be interrupted
145 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
146 Setting this variable provides an escape sequence from the
147 limited "password" strings.
148
149config AUTOBOOT_STOP_STR_SHA256
150 string "Stop autobooting via SHA256 encrypted password"
151 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
152 help
153 This option adds the feature to only stop the autobooting,
154 and therefore boot into the U-Boot prompt, when the input
155 string / password matches a values that is encypted via
156 a SHA256 hash and saved in the environment.
157
Simon Glass9e476d92019-07-20 20:51:21 -0600158config AUTOBOOT_USE_MENUKEY
159 bool "Allow a specify key to run a menu from the environment"
160 depends on !AUTOBOOT_KEYED
161 help
162 If a specific key is pressed to stop autoboot, then the commands in
163 the environment variable 'menucmd' are executed before boot starts.
164
165config AUTOBOOT_MENUKEY
166 int "ASCII value of boot key to show a menu"
167 default 0
168 depends on AUTOBOOT_USE_MENUKEY
169 help
170 If this key is pressed to stop autoboot, then the commands in the
171 environment variable 'menucmd' will be executed before boot starts.
172 For example, 33 means "!" in ASCII, so pressing ! at boot would take
173 this action.
174
Simon Glass32679ba2019-07-20 20:51:25 -0600175config AUTOBOOT_MENU_SHOW
176 bool "Show a menu on boot"
AKASHI Takahiroc4927522019-09-12 15:31:22 +0900177 depends on CMD_BOOTMENU
Simon Glass32679ba2019-07-20 20:51:25 -0600178 help
179 This enables the boot menu, controlled by environment variables
180 defined by the board. The menu starts after running the 'preboot'
181 environmnent variable (if enabled) and before handling the boot delay.
182 See README.bootmenu for more details.
183
Simon Glass29499a02016-01-17 20:53:51 -0700184endmenu
185
Sam Protsenko13c1f3a2017-09-28 12:33:45 -0700186config BUILD_BIN2C
187 bool
188
Simon Glass29499a02016-01-17 20:53:51 -0700189comment "Commands"
190
191menu "Info commands"
192
193config CMD_BDI
194 bool "bdinfo"
195 default y
196 help
197 Print board info
198
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900199config CMD_CONFIG
200 bool "config"
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900201 default SANDBOX
Michal Simek84f3dec2018-07-23 15:55:13 +0200202 select BUILD_BIN2C
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900203 help
204 Print ".config" contents.
205
206 If this option is enabled, the ".config" file contents are embedded
207 in the U-Boot image and can be printed on the console by the "config"
208 command. This provides information of which options are enabled on
209 the running U-Boot.
210
Simon Glass29499a02016-01-17 20:53:51 -0700211config CMD_CONSOLE
212 bool "coninfo"
213 default y
214 help
215 Print console devices and information.
216
217config CMD_CPU
218 bool "cpu"
219 help
220 Print information about available CPUs. This normally shows the
221 number of CPUs, type (e.g. manufacturer, architecture, product or
222 internal name) and clock frequency. Other information may be
223 available depending on the CPU driver.
224
225config CMD_LICENSE
226 bool "license"
Masahiro Yamada81680332017-01-30 11:12:08 +0900227 select BUILD_BIN2C
Simon Glass29499a02016-01-17 20:53:51 -0700228 help
229 Print GPL license text
230
Simon Glass8c501022019-12-06 21:41:54 -0700231config CMD_PMC
232 bool "pmc"
233 help
234 Provides access to the Intel Power-Management Controller (PMC) so
235 that its state can be examined. This does not currently support
236 changing the state but it is still useful for debugging and seeing
237 what is going on.
238
Christophe Leroye538bbc2017-08-04 16:34:40 -0600239config CMD_REGINFO
240 bool "reginfo"
241 depends on PPC
242 help
243 Register dump
244
Baruch Siachfad48982020-01-21 15:44:54 +0200245config CMD_TLV_EEPROM
246 bool "tlv_eeprom"
247 depends on I2C_EEPROM
248 help
249 Display and program the system EEPROM data block in ONIE Tlvinfo
250 format. TLV stands for Type-Length-Value.
251
252config SPL_CMD_TLV_EEPROM
253 bool "tlv_eeprom for SPL"
254 depends on SPL_I2C_EEPROM
255 select SPL_DRIVERS_MISC_SUPPORT
256 help
257 Read system EEPROM data block in ONIE Tlvinfo format from SPL.
258
Simon Glass29499a02016-01-17 20:53:51 -0700259endmenu
260
261menu "Boot commands"
262
263config CMD_BOOTD
264 bool "bootd"
265 default y
266 help
267 Run the command stored in the environment "bootcmd", i.e.
268 "bootd" does the same thing as "run bootcmd".
269
270config CMD_BOOTM
271 bool "bootm"
272 default y
273 help
274 Boot an application image from the memory.
275
Cristian Ciocaltea6aca5982019-12-24 18:05:39 +0200276config BOOTM_EFI
277 bool "Support booting UEFI FIT images"
278 depends on CMD_BOOTEFI && CMD_BOOTM && FIT
279 default y
280 help
281 Support booting UEFI FIT images via the bootm command.
282
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500283config CMD_BOOTZ
284 bool "bootz"
285 help
286 Boot the Linux zImage
287
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400288config CMD_BOOTI
289 bool "booti"
Atish Patra583b4092019-05-06 17:49:39 -0700290 depends on ARM64 || RISCV
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400291 default y
292 help
293 Boot an AArch64 Linux Kernel image from memory.
294
Tom Rini9a102072019-09-20 17:36:50 -0400295config BOOTM_LINUX
296 bool "Support booting Linux OS images"
297 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
298 default y
299 help
300 Support booting the Linux kernel directly via a command such as bootm
301 or booti or bootz.
302
303config BOOTM_NETBSD
304 bool "Support booting NetBSD (non-EFI) loader images"
305 depends on CMD_BOOTM
306 default y
307 help
308 Support booting NetBSD via the bootm command.
309
310config BOOTM_OPENRTOS
311 bool "Support booting OPENRTOS / FreeRTOS images"
312 depends on CMD_BOOTM
313 help
314 Support booting OPENRTOS / FreeRTOS via the bootm command.
315
316config BOOTM_OSE
317 bool "Support booting Enea OSE images"
Tom Rini1d0b1fc2019-12-05 18:46:11 -0500318 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini9a102072019-09-20 17:36:50 -0400319 depends on CMD_BOOTM
320 help
321 Support booting Enea OSE images via the bootm command.
322
323config BOOTM_PLAN9
324 bool "Support booting Plan9 OS images"
325 depends on CMD_BOOTM
326 default y
327 help
328 Support booting Plan9 images via the bootm command.
329
330config BOOTM_RTEMS
331 bool "Support booting RTEMS OS images"
332 depends on CMD_BOOTM
333 default y
334 help
335 Support booting RTEMS images via the bootm command.
336
337config BOOTM_VXWORKS
338 bool "Support booting VxWorks OS images"
339 depends on CMD_BOOTM
340 default y
341 help
342 Support booting VxWorks images via the bootm command.
343
AKASHI Takahiro8d95b6e2019-11-08 10:32:15 +0900344config CMD_BOOTEFI
345 bool "bootefi"
346 depends on EFI_LOADER
347 default y
348 help
349 Boot an EFI image from memory.
350
Alexander Grafb5483512016-11-17 22:40:10 +0100351config CMD_BOOTEFI_HELLO_COMPILE
352 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardt0f675d92019-11-07 08:05:17 +0100353 depends on CMD_BOOTEFI && !CPU_V7M
Alexander Grafb5483512016-11-17 22:40:10 +0100354 default y
355 help
356 This compiles a standard EFI hello world application with U-Boot so
357 that it can be used with the test/py testing framework. This is useful
358 for testing that EFI is working at a basic level, and for bringing
359 up EFI support on a new architecture.
360
361 No additional space will be required in the resulting U-Boot binary
362 when this option is enabled.
363
Simon Glassfac4ced2016-11-07 08:47:08 -0700364config CMD_BOOTEFI_HELLO
365 bool "Allow booting a standard EFI hello world for testing"
Alexander Grafb5483512016-11-17 22:40:10 +0100366 depends on CMD_BOOTEFI_HELLO_COMPILE
Simon Glassfac4ced2016-11-07 08:47:08 -0700367 help
368 This adds a standard EFI hello world application to U-Boot so that
369 it can be used with the 'bootefi hello' command. This is useful
370 for testing that EFI is working at a basic level, and for bringing
371 up EFI support on a new architecture.
372
Heinrich Schuchardtd33ae3e2017-09-15 10:06:11 +0200373source lib/efi_selftest/Kconfig
374
Tom Rini697f4732016-11-29 09:14:56 -0500375config CMD_BOOTMENU
376 bool "bootmenu"
377 select MENU
378 help
379 Add an ANSI terminal boot menu command.
380
Eugeniu Roscaee98dac2019-12-24 17:51:06 +0100381config CMD_ADTIMG
382 bool "adtimg"
Sam Protsenko92f95bb2018-08-16 23:34:13 +0300383 help
384 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
385 image into RAM, dump image structure information, etc. Those dtb/dtbo
386 files should be merged in one dtb further, which needs to be passed to
387 the kernel, as part of a boot process.
388
Sam Protsenko035502e2020-01-24 17:53:42 +0200389config CMD_ABOOTIMG
390 bool "abootimg"
391 depends on ANDROID_BOOT_IMAGE
392 help
393 Android Boot Image manipulation commands. Allows one to extract
394 images contained in boot.img, like kernel, ramdisk, dtb, etc, and
395 obtain corresponding meta-information from boot.img.
396
Sam Protsenkod8efc7c2020-01-24 17:53:43 +0200397 See doc/android/boot-image.rst for details.
398
Simon Glass29499a02016-01-17 20:53:51 -0700399config CMD_ELF
400 bool "bootelf, bootvx"
401 default y
402 help
403 Boot an ELF/vxWorks image from the memory.
404
Michal Simekf168c652016-04-06 20:28:04 +0200405config CMD_FDT
406 bool "Flattened Device Tree utility commands"
407 default y
408 depends on OF_LIBFDT
409 help
410 Do FDT related setup before booting into the Operating System.
411
Simon Glass29499a02016-01-17 20:53:51 -0700412config CMD_GO
413 bool "go"
414 default y
415 help
416 Start an application at a given address.
417
418config CMD_RUN
419 bool "run"
420 default y
421 help
422 Run the command in the given environment variable.
423
424config CMD_IMI
425 bool "iminfo"
426 default y
427 help
428 Print header information for application image.
429
430config CMD_IMLS
431 bool "imls"
Simon Glass29499a02016-01-17 20:53:51 -0700432 help
433 List all images found in flash
434
435config CMD_XIMG
436 bool "imxtract"
437 default y
438 help
439 Extract a part of a multi-image.
440
Simon Glassc6567fa2017-08-04 16:34:48 -0600441config CMD_SPL
442 bool "spl export - Export boot information for Falcon boot"
443 depends on SPL
444 help
445 Falcon mode allows booting directly from SPL into an Operating
446 System such as Linux, thus skipping U-Boot proper. See
447 doc/README.falcon for full information about how to use this
448 command.
449
Simon Glassc034e3d2017-08-04 16:34:49 -0600450config CMD_SPL_NAND_OFS
Lukasz Majewski10797442019-05-16 16:01:36 +0200451 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewskie73ce322019-05-16 16:01:35 +0200452 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Simon Glassc034e3d2017-08-04 16:34:49 -0600453 default 0
454 help
455 This provides the offset of the command line arguments for Linux
456 when booting from NAND in Falcon mode. See doc/README.falcon
457 for full information about how to use this option (and also see
458 board/gateworks/gw_ventana/README for an example).
459
Lukasz Majewski06d92532019-05-16 16:01:37 +0200460config CMD_SPL_NOR_OFS
461 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
462 depends on CMD_SPL && SPL_NOR_SUPPORT
463 default 0
464 help
465 This provides the offset of the command line arguments or dtb for
466 Linux when booting from NOR in Falcon mode.
467
Simon Glass51ef45a2017-08-04 16:34:50 -0600468config CMD_SPL_WRITE_SIZE
469 hex "Size of argument area"
470 depends on CMD_SPL
471 default 0x2000
472 help
473 This provides the size of the command-line argument area in NAND
474 flash used by Falcon-mode boot. See the documentation until CMD_SPL
475 for detail.
476
Marek Vasut113c0252018-02-10 16:22:05 +0100477config CMD_FITUPD
478 bool "fitImage update command"
479 help
480 Implements the 'fitupd' command, which allows to automatically
481 store software updates present on a TFTP server in NOR Flash
482
Simon Glassa18b9692017-08-04 16:34:57 -0600483config CMD_THOR_DOWNLOAD
484 bool "thor - TIZEN 'thor' download"
Marek Szyprowskide4752e2019-10-02 12:29:08 +0200485 select DFU
Simon Glassa18b9692017-08-04 16:34:57 -0600486 help
487 Implements the 'thor' download protocol. This is a way of
488 downloading a software update over USB from an attached host.
489 There is no documentation about this within the U-Boot source code
490 but you should be able to find something on the interwebs.
491
Simon Glass01d097d2017-08-04 16:35:03 -0600492config CMD_ZBOOT
493 bool "zboot - x86 boot command"
494 help
495 With x86 machines it is common to boot a bzImage file which
496 contains both a kernel and a setup.bin file. The latter includes
497 configuration information from the dark ages which x86 boards still
498 need to pick things out of.
499
500 Consider using FIT in preference to this since it supports directly
501 booting both 32- and 64-bit kernels, as well as secure boot.
502 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
503
Simon Glass29499a02016-01-17 20:53:51 -0700504endmenu
505
506menu "Environment commands"
507
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500508config CMD_ASKENV
509 bool "ask for env variable"
510 help
511 Ask for environment variable
512
Simon Glass29499a02016-01-17 20:53:51 -0700513config CMD_EXPORTENV
514 bool "env export"
515 default y
516 help
517 Export environments.
518
519config CMD_IMPORTENV
520 bool "env import"
521 default y
522 help
523 Import environments.
524
525config CMD_EDITENV
526 bool "editenv"
527 default y
528 help
529 Edit environment variable.
530
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500531config CMD_GREPENV
532 bool "search env"
533 help
534 Allow for searching environment variables
535
Simon Glass29499a02016-01-17 20:53:51 -0700536config CMD_SAVEENV
537 bool "saveenv"
538 default y
539 help
540 Save all environment variables into the compiled-in persistent
541 storage.
542
Frank Wunderlich33afa932019-06-29 11:36:19 +0200543config CMD_ERASEENV
544 bool "eraseenv"
545 default n
546 depends on CMD_SAVEENV
547 help
548 Erase environment variables from the compiled-in persistent
549 storage.
550
Simon Glass29499a02016-01-17 20:53:51 -0700551config CMD_ENV_EXISTS
552 bool "env exists"
553 default y
554 help
555 Check if a variable is defined in the environment for use in
556 shell scripting.
557
Simon Glass84d67c72017-05-17 03:25:13 -0600558config CMD_ENV_CALLBACK
559 bool "env callbacks - print callbacks and their associated variables"
560 help
561 Some environment variable have callbacks defined by
562 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
563 For example changing "baudrate" adjust the serial baud rate. This
564 command lists the currently defined callbacks.
565
Simon Glassc31e2d82017-05-17 03:25:14 -0600566config CMD_ENV_FLAGS
567 bool "env flags -print variables that have non-default flags"
568 help
569 Some environment variables have special flags that control their
570 behaviour. For example, serial# can only be written once and cannot
571 be deleted. This command shows the variables that have special
572 flags.
573
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900574config CMD_NVEDIT_EFI
575 bool "env [set|print] -e - set/print UEFI variables"
576 depends on EFI_LOADER
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900577 imply HEXDUMP
578 help
579 UEFI variables are encoded as some form of U-Boot variables.
580 If enabled, we are allowed to set/print UEFI variables using
581 "env" command with "-e" option without knowing details.
582
Leo Ruan7450b872019-05-24 17:20:19 +0200583config CMD_NVEDIT_INFO
584 bool "env info - print or evaluate environment information"
585 help
586 Print environment information:
587 - env_valid : is environment valid
588 - env_ready : is environment imported into hash table
589 - env_use_default : is default environment used
590
591 This command can be optionally used for evaluation in scripts:
592 [-d] : evaluate whether default environment is used
593 [-p] : evaluate whether environment can be persisted
594 The result of multiple evaluations will be combined with AND.
595
Simon Glass29499a02016-01-17 20:53:51 -0700596endmenu
597
598menu "Memory commands"
599
Mario Six8a4f6642018-03-28 14:39:18 +0200600config CMD_BINOP
601 bool "binop"
602 help
603 Compute binary operations (xor, or, and) of byte arrays of arbitrary
604 size from memory and store the result in memory or the environment.
605
Simon Glass29499a02016-01-17 20:53:51 -0700606config CMD_CRC32
607 bool "crc32"
608 default y
Michal Simek84f3dec2018-07-23 15:55:13 +0200609 select HASH
Simon Glass29499a02016-01-17 20:53:51 -0700610 help
611 Compute CRC32.
612
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100613config CRC32_VERIFY
614 bool "crc32 -v"
615 depends on CMD_CRC32
616 help
617 Add -v option to verify data against a crc32 checksum.
618
Simon Glass4590d4e2017-05-17 03:25:10 -0600619config CMD_EEPROM
620 bool "eeprom - EEPROM subsystem"
621 help
622 (deprecated, needs conversion to driver model)
623 Provides commands to read and write EEPROM (Electrically Erasable
624 Programmable Read Only Memory) chips that are connected over an
625 I2C bus.
626
627config CMD_EEPROM_LAYOUT
628 bool "Enable layout-aware eeprom commands"
629 depends on CMD_EEPROM
630 help
631 (deprecated, needs conversion to driver model)
632 When enabled, additional eeprom sub-commands become available.
633
634 eeprom print - prints the contents of the eeprom in a human-readable
635 way (eeprom layout fields, and data formatted to be fit for human
636 consumption).
637
638 eeprom update - allows user to update eeprom fields by specifying
639 the field name, and providing the new data in a human readable format
640 (same format as displayed by the eeprom print command).
641
642 Both commands can either auto detect the layout, or be told which
643 layout to use.
644
645 Feature API:
646 __weak int parse_layout_version(char *str)
647 - override to provide your own layout name parsing
648 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
649 int layout_version);
650 - override to setup the layout metadata based on the version
651 __weak int eeprom_layout_detect(unsigned char *data)
652 - override to provide your own algorithm for detecting layout
653 version
654 eeprom_field.c
655 - contains various printing and updating functions for common
656 types of eeprom fields. Can be used for defining
657 custom layouts.
658
659config EEPROM_LAYOUT_HELP_STRING
660 string "Tells user what layout names are supported"
661 depends on CMD_EEPROM_LAYOUT
662 default "<not defined>"
663 help
664 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
665 command's help.
666
Simon Glass26c20532017-08-04 16:34:51 -0600667config LOOPW
668 bool "loopw"
669 help
670 Infinite write loop on address range
671
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000672config CMD_MD5SUM
673 bool "md5sum"
674 default n
675 select MD5
676 help
677 Compute MD5 checksum.
678
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100679config MD5SUM_VERIFY
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000680 bool "md5sum -v"
681 default n
682 depends on CMD_MD5SUM
683 help
684 Add -v option to verify data against an MD5 checksum.
685
Simon Glass26c20532017-08-04 16:34:51 -0600686config CMD_MEMINFO
687 bool "meminfo"
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100688 help
Simon Glass26c20532017-08-04 16:34:51 -0600689 Display memory information.
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100690
Simon Glass26c20532017-08-04 16:34:51 -0600691config CMD_MEMORY
692 bool "md, mm, nm, mw, cp, cmp, base, loop"
693 default y
Simon Glass29499a02016-01-17 20:53:51 -0700694 help
Simon Glass26c20532017-08-04 16:34:51 -0600695 Memory commands.
696 md - memory display
697 mm - memory modify (auto-incrementing address)
698 nm - memory modify (constant address)
699 mw - memory write (fill)
700 cp - memory copy
701 cmp - memory compare
702 base - print or set address offset
703 loop - initialize loop on address range
Simon Glass29499a02016-01-17 20:53:51 -0700704
Joel Johnsondb5a97e2020-01-29 09:17:18 -0700705config CMD_MX_CYCLIC
Adam Ford1ef0c492019-08-14 07:54:34 -0500706 bool "Enable cyclic md/mw commands"
707 depends on CMD_MEMORY
708 help
709 Add the "mdc" and "mwc" memory commands. These are cyclic
710 "md/mw" commands.
711 Examples:
712
713 => mdc.b 10 4 500
714 This command will print 4 bytes (10,11,12,13) each 500 ms.
715
716 => mwc.l 100 12345678 10
717 This command will write 12345678 to address 100 all 10 ms.
718
Jean-Jacques Hiblotd3f09372019-07-02 14:23:26 +0200719config CMD_RANDOM
720 bool "random"
721 default y
722 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
723 help
724 random - fill memory with random data
725
Simon Glass29499a02016-01-17 20:53:51 -0700726config CMD_MEMTEST
727 bool "memtest"
728 help
729 Simple RAM read/write test.
730
Mario Six00518992018-03-28 14:38:14 +0200731if CMD_MEMTEST
732
733config SYS_ALT_MEMTEST
734 bool "Alternative test"
735 help
736 Use a more complete alternative memory test.
737
738endif
739
Simon Glass26c20532017-08-04 16:34:51 -0600740config CMD_SHA1SUM
741 bool "sha1sum"
742 select SHA1
Simon Glass29499a02016-01-17 20:53:51 -0700743 help
Simon Glass26c20532017-08-04 16:34:51 -0600744 Compute SHA1 checksum.
745
746config SHA1SUM_VERIFY
747 bool "sha1sum -v"
748 depends on CMD_SHA1SUM
749 help
750 Add -v option to verify data against a SHA1 checksum.
Simon Glass29499a02016-01-17 20:53:51 -0700751
Simon Glass8e83ca82017-08-04 16:34:52 -0600752config CMD_STRINGS
753 bool "strings - display strings in memory"
754 help
755 This works similarly to the Unix 'strings' command except that it
756 works with a memory range. String of printable characters found
757 within the range are displayed. The minimum number of characters
758 for a sequence to be considered a string can be provided.
759
Simon Glassbecaa8f2017-05-17 03:25:43 -0600760endmenu
761
762menu "Compression commands"
763
764config CMD_LZMADEC
765 bool "lzmadec"
Tom Rini3237bc62017-09-29 14:32:44 -0400766 default y if CMD_BOOTI
Simon Glassbecaa8f2017-05-17 03:25:43 -0600767 select LZMA
768 help
769 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
770 image from memory.
771
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900772config CMD_UNZIP
773 bool "unzip"
Tom Rini3237bc62017-09-29 14:32:44 -0400774 default y if CMD_BOOTI
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900775 help
776 Uncompress a zip-compressed memory region.
777
778config CMD_ZIP
779 bool "zip"
780 help
781 Compress a memory region with zlib deflate method.
782
Simon Glass29499a02016-01-17 20:53:51 -0700783endmenu
784
785menu "Device access commands"
786
Simon Glass036bbb12017-08-04 16:34:28 -0600787config CMD_ARMFLASH
788 #depends on FLASH_CFI_DRIVER
789 bool "armflash"
790 help
791 ARM Ltd reference designs flash partition access
792
Neil Armstrong49261c72018-04-27 15:17:57 +0200793config CMD_ADC
794 bool "adc - Access Analog to Digital Converters info and data"
795 select ADC
796 select DM_REGULATOR
797 help
798 Shows ADC device info and permit printing one-shot analog converted
799 data from a named Analog to Digital Converter.
800
Eugeniu Rosca35c34be2019-05-23 17:32:22 +0200801config CMD_BCB
802 bool "bcb"
803 depends on MMC
804 depends on PARTITIONS
805 help
806 Read/modify/write the fields of Bootloader Control Block, usually
807 stored on the flash "misc" partition with its structure defined in:
808 https://android.googlesource.com/platform/bootable/recovery/+/master/
809 bootloader_message/include/bootloader_message/bootloader_message.h
810
811 Some real-life use-cases include (but are not limited to):
812 - Determine the "boot reason" (and act accordingly):
813 https://source.android.com/devices/bootloader/boot-reason
814 - Get/pass a list of commands from/to recovery:
815 https://android.googlesource.com/platform/bootable/recovery
816 - Inspect/dump the contents of the BCB fields
817
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200818config CMD_BIND
819 bool "bind/unbind - Bind or unbind a device to/from a driver"
820 depends on DM
821 help
822 Bind or unbind a device to/from a driver from the command line.
823 This is useful in situations where a device may be handled by several
824 drivers. For example, this can be used to bind a UDC to the usb ether
825 gadget driver from the command line.
826
Simon Glass04ac6f12017-04-26 22:28:02 -0600827config CMD_CLK
828 bool "clk - Show clock frequencies"
829 help
830 (deprecated)
831 Shows clock frequences by calling a sock_clk_dump() hook function.
832 This is depreated in favour of using the CLK uclass and accessing
833 clock values from associated drivers. However currently no command
834 exists for this.
835
Simon Glass036bbb12017-08-04 16:34:28 -0600836config CMD_DEMO
837 bool "demo - Demonstration commands for driver model"
838 depends on DM
839 help
840 Provides a 'demo' command which can be used to play around with
841 driver model. To use this properly you will need to enable one or
842 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
843 Otherwise you will always get an empty list of devices. The demo
844 devices are defined in the sandbox device tree, so the easiest
845 option is to use sandbox and pass the -d point to sandbox's
846 u-boot.dtb file.
847
848config CMD_DFU
849 bool "dfu"
Marek Vasutea84f802018-02-16 16:41:17 +0100850 select DFU
Simon Glass036bbb12017-08-04 16:34:28 -0600851 help
852 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass663b0cc2017-08-04 16:35:06 -0600853 class device via USB. This command requires that the "dfu_alt_info"
854 environment variable be set and define the alt settings to expose to
855 the host.
Simon Glass036bbb12017-08-04 16:34:28 -0600856
Simon Glass29499a02016-01-17 20:53:51 -0700857config CMD_DM
858 bool "dm - Access to driver model information"
859 depends on DM
Simon Glass29499a02016-01-17 20:53:51 -0700860 help
861 Provides access to driver model data structures and information,
862 such as a list of devices, list of uclasses and the state of each
863 device (e.g. activated). This is not required for operation, but
864 can be useful to see the state of driver model for debugging or
865 interest.
866
Alex Kiernan65de9552018-05-29 15:30:39 +0000867config CMD_FASTBOOT
868 bool "fastboot - Android fastboot support"
869 depends on FASTBOOT
870 help
871 This enables the command "fastboot" which enables the Android
872 fastboot mode for the platform. Fastboot is a protocol for
873 downloading images, flashing and device control used on
Alex Kiernand5aa57c2018-05-29 15:30:53 +0000874 Android devices. Fastboot requires either the network stack
875 enabled or support for acting as a USB device.
Alex Kiernan65de9552018-05-29 15:30:39 +0000876
Sam Protsenkocd43fa12020-01-24 17:53:44 +0200877 See doc/android/fastboot.rst for more information.
Alex Kiernan65de9552018-05-29 15:30:39 +0000878
Simon Glass036bbb12017-08-04 16:34:28 -0600879config CMD_FLASH
880 bool "flinfo, erase, protect"
881 default y
Miquel Raynald2418202019-10-25 19:39:30 +0200882 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass036bbb12017-08-04 16:34:28 -0600883 help
884 NOR flash support.
885 flinfo - print FLASH memory information
886 erase - FLASH memory
887 protect - enable or disable FLASH write protection
888
889config CMD_FPGA
890 bool "fpga"
Tuomas Tynkkynen5ca16b32018-01-27 20:28:40 +0200891 depends on FPGA
Simon Glass036bbb12017-08-04 16:34:28 -0600892 default y
893 help
894 FPGA support.
895
896config CMD_FPGA_LOADBP
897 bool "fpga loadbp - load partial bitstream (Xilinx only)"
898 depends on CMD_FPGA
899 help
900 Supports loading an FPGA device from a bitstream buffer containing
901 a partial bitstream.
902
903config CMD_FPGA_LOADFS
904 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
905 depends on CMD_FPGA
906 help
907 Supports loading an FPGA device from a FAT filesystem.
908
909config CMD_FPGA_LOADMK
910 bool "fpga loadmk - load bitstream from image"
911 depends on CMD_FPGA
912 help
913 Supports loading an FPGA device from a image generated by mkimage.
914
915config CMD_FPGA_LOADP
916 bool "fpga loadp - load partial bitstream"
917 depends on CMD_FPGA
918 help
919 Supports loading an FPGA device from a bitstream buffer containing
920 a partial bitstream.
921
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +0530922config CMD_FPGA_LOAD_SECURE
923 bool "fpga loads - loads secure bitstreams (Xilinx only)"
924 depends on CMD_FPGA
925 help
926 Enables the fpga loads command which is used to load secure
927 (authenticated or encrypted or both) bitstreams on to FPGA.
928
Simon Glass036bbb12017-08-04 16:34:28 -0600929config CMD_FPGAD
930 bool "fpgad - dump FPGA registers"
931 help
932 (legacy, needs conversion to driver model)
933 Provides a way to dump FPGA registers by calling the board-specific
934 fpga_get_reg() function. This functions similarly to the 'md'
935 command.
936
937config CMD_FUSE
938 bool "fuse - support for the fuse subssystem"
939 help
940 (deprecated - needs conversion to driver model)
941 This allows reading, sensing, programming or overriding fuses
942 which control the behaviour of the device. The command uses the
943 fuse_...() API.
944
945config CMD_GPIO
946 bool "gpio"
947 help
948 GPIO support.
949
950config CMD_GPT
951 bool "GPT (GUID Partition Table) command"
Simon Glass036bbb12017-08-04 16:34:28 -0600952 select EFI_PARTITION
Adam Fordb10ba902018-02-06 12:43:56 -0600953 select HAVE_BLOCK_DEVICE
Michal Simek84f3dec2018-07-23 15:55:13 +0200954 select PARTITION_UUIDS
Maxime Ripard24336442017-08-24 11:52:32 +0200955 imply RANDOM_UUID
Simon Glass036bbb12017-08-04 16:34:28 -0600956 help
957 Enable the 'gpt' command to ready and write GPT style partition
958 tables.
959
Maxime Ripard24336442017-08-24 11:52:32 +0200960config RANDOM_UUID
961 bool "GPT Random UUID generation"
Adam Ford70c8f052018-02-06 12:14:28 -0600962 select LIB_UUID
Maxime Ripard24336442017-08-24 11:52:32 +0200963 help
964 Enable the generation of partitions with random UUIDs if none
965 are provided.
966
Simon Glass036bbb12017-08-04 16:34:28 -0600967config CMD_GPT_RENAME
968 bool "GPT partition renaming commands"
969 depends on CMD_GPT
970 help
971 Enables the 'gpt' command to interchange names on two GPT
972 partitions via the 'gpt swap' command or to rename single
973 partitions via the 'rename' command.
Simon Glass29499a02016-01-17 20:53:51 -0700974
Simon Glassa831eca2017-05-17 03:25:29 -0600975config CMD_IDE
976 bool "ide - Support for IDE drivers"
Simon Glassb569a012017-05-17 03:25:30 -0600977 select IDE
Simon Glassa831eca2017-05-17 03:25:29 -0600978 help
979 Provides an 'ide' command which allows accessing the IDE drive,
980 reseting the IDE interface, printing the partition table and
981 geting device info. It also enables the 'diskboot' command which
982 permits booting from an IDE drive.
983
Simon Glass3bebbe62017-05-17 03:25:34 -0600984config CMD_IO
985 bool "io - Support for performing I/O accesses"
986 help
987 Provides an 'iod' command to display I/O space and an 'iow' command
988 to write values to the I/O space. This can be useful for manually
989 checking the state of devices during boot when debugging device
990 drivers, etc.
991
Simon Glass30daabc2017-05-17 03:25:36 -0600992config CMD_IOTRACE
993 bool "iotrace - Support for tracing I/O activity"
994 help
995 Provides an 'iotrace' command which supports recording I/O reads and
996 writes in a trace buffer in memory . It also maintains a checksum
997 of the trace records (even if space is exhausted) so that the
998 sequence of I/O accesses can be verified.
999
1000 When debugging drivers it is useful to see what I/O accesses were
1001 done and in what order.
1002
1003 Even if the individual accesses are of little interest it can be
1004 useful to verify that the access pattern is consistent each time
1005 an operation is performed. In this case a checksum can be used to
1006 characterise the operation of a driver. The checksum can be compared
1007 across different runs of the operation to verify that the driver is
1008 working properly.
1009
1010 In particular, when performing major refactoring of the driver, where
1011 the access pattern should not change, the checksum provides assurance
1012 that the refactoring work has not broken the driver.
1013
1014 This works by sneaking into the io.h heder for an architecture and
1015 redirecting I/O accesses through iotrace's tracing mechanism.
1016
1017 For now no commands are provided to examine the trace buffer. The
1018 format is fairly simple, so 'md' is a reasonable substitute.
1019
1020 Note: The checksum feature is only useful for I/O regions where the
1021 contents do not change outside of software control. Where this is not
1022 suitable you can fall back to manually comparing the addresses. It
1023 might be useful to enhance tracing to only checksum the accesses and
1024 not the data read/written.
1025
Simon Glass036bbb12017-08-04 16:34:28 -06001026config CMD_I2C
1027 bool "i2c"
1028 help
1029 I2C support.
1030
Eugen Hristevb879c842018-09-18 10:35:33 +03001031config CMD_W1
1032 depends on W1
1033 default y if W1
1034 bool "w1 - Support for Dallas 1-Wire protocol"
1035 help
1036 Dallas 1-wire protocol support
1037
Simon Glass29499a02016-01-17 20:53:51 -07001038config CMD_LOADB
1039 bool "loadb"
1040 default y
1041 help
1042 Load a binary file over serial line.
1043
1044config CMD_LOADS
1045 bool "loads"
1046 default y
1047 help
1048 Load an S-Record file over serial line
1049
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001050config CMD_MMC
1051 bool "mmc"
1052 help
1053 MMC memory mapped support.
1054
Alex Kiernan60e0f612018-05-08 04:43:31 +00001055config CMD_MMC_RPMB
1056 bool "Enable support for RPMB in the mmc command"
1057 depends on CMD_MMC
1058 help
1059 Enable the commands for reading, writing and programming the
1060 key for the Replay Protection Memory Block partition in eMMC.
1061
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001062config CMD_MMC_SWRITE
1063 bool "mmc swrite"
1064 depends on CMD_MMC && MMC_WRITE
1065 select IMAGE_SPARSE
1066 help
1067 Enable support for the "mmc swrite" command to write Android sparse
1068 images to eMMC.
1069
Miquel Raynal741f4c72018-09-29 12:58:28 +02001070config CMD_MTD
1071 bool "mtd"
Miquel Raynald2418202019-10-25 19:39:30 +02001072 depends on MTD
Miquel Raynal741f4c72018-09-29 12:58:28 +02001073 select MTD_PARTITIONS
1074 help
1075 MTD commands support.
1076
Simon Glass29499a02016-01-17 20:53:51 -07001077config CMD_NAND
1078 bool "nand"
Maxime Ripard5a5d71f2017-03-03 15:13:30 +01001079 default y if NAND_SUNXI
Miquel Raynald2418202019-10-25 19:39:30 +02001080 depends on MTD_RAW_NAND
Simon Glass29499a02016-01-17 20:53:51 -07001081 help
1082 NAND support.
1083
Boris Brezillon19907782017-02-27 18:22:07 +01001084if CMD_NAND
1085config CMD_NAND_TRIMFFS
1086 bool "nand write.trimffs"
Hans de Goedefd42c052017-02-27 18:22:10 +01001087 default y if ARCH_SUNXI
Boris Brezillon19907782017-02-27 18:22:07 +01001088 help
1089 Allows one to skip empty pages when flashing something on a NAND.
1090
1091config CMD_NAND_LOCK_UNLOCK
1092 bool "nand lock/unlock"
1093 help
1094 NAND locking support.
1095
1096config CMD_NAND_TORTURE
1097 bool "nand torture"
1098 help
1099 NAND torture support.
1100
1101endif # CMD_NAND
1102
Zhikang Zhang49455652017-08-03 02:30:59 -07001103config CMD_NVME
1104 bool "nvme"
1105 depends on NVME
1106 default y if NVME
1107 help
1108 NVM Express device support
1109
Simon Glassa2a82072017-08-04 16:34:31 -06001110config CMD_ONENAND
1111 bool "onenand - access to onenand device"
Miquel Raynald2418202019-10-25 19:39:30 +02001112 depends on MTD
Simon Glassa2a82072017-08-04 16:34:31 -06001113 help
1114 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1115 various useful features. This command allows reading, writing,
1116 and erasing blocks. It allso provides a way to show and change
1117 bad blocks, and test the device.
1118
Mario Sixf8395902018-09-27 09:19:34 +02001119config CMD_OSD
1120 bool "osd"
1121 help
1122 Enable the 'osd' command which allows to query information from and
1123 write text data to a on-screen display (OSD) device; a virtual device
1124 associated with a display capable of displaying a text overlay on the
1125 display it's associated with..
1126
Patrick Delaunay73287092017-01-27 11:00:42 +01001127config CMD_PART
1128 bool "part"
Adam Fordb10ba902018-02-06 12:43:56 -06001129 select HAVE_BLOCK_DEVICE
Michal Simek84f3dec2018-07-23 15:55:13 +02001130 select PARTITION_UUIDS
Patrick Delaunay73287092017-01-27 11:00:42 +01001131 help
1132 Read and display information about the partition table on
1133 various media.
1134
Simon Glassc88a09a2017-08-04 16:34:34 -06001135config CMD_PCI
1136 bool "pci - Access PCI devices"
1137 help
1138 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1139 used on some devices to allow the CPU to communicate with its
1140 peripherals. Sub-commands allow bus enumeration, displaying and
1141 changing configuration space and a few other features.
1142
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001143config CMD_PINMUX
1144 bool "pinmux - show pins muxing"
1145 default y if PINCTRL
1146 help
1147 Parse all available pin-controllers and show pins muxing. This
1148 is useful for debug purpoer to check the pin muxing and to know if
1149 a pin is configured as a GPIO or as an alternate function.
1150
Adam Fordc4f16322018-09-09 07:05:57 -05001151config CMD_POWEROFF
1152 bool "poweroff"
1153 help
1154 Poweroff/Shutdown the system
1155
Simon Glassc05459b2017-08-04 16:34:39 -06001156config CMD_READ
1157 bool "read - Read binary data from a partition"
1158 help
1159 Provides low-level access to the data in a partition.
1160
Simon Glass036bbb12017-08-04 16:34:28 -06001161config CMD_REMOTEPROC
1162 bool "remoteproc"
1163 depends on REMOTEPROC
1164 help
1165 Support for Remote Processor control
1166
1167config CMD_SATA
1168 bool "sata - Access SATA subsystem"
1169 select SATA
1170 help
1171 SATA (Serial Advanced Technology Attachment) is a serial bus
1172 standard for connecting to hard drives and other storage devices.
1173 This command provides information about attached devices and allows
1174 reading, writing and other operations.
1175
1176 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1177 Attachment, where AT refers to an IBM AT (Advanced Technology)
1178 computer released in 1984.
1179
Simon Glassd09f3772017-08-04 16:34:43 -06001180config CMD_SAVES
1181 bool "saves - Save a file over serial in S-Record format"
1182 help
1183 Provides a way to save a binary file using the Motorola S-Record
1184 format over the serial line.
1185
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001186config CMD_SCSI
1187 bool "scsi - Access to SCSI devices"
1188 default y if SCSI
1189 help
1190 This provides a 'scsi' command which provides access to SCSI (Small
1191 Computer System Interface) devices. The command provides a way to
1192 scan the bus, reset the bus, read and write data and get information
1193 about devices.
1194
Simon Glass6870d2e2017-08-04 16:34:45 -06001195config CMD_SDRAM
1196 bool "sdram - Print SDRAM configuration information"
1197 help
1198 Provides information about attached SDRAM. This assumed that the
1199 SDRAM has an EEPROM with information that can be read using the
1200 I2C bus. This is only available on some boards.
1201
Simon Glass29499a02016-01-17 20:53:51 -07001202config CMD_SF
1203 bool "sf"
Tom Rinie5289a72019-05-29 17:01:28 -04001204 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Teki132e81f2019-10-16 17:59:42 +05301205 default y if DM_SPI_FLASH
Simon Glass29499a02016-01-17 20:53:51 -07001206 help
1207 SPI Flash support
1208
Simon Glass86b1b652017-08-04 16:34:46 -06001209config CMD_SF_TEST
1210 bool "sf test - Allow testing of SPI flash"
Tom Rinie5289a72019-05-29 17:01:28 -04001211 depends on CMD_SF
Simon Glass86b1b652017-08-04 16:34:46 -06001212 help
1213 Provides a way to test that SPI flash is working correctly. The
1214 test is destructive, in that an area of SPI flash must be provided
1215 for the test to use. Performance information is also provided,
1216 measuring the performance of reading, writing and erasing in
1217 Mbps (Million Bits Per Second). This value should approximately
1218 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1219 everything is working properly.
1220
Simon Glass29499a02016-01-17 20:53:51 -07001221config CMD_SPI
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001222 bool "sspi - Command to access spi device"
Tom Rinie5289a72019-05-29 17:01:28 -04001223 depends on SPI
Simon Glass29499a02016-01-17 20:53:51 -07001224 help
1225 SPI utility command.
1226
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001227config DEFAULT_SPI_BUS
1228 int "default spi bus used by sspi command"
1229 depends on CMD_SPI
1230 default 0
1231
1232config DEFAULT_SPI_MODE
1233 hex "default spi mode used by sspi command (see include/spi.h)"
1234 depends on CMD_SPI
1235 default 0
1236
Simon Glass80a56cd2017-08-04 16:35:00 -06001237config CMD_TSI148
1238 bool "tsi148 - Command to access tsi148 device"
1239 help
1240 This provides various sub-commands to initialise and configure the
1241 Turndra tsi148 device. See the command help for full details.
1242
Faiz Abbas61e9fbb2019-10-15 18:24:40 +05301243config CMD_UFS
1244 bool "Enable UFS - Universal Flash Subsystem commands"
1245 depends on UFS
1246 help
1247 "This provides commands to initialise and configure universal flash
1248 subsystem devices"
1249
Simon Glass0c03c1a2017-08-04 16:35:01 -06001250config CMD_UNIVERSE
1251 bool "universe - Command to set up the Turndra Universe controller"
1252 help
1253 This allows setting up the VMEbus provided by this controller.
1254 See the command help for full details.
1255
Simon Glass29499a02016-01-17 20:53:51 -07001256config CMD_USB
1257 bool "usb"
Adam Fordb10ba902018-02-06 12:43:56 -06001258 select HAVE_BLOCK_DEVICE
Simon Glass29499a02016-01-17 20:53:51 -07001259 help
1260 USB support.
1261
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001262config CMD_USB_SDP
1263 bool "sdp"
1264 select USB_FUNCTION_SDP
1265 help
1266 Enables the command "sdp" which is used to have U-Boot emulating the
1267 Serial Download Protocol (SDP) via USB.
Michal Simekf751ff52018-07-23 15:55:12 +02001268
Eddie Cai5e3020b2017-12-15 08:17:11 +08001269config CMD_ROCKUSB
1270 bool "rockusb"
1271 depends on USB_FUNCTION_ROCKUSB
1272 help
Michal Simekf751ff52018-07-23 15:55:12 +02001273 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai5e3020b2017-12-15 08:17:11 +08001274 read/write info, image to/from devices. This enable rockusb command
1275 support to communication with rockusb device. for more detail about
1276 this command, please read doc/README.rockusb.
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001277
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001278config CMD_USB_MASS_STORAGE
1279 bool "UMS usb mass storage"
Lukasz Majewski6e782742018-01-29 19:28:02 +01001280 select USB_FUNCTION_MASS_STORAGE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001281 help
1282 USB mass storage support
1283
Tuomas Tynkkynen10a60d22018-10-15 02:21:12 -07001284config CMD_VIRTIO
1285 bool "virtio"
1286 depends on VIRTIO
1287 default y if VIRTIO
1288 help
1289 VirtIO block device support
1290
Michael Walle23964a82019-04-06 02:24:02 +02001291config CMD_WDT
1292 bool "wdt"
1293 depends on WDT
1294 help
1295 This provides commands to control the watchdog timer devices.
1296
Mario Sixfd1cc422018-08-09 14:51:21 +02001297config CMD_AXI
1298 bool "axi"
1299 depends on AXI
1300 help
1301 Enable the command "axi" for accessing AXI (Advanced eXtensible
1302 Interface) busses, a on-chip interconnect specification for managing
1303 functional blocks in SoC designs, which is also often used in designs
1304 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass29499a02016-01-17 20:53:51 -07001305endmenu
1306
1307
1308menu "Shell scripting commands"
1309
1310config CMD_ECHO
1311 bool "echo"
1312 default y
1313 help
1314 Echo args to console
1315
1316config CMD_ITEST
1317 bool "itest"
1318 default y
1319 help
1320 Return true/false on integer compare.
1321
1322config CMD_SOURCE
1323 bool "source"
1324 default y
1325 help
1326 Run script from memory
1327
1328config CMD_SETEXPR
1329 bool "setexpr"
1330 default y
1331 help
1332 Evaluate boolean and math expressions and store the result in an env
1333 variable.
1334 Also supports loading the value at a memory location into a variable.
1335 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1336
1337endmenu
1338
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001339menu "Android support commands"
1340
1341config CMD_AB_SELECT
1342 bool "ab_select"
1343 default n
1344 depends on ANDROID_AB
1345 help
1346 On Android devices with more than one boot slot (multiple copies of
1347 the kernel and system images) this provides a command to select which
1348 slot should be used to boot from and register the boot attempt. This
1349 is used by the new A/B update model where one slot is updated in the
1350 background while running from the other slot.
1351
1352endmenu
1353
Michal Simek2f785a12018-02-26 16:01:02 +01001354if NET
1355
Joe Hershbergerb0429462018-04-13 15:26:30 -05001356menuconfig CMD_NET
1357 bool "Network commands"
1358 default y
Adam Ford53705472018-07-20 23:03:57 -05001359 imply NETDEVICES
Joe Hershbergerb0429462018-04-13 15:26:30 -05001360
1361if CMD_NET
1362
1363config CMD_BOOTP
1364 bool "bootp"
Simon Glass29499a02016-01-17 20:53:51 -07001365 default y
1366 help
Simon Glass29499a02016-01-17 20:53:51 -07001367 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerb0429462018-04-13 15:26:30 -05001368
Joe Hershberger01261792018-04-13 15:26:33 -05001369config CMD_DHCP
1370 bool "dhcp"
1371 depends on CMD_BOOTP
1372 help
1373 Boot image via network using DHCP/TFTP protocol
1374
Joe Hershberger0824ad92018-04-13 15:26:32 -05001375config BOOTP_BOOTPATH
Joe Hershberger06661e12018-04-13 15:26:34 -05001376 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001377 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001378 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001379 help
1380 Even though the config is called BOOTP_BOOTPATH, it stores the
1381 path in the variable 'rootpath'.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001382
1383config BOOTP_DNS
Joe Hershberger06661e12018-04-13 15:26:34 -05001384 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001385 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001386 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001387 help
1388 The primary DNS server is stored as 'dnsip'. If two servers are
1389 returned, you must set BOOTP_DNS2 to store that second server IP
1390 also.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001391
Joe Hershberger63e70712018-04-13 15:26:35 -05001392config BOOTP_DNS2
1393 bool "Store 'dnsip2' from BOOTP/DHCP server"
1394 depends on BOOTP_DNS
1395 help
1396 If a DHCP client requests the DNS server IP from a DHCP server,
1397 it is possible that more than one DNS serverip is offered to the
1398 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1399 server IP will be stored in the additional environment
1400 variable "dnsip2". The first DNS serverip is always
1401 stored in the variable "dnsip", when BOOTP_DNS is defined.
1402
Joe Hershberger0824ad92018-04-13 15:26:32 -05001403config BOOTP_GATEWAY
Joe Hershberger06661e12018-04-13 15:26:34 -05001404 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001405 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001406 depends on CMD_BOOTP
1407
1408config BOOTP_HOSTNAME
Joe Hershberger06661e12018-04-13 15:26:34 -05001409 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001410 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001411 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001412 help
1413 The name may or may not be qualified with the local domain name.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001414
Alexander Graf427e6952018-06-15 10:29:28 +02001415config BOOTP_PREFER_SERVERIP
1416 bool "serverip variable takes precedent over DHCP server IP."
1417 depends on CMD_BOOTP
1418 help
1419 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1420
1421 With this option enabled, the 'serverip' variable in the environment
1422 takes precedence over DHCP server IP and will only be set by the DHCP
1423 server if not already set in the environment.
1424
Joe Hershberger0824ad92018-04-13 15:26:32 -05001425config BOOTP_SUBNETMASK
Joe Hershberger06661e12018-04-13 15:26:34 -05001426 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001427 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001428 depends on CMD_BOOTP
1429
Chris Packhambfa7c212018-05-03 20:19:02 +12001430config BOOTP_NTPSERVER
1431 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1432 depends on CMD_BOOTP
1433
Ramon Friedac598c12019-07-18 21:43:30 +03001434config CMD_PCAP
1435 bool "pcap capture"
1436 help
1437 Selecting this will allow capturing all Ethernet packets and store
1438 them in physical memory in a PCAP formated file,
1439 later to be analyzed by PCAP reader application (IE. WireShark).
1440
Joe Hershberger0824ad92018-04-13 15:26:32 -05001441config BOOTP_PXE
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001442 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001443 default y
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001444 depends on CMD_BOOTP && CMD_PXE
1445 help
1446 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001447
1448config BOOTP_PXE_CLIENTARCH
1449 hex
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001450 depends on BOOTP_PXE
Joe Hershberger0824ad92018-04-13 15:26:32 -05001451 default 0x16 if ARM64
1452 default 0x15 if ARM
1453 default 0 if X86
1454
1455config BOOTP_VCI_STRING
1456 string
1457 depends on CMD_BOOTP
Michal Simekf4359382018-04-26 18:21:29 +05301458 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger0824ad92018-04-13 15:26:32 -05001459 default "U-Boot.armv8" if ARM64
1460 default "U-Boot.arm" if ARM
1461 default "U-Boot"
1462
Joe Hershbergerb0429462018-04-13 15:26:30 -05001463config CMD_TFTPBOOT
1464 bool "tftpboot"
1465 default y
1466 help
Simon Glass29499a02016-01-17 20:53:51 -07001467 tftpboot - boot image via network using TFTP protocol
1468
1469config CMD_TFTPPUT
1470 bool "tftp put"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001471 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001472 help
1473 TFTP put command, for uploading files to a server
1474
1475config CMD_TFTPSRV
1476 bool "tftpsrv"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001477 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001478 help
1479 Act as a TFTP server and boot the first received file
1480
Joe Hershberger0824ad92018-04-13 15:26:32 -05001481config NET_TFTP_VARS
1482 bool "Control TFTP timeout and count through environment"
1483 depends on CMD_TFTPBOOT
1484 default y
1485 help
1486 If set, allows controlling the TFTP timeout through the
1487 environment variable tftptimeout, and the TFTP maximum
1488 timeout count through the variable tftptimeoutcountmax.
1489 If unset, timeout and maximum are hard-defined as 1 second
1490 and 10 timouts per TFTP transfer.
1491
Simon Glass29499a02016-01-17 20:53:51 -07001492config CMD_RARP
1493 bool "rarpboot"
1494 help
1495 Boot image via network using RARP/TFTP protocol
1496
Simon Glass29499a02016-01-17 20:53:51 -07001497config CMD_NFS
1498 bool "nfs"
1499 default y
1500 help
1501 Boot image via network using NFS protocol.
1502
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001503config CMD_MII
1504 bool "mii"
Ramon Frieddeb6c502019-09-13 18:25:03 +03001505 imply CMD_MDIO
1506 help
1507 If set, allows 802.3(clause 22) MII Management functions interface access
1508 The management interface specified in Clause 22 provides
1509 a simple, two signal, serial interface to connect a
1510 Station Management entity and a managed PHY for providing access
1511 to management parameters and services.
1512 The interface is referred to as the MII management interface.
1513
1514config CMD_MDIO
1515 bool "mdio"
1516 depends on PHYLIB
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001517 help
Ramon Frieddeb6c502019-09-13 18:25:03 +03001518 If set, allows Enable 802.3(clause 45) MDIO interface registers access
1519 The MDIO interface is orthogonal to the MII interface and extends
1520 it by adding access to more registers through indirect addressing.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001521
Simon Glass29499a02016-01-17 20:53:51 -07001522config CMD_PING
1523 bool "ping"
1524 help
1525 Send ICMP ECHO_REQUEST to network host
1526
1527config CMD_CDP
1528 bool "cdp"
1529 help
1530 Perform CDP network configuration
1531
1532config CMD_SNTP
1533 bool "sntp"
1534 help
1535 Synchronize RTC via network
1536
1537config CMD_DNS
1538 bool "dns"
1539 help
1540 Lookup the IP of a hostname
1541
1542config CMD_LINK_LOCAL
1543 bool "linklocal"
Joe Hershberger51d78982018-04-30 12:45:22 -05001544 select LIB_RAND
Simon Glass29499a02016-01-17 20:53:51 -07001545 help
1546 Acquire a network IP address using the link-local protocol
1547
Joe Hershberger0824ad92018-04-13 15:26:32 -05001548endif
1549
Simon Glass12b85702017-05-17 03:25:17 -06001550config CMD_ETHSW
1551 bool "ethsw"
1552 help
1553 Allow control of L2 Ethernet switch commands. These are supported
1554 by the vsc9953 Ethernet driver at present. Sub-commands allow
1555 operations such as enabling / disabling a port and
1556 viewing/maintaining the filtering database (FDB)
1557
Joe Hershberger0824ad92018-04-13 15:26:32 -05001558config CMD_PXE
1559 bool "pxe"
1560 select MENU
1561 help
1562 Boot image via network using PXE protocol
Michal Simek2f785a12018-02-26 16:01:02 +01001563
Lothar Felten776fc102018-06-22 22:29:54 +02001564config CMD_WOL
1565 bool "wol"
1566 help
1567 Wait for wake-on-lan Magic Packet
1568
Joe Hershbergerb0429462018-04-13 15:26:30 -05001569endif
Simon Glass29499a02016-01-17 20:53:51 -07001570
1571menu "Misc commands"
1572
Simon Glassb575bfc2017-04-26 22:27:55 -06001573config CMD_BMP
1574 bool "Enable 'bmp' command"
1575 depends on LCD || DM_VIDEO || VIDEO
1576 help
Andrius Å tikonas1d5ccd62019-09-23 22:43:41 +01001577 This provides a way to obtain information about a BMP-format image
Simon Glassb575bfc2017-04-26 22:27:55 -06001578 and to display it. BMP (which presumably stands for BitMaP) is a
1579 file format defined by Microsoft which supports images of various
1580 depths, formats and compression methods. Headers on the file
1581 determine the formats used. This command can be used by first loading
1582 the image into RAM, then using this command to look at it or display
1583 it.
1584
Alex Kiernane710fa62018-05-12 05:49:47 +00001585config CMD_BOOTCOUNT
1586 bool "bootcount"
1587 depends on BOOTCOUNT_LIMIT
1588 help
1589 Enable the bootcount command, which allows interrogation and
1590 reset of the bootcounter.
1591
Simon Glassffab9a02017-04-26 22:27:56 -06001592config CMD_BSP
1593 bool "Enable board-specific commands"
1594 help
1595 (deprecated: instead, please define a Kconfig option for each command)
1596
1597 Some boards have board-specific commands which are only enabled
1598 during developemnt and need to be turned off for production. This
1599 option provides a way to control this. The commands that are enabled
1600 vary depending on the board.
1601
Tomas Melinc17dae52016-11-25 11:01:03 +02001602config CMD_BKOPS_ENABLE
1603 bool "mmc bkops enable"
1604 depends on CMD_MMC
1605 default n
1606 help
1607 Enable command for setting manual background operations handshake
1608 on a eMMC device. The feature is optionally available on eMMC devices
1609 conforming to standard >= 4.41.
1610
Eric Nelsonfaf4f052016-03-28 10:05:44 -07001611config CMD_BLOCK_CACHE
1612 bool "blkcache - control and stats for block cache"
1613 depends on BLOCK_CACHE
1614 default y if BLOCK_CACHE
1615 help
1616 Enable the blkcache command, which can be used to control the
1617 operation of the cache functions.
1618 This is most useful when fine-tuning the operation of the cache
1619 during development, but also allows the cache to be disabled when
1620 it might hurt performance (e.g. when using the ums command).
1621
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001622config CMD_CACHE
1623 bool "icache or dcache"
1624 help
1625 Enable the "icache" and "dcache" commands
1626
Heinrich Schuchardt13ea6852018-09-07 19:43:11 +02001627config CMD_CONITRACE
1628 bool "conitrace - trace console input codes"
1629 help
1630 Enable the 'conitrace' command which displays the codes received
1631 from the console input as hexadecimal numbers.
1632
Anatolij Gustschine0455a42018-12-01 10:47:20 +01001633config CMD_CLS
1634 bool "Enable clear screen command 'cls'"
1635 depends on CFB_CONSOLE || DM_VIDEO || LCD || VIDEO
1636 default y if LCD
1637 help
1638 Enable the 'cls' command which clears the screen contents
1639 on video frame buffer.
1640
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001641config CMD_EFIDEBUG
1642 bool "efidebug - display/configure UEFI environment"
1643 depends on EFI_LOADER
Heinrich Schuchardt3db35912019-05-11 09:53:33 +02001644 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09001645 default n
1646 help
1647 Enable the 'efidebug' command which provides a subset of UEFI
1648 shell utility with simplified functionality. It will be useful
1649 particularly for managing boot parameters as well as examining
1650 various EFI status for debugging.
1651
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01001652config CMD_EXCEPTION
1653 bool "exception - raise exception"
1654 depends on ARM || RISCV || X86
1655 help
1656 Enable the 'exception' command which allows to raise an exception.
1657
Simon Glassfc8a5292017-04-10 11:34:59 -06001658config CMD_LED
1659 bool "led"
Jan Kiszka89077ba2019-01-03 09:08:42 +01001660 depends on LED
Simon Glassfc8a5292017-04-10 11:34:59 -06001661 default y if LED
1662 help
1663 Enable the 'led' command which allows for control of LEDs supported
1664 by the board. The LEDs can be listed with 'led list' and controlled
1665 with led on/off/togle/blink. Any LED drivers can be controlled with
1666 this command, e.g. led_gpio.
1667
Chris Packham3e257df2017-04-29 15:20:28 +12001668config CMD_DATE
1669 bool "date"
1670 default y if DM_RTC
AKASHI Takahiro51ba5222019-11-13 09:44:49 +09001671 select LIB_DATE
Chris Packham3e257df2017-04-29 15:20:28 +12001672 help
1673 Enable the 'date' command for getting/setting the time/date in RTC
1674 devices.
1675
Simon Glass29499a02016-01-17 20:53:51 -07001676config CMD_TIME
1677 bool "time"
1678 help
1679 Run commands and summarize execution time.
1680
Simon Glassfa744522017-05-17 03:25:23 -06001681config CMD_GETTIME
1682 bool "gettime - read elapsed time"
1683 help
1684 Enable the 'gettime' command which reads the elapsed time since
1685 U-Boot started running. This shows the time in seconds and
1686 milliseconds. See also the 'bootstage' command which provides more
1687 flexibility for boot timing.
1688
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01001689config CMD_RNG
1690 bool "rng command"
1691 depends on DM_RNG
1692 select HEXDUMP
1693 help
1694 Print bytes from the hardware random number generator.
1695
Simon Glass29499a02016-01-17 20:53:51 -07001696# TODO: rename to CMD_SLEEP
1697config CMD_MISC
1698 bool "sleep"
1699 default y
1700 help
1701 Delay execution for some time
1702
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02001703config MP
1704 bool "support for multiprocessor"
1705 help
1706 This provides an option to brinup
1707 different processors in multiprocessor
1708 cases.
1709
Simon Glass29499a02016-01-17 20:53:51 -07001710config CMD_TIMER
1711 bool "timer"
1712 help
1713 Access the system timer.
1714
Simon Glass29499a02016-01-17 20:53:51 -07001715config CMD_SOUND
1716 bool "sound"
1717 depends on SOUND
1718 help
1719 This provides basic access to the U-Boot's sound support. The main
1720 feature is to play a beep.
1721
1722 sound init - set up sound system
1723 sound play - play a sound
1724
Patrice Chotard7b81c052019-11-25 09:07:38 +01001725config CMD_SYSBOOT
1726 bool "sysboot"
1727 select MENU
1728 help
1729 Boot image via local extlinux.conf file
1730
Miao Yan92106272016-05-22 19:37:17 -07001731config CMD_QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04001732 bool "qfw"
Miao Yan4fcd7f22016-05-22 19:37:14 -07001733 select QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04001734 help
1735 This provides access to the QEMU firmware interface. The main
1736 feature is to allow easy loading of files passed to qemu-system
1737 via -kernel / -initrd
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02001738
1739source "cmd/mvebu/Kconfig"
1740
Simon Glass89342ef2017-08-04 16:34:55 -06001741config CMD_TERMINAL
1742 bool "terminal - provides a way to attach a serial terminal"
1743 help
1744 Provides a 'cu'-like serial terminal command. This can be used to
1745 access other serial ports from the system console. The terminal
1746 is very simple with no special processing of characters. As with
1747 cu, you can press ~. (tilde followed by period) to exit.
1748
Simon Glass6d56aad2017-08-04 16:35:02 -06001749config CMD_UUID
1750 bool "uuid, guid - generation of unique IDs"
Adam Ford70c8f052018-02-06 12:14:28 -06001751 select LIB_UUID
Simon Glass6d56aad2017-08-04 16:35:02 -06001752 help
1753 This enables two commands:
1754
1755 uuid - generate random Universally Unique Identifier
1756 guid - generate Globally Unique Identifier based on random UUID
1757
1758 The two commands are very similar except for the endianness of the
1759 output.
1760
Simon Glass29499a02016-01-17 20:53:51 -07001761endmenu
1762
Lokesh Vutla962c4e02017-12-29 11:47:49 +05301763source "cmd/ti/Kconfig"
1764
Simon Glass29499a02016-01-17 20:53:51 -07001765config CMD_BOOTSTAGE
1766 bool "Enable the 'bootstage' command"
1767 depends on BOOTSTAGE
1768 help
1769 Add a 'bootstage' command which supports printing a report
1770 and un/stashing of bootstage data.
1771
1772menu "Power commands"
1773config CMD_PMIC
1774 bool "Enable Driver Model PMIC command"
1775 depends on DM_PMIC
1776 help
1777 This is the pmic command, based on a driver model pmic's API.
1778 Command features are unchanged:
1779 - list - list pmic devices
1780 - pmic dev <id> - show or [set] operating pmic device (NEW)
1781 - pmic dump - dump registers
1782 - pmic read address - read byte of register at address
1783 - pmic write address - write byte to register at address
1784 The only one change for this command is 'dev' subcommand.
1785
1786config CMD_REGULATOR
1787 bool "Enable Driver Model REGULATOR command"
1788 depends on DM_REGULATOR
1789 help
1790 This command is based on driver model regulator's API.
1791 User interface features:
1792 - list - list regulator devices
1793 - regulator dev <id> - show or [set] operating regulator device
1794 - regulator info - print constraints info
1795 - regulator status - print operating status
1796 - regulator value <val] <-f> - print/[set] voltage value [uV]
1797 - regulator current <val> - print/[set] current value [uA]
1798 - regulator mode <id> - print/[set] operating mode id
1799 - regulator enable - enable the regulator output
1800 - regulator disable - disable the regulator output
1801
1802 The '-f' (force) option can be used for set the value which exceeds
1803 the limits, which are found in device-tree and are kept in regulator's
1804 uclass platdata structure.
1805
1806endmenu
1807
1808menu "Security commands"
Simon Glass528fdd12017-04-26 22:27:49 -06001809config CMD_AES
1810 bool "Enable the 'aes' command"
1811 select AES
1812 help
1813 This provides a means to encrypt and decrypt data using the AES
1814 (Advanced Encryption Standard). This algorithm uses a symetric key
1815 and is widely used as a streaming cipher. Different key lengths are
1816 supported by the algorithm but this command only supports 128 bits
1817 at present.
1818
Simon Glass311ec4f2017-04-26 22:27:53 -06001819config CMD_BLOB
1820 bool "Enable the 'blob' command"
1821 help
1822 This is used with the Freescale secure boot mechanism.
1823
1824 Freescale's SEC block has built-in Blob Protocol which provides
1825 a method for protecting user-defined data across system power
1826 cycles. SEC block protects data in a data structure called a Blob,
1827 which provides both confidentiality and integrity protection.
1828
1829 Encapsulating data as a blob
1830 Each time that the Blob Protocol is used to protect data, a
1831 different randomly generated key is used to encrypt the data.
1832 This random key is itself encrypted using a key which is derived
1833 from SoC's non-volatile secret key and a 16 bit Key identifier.
1834 The resulting encrypted key along with encrypted data is called a
1835 blob. The non-volatile secure key is available for use only during
1836 secure boot.
1837
1838 During decapsulation, the reverse process is performed to get back
1839 the original data.
1840
1841 Sub-commands:
Michal Simekf751ff52018-07-23 15:55:12 +02001842 blob enc - encapsulating data as a cryptgraphic blob
Simon Glass311ec4f2017-04-26 22:27:53 -06001843 blob dec - decapsulating cryptgraphic blob to get the data
1844
1845 Syntax:
1846
1847 blob enc src dst len km
1848
1849 Encapsulate and create blob of data $len bytes long
1850 at address $src and store the result at address $dst.
1851 $km is the 16 byte key modifier is also required for
1852 generation/use as key for cryptographic operation. Key
1853 modifier should be 16 byte long.
1854
1855 blob dec src dst len km
1856
1857 Decapsulate the blob of data at address $src and
1858 store result of $len byte at addr $dst.
1859 $km is the 16 byte key modifier is also required for
1860 generation/use as key for cryptographic operation. Key
1861 modifier should be 16 byte long.
1862
Simon Glass027608e2017-05-17 03:25:25 -06001863config CMD_HASH
1864 bool "Support 'hash' command"
Simon Glassb22ec7a2017-05-17 09:05:34 -06001865 select HASH
Simon Glass027608e2017-05-17 03:25:25 -06001866 help
1867 This provides a way to hash data in memory using various supported
1868 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1869 saved to memory or to an environment variable. It is also possible
1870 to verify a hash against data in memory.
1871
Michalis Pappasd382d222018-04-13 10:40:57 +03001872config CMD_HVC
1873 bool "Support the 'hvc' command"
1874 depends on ARM_SMCCC
1875 help
1876 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
1877 development and testing.
1878
1879config CMD_SMC
1880 bool "Support the 'smc' command"
1881 depends on ARM_SMCCC
1882 help
1883 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
1884 development and testing.
1885
Daniel Thompsona9e2c672017-05-19 17:26:58 +01001886config HASH_VERIFY
1887 bool "hash -v"
1888 depends on CMD_HASH
1889 help
1890 Add -v option to verify data against a hash.
1891
Miquel Raynal294f82a2018-05-15 11:57:05 +02001892config CMD_TPM_V1
1893 bool
1894
1895config CMD_TPM_V2
1896 bool
Tom Rini124a7ac2018-07-28 09:20:12 -04001897 select CMD_LOG
Miquel Raynal294f82a2018-05-15 11:57:05 +02001898
Simon Glass29499a02016-01-17 20:53:51 -07001899config CMD_TPM
1900 bool "Enable the 'tpm' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02001901 depends on TPM_V1 || TPM_V2
1902 select CMD_TPM_V1 if TPM_V1
1903 select CMD_TPM_V2 if TPM_V2
Simon Glass29499a02016-01-17 20:53:51 -07001904 help
1905 This provides a means to talk to a TPM from the command line. A wide
1906 range of commands if provided - see 'tpm help' for details. The
1907 command requires a suitable TPM on your board and the correct driver
1908 must be enabled.
1909
Miquel Raynal294f82a2018-05-15 11:57:05 +02001910if CMD_TPM
1911
Simon Glass29499a02016-01-17 20:53:51 -07001912config CMD_TPM_TEST
1913 bool "Enable the 'tpm test' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02001914 depends on TPM_V1
Simon Glass29499a02016-01-17 20:53:51 -07001915 help
Miquel Raynal294f82a2018-05-15 11:57:05 +02001916 This provides a a series of tests to confirm that the TPMv1.x is
1917 working correctly. The tests cover initialisation, non-volatile RAM,
1918 extend, global lock and checking that timing is within expectations.
1919 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass29499a02016-01-17 20:53:51 -07001920 for other devices.
1921
Miquel Raynal294f82a2018-05-15 11:57:05 +02001922endif
1923
Simon Glass29499a02016-01-17 20:53:51 -07001924endmenu
1925
Moritz Fischer62b30272016-10-04 17:08:08 -07001926menu "Firmware commands"
1927config CMD_CROS_EC
1928 bool "Enable crosec command"
1929 depends on CROS_EC
1930 default y
1931 help
1932 Enable command-line access to the Chrome OS EC (Embedded
1933 Controller). This provides the 'crosec' command which has
1934 a number of sub-commands for performing EC tasks such as
1935 updating its flash, accessing a small saved context area
1936 and talking to the I2C bus behind the EC (if there is one).
1937endmenu
1938
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001939menu "Filesystem commands"
Marek Behún27cec792017-09-03 17:00:30 +02001940config CMD_BTRFS
1941 bool "Enable the 'btrsubvol' command"
1942 select FS_BTRFS
1943 help
1944 This enables the 'btrsubvol' command to list subvolumes
1945 of a BTRFS filesystem. There are no special commands for
1946 listing BTRFS directories or loading BTRFS files - this
1947 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
1948 when BTRFS is enabled (see FS_BTRFS).
1949
Simon Glass0501e3e2017-04-26 22:27:58 -06001950config CMD_CBFS
1951 bool "Enable the 'cbfs' command"
Simon Glass579b51a2017-04-26 22:27:59 -06001952 depends on FS_CBFS
Simon Glass0501e3e2017-04-26 22:27:58 -06001953 help
1954 Define this to enable support for reading from a Coreboot
1955 filesystem. This is a ROM-based filesystem used for accessing files
1956 on systems that use coreboot as the first boot-loader and then load
1957 U-Boot to actually boot the Operating System. Available commands are
1958 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1959
Simon Glass519805e2017-04-26 22:28:03 -06001960config CMD_CRAMFS
1961 bool "Enable the 'cramfs' command"
Simon Glass690f5092017-04-26 22:28:04 -06001962 depends on FS_CRAMFS
Simon Glass519805e2017-04-26 22:28:03 -06001963 help
1964 This provides commands for dealing with CRAMFS (Compressed ROM
1965 filesystem). CRAMFS is useful when space is tight since files are
1966 compressed. Two commands are provided:
1967
1968 cramfsls - lists files in a cramfs image
1969 cramfsload - loads a file from a cramfs image
1970
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001971config CMD_EXT2
1972 bool "ext2 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001973 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001974 help
1975 Enables EXT2 FS command
1976
1977config CMD_EXT4
1978 bool "ext4 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001979 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001980 help
1981 Enables EXT4 FS command
1982
1983config CMD_EXT4_WRITE
1984 depends on CMD_EXT4
1985 bool "ext4 write command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02001986 select EXT4_WRITE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001987 help
1988 Enables EXT4 FS write command
1989
1990config CMD_FAT
1991 bool "FAT command support"
Sekhar Nori1909a7b2017-06-02 17:53:59 +05301992 select FS_FAT
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001993 help
1994 Support for the FAT fs
1995
1996config CMD_FS_GENERIC
1997 bool "filesystem commands"
1998 help
1999 Enables filesystem commands (e.g. load, ls) that work for multiple
2000 fs types.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002001
Josua Mayerf5ebfe72017-04-24 10:10:45 +02002002config CMD_FS_UUID
2003 bool "fsuuid command"
2004 help
2005 Enables fsuuid command for filesystem UUID.
2006
Simon Glassc4abb4b2017-05-17 03:25:37 -06002007config CMD_JFFS2
2008 bool "jffs2 command"
Simon Glass8c6c7c22017-05-17 03:25:38 -06002009 select FS_JFFS2
Simon Glassc4abb4b2017-05-17 03:25:37 -06002010 help
2011 Enables commands to support the JFFS2 (Journalling Flash File System
2012 version 2) filesystem. This enables fsload, ls and fsinfo which
2013 provide the ability to load files, list directories and obtain
2014 filesystem information.
2015
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002016config CMD_MTDPARTS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002017 bool "MTD partition support"
Miquel Raynald2418202019-10-25 19:39:30 +02002018 depends on MTD
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002019 help
Miquel Raynal007dddc2018-09-29 12:58:30 +02002020 MTD partitioning tool support.
2021 It is strongly encouraged to avoid using this command
2022 anymore along with 'sf', 'nand', 'onenand'. One can still
2023 declare the partitions in the mtdparts environment variable
2024 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002025
Simon Glass66d7db02017-08-04 16:34:30 -06002026config CMD_MTDPARTS_SPREAD
2027 bool "Padd partition size to take account of bad blocks"
2028 depends on CMD_MTDPARTS
2029 help
2030 This enables the 'spread' sub-command of the mtdparts command.
2031 This command will modify the existing mtdparts variable by increasing
2032 the size of the partitions such that 1) each partition's net size is
2033 at least as large as the size specified in the mtdparts variable and
2034 2) each partition starts on a good block.
2035
Alexander Dahl6cae4f42019-10-30 16:53:55 +01002036config CMD_MTDPARTS_SHOW_NET_SIZES
2037 bool "Show net size (w/o bad blocks) of partitions"
2038 depends on CMD_MTDPARTS
2039 help
2040 Adds two columns to the printed partition table showing the
2041 effective usable size of a partition, if bad blocks are taken
2042 into account.
2043
Miquel Raynalf21322f2019-10-03 19:50:25 +02002044config MTDIDS_DEFAULT
2045 string "Default MTD IDs"
Miquel Raynald2418202019-10-25 19:39:30 +02002046 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002047 help
2048 Defines a default MTD IDs list for use with MTD partitions in the
2049 Linux MTD command line partitions format.
2050
2051config MTDPARTS_DEFAULT
2052 string "Default MTD partition scheme"
Miquel Raynald2418202019-10-25 19:39:30 +02002053 depends on MTD || SPI_FLASH
Miquel Raynalf21322f2019-10-03 19:50:25 +02002054 help
2055 Defines a default MTD partitioning scheme in the Linux MTD command
2056 line partitions format
2057
Simon Glassed4ee312017-08-04 16:34:41 -06002058config CMD_REISER
2059 bool "reiser - Access to reiserfs filesystems"
2060 help
2061 This provides two commands which operate on a resierfs filesystem,
2062 commonly used some years ago:
2063
2064 reiserls - list files
2065 reiserload - load a file
2066
Simon Glass19c5caf2017-08-04 16:34:58 -06002067config CMD_YAFFS2
2068 bool "yaffs2 - Access of YAFFS2 filesystem"
2069 depends on YAFFS2
2070 default y
2071 help
2072 This provides commands for accessing a YAFFS2 filesystem. Yet
2073 Another Flash Filesystem 2 is a filesystem designed specifically
2074 for NAND flash. It incorporates bad-block management and ensures
2075 that device writes are sequential regardless of filesystem
2076 activity.
2077
Simon Glassdc82dee2017-08-04 16:35:04 -06002078config CMD_ZFS
2079 bool "zfs - Access of ZFS filesystem"
2080 help
2081 This provides commands to accessing a ZFS filesystem, commonly used
2082 on Solaris systems. Two sub-commands are provided:
2083
2084 zfsls - list files in a directory
2085 zfsload - load a file
2086
2087 See doc/README.zfs for more details.
2088
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002089endmenu
2090
Simon Glass3423f212017-04-26 22:27:52 -06002091menu "Debug commands"
2092
2093config CMD_BEDBUG
2094 bool "bedbug"
2095 help
2096 The bedbug (emBEDded deBUGger) command provides debugging features
2097 for some PowerPC processors. For details please see the
2098 docuemntation in doc/README.beddbug
2099
Simon Glass20ea5632017-04-26 22:28:08 -06002100config CMD_DIAG
2101 bool "diag - Board diagnostics"
2102 help
2103 This command provides access to board diagnostic tests. These are
2104 called Power-on Self Tests (POST). The command allows listing of
2105 available tests and running either all the tests, or specific tests
2106 identified by name.
2107
Simon Glass4c3a6202017-05-17 03:25:39 -06002108config CMD_IRQ
2109 bool "irq - Show information about interrupts"
Heiko Schocher6f90e582017-06-14 05:49:40 +02002110 depends on !ARM && !MIPS && !SH
Simon Glass4c3a6202017-05-17 03:25:39 -06002111 help
2112 This enables two commands:
2113
2114 interrupts - enable or disable interrupts
2115 irqinfo - print device-specific interrupt information
Simon Glassfd9948c2017-05-17 03:25:40 -06002116
2117config CMD_KGDB
2118 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simek9d364412018-10-04 14:26:13 +02002119 depends on PPC
Simon Glassfd9948c2017-05-17 03:25:40 -06002120 help
2121 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2122 over a serial link for debugging purposes. This allows
2123 single-stepping, inspecting variables, etc. This is supported only
2124 on PowerPC at present.
2125
Simon Glass5684f8f2017-12-04 13:48:26 -07002126config CMD_LOG
2127 bool "log - Generation, control and access to logging"
Heinrich Schuchardt74bad682018-04-19 22:02:46 +02002128 select LOG
Simon Glass5684f8f2017-12-04 13:48:26 -07002129 help
2130 This provides access to logging features. It allows the output of
2131 log data to be controlled to a limited extent (setting up the default
Simon Glass14c8a062017-12-04 13:48:27 -07002132 maximum log level for emitting of records). It also provides access
2133 to a command used for testing the log system.
Simon Glass5684f8f2017-12-04 13:48:26 -07002134
Simon Glass126cb792017-08-04 16:34:59 -06002135config CMD_TRACE
2136 bool "trace - Support tracing of function calls and timing"
2137 help
2138 Enables a command to control using of function tracing within
2139 U-Boot. This allows recording of call traces including timing
2140 information. The command can write data to memory for exporting
Simon Glassbfce7fc2019-04-08 13:20:51 -06002141 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glass126cb792017-08-04 16:34:59 -06002142 details.
2143
Igor Opaniuk60291192018-06-03 21:56:39 +03002144config CMD_AVB
2145 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniuke0df0352018-07-17 14:33:25 +03002146 depends on AVB_VERIFY
Igor Opaniuk60291192018-06-03 21:56:39 +03002147 default n
2148 help
2149 Enables a "avb" command to perform verification of partitions using
2150 Android Verified Boot 2.0 functionality. It includes such subcommands:
2151 avb init - initialize avb2 subsystem
2152 avb read_rb - read rollback index
2153 avb write_rb - write rollback index
2154 avb is_unlocked - check device lock state
2155 avb get_uuid - read and print uuid of a partition
2156 avb read_part - read data from partition
2157 avb read_part_hex - read data from partition and output to stdout
2158 avb write_part - write data to partition
2159 avb verify - run full verification chain
Simon Glass3423f212017-04-26 22:27:52 -06002160endmenu
2161
Heiko Schocher09dbb852016-09-21 07:58:19 +02002162config CMD_UBI
2163 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher09dbb852016-09-21 07:58:19 +02002164 select MTD_UBI
2165 help
2166 UBI is a software layer above MTD layer which admits use of LVM-like
2167 logical volumes on top of MTD devices, hides some complexities of
2168 flash chips like wear and bad blocks and provides some other useful
2169 capabilities. Please, consult the MTD web site for more details
2170 (www.linux-mtd.infradead.org). Activate this option if you want
2171 to use U-Boot UBI commands.
Miquel Raynal12f1ff12018-09-29 12:58:29 +02002172 It is also strongly encouraged to also enable CONFIG_MTD to get full
2173 partition support.
Heiko Schocher09dbb852016-09-21 07:58:19 +02002174
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002175config CMD_UBIFS
2176 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard1e6a0962017-03-03 14:53:22 +01002177 depends on CMD_UBI
Michal Simek84f3dec2018-07-23 15:55:13 +02002178 default y if CMD_UBI
Karl Beldan3418eeb2017-07-12 16:11:47 +00002179 select LZO
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002180 help
2181 UBIFS is a file system for flash devices which works on top of UBI.
2182
Simon Glass29499a02016-01-17 20:53:51 -07002183endmenu