blob: b1a1cbcab25ff64a095446f8fdf28bf6192cc750 [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
Simon Glass72a8cf82016-01-17 20:53:51 -0700245endmenu
246
247menu "Boot commands"
248
249config CMD_BOOTD
250 bool "bootd"
251 default y
252 help
253 Run the command stored in the environment "bootcmd", i.e.
254 "bootd" does the same thing as "run bootcmd".
255
256config CMD_BOOTM
257 bool "bootm"
258 default y
259 help
260 Boot an application image from the memory.
261
Cristian Ciocalteaecc7fda2019-12-24 18:05:39 +0200262config BOOTM_EFI
263 bool "Support booting UEFI FIT images"
264 depends on CMD_BOOTEFI && CMD_BOOTM && FIT
265 default y
266 help
267 Support booting UEFI FIT images via the bootm command.
268
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500269config CMD_BOOTZ
270 bool "bootz"
271 help
272 Boot the Linux zImage
273
Masahiro Yamada26959272016-08-12 08:31:16 -0400274config CMD_BOOTI
275 bool "booti"
Atish Patra3cedc972019-05-06 17:49:39 -0700276 depends on ARM64 || RISCV
Masahiro Yamada26959272016-08-12 08:31:16 -0400277 default y
278 help
279 Boot an AArch64 Linux Kernel image from memory.
280
Tom Rini4b0bcfa2019-09-20 17:36:50 -0400281config BOOTM_LINUX
282 bool "Support booting Linux OS images"
283 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
284 default y
285 help
286 Support booting the Linux kernel directly via a command such as bootm
287 or booti or bootz.
288
289config BOOTM_NETBSD
290 bool "Support booting NetBSD (non-EFI) loader images"
291 depends on CMD_BOOTM
292 default y
293 help
294 Support booting NetBSD via the bootm command.
295
296config BOOTM_OPENRTOS
297 bool "Support booting OPENRTOS / FreeRTOS images"
298 depends on CMD_BOOTM
299 help
300 Support booting OPENRTOS / FreeRTOS via the bootm command.
301
302config BOOTM_OSE
303 bool "Support booting Enea OSE images"
Tom Rini14a2dee2019-12-05 18:46:11 -0500304 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini4b0bcfa2019-09-20 17:36:50 -0400305 depends on CMD_BOOTM
306 help
307 Support booting Enea OSE images via the bootm command.
308
309config BOOTM_PLAN9
310 bool "Support booting Plan9 OS images"
311 depends on CMD_BOOTM
312 default y
313 help
314 Support booting Plan9 images via the bootm command.
315
316config BOOTM_RTEMS
317 bool "Support booting RTEMS OS images"
318 depends on CMD_BOOTM
319 default y
320 help
321 Support booting RTEMS images via the bootm command.
322
323config BOOTM_VXWORKS
324 bool "Support booting VxWorks OS images"
325 depends on CMD_BOOTM
326 default y
327 help
328 Support booting VxWorks images via the bootm command.
329
AKASHI Takahirofefff632019-11-08 10:32:15 +0900330config CMD_BOOTEFI
331 bool "bootefi"
332 depends on EFI_LOADER
333 default y
334 help
335 Boot an EFI image from memory.
336
Alexander Graf95b62b22016-11-17 22:40:10 +0100337config CMD_BOOTEFI_HELLO_COMPILE
338 bool "Compile a standard EFI hello world binary for testing"
Heinrich Schuchardt3b4847c2019-11-07 08:05:17 +0100339 depends on CMD_BOOTEFI && !CPU_V7M
Alexander Graf95b62b22016-11-17 22:40:10 +0100340 default y
341 help
342 This compiles a standard EFI hello world application with U-Boot so
343 that it can be used with the test/py testing framework. This is useful
344 for testing that EFI is working at a basic level, and for bringing
345 up EFI support on a new architecture.
346
347 No additional space will be required in the resulting U-Boot binary
348 when this option is enabled.
349
Simon Glassc7ae3df2016-11-07 08:47:08 -0700350config CMD_BOOTEFI_HELLO
351 bool "Allow booting a standard EFI hello world for testing"
Alexander Graf95b62b22016-11-17 22:40:10 +0100352 depends on CMD_BOOTEFI_HELLO_COMPILE
Simon Glassc7ae3df2016-11-07 08:47:08 -0700353 help
354 This adds a standard EFI hello world application to U-Boot so that
355 it can be used with the 'bootefi hello' command. This is useful
356 for testing that EFI is working at a basic level, and for bringing
357 up EFI support on a new architecture.
358
Heinrich Schuchardt623b3a52017-09-15 10:06:11 +0200359source lib/efi_selftest/Kconfig
360
Tom Rini4880b022016-11-29 09:14:56 -0500361config CMD_BOOTMENU
362 bool "bootmenu"
363 select MENU
364 help
365 Add an ANSI terminal boot menu command.
366
Eugeniu Roscab84acf12019-12-24 17:51:06 +0100367config CMD_ADTIMG
368 bool "adtimg"
Sam Protsenkod03e76a2018-08-16 23:34:13 +0300369 help
370 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
371 image into RAM, dump image structure information, etc. Those dtb/dtbo
372 files should be merged in one dtb further, which needs to be passed to
373 the kernel, as part of a boot process.
374
Simon Glass72a8cf82016-01-17 20:53:51 -0700375config CMD_ELF
376 bool "bootelf, bootvx"
377 default y
378 help
379 Boot an ELF/vxWorks image from the memory.
380
Michal Simek23922e22016-04-06 20:28:04 +0200381config CMD_FDT
382 bool "Flattened Device Tree utility commands"
383 default y
384 depends on OF_LIBFDT
385 help
386 Do FDT related setup before booting into the Operating System.
387
Simon Glass72a8cf82016-01-17 20:53:51 -0700388config CMD_GO
389 bool "go"
390 default y
391 help
392 Start an application at a given address.
393
394config CMD_RUN
395 bool "run"
396 default y
397 help
398 Run the command in the given environment variable.
399
400config CMD_IMI
401 bool "iminfo"
402 default y
403 help
404 Print header information for application image.
405
406config CMD_IMLS
407 bool "imls"
Simon Glass72a8cf82016-01-17 20:53:51 -0700408 help
409 List all images found in flash
410
411config CMD_XIMG
412 bool "imxtract"
413 default y
414 help
415 Extract a part of a multi-image.
416
Simon Glass72c30332017-08-04 16:34:48 -0600417config CMD_SPL
418 bool "spl export - Export boot information for Falcon boot"
419 depends on SPL
420 help
421 Falcon mode allows booting directly from SPL into an Operating
422 System such as Linux, thus skipping U-Boot proper. See
423 doc/README.falcon for full information about how to use this
424 command.
425
Simon Glass203dc1b2017-08-04 16:34:49 -0600426config CMD_SPL_NAND_OFS
Lukasz Majewskif63c43b2019-05-16 16:01:36 +0200427 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewski7cb179e2019-05-16 16:01:35 +0200428 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Simon Glass203dc1b2017-08-04 16:34:49 -0600429 default 0
430 help
431 This provides the offset of the command line arguments for Linux
432 when booting from NAND in Falcon mode. See doc/README.falcon
433 for full information about how to use this option (and also see
434 board/gateworks/gw_ventana/README for an example).
435
Lukasz Majewskief9e57d2019-05-16 16:01:37 +0200436config CMD_SPL_NOR_OFS
437 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
438 depends on CMD_SPL && SPL_NOR_SUPPORT
439 default 0
440 help
441 This provides the offset of the command line arguments or dtb for
442 Linux when booting from NOR in Falcon mode.
443
Simon Glass3a91a252017-08-04 16:34:50 -0600444config CMD_SPL_WRITE_SIZE
445 hex "Size of argument area"
446 depends on CMD_SPL
447 default 0x2000
448 help
449 This provides the size of the command-line argument area in NAND
450 flash used by Falcon-mode boot. See the documentation until CMD_SPL
451 for detail.
452
Marek Vasutac084322018-02-10 16:22:05 +0100453config CMD_FITUPD
454 bool "fitImage update command"
455 help
456 Implements the 'fitupd' command, which allows to automatically
457 store software updates present on a TFTP server in NOR Flash
458
Simon Glass9b92a8d2017-08-04 16:34:57 -0600459config CMD_THOR_DOWNLOAD
460 bool "thor - TIZEN 'thor' download"
Marek Szyprowski909338c2019-10-02 12:29:08 +0200461 select DFU
Simon Glass9b92a8d2017-08-04 16:34:57 -0600462 help
463 Implements the 'thor' download protocol. This is a way of
464 downloading a software update over USB from an attached host.
465 There is no documentation about this within the U-Boot source code
466 but you should be able to find something on the interwebs.
467
Simon Glasse7a815f2017-08-04 16:35:03 -0600468config CMD_ZBOOT
469 bool "zboot - x86 boot command"
470 help
471 With x86 machines it is common to boot a bzImage file which
472 contains both a kernel and a setup.bin file. The latter includes
473 configuration information from the dark ages which x86 boards still
474 need to pick things out of.
475
476 Consider using FIT in preference to this since it supports directly
477 booting both 32- and 64-bit kernels, as well as secure boot.
478 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
479
Simon Glass72a8cf82016-01-17 20:53:51 -0700480endmenu
481
482menu "Environment commands"
483
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500484config CMD_ASKENV
485 bool "ask for env variable"
486 help
487 Ask for environment variable
488
Simon Glass72a8cf82016-01-17 20:53:51 -0700489config CMD_EXPORTENV
490 bool "env export"
491 default y
492 help
493 Export environments.
494
495config CMD_IMPORTENV
496 bool "env import"
497 default y
498 help
499 Import environments.
500
501config CMD_EDITENV
502 bool "editenv"
503 default y
504 help
505 Edit environment variable.
506
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500507config CMD_GREPENV
508 bool "search env"
509 help
510 Allow for searching environment variables
511
Simon Glass72a8cf82016-01-17 20:53:51 -0700512config CMD_SAVEENV
513 bool "saveenv"
514 default y
515 help
516 Save all environment variables into the compiled-in persistent
517 storage.
518
Frank Wunderlichcd121bd2019-06-29 11:36:19 +0200519config CMD_ERASEENV
520 bool "eraseenv"
521 default n
522 depends on CMD_SAVEENV
523 help
524 Erase environment variables from the compiled-in persistent
525 storage.
526
Simon Glass72a8cf82016-01-17 20:53:51 -0700527config CMD_ENV_EXISTS
528 bool "env exists"
529 default y
530 help
531 Check if a variable is defined in the environment for use in
532 shell scripting.
533
Simon Glassa55d29d2017-05-17 03:25:13 -0600534config CMD_ENV_CALLBACK
535 bool "env callbacks - print callbacks and their associated variables"
536 help
537 Some environment variable have callbacks defined by
538 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
539 For example changing "baudrate" adjust the serial baud rate. This
540 command lists the currently defined callbacks.
541
Simon Glassffc76582017-05-17 03:25:14 -0600542config CMD_ENV_FLAGS
543 bool "env flags -print variables that have non-default flags"
544 help
545 Some environment variables have special flags that control their
546 behaviour. For example, serial# can only be written once and cannot
547 be deleted. This command shows the variables that have special
548 flags.
549
AKASHI Takahiro49d81fd2019-02-25 15:54:36 +0900550config CMD_NVEDIT_EFI
551 bool "env [set|print] -e - set/print UEFI variables"
552 depends on EFI_LOADER
AKASHI Takahiro49d81fd2019-02-25 15:54:36 +0900553 imply HEXDUMP
554 help
555 UEFI variables are encoded as some form of U-Boot variables.
556 If enabled, we are allowed to set/print UEFI variables using
557 "env" command with "-e" option without knowing details.
558
Leo Ruan8e921202019-05-24 17:20:19 +0200559config CMD_NVEDIT_INFO
560 bool "env info - print or evaluate environment information"
561 help
562 Print environment information:
563 - env_valid : is environment valid
564 - env_ready : is environment imported into hash table
565 - env_use_default : is default environment used
566
567 This command can be optionally used for evaluation in scripts:
568 [-d] : evaluate whether default environment is used
569 [-p] : evaluate whether environment can be persisted
570 The result of multiple evaluations will be combined with AND.
571
Simon Glass72a8cf82016-01-17 20:53:51 -0700572endmenu
573
574menu "Memory commands"
575
Mario Six55b25562018-03-28 14:39:18 +0200576config CMD_BINOP
577 bool "binop"
578 help
579 Compute binary operations (xor, or, and) of byte arrays of arbitrary
580 size from memory and store the result in memory or the environment.
581
Simon Glass72a8cf82016-01-17 20:53:51 -0700582config CMD_CRC32
583 bool "crc32"
584 default y
Michal Simek5ed063d2018-07-23 15:55:13 +0200585 select HASH
Simon Glass72a8cf82016-01-17 20:53:51 -0700586 help
587 Compute CRC32.
588
Daniel Thompson221a9492017-05-19 17:26:58 +0100589config CRC32_VERIFY
590 bool "crc32 -v"
591 depends on CMD_CRC32
592 help
593 Add -v option to verify data against a crc32 checksum.
594
Simon Glassa1dc9802017-05-17 03:25:10 -0600595config CMD_EEPROM
596 bool "eeprom - EEPROM subsystem"
597 help
598 (deprecated, needs conversion to driver model)
599 Provides commands to read and write EEPROM (Electrically Erasable
600 Programmable Read Only Memory) chips that are connected over an
601 I2C bus.
602
603config CMD_EEPROM_LAYOUT
604 bool "Enable layout-aware eeprom commands"
605 depends on CMD_EEPROM
606 help
607 (deprecated, needs conversion to driver model)
608 When enabled, additional eeprom sub-commands become available.
609
610 eeprom print - prints the contents of the eeprom in a human-readable
611 way (eeprom layout fields, and data formatted to be fit for human
612 consumption).
613
614 eeprom update - allows user to update eeprom fields by specifying
615 the field name, and providing the new data in a human readable format
616 (same format as displayed by the eeprom print command).
617
618 Both commands can either auto detect the layout, or be told which
619 layout to use.
620
621 Feature API:
622 __weak int parse_layout_version(char *str)
623 - override to provide your own layout name parsing
624 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
625 int layout_version);
626 - override to setup the layout metadata based on the version
627 __weak int eeprom_layout_detect(unsigned char *data)
628 - override to provide your own algorithm for detecting layout
629 version
630 eeprom_field.c
631 - contains various printing and updating functions for common
632 types of eeprom fields. Can be used for defining
633 custom layouts.
634
635config EEPROM_LAYOUT_HELP_STRING
636 string "Tells user what layout names are supported"
637 depends on CMD_EEPROM_LAYOUT
638 default "<not defined>"
639 help
640 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
641 command's help.
642
Simon Glassba71be52017-08-04 16:34:51 -0600643config LOOPW
644 bool "loopw"
645 help
646 Infinite write loop on address range
647
Andre Przywarabea79d72017-03-15 01:19:05 +0000648config CMD_MD5SUM
649 bool "md5sum"
650 default n
651 select MD5
652 help
653 Compute MD5 checksum.
654
Daniel Thompson221a9492017-05-19 17:26:58 +0100655config MD5SUM_VERIFY
Andre Przywarabea79d72017-03-15 01:19:05 +0000656 bool "md5sum -v"
657 default n
658 depends on CMD_MD5SUM
659 help
660 Add -v option to verify data against an MD5 checksum.
661
Simon Glassba71be52017-08-04 16:34:51 -0600662config CMD_MEMINFO
663 bool "meminfo"
Daniel Thompson221a9492017-05-19 17:26:58 +0100664 help
Simon Glassba71be52017-08-04 16:34:51 -0600665 Display memory information.
Daniel Thompson221a9492017-05-19 17:26:58 +0100666
Simon Glassba71be52017-08-04 16:34:51 -0600667config CMD_MEMORY
668 bool "md, mm, nm, mw, cp, cmp, base, loop"
669 default y
Daniel Thompson221a9492017-05-19 17:26:58 +0100670 help
Simon Glassba71be52017-08-04 16:34:51 -0600671 Memory commands.
672 md - memory display
673 mm - memory modify (auto-incrementing address)
674 nm - memory modify (constant address)
675 mw - memory write (fill)
676 cp - memory copy
677 cmp - memory compare
678 base - print or set address offset
679 loop - initialize loop on address range
Simon Glass72a8cf82016-01-17 20:53:51 -0700680
Adam Ford78f28772019-08-14 07:54:34 -0500681config MX_CYCLIC
682 bool "Enable cyclic md/mw commands"
683 depends on CMD_MEMORY
684 help
685 Add the "mdc" and "mwc" memory commands. These are cyclic
686 "md/mw" commands.
687 Examples:
688
689 => mdc.b 10 4 500
690 This command will print 4 bytes (10,11,12,13) each 500 ms.
691
692 => mwc.l 100 12345678 10
693 This command will write 12345678 to address 100 all 10 ms.
694
Jean-Jacques Hiblot803e1a32019-07-02 14:23:26 +0200695config CMD_RANDOM
696 bool "random"
697 default y
698 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
699 help
700 random - fill memory with random data
701
Simon Glass72a8cf82016-01-17 20:53:51 -0700702config CMD_MEMTEST
703 bool "memtest"
704 help
705 Simple RAM read/write test.
706
Mario Sixe89f8aa2018-03-28 14:38:14 +0200707if CMD_MEMTEST
708
709config SYS_ALT_MEMTEST
710 bool "Alternative test"
711 help
712 Use a more complete alternative memory test.
713
714endif
715
Simon Glass72a8cf82016-01-17 20:53:51 -0700716config CMD_MX_CYCLIC
717 bool "mdc, mwc"
718 help
719 mdc - memory display cyclic
720 mwc - memory write cyclic
721
Simon Glassba71be52017-08-04 16:34:51 -0600722config CMD_SHA1SUM
723 bool "sha1sum"
724 select SHA1
Simon Glass72a8cf82016-01-17 20:53:51 -0700725 help
Simon Glassba71be52017-08-04 16:34:51 -0600726 Compute SHA1 checksum.
727
728config SHA1SUM_VERIFY
729 bool "sha1sum -v"
730 depends on CMD_SHA1SUM
731 help
732 Add -v option to verify data against a SHA1 checksum.
Simon Glass72a8cf82016-01-17 20:53:51 -0700733
Simon Glass00805d72017-08-04 16:34:52 -0600734config CMD_STRINGS
735 bool "strings - display strings in memory"
736 help
737 This works similarly to the Unix 'strings' command except that it
738 works with a memory range. String of printable characters found
739 within the range are displayed. The minimum number of characters
740 for a sequence to be considered a string can be provided.
741
Simon Glassee7c0e72017-05-17 03:25:43 -0600742endmenu
743
744menu "Compression commands"
745
746config CMD_LZMADEC
747 bool "lzmadec"
Tom Rini99e46df2017-09-29 14:32:44 -0400748 default y if CMD_BOOTI
Simon Glassee7c0e72017-05-17 03:25:43 -0600749 select LZMA
750 help
751 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
752 image from memory.
753
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900754config CMD_UNZIP
755 bool "unzip"
Tom Rini99e46df2017-09-29 14:32:44 -0400756 default y if CMD_BOOTI
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900757 help
758 Uncompress a zip-compressed memory region.
759
760config CMD_ZIP
761 bool "zip"
762 help
763 Compress a memory region with zlib deflate method.
764
Simon Glass72a8cf82016-01-17 20:53:51 -0700765endmenu
766
767menu "Device access commands"
768
Simon Glass0c19b4d2017-08-04 16:34:28 -0600769config CMD_ARMFLASH
770 #depends on FLASH_CFI_DRIVER
771 bool "armflash"
772 help
773 ARM Ltd reference designs flash partition access
774
Neil Armstrong051ebe32018-04-27 15:17:57 +0200775config CMD_ADC
776 bool "adc - Access Analog to Digital Converters info and data"
777 select ADC
778 select DM_REGULATOR
779 help
780 Shows ADC device info and permit printing one-shot analog converted
781 data from a named Analog to Digital Converter.
782
Eugeniu Roscadb7b7a02019-05-23 17:32:22 +0200783config CMD_BCB
784 bool "bcb"
785 depends on MMC
786 depends on PARTITIONS
787 help
788 Read/modify/write the fields of Bootloader Control Block, usually
789 stored on the flash "misc" partition with its structure defined in:
790 https://android.googlesource.com/platform/bootable/recovery/+/master/
791 bootloader_message/include/bootloader_message/bootloader_message.h
792
793 Some real-life use-cases include (but are not limited to):
794 - Determine the "boot reason" (and act accordingly):
795 https://source.android.com/devices/bootloader/boot-reason
796 - Get/pass a list of commands from/to recovery:
797 https://android.googlesource.com/platform/bootable/recovery
798 - Inspect/dump the contents of the BCB fields
799
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +0200800config CMD_BIND
801 bool "bind/unbind - Bind or unbind a device to/from a driver"
802 depends on DM
803 help
804 Bind or unbind a device to/from a driver from the command line.
805 This is useful in situations where a device may be handled by several
806 drivers. For example, this can be used to bind a UDC to the usb ether
807 gadget driver from the command line.
808
Simon Glassd3156282017-04-26 22:28:02 -0600809config CMD_CLK
810 bool "clk - Show clock frequencies"
811 help
812 (deprecated)
813 Shows clock frequences by calling a sock_clk_dump() hook function.
814 This is depreated in favour of using the CLK uclass and accessing
815 clock values from associated drivers. However currently no command
816 exists for this.
817
Simon Glass72a8cf82016-01-17 20:53:51 -0700818config CMD_DEMO
819 bool "demo - Demonstration commands for driver model"
820 depends on DM
821 help
822 Provides a 'demo' command which can be used to play around with
823 driver model. To use this properly you will need to enable one or
824 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
825 Otherwise you will always get an empty list of devices. The demo
826 devices are defined in the sandbox device tree, so the easiest
827 option is to use sandbox and pass the -d point to sandbox's
828 u-boot.dtb file.
829
Simon Glass0c19b4d2017-08-04 16:34:28 -0600830config CMD_DFU
831 bool "dfu"
Marek Vasut0f44d332018-02-16 16:41:17 +0100832 select DFU
Simon Glass0c19b4d2017-08-04 16:34:28 -0600833 help
834 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass00fd59d2017-08-04 16:35:06 -0600835 class device via USB. This command requires that the "dfu_alt_info"
836 environment variable be set and define the alt settings to expose to
837 the host.
Simon Glass0c19b4d2017-08-04 16:34:28 -0600838
839config CMD_DM
840 bool "dm - Access to driver model information"
841 depends on DM
Simon Glass0c19b4d2017-08-04 16:34:28 -0600842 help
843 Provides access to driver model data structures and information,
844 such as a list of devices, list of uclasses and the state of each
845 device (e.g. activated). This is not required for operation, but
846 can be useful to see the state of driver model for debugging or
847 interest.
848
Alex Kiernan312a10f2018-05-29 15:30:39 +0000849config CMD_FASTBOOT
850 bool "fastboot - Android fastboot support"
851 depends on FASTBOOT
852 help
853 This enables the command "fastboot" which enables the Android
854 fastboot mode for the platform. Fastboot is a protocol for
855 downloading images, flashing and device control used on
Alex Kiernanf73a7df2018-05-29 15:30:53 +0000856 Android devices. Fastboot requires either the network stack
857 enabled or support for acting as a USB device.
Alex Kiernan312a10f2018-05-29 15:30:39 +0000858
Eugeniu Roscacef4de82019-07-19 23:26:11 +0200859 See doc/android/fastboot.txt for more information.
Alex Kiernan312a10f2018-05-29 15:30:39 +0000860
Simon Glass0c19b4d2017-08-04 16:34:28 -0600861config CMD_FLASH
862 bool "flinfo, erase, protect"
863 default y
Miquel Raynalff102c52019-10-25 19:39:30 +0200864 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -0600865 help
866 NOR flash support.
867 flinfo - print FLASH memory information
868 erase - FLASH memory
869 protect - enable or disable FLASH write protection
870
871config CMD_FPGA
872 bool "fpga"
Tuomas Tynkkynena4fa8112018-01-27 20:28:40 +0200873 depends on FPGA
Simon Glass0c19b4d2017-08-04 16:34:28 -0600874 default y
875 help
876 FPGA support.
877
878config CMD_FPGA_LOADBP
879 bool "fpga loadbp - load partial bitstream (Xilinx only)"
880 depends on CMD_FPGA
881 help
882 Supports loading an FPGA device from a bitstream buffer containing
883 a partial bitstream.
884
885config CMD_FPGA_LOADFS
886 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
887 depends on CMD_FPGA
888 help
889 Supports loading an FPGA device from a FAT filesystem.
890
891config CMD_FPGA_LOADMK
892 bool "fpga loadmk - load bitstream from image"
893 depends on CMD_FPGA
894 help
895 Supports loading an FPGA device from a image generated by mkimage.
896
897config CMD_FPGA_LOADP
898 bool "fpga loadp - load partial bitstream"
899 depends on CMD_FPGA
900 help
901 Supports loading an FPGA device from a bitstream buffer containing
902 a partial bitstream.
903
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +0530904config CMD_FPGA_LOAD_SECURE
905 bool "fpga loads - loads secure bitstreams (Xilinx only)"
906 depends on CMD_FPGA
907 help
908 Enables the fpga loads command which is used to load secure
909 (authenticated or encrypted or both) bitstreams on to FPGA.
910
Simon Glass0c19b4d2017-08-04 16:34:28 -0600911config CMD_FPGAD
912 bool "fpgad - dump FPGA registers"
913 help
914 (legacy, needs conversion to driver model)
915 Provides a way to dump FPGA registers by calling the board-specific
916 fpga_get_reg() function. This functions similarly to the 'md'
917 command.
918
919config CMD_FUSE
920 bool "fuse - support for the fuse subssystem"
921 help
922 (deprecated - needs conversion to driver model)
923 This allows reading, sensing, programming or overriding fuses
924 which control the behaviour of the device. The command uses the
925 fuse_...() API.
926
927config CMD_GPIO
928 bool "gpio"
929 help
930 GPIO support.
931
932config CMD_GPT
933 bool "GPT (GUID Partition Table) command"
Simon Glass0c19b4d2017-08-04 16:34:28 -0600934 select EFI_PARTITION
Adam Ford1811a922018-02-06 12:43:56 -0600935 select HAVE_BLOCK_DEVICE
Michal Simek5ed063d2018-07-23 15:55:13 +0200936 select PARTITION_UUIDS
Maxime Ripard47738ac2017-08-24 11:52:32 +0200937 imply RANDOM_UUID
Simon Glass0c19b4d2017-08-04 16:34:28 -0600938 help
939 Enable the 'gpt' command to ready and write GPT style partition
940 tables.
941
Maxime Ripard47738ac2017-08-24 11:52:32 +0200942config RANDOM_UUID
943 bool "GPT Random UUID generation"
Adam Forda451bc22018-02-06 12:14:28 -0600944 select LIB_UUID
Maxime Ripard47738ac2017-08-24 11:52:32 +0200945 help
946 Enable the generation of partitions with random UUIDs if none
947 are provided.
948
Simon Glass0c19b4d2017-08-04 16:34:28 -0600949config CMD_GPT_RENAME
950 bool "GPT partition renaming commands"
951 depends on CMD_GPT
952 help
953 Enables the 'gpt' command to interchange names on two GPT
954 partitions via the 'gpt swap' command or to rename single
955 partitions via the 'rename' command.
956
Simon Glass75eb9972017-05-17 03:25:29 -0600957config CMD_IDE
958 bool "ide - Support for IDE drivers"
Simon Glassfc843a02017-05-17 03:25:30 -0600959 select IDE
Simon Glass75eb9972017-05-17 03:25:29 -0600960 help
961 Provides an 'ide' command which allows accessing the IDE drive,
962 reseting the IDE interface, printing the partition table and
963 geting device info. It also enables the 'diskboot' command which
964 permits booting from an IDE drive.
965
Simon Glass594e8d12017-05-17 03:25:34 -0600966config CMD_IO
967 bool "io - Support for performing I/O accesses"
968 help
969 Provides an 'iod' command to display I/O space and an 'iow' command
970 to write values to the I/O space. This can be useful for manually
971 checking the state of devices during boot when debugging device
972 drivers, etc.
973
Simon Glass7d0f5c12017-05-17 03:25:36 -0600974config CMD_IOTRACE
975 bool "iotrace - Support for tracing I/O activity"
976 help
977 Provides an 'iotrace' command which supports recording I/O reads and
978 writes in a trace buffer in memory . It also maintains a checksum
979 of the trace records (even if space is exhausted) so that the
980 sequence of I/O accesses can be verified.
981
982 When debugging drivers it is useful to see what I/O accesses were
983 done and in what order.
984
985 Even if the individual accesses are of little interest it can be
986 useful to verify that the access pattern is consistent each time
987 an operation is performed. In this case a checksum can be used to
988 characterise the operation of a driver. The checksum can be compared
989 across different runs of the operation to verify that the driver is
990 working properly.
991
992 In particular, when performing major refactoring of the driver, where
993 the access pattern should not change, the checksum provides assurance
994 that the refactoring work has not broken the driver.
995
996 This works by sneaking into the io.h heder for an architecture and
997 redirecting I/O accesses through iotrace's tracing mechanism.
998
999 For now no commands are provided to examine the trace buffer. The
1000 format is fairly simple, so 'md' is a reasonable substitute.
1001
1002 Note: The checksum feature is only useful for I/O regions where the
1003 contents do not change outside of software control. Where this is not
1004 suitable you can fall back to manually comparing the addresses. It
1005 might be useful to enhance tracing to only checksum the accesses and
1006 not the data read/written.
1007
Simon Glass0c19b4d2017-08-04 16:34:28 -06001008config CMD_I2C
1009 bool "i2c"
1010 help
1011 I2C support.
1012
Eugen Hristevd05266f2018-09-18 10:35:33 +03001013config CMD_W1
1014 depends on W1
1015 default y if W1
1016 bool "w1 - Support for Dallas 1-Wire protocol"
1017 help
1018 Dallas 1-wire protocol support
1019
Simon Glass72a8cf82016-01-17 20:53:51 -07001020config CMD_LOADB
1021 bool "loadb"
1022 default y
1023 help
1024 Load a binary file over serial line.
1025
1026config CMD_LOADS
1027 bool "loads"
1028 default y
1029 help
1030 Load an S-Record file over serial line
1031
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001032config CMD_MMC
1033 bool "mmc"
1034 help
1035 MMC memory mapped support.
1036
Alex Kiernan5a7b11e2018-05-08 04:43:31 +00001037config CMD_MMC_RPMB
1038 bool "Enable support for RPMB in the mmc command"
1039 depends on CMD_MMC
1040 help
1041 Enable the commands for reading, writing and programming the
1042 key for the Replay Protection Memory Block partition in eMMC.
1043
Alex Kiernanc232d142018-05-29 15:30:52 +00001044config CMD_MMC_SWRITE
1045 bool "mmc swrite"
1046 depends on CMD_MMC && MMC_WRITE
1047 select IMAGE_SPARSE
1048 help
1049 Enable support for the "mmc swrite" command to write Android sparse
1050 images to eMMC.
1051
Miquel Raynal5db66b32018-09-29 12:58:28 +02001052config CMD_MTD
1053 bool "mtd"
Miquel Raynalff102c52019-10-25 19:39:30 +02001054 depends on MTD
Miquel Raynal5db66b32018-09-29 12:58:28 +02001055 select MTD_PARTITIONS
1056 help
1057 MTD commands support.
1058
Simon Glass72a8cf82016-01-17 20:53:51 -07001059config CMD_NAND
1060 bool "nand"
Maxime Ripard522c2822017-03-03 15:13:30 +01001061 default y if NAND_SUNXI
Miquel Raynalff102c52019-10-25 19:39:30 +02001062 depends on MTD_RAW_NAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001063 help
1064 NAND support.
1065
Boris Brezillone915d202017-02-27 18:22:07 +01001066if CMD_NAND
1067config CMD_NAND_TRIMFFS
1068 bool "nand write.trimffs"
Hans de Goeded482a8d2017-02-27 18:22:10 +01001069 default y if ARCH_SUNXI
Boris Brezillone915d202017-02-27 18:22:07 +01001070 help
1071 Allows one to skip empty pages when flashing something on a NAND.
1072
1073config CMD_NAND_LOCK_UNLOCK
1074 bool "nand lock/unlock"
1075 help
1076 NAND locking support.
1077
1078config CMD_NAND_TORTURE
1079 bool "nand torture"
1080 help
1081 NAND torture support.
1082
1083endif # CMD_NAND
1084
Zhikang Zhang0adc38b2017-08-03 02:30:59 -07001085config CMD_NVME
1086 bool "nvme"
1087 depends on NVME
1088 default y if NVME
1089 help
1090 NVM Express device support
1091
Simon Glass978f0852017-08-04 16:34:31 -06001092config CMD_ONENAND
1093 bool "onenand - access to onenand device"
Miquel Raynalff102c52019-10-25 19:39:30 +02001094 depends on MTD
Simon Glass978f0852017-08-04 16:34:31 -06001095 help
1096 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1097 various useful features. This command allows reading, writing,
1098 and erasing blocks. It allso provides a way to show and change
1099 bad blocks, and test the device.
1100
Mario Six3bf65cb2018-09-27 09:19:34 +02001101config CMD_OSD
1102 bool "osd"
1103 help
1104 Enable the 'osd' command which allows to query information from and
1105 write text data to a on-screen display (OSD) device; a virtual device
1106 associated with a display capable of displaying a text overlay on the
1107 display it's associated with..
1108
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001109config CMD_PART
1110 bool "part"
Adam Ford1811a922018-02-06 12:43:56 -06001111 select HAVE_BLOCK_DEVICE
Michal Simek5ed063d2018-07-23 15:55:13 +02001112 select PARTITION_UUIDS
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001113 help
1114 Read and display information about the partition table on
1115 various media.
1116
Simon Glass6500ec72017-08-04 16:34:34 -06001117config CMD_PCI
1118 bool "pci - Access PCI devices"
1119 help
1120 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1121 used on some devices to allow the CPU to communicate with its
1122 peripherals. Sub-commands allow bus enumeration, displaying and
1123 changing configuration space and a few other features.
1124
Patrice Chotardd5a83132018-10-24 14:10:17 +02001125config CMD_PINMUX
1126 bool "pinmux - show pins muxing"
1127 default y if PINCTRL
1128 help
1129 Parse all available pin-controllers and show pins muxing. This
1130 is useful for debug purpoer to check the pin muxing and to know if
1131 a pin is configured as a GPIO or as an alternate function.
1132
Adam Ford577c40a2018-09-09 07:05:57 -05001133config CMD_POWEROFF
1134 bool "poweroff"
1135 help
1136 Poweroff/Shutdown the system
1137
Simon Glassb75dfd22017-08-04 16:34:39 -06001138config CMD_READ
1139 bool "read - Read binary data from a partition"
1140 help
1141 Provides low-level access to the data in a partition.
1142
Simon Glass72a8cf82016-01-17 20:53:51 -07001143config CMD_REMOTEPROC
1144 bool "remoteproc"
1145 depends on REMOTEPROC
1146 help
1147 Support for Remote Processor control
1148
Simon Glass3bf926c2017-06-14 21:28:24 -06001149config CMD_SATA
1150 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -06001151 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -06001152 help
1153 SATA (Serial Advanced Technology Attachment) is a serial bus
1154 standard for connecting to hard drives and other storage devices.
1155 This command provides information about attached devices and allows
1156 reading, writing and other operations.
1157
1158 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1159 Attachment, where AT refers to an IBM AT (Advanced Technology)
1160 computer released in 1984.
1161
Simon Glass15dc63d2017-08-04 16:34:43 -06001162config CMD_SAVES
1163 bool "saves - Save a file over serial in S-Record format"
1164 help
1165 Provides a way to save a binary file using the Motorola S-Record
1166 format over the serial line.
1167
Heinrich Schuchardt0c3fecd2018-02-14 08:05:44 +01001168config CMD_SCSI
1169 bool "scsi - Access to SCSI devices"
1170 default y if SCSI
1171 help
1172 This provides a 'scsi' command which provides access to SCSI (Small
1173 Computer System Interface) devices. The command provides a way to
1174 scan the bus, reset the bus, read and write data and get information
1175 about devices.
1176
Simon Glassefce2442017-08-04 16:34:45 -06001177config CMD_SDRAM
1178 bool "sdram - Print SDRAM configuration information"
1179 help
1180 Provides information about attached SDRAM. This assumed that the
1181 SDRAM has an EEPROM with information that can be read using the
1182 I2C bus. This is only available on some boards.
1183
Simon Glass0c19b4d2017-08-04 16:34:28 -06001184config CMD_SF
1185 bool "sf"
Tom Rinia4298dd2019-05-29 17:01:28 -04001186 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Tekic2af7fb2019-10-16 17:59:42 +05301187 default y if DM_SPI_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001188 help
1189 SPI Flash support
1190
Simon Glass719d36e2017-08-04 16:34:46 -06001191config CMD_SF_TEST
1192 bool "sf test - Allow testing of SPI flash"
Tom Rinia4298dd2019-05-29 17:01:28 -04001193 depends on CMD_SF
Simon Glass719d36e2017-08-04 16:34:46 -06001194 help
1195 Provides a way to test that SPI flash is working correctly. The
1196 test is destructive, in that an area of SPI flash must be provided
1197 for the test to use. Performance information is also provided,
1198 measuring the performance of reading, writing and erasing in
1199 Mbps (Million Bits Per Second). This value should approximately
1200 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1201 everything is working properly.
1202
Simon Glass0c19b4d2017-08-04 16:34:28 -06001203config CMD_SPI
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001204 bool "sspi - Command to access spi device"
Tom Rinia4298dd2019-05-29 17:01:28 -04001205 depends on SPI
Simon Glass0c19b4d2017-08-04 16:34:28 -06001206 help
1207 SPI utility command.
1208
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001209config DEFAULT_SPI_BUS
1210 int "default spi bus used by sspi command"
1211 depends on CMD_SPI
1212 default 0
1213
1214config DEFAULT_SPI_MODE
1215 hex "default spi mode used by sspi command (see include/spi.h)"
1216 depends on CMD_SPI
1217 default 0
1218
Simon Glass5605aa82017-08-04 16:35:00 -06001219config CMD_TSI148
1220 bool "tsi148 - Command to access tsi148 device"
1221 help
1222 This provides various sub-commands to initialise and configure the
1223 Turndra tsi148 device. See the command help for full details.
1224
Faiz Abbasa539c8b2019-10-15 18:24:40 +05301225config CMD_UFS
1226 bool "Enable UFS - Universal Flash Subsystem commands"
1227 depends on UFS
1228 help
1229 "This provides commands to initialise and configure universal flash
1230 subsystem devices"
1231
Simon Glass2a242e32017-08-04 16:35:01 -06001232config CMD_UNIVERSE
1233 bool "universe - Command to set up the Turndra Universe controller"
1234 help
1235 This allows setting up the VMEbus provided by this controller.
1236 See the command help for full details.
1237
Simon Glass0c19b4d2017-08-04 16:34:28 -06001238config CMD_USB
1239 bool "usb"
Adam Ford1811a922018-02-06 12:43:56 -06001240 select HAVE_BLOCK_DEVICE
Simon Glass0c19b4d2017-08-04 16:34:28 -06001241 help
1242 USB support.
1243
Stefan Agner2f005692017-08-16 11:00:53 -07001244config CMD_USB_SDP
1245 bool "sdp"
1246 select USB_FUNCTION_SDP
1247 help
1248 Enables the command "sdp" which is used to have U-Boot emulating the
1249 Serial Download Protocol (SDP) via USB.
Michal Simek6e7bdde2018-07-23 15:55:12 +02001250
Eddie Cai453c95e2017-12-15 08:17:11 +08001251config CMD_ROCKUSB
1252 bool "rockusb"
1253 depends on USB_FUNCTION_ROCKUSB
1254 help
Michal Simek6e7bdde2018-07-23 15:55:12 +02001255 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai453c95e2017-12-15 08:17:11 +08001256 read/write info, image to/from devices. This enable rockusb command
1257 support to communication with rockusb device. for more detail about
1258 this command, please read doc/README.rockusb.
Stefan Agner2f005692017-08-16 11:00:53 -07001259
Simon Glass0c19b4d2017-08-04 16:34:28 -06001260config CMD_USB_MASS_STORAGE
1261 bool "UMS usb mass storage"
Lukasz Majewskie4d46042018-01-29 19:28:02 +01001262 select USB_FUNCTION_MASS_STORAGE
Simon Glass0c19b4d2017-08-04 16:34:28 -06001263 help
1264 USB mass storage support
1265
Tuomas Tynkkynen78e12902018-10-15 02:21:12 -07001266config CMD_VIRTIO
1267 bool "virtio"
1268 depends on VIRTIO
1269 default y if VIRTIO
1270 help
1271 VirtIO block device support
1272
Michael Walle82a00be2019-04-06 02:24:02 +02001273config CMD_WDT
1274 bool "wdt"
1275 depends on WDT
1276 help
1277 This provides commands to control the watchdog timer devices.
1278
Mario Six37c4a5f2018-08-09 14:51:21 +02001279config CMD_AXI
1280 bool "axi"
1281 depends on AXI
1282 help
1283 Enable the command "axi" for accessing AXI (Advanced eXtensible
1284 Interface) busses, a on-chip interconnect specification for managing
1285 functional blocks in SoC designs, which is also often used in designs
1286 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass72a8cf82016-01-17 20:53:51 -07001287endmenu
1288
1289
1290menu "Shell scripting commands"
1291
1292config CMD_ECHO
1293 bool "echo"
1294 default y
1295 help
1296 Echo args to console
1297
1298config CMD_ITEST
1299 bool "itest"
1300 default y
1301 help
1302 Return true/false on integer compare.
1303
1304config CMD_SOURCE
1305 bool "source"
1306 default y
1307 help
1308 Run script from memory
1309
1310config CMD_SETEXPR
1311 bool "setexpr"
1312 default y
1313 help
1314 Evaluate boolean and math expressions and store the result in an env
1315 variable.
1316 Also supports loading the value at a memory location into a variable.
1317 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1318
1319endmenu
1320
Ruslan Trofymenko17030c72019-07-05 15:37:33 +03001321menu "Android support commands"
1322
1323config CMD_AB_SELECT
1324 bool "ab_select"
1325 default n
1326 depends on ANDROID_AB
1327 help
1328 On Android devices with more than one boot slot (multiple copies of
1329 the kernel and system images) this provides a command to select which
1330 slot should be used to boot from and register the boot attempt. This
1331 is used by the new A/B update model where one slot is updated in the
1332 background while running from the other slot.
1333
1334endmenu
1335
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001336if NET
1337
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001338menuconfig CMD_NET
1339 bool "Network commands"
1340 default y
Adam Fordd7869b212018-07-20 23:03:57 -05001341 imply NETDEVICES
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001342
1343if CMD_NET
1344
1345config CMD_BOOTP
1346 bool "bootp"
Simon Glass72a8cf82016-01-17 20:53:51 -07001347 default y
1348 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001349 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001350
Joe Hershbergere88b2562018-04-13 15:26:33 -05001351config CMD_DHCP
1352 bool "dhcp"
1353 depends on CMD_BOOTP
1354 help
1355 Boot image via network using DHCP/TFTP protocol
1356
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001357config BOOTP_BOOTPATH
Joe Hershberger8df69d92018-04-13 15:26:34 -05001358 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001359 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001360 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001361 help
1362 Even though the config is called BOOTP_BOOTPATH, it stores the
1363 path in the variable 'rootpath'.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001364
1365config BOOTP_DNS
Joe Hershberger8df69d92018-04-13 15:26:34 -05001366 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001367 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001368 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001369 help
1370 The primary DNS server is stored as 'dnsip'. If two servers are
1371 returned, you must set BOOTP_DNS2 to store that second server IP
1372 also.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001373
Joe Hershberger80449c02018-04-13 15:26:35 -05001374config BOOTP_DNS2
1375 bool "Store 'dnsip2' from BOOTP/DHCP server"
1376 depends on BOOTP_DNS
1377 help
1378 If a DHCP client requests the DNS server IP from a DHCP server,
1379 it is possible that more than one DNS serverip is offered to the
1380 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1381 server IP will be stored in the additional environment
1382 variable "dnsip2". The first DNS serverip is always
1383 stored in the variable "dnsip", when BOOTP_DNS is defined.
1384
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001385config BOOTP_GATEWAY
Joe Hershberger8df69d92018-04-13 15:26:34 -05001386 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001387 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001388 depends on CMD_BOOTP
1389
1390config BOOTP_HOSTNAME
Joe Hershberger8df69d92018-04-13 15:26:34 -05001391 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001392 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001393 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001394 help
1395 The name may or may not be qualified with the local domain name.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001396
Alexander Grafbdce3402018-06-15 10:29:28 +02001397config BOOTP_PREFER_SERVERIP
1398 bool "serverip variable takes precedent over DHCP server IP."
1399 depends on CMD_BOOTP
1400 help
1401 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1402
1403 With this option enabled, the 'serverip' variable in the environment
1404 takes precedence over DHCP server IP and will only be set by the DHCP
1405 server if not already set in the environment.
1406
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001407config BOOTP_SUBNETMASK
Joe Hershberger8df69d92018-04-13 15:26:34 -05001408 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001409 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001410 depends on CMD_BOOTP
1411
Chris Packham9b23c732018-05-03 20:19:02 +12001412config BOOTP_NTPSERVER
1413 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1414 depends on CMD_BOOTP
1415
Ramon Fried3eaac632019-07-18 21:43:30 +03001416config CMD_PCAP
1417 bool "pcap capture"
1418 help
1419 Selecting this will allow capturing all Ethernet packets and store
1420 them in physical memory in a PCAP formated file,
1421 later to be analyzed by PCAP reader application (IE. WireShark).
1422
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001423config BOOTP_PXE
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001424 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001425 default y
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001426 depends on CMD_BOOTP && CMD_PXE
1427 help
1428 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001429
1430config BOOTP_PXE_CLIENTARCH
1431 hex
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001432 depends on BOOTP_PXE
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001433 default 0x16 if ARM64
1434 default 0x15 if ARM
1435 default 0 if X86
1436
1437config BOOTP_VCI_STRING
1438 string
1439 depends on CMD_BOOTP
Michal Simek4bbd6b12018-04-26 18:21:29 +05301440 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001441 default "U-Boot.armv8" if ARM64
1442 default "U-Boot.arm" if ARM
1443 default "U-Boot"
1444
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001445config CMD_TFTPBOOT
1446 bool "tftpboot"
1447 default y
1448 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001449 tftpboot - boot image via network using TFTP protocol
1450
1451config CMD_TFTPPUT
1452 bool "tftp put"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001453 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001454 help
1455 TFTP put command, for uploading files to a server
1456
1457config CMD_TFTPSRV
1458 bool "tftpsrv"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001459 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001460 help
1461 Act as a TFTP server and boot the first received file
1462
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001463config NET_TFTP_VARS
1464 bool "Control TFTP timeout and count through environment"
1465 depends on CMD_TFTPBOOT
1466 default y
1467 help
1468 If set, allows controlling the TFTP timeout through the
1469 environment variable tftptimeout, and the TFTP maximum
1470 timeout count through the variable tftptimeoutcountmax.
1471 If unset, timeout and maximum are hard-defined as 1 second
1472 and 10 timouts per TFTP transfer.
1473
Simon Glass72a8cf82016-01-17 20:53:51 -07001474config CMD_RARP
1475 bool "rarpboot"
1476 help
1477 Boot image via network using RARP/TFTP protocol
1478
Simon Glass72a8cf82016-01-17 20:53:51 -07001479config CMD_NFS
1480 bool "nfs"
1481 default y
1482 help
1483 Boot image via network using NFS protocol.
1484
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001485config CMD_MII
1486 bool "mii"
Ramon Fried7d9701d2019-09-13 18:25:03 +03001487 imply CMD_MDIO
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001488 help
Ramon Fried7d9701d2019-09-13 18:25:03 +03001489 If set, allows 802.3(clause 22) MII Management functions interface access
1490 The management interface specified in Clause 22 provides
1491 a simple, two signal, serial interface to connect a
1492 Station Management entity and a managed PHY for providing access
1493 to management parameters and services.
1494 The interface is referred to as the MII management interface.
1495
1496config CMD_MDIO
1497 bool "mdio"
1498 depends on PHYLIB
1499 help
1500 If set, allows Enable 802.3(clause 45) MDIO interface registers access
1501 The MDIO interface is orthogonal to the MII interface and extends
1502 it by adding access to more registers through indirect addressing.
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001503
Simon Glass72a8cf82016-01-17 20:53:51 -07001504config CMD_PING
1505 bool "ping"
1506 help
1507 Send ICMP ECHO_REQUEST to network host
1508
1509config CMD_CDP
1510 bool "cdp"
1511 help
1512 Perform CDP network configuration
1513
1514config CMD_SNTP
1515 bool "sntp"
1516 help
1517 Synchronize RTC via network
1518
1519config CMD_DNS
1520 bool "dns"
1521 help
1522 Lookup the IP of a hostname
1523
1524config CMD_LINK_LOCAL
1525 bool "linklocal"
Joe Hershberger6f0dc0c2018-04-30 12:45:22 -05001526 select LIB_RAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001527 help
1528 Acquire a network IP address using the link-local protocol
1529
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001530endif
1531
Simon Glassef072202017-05-17 03:25:17 -06001532config CMD_ETHSW
1533 bool "ethsw"
1534 help
1535 Allow control of L2 Ethernet switch commands. These are supported
1536 by the vsc9953 Ethernet driver at present. Sub-commands allow
1537 operations such as enabling / disabling a port and
1538 viewing/maintaining the filtering database (FDB)
1539
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001540config CMD_PXE
1541 bool "pxe"
1542 select MENU
1543 help
1544 Boot image via network using PXE protocol
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001545
Lothar Feltend8970da2018-06-22 22:29:54 +02001546config CMD_WOL
1547 bool "wol"
1548 help
1549 Wait for wake-on-lan Magic Packet
1550
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001551endif
Simon Glass72a8cf82016-01-17 20:53:51 -07001552
1553menu "Misc commands"
1554
Simon Glass0f710252017-04-26 22:27:55 -06001555config CMD_BMP
1556 bool "Enable 'bmp' command"
1557 depends on LCD || DM_VIDEO || VIDEO
1558 help
Andrius Å tikonas60a9aeb2019-09-23 22:43:41 +01001559 This provides a way to obtain information about a BMP-format image
Simon Glass0f710252017-04-26 22:27:55 -06001560 and to display it. BMP (which presumably stands for BitMaP) is a
1561 file format defined by Microsoft which supports images of various
1562 depths, formats and compression methods. Headers on the file
1563 determine the formats used. This command can be used by first loading
1564 the image into RAM, then using this command to look at it or display
1565 it.
1566
Alex Kiernanb11ed7d2018-05-12 05:49:47 +00001567config CMD_BOOTCOUNT
1568 bool "bootcount"
1569 depends on BOOTCOUNT_LIMIT
1570 help
1571 Enable the bootcount command, which allows interrogation and
1572 reset of the bootcounter.
1573
Simon Glass4893e342017-04-26 22:27:56 -06001574config CMD_BSP
1575 bool "Enable board-specific commands"
1576 help
1577 (deprecated: instead, please define a Kconfig option for each command)
1578
1579 Some boards have board-specific commands which are only enabled
1580 during developemnt and need to be turned off for production. This
1581 option provides a way to control this. The commands that are enabled
1582 vary depending on the board.
1583
Tomas Melincd3d4882016-11-25 11:01:03 +02001584config CMD_BKOPS_ENABLE
1585 bool "mmc bkops enable"
1586 depends on CMD_MMC
1587 default n
1588 help
1589 Enable command for setting manual background operations handshake
1590 on a eMMC device. The feature is optionally available on eMMC devices
1591 conforming to standard >= 4.41.
1592
Eric Nelsone40cf342016-03-28 10:05:44 -07001593config CMD_BLOCK_CACHE
1594 bool "blkcache - control and stats for block cache"
1595 depends on BLOCK_CACHE
1596 default y if BLOCK_CACHE
1597 help
1598 Enable the blkcache command, which can be used to control the
1599 operation of the cache functions.
1600 This is most useful when fine-tuning the operation of the cache
1601 during development, but also allows the cache to be disabled when
1602 it might hurt performance (e.g. when using the ums command).
1603
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001604config CMD_CACHE
1605 bool "icache or dcache"
1606 help
1607 Enable the "icache" and "dcache" commands
1608
Heinrich Schuchardt29cfc092018-09-07 19:43:11 +02001609config CMD_CONITRACE
1610 bool "conitrace - trace console input codes"
1611 help
1612 Enable the 'conitrace' command which displays the codes received
1613 from the console input as hexadecimal numbers.
1614
Anatolij Gustschin4e92e602018-12-01 10:47:20 +01001615config CMD_CLS
1616 bool "Enable clear screen command 'cls'"
1617 depends on CFB_CONSOLE || DM_VIDEO || LCD || VIDEO
1618 default y if LCD
1619 help
1620 Enable the 'cls' command which clears the screen contents
1621 on video frame buffer.
1622
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09001623config CMD_EFIDEBUG
1624 bool "efidebug - display/configure UEFI environment"
1625 depends on EFI_LOADER
Heinrich Schuchardt64b5ba42019-05-11 09:53:33 +02001626 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09001627 default n
1628 help
1629 Enable the 'efidebug' command which provides a subset of UEFI
1630 shell utility with simplified functionality. It will be useful
1631 particularly for managing boot parameters as well as examining
1632 various EFI status for debugging.
1633
Heinrich Schuchardtdab87882018-12-26 17:20:35 +01001634config CMD_EXCEPTION
1635 bool "exception - raise exception"
1636 depends on ARM || RISCV || X86
1637 help
1638 Enable the 'exception' command which allows to raise an exception.
1639
Simon Glassffe20522017-04-10 11:34:59 -06001640config CMD_LED
1641 bool "led"
Jan Kiszka2ab6e742019-01-03 09:08:42 +01001642 depends on LED
Simon Glassffe20522017-04-10 11:34:59 -06001643 default y if LED
1644 help
1645 Enable the 'led' command which allows for control of LEDs supported
1646 by the board. The LEDs can be listed with 'led list' and controlled
1647 with led on/off/togle/blink. Any LED drivers can be controlled with
1648 this command, e.g. led_gpio.
1649
Chris Packhamc9032ce2017-04-29 15:20:28 +12001650config CMD_DATE
1651 bool "date"
1652 default y if DM_RTC
AKASHI Takahiro05429b62019-11-13 09:44:49 +09001653 select LIB_DATE
Chris Packhamc9032ce2017-04-29 15:20:28 +12001654 help
1655 Enable the 'date' command for getting/setting the time/date in RTC
1656 devices.
1657
Simon Glass72a8cf82016-01-17 20:53:51 -07001658config CMD_TIME
1659 bool "time"
1660 help
1661 Run commands and summarize execution time.
1662
Simon Glassd91a9d72017-05-17 03:25:23 -06001663config CMD_GETTIME
1664 bool "gettime - read elapsed time"
1665 help
1666 Enable the 'gettime' command which reads the elapsed time since
1667 U-Boot started running. This shows the time in seconds and
1668 milliseconds. See also the 'bootstage' command which provides more
1669 flexibility for boot timing.
1670
Heinrich Schuchardt4f24ac02019-12-24 22:17:37 +01001671config CMD_RNG
1672 bool "rng command"
1673 depends on DM_RNG
1674 select HEXDUMP
1675 help
1676 Print bytes from the hardware random number generator.
1677
Simon Glass72a8cf82016-01-17 20:53:51 -07001678# TODO: rename to CMD_SLEEP
1679config CMD_MISC
1680 bool "sleep"
1681 default y
1682 help
1683 Delay execution for some time
1684
Siva Durga Prasad Paladugu0fd2290c2018-06-19 12:24:23 +02001685config MP
1686 bool "support for multiprocessor"
1687 help
1688 This provides an option to brinup
1689 different processors in multiprocessor
1690 cases.
1691
Simon Glass72a8cf82016-01-17 20:53:51 -07001692config CMD_TIMER
1693 bool "timer"
1694 help
1695 Access the system timer.
1696
Simon Glass72a8cf82016-01-17 20:53:51 -07001697config CMD_SOUND
1698 bool "sound"
1699 depends on SOUND
1700 help
1701 This provides basic access to the U-Boot's sound support. The main
1702 feature is to play a beep.
1703
1704 sound init - set up sound system
1705 sound play - play a sound
1706
Patrice Chotard993c9122019-11-25 09:07:38 +01001707config CMD_SYSBOOT
1708 bool "sysboot"
1709 select MENU
1710 help
1711 Boot image via local extlinux.conf file
1712
Miao Yan18686592016-05-22 19:37:17 -07001713config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001714 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -07001715 select QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001716 help
1717 This provides access to the QEMU firmware interface. The main
1718 feature is to allow easy loading of files passed to qemu-system
1719 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02001720
1721source "cmd/mvebu/Kconfig"
1722
Simon Glass3cef3b32017-08-04 16:34:55 -06001723config CMD_TERMINAL
1724 bool "terminal - provides a way to attach a serial terminal"
1725 help
1726 Provides a 'cu'-like serial terminal command. This can be used to
1727 access other serial ports from the system console. The terminal
1728 is very simple with no special processing of characters. As with
1729 cu, you can press ~. (tilde followed by period) to exit.
1730
Simon Glass1aa4e8d2017-08-04 16:35:02 -06001731config CMD_UUID
1732 bool "uuid, guid - generation of unique IDs"
Adam Forda451bc22018-02-06 12:14:28 -06001733 select LIB_UUID
Simon Glass1aa4e8d2017-08-04 16:35:02 -06001734 help
1735 This enables two commands:
1736
1737 uuid - generate random Universally Unique Identifier
1738 guid - generate Globally Unique Identifier based on random UUID
1739
1740 The two commands are very similar except for the endianness of the
1741 output.
1742
Simon Glass72a8cf82016-01-17 20:53:51 -07001743endmenu
1744
Lokesh Vutla5cd96612017-12-29 11:47:49 +05301745source "cmd/ti/Kconfig"
1746
Simon Glass72a8cf82016-01-17 20:53:51 -07001747config CMD_BOOTSTAGE
1748 bool "Enable the 'bootstage' command"
1749 depends on BOOTSTAGE
1750 help
1751 Add a 'bootstage' command which supports printing a report
1752 and un/stashing of bootstage data.
1753
1754menu "Power commands"
1755config CMD_PMIC
1756 bool "Enable Driver Model PMIC command"
1757 depends on DM_PMIC
1758 help
1759 This is the pmic command, based on a driver model pmic's API.
1760 Command features are unchanged:
1761 - list - list pmic devices
1762 - pmic dev <id> - show or [set] operating pmic device (NEW)
1763 - pmic dump - dump registers
1764 - pmic read address - read byte of register at address
1765 - pmic write address - write byte to register at address
1766 The only one change for this command is 'dev' subcommand.
1767
1768config CMD_REGULATOR
1769 bool "Enable Driver Model REGULATOR command"
1770 depends on DM_REGULATOR
1771 help
1772 This command is based on driver model regulator's API.
1773 User interface features:
1774 - list - list regulator devices
1775 - regulator dev <id> - show or [set] operating regulator device
1776 - regulator info - print constraints info
1777 - regulator status - print operating status
1778 - regulator value <val] <-f> - print/[set] voltage value [uV]
1779 - regulator current <val> - print/[set] current value [uA]
1780 - regulator mode <id> - print/[set] operating mode id
1781 - regulator enable - enable the regulator output
1782 - regulator disable - disable the regulator output
1783
1784 The '-f' (force) option can be used for set the value which exceeds
1785 the limits, which are found in device-tree and are kept in regulator's
1786 uclass platdata structure.
1787
1788endmenu
1789
1790menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06001791config CMD_AES
1792 bool "Enable the 'aes' command"
1793 select AES
1794 help
1795 This provides a means to encrypt and decrypt data using the AES
1796 (Advanced Encryption Standard). This algorithm uses a symetric key
1797 and is widely used as a streaming cipher. Different key lengths are
1798 supported by the algorithm but this command only supports 128 bits
1799 at present.
1800
Simon Glassc04b9b32017-04-26 22:27:53 -06001801config CMD_BLOB
1802 bool "Enable the 'blob' command"
1803 help
1804 This is used with the Freescale secure boot mechanism.
1805
1806 Freescale's SEC block has built-in Blob Protocol which provides
1807 a method for protecting user-defined data across system power
1808 cycles. SEC block protects data in a data structure called a Blob,
1809 which provides both confidentiality and integrity protection.
1810
1811 Encapsulating data as a blob
1812 Each time that the Blob Protocol is used to protect data, a
1813 different randomly generated key is used to encrypt the data.
1814 This random key is itself encrypted using a key which is derived
1815 from SoC's non-volatile secret key and a 16 bit Key identifier.
1816 The resulting encrypted key along with encrypted data is called a
1817 blob. The non-volatile secure key is available for use only during
1818 secure boot.
1819
1820 During decapsulation, the reverse process is performed to get back
1821 the original data.
1822
1823 Sub-commands:
Michal Simek6e7bdde2018-07-23 15:55:12 +02001824 blob enc - encapsulating data as a cryptgraphic blob
Simon Glassc04b9b32017-04-26 22:27:53 -06001825 blob dec - decapsulating cryptgraphic blob to get the data
1826
1827 Syntax:
1828
1829 blob enc src dst len km
1830
1831 Encapsulate and create blob of data $len bytes long
1832 at address $src and store the result at address $dst.
1833 $km is the 16 byte key modifier is also required for
1834 generation/use as key for cryptographic operation. Key
1835 modifier should be 16 byte long.
1836
1837 blob dec src dst len km
1838
1839 Decapsulate the blob of data at address $src and
1840 store result of $len byte at addr $dst.
1841 $km is the 16 byte key modifier is also required for
1842 generation/use as key for cryptographic operation. Key
1843 modifier should be 16 byte long.
1844
Simon Glass551c3932017-05-17 03:25:25 -06001845config CMD_HASH
1846 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06001847 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06001848 help
1849 This provides a way to hash data in memory using various supported
1850 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1851 saved to memory or to an environment variable. It is also possible
1852 to verify a hash against data in memory.
1853
Michalis Pappas666028f2018-04-13 10:40:57 +03001854config CMD_HVC
1855 bool "Support the 'hvc' command"
1856 depends on ARM_SMCCC
1857 help
1858 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
1859 development and testing.
1860
1861config CMD_SMC
1862 bool "Support the 'smc' command"
1863 depends on ARM_SMCCC
1864 help
1865 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
1866 development and testing.
1867
Daniel Thompson221a9492017-05-19 17:26:58 +01001868config HASH_VERIFY
1869 bool "hash -v"
1870 depends on CMD_HASH
1871 help
1872 Add -v option to verify data against a hash.
1873
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001874config CMD_TPM_V1
1875 bool
1876
1877config CMD_TPM_V2
1878 bool
Tom Rini3a8c8bf2018-07-28 09:20:12 -04001879 select CMD_LOG
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001880
Simon Glass72a8cf82016-01-17 20:53:51 -07001881config CMD_TPM
1882 bool "Enable the 'tpm' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001883 depends on TPM_V1 || TPM_V2
1884 select CMD_TPM_V1 if TPM_V1
1885 select CMD_TPM_V2 if TPM_V2
Simon Glass72a8cf82016-01-17 20:53:51 -07001886 help
1887 This provides a means to talk to a TPM from the command line. A wide
1888 range of commands if provided - see 'tpm help' for details. The
1889 command requires a suitable TPM on your board and the correct driver
1890 must be enabled.
1891
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001892if CMD_TPM
1893
Simon Glass72a8cf82016-01-17 20:53:51 -07001894config CMD_TPM_TEST
1895 bool "Enable the 'tpm test' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001896 depends on TPM_V1
Simon Glass72a8cf82016-01-17 20:53:51 -07001897 help
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001898 This provides a a series of tests to confirm that the TPMv1.x is
1899 working correctly. The tests cover initialisation, non-volatile RAM,
1900 extend, global lock and checking that timing is within expectations.
1901 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass72a8cf82016-01-17 20:53:51 -07001902 for other devices.
1903
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02001904endif
1905
Simon Glass72a8cf82016-01-17 20:53:51 -07001906endmenu
1907
Moritz Fischerbfeba012016-10-04 17:08:08 -07001908menu "Firmware commands"
1909config CMD_CROS_EC
1910 bool "Enable crosec command"
1911 depends on CROS_EC
1912 default y
1913 help
1914 Enable command-line access to the Chrome OS EC (Embedded
1915 Controller). This provides the 'crosec' command which has
1916 a number of sub-commands for performing EC tasks such as
1917 updating its flash, accessing a small saved context area
1918 and talking to the I2C bus behind the EC (if there is one).
1919endmenu
1920
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001921menu "Filesystem commands"
Marek Behún9d845502017-09-03 17:00:30 +02001922config CMD_BTRFS
1923 bool "Enable the 'btrsubvol' command"
1924 select FS_BTRFS
1925 help
1926 This enables the 'btrsubvol' command to list subvolumes
1927 of a BTRFS filesystem. There are no special commands for
1928 listing BTRFS directories or loading BTRFS files - this
1929 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
1930 when BTRFS is enabled (see FS_BTRFS).
1931
Simon Glassd66a10f2017-04-26 22:27:58 -06001932config CMD_CBFS
1933 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06001934 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06001935 help
1936 Define this to enable support for reading from a Coreboot
1937 filesystem. This is a ROM-based filesystem used for accessing files
1938 on systems that use coreboot as the first boot-loader and then load
1939 U-Boot to actually boot the Operating System. Available commands are
1940 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1941
Simon Glass97072742017-04-26 22:28:03 -06001942config CMD_CRAMFS
1943 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06001944 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06001945 help
1946 This provides commands for dealing with CRAMFS (Compressed ROM
1947 filesystem). CRAMFS is useful when space is tight since files are
1948 compressed. Two commands are provided:
1949
1950 cramfsls - lists files in a cramfs image
1951 cramfsload - loads a file from a cramfs image
1952
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001953config CMD_EXT2
1954 bool "ext2 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001955 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001956 help
1957 Enables EXT2 FS command
1958
1959config CMD_EXT4
1960 bool "ext4 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001961 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001962 help
1963 Enables EXT4 FS command
1964
1965config CMD_EXT4_WRITE
1966 depends on CMD_EXT4
1967 bool "ext4 write command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02001968 select EXT4_WRITE
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001969 help
1970 Enables EXT4 FS write command
1971
1972config CMD_FAT
1973 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05301974 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001975 help
1976 Support for the FAT fs
1977
1978config CMD_FS_GENERIC
1979 bool "filesystem commands"
1980 help
1981 Enables filesystem commands (e.g. load, ls) that work for multiple
1982 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001983
Josua Mayerefbe99c2017-04-24 10:10:45 +02001984config CMD_FS_UUID
1985 bool "fsuuid command"
1986 help
1987 Enables fsuuid command for filesystem UUID.
1988
Simon Glassb8682a72017-05-17 03:25:37 -06001989config CMD_JFFS2
1990 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06001991 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06001992 help
1993 Enables commands to support the JFFS2 (Journalling Flash File System
1994 version 2) filesystem. This enables fsload, ls and fsinfo which
1995 provide the ability to load files, list directories and obtain
1996 filesystem information.
1997
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001998config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001999 bool "MTD partition support"
Miquel Raynalff102c52019-10-25 19:39:30 +02002000 depends on MTD
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002001 help
Miquel Raynal938db6f2018-09-29 12:58:30 +02002002 MTD partitioning tool support.
2003 It is strongly encouraged to avoid using this command
2004 anymore along with 'sf', 'nand', 'onenand'. One can still
2005 declare the partitions in the mtdparts environment variable
2006 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002007
Simon Glasscb70e6c2017-08-04 16:34:30 -06002008config CMD_MTDPARTS_SPREAD
2009 bool "Padd partition size to take account of bad blocks"
2010 depends on CMD_MTDPARTS
2011 help
2012 This enables the 'spread' sub-command of the mtdparts command.
2013 This command will modify the existing mtdparts variable by increasing
2014 the size of the partitions such that 1) each partition's net size is
2015 at least as large as the size specified in the mtdparts variable and
2016 2) each partition starts on a good block.
2017
Alexander Dahl672c5702019-10-30 16:53:55 +01002018config CMD_MTDPARTS_SHOW_NET_SIZES
2019 bool "Show net size (w/o bad blocks) of partitions"
2020 depends on CMD_MTDPARTS
2021 help
2022 Adds two columns to the printed partition table showing the
2023 effective usable size of a partition, if bad blocks are taken
2024 into account.
2025
Miquel Raynal587f4452019-10-03 19:50:25 +02002026config MTDIDS_DEFAULT
2027 string "Default MTD IDs"
Miquel Raynalff102c52019-10-25 19:39:30 +02002028 depends on MTD || SPI_FLASH
Miquel Raynal587f4452019-10-03 19:50:25 +02002029 help
2030 Defines a default MTD IDs list for use with MTD partitions in the
2031 Linux MTD command line partitions format.
2032
2033config MTDPARTS_DEFAULT
2034 string "Default MTD partition scheme"
Miquel Raynalff102c52019-10-25 19:39:30 +02002035 depends on MTD || SPI_FLASH
Miquel Raynal587f4452019-10-03 19:50:25 +02002036 help
2037 Defines a default MTD partitioning scheme in the Linux MTD command
2038 line partitions format
2039
Simon Glassf8803a92017-08-04 16:34:41 -06002040config CMD_REISER
2041 bool "reiser - Access to reiserfs filesystems"
2042 help
2043 This provides two commands which operate on a resierfs filesystem,
2044 commonly used some years ago:
2045
2046 reiserls - list files
2047 reiserload - load a file
2048
Simon Glass7a764312017-08-04 16:34:58 -06002049config CMD_YAFFS2
2050 bool "yaffs2 - Access of YAFFS2 filesystem"
2051 depends on YAFFS2
2052 default y
2053 help
2054 This provides commands for accessing a YAFFS2 filesystem. Yet
2055 Another Flash Filesystem 2 is a filesystem designed specifically
2056 for NAND flash. It incorporates bad-block management and ensures
2057 that device writes are sequential regardless of filesystem
2058 activity.
2059
Simon Glass54feea12017-08-04 16:35:04 -06002060config CMD_ZFS
2061 bool "zfs - Access of ZFS filesystem"
2062 help
2063 This provides commands to accessing a ZFS filesystem, commonly used
2064 on Solaris systems. Two sub-commands are provided:
2065
2066 zfsls - list files in a directory
2067 zfsload - load a file
2068
2069 See doc/README.zfs for more details.
2070
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002071endmenu
2072
Simon Glassac20a1b2017-04-26 22:27:52 -06002073menu "Debug commands"
2074
2075config CMD_BEDBUG
2076 bool "bedbug"
2077 help
2078 The bedbug (emBEDded deBUGger) command provides debugging features
2079 for some PowerPC processors. For details please see the
2080 docuemntation in doc/README.beddbug
2081
Simon Glass3bd25cb2017-04-26 22:28:08 -06002082config CMD_DIAG
2083 bool "diag - Board diagnostics"
2084 help
2085 This command provides access to board diagnostic tests. These are
2086 called Power-on Self Tests (POST). The command allows listing of
2087 available tests and running either all the tests, or specific tests
2088 identified by name.
2089
Simon Glass1b330892017-05-17 03:25:39 -06002090config CMD_IRQ
2091 bool "irq - Show information about interrupts"
Heiko Schocher064b55c2017-06-14 05:49:40 +02002092 depends on !ARM && !MIPS && !SH
Simon Glass1b330892017-05-17 03:25:39 -06002093 help
2094 This enables two commands:
2095
2096 interrupts - enable or disable interrupts
2097 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06002098
2099config CMD_KGDB
2100 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simekb9205502018-10-04 14:26:13 +02002101 depends on PPC
Simon Glass6bac2272017-05-17 03:25:40 -06002102 help
2103 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2104 over a serial link for debugging purposes. This allows
2105 single-stepping, inspecting variables, etc. This is supported only
2106 on PowerPC at present.
2107
Simon Glassd5f61f22017-12-04 13:48:26 -07002108config CMD_LOG
2109 bool "log - Generation, control and access to logging"
Heinrich Schuchardt83a1f932018-04-19 22:02:46 +02002110 select LOG
Simon Glassd5f61f22017-12-04 13:48:26 -07002111 help
2112 This provides access to logging features. It allows the output of
2113 log data to be controlled to a limited extent (setting up the default
Simon Glassef11ed82017-12-04 13:48:27 -07002114 maximum log level for emitting of records). It also provides access
2115 to a command used for testing the log system.
Simon Glassd5f61f22017-12-04 13:48:26 -07002116
Simon Glassce058ae2017-08-04 16:34:59 -06002117config CMD_TRACE
2118 bool "trace - Support tracing of function calls and timing"
2119 help
2120 Enables a command to control using of function tracing within
2121 U-Boot. This allows recording of call traces including timing
2122 information. The command can write data to memory for exporting
Simon Glassa24a78d2019-04-08 13:20:51 -06002123 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glassce058ae2017-08-04 16:34:59 -06002124 details.
2125
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002126config CMD_AVB
2127 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniukb0aa74a2018-07-17 14:33:25 +03002128 depends on AVB_VERIFY
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002129 default n
2130 help
2131 Enables a "avb" command to perform verification of partitions using
2132 Android Verified Boot 2.0 functionality. It includes such subcommands:
2133 avb init - initialize avb2 subsystem
2134 avb read_rb - read rollback index
2135 avb write_rb - write rollback index
2136 avb is_unlocked - check device lock state
2137 avb get_uuid - read and print uuid of a partition
2138 avb read_part - read data from partition
2139 avb read_part_hex - read data from partition and output to stdout
2140 avb write_part - write data to partition
2141 avb verify - run full verification chain
Simon Glassac20a1b2017-04-26 22:27:52 -06002142endmenu
2143
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002144config CMD_UBI
2145 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002146 select MTD_UBI
2147 help
2148 UBI is a software layer above MTD layer which admits use of LVM-like
2149 logical volumes on top of MTD devices, hides some complexities of
2150 flash chips like wear and bad blocks and provides some other useful
2151 capabilities. Please, consult the MTD web site for more details
2152 (www.linux-mtd.infradead.org). Activate this option if you want
2153 to use U-Boot UBI commands.
Miquel Raynalc58fb2c2018-09-29 12:58:29 +02002154 It is also strongly encouraged to also enable CONFIG_MTD to get full
2155 partition support.
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002156
Boris Brezillon173aafb2017-02-27 18:22:06 +01002157config CMD_UBIFS
2158 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01002159 depends on CMD_UBI
Michal Simek5ed063d2018-07-23 15:55:13 +02002160 default y if CMD_UBI
Karl Beldan24fc9532017-07-12 16:11:47 +00002161 select LZO
Boris Brezillon173aafb2017-02-27 18:22:06 +01002162 help
2163 UBIFS is a file system for flash devices which works on top of UBI.
2164
Simon Glass72a8cf82016-01-17 20:53:51 -07002165endmenu