blob: e6ba57035e25e14dfc1c8b6c5f97153f273921b7 [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"
Michal Simeka91feae2019-09-25 12:32:41 +020051 default "Zynq> " if ARCH_ZYNQ
Michal Simek3c3886d2019-09-25 12:37:15 +020052 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass72a8cf82016-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 Muellner7ae31fc2019-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 Glass72a8cf82016-01-17 20:53:51 -070069menu "Autoboot options"
70
Masahiro Yamada41598c82016-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 Glass72a8cf82016-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 Glass88fa4be2019-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 Glass72a8cf82016-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 Glass8fc31e22019-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 Glasscf9803a2019-07-20 20:51:25 -0600175config AUTOBOOT_MENU_SHOW
176 bool "Show a menu on boot"
AKASHI Takahirodd2d9892019-09-12 15:31:22 +0900177 depends on CMD_BOOTMENU
Simon Glasscf9803a2019-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 Glass72a8cf82016-01-17 20:53:51 -0700184endmenu
185
Sam Protsenko610eec72017-09-28 12:33:45 -0700186config BUILD_BIN2C
187 bool
188
Simon Glass72a8cf82016-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 Yamada61304db2017-01-30 11:12:07 +0900199config CMD_CONFIG
200 bool "config"
Masahiro Yamada61304db2017-01-30 11:12:07 +0900201 default SANDBOX
Michal Simek5ed063d2018-07-23 15:55:13 +0200202 select BUILD_BIN2C
Masahiro Yamada61304db2017-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 Glass72a8cf82016-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 Yamadad726f222017-01-30 11:12:08 +0900227 select BUILD_BIN2C
Simon Glass72a8cf82016-01-17 20:53:51 -0700228 help
229 Print GPL license text
230
Simon Glass3b65ee32019-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 Leroyfa379222017-08-04 16:34:40 -0600239config CMD_REGINFO
240 bool "reginfo"
241 depends on PPC
242 help
243 Register dump
244
Baruch Siach1c79f2f2020-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 Glass72a8cf82016-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 Ciocalteaecc7fda2019-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 Nguyenab8243e2016-04-21 09:05:23 -0500283config CMD_BOOTZ
284 bool "bootz"
285 help
286 Boot the Linux zImage
287
Masahiro Yamada26959272016-08-12 08:31:16 -0400288config CMD_BOOTI
289 bool "booti"
Atish Patra3cedc972019-05-06 17:49:39 -0700290 depends on ARM64 || RISCV
Masahiro Yamada26959272016-08-12 08:31:16 -0400291 default y
292 help
293 Boot an AArch64 Linux Kernel image from memory.
294
Tom Rini4b0bcfa2019-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 Rini14a2dee2019-12-05 18:46:11 -0500318 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini4b0bcfa2019-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 Takahirofefff632019-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 Graf95b62b22016-11-17 22:40:10 +0100351config CMD_BOOTEFI_HELLO_COMPILE
352 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardt3b4847c2019-11-07 08:05:17 +0100353 depends on CMD_BOOTEFI && !CPU_V7M
Alexander Graf95b62b22016-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 Glassc7ae3df2016-11-07 08:47:08 -0700364config CMD_BOOTEFI_HELLO
365 bool "Allow booting a standard EFI hello world for testing"
Alexander Graf95b62b22016-11-17 22:40:10 +0100366 depends on CMD_BOOTEFI_HELLO_COMPILE
Simon Glassc7ae3df2016-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 Schuchardt623b3a52017-09-15 10:06:11 +0200373source lib/efi_selftest/Kconfig
374
Tom Rini4880b022016-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 Roscab84acf12019-12-24 17:51:06 +0100381config CMD_ADTIMG
382 bool "adtimg"
Sam Protsenkod03e76a2018-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 Protsenko94f6d0d2020-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 Protsenko34b43192020-01-24 17:53:43 +0200397 See doc/android/boot-image.rst for details.
398
Simon Glass72a8cf82016-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 Simek23922e22016-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 Glass72a8cf82016-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 Glass72a8cf82016-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 Glass72c30332017-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 Glass203dc1b2017-08-04 16:34:49 -0600450config CMD_SPL_NAND_OFS
Lukasz Majewskif63c43b2019-05-16 16:01:36 +0200451 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewski7cb179e2019-05-16 16:01:35 +0200452 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Simon Glass203dc1b2017-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 Majewskief9e57d2019-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 Glass3a91a252017-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 Vasutac084322018-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 Glass9b92a8d2017-08-04 16:34:57 -0600483config CMD_THOR_DOWNLOAD
484 bool "thor - TIZEN 'thor' download"
Marek Szyprowski909338c2019-10-02 12:29:08 +0200485 select DFU
Simon Glass9b92a8d2017-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 Glasse7a815f2017-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 Glass72a8cf82016-01-17 20:53:51 -0700504endmenu
505
506menu "Environment commands"
507
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500508config CMD_ASKENV
509 bool "ask for env variable"
510 help
511 Ask for environment variable
512
Simon Glass72a8cf82016-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 Nguyenab8243e2016-04-21 09:05:23 -0500531config CMD_GREPENV
532 bool "search env"
533 help
534 Allow for searching environment variables
535
Simon Glass72a8cf82016-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 Wunderlichcd121bd2019-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 Glass72a8cf82016-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 Glassa55d29d2017-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 Glassffc76582017-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 Takahiro49d81fd2019-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 Takahiro49d81fd2019-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 Ruan8e921202019-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 Glass72a8cf82016-01-17 20:53:51 -0700596endmenu
597
598menu "Memory commands"
599
Mario Six55b25562018-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 Glass72a8cf82016-01-17 20:53:51 -0700606config CMD_CRC32
607 bool "crc32"
608 default y
Michal Simek5ed063d2018-07-23 15:55:13 +0200609 select HASH
Simon Glass72a8cf82016-01-17 20:53:51 -0700610 help
611 Compute CRC32.
612
Daniel Thompson221a9492017-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 Glassa1dc9802017-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 Glassba71be52017-08-04 16:34:51 -0600667config LOOPW
668 bool "loopw"
669 help
670 Infinite write loop on address range
671
Andre Przywarabea79d72017-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 Thompson221a9492017-05-19 17:26:58 +0100679config MD5SUM_VERIFY
Andre Przywarabea79d72017-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 Glassba71be52017-08-04 16:34:51 -0600686config CMD_MEMINFO
687 bool "meminfo"
Daniel Thompson221a9492017-05-19 17:26:58 +0100688 help
Simon Glassba71be52017-08-04 16:34:51 -0600689 Display memory information.
Daniel Thompson221a9492017-05-19 17:26:58 +0100690
Simon Glassba71be52017-08-04 16:34:51 -0600691config CMD_MEMORY
692 bool "md, mm, nm, mw, cp, cmp, base, loop"
693 default y
Daniel Thompson221a9492017-05-19 17:26:58 +0100694 help
Simon Glassba71be52017-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 Glass72a8cf82016-01-17 20:53:51 -0700704
Adam Ford78f28772019-08-14 07:54:34 -0500705config MX_CYCLIC
706 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 Hiblot803e1a32019-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 Glass72a8cf82016-01-17 20:53:51 -0700726config CMD_MEMTEST
727 bool "memtest"
728 help
729 Simple RAM read/write test.
730
Mario Sixe89f8aa2018-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 Glass72a8cf82016-01-17 20:53:51 -0700740config CMD_MX_CYCLIC
741 bool "mdc, mwc"
742 help
743 mdc - memory display cyclic
744 mwc - memory write cyclic
745
Simon Glassba71be52017-08-04 16:34:51 -0600746config CMD_SHA1SUM
747 bool "sha1sum"
748 select SHA1
Simon Glass72a8cf82016-01-17 20:53:51 -0700749 help
Simon Glassba71be52017-08-04 16:34:51 -0600750 Compute SHA1 checksum.
751
752config SHA1SUM_VERIFY
753 bool "sha1sum -v"
754 depends on CMD_SHA1SUM
755 help
756 Add -v option to verify data against a SHA1 checksum.
Simon Glass72a8cf82016-01-17 20:53:51 -0700757
Simon Glass00805d72017-08-04 16:34:52 -0600758config CMD_STRINGS
759 bool "strings - display strings in memory"
760 help
761 This works similarly to the Unix 'strings' command except that it
762 works with a memory range. String of printable characters found
763 within the range are displayed. The minimum number of characters
764 for a sequence to be considered a string can be provided.
765
Simon Glassee7c0e72017-05-17 03:25:43 -0600766endmenu
767
768menu "Compression commands"
769
770config CMD_LZMADEC
771 bool "lzmadec"
Tom Rini99e46df2017-09-29 14:32:44 -0400772 default y if CMD_BOOTI
Simon Glassee7c0e72017-05-17 03:25:43 -0600773 select LZMA
774 help
775 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
776 image from memory.
777
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900778config CMD_UNZIP
779 bool "unzip"
Tom Rini99e46df2017-09-29 14:32:44 -0400780 default y if CMD_BOOTI
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900781 help
782 Uncompress a zip-compressed memory region.
783
784config CMD_ZIP
785 bool "zip"
786 help
787 Compress a memory region with zlib deflate method.
788
Simon Glass72a8cf82016-01-17 20:53:51 -0700789endmenu
790
791menu "Device access commands"
792
Simon Glass0c19b4d2017-08-04 16:34:28 -0600793config CMD_ARMFLASH
794 #depends on FLASH_CFI_DRIVER
795 bool "armflash"
796 help
797 ARM Ltd reference designs flash partition access
798
Neil Armstrong051ebe32018-04-27 15:17:57 +0200799config CMD_ADC
800 bool "adc - Access Analog to Digital Converters info and data"
801 select ADC
802 select DM_REGULATOR
803 help
804 Shows ADC device info and permit printing one-shot analog converted
805 data from a named Analog to Digital Converter.
806
Eugeniu Roscadb7b7a02019-05-23 17:32:22 +0200807config CMD_BCB
808 bool "bcb"
809 depends on MMC
810 depends on PARTITIONS
811 help
812 Read/modify/write the fields of Bootloader Control Block, usually
813 stored on the flash "misc" partition with its structure defined in:
814 https://android.googlesource.com/platform/bootable/recovery/+/master/
815 bootloader_message/include/bootloader_message/bootloader_message.h
816
817 Some real-life use-cases include (but are not limited to):
818 - Determine the "boot reason" (and act accordingly):
819 https://source.android.com/devices/bootloader/boot-reason
820 - Get/pass a list of commands from/to recovery:
821 https://android.googlesource.com/platform/bootable/recovery
822 - Inspect/dump the contents of the BCB fields
823
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +0200824config CMD_BIND
825 bool "bind/unbind - Bind or unbind a device to/from a driver"
826 depends on DM
827 help
828 Bind or unbind a device to/from a driver from the command line.
829 This is useful in situations where a device may be handled by several
830 drivers. For example, this can be used to bind a UDC to the usb ether
831 gadget driver from the command line.
832
Simon Glassd3156282017-04-26 22:28:02 -0600833config CMD_CLK
834 bool "clk - Show clock frequencies"
835 help
836 (deprecated)
837 Shows clock frequences by calling a sock_clk_dump() hook function.
838 This is depreated in favour of using the CLK uclass and accessing
839 clock values from associated drivers. However currently no command
840 exists for this.
841
Simon Glass72a8cf82016-01-17 20:53:51 -0700842config CMD_DEMO
843 bool "demo - Demonstration commands for driver model"
844 depends on DM
845 help
846 Provides a 'demo' command which can be used to play around with
847 driver model. To use this properly you will need to enable one or
848 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
849 Otherwise you will always get an empty list of devices. The demo
850 devices are defined in the sandbox device tree, so the easiest
851 option is to use sandbox and pass the -d point to sandbox's
852 u-boot.dtb file.
853
Simon Glass0c19b4d2017-08-04 16:34:28 -0600854config CMD_DFU
855 bool "dfu"
Marek Vasut0f44d332018-02-16 16:41:17 +0100856 select DFU
Simon Glass0c19b4d2017-08-04 16:34:28 -0600857 help
858 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass00fd59d2017-08-04 16:35:06 -0600859 class device via USB. This command requires that the "dfu_alt_info"
860 environment variable be set and define the alt settings to expose to
861 the host.
Simon Glass0c19b4d2017-08-04 16:34:28 -0600862
863config CMD_DM
864 bool "dm - Access to driver model information"
865 depends on DM
Simon Glass0c19b4d2017-08-04 16:34:28 -0600866 help
867 Provides access to driver model data structures and information,
868 such as a list of devices, list of uclasses and the state of each
869 device (e.g. activated). This is not required for operation, but
870 can be useful to see the state of driver model for debugging or
871 interest.
872
Alex Kiernan312a10f2018-05-29 15:30:39 +0000873config CMD_FASTBOOT
874 bool "fastboot - Android fastboot support"
875 depends on FASTBOOT
876 help
877 This enables the command "fastboot" which enables the Android
878 fastboot mode for the platform. Fastboot is a protocol for
879 downloading images, flashing and device control used on
Alex Kiernanf73a7df2018-05-29 15:30:53 +0000880 Android devices. Fastboot requires either the network stack
881 enabled or support for acting as a USB device.
Alex Kiernan312a10f2018-05-29 15:30:39 +0000882
Sam Protsenko586a1bf2020-01-24 17:53:44 +0200883 See doc/android/fastboot.rst for more information.
Alex Kiernan312a10f2018-05-29 15:30:39 +0000884
Simon Glass0c19b4d2017-08-04 16:34:28 -0600885config CMD_FLASH
886 bool "flinfo, erase, protect"
887 default y
Miquel Raynalff102c52019-10-25 19:39:30 +0200888 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -0600889 help
890 NOR flash support.
891 flinfo - print FLASH memory information
892 erase - FLASH memory
893 protect - enable or disable FLASH write protection
894
895config CMD_FPGA
896 bool "fpga"
Tuomas Tynkkynena4fa8112018-01-27 20:28:40 +0200897 depends on FPGA
Simon Glass0c19b4d2017-08-04 16:34:28 -0600898 default y
899 help
900 FPGA support.
901
902config CMD_FPGA_LOADBP
903 bool "fpga loadbp - load partial bitstream (Xilinx only)"
904 depends on CMD_FPGA
905 help
906 Supports loading an FPGA device from a bitstream buffer containing
907 a partial bitstream.
908
909config CMD_FPGA_LOADFS
910 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
911 depends on CMD_FPGA
912 help
913 Supports loading an FPGA device from a FAT filesystem.
914
915config CMD_FPGA_LOADMK
916 bool "fpga loadmk - load bitstream from image"
917 depends on CMD_FPGA
918 help
919 Supports loading an FPGA device from a image generated by mkimage.
920
921config CMD_FPGA_LOADP
922 bool "fpga loadp - load partial bitstream"
923 depends on CMD_FPGA
924 help
925 Supports loading an FPGA device from a bitstream buffer containing
926 a partial bitstream.
927
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +0530928config CMD_FPGA_LOAD_SECURE
929 bool "fpga loads - loads secure bitstreams (Xilinx only)"
930 depends on CMD_FPGA
931 help
932 Enables the fpga loads command which is used to load secure
933 (authenticated or encrypted or both) bitstreams on to FPGA.
934
Simon Glass0c19b4d2017-08-04 16:34:28 -0600935config CMD_FPGAD
936 bool "fpgad - dump FPGA registers"
937 help
938 (legacy, needs conversion to driver model)
939 Provides a way to dump FPGA registers by calling the board-specific
940 fpga_get_reg() function. This functions similarly to the 'md'
941 command.
942
943config CMD_FUSE
944 bool "fuse - support for the fuse subssystem"
945 help
946 (deprecated - needs conversion to driver model)
947 This allows reading, sensing, programming or overriding fuses
948 which control the behaviour of the device. The command uses the
949 fuse_...() API.
950
951config CMD_GPIO
952 bool "gpio"
953 help
954 GPIO support.
955
956config CMD_GPT
957 bool "GPT (GUID Partition Table) command"
Simon Glass0c19b4d2017-08-04 16:34:28 -0600958 select EFI_PARTITION
Adam Ford1811a922018-02-06 12:43:56 -0600959 select HAVE_BLOCK_DEVICE
Michal Simek5ed063d2018-07-23 15:55:13 +0200960 select PARTITION_UUIDS
Maxime Ripard47738ac2017-08-24 11:52:32 +0200961 imply RANDOM_UUID
Simon Glass0c19b4d2017-08-04 16:34:28 -0600962 help
963 Enable the 'gpt' command to ready and write GPT style partition
964 tables.
965
Maxime Ripard47738ac2017-08-24 11:52:32 +0200966config RANDOM_UUID
967 bool "GPT Random UUID generation"
Adam Forda451bc22018-02-06 12:14:28 -0600968 select LIB_UUID
Maxime Ripard47738ac2017-08-24 11:52:32 +0200969 help
970 Enable the generation of partitions with random UUIDs if none
971 are provided.
972
Simon Glass0c19b4d2017-08-04 16:34:28 -0600973config CMD_GPT_RENAME
974 bool "GPT partition renaming commands"
975 depends on CMD_GPT
976 help
977 Enables the 'gpt' command to interchange names on two GPT
978 partitions via the 'gpt swap' command or to rename single
979 partitions via the 'rename' command.
980
Simon Glass75eb9972017-05-17 03:25:29 -0600981config CMD_IDE
982 bool "ide - Support for IDE drivers"
Simon Glassfc843a02017-05-17 03:25:30 -0600983 select IDE
Simon Glass75eb9972017-05-17 03:25:29 -0600984 help
985 Provides an 'ide' command which allows accessing the IDE drive,
986 reseting the IDE interface, printing the partition table and
987 geting device info. It also enables the 'diskboot' command which
988 permits booting from an IDE drive.
989
Simon Glass594e8d12017-05-17 03:25:34 -0600990config CMD_IO
991 bool "io - Support for performing I/O accesses"
992 help
993 Provides an 'iod' command to display I/O space and an 'iow' command
994 to write values to the I/O space. This can be useful for manually
995 checking the state of devices during boot when debugging device
996 drivers, etc.
997
Simon Glass7d0f5c12017-05-17 03:25:36 -0600998config CMD_IOTRACE
999 bool "iotrace - Support for tracing I/O activity"
1000 help
1001 Provides an 'iotrace' command which supports recording I/O reads and
1002 writes in a trace buffer in memory . It also maintains a checksum
1003 of the trace records (even if space is exhausted) so that the
1004 sequence of I/O accesses can be verified.
1005
1006 When debugging drivers it is useful to see what I/O accesses were
1007 done and in what order.
1008
1009 Even if the individual accesses are of little interest it can be
1010 useful to verify that the access pattern is consistent each time
1011 an operation is performed. In this case a checksum can be used to
1012 characterise the operation of a driver. The checksum can be compared
1013 across different runs of the operation to verify that the driver is
1014 working properly.
1015
1016 In particular, when performing major refactoring of the driver, where
1017 the access pattern should not change, the checksum provides assurance
1018 that the refactoring work has not broken the driver.
1019
1020 This works by sneaking into the io.h heder for an architecture and
1021 redirecting I/O accesses through iotrace's tracing mechanism.
1022
1023 For now no commands are provided to examine the trace buffer. The
1024 format is fairly simple, so 'md' is a reasonable substitute.
1025
1026 Note: The checksum feature is only useful for I/O regions where the
1027 contents do not change outside of software control. Where this is not
1028 suitable you can fall back to manually comparing the addresses. It
1029 might be useful to enhance tracing to only checksum the accesses and
1030 not the data read/written.
1031
Simon Glass0c19b4d2017-08-04 16:34:28 -06001032config CMD_I2C
1033 bool "i2c"
1034 help
1035 I2C support.
1036
Eugen Hristevd05266f2018-09-18 10:35:33 +03001037config CMD_W1
1038 depends on W1
1039 default y if W1
1040 bool "w1 - Support for Dallas 1-Wire protocol"
1041 help
1042 Dallas 1-wire protocol support
1043
Simon Glass72a8cf82016-01-17 20:53:51 -07001044config CMD_LOADB
1045 bool "loadb"
1046 default y
1047 help
1048 Load a binary file over serial line.
1049
1050config CMD_LOADS
1051 bool "loads"
1052 default y
1053 help
1054 Load an S-Record file over serial line
1055
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001056config CMD_MMC
1057 bool "mmc"
1058 help
1059 MMC memory mapped support.
1060
Alex Kiernan5a7b11e2018-05-08 04:43:31 +00001061config CMD_MMC_RPMB
1062 bool "Enable support for RPMB in the mmc command"
1063 depends on CMD_MMC
1064 help
1065 Enable the commands for reading, writing and programming the
1066 key for the Replay Protection Memory Block partition in eMMC.
1067
Alex Kiernanc232d142018-05-29 15:30:52 +00001068config CMD_MMC_SWRITE
1069 bool "mmc swrite"
1070 depends on CMD_MMC && MMC_WRITE
1071 select IMAGE_SPARSE
1072 help
1073 Enable support for the "mmc swrite" command to write Android sparse
1074 images to eMMC.
1075
Miquel Raynal5db66b32018-09-29 12:58:28 +02001076config CMD_MTD
1077 bool "mtd"
Miquel Raynalff102c52019-10-25 19:39:30 +02001078 depends on MTD
Miquel Raynal5db66b32018-09-29 12:58:28 +02001079 select MTD_PARTITIONS
1080 help
1081 MTD commands support.
1082
Simon Glass72a8cf82016-01-17 20:53:51 -07001083config CMD_NAND
1084 bool "nand"
Maxime Ripard522c2822017-03-03 15:13:30 +01001085 default y if NAND_SUNXI
Miquel Raynalff102c52019-10-25 19:39:30 +02001086 depends on MTD_RAW_NAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001087 help
1088 NAND support.
1089
Boris Brezillone915d202017-02-27 18:22:07 +01001090if CMD_NAND
1091config CMD_NAND_TRIMFFS
1092 bool "nand write.trimffs"
Hans de Goeded482a8d2017-02-27 18:22:10 +01001093 default y if ARCH_SUNXI
Boris Brezillone915d202017-02-27 18:22:07 +01001094 help
1095 Allows one to skip empty pages when flashing something on a NAND.
1096
1097config CMD_NAND_LOCK_UNLOCK
1098 bool "nand lock/unlock"
1099 help
1100 NAND locking support.
1101
1102config CMD_NAND_TORTURE
1103 bool "nand torture"
1104 help
1105 NAND torture support.
1106
1107endif # CMD_NAND
1108
Zhikang Zhang0adc38b2017-08-03 02:30:59 -07001109config CMD_NVME
1110 bool "nvme"
1111 depends on NVME
1112 default y if NVME
1113 help
1114 NVM Express device support
1115
Simon Glass978f0852017-08-04 16:34:31 -06001116config CMD_ONENAND
1117 bool "onenand - access to onenand device"
Miquel Raynalff102c52019-10-25 19:39:30 +02001118 depends on MTD
Simon Glass978f0852017-08-04 16:34:31 -06001119 help
1120 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1121 various useful features. This command allows reading, writing,
1122 and erasing blocks. It allso provides a way to show and change
1123 bad blocks, and test the device.
1124
Mario Six3bf65cb2018-09-27 09:19:34 +02001125config CMD_OSD
1126 bool "osd"
1127 help
1128 Enable the 'osd' command which allows to query information from and
1129 write text data to a on-screen display (OSD) device; a virtual device
1130 associated with a display capable of displaying a text overlay on the
1131 display it's associated with..
1132
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001133config CMD_PART
1134 bool "part"
Adam Ford1811a922018-02-06 12:43:56 -06001135 select HAVE_BLOCK_DEVICE
Michal Simek5ed063d2018-07-23 15:55:13 +02001136 select PARTITION_UUIDS
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001137 help
1138 Read and display information about the partition table on
1139 various media.
1140
Simon Glass6500ec72017-08-04 16:34:34 -06001141config CMD_PCI
1142 bool "pci - Access PCI devices"
1143 help
1144 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1145 used on some devices to allow the CPU to communicate with its
1146 peripherals. Sub-commands allow bus enumeration, displaying and
1147 changing configuration space and a few other features.
1148
Patrice Chotardd5a83132018-10-24 14:10:17 +02001149config CMD_PINMUX
1150 bool "pinmux - show pins muxing"
1151 default y if PINCTRL
1152 help
1153 Parse all available pin-controllers and show pins muxing. This
1154 is useful for debug purpoer to check the pin muxing and to know if
1155 a pin is configured as a GPIO or as an alternate function.
1156
Adam Ford577c40a2018-09-09 07:05:57 -05001157config CMD_POWEROFF
1158 bool "poweroff"
1159 help
1160 Poweroff/Shutdown the system
1161
Simon Glassb75dfd22017-08-04 16:34:39 -06001162config CMD_READ
1163 bool "read - Read binary data from a partition"
1164 help
1165 Provides low-level access to the data in a partition.
1166
Simon Glass72a8cf82016-01-17 20:53:51 -07001167config CMD_REMOTEPROC
1168 bool "remoteproc"
1169 depends on REMOTEPROC
1170 help
1171 Support for Remote Processor control
1172
Simon Glass3bf926c2017-06-14 21:28:24 -06001173config CMD_SATA
1174 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -06001175 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -06001176 help
1177 SATA (Serial Advanced Technology Attachment) is a serial bus
1178 standard for connecting to hard drives and other storage devices.
1179 This command provides information about attached devices and allows
1180 reading, writing and other operations.
1181
1182 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1183 Attachment, where AT refers to an IBM AT (Advanced Technology)
1184 computer released in 1984.
1185
Simon Glass15dc63d2017-08-04 16:34:43 -06001186config CMD_SAVES
1187 bool "saves - Save a file over serial in S-Record format"
1188 help
1189 Provides a way to save a binary file using the Motorola S-Record
1190 format over the serial line.
1191
Heinrich Schuchardt0c3fecd2018-02-14 08:05:44 +01001192config CMD_SCSI
1193 bool "scsi - Access to SCSI devices"
1194 default y if SCSI
1195 help
1196 This provides a 'scsi' command which provides access to SCSI (Small
1197 Computer System Interface) devices. The command provides a way to
1198 scan the bus, reset the bus, read and write data and get information
1199 about devices.
1200
Simon Glassefce2442017-08-04 16:34:45 -06001201config CMD_SDRAM
1202 bool "sdram - Print SDRAM configuration information"
1203 help
1204 Provides information about attached SDRAM. This assumed that the
1205 SDRAM has an EEPROM with information that can be read using the
1206 I2C bus. This is only available on some boards.
1207
Simon Glass0c19b4d2017-08-04 16:34:28 -06001208config CMD_SF
1209 bool "sf"
Tom Rinia4298dd2019-05-29 17:01:28 -04001210 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Tekic2af7fb2019-10-16 17:59:42 +05301211 default y if DM_SPI_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001212 help
1213 SPI Flash support
1214
Simon Glass719d36e2017-08-04 16:34:46 -06001215config CMD_SF_TEST
1216 bool "sf test - Allow testing of SPI flash"
Tom Rinia4298dd2019-05-29 17:01:28 -04001217 depends on CMD_SF
Simon Glass719d36e2017-08-04 16:34:46 -06001218 help
1219 Provides a way to test that SPI flash is working correctly. The
1220 test is destructive, in that an area of SPI flash must be provided
1221 for the test to use. Performance information is also provided,
1222 measuring the performance of reading, writing and erasing in
1223 Mbps (Million Bits Per Second). This value should approximately
1224 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1225 everything is working properly.
1226
Simon Glass0c19b4d2017-08-04 16:34:28 -06001227config CMD_SPI
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001228 bool "sspi - Command to access spi device"
Tom Rinia4298dd2019-05-29 17:01:28 -04001229 depends on SPI
Simon Glass0c19b4d2017-08-04 16:34:28 -06001230 help
1231 SPI utility command.
1232
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001233config DEFAULT_SPI_BUS
1234 int "default spi bus used by sspi command"
1235 depends on CMD_SPI
1236 default 0
1237
1238config DEFAULT_SPI_MODE
1239 hex "default spi mode used by sspi command (see include/spi.h)"
1240 depends on CMD_SPI
1241 default 0
1242
Simon Glass5605aa82017-08-04 16:35:00 -06001243config CMD_TSI148
1244 bool "tsi148 - Command to access tsi148 device"
1245 help
1246 This provides various sub-commands to initialise and configure the
1247 Turndra tsi148 device. See the command help for full details.
1248
Faiz Abbasa539c8b2019-10-15 18:24:40 +05301249config CMD_UFS
1250 bool "Enable UFS - Universal Flash Subsystem commands"
1251 depends on UFS
1252 help
1253 "This provides commands to initialise and configure universal flash
1254 subsystem devices"
1255
Simon Glass2a242e32017-08-04 16:35:01 -06001256config CMD_UNIVERSE
1257 bool "universe - Command to set up the Turndra Universe controller"
1258 help
1259 This allows setting up the VMEbus provided by this controller.
1260 See the command help for full details.
1261
Simon Glass0c19b4d2017-08-04 16:34:28 -06001262config CMD_USB
1263 bool "usb"
Adam Ford1811a922018-02-06 12:43:56 -06001264 select HAVE_BLOCK_DEVICE
Simon Glass0c19b4d2017-08-04 16:34:28 -06001265 help
1266 USB support.
1267
Stefan Agner2f005692017-08-16 11:00:53 -07001268config CMD_USB_SDP
1269 bool "sdp"
1270 select USB_FUNCTION_SDP
1271 help
1272 Enables the command "sdp" which is used to have U-Boot emulating the
1273 Serial Download Protocol (SDP) via USB.
Michal Simek6e7bdde2018-07-23 15:55:12 +02001274
Eddie Cai453c95e2017-12-15 08:17:11 +08001275config CMD_ROCKUSB
1276 bool "rockusb"
1277 depends on USB_FUNCTION_ROCKUSB
1278 help
Michal Simek6e7bdde2018-07-23 15:55:12 +02001279 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai453c95e2017-12-15 08:17:11 +08001280 read/write info, image to/from devices. This enable rockusb command
1281 support to communication with rockusb device. for more detail about
1282 this command, please read doc/README.rockusb.
Stefan Agner2f005692017-08-16 11:00:53 -07001283
Simon Glass0c19b4d2017-08-04 16:34:28 -06001284config CMD_USB_MASS_STORAGE
1285 bool "UMS usb mass storage"
Lukasz Majewskie4d46042018-01-29 19:28:02 +01001286 select USB_FUNCTION_MASS_STORAGE
Simon Glass0c19b4d2017-08-04 16:34:28 -06001287 help
1288 USB mass storage support
1289
Tuomas Tynkkynen78e12902018-10-15 02:21:12 -07001290config CMD_VIRTIO
1291 bool "virtio"
1292 depends on VIRTIO
1293 default y if VIRTIO
1294 help
1295 VirtIO block device support
1296
Michael Walle82a00be2019-04-06 02:24:02 +02001297config CMD_WDT
1298 bool "wdt"
1299 depends on WDT
1300 help
1301 This provides commands to control the watchdog timer devices.
1302
Mario Six37c4a5f2018-08-09 14:51:21 +02001303config CMD_AXI
1304 bool "axi"
1305 depends on AXI
1306 help
1307 Enable the command "axi" for accessing AXI (Advanced eXtensible
1308 Interface) busses, a on-chip interconnect specification for managing
1309 functional blocks in SoC designs, which is also often used in designs
1310 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass72a8cf82016-01-17 20:53:51 -07001311endmenu
1312
1313
1314menu "Shell scripting commands"
1315
1316config CMD_ECHO
1317 bool "echo"
1318 default y
1319 help
1320 Echo args to console
1321
1322config CMD_ITEST
1323 bool "itest"
1324 default y
1325 help
1326 Return true/false on integer compare.
1327
1328config CMD_SOURCE
1329 bool "source"
1330 default y
1331 help
1332 Run script from memory
1333
1334config CMD_SETEXPR
1335 bool "setexpr"
1336 default y
1337 help
1338 Evaluate boolean and math expressions and store the result in an env
1339 variable.
1340 Also supports loading the value at a memory location into a variable.
1341 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1342
1343endmenu
1344
Ruslan Trofymenko17030c72019-07-05 15:37:33 +03001345menu "Android support commands"
1346
1347config CMD_AB_SELECT
1348 bool "ab_select"
1349 default n
1350 depends on ANDROID_AB
1351 help
1352 On Android devices with more than one boot slot (multiple copies of
1353 the kernel and system images) this provides a command to select which
1354 slot should be used to boot from and register the boot attempt. This
1355 is used by the new A/B update model where one slot is updated in the
1356 background while running from the other slot.
1357
1358endmenu
1359
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001360if NET
1361
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001362menuconfig CMD_NET
1363 bool "Network commands"
1364 default y
Adam Fordd7869b22018-07-20 23:03:57 -05001365 imply NETDEVICES
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001366
1367if CMD_NET
1368
1369config CMD_BOOTP
1370 bool "bootp"
Simon Glass72a8cf82016-01-17 20:53:51 -07001371 default y
1372 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001373 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001374
Joe Hershbergere88b2562018-04-13 15:26:33 -05001375config CMD_DHCP
1376 bool "dhcp"
1377 depends on CMD_BOOTP
1378 help
1379 Boot image via network using DHCP/TFTP protocol
1380
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001381config BOOTP_BOOTPATH
Joe Hershberger8df69d92018-04-13 15:26:34 -05001382 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001383 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001384 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001385 help
1386 Even though the config is called BOOTP_BOOTPATH, it stores the
1387 path in the variable 'rootpath'.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001388
1389config BOOTP_DNS
Joe Hershberger8df69d92018-04-13 15:26:34 -05001390 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001391 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001392 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001393 help
1394 The primary DNS server is stored as 'dnsip'. If two servers are
1395 returned, you must set BOOTP_DNS2 to store that second server IP
1396 also.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001397
Joe Hershberger80449c02018-04-13 15:26:35 -05001398config BOOTP_DNS2
1399 bool "Store 'dnsip2' from BOOTP/DHCP server"
1400 depends on BOOTP_DNS
1401 help
1402 If a DHCP client requests the DNS server IP from a DHCP server,
1403 it is possible that more than one DNS serverip is offered to the
1404 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1405 server IP will be stored in the additional environment
1406 variable "dnsip2". The first DNS serverip is always
1407 stored in the variable "dnsip", when BOOTP_DNS is defined.
1408
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001409config BOOTP_GATEWAY
Joe Hershberger8df69d92018-04-13 15:26:34 -05001410 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001411 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001412 depends on CMD_BOOTP
1413
1414config BOOTP_HOSTNAME
Joe Hershberger8df69d92018-04-13 15:26:34 -05001415 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001416 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001417 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001418 help
1419 The name may or may not be qualified with the local domain name.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001420
Alexander Grafbdce3402018-06-15 10:29:28 +02001421config BOOTP_PREFER_SERVERIP
1422 bool "serverip variable takes precedent over DHCP server IP."
1423 depends on CMD_BOOTP
1424 help
1425 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1426
1427 With this option enabled, the 'serverip' variable in the environment
1428 takes precedence over DHCP server IP and will only be set by the DHCP
1429 server if not already set in the environment.
1430
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001431config BOOTP_SUBNETMASK
Joe Hershberger8df69d92018-04-13 15:26:34 -05001432 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001433 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001434 depends on CMD_BOOTP
1435
Chris Packham9b23c732018-05-03 20:19:02 +12001436config BOOTP_NTPSERVER
1437 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1438 depends on CMD_BOOTP
1439
Ramon Fried3eaac632019-07-18 21:43:30 +03001440config CMD_PCAP
1441 bool "pcap capture"
1442 help
1443 Selecting this will allow capturing all Ethernet packets and store
1444 them in physical memory in a PCAP formated file,
1445 later to be analyzed by PCAP reader application (IE. WireShark).
1446
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001447config BOOTP_PXE
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001448 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001449 default y
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001450 depends on CMD_BOOTP && CMD_PXE
1451 help
1452 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001453
1454config BOOTP_PXE_CLIENTARCH
1455 hex
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001456 depends on BOOTP_PXE
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001457 default 0x16 if ARM64
1458 default 0x15 if ARM
1459 default 0 if X86
1460
1461config BOOTP_VCI_STRING
1462 string
1463 depends on CMD_BOOTP
Michal Simek4bbd6b12018-04-26 18:21:29 +05301464 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001465 default "U-Boot.armv8" if ARM64
1466 default "U-Boot.arm" if ARM
1467 default "U-Boot"
1468
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001469config CMD_TFTPBOOT
1470 bool "tftpboot"
1471 default y
1472 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001473 tftpboot - boot image via network using TFTP protocol
1474
1475config CMD_TFTPPUT
1476 bool "tftp put"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001477 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001478 help
1479 TFTP put command, for uploading files to a server
1480
1481config CMD_TFTPSRV
1482 bool "tftpsrv"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001483 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001484 help
1485 Act as a TFTP server and boot the first received file
1486
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001487config NET_TFTP_VARS
1488 bool "Control TFTP timeout and count through environment"
1489 depends on CMD_TFTPBOOT
1490 default y
1491 help
1492 If set, allows controlling the TFTP timeout through the
1493 environment variable tftptimeout, and the TFTP maximum
1494 timeout count through the variable tftptimeoutcountmax.
1495 If unset, timeout and maximum are hard-defined as 1 second
1496 and 10 timouts per TFTP transfer.
1497
Simon Glass72a8cf82016-01-17 20:53:51 -07001498config CMD_RARP
1499 bool "rarpboot"
1500 help
1501 Boot image via network using RARP/TFTP protocol
1502
Simon Glass72a8cf82016-01-17 20:53:51 -07001503config CMD_NFS
1504 bool "nfs"
1505 default y
1506 help
1507 Boot image via network using NFS protocol.
1508
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001509config CMD_MII
1510 bool "mii"
Ramon Fried7d9701d2019-09-13 18:25:03 +03001511 imply CMD_MDIO
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001512 help
Ramon Fried7d9701d2019-09-13 18:25:03 +03001513 If set, allows 802.3(clause 22) MII Management functions interface access
1514 The management interface specified in Clause 22 provides
1515 a simple, two signal, serial interface to connect a
1516 Station Management entity and a managed PHY for providing access
1517 to management parameters and services.
1518 The interface is referred to as the MII management interface.
1519
1520config CMD_MDIO
1521 bool "mdio"
1522 depends on PHYLIB
1523 help
1524 If set, allows Enable 802.3(clause 45) MDIO interface registers access
1525 The MDIO interface is orthogonal to the MII interface and extends
1526 it by adding access to more registers through indirect addressing.
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001527
Simon Glass72a8cf82016-01-17 20:53:51 -07001528config CMD_PING
1529 bool "ping"
1530 help
1531 Send ICMP ECHO_REQUEST to network host
1532
1533config CMD_CDP
1534 bool "cdp"
1535 help
1536 Perform CDP network configuration
1537
1538config CMD_SNTP
1539 bool "sntp"
1540 help
1541 Synchronize RTC via network
1542
1543config CMD_DNS
1544 bool "dns"
1545 help
1546 Lookup the IP of a hostname
1547
1548config CMD_LINK_LOCAL
1549 bool "linklocal"
Joe Hershberger6f0dc0c2018-04-30 12:45:22 -05001550 select LIB_RAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001551 help
1552 Acquire a network IP address using the link-local protocol
1553
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001554endif
1555
Simon Glassef072202017-05-17 03:25:17 -06001556config CMD_ETHSW
1557 bool "ethsw"
1558 help
1559 Allow control of L2 Ethernet switch commands. These are supported
1560 by the vsc9953 Ethernet driver at present. Sub-commands allow
1561 operations such as enabling / disabling a port and
1562 viewing/maintaining the filtering database (FDB)
1563
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001564config CMD_PXE
1565 bool "pxe"
1566 select MENU
1567 help
1568 Boot image via network using PXE protocol
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001569
Lothar Feltend8970da2018-06-22 22:29:54 +02001570config CMD_WOL
1571 bool "wol"
1572 help
1573 Wait for wake-on-lan Magic Packet
1574
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001575endif
Simon Glass72a8cf82016-01-17 20:53:51 -07001576
1577menu "Misc commands"
1578
Simon Glass0f710252017-04-26 22:27:55 -06001579config CMD_BMP
1580 bool "Enable 'bmp' command"
1581 depends on LCD || DM_VIDEO || VIDEO
1582 help
Andrius Å tikonas60a9aeb2019-09-23 22:43:41 +01001583 This provides a way to obtain information about a BMP-format image
Simon Glass0f710252017-04-26 22:27:55 -06001584 and to display it. BMP (which presumably stands for BitMaP) is a
1585 file format defined by Microsoft which supports images of various
1586 depths, formats and compression methods. Headers on the file
1587 determine the formats used. This command can be used by first loading
1588 the image into RAM, then using this command to look at it or display
1589 it.
1590
Alex Kiernanb11ed7d2018-05-12 05:49:47 +00001591config CMD_BOOTCOUNT
1592 bool "bootcount"
1593 depends on BOOTCOUNT_LIMIT
1594 help
1595 Enable the bootcount command, which allows interrogation and
1596 reset of the bootcounter.
1597
Simon Glass4893e342017-04-26 22:27:56 -06001598config CMD_BSP
1599 bool "Enable board-specific commands"
1600 help
1601 (deprecated: instead, please define a Kconfig option for each command)
1602
1603 Some boards have board-specific commands which are only enabled
1604 during developemnt and need to be turned off for production. This
1605 option provides a way to control this. The commands that are enabled
1606 vary depending on the board.
1607
Tomas Melincd3d4882016-11-25 11:01:03 +02001608config CMD_BKOPS_ENABLE
1609 bool "mmc bkops enable"
1610 depends on CMD_MMC
1611 default n
1612 help
1613 Enable command for setting manual background operations handshake
1614 on a eMMC device. The feature is optionally available on eMMC devices
1615 conforming to standard >= 4.41.
1616
Eric Nelsone40cf342016-03-28 10:05:44 -07001617config CMD_BLOCK_CACHE
1618 bool "blkcache - control and stats for block cache"
1619 depends on BLOCK_CACHE
1620 default y if BLOCK_CACHE
1621 help
1622 Enable the blkcache command, which can be used to control the
1623 operation of the cache functions.
1624 This is most useful when fine-tuning the operation of the cache
1625 during development, but also allows the cache to be disabled when
1626 it might hurt performance (e.g. when using the ums command).
1627
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001628config CMD_CACHE
1629 bool "icache or dcache"
1630 help
1631 Enable the "icache" and "dcache" commands
1632
Heinrich Schuchardt29cfc092018-09-07 19:43:11 +02001633config CMD_CONITRACE
1634 bool "conitrace - trace console input codes"
1635 help
1636 Enable the 'conitrace' command which displays the codes received
1637 from the console input as hexadecimal numbers.
1638
Anatolij Gustschin4e92e602018-12-01 10:47:20 +01001639config CMD_CLS
1640 bool "Enable clear screen command 'cls'"
1641 depends on CFB_CONSOLE || DM_VIDEO || LCD || VIDEO
1642 default y if LCD
1643 help
1644 Enable the 'cls' command which clears the screen contents
1645 on video frame buffer.
1646
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09001647config CMD_EFIDEBUG
1648 bool "efidebug - display/configure UEFI environment"
1649 depends on EFI_LOADER
Heinrich Schuchardt64b5ba42019-05-11 09:53:33 +02001650 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09001651 default n
1652 help
1653 Enable the 'efidebug' command which provides a subset of UEFI
1654 shell utility with simplified functionality. It will be useful
1655 particularly for managing boot parameters as well as examining
1656 various EFI status for debugging.
1657
Heinrich Schuchardtdab87882018-12-26 17:20:35 +01001658config CMD_EXCEPTION
1659 bool "exception - raise exception"
1660 depends on ARM || RISCV || X86
1661 help
1662 Enable the 'exception' command which allows to raise an exception.
1663
Simon Glassffe20522017-04-10 11:34:59 -06001664config CMD_LED
1665 bool "led"
Jan Kiszka2ab6e742019-01-03 09:08:42 +01001666 depends on LED
Simon Glassffe20522017-04-10 11:34:59 -06001667 default y if LED
1668 help
1669 Enable the 'led' command which allows for control of LEDs supported
1670 by the board. The LEDs can be listed with 'led list' and controlled
1671 with led on/off/togle/blink. Any LED drivers can be controlled with
1672 this command, e.g. led_gpio.
1673
Chris Packhamc9032ce2017-04-29 15:20:28 +12001674config CMD_DATE
1675 bool "date"
1676 default y if DM_RTC
AKASHI Takahiro05429b62019-11-13 09:44:49 +09001677 select LIB_DATE
Chris Packhamc9032ce2017-04-29 15:20:28 +12001678 help
1679 Enable the 'date' command for getting/setting the time/date in RTC
1680 devices.
1681
Simon Glass72a8cf82016-01-17 20:53:51 -07001682config CMD_TIME
1683 bool "time"
1684 help
1685 Run commands and summarize execution time.
1686
Simon Glassd91a9d72017-05-17 03:25:23 -06001687config CMD_GETTIME
1688 bool "gettime - read elapsed time"
1689 help
1690 Enable the 'gettime' command which reads the elapsed time since
1691 U-Boot started running. This shows the time in seconds and
1692 milliseconds. See also the 'bootstage' command which provides more
1693 flexibility for boot timing.
1694
Heinrich Schuchardt4f24ac02019-12-24 22:17:37 +01001695config CMD_RNG
1696 bool "rng command"
1697 depends on DM_RNG
1698 select HEXDUMP
1699 help
1700 Print bytes from the hardware random number generator.
1701
Simon Glass72a8cf82016-01-17 20:53:51 -07001702# TODO: rename to CMD_SLEEP
1703config CMD_MISC
1704 bool "sleep"
1705 default y
1706 help
1707 Delay execution for some time
1708
Siva Durga Prasad Paladugu0fd2290c2018-06-19 12:24:23 +02001709config MP
1710 bool "support for multiprocessor"
1711 help
1712 This provides an option to brinup
1713 different processors in multiprocessor
1714 cases.
1715
Simon Glass72a8cf82016-01-17 20:53:51 -07001716config CMD_TIMER
1717 bool "timer"
1718 help
1719 Access the system timer.
1720
Simon Glass72a8cf82016-01-17 20:53:51 -07001721config CMD_SOUND
1722 bool "sound"
1723 depends on SOUND
1724 help
1725 This provides basic access to the U-Boot's sound support. The main
1726 feature is to play a beep.
1727
1728 sound init - set up sound system
1729 sound play - play a sound
1730
Patrice Chotard993c9122019-11-25 09:07:38 +01001731config CMD_SYSBOOT
1732 bool "sysboot"
1733 select MENU
1734 help
1735 Boot image via local extlinux.conf file
1736
Miao Yan18686592016-05-22 19:37:17 -07001737config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001738 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -07001739 select QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001740 help
1741 This provides access to the QEMU firmware interface. The main
1742 feature is to allow easy loading of files passed to qemu-system
1743 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02001744
1745source "cmd/mvebu/Kconfig"
1746
Simon Glass3cef3b32017-08-04 16:34:55 -06001747config CMD_TERMINAL
1748 bool "terminal - provides a way to attach a serial terminal"
1749 help
1750 Provides a 'cu'-like serial terminal command. This can be used to
1751 access other serial ports from the system console. The terminal
1752 is very simple with no special processing of characters. As with
1753 cu, you can press ~. (tilde followed by period) to exit.
1754
Simon Glass1aa4e8d2017-08-04 16:35:02 -06001755config CMD_UUID
1756 bool "uuid, guid - generation of unique IDs"
Adam Forda451bc22018-02-06 12:14:28 -06001757 select LIB_UUID
Simon Glass1aa4e8d2017-08-04 16:35:02 -06001758 help
1759 This enables two commands:
1760
1761 uuid - generate random Universally Unique Identifier
1762 guid - generate Globally Unique Identifier based on random UUID
1763
1764 The two commands are very similar except for the endianness of the
1765 output.
1766
Simon Glass72a8cf82016-01-17 20:53:51 -07001767endmenu
1768
Lokesh Vutla5cd96612017-12-29 11:47:49 +05301769source "cmd/ti/Kconfig"
1770
Simon Glass72a8cf82016-01-17 20:53:51 -07001771config CMD_BOOTSTAGE
1772 bool "Enable the 'bootstage' command"
1773 depends on BOOTSTAGE
1774 help
1775 Add a 'bootstage' command which supports printing a report
1776 and un/stashing of bootstage data.
1777
1778menu "Power commands"
1779config CMD_PMIC
1780 bool "Enable Driver Model PMIC command"
1781 depends on DM_PMIC
1782 help
1783 This is the pmic command, based on a driver model pmic's API.
1784 Command features are unchanged:
1785 - list - list pmic devices
1786 - pmic dev <id> - show or [set] operating pmic device (NEW)
1787 - pmic dump - dump registers
1788 - pmic read address - read byte of register at address
1789 - pmic write address - write byte to register at address
1790 The only one change for this command is 'dev' subcommand.
1791
1792config CMD_REGULATOR
1793 bool "Enable Driver Model REGULATOR command"
1794 depends on DM_REGULATOR
1795 help
1796 This command is based on driver model regulator's API.
1797 User interface features:
1798 - list - list regulator devices
1799 - regulator dev <id> - show or [set] operating regulator device
1800 - regulator info - print constraints info
1801 - regulator status - print operating status
1802 - regulator value <val] <-f> - print/[set] voltage value [uV]
1803 - regulator current <val> - print/[set] current value [uA]
1804 - regulator mode <id> - print/[set] operating mode id
1805 - regulator enable - enable the regulator output
1806 - regulator disable - disable the regulator output
1807
1808 The '-f' (force) option can be used for set the value which exceeds
1809 the limits, which are found in device-tree and are kept in regulator's
1810 uclass platdata structure.
1811
1812endmenu
1813
1814menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06001815config CMD_AES
1816 bool "Enable the 'aes' command"
1817 select AES
1818 help
1819 This provides a means to encrypt and decrypt data using the AES
1820 (Advanced Encryption Standard). This algorithm uses a symetric key
1821 and is widely used as a streaming cipher. Different key lengths are
1822 supported by the algorithm but this command only supports 128 bits
1823 at present.
1824
Simon Glassc04b9b32017-04-26 22:27:53 -06001825config CMD_BLOB
1826 bool "Enable the 'blob' command"
1827 help
1828 This is used with the Freescale secure boot mechanism.
1829
1830 Freescale's SEC block has built-in Blob Protocol which provides
1831 a method for protecting user-defined data across system power
1832 cycles. SEC block protects data in a data structure called a Blob,
1833 which provides both confidentiality and integrity protection.
1834
1835 Encapsulating data as a blob
1836 Each time that the Blob Protocol is used to protect data, a
1837 different randomly generated key is used to encrypt the data.
1838 This random key is itself encrypted using a key which is derived
1839 from SoC's non-volatile secret key and a 16 bit Key identifier.
1840 The resulting encrypted key along with encrypted data is called a
1841 blob. The non-volatile secure key is available for use only during
1842 secure boot.
1843
1844 During decapsulation, the reverse process is performed to get back
1845 the original data.
1846
1847 Sub-commands:
Michal Simek6e7bdde2018-07-23 15:55:12 +02001848 blob enc - encapsulating data as a cryptgraphic blob
Simon Glassc04b9b32017-04-26 22:27:53 -06001849 blob dec - decapsulating cryptgraphic blob to get the data
1850
1851 Syntax:
1852
1853 blob enc src dst len km
1854
1855 Encapsulate and create blob of data $len bytes long
1856 at address $src and store the result at address $dst.
1857 $km is the 16 byte key modifier is also required for
1858 generation/use as key for cryptographic operation. Key
1859 modifier should be 16 byte long.
1860
1861 blob dec src dst len km
1862
1863 Decapsulate the blob of data at address $src and
1864 store result of $len byte at addr $dst.
1865 $km is the 16 byte key modifier is also required for
1866 generation/use as key for cryptographic operation. Key
1867 modifier should be 16 byte long.
1868
Simon Glass551c3932017-05-17 03:25:25 -06001869config CMD_HASH
1870 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06001871 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06001872 help
1873 This provides a way to hash data in memory using various supported
1874 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1875 saved to memory or to an environment variable. It is also possible
1876 to verify a hash against data in memory.
1877
Michalis Pappas666028f2018-04-13 10:40:57 +03001878config CMD_HVC
1879 bool "Support the 'hvc' command"
1880 depends on ARM_SMCCC
1881 help
1882 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
1883 development and testing.
1884
1885config CMD_SMC
1886 bool "Support the 'smc' command"
1887 depends on ARM_SMCCC
1888 help
1889 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
1890 development and testing.
1891
Daniel Thompson221a9492017-05-19 17:26:58 +01001892config HASH_VERIFY
1893 bool "hash -v"
1894 depends on CMD_HASH
1895 help
1896 Add -v option to verify data against a hash.
1897
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001898config CMD_TPM_V1
1899 bool
1900
1901config CMD_TPM_V2
1902 bool
Tom Rini3a8c8bf2018-07-28 09:20:12 -04001903 select CMD_LOG
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001904
Simon Glass72a8cf82016-01-17 20:53:51 -07001905config CMD_TPM
1906 bool "Enable the 'tpm' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001907 depends on TPM_V1 || TPM_V2
1908 select CMD_TPM_V1 if TPM_V1
1909 select CMD_TPM_V2 if TPM_V2
Simon Glass72a8cf82016-01-17 20:53:51 -07001910 help
1911 This provides a means to talk to a TPM from the command line. A wide
1912 range of commands if provided - see 'tpm help' for details. The
1913 command requires a suitable TPM on your board and the correct driver
1914 must be enabled.
1915
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001916if CMD_TPM
1917
Simon Glass72a8cf82016-01-17 20:53:51 -07001918config CMD_TPM_TEST
1919 bool "Enable the 'tpm test' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001920 depends on TPM_V1
Simon Glass72a8cf82016-01-17 20:53:51 -07001921 help
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001922 This provides a a series of tests to confirm that the TPMv1.x is
1923 working correctly. The tests cover initialisation, non-volatile RAM,
1924 extend, global lock and checking that timing is within expectations.
1925 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass72a8cf82016-01-17 20:53:51 -07001926 for other devices.
1927
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001928endif
1929
Simon Glass72a8cf82016-01-17 20:53:51 -07001930endmenu
1931
Moritz Fischerbfeba012016-10-04 17:08:08 -07001932menu "Firmware commands"
1933config CMD_CROS_EC
1934 bool "Enable crosec command"
1935 depends on CROS_EC
1936 default y
1937 help
1938 Enable command-line access to the Chrome OS EC (Embedded
1939 Controller). This provides the 'crosec' command which has
1940 a number of sub-commands for performing EC tasks such as
1941 updating its flash, accessing a small saved context area
1942 and talking to the I2C bus behind the EC (if there is one).
1943endmenu
1944
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001945menu "Filesystem commands"
Marek Behún9d845502017-09-03 17:00:30 +02001946config CMD_BTRFS
1947 bool "Enable the 'btrsubvol' command"
1948 select FS_BTRFS
1949 help
1950 This enables the 'btrsubvol' command to list subvolumes
1951 of a BTRFS filesystem. There are no special commands for
1952 listing BTRFS directories or loading BTRFS files - this
1953 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
1954 when BTRFS is enabled (see FS_BTRFS).
1955
Simon Glassd66a10f2017-04-26 22:27:58 -06001956config CMD_CBFS
1957 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06001958 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06001959 help
1960 Define this to enable support for reading from a Coreboot
1961 filesystem. This is a ROM-based filesystem used for accessing files
1962 on systems that use coreboot as the first boot-loader and then load
1963 U-Boot to actually boot the Operating System. Available commands are
1964 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1965
Simon Glass97072742017-04-26 22:28:03 -06001966config CMD_CRAMFS
1967 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06001968 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06001969 help
1970 This provides commands for dealing with CRAMFS (Compressed ROM
1971 filesystem). CRAMFS is useful when space is tight since files are
1972 compressed. Two commands are provided:
1973
1974 cramfsls - lists files in a cramfs image
1975 cramfsload - loads a file from a cramfs image
1976
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001977config CMD_EXT2
1978 bool "ext2 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001979 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001980 help
1981 Enables EXT2 FS command
1982
1983config CMD_EXT4
1984 bool "ext4 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001985 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001986 help
1987 Enables EXT4 FS command
1988
1989config CMD_EXT4_WRITE
1990 depends on CMD_EXT4
1991 bool "ext4 write command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001992 select EXT4_WRITE
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001993 help
1994 Enables EXT4 FS write command
1995
1996config CMD_FAT
1997 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05301998 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001999 help
2000 Support for the FAT fs
2001
2002config CMD_FS_GENERIC
2003 bool "filesystem commands"
2004 help
2005 Enables filesystem commands (e.g. load, ls) that work for multiple
2006 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002007
Josua Mayerefbe99c2017-04-24 10:10:45 +02002008config CMD_FS_UUID
2009 bool "fsuuid command"
2010 help
2011 Enables fsuuid command for filesystem UUID.
2012
Simon Glassb8682a72017-05-17 03:25:37 -06002013config CMD_JFFS2
2014 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06002015 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06002016 help
2017 Enables commands to support the JFFS2 (Journalling Flash File System
2018 version 2) filesystem. This enables fsload, ls and fsinfo which
2019 provide the ability to load files, list directories and obtain
2020 filesystem information.
2021
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002022config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002023 bool "MTD partition support"
Miquel Raynalff102c52019-10-25 19:39:30 +02002024 depends on MTD
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002025 help
Miquel Raynal938db6f2018-09-29 12:58:30 +02002026 MTD partitioning tool support.
2027 It is strongly encouraged to avoid using this command
2028 anymore along with 'sf', 'nand', 'onenand'. One can still
2029 declare the partitions in the mtdparts environment variable
2030 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002031
Simon Glasscb70e6c2017-08-04 16:34:30 -06002032config CMD_MTDPARTS_SPREAD
2033 bool "Padd partition size to take account of bad blocks"
2034 depends on CMD_MTDPARTS
2035 help
2036 This enables the 'spread' sub-command of the mtdparts command.
2037 This command will modify the existing mtdparts variable by increasing
2038 the size of the partitions such that 1) each partition's net size is
2039 at least as large as the size specified in the mtdparts variable and
2040 2) each partition starts on a good block.
2041
Alexander Dahl672c5702019-10-30 16:53:55 +01002042config CMD_MTDPARTS_SHOW_NET_SIZES
2043 bool "Show net size (w/o bad blocks) of partitions"
2044 depends on CMD_MTDPARTS
2045 help
2046 Adds two columns to the printed partition table showing the
2047 effective usable size of a partition, if bad blocks are taken
2048 into account.
2049
Miquel Raynal587f4452019-10-03 19:50:25 +02002050config MTDIDS_DEFAULT
2051 string "Default MTD IDs"
Miquel Raynalff102c52019-10-25 19:39:30 +02002052 depends on MTD || SPI_FLASH
Miquel Raynal587f4452019-10-03 19:50:25 +02002053 help
2054 Defines a default MTD IDs list for use with MTD partitions in the
2055 Linux MTD command line partitions format.
2056
2057config MTDPARTS_DEFAULT
2058 string "Default MTD partition scheme"
Miquel Raynalff102c52019-10-25 19:39:30 +02002059 depends on MTD || SPI_FLASH
Miquel Raynal587f4452019-10-03 19:50:25 +02002060 help
2061 Defines a default MTD partitioning scheme in the Linux MTD command
2062 line partitions format
2063
Simon Glassf8803a92017-08-04 16:34:41 -06002064config CMD_REISER
2065 bool "reiser - Access to reiserfs filesystems"
2066 help
2067 This provides two commands which operate on a resierfs filesystem,
2068 commonly used some years ago:
2069
2070 reiserls - list files
2071 reiserload - load a file
2072
Simon Glass7a764312017-08-04 16:34:58 -06002073config CMD_YAFFS2
2074 bool "yaffs2 - Access of YAFFS2 filesystem"
2075 depends on YAFFS2
2076 default y
2077 help
2078 This provides commands for accessing a YAFFS2 filesystem. Yet
2079 Another Flash Filesystem 2 is a filesystem designed specifically
2080 for NAND flash. It incorporates bad-block management and ensures
2081 that device writes are sequential regardless of filesystem
2082 activity.
2083
Simon Glass54feea12017-08-04 16:35:04 -06002084config CMD_ZFS
2085 bool "zfs - Access of ZFS filesystem"
2086 help
2087 This provides commands to accessing a ZFS filesystem, commonly used
2088 on Solaris systems. Two sub-commands are provided:
2089
2090 zfsls - list files in a directory
2091 zfsload - load a file
2092
2093 See doc/README.zfs for more details.
2094
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002095endmenu
2096
Simon Glassac20a1b2017-04-26 22:27:52 -06002097menu "Debug commands"
2098
2099config CMD_BEDBUG
2100 bool "bedbug"
2101 help
2102 The bedbug (emBEDded deBUGger) command provides debugging features
2103 for some PowerPC processors. For details please see the
2104 docuemntation in doc/README.beddbug
2105
Simon Glass3bd25cb2017-04-26 22:28:08 -06002106config CMD_DIAG
2107 bool "diag - Board diagnostics"
2108 help
2109 This command provides access to board diagnostic tests. These are
2110 called Power-on Self Tests (POST). The command allows listing of
2111 available tests and running either all the tests, or specific tests
2112 identified by name.
2113
Simon Glass1b330892017-05-17 03:25:39 -06002114config CMD_IRQ
2115 bool "irq - Show information about interrupts"
Heiko Schocher064b55c2017-06-14 05:49:40 +02002116 depends on !ARM && !MIPS && !SH
Simon Glass1b330892017-05-17 03:25:39 -06002117 help
2118 This enables two commands:
2119
2120 interrupts - enable or disable interrupts
2121 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06002122
2123config CMD_KGDB
2124 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simekb9205502018-10-04 14:26:13 +02002125 depends on PPC
Simon Glass6bac2272017-05-17 03:25:40 -06002126 help
2127 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2128 over a serial link for debugging purposes. This allows
2129 single-stepping, inspecting variables, etc. This is supported only
2130 on PowerPC at present.
2131
Simon Glassd5f61f22017-12-04 13:48:26 -07002132config CMD_LOG
2133 bool "log - Generation, control and access to logging"
Heinrich Schuchardt83a1f932018-04-19 22:02:46 +02002134 select LOG
Simon Glassd5f61f22017-12-04 13:48:26 -07002135 help
2136 This provides access to logging features. It allows the output of
2137 log data to be controlled to a limited extent (setting up the default
Simon Glassef11ed82017-12-04 13:48:27 -07002138 maximum log level for emitting of records). It also provides access
2139 to a command used for testing the log system.
Simon Glassd5f61f22017-12-04 13:48:26 -07002140
Simon Glassce058ae2017-08-04 16:34:59 -06002141config CMD_TRACE
2142 bool "trace - Support tracing of function calls and timing"
2143 help
2144 Enables a command to control using of function tracing within
2145 U-Boot. This allows recording of call traces including timing
2146 information. The command can write data to memory for exporting
Simon Glassa24a78d2019-04-08 13:20:51 -06002147 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glassce058ae2017-08-04 16:34:59 -06002148 details.
2149
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002150config CMD_AVB
2151 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniukb0aa74a2018-07-17 14:33:25 +03002152 depends on AVB_VERIFY
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002153 default n
2154 help
2155 Enables a "avb" command to perform verification of partitions using
2156 Android Verified Boot 2.0 functionality. It includes such subcommands:
2157 avb init - initialize avb2 subsystem
2158 avb read_rb - read rollback index
2159 avb write_rb - write rollback index
2160 avb is_unlocked - check device lock state
2161 avb get_uuid - read and print uuid of a partition
2162 avb read_part - read data from partition
2163 avb read_part_hex - read data from partition and output to stdout
2164 avb write_part - write data to partition
2165 avb verify - run full verification chain
Simon Glassac20a1b2017-04-26 22:27:52 -06002166endmenu
2167
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002168config CMD_UBI
2169 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002170 select MTD_UBI
2171 help
2172 UBI is a software layer above MTD layer which admits use of LVM-like
2173 logical volumes on top of MTD devices, hides some complexities of
2174 flash chips like wear and bad blocks and provides some other useful
2175 capabilities. Please, consult the MTD web site for more details
2176 (www.linux-mtd.infradead.org). Activate this option if you want
2177 to use U-Boot UBI commands.
Miquel Raynalc58fb2c2018-09-29 12:58:29 +02002178 It is also strongly encouraged to also enable CONFIG_MTD to get full
2179 partition support.
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002180
Boris Brezillon173aafb2017-02-27 18:22:06 +01002181config CMD_UBIFS
2182 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01002183 depends on CMD_UBI
Michal Simek5ed063d2018-07-23 15:55:13 +02002184 default y if CMD_UBI
Karl Beldan24fc9532017-07-12 16:11:47 +00002185 select LZO
Boris Brezillon173aafb2017-02-27 18:22:06 +01002186 help
2187 UBIFS is a file system for flash devices which works on top of UBI.
2188
Simon Glass72a8cf82016-01-17 20:53:51 -07002189endmenu