blob: 61e280fb1a4c1661202d1ceaef1b1fb99a7ff59e [file] [log] [blame]
Simon Glassd4ebc6b2023-10-26 14:31:29 -04001menuconfig CMDLINE
2 bool "Command line interface"
Simon Glassaa34ef22016-03-13 19:07:28 -06003 default y
4 help
5 Enable U-Boot's command-line functions. This provides a means
6 to enter commands into U-Boot for a wide variety of purposes. It
7 also allows scripts (containing commands) to be executed.
8 Various commands and command categorys can be indivdually enabled.
9 Depending on the number of commands enabled, this can add
10 substantially to the size of U-Boot.
11
Simon Glassd4ebc6b2023-10-26 14:31:29 -040012if CMDLINE
13
Simon Glass29499a02016-01-17 20:53:51 -070014config HUSH_PARSER
15 bool "Use hush shell"
Simon Glass29499a02016-01-17 20:53:51 -070016 help
17 This option enables the "hush" shell (from Busybox) as command line
18 interpreter, thus enabling powerful command line syntax like
19 if...then...else...fi conditionals or `&&' and '||'
20 constructs ("shell scripts").
21
22 If disabled, you get the old, much simpler behaviour with a somewhat
23 smaller memory footprint.
24
Francis Laniel529cb2c2023-12-22 22:02:29 +010025menu "Hush flavor to use"
26depends on HUSH_PARSER
27
28config HUSH_OLD_PARSER
29 bool "Use hush old parser"
Tom Rinib8d3d712024-01-18 09:07:25 -050030 default y
Francis Laniel529cb2c2023-12-22 22:02:29 +010031 help
32 This option enables the old flavor of hush based on hush Busybox from
33 2005.
34
Tom Rinib8d3d712024-01-18 09:07:25 -050035 It is actually the default U-Boot shell when decided to use hush as shell.
36
Francis Laniel3b66e572023-12-22 22:02:32 +010037config HUSH_MODERN_PARSER
38 bool "Use hush modern parser"
39 help
40 This option enables the new flavor of hush based on hush upstream
41 Busybox.
42
Tom Rinib8d3d712024-01-18 09:07:25 -050043 This parser is experimental and not well tested.
44
Francis Laniel3b66e572023-12-22 22:02:32 +010045config HUSH_SELECTABLE
46 bool
47 default y if HUSH_OLD_PARSER && HUSH_MODERN_PARSER
Francis Laniel529cb2c2023-12-22 22:02:29 +010048endmenu
49
Adam Ford58dbf862018-02-06 07:58:59 -060050config CMDLINE_EDITING
51 bool "Enable command line editing"
Adam Ford58dbf862018-02-06 07:58:59 -060052 default y
53 help
54 Enable editing and History functions for interactive command line
55 input operations
56
Tom Rini24d32042022-03-30 18:07:14 -040057config CMDLINE_PS_SUPPORT
58 bool "Enable support for changing the command prompt string at run-time"
59 depends on HUSH_PARSER
60 help
61 Only static string in the prompt is supported so far. The string is
62 obtained from environment variables PS1 and PS2.
63
Adam Ford58dbf862018-02-06 07:58:59 -060064config AUTO_COMPLETE
65 bool "Enable auto complete using TAB"
Adam Ford58dbf862018-02-06 07:58:59 -060066 default y
67 help
68 Enable auto completion of commands using TAB.
69
70config SYS_LONGHELP
71 bool "Enable long help messages"
Simon Glassd4ebc6b2023-10-26 14:31:29 -040072 default y
Adam Ford58dbf862018-02-06 07:58:59 -060073 help
74 Defined when you want long help messages included
75 Do not set this option when short of memory.
76
Simon Glass29499a02016-01-17 20:53:51 -070077config SYS_PROMPT
78 string "Shell prompt"
Michal Simekf048cae2019-09-25 12:32:41 +020079 default "Zynq> " if ARCH_ZYNQ
Michal Simek4f107432019-09-25 12:37:15 +020080 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass29499a02016-01-17 20:53:51 -070081 default "=> "
82 help
83 This string is displayed in the command line to the left of the
84 cursor.
85
Patrick Delaunaya81e9dc2020-10-26 09:31:42 +010086config SYS_PROMPT_HUSH_PS2
87 string "Hush shell secondary prompt"
88 depends on HUSH_PARSER
89 default "> "
90 help
91 This defines the secondary prompt string, which is
92 printed when the command interpreter needs more input
93 to complete a command. Usually "> ".
94
Tom Riniba5c2b02022-05-11 16:21:06 -040095config SYS_MAXARGS
96 int "Maximum number arguments accepted by commands"
Heinrich Schuchardtee65ec02024-01-15 14:46:56 +010097 default 64
Tom Riniba5c2b02022-05-11 16:21:06 -040098
Christoph Muellner388b1452019-04-05 13:03:46 +020099config SYS_XTRACE
Sean Anderson1f863052021-03-04 11:34:23 -0500100 bool "Command execution tracer"
Simon Glassd4ebc6b2023-10-26 14:31:29 -0400101 default y
Christoph Muellner388b1452019-04-05 13:03:46 +0200102 help
103 This option enables the possiblity to print all commands before
104 executing them and after all variables are evaluated (similar
105 to Bash's xtrace/'set -x' feature).
106 To enable the tracer a variable "xtrace" needs to be defined in
107 the environment.
108
Sam Protsenko13c1f3a2017-09-28 12:33:45 -0700109config BUILD_BIN2C
110 bool
111
Simon Glass29499a02016-01-17 20:53:51 -0700112comment "Commands"
113
114menu "Info commands"
115
Simon Glassfaf08c72020-04-26 09:19:53 -0600116config CMD_ACPI
117 bool "acpi"
Simon Glasse264be42023-05-04 16:54:57 -0600118 depends on ACPI
Heinrich Schuchardt97430462021-01-20 21:37:56 +0100119 default y
Simon Glassfaf08c72020-04-26 09:19:53 -0600120 help
121 List and dump ACPI tables. ACPI (Advanced Configuration and Power
122 Interface) is used mostly on x86 for providing information to the
123 Operating System about devices in the system. The tables are set up
124 by the firmware, typically U-Boot but possibly an earlier firmware
125 module, if U-Boot is chain-loaded from something else. ACPI tables
126 can also include code, to perform hardware-specific tasks required
127 by the Operating Systems. This allows some amount of separation
128 between the firmware and OS, and is particularly useful when you
129 want to make hardware changes without the OS needing to be adjusted.
130
Bin Meng70b22cf2021-02-25 17:22:34 +0800131config CMD_ADDRMAP
132 bool "addrmap"
133 depends on ADDR_MAP
134 default y
135 help
136 List non-identity virtual-physical memory mappings for 32-bit CPUs.
137
Simon Glass29499a02016-01-17 20:53:51 -0700138config CMD_BDI
139 bool "bdinfo"
140 default y
141 help
142 Print board info
143
Simon Glass5087c772023-07-15 21:38:46 -0600144config CMD_BDINFO_EXTRA
145 bool "bdinfo extra features"
146 default y if SANDBOX || X86
147 help
148 Show additional information about the board. This uses a little more
149 code space but provides more options, particularly those useful for
150 bringup, development and debugging.
151
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900152config CMD_CONFIG
153 bool "config"
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900154 default SANDBOX
Michal Simek84f3dec2018-07-23 15:55:13 +0200155 select BUILD_BIN2C
Masahiro Yamadabb92b422017-01-30 11:12:07 +0900156 help
157 Print ".config" contents.
158
159 If this option is enabled, the ".config" file contents are embedded
160 in the U-Boot image and can be printed on the console by the "config"
161 command. This provides information of which options are enabled on
162 the running U-Boot.
163
Simon Glass29499a02016-01-17 20:53:51 -0700164config CMD_CONSOLE
165 bool "coninfo"
166 default y
167 help
168 Print console devices and information.
169
170config CMD_CPU
171 bool "cpu"
Heinrich Schuchardt1cdcd0c2020-11-05 00:29:11 +0100172 depends on CPU
Simon Glass29499a02016-01-17 20:53:51 -0700173 help
174 Print information about available CPUs. This normally shows the
175 number of CPUs, type (e.g. manufacturer, architecture, product or
176 internal name) and clock frequency. Other information may be
177 available depending on the CPU driver.
178
Sughosh Ganu0f951fd2022-10-21 18:16:04 +0530179config CMD_FWU_METADATA
180 bool "fwu metadata read"
181 depends on FWU_MULTI_BANK_UPDATE
182 help
183 Command to read the metadata and dump it's contents
184
Simon Glass4c0bf972023-10-01 19:13:06 -0600185config CMD_HISTORY
186 bool "history"
187 depends on CMDLINE_EDITING
188 help
189 Show the command-line history, i.e. a list of commands that are in
190 the history buffer.
191
Hanyuan Zhaoae31efc2024-03-05 15:37:35 +0800192config CMD_HISTORY_USE_CALLOC
193 bool "dynamically allocate memory"
194 default y
195 depends on CMD_HISTORY
196 help
197 Saying Y to this will use calloc to get the space for history
198 storing. Otherwise the history buffer will be an uninitialized
199 static array directly, without the memory allocation, and it is
200 writable after relocation to RAM. If u-boot is running from ROM
201 all the time or unsure, say Y to this.
202
Simon Glass29499a02016-01-17 20:53:51 -0700203config CMD_LICENSE
204 bool "license"
Masahiro Yamada81680332017-01-30 11:12:08 +0900205 select BUILD_BIN2C
Ivan Orlovd080a1a2024-01-11 12:58:19 +0000206 depends on GZIP
Simon Glass29499a02016-01-17 20:53:51 -0700207 help
208 Print GPL license text
209
Simon Glass8c501022019-12-06 21:41:54 -0700210config CMD_PMC
211 bool "pmc"
212 help
213 Provides access to the Intel Power-Management Controller (PMC) so
214 that its state can be examined. This does not currently support
215 changing the state but it is still useful for debugging and seeing
216 what is going on.
217
Christophe Leroye538bbc2017-08-04 16:34:40 -0600218config CMD_REGINFO
219 bool "reginfo"
220 depends on PPC
221 help
222 Register dump
223
Baruch Siachfad48982020-01-21 15:44:54 +0200224config CMD_TLV_EEPROM
225 bool "tlv_eeprom"
226 depends on I2C_EEPROM
Pali Rohár2bbf40b2022-05-30 10:42:35 +0200227 select CRC32
Baruch Siachfad48982020-01-21 15:44:54 +0200228 help
229 Display and program the system EEPROM data block in ONIE Tlvinfo
230 format. TLV stands for Type-Length-Value.
231
232config SPL_CMD_TLV_EEPROM
233 bool "tlv_eeprom for SPL"
234 depends on SPL_I2C_EEPROM
Simon Glass284cb9c2021-07-10 21:14:31 -0600235 select SPL_DRIVERS_MISC
Pali Rohár2bbf40b2022-05-30 10:42:35 +0200236 select SPL_CRC32
Baruch Siachfad48982020-01-21 15:44:54 +0200237 help
238 Read system EEPROM data block in ONIE Tlvinfo format from SPL.
239
Heinrich Schuchardt95492ae2020-08-20 19:43:39 +0200240config CMD_SBI
241 bool "sbi"
242 depends on RISCV_SMODE && SBI_V02
243 help
244 Display information about the SBI implementation.
245
Heinrich Schuchardtbf11df82024-01-25 16:54:34 +0100246config CMD_SMBIOS
247 bool "smbios"
248 depends on SMBIOS
249 help
250 Display the SMBIOS information.
251
Simon Glass29499a02016-01-17 20:53:51 -0700252endmenu
253
254menu "Boot commands"
255
256config CMD_BOOTD
257 bool "bootd"
258 default y
259 help
260 Run the command stored in the environment "bootcmd", i.e.
261 "bootd" does the same thing as "run bootcmd".
262
263config CMD_BOOTM
264 bool "bootm"
265 default y
266 help
267 Boot an application image from the memory.
268
Philippe Reynesae1f2ca2022-03-28 22:57:00 +0200269config CMD_BOOTM_PRE_LOAD
270 bool "enable pre-load on bootm"
271 depends on CMD_BOOTM
272 depends on IMAGE_PRE_LOAD
Philippe Reynesae1f2ca2022-03-28 22:57:00 +0200273 help
274 Enable support of stage pre-load for the bootm command.
275 This stage allow to check or modify the image provided
276 to the bootm command.
277
Simon Glass379f4382022-04-24 23:31:10 -0600278config CMD_BOOTDEV
279 bool "bootdev"
280 depends on BOOTSTD
281 default y if BOOTSTD_FULL
282 help
283 Support listing available bootdevs (boot devices) which can provide an
284 OS to boot, as well as showing information about a particular one.
285
286 This command is not necessary for bootstd to work.
287
Simon Glass7617f492022-04-24 23:31:11 -0600288config CMD_BOOTFLOW
289 bool "bootflow"
290 depends on BOOTSTD
291 default y
292 help
293 Support scanning for bootflows available with the bootdevs. The
294 bootflows can optionally be booted.
295
296config CMD_BOOTFLOW_FULL
297 bool "bootflow - extract subcommands"
298 depends on BOOTSTD_FULL
Simon Glass2d5a8e12023-05-06 08:27:09 -0600299 default y
Simon Glass7617f492022-04-24 23:31:11 -0600300 help
301 Add the ability to list the available bootflows, select one and obtain
302 information about it.
303
304 This command is not necessary for bootstd to work.
305
Simon Glassc49fd722022-04-24 23:31:12 -0600306config CMD_BOOTMETH
307 bool "bootmeth"
308 depends on BOOTSTD
309 default y if BOOTSTD_FULL
310 help
311 Support listing available bootmethds (methods used to boot an
312 Operating System), as well as selecting the order that the bootmeths
313 are used.
314
315 This command is not necessary for bootstd to work.
316
Cristian Ciocaltea6aca5982019-12-24 18:05:39 +0200317config BOOTM_EFI
318 bool "Support booting UEFI FIT images"
AKASHI Takahiro9b08b9a2024-01-17 13:39:41 +0900319 depends on EFI_BINARY_EXEC && CMD_BOOTM && FIT
Cristian Ciocaltea6aca5982019-12-24 18:05:39 +0200320 default y
321 help
322 Support booting UEFI FIT images via the bootm command.
323
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500324config CMD_BOOTZ
325 bool "bootz"
326 help
327 Boot the Linux zImage
328
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400329config CMD_BOOTI
330 bool "booti"
Simon Glass936d05d2023-10-01 19:15:24 -0600331 depends on ARM64 || RISCV || SANDBOX
Masahiro Yamada04cf1552016-08-12 08:31:16 -0400332 default y
333 help
334 Boot an AArch64 Linux Kernel image from memory.
335
Tom Rini9a102072019-09-20 17:36:50 -0400336config BOOTM_LINUX
337 bool "Support booting Linux OS images"
338 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
339 default y
340 help
341 Support booting the Linux kernel directly via a command such as bootm
342 or booti or bootz.
343
344config BOOTM_NETBSD
345 bool "Support booting NetBSD (non-EFI) loader images"
346 depends on CMD_BOOTM
347 default y
348 help
349 Support booting NetBSD via the bootm command.
350
351config BOOTM_OPENRTOS
352 bool "Support booting OPENRTOS / FreeRTOS images"
353 depends on CMD_BOOTM
354 help
355 Support booting OPENRTOS / FreeRTOS via the bootm command.
356
357config BOOTM_OSE
358 bool "Support booting Enea OSE images"
Tom Rini1d0b1fc2019-12-05 18:46:11 -0500359 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini9a102072019-09-20 17:36:50 -0400360 depends on CMD_BOOTM
361 help
362 Support booting Enea OSE images via the bootm command.
363
364config BOOTM_PLAN9
365 bool "Support booting Plan9 OS images"
366 depends on CMD_BOOTM
367 default y
368 help
369 Support booting Plan9 images via the bootm command.
370
371config BOOTM_RTEMS
372 bool "Support booting RTEMS OS images"
373 depends on CMD_BOOTM
374 default y
375 help
376 Support booting RTEMS images via the bootm command.
377
Linus Walleijbef39252023-02-01 00:16:13 +0100378config CMD_SEAMA
379 bool "Support read SEAMA NAND images"
380 depends on MTD_RAW_NAND
381 help
382 Support reading NAND Seattle Image (SEAMA) images.
383
Simon Glasse5a7b772022-07-30 15:52:37 -0600384config CMD_VBE
385 bool "vbe - Verified Boot for Embedded"
386 depends on BOOTMETH_VBE
Simon Glassd39d5b22022-08-23 10:14:05 -0700387 default y if BOOTSTD_FULL
Simon Glasse5a7b772022-07-30 15:52:37 -0600388 help
389 Provides various subcommands related to VBE, such as listing the
390 available methods, looking at the state and changing which method
391 is used to boot. Updating the parameters is not currently
392 supported.
393
Tom Rini9a102072019-09-20 17:36:50 -0400394config BOOTM_VXWORKS
395 bool "Support booting VxWorks OS images"
396 depends on CMD_BOOTM
397 default y
398 help
399 Support booting VxWorks images via the bootm command.
400
AKASHI Takahiro8d95b6e2019-11-08 10:32:15 +0900401config CMD_BOOTEFI
402 bool "bootefi"
403 depends on EFI_LOADER
404 default y
405 help
406 Boot an EFI image from memory.
407
AKASHI Takahiro6a6858e2023-11-21 10:29:40 +0900408if CMD_BOOTEFI
409config CMD_BOOTEFI_BINARY
410 bool "Allow booting an EFI binary directly"
AKASHI Takahiro9b08b9a2024-01-17 13:39:41 +0900411 depends on EFI_BINARY_EXEC
AKASHI Takahiro6a6858e2023-11-21 10:29:40 +0900412 default y
413 help
414 Select this option to enable direct execution of binary at 'bootefi'.
415 This subcommand will allow you to load the UEFI binary using
416 other U-Boot commands or external methods and then run it.
417
Simon Glassd1e46f02023-10-26 14:31:20 -0400418config CMD_BOOTEFI_BOOTMGR
419 bool "UEFI Boot Manager command"
AKASHI Takahiroe3e542d2024-01-17 13:39:42 +0900420 depends on EFI_BOOTMGR
Simon Glassd1e46f02023-10-26 14:31:20 -0400421 default y
422 help
423 Select this option to enable the 'bootmgr' subcommand of 'bootefi'.
424 This subcommand will allow you to select the UEFI binary to be booted
425 via UEFI variables Boot####, BootOrder, and BootNext.
426
Alexander Grafb5483512016-11-17 22:40:10 +0100427config CMD_BOOTEFI_HELLO_COMPILE
428 bool "Compile a standard EFI hello world binary for testing"
Alexander Grafb5483512016-11-17 22:40:10 +0100429 default y
430 help
431 This compiles a standard EFI hello world application with U-Boot so
432 that it can be used with the test/py testing framework. This is useful
433 for testing that EFI is working at a basic level, and for bringing
434 up EFI support on a new architecture.
435
436 No additional space will be required in the resulting U-Boot binary
437 when this option is enabled.
438
Simon Glassfac4ced2016-11-07 08:47:08 -0700439config CMD_BOOTEFI_HELLO
440 bool "Allow booting a standard EFI hello world for testing"
AKASHI Takahiro9b08b9a2024-01-17 13:39:41 +0900441 depends on CMD_BOOTEFI_BINARY && CMD_BOOTEFI_HELLO_COMPILE
Heinrich Schuchardt9ad6e1e2020-07-13 07:33:40 +0200442 default y if CMD_BOOTEFI_SELFTEST
Simon Glassfac4ced2016-11-07 08:47:08 -0700443 help
444 This adds a standard EFI hello world application to U-Boot so that
445 it can be used with the 'bootefi hello' command. This is useful
446 for testing that EFI is working at a basic level, and for bringing
447 up EFI support on a new architecture.
448
Heinrich Schuchardtd33ae3e2017-09-15 10:06:11 +0200449source lib/efi_selftest/Kconfig
AKASHI Takahiro6a6858e2023-11-21 10:29:40 +0900450endif
Heinrich Schuchardtd33ae3e2017-09-15 10:06:11 +0200451
Tom Rini697f4732016-11-29 09:14:56 -0500452config CMD_BOOTMENU
453 bool "bootmenu"
454 select MENU
Masahisa Kojima015405a2022-04-28 17:09:41 +0900455 select CHARSET
Tom Rini697f4732016-11-29 09:14:56 -0500456 help
457 Add an ANSI terminal boot menu command.
458
Eugeniu Roscaee98dac2019-12-24 17:51:06 +0100459config CMD_ADTIMG
460 bool "adtimg"
Sam Protsenko92f95bb2018-08-16 23:34:13 +0300461 help
462 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
463 image into RAM, dump image structure information, etc. Those dtb/dtbo
464 files should be merged in one dtb further, which needs to be passed to
465 the kernel, as part of a boot process.
466
Sam Protsenko035502e2020-01-24 17:53:42 +0200467config CMD_ABOOTIMG
468 bool "abootimg"
469 depends on ANDROID_BOOT_IMAGE
470 help
471 Android Boot Image manipulation commands. Allows one to extract
472 images contained in boot.img, like kernel, ramdisk, dtb, etc, and
473 obtain corresponding meta-information from boot.img.
474
Sam Protsenkod8efc7c2020-01-24 17:53:43 +0200475 See doc/android/boot-image.rst for details.
476
Simon Glassc8925112023-06-01 10:23:02 -0600477config CMD_CEDIT
478 bool "cedit - Configuration editor"
479 depends on CEDIT
480 default y
481 help
482 Provides a command to allow editing of board configuration and
483 providing a UI for the user to adjust settings. Subcommands allow
484 loading and saving of configuration as well as showing an editor.
485
Simon Glass29499a02016-01-17 20:53:51 -0700486config CMD_ELF
487 bool "bootelf, bootvx"
488 default y
Keerthy76f361a2020-02-12 13:55:03 +0530489 select LIB_ELF
Simon Glass29499a02016-01-17 20:53:51 -0700490 help
491 Boot an ELF/vxWorks image from the memory.
492
Maxim Moskalets938f0112024-03-08 00:29:14 +0300493config CMD_ELF_FDT_SETUP
494 bool "Flattened Device Tree setup in bootelf cmd"
495 default n
496 depends on CMD_ELF
497 select LIB_LIBFDT
498 select LMB
499 help
500 Do FDT setup in bootelf command optionally by param -d, which
501 allows to bring additional system info (e.g. /memory node) to
502 the Operating System or application.
503
Michal Simekf168c652016-04-06 20:28:04 +0200504config CMD_FDT
505 bool "Flattened Device Tree utility commands"
506 default y
507 depends on OF_LIBFDT
508 help
509 Do FDT related setup before booting into the Operating System.
510
Kory Maincent7444a7d2021-05-04 19:31:22 +0200511config SUPPORT_EXTENSION_SCAN
512 bool
513
514config CMD_EXTENSION
515 bool "Extension board management command"
516 select CMD_FDT
517 depends on SUPPORT_EXTENSION_SCAN
518 help
519 Enables the "extension" command, which allows to detect
520 extension boards connected to the system, and apply
521 corresponding Device Tree overlays.
522
Simon Glass29499a02016-01-17 20:53:51 -0700523config CMD_GO
524 bool "go"
525 default y
526 help
527 Start an application at a given address.
528
529config CMD_RUN
530 bool "run"
531 default y
532 help
533 Run the command in the given environment variable.
534
535config CMD_IMI
536 bool "iminfo"
537 default y
538 help
539 Print header information for application image.
540
541config CMD_IMLS
542 bool "imls"
Simon Glass29499a02016-01-17 20:53:51 -0700543 help
544 List all images found in flash
545
546config CMD_XIMG
547 bool "imxtract"
548 default y
549 help
550 Extract a part of a multi-image.
551
Nikita Shubin25498ed2022-12-19 11:05:27 +0300552config SYS_XIMG_LEN
553 hex "imxtract max gunzip size"
554 default 0x800000
555 depends on CMD_XIMG && GZIP
556 help
557 This provides the size of the commad-line argument area
558 used by imxtract for extracting pieces of FIT image.
559 It should be large enough to fit uncompressed size of
560 FIT piece we are extracting.
561
Simon Glassc6567fa2017-08-04 16:34:48 -0600562config CMD_SPL
563 bool "spl export - Export boot information for Falcon boot"
564 depends on SPL
565 help
566 Falcon mode allows booting directly from SPL into an Operating
567 System such as Linux, thus skipping U-Boot proper. See
568 doc/README.falcon for full information about how to use this
569 command.
570
Simon Glassc034e3d2017-08-04 16:34:49 -0600571config CMD_SPL_NAND_OFS
Lukasz Majewski10797442019-05-16 16:01:36 +0200572 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewskie73ce322019-05-16 16:01:35 +0200573 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Tom Rinif18679c2023-08-02 11:09:43 -0400574 default 0x0
Simon Glassc034e3d2017-08-04 16:34:49 -0600575 help
576 This provides the offset of the command line arguments for Linux
577 when booting from NAND in Falcon mode. See doc/README.falcon
578 for full information about how to use this option (and also see
579 board/gateworks/gw_ventana/README for an example).
580
Lukasz Majewski06d92532019-05-16 16:01:37 +0200581config CMD_SPL_NOR_OFS
582 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
583 depends on CMD_SPL && SPL_NOR_SUPPORT
Tom Rinif18679c2023-08-02 11:09:43 -0400584 default 0x0
Lukasz Majewski06d92532019-05-16 16:01:37 +0200585 help
586 This provides the offset of the command line arguments or dtb for
587 Linux when booting from NOR in Falcon mode.
588
Simon Glass51ef45a2017-08-04 16:34:50 -0600589config CMD_SPL_WRITE_SIZE
590 hex "Size of argument area"
591 depends on CMD_SPL
592 default 0x2000
593 help
594 This provides the size of the command-line argument area in NAND
595 flash used by Falcon-mode boot. See the documentation until CMD_SPL
596 for detail.
597
Simon Glassa18b9692017-08-04 16:34:57 -0600598config CMD_THOR_DOWNLOAD
599 bool "thor - TIZEN 'thor' download"
Marek Szyprowskide4752e2019-10-02 12:29:08 +0200600 select DFU
Venkatesh Yadav Abbarapu7143f2a2023-09-04 08:45:27 +0530601 select USB_FUNCTION_THOR
602 depends on USB_GADGET_DOWNLOAD
Simon Glassa18b9692017-08-04 16:34:57 -0600603 help
604 Implements the 'thor' download protocol. This is a way of
605 downloading a software update over USB from an attached host.
606 There is no documentation about this within the U-Boot source code
607 but you should be able to find something on the interwebs.
608
Tom Rini40791152022-12-02 16:42:46 -0500609config THOR_RESET_OFF
610 bool "thor: Disable reset on completion"
611 depends on CMD_THOR_DOWNLOAD
612
Simon Glass01d097d2017-08-04 16:35:03 -0600613config CMD_ZBOOT
614 bool "zboot - x86 boot command"
615 help
616 With x86 machines it is common to boot a bzImage file which
617 contains both a kernel and a setup.bin file. The latter includes
618 configuration information from the dark ages which x86 boards still
619 need to pick things out of.
620
621 Consider using FIT in preference to this since it supports directly
622 booting both 32- and 64-bit kernels, as well as secure boot.
623 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
624
Simon Glass29499a02016-01-17 20:53:51 -0700625endmenu
626
627menu "Environment commands"
628
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500629config CMD_ASKENV
630 bool "ask for env variable"
631 help
632 Ask for environment variable
633
Simon Glass29499a02016-01-17 20:53:51 -0700634config CMD_EXPORTENV
635 bool "env export"
636 default y
637 help
638 Export environments.
639
640config CMD_IMPORTENV
641 bool "env import"
642 default y
643 help
644 Import environments.
645
646config CMD_EDITENV
647 bool "editenv"
648 default y
649 help
650 Edit environment variable.
651
Dinh Nguyen0685bef2016-04-21 09:05:23 -0500652config CMD_GREPENV
653 bool "search env"
654 help
655 Allow for searching environment variables
656
Simon Glass29499a02016-01-17 20:53:51 -0700657config CMD_SAVEENV
658 bool "saveenv"
659 default y
660 help
661 Save all environment variables into the compiled-in persistent
662 storage.
663
Frank Wunderlich33afa932019-06-29 11:36:19 +0200664config CMD_ERASEENV
665 bool "eraseenv"
Frank Wunderlich33afa932019-06-29 11:36:19 +0200666 depends on CMD_SAVEENV
667 help
668 Erase environment variables from the compiled-in persistent
669 storage.
670
Simon Glass29499a02016-01-17 20:53:51 -0700671config CMD_ENV_EXISTS
672 bool "env exists"
673 default y
674 help
675 Check if a variable is defined in the environment for use in
676 shell scripting.
677
Simon Glass84d67c72017-05-17 03:25:13 -0600678config CMD_ENV_CALLBACK
679 bool "env callbacks - print callbacks and their associated variables"
680 help
681 Some environment variable have callbacks defined by
682 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
683 For example changing "baudrate" adjust the serial baud rate. This
684 command lists the currently defined callbacks.
685
Simon Glassc31e2d82017-05-17 03:25:14 -0600686config CMD_ENV_FLAGS
687 bool "env flags -print variables that have non-default flags"
688 help
689 Some environment variables have special flags that control their
690 behaviour. For example, serial# can only be written once and cannot
691 be deleted. This command shows the variables that have special
692 flags.
693
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900694config CMD_NVEDIT_EFI
695 bool "env [set|print] -e - set/print UEFI variables"
696 depends on EFI_LOADER
AKASHI Takahiro117e68a2019-02-25 15:54:36 +0900697 imply HEXDUMP
698 help
699 UEFI variables are encoded as some form of U-Boot variables.
700 If enabled, we are allowed to set/print UEFI variables using
701 "env" command with "-e" option without knowing details.
702
Samuel Dionne-Riel46127db2021-12-20 18:31:56 -0500703config CMD_NVEDIT_INDIRECT
704 bool "env indirect - Sets environment value from another"
705
Leo Ruan7450b872019-05-24 17:20:19 +0200706config CMD_NVEDIT_INFO
707 bool "env info - print or evaluate environment information"
708 help
709 Print environment information:
710 - env_valid : is environment valid
711 - env_ready : is environment imported into hash table
712 - env_use_default : is default environment used
713
714 This command can be optionally used for evaluation in scripts:
715 [-d] : evaluate whether default environment is used
716 [-p] : evaluate whether environment can be persisted
Patrick Delaunay109ec8f2020-06-19 14:03:34 +0200717 [-q] : quiet output
Leo Ruan7450b872019-05-24 17:20:19 +0200718 The result of multiple evaluations will be combined with AND.
719
Patrick Delaunay748e42e2020-07-28 11:51:20 +0200720config CMD_NVEDIT_LOAD
721 bool "env load"
722 help
723 Load all environment variables from the compiled-in persistent
724 storage.
725
Patrick Delaunaya59f7ec2020-07-28 11:51:21 +0200726config CMD_NVEDIT_SELECT
727 bool "env select"
728 help
729 Select the compiled-in persistent storage of environment variables.
730
Simon Glass29499a02016-01-17 20:53:51 -0700731endmenu
732
733menu "Memory commands"
734
Mario Six8a4f6642018-03-28 14:39:18 +0200735config CMD_BINOP
736 bool "binop"
737 help
738 Compute binary operations (xor, or, and) of byte arrays of arbitrary
739 size from memory and store the result in memory or the environment.
740
Simon Glassb936a972020-09-19 18:49:26 -0600741config CMD_BLOBLIST
742 bool "bloblist"
743 default y if BLOBLIST
744 help
745 Show information about the bloblist, a collection of binary blobs
746 held in memory that persist between SPL and U-Boot. In the case of
747 x86 devices the bloblist can be used to hold ACPI tables so that they
748 remain available in memory.
749
Simon Glass29499a02016-01-17 20:53:51 -0700750config CMD_CRC32
751 bool "crc32"
752 default y
Michal Simek84f3dec2018-07-23 15:55:13 +0200753 select HASH
Simon Glass29499a02016-01-17 20:53:51 -0700754 help
755 Compute CRC32.
756
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100757config CRC32_VERIFY
758 bool "crc32 -v"
759 depends on CMD_CRC32
760 help
761 Add -v option to verify data against a crc32 checksum.
762
Simon Glass4590d4e2017-05-17 03:25:10 -0600763config CMD_EEPROM
764 bool "eeprom - EEPROM subsystem"
Ivan Orlovc5f053d2024-02-23 17:14:20 +0000765 depends on DM_I2C || SYS_I2C_LEGACY
Simon Glass4590d4e2017-05-17 03:25:10 -0600766 help
767 (deprecated, needs conversion to driver model)
768 Provides commands to read and write EEPROM (Electrically Erasable
769 Programmable Read Only Memory) chips that are connected over an
770 I2C bus.
771
772config CMD_EEPROM_LAYOUT
773 bool "Enable layout-aware eeprom commands"
774 depends on CMD_EEPROM
775 help
776 (deprecated, needs conversion to driver model)
777 When enabled, additional eeprom sub-commands become available.
778
779 eeprom print - prints the contents of the eeprom in a human-readable
780 way (eeprom layout fields, and data formatted to be fit for human
781 consumption).
782
783 eeprom update - allows user to update eeprom fields by specifying
784 the field name, and providing the new data in a human readable format
785 (same format as displayed by the eeprom print command).
786
787 Both commands can either auto detect the layout, or be told which
788 layout to use.
789
790 Feature API:
791 __weak int parse_layout_version(char *str)
792 - override to provide your own layout name parsing
793 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
794 int layout_version);
795 - override to setup the layout metadata based on the version
796 __weak int eeprom_layout_detect(unsigned char *data)
797 - override to provide your own algorithm for detecting layout
798 version
799 eeprom_field.c
800 - contains various printing and updating functions for common
801 types of eeprom fields. Can be used for defining
802 custom layouts.
803
804config EEPROM_LAYOUT_HELP_STRING
805 string "Tells user what layout names are supported"
806 depends on CMD_EEPROM_LAYOUT
807 default "<not defined>"
808 help
809 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
810 command's help.
811
Tom Rinifaed5672021-08-17 17:59:45 -0400812config SYS_I2C_EEPROM_BUS
813 int "I2C bus of the EEPROM device."
814 depends on CMD_EEPROM
815 default 0
816
817config SYS_I2C_EEPROM_ADDR_LEN
818 int "Length in bytes of the EEPROM memory array address"
819 depends on CMD_EEPROM || ID_EEPROM
820 default 1
821 range 1 2
822 help
823 Note: This is NOT the chip address length!
824
825config SYS_EEPROM_SIZE
826 depends on CMD_EEPROM
827 int "Size in bytes of the EEPROM device"
828 default 256
829
830config SYS_EEPROM_PAGE_WRITE_BITS
831 int "Number of bits used to address bytes in a single page"
832 depends on CMD_EEPROM
833 default 8
834 help
835 The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS.
836 A 64 byte page, for example would require six bits.
837
838config SYS_EEPROM_PAGE_WRITE_DELAY_MS
839 int "Number of milliseconds to delay between page writes"
840 depends on CMD_EEPROM || CMD_I2C
841 default 0
842
Simon Glass26c20532017-08-04 16:34:51 -0600843config LOOPW
844 bool "loopw"
845 help
846 Infinite write loop on address range
847
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000848config CMD_MD5SUM
849 bool "md5sum"
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000850 select MD5
Igor Opaniuk489a5782024-03-02 16:05:48 +0100851 select HASH
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000852 help
853 Compute MD5 checksum.
854
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100855config MD5SUM_VERIFY
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000856 bool "md5sum -v"
Andre Przywaraf0fa1132017-03-15 01:19:05 +0000857 depends on CMD_MD5SUM
858 help
859 Add -v option to verify data against an MD5 checksum.
860
Simon Glass26c20532017-08-04 16:34:51 -0600861config CMD_MEMINFO
862 bool "meminfo"
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100863 help
Simon Glass26c20532017-08-04 16:34:51 -0600864 Display memory information.
Daniel Thompsona9e2c672017-05-19 17:26:58 +0100865
Simon Glass26c20532017-08-04 16:34:51 -0600866config CMD_MEMORY
867 bool "md, mm, nm, mw, cp, cmp, base, loop"
868 default y
Simon Glass29499a02016-01-17 20:53:51 -0700869 help
Simon Glass26c20532017-08-04 16:34:51 -0600870 Memory commands.
871 md - memory display
872 mm - memory modify (auto-incrementing address)
873 nm - memory modify (constant address)
874 mw - memory write (fill)
875 cp - memory copy
876 cmp - memory compare
877 base - print or set address offset
878 loop - initialize loop on address range
Simon Glass29499a02016-01-17 20:53:51 -0700879
Simon Glass573c0fa2020-07-28 19:41:14 -0600880config CMD_MEM_SEARCH
Simon Glass19038de2020-06-02 19:26:49 -0600881 bool "ms - Memory search"
882 help
883 Memory-search command
884
885 This allows searching through a region of memory looking for hex
886 data (byte, 16-bit word, 32-bit long, also 64-bit on machines that
887 support it). It is also possible to search for a string. The
888 command accepts a memory range and a list of values to search for.
889 The values need to appear in memory in the same order they are given
890 in the command. At most 10 matches can be returned at a time, but
891 pressing return will show the next 10 matches. Environment variables
892 are set for use with scripting (memmatches, memaddr, mempos).
893
Joel Johnsondb5a97e2020-01-29 09:17:18 -0700894config CMD_MX_CYCLIC
Adam Ford1ef0c492019-08-14 07:54:34 -0500895 bool "Enable cyclic md/mw commands"
896 depends on CMD_MEMORY
897 help
898 Add the "mdc" and "mwc" memory commands. These are cyclic
899 "md/mw" commands.
900 Examples:
901
902 => mdc.b 10 4 500
903 This command will print 4 bytes (10,11,12,13) each 500 ms.
904
905 => mwc.l 100 12345678 10
906 This command will write 12345678 to address 100 all 10 ms.
907
Jean-Jacques Hiblotd3f09372019-07-02 14:23:26 +0200908config CMD_RANDOM
909 bool "random"
910 default y
911 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
912 help
913 random - fill memory with random data
914
Simon Glass29499a02016-01-17 20:53:51 -0700915config CMD_MEMTEST
916 bool "memtest"
917 help
918 Simple RAM read/write test.
919
Mario Six00518992018-03-28 14:38:14 +0200920if CMD_MEMTEST
921
922config SYS_ALT_MEMTEST
923 bool "Alternative test"
924 help
925 Use a more complete alternative memory test.
926
Ralph Siemsen1c39c102020-09-09 12:10:00 -0400927if SYS_ALT_MEMTEST
928
929config SYS_ALT_MEMTEST_BITFLIP
930 bool "Bitflip test"
931 default y
932 help
933 The alternative memory test includes bitflip test since 2020.07.
934 The bitflip test significantly increases the overall test time.
935 Bitflip test can optionally be disabled here.
936
937endif
938
Ashok Reddy Soma41e8edf2020-05-04 15:26:21 +0200939config SYS_MEMTEST_START
940 hex "default start address for mtest"
Tom Rinic2ac2f62021-12-12 22:12:29 -0500941 default 0x0
Ashok Reddy Soma41e8edf2020-05-04 15:26:21 +0200942 help
943 This is the default start address for mtest for simple read/write
944 test. If no arguments are given to mtest, default address is used
945 as start address.
946
947config SYS_MEMTEST_END
948 hex "default end address for mtest"
949 default 0x1000
950 help
951 This is the default end address for mtest for simple read/write
952 test. If no arguments are given to mtest, default address is used
953 as end address.
954
Mario Six00518992018-03-28 14:38:14 +0200955endif
956
Simon Glass26c20532017-08-04 16:34:51 -0600957config CMD_SHA1SUM
958 bool "sha1sum"
959 select SHA1
Simon Glass29499a02016-01-17 20:53:51 -0700960 help
Simon Glass26c20532017-08-04 16:34:51 -0600961 Compute SHA1 checksum.
962
963config SHA1SUM_VERIFY
964 bool "sha1sum -v"
965 depends on CMD_SHA1SUM
966 help
967 Add -v option to verify data against a SHA1 checksum.
Simon Glass29499a02016-01-17 20:53:51 -0700968
Simon Glass8e83ca82017-08-04 16:34:52 -0600969config CMD_STRINGS
970 bool "strings - display strings in memory"
971 help
972 This works similarly to the Unix 'strings' command except that it
973 works with a memory range. String of printable characters found
974 within the range are displayed. The minimum number of characters
975 for a sequence to be considered a string can be provided.
976
Simon Glassbecaa8f2017-05-17 03:25:43 -0600977endmenu
978
979menu "Compression commands"
980
981config CMD_LZMADEC
982 bool "lzmadec"
Tom Rini3237bc62017-09-29 14:32:44 -0400983 default y if CMD_BOOTI
Simon Glassbecaa8f2017-05-17 03:25:43 -0600984 select LZMA
985 help
986 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
987 image from memory.
988
Yusuke Ashidukaa20545d2020-02-20 20:48:01 +0900989config CMD_UNLZ4
990 bool "unlz4"
991 default y if CMD_BOOTI
992 select LZ4
993 help
994 Support decompressing an LZ4 image from memory region.
995
Masahiro Yamada2737fd32017-02-05 10:42:56 +0900996config CMD_UNZIP
997 bool "unzip"
Tom Rini3237bc62017-09-29 14:32:44 -0400998 default y if CMD_BOOTI
Michael Wallef253f2c2020-05-22 14:07:35 +0200999 select GZIP
Masahiro Yamada2737fd32017-02-05 10:42:56 +09001000 help
1001 Uncompress a zip-compressed memory region.
1002
1003config CMD_ZIP
1004 bool "zip"
Michael Walle3a6e3512020-05-22 14:07:36 +02001005 select GZIP_COMPRESSED
Masahiro Yamada2737fd32017-02-05 10:42:56 +09001006 help
1007 Compress a memory region with zlib deflate method.
1008
Simon Glass29499a02016-01-17 20:53:51 -07001009endmenu
1010
1011menu "Device access commands"
1012
Abdellatif El Khlifi5ad079f2023-08-04 14:33:43 +01001013config CMD_ARMFFA
1014 bool "Arm FF-A test command"
1015 depends on ARM_FFA_TRANSPORT
1016 help
1017 Provides a test command for the FF-A support
1018 supported options:
1019 - Listing the partition(s) info
1020 - Sending a data pattern to the specified partition
1021 - Displaying the arm_ffa device info
1022
Simon Glass036bbb12017-08-04 16:34:28 -06001023config CMD_ARMFLASH
1024 #depends on FLASH_CFI_DRIVER
1025 bool "armflash"
1026 help
1027 ARM Ltd reference designs flash partition access
1028
Neil Armstrong49261c72018-04-27 15:17:57 +02001029config CMD_ADC
1030 bool "adc - Access Analog to Digital Converters info and data"
1031 select ADC
Michal Simek463c3862020-08-19 10:44:17 +02001032 depends on DM_REGULATOR
Neil Armstrong49261c72018-04-27 15:17:57 +02001033 help
1034 Shows ADC device info and permit printing one-shot analog converted
1035 data from a named Analog to Digital Converter.
1036
Eugeniu Rosca35c34be2019-05-23 17:32:22 +02001037config CMD_BCB
1038 bool "bcb"
Eugeniu Rosca35c34be2019-05-23 17:32:22 +02001039 depends on PARTITIONS
1040 help
1041 Read/modify/write the fields of Bootloader Control Block, usually
1042 stored on the flash "misc" partition with its structure defined in:
1043 https://android.googlesource.com/platform/bootable/recovery/+/master/
1044 bootloader_message/include/bootloader_message/bootloader_message.h
1045
1046 Some real-life use-cases include (but are not limited to):
1047 - Determine the "boot reason" (and act accordingly):
1048 https://source.android.com/devices/bootloader/boot-reason
1049 - Get/pass a list of commands from/to recovery:
1050 https://android.googlesource.com/platform/bootable/recovery
1051 - Inspect/dump the contents of the BCB fields
1052
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +02001053config CMD_BIND
1054 bool "bind/unbind - Bind or unbind a device to/from a driver"
1055 depends on DM
Miquel Raynalbdc2a932023-10-10 11:03:03 +02001056 imply CMD_DM
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +02001057 help
1058 Bind or unbind a device to/from a driver from the command line.
1059 This is useful in situations where a device may be handled by several
1060 drivers. For example, this can be used to bind a UDC to the usb ether
1061 gadget driver from the command line.
1062
Simon Glass04ac6f12017-04-26 22:28:02 -06001063config CMD_CLK
1064 bool "clk - Show clock frequencies"
1065 help
1066 (deprecated)
1067 Shows clock frequences by calling a sock_clk_dump() hook function.
1068 This is depreated in favour of using the CLK uclass and accessing
1069 clock values from associated drivers. However currently no command
1070 exists for this.
1071
Simon Glass036bbb12017-08-04 16:34:28 -06001072config CMD_DEMO
1073 bool "demo - Demonstration commands for driver model"
1074 depends on DM
1075 help
1076 Provides a 'demo' command which can be used to play around with
1077 driver model. To use this properly you will need to enable one or
1078 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
1079 Otherwise you will always get an empty list of devices. The demo
1080 devices are defined in the sandbox device tree, so the easiest
1081 option is to use sandbox and pass the -d point to sandbox's
1082 u-boot.dtb file.
1083
1084config CMD_DFU
1085 bool "dfu"
Marek Vasutea84f802018-02-16 16:41:17 +01001086 select DFU
Simon Glass036bbb12017-08-04 16:34:28 -06001087 help
1088 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass663b0cc2017-08-04 16:35:06 -06001089 class device via USB. This command requires that the "dfu_alt_info"
1090 environment variable be set and define the alt settings to expose to
1091 the host.
Simon Glass036bbb12017-08-04 16:34:28 -06001092
Simon Glass29499a02016-01-17 20:53:51 -07001093config CMD_DM
1094 bool "dm - Access to driver model information"
1095 depends on DM
Simon Glass29499a02016-01-17 20:53:51 -07001096 help
1097 Provides access to driver model data structures and information,
1098 such as a list of devices, list of uclasses and the state of each
1099 device (e.g. activated). This is not required for operation, but
1100 can be useful to see the state of driver model for debugging or
1101 interest.
1102
Alex Kiernan65de9552018-05-29 15:30:39 +00001103config CMD_FASTBOOT
1104 bool "fastboot - Android fastboot support"
1105 depends on FASTBOOT
1106 help
1107 This enables the command "fastboot" which enables the Android
1108 fastboot mode for the platform. Fastboot is a protocol for
1109 downloading images, flashing and device control used on
Alex Kiernand5aa57c2018-05-29 15:30:53 +00001110 Android devices. Fastboot requires either the network stack
1111 enabled or support for acting as a USB device.
Alex Kiernan65de9552018-05-29 15:30:39 +00001112
Sam Protsenkocd43fa12020-01-24 17:53:44 +02001113 See doc/android/fastboot.rst for more information.
Alex Kiernan65de9552018-05-29 15:30:39 +00001114
Simon Glass036bbb12017-08-04 16:34:28 -06001115config CMD_FLASH
1116 bool "flinfo, erase, protect"
1117 default y
Tom Rini50db3b92024-01-10 13:46:09 -05001118 depends on FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass036bbb12017-08-04 16:34:28 -06001119 help
1120 NOR flash support.
1121 flinfo - print FLASH memory information
1122 erase - FLASH memory
1123 protect - enable or disable FLASH write protection
1124
1125config CMD_FPGA
1126 bool "fpga"
Tuomas Tynkkynen5ca16b32018-01-27 20:28:40 +02001127 depends on FPGA
Simon Glass036bbb12017-08-04 16:34:28 -06001128 default y
1129 help
1130 FPGA support.
1131
1132config CMD_FPGA_LOADBP
1133 bool "fpga loadbp - load partial bitstream (Xilinx only)"
1134 depends on CMD_FPGA
1135 help
1136 Supports loading an FPGA device from a bitstream buffer containing
1137 a partial bitstream.
1138
1139config CMD_FPGA_LOADFS
1140 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
1141 depends on CMD_FPGA
1142 help
1143 Supports loading an FPGA device from a FAT filesystem.
1144
1145config CMD_FPGA_LOADMK
1146 bool "fpga loadmk - load bitstream from image"
1147 depends on CMD_FPGA
1148 help
1149 Supports loading an FPGA device from a image generated by mkimage.
1150
1151config CMD_FPGA_LOADP
1152 bool "fpga loadp - load partial bitstream"
1153 depends on CMD_FPGA
1154 help
1155 Supports loading an FPGA device from a bitstream buffer containing
1156 a partial bitstream.
1157
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301158config CMD_FPGA_LOAD_SECURE
Oleksandr Suvorovfbe31bb2022-07-22 17:16:02 +03001159 bool "fpga loads - loads secure bitstreams"
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301160 depends on CMD_FPGA
Oleksandr Suvorovfbe31bb2022-07-22 17:16:02 +03001161 select FPGA_LOAD_SECURE
Siva Durga Prasad Paladugucce0cb02018-05-31 15:10:22 +05301162 help
1163 Enables the fpga loads command which is used to load secure
1164 (authenticated or encrypted or both) bitstreams on to FPGA.
1165
Simon Glass036bbb12017-08-04 16:34:28 -06001166config CMD_FPGAD
1167 bool "fpgad - dump FPGA registers"
1168 help
1169 (legacy, needs conversion to driver model)
1170 Provides a way to dump FPGA registers by calling the board-specific
1171 fpga_get_reg() function. This functions similarly to the 'md'
1172 command.
1173
1174config CMD_FUSE
1175 bool "fuse - support for the fuse subssystem"
1176 help
1177 (deprecated - needs conversion to driver model)
1178 This allows reading, sensing, programming or overriding fuses
1179 which control the behaviour of the device. The command uses the
1180 fuse_...() API.
1181
1182config CMD_GPIO
1183 bool "gpio"
1184 help
1185 GPIO support.
1186
Diego Rondini5ffde632022-04-11 12:02:09 +02001187config CMD_GPIO_READ
1188 bool "gpio read - save GPIO value to variable"
1189 depends on CMD_GPIO
1190 help
1191 Enables the 'gpio read' command that saves the value
1192 of a GPIO pin to a variable.
1193
Pragnesh Patel1d5955f2020-12-22 11:30:05 +05301194config CMD_PWM
1195 bool "pwm"
1196 depends on DM_PWM
1197 help
1198 Control PWM channels, this allows invert/config/enable/disable PWM channels.
1199
Simon Glass036bbb12017-08-04 16:34:28 -06001200config CMD_GPT
1201 bool "GPT (GUID Partition Table) command"
Simon Glass036bbb12017-08-04 16:34:28 -06001202 select EFI_PARTITION
Michal Simek84f3dec2018-07-23 15:55:13 +02001203 select PARTITION_UUIDS
Maxime Ripard24336442017-08-24 11:52:32 +02001204 imply RANDOM_UUID
Simon Glass036bbb12017-08-04 16:34:28 -06001205 help
1206 Enable the 'gpt' command to ready and write GPT style partition
1207 tables.
1208
1209config CMD_GPT_RENAME
1210 bool "GPT partition renaming commands"
1211 depends on CMD_GPT
1212 help
1213 Enables the 'gpt' command to interchange names on two GPT
1214 partitions via the 'gpt swap' command or to rename single
1215 partitions via the 'rename' command.
Simon Glass29499a02016-01-17 20:53:51 -07001216
Simon Glassa831eca2017-05-17 03:25:29 -06001217config CMD_IDE
1218 bool "ide - Support for IDE drivers"
Simon Glassb569a012017-05-17 03:25:30 -06001219 select IDE
Simon Glassa831eca2017-05-17 03:25:29 -06001220 help
1221 Provides an 'ide' command which allows accessing the IDE drive,
Vagrant Cascadian33203c32021-12-21 13:06:56 -08001222 resetting the IDE interface, printing the partition table and
Simon Glassa831eca2017-05-17 03:25:29 -06001223 geting device info. It also enables the 'diskboot' command which
1224 permits booting from an IDE drive.
1225
Simon Glass3bebbe62017-05-17 03:25:34 -06001226config CMD_IO
1227 bool "io - Support for performing I/O accesses"
1228 help
1229 Provides an 'iod' command to display I/O space and an 'iow' command
1230 to write values to the I/O space. This can be useful for manually
1231 checking the state of devices during boot when debugging device
1232 drivers, etc.
1233
Simon Glass30daabc2017-05-17 03:25:36 -06001234config CMD_IOTRACE
1235 bool "iotrace - Support for tracing I/O activity"
1236 help
1237 Provides an 'iotrace' command which supports recording I/O reads and
1238 writes in a trace buffer in memory . It also maintains a checksum
1239 of the trace records (even if space is exhausted) so that the
1240 sequence of I/O accesses can be verified.
1241
1242 When debugging drivers it is useful to see what I/O accesses were
1243 done and in what order.
1244
1245 Even if the individual accesses are of little interest it can be
1246 useful to verify that the access pattern is consistent each time
1247 an operation is performed. In this case a checksum can be used to
1248 characterise the operation of a driver. The checksum can be compared
1249 across different runs of the operation to verify that the driver is
1250 working properly.
1251
1252 In particular, when performing major refactoring of the driver, where
1253 the access pattern should not change, the checksum provides assurance
1254 that the refactoring work has not broken the driver.
1255
1256 This works by sneaking into the io.h heder for an architecture and
1257 redirecting I/O accesses through iotrace's tracing mechanism.
1258
1259 For now no commands are provided to examine the trace buffer. The
1260 format is fairly simple, so 'md' is a reasonable substitute.
1261
1262 Note: The checksum feature is only useful for I/O regions where the
1263 contents do not change outside of software control. Where this is not
1264 suitable you can fall back to manually comparing the addresses. It
1265 might be useful to enhance tracing to only checksum the accesses and
1266 not the data read/written.
1267
Simon Glass036bbb12017-08-04 16:34:28 -06001268config CMD_I2C
1269 bool "i2c"
1270 help
1271 I2C support.
1272
Eugen Hristevb879c842018-09-18 10:35:33 +03001273config CMD_W1
1274 depends on W1
1275 default y if W1
1276 bool "w1 - Support for Dallas 1-Wire protocol"
1277 help
1278 Dallas 1-wire protocol support
1279
Simon Glass29499a02016-01-17 20:53:51 -07001280config CMD_LOADB
1281 bool "loadb"
1282 default y
1283 help
1284 Load a binary file over serial line.
1285
Rui Miguel Silva433f15a2022-05-11 10:55:40 +01001286config CMD_LOADM
1287 bool "loadm"
1288 help
1289 Load a binary over memory mapped.
1290
Simon Glass29499a02016-01-17 20:53:51 -07001291config CMD_LOADS
Tom Rini5a70f172022-10-28 20:27:02 -04001292 bool "loads - Load a file over serial in S-Record format"
Simon Glass29499a02016-01-17 20:53:51 -07001293 default y
1294 help
1295 Load an S-Record file over serial line
1296
Tom Rini5a70f172022-10-28 20:27:02 -04001297config LOADS_ECHO
1298 bool "Echo all characters received during a loads back to console"
1299 depends on CMD_LOADS
1300 help
1301 If enabled, all characters received during a serial download (using
1302 the "loads" command) are echoed back. This might be needed by some
1303 terminal emulations (like "cu"), but may as well just take time on
1304 others. This sets the initial value of the "loads_echo" environment
1305 variable to 1.
1306
1307config CMD_SAVES
1308 bool "saves - Save a file over serial in S-Record format"
Ying Sun86dff472023-06-25 16:24:47 +08001309 depends on CMD_LOADS
Tom Rini5a70f172022-10-28 20:27:02 -04001310 help
1311 Provides a way to save a binary file using the Motorola S-Record
1312 format over the serial line.
1313
1314config SYS_LOADS_BAUD_CHANGE
1315 bool "Enable a temporary baudrate change during loads/saves command"
1316 depends on CMD_LOADS || CMD_SAVES
1317
Pali Rohár5dc80cc2022-08-27 16:37:55 +02001318config CMD_LOADXY_TIMEOUT
1319 int "loadxy_timeout"
1320 range 0 2000
1321 default 90
1322 help
1323 Initial timeout for loadx and loady commands. Zero means infinity.
1324
Niel Fourie09262bb2020-03-30 17:22:58 +02001325config CMD_LSBLK
1326 depends on BLK
1327 bool "lsblk - list block drivers and devices"
1328 help
1329 Print list of available block device drivers, and for each, the list
1330 of known block devices.
1331
Marek Szyprowski6427b5b2020-12-23 13:55:15 +01001332config CMD_MBR
1333 bool "MBR (Master Boot Record) command"
1334 select DOS_PARTITION
Marek Szyprowski6427b5b2020-12-23 13:55:15 +01001335 help
1336 Enable the 'mbr' command to ready and write MBR (Master Boot Record)
1337 style partition tables.
1338
Bin Menge1dae502020-10-14 14:34:52 +08001339config CMD_MISC
1340 bool "misc"
1341 depends on MISC
1342 help
1343 Enable the command "misc" for accessing miscellaneous devices with
1344 a MISC uclass driver. The command provides listing all MISC devices
1345 as well as read and write functionalities via their drivers.
1346
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001347config CMD_MMC
1348 bool "mmc"
Heinrich Schuchardt3ae9e6a2021-03-27 11:43:54 +01001349 depends on MMC
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001350 help
1351 MMC memory mapped support.
1352
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001353if CMD_MMC
1354
1355config CMD_BKOPS_ENABLE
1356 bool "mmc bkops enable"
1357 depends on CMD_MMC
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001358 help
1359 Enable command for setting manual background operations handshake
1360 on a eMMC device. The feature is optionally available on eMMC devices
1361 conforming to standard >= 4.41.
1362
Marek Vasut1f692e32023-10-31 13:20:17 +01001363config CMD_MMC_REG
1364 bool "Enable support for reading card registers in the mmc command"
1365 depends on CMD_MMC
1366 help
1367 Enable the commands for reading card registers. This is useful
1368 mostly for debugging or extracting details from the card.
1369
Alex Kiernan60e0f612018-05-08 04:43:31 +00001370config CMD_MMC_RPMB
1371 bool "Enable support for RPMB in the mmc command"
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001372 depends on SUPPORT_EMMC_RPMB
Alex Kiernan60e0f612018-05-08 04:43:31 +00001373 help
1374 Enable the commands for reading, writing and programming the
1375 key for the Replay Protection Memory Block partition in eMMC.
1376
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001377config CMD_MMC_SWRITE
1378 bool "mmc swrite"
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001379 depends on MMC_WRITE
Alex Kiernanc568bcb2018-05-29 15:30:52 +00001380 select IMAGE_SPARSE
1381 help
1382 Enable support for the "mmc swrite" command to write Android sparse
1383 images to eMMC.
1384
Heinrich Schuchardt039df1a2020-03-31 17:39:28 +00001385endif
1386
John Chaufce6f982020-07-02 12:01:21 +08001387config CMD_CLONE
1388 bool "clone"
1389 depends on BLK
1390 help
1391 Enable storage cloning over block devices, useful for
1392 initial flashing by external block device without network
1393 or usb support.
1394
Ruchika Gupta1a994352020-10-23 13:39:33 +05301395config CMD_OPTEE_RPMB
1396 bool "Enable read/write support on RPMB via OPTEE"
1397 depends on SUPPORT_EMMC_RPMB && OPTEE
1398 help
1399 Enable the commands for reading, writing persistent named values
1400 in the Replay Protection Memory Block partition in eMMC by
1401 using Persistent Objects in OPTEE
1402
Miquel Raynal741f4c72018-09-29 12:58:28 +02001403config CMD_MTD
1404 bool "mtd"
Miquel Raynald2418202019-10-25 19:39:30 +02001405 depends on MTD
Miquel Raynal741f4c72018-09-29 12:58:28 +02001406 select MTD_PARTITIONS
1407 help
1408 MTD commands support.
1409
Pratyush Yadavbecd9b72020-10-16 16:16:35 +05301410config CMD_MUX
1411 bool "mux"
1412 depends on MULTIPLEXER
1413 help
1414 List, select, and deselect mux controllers on the fly.
1415
Simon Glass29499a02016-01-17 20:53:51 -07001416config CMD_NAND
1417 bool "nand"
Maxime Ripard5a5d71f2017-03-03 15:13:30 +01001418 default y if NAND_SUNXI
Miquel Raynald2418202019-10-25 19:39:30 +02001419 depends on MTD_RAW_NAND
Simon Glass29499a02016-01-17 20:53:51 -07001420 help
1421 NAND support.
1422
Boris Brezillon19907782017-02-27 18:22:07 +01001423if CMD_NAND
1424config CMD_NAND_TRIMFFS
1425 bool "nand write.trimffs"
Hans de Goedefd42c052017-02-27 18:22:10 +01001426 default y if ARCH_SUNXI
Boris Brezillon19907782017-02-27 18:22:07 +01001427 help
1428 Allows one to skip empty pages when flashing something on a NAND.
1429
1430config CMD_NAND_LOCK_UNLOCK
1431 bool "nand lock/unlock"
1432 help
1433 NAND locking support.
1434
1435config CMD_NAND_TORTURE
1436 bool "nand torture"
1437 help
1438 NAND torture support.
1439
1440endif # CMD_NAND
1441
Zhikang Zhang49455652017-08-03 02:30:59 -07001442config CMD_NVME
1443 bool "nvme"
1444 depends on NVME
1445 default y if NVME
1446 help
1447 NVM Express device support
1448
Simon Glassa2a82072017-08-04 16:34:31 -06001449config CMD_ONENAND
1450 bool "onenand - access to onenand device"
Miquel Raynald2418202019-10-25 19:39:30 +02001451 depends on MTD
Simon Glassa2a82072017-08-04 16:34:31 -06001452 help
1453 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1454 various useful features. This command allows reading, writing,
1455 and erasing blocks. It allso provides a way to show and change
1456 bad blocks, and test the device.
1457
Tom Rinie7751242022-06-15 12:03:51 -04001458config USE_ONENAND_BOARD_INIT
1459 bool "Call onenand_board_init() in the onenand command"
1460 depends on CMD_ONENAND
1461
Mario Sixf8395902018-09-27 09:19:34 +02001462config CMD_OSD
1463 bool "osd"
1464 help
1465 Enable the 'osd' command which allows to query information from and
1466 write text data to a on-screen display (OSD) device; a virtual device
1467 associated with a display capable of displaying a text overlay on the
1468 display it's associated with..
1469
Patrick Delaunay73287092017-01-27 11:00:42 +01001470config CMD_PART
1471 bool "part"
AKASHI Takahiro783bc122022-04-22 10:44:30 +09001472 depends on PARTITIONS
Michal Simek84f3dec2018-07-23 15:55:13 +02001473 select PARTITION_UUIDS
Patrick Delaunay73287092017-01-27 11:00:42 +01001474 help
1475 Read and display information about the partition table on
1476 various media.
1477
Simon Glassc88a09a2017-08-04 16:34:34 -06001478config CMD_PCI
1479 bool "pci - Access PCI devices"
1480 help
1481 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1482 used on some devices to allow the CPU to communicate with its
1483 peripherals. Sub-commands allow bus enumeration, displaying and
1484 changing configuration space and a few other features.
1485
Stephen Carlson3d876c42023-03-10 11:07:13 -08001486config CMD_PCI_MPS
1487 bool "pci_mps - Configure PCI device MPS"
1488 depends on PCI
1489 help
1490 Enables PCI Express Maximum Packet Size (MPS) tuning. This
1491 command configures the PCI Express MPS of each endpoint to the
1492 largest value supported by all devices below the root complex.
1493 The Maximum Read Request Size will not be altered. This method is
1494 the same algorithm as used by Linux pci=pcie_bus_safe.
1495
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001496config CMD_PINMUX
1497 bool "pinmux - show pins muxing"
Marek Behún9ff24b62021-02-09 21:23:47 +01001498 depends on PINCTRL
Patrice Chotardc4b4ef02018-10-24 14:10:17 +02001499 default y if PINCTRL
1500 help
1501 Parse all available pin-controllers and show pins muxing. This
1502 is useful for debug purpoer to check the pin muxing and to know if
1503 a pin is configured as a GPIO or as an alternate function.
1504
Adam Fordc4f16322018-09-09 07:05:57 -05001505config CMD_POWEROFF
1506 bool "poweroff"
1507 help
1508 Poweroff/Shutdown the system
1509
Simon Glassc05459b2017-08-04 16:34:39 -06001510config CMD_READ
1511 bool "read - Read binary data from a partition"
1512 help
1513 Provides low-level access to the data in a partition.
1514
Simon Glass036bbb12017-08-04 16:34:28 -06001515config CMD_REMOTEPROC
1516 bool "remoteproc"
1517 depends on REMOTEPROC
1518 help
1519 Support for Remote Processor control
1520
1521config CMD_SATA
1522 bool "sata - Access SATA subsystem"
1523 select SATA
1524 help
1525 SATA (Serial Advanced Technology Attachment) is a serial bus
1526 standard for connecting to hard drives and other storage devices.
1527 This command provides information about attached devices and allows
1528 reading, writing and other operations.
1529
1530 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1531 Attachment, where AT refers to an IBM AT (Advanced Technology)
1532 computer released in 1984.
1533
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001534config CMD_SCSI
1535 bool "scsi - Access to SCSI devices"
Heinrich Schuchardtb9a76c72023-03-26 19:10:38 +02001536 depends on SCSI
1537 default y
Heinrich Schuchardta0f52832018-02-14 08:05:44 +01001538 help
1539 This provides a 'scsi' command which provides access to SCSI (Small
1540 Computer System Interface) devices. The command provides a way to
1541 scan the bus, reset the bus, read and write data and get information
1542 about devices.
1543
Simon Glass6870d2e2017-08-04 16:34:45 -06001544config CMD_SDRAM
1545 bool "sdram - Print SDRAM configuration information"
1546 help
1547 Provides information about attached SDRAM. This assumed that the
1548 SDRAM has an EEPROM with information that can be read using the
1549 I2C bus. This is only available on some boards.
1550
Simon Glass29499a02016-01-17 20:53:51 -07001551config CMD_SF
1552 bool "sf"
Tom Rinie5289a72019-05-29 17:01:28 -04001553 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Teki132e81f2019-10-16 17:59:42 +05301554 default y if DM_SPI_FLASH
Simon Glass29499a02016-01-17 20:53:51 -07001555 help
1556 SPI Flash support
1557
Simon Glass86b1b652017-08-04 16:34:46 -06001558config CMD_SF_TEST
1559 bool "sf test - Allow testing of SPI flash"
Tom Rinie5289a72019-05-29 17:01:28 -04001560 depends on CMD_SF
Simon Glass86b1b652017-08-04 16:34:46 -06001561 help
1562 Provides a way to test that SPI flash is working correctly. The
1563 test is destructive, in that an area of SPI flash must be provided
1564 for the test to use. Performance information is also provided,
1565 measuring the performance of reading, writing and erasing in
1566 Mbps (Million Bits Per Second). This value should approximately
1567 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1568 everything is working properly.
1569
Simon Glass29499a02016-01-17 20:53:51 -07001570config CMD_SPI
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001571 bool "sspi - Command to access spi device"
Tom Rinie5289a72019-05-29 17:01:28 -04001572 depends on SPI
Simon Glass29499a02016-01-17 20:53:51 -07001573 help
1574 SPI utility command.
1575
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001576config DEFAULT_SPI_BUS
1577 int "default spi bus used by sspi command"
1578 depends on CMD_SPI
1579 default 0
1580
1581config DEFAULT_SPI_MODE
1582 hex "default spi mode used by sspi command (see include/spi.h)"
1583 depends on CMD_SPI
Tom Rinif18679c2023-08-02 11:09:43 -04001584 default 0x0
Patrick Delaunay5a6b52b2019-02-27 15:20:37 +01001585
Robert Marko99e6fde2022-09-06 13:30:33 +02001586config CMD_TEMPERATURE
1587 bool "temperature - display the temperature from thermal sensors"
1588 depends on DM_THERMAL
1589 help
1590 Provides a way to list thermal sensors and to get their readings.
1591
Simon Glass80a56cd2017-08-04 16:35:00 -06001592config CMD_TSI148
1593 bool "tsi148 - Command to access tsi148 device"
1594 help
1595 This provides various sub-commands to initialise and configure the
1596 Turndra tsi148 device. See the command help for full details.
1597
Faiz Abbas61e9fbb2019-10-15 18:24:40 +05301598config CMD_UFS
Bin Meng3223e232023-10-11 21:15:46 +08001599 bool "ufs - Universal Flash Storage commands"
Faiz Abbas61e9fbb2019-10-15 18:24:40 +05301600 depends on UFS
1601 help
1602 "This provides commands to initialise and configure universal flash
1603 subsystem devices"
1604
Simon Glass0c03c1a2017-08-04 16:35:01 -06001605config CMD_UNIVERSE
1606 bool "universe - Command to set up the Turndra Universe controller"
1607 help
1608 This allows setting up the VMEbus provided by this controller.
1609 See the command help for full details.
1610
Simon Glass29499a02016-01-17 20:53:51 -07001611config CMD_USB
1612 bool "usb"
Tom Rini8a091622021-07-09 10:11:55 -04001613 depends on USB_HOST
Simon Glass29499a02016-01-17 20:53:51 -07001614 help
1615 USB support.
1616
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001617config CMD_USB_SDP
1618 bool "sdp"
1619 select USB_FUNCTION_SDP
1620 help
1621 Enables the command "sdp" which is used to have U-Boot emulating the
1622 Serial Download Protocol (SDP) via USB.
Michal Simekf751ff52018-07-23 15:55:12 +02001623
Johan Jonkerff1d73f2023-10-18 16:01:40 +02001624config CMD_RKMTD
1625 bool "rkmtd"
1626 select RKMTD
1627 help
1628 Enable the command "rkmtd" to create a virtual block device to transfer
1629 Rockchip boot block data to and from NAND with block orientated tools
1630 like "ums" and "rockusb".
1631
Eddie Cai5e3020b2017-12-15 08:17:11 +08001632config CMD_ROCKUSB
1633 bool "rockusb"
1634 depends on USB_FUNCTION_ROCKUSB
1635 help
Michal Simekf751ff52018-07-23 15:55:12 +02001636 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai5e3020b2017-12-15 08:17:11 +08001637 read/write info, image to/from devices. This enable rockusb command
1638 support to communication with rockusb device. for more detail about
1639 this command, please read doc/README.rockusb.
Stefan Agnerd9d661c2017-08-16 11:00:53 -07001640
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001641config CMD_USB_MASS_STORAGE
1642 bool "UMS usb mass storage"
Tom Rini4b783d92021-05-22 08:47:16 -04001643 depends on USB_GADGET_DOWNLOAD
Lukasz Majewski6e782742018-01-29 19:28:02 +01001644 select USB_FUNCTION_MASS_STORAGE
Patrick Delaunaye1dc2532021-06-04 18:51:46 +02001645 depends on BLK && USB_GADGET
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001646 help
Patrick Delaunaye1dc2532021-06-04 18:51:46 +02001647 Enables the command "ums" and the USB mass storage support to the
1648 export a block device: U-Boot, the USB device, acts as a simple
1649 external hard drive plugged on the host USB port.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001650
Svyatoslav Ryhelbb8068d2023-03-20 21:01:43 +02001651config CMD_UMS_ABORT_KEYED
1652 bool "UMS abort with any key"
1653 depends on CMD_USB_MASS_STORAGE
1654 help
1655 Allow interruption of usb mass storage run with any key pressed.
1656
Anastasiia Lukianenko4fec7f82020-08-06 12:42:55 +03001657config CMD_PVBLOCK
1658 bool "Xen para-virtualized block device"
1659 depends on XEN
1660 select PVBLOCK
1661 help
1662 Xen para-virtualized block device support
1663
Tuomas Tynkkynen10a60d22018-10-15 02:21:12 -07001664config CMD_VIRTIO
1665 bool "virtio"
1666 depends on VIRTIO
1667 default y if VIRTIO
1668 help
1669 VirtIO block device support
1670
Michael Walle23964a82019-04-06 02:24:02 +02001671config CMD_WDT
1672 bool "wdt"
1673 depends on WDT
1674 help
1675 This provides commands to control the watchdog timer devices.
1676
Rasmus Villemoesc614b832023-03-02 09:12:22 +01001677config CMD_WRITE
1678 bool "write - Write binary data to a partition"
1679 help
1680 Provides low-level write access to a partition.
1681
Mario Sixfd1cc422018-08-09 14:51:21 +02001682config CMD_AXI
1683 bool "axi"
1684 depends on AXI
1685 help
1686 Enable the command "axi" for accessing AXI (Advanced eXtensible
1687 Interface) busses, a on-chip interconnect specification for managing
1688 functional blocks in SoC designs, which is also often used in designs
1689 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass29499a02016-01-17 20:53:51 -07001690endmenu
1691
1692
1693menu "Shell scripting commands"
1694
Roger Knecht11827c42022-09-03 11:34:53 +00001695config CMD_CAT
1696 bool "cat"
1697 help
1698 Print file to standard output
1699
Simon Glass29499a02016-01-17 20:53:51 -07001700config CMD_ECHO
1701 bool "echo"
1702 default y
1703 help
1704 Echo args to console
1705
1706config CMD_ITEST
1707 bool "itest"
1708 default y
1709 help
1710 Return true/false on integer compare.
1711
1712config CMD_SOURCE
1713 bool "source"
1714 default y
1715 help
1716 Run script from memory
1717
1718config CMD_SETEXPR
1719 bool "setexpr"
1720 default y
1721 help
1722 Evaluate boolean and math expressions and store the result in an env
1723 variable.
1724 Also supports loading the value at a memory location into a variable.
1725 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1726
Roland Gaudig2c9e7c22021-07-23 12:29:21 +00001727config CMD_SETEXPR_FMT
1728 bool "setexpr_fmt"
Roland Gaudig2c9e7c22021-07-23 12:29:21 +00001729 depends on CMD_SETEXPR
1730 help
1731 Evaluate format string expression and store result in an environment
1732 variable.
1733
Roger Knecht4c29c2b2023-09-07 14:51:43 +00001734config CMD_XXD
1735 bool "xxd"
1736 help
1737 Print file as hexdump to standard output
1738
Simon Glass29499a02016-01-17 20:53:51 -07001739endmenu
1740
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001741menu "Android support commands"
1742
1743config CMD_AB_SELECT
1744 bool "ab_select"
Ruslan Trofymenkoa24f9b42019-07-05 15:37:33 +03001745 depends on ANDROID_AB
1746 help
1747 On Android devices with more than one boot slot (multiple copies of
1748 the kernel and system images) this provides a command to select which
1749 slot should be used to boot from and register the boot attempt. This
1750 is used by the new A/B update model where one slot is updated in the
1751 background while running from the other slot.
1752
1753endmenu
1754
Michal Simek2f785a12018-02-26 16:01:02 +01001755if NET
1756
Joe Hershbergerb0429462018-04-13 15:26:30 -05001757menuconfig CMD_NET
1758 bool "Network commands"
1759 default y
1760
1761if CMD_NET
1762
1763config CMD_BOOTP
1764 bool "bootp"
Simon Glass29499a02016-01-17 20:53:51 -07001765 default y
1766 help
Simon Glass29499a02016-01-17 20:53:51 -07001767 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerb0429462018-04-13 15:26:30 -05001768
Joe Hershberger01261792018-04-13 15:26:33 -05001769config CMD_DHCP
1770 bool "dhcp"
1771 depends on CMD_BOOTP
1772 help
1773 Boot image via network using DHCP/TFTP protocol
1774
Sean Edmondba802862023-04-11 10:48:47 -07001775config CMD_DHCP6
1776 bool "dhcp6"
1777 depends on IPV6
1778 help
1779 Boot image via network using DHCPv6/TFTP protocol using IPv6.
1780
1781 Will perform 4-message exchange with DHCPv6 server, requesting
1782 the minimum required options to TFTP boot. Complies with RFC 8415.
1783
Tom Rini1c47c4a2022-02-25 11:19:50 -05001784config BOOTP_MAY_FAIL
1785 bool "Allow for the BOOTP/DHCP server to not be found"
1786 depends on CMD_BOOTP
1787 help
1788 If the DHCP server is not found after the configured retry count, the
1789 call will fail instead of starting over. This can be used to fail
1790 over to Link-local IP address configuration if the DHCP server is not
1791 available.
1792
Joe Hershberger0824ad92018-04-13 15:26:32 -05001793config BOOTP_BOOTPATH
Joe Hershberger06661e12018-04-13 15:26:34 -05001794 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001795 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001796 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001797 help
1798 Even though the config is called BOOTP_BOOTPATH, it stores the
1799 path in the variable 'rootpath'.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001800
Tom Rini1c47c4a2022-02-25 11:19:50 -05001801config BOOTP_VENDOREX
1802 bool "Support vendor extensions from BOOTP/DHCP server"
1803 depends on CMD_BOOTP
1804
1805config BOOTP_BOOTFILESIZE
1806 bool "Request & store 'bootfilesize' from BOOTP/DHCP server"
1807 depends on CMD_BOOTP
1808
Joe Hershberger0824ad92018-04-13 15:26:32 -05001809config BOOTP_DNS
Joe Hershberger06661e12018-04-13 15:26:34 -05001810 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001811 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001812 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001813 help
1814 The primary DNS server is stored as 'dnsip'. If two servers are
1815 returned, you must set BOOTP_DNS2 to store that second server IP
1816 also.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001817
Joe Hershberger63e70712018-04-13 15:26:35 -05001818config BOOTP_DNS2
1819 bool "Store 'dnsip2' from BOOTP/DHCP server"
1820 depends on BOOTP_DNS
1821 help
1822 If a DHCP client requests the DNS server IP from a DHCP server,
1823 it is possible that more than one DNS serverip is offered to the
1824 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1825 server IP will be stored in the additional environment
1826 variable "dnsip2". The first DNS serverip is always
1827 stored in the variable "dnsip", when BOOTP_DNS is defined.
1828
Joe Hershberger0824ad92018-04-13 15:26:32 -05001829config BOOTP_GATEWAY
Joe Hershberger06661e12018-04-13 15:26:34 -05001830 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001831 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001832 depends on CMD_BOOTP
1833
1834config BOOTP_HOSTNAME
Joe Hershberger06661e12018-04-13 15:26:34 -05001835 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001836 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001837 depends on CMD_BOOTP
Joe Hershberger06661e12018-04-13 15:26:34 -05001838 help
1839 The name may or may not be qualified with the local domain name.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001840
Alexander Graf427e6952018-06-15 10:29:28 +02001841config BOOTP_PREFER_SERVERIP
1842 bool "serverip variable takes precedent over DHCP server IP."
1843 depends on CMD_BOOTP
1844 help
1845 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1846
1847 With this option enabled, the 'serverip' variable in the environment
1848 takes precedence over DHCP server IP and will only be set by the DHCP
1849 server if not already set in the environment.
1850
Joe Hershberger0824ad92018-04-13 15:26:32 -05001851config BOOTP_SUBNETMASK
Joe Hershberger06661e12018-04-13 15:26:34 -05001852 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001853 default y
Joe Hershberger0824ad92018-04-13 15:26:32 -05001854 depends on CMD_BOOTP
1855
Tom Rini1c47c4a2022-02-25 11:19:50 -05001856config BOOTP_NISDOMAIN
1857 bool "Request & store 'nisdomain' from BOOTP/DHCP server"
1858 depends on CMD_BOOTP
1859
Chris Packhambfa7c212018-05-03 20:19:02 +12001860config BOOTP_NTPSERVER
1861 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1862 depends on CMD_BOOTP
1863
Tom Rini1c47c4a2022-02-25 11:19:50 -05001864config BOOTP_TIMEOFFSET
1865 bool "Request & store 'timeoffset' from BOOTP/DHCP server"
1866 depends on CMD_BOOTP && CMD_SNTP
1867
Ramon Friedac598c12019-07-18 21:43:30 +03001868config CMD_PCAP
1869 bool "pcap capture"
1870 help
1871 Selecting this will allow capturing all Ethernet packets and store
1872 them in physical memory in a PCAP formated file,
1873 later to be analyzed by PCAP reader application (IE. WireShark).
1874
Joe Hershberger0824ad92018-04-13 15:26:32 -05001875config BOOTP_PXE
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001876 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger8ffe7e52018-04-13 15:26:37 -05001877 default y
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001878 depends on CMD_BOOTP && CMD_PXE
1879 help
1880 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger0824ad92018-04-13 15:26:32 -05001881
1882config BOOTP_PXE_CLIENTARCH
1883 hex
Joe Hershberger84ccdbe2018-04-13 15:26:36 -05001884 depends on BOOTP_PXE
Joe Hershberger0824ad92018-04-13 15:26:32 -05001885 default 0x16 if ARM64
1886 default 0x15 if ARM
Tom Rinif18679c2023-08-02 11:09:43 -04001887 default 0x0 if X86
Joe Hershberger0824ad92018-04-13 15:26:32 -05001888
Sean Edmond57867112023-07-25 16:20:30 -07001889config BOOTP_PXE_DHCP_OPTION
1890 bool "Request & store 'pxe_configfile' from BOOTP/DHCP server"
1891 depends on BOOTP_PXE
1892
Joe Hershberger0824ad92018-04-13 15:26:32 -05001893config BOOTP_VCI_STRING
1894 string
1895 depends on CMD_BOOTP
Michal Simekf4359382018-04-26 18:21:29 +05301896 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger0824ad92018-04-13 15:26:32 -05001897 default "U-Boot.armv8" if ARM64
1898 default "U-Boot.arm" if ARM
1899 default "U-Boot"
1900
Sean Edmondba802862023-04-11 10:48:47 -07001901if CMD_DHCP6
1902
1903config DHCP6_PXE_CLIENTARCH
1904 hex
1905 default 0x16 if ARM64
1906 default 0x15 if ARM
1907 default 0xFF
1908
1909config DHCP6_PXE_DHCP_OPTION
1910 bool "Request & store 'pxe_configfile' from DHCP6 server"
1911
1912config DHCP6_ENTERPRISE_ID
1913 int "Enterprise ID to send in DHCPv6 Vendor Class Option"
1914 default 0
1915
1916endif
1917
Joe Hershbergerb0429462018-04-13 15:26:30 -05001918config CMD_TFTPBOOT
1919 bool "tftpboot"
1920 default y
1921 help
Heinrich Schuchardt7d289f12022-09-04 09:08:11 +02001922 tftpboot - load file via network using TFTP protocol
Simon Glass29499a02016-01-17 20:53:51 -07001923
1924config CMD_TFTPPUT
1925 bool "tftp put"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001926 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001927 help
1928 TFTP put command, for uploading files to a server
1929
1930config CMD_TFTPSRV
1931 bool "tftpsrv"
Joe Hershbergerb0429462018-04-13 15:26:30 -05001932 depends on CMD_TFTPBOOT
Simon Glass29499a02016-01-17 20:53:51 -07001933 help
1934 Act as a TFTP server and boot the first received file
1935
Joe Hershberger0824ad92018-04-13 15:26:32 -05001936config NET_TFTP_VARS
1937 bool "Control TFTP timeout and count through environment"
1938 depends on CMD_TFTPBOOT
1939 default y
1940 help
1941 If set, allows controlling the TFTP timeout through the
1942 environment variable tftptimeout, and the TFTP maximum
1943 timeout count through the variable tftptimeoutcountmax.
1944 If unset, timeout and maximum are hard-defined as 1 second
1945 and 10 timouts per TFTP transfer.
1946
Simon Glass29499a02016-01-17 20:53:51 -07001947config CMD_RARP
1948 bool "rarpboot"
1949 help
1950 Boot image via network using RARP/TFTP protocol
1951
Simon Glass29499a02016-01-17 20:53:51 -07001952config CMD_NFS
1953 bool "nfs"
Simon Glass29499a02016-01-17 20:53:51 -07001954 help
1955 Boot image via network using NFS protocol.
1956
Tom Rini0d1c4742022-03-11 09:12:05 -05001957config NFS_TIMEOUT
1958 int "Timeout in milliseconds for NFS mounts"
1959 depends on CMD_NFS
1960 default 2000
1961 help
1962 Timeout in milliseconds used in NFS protocol. If you encounter
1963 "ERROR: Cannot umount" in nfs command, try longer timeout such as
1964 10000.
1965
Tom Rini065d6612022-06-13 22:57:35 -04001966config SYS_DISABLE_AUTOLOAD
1967 bool "Disable automatically loading files over the network"
1968 depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP
1969 help
1970 Typically, commands such as "dhcp" will attempt to automatically
1971 load a file from the network, once the initial network configuration
1972 is complete. Enable this option to disable this behavior and instead
1973 require files to be loaded over the network by subsequent commands.
1974
Ying-Chun Liu (PaulLiu)cc96a1d2022-11-08 14:17:29 +08001975config CMD_WGET
1976 bool "wget"
Michael Walle34aa0752022-12-28 16:27:15 +01001977 select PROT_TCP
Ying-Chun Liu (PaulLiu)cc96a1d2022-11-08 14:17:29 +08001978 help
1979 wget is a simple command to download kernel, or other files,
1980 from a http server over TCP.
1981
Dinh Nguyen0685bef2016-04-21 09:05:23 -05001982config CMD_MII
1983 bool "mii"
Ramon Frieddeb6c502019-09-13 18:25:03 +03001984 imply CMD_MDIO
1985 help
1986 If set, allows 802.3(clause 22) MII Management functions interface access
1987 The management interface specified in Clause 22 provides
1988 a simple, two signal, serial interface to connect a
1989 Station Management entity and a managed PHY for providing access
1990 to management parameters and services.
1991 The interface is referred to as the MII management interface.
1992
Tom Rini1a0c7dc2022-03-18 08:38:27 -04001993config MII_INIT
1994 bool "Call mii_init() in the mii command"
1995 depends on CMD_MII && (MPC8XX_FEC || FSLDMAFE || MCFFEC)
1996
Ramon Frieddeb6c502019-09-13 18:25:03 +03001997config CMD_MDIO
1998 bool "mdio"
1999 depends on PHYLIB
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002000 help
Ramon Frieddeb6c502019-09-13 18:25:03 +03002001 If set, allows Enable 802.3(clause 45) MDIO interface registers access
2002 The MDIO interface is orthogonal to the MII interface and extends
2003 it by adding access to more registers through indirect addressing.
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002004
Simon Glass29499a02016-01-17 20:53:51 -07002005config CMD_PING
2006 bool "ping"
2007 help
2008 Send ICMP ECHO_REQUEST to network host
2009
Viacheslav Mitrofanove03c8aa2022-12-02 12:18:08 +03002010config CMD_PING6
2011 bool "ping6"
2012 depends on IPV6
2013 default y if (CMD_PING && IPV6)
2014 help
2015 Send ICMPv6 ECHO_REQUEST to network host
2016
Simon Glass29499a02016-01-17 20:53:51 -07002017config CMD_CDP
2018 bool "cdp"
2019 help
2020 Perform CDP network configuration
2021
2022config CMD_SNTP
2023 bool "sntp"
Philippe Reynes2829d992020-09-18 14:13:02 +02002024 select PROT_UDP
Simon Glass29499a02016-01-17 20:53:51 -07002025 help
2026 Synchronize RTC via network
2027
2028config CMD_DNS
2029 bool "dns"
2030 help
2031 Lookup the IP of a hostname
2032
2033config CMD_LINK_LOCAL
2034 bool "linklocal"
Joe Hershberger51d78982018-04-30 12:45:22 -05002035 select LIB_RAND
Simon Glass29499a02016-01-17 20:53:51 -07002036 help
2037 Acquire a network IP address using the link-local protocol
2038
Samuel Mendoza-Jonasfeebd6c2022-08-08 21:46:04 +09302039config CMD_NCSI
2040 bool "ncsi"
2041 depends on PHY_NCSI
2042 help
2043 Manually configure the attached NIC via NC-SI.
2044 Normally this happens automatically before other network
2045 operations.
2046
Ehsan Mohandesia0d6d272023-04-21 17:08:21 -07002047config IPV6_ROUTER_DISCOVERY
2048 bool "Do IPv6 router discovery"
2049 depends on IPV6
2050 help
2051 Will automatically perform router solicitation on first IPv6
2052 network operation
Joe Hershberger0824ad92018-04-13 15:26:32 -05002053endif
2054
Simon Glass12b85702017-05-17 03:25:17 -06002055config CMD_ETHSW
2056 bool "ethsw"
2057 help
2058 Allow control of L2 Ethernet switch commands. These are supported
2059 by the vsc9953 Ethernet driver at present. Sub-commands allow
2060 operations such as enabling / disabling a port and
2061 viewing/maintaining the filtering database (FDB)
2062
Joe Hershberger0824ad92018-04-13 15:26:32 -05002063config CMD_PXE
2064 bool "pxe"
John Keeping9b60a172022-07-28 11:19:15 +01002065 select PXE_UTILS
Joe Hershberger0824ad92018-04-13 15:26:32 -05002066 help
2067 Boot image via network using PXE protocol
Michal Simek2f785a12018-02-26 16:01:02 +01002068
Lothar Felten776fc102018-06-22 22:29:54 +02002069config CMD_WOL
2070 bool "wol"
2071 help
2072 Wait for wake-on-lan Magic Packet
2073
Joe Hershbergerb0429462018-04-13 15:26:30 -05002074endif
Simon Glass29499a02016-01-17 20:53:51 -07002075
2076menu "Misc commands"
2077
Simon Glassb158b8f2023-02-07 14:33:53 -07002078config CMD_2048
2079 bool "Play 2048"
2080 help
2081 This is a simple sliding block puzzle game designed by Italian web
2082 developer Gabriele Cirulli. The game's objective is to slide numbered
2083 tiles on a grid to combine them to create a tile with the number
2084 2048.
2085
2086 This needs ANSI support on your terminal to work. It is not fully
2087 functional on a video device.
2088
Simon Glassb575bfc2017-04-26 22:27:55 -06002089config CMD_BMP
2090 bool "Enable 'bmp' command"
Simon Glass52cb5042022-10-18 07:46:31 -06002091 depends on VIDEO
Samuel Dionne-Rielaa3c9bb2023-07-18 14:27:36 +05302092 select BMP
Simon Glassb575bfc2017-04-26 22:27:55 -06002093 help
Andrius Štikonas1d5ccd62019-09-23 22:43:41 +01002094 This provides a way to obtain information about a BMP-format image
Simon Glassb575bfc2017-04-26 22:27:55 -06002095 and to display it. BMP (which presumably stands for BitMaP) is a
2096 file format defined by Microsoft which supports images of various
2097 depths, formats and compression methods. Headers on the file
2098 determine the formats used. This command can be used by first loading
2099 the image into RAM, then using this command to look at it or display
2100 it.
2101
Alex Kiernane710fa62018-05-12 05:49:47 +00002102config CMD_BOOTCOUNT
2103 bool "bootcount"
2104 depends on BOOTCOUNT_LIMIT
2105 help
2106 Enable the bootcount command, which allows interrogation and
2107 reset of the bootcounter.
2108
Simon Glassffab9a02017-04-26 22:27:56 -06002109config CMD_BSP
2110 bool "Enable board-specific commands"
2111 help
2112 (deprecated: instead, please define a Kconfig option for each command)
2113
2114 Some boards have board-specific commands which are only enabled
2115 during developemnt and need to be turned off for production. This
2116 option provides a way to control this. The commands that are enabled
2117 vary depending on the board.
2118
Eric Nelsonfaf4f052016-03-28 10:05:44 -07002119config CMD_BLOCK_CACHE
2120 bool "blkcache - control and stats for block cache"
2121 depends on BLOCK_CACHE
2122 default y if BLOCK_CACHE
2123 help
2124 Enable the blkcache command, which can be used to control the
2125 operation of the cache functions.
2126 This is most useful when fine-tuning the operation of the cache
2127 during development, but also allows the cache to be disabled when
2128 it might hurt performance (e.g. when using the ums command).
2129
Tobias Waldekranz91ec2592023-02-16 16:33:52 +01002130config CMD_BLKMAP
2131 bool "blkmap - Composable virtual block devices"
2132 depends on BLKMAP
2133 default y if BLKMAP
2134 help
2135 Create virtual block devices that are backed by various sources,
2136 e.g. RAM, or parts of an existing block device. Though much more
2137 rudimentary, it borrows a lot of ideas from Linux's device mapper
2138 subsystem.
2139
2140 Example use-cases:
2141 - Treat a region of RAM as a block device, i.e. a RAM disk. This let's
2142 you extract files from filesystem images stored in RAM (perhaps as a
2143 result of a TFTP transfer).
2144 - Create a virtual partition on an existing device. This let's you
2145 access filesystems that aren't stored at an exact partition
2146 boundary. A common example is a filesystem image embedded in an FIT
2147 image.
2148
Philippe Reynesa558b182020-07-24 18:19:47 +02002149config CMD_BUTTON
2150 bool "button"
2151 depends on BUTTON
2152 default y if BUTTON
2153 help
2154 Enable the 'button' command which allows to get the status of
2155 buttons supported by the board. The buttonss can be listed with
2156 'button list' and state can be known with 'button <label>'.
2157 Any button drivers can be controlled with this command, e.g.
2158 button_gpio.
2159
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002160config CMD_CACHE
2161 bool "icache or dcache"
2162 help
2163 Enable the "icache" and "dcache" commands
2164
Heinrich Schuchardt13ea6852018-09-07 19:43:11 +02002165config CMD_CONITRACE
2166 bool "conitrace - trace console input codes"
2167 help
2168 Enable the 'conitrace' command which displays the codes received
2169 from the console input as hexadecimal numbers.
2170
Anatolij Gustschine0455a42018-12-01 10:47:20 +01002171config CMD_CLS
2172 bool "Enable clear screen command 'cls'"
John Keeping36ce43b2022-11-23 17:16:14 +00002173 default y if LCD || VIDEO
Anatolij Gustschine0455a42018-12-01 10:47:20 +01002174 help
2175 Enable the 'cls' command which clears the screen contents
2176 on video frame buffer.
2177
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09002178config CMD_EFIDEBUG
2179 bool "efidebug - display/configure UEFI environment"
2180 depends on EFI_LOADER
Heinrich Schuchardt3db35912019-05-11 09:53:33 +02002181 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiroe7c08832019-02-25 15:54:38 +09002182 help
2183 Enable the 'efidebug' command which provides a subset of UEFI
2184 shell utility with simplified functionality. It will be useful
2185 particularly for managing boot parameters as well as examining
2186 various EFI status for debugging.
2187
Masahisa Kojimac5ff0a02022-09-12 17:33:50 +09002188config CMD_EFICONFIG
2189 bool "eficonfig - provide menu-driven uefi variables maintenance interface"
Heinrich Schuchardt323bfa52023-02-08 09:57:00 +01002190 default y if !HAS_BOARD_SIZE_LIMIT
AKASHI Takahiroe3e542d2024-01-17 13:39:42 +09002191 depends on EFI_BOOTMGR
Heinrich Schuchardtaecf40e2023-02-08 13:56:33 +01002192 select MENU
Masahisa Kojimac5ff0a02022-09-12 17:33:50 +09002193 help
2194 Enable the 'eficonfig' command which provides the menu-driven UEFI
2195 variable maintenance interface.
2196
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01002197config CMD_EXCEPTION
2198 bool "exception - raise exception"
Heinrich Schuchardtadaea9c2020-11-12 00:29:57 +01002199 depends on ARM || RISCV || SANDBOX || X86
Heinrich Schuchardtf7d6b072018-12-26 17:20:35 +01002200 help
2201 Enable the 'exception' command which allows to raise an exception.
2202
Simon Glassfc8a5292017-04-10 11:34:59 -06002203config CMD_LED
2204 bool "led"
Jan Kiszka89077ba2019-01-03 09:08:42 +01002205 depends on LED
Simon Glassfc8a5292017-04-10 11:34:59 -06002206 default y if LED
2207 help
2208 Enable the 'led' command which allows for control of LEDs supported
2209 by the board. The LEDs can be listed with 'led list' and controlled
2210 with led on/off/togle/blink. Any LED drivers can be controlled with
2211 this command, e.g. led_gpio.
2212
Simon Glassfbcd3b72023-02-01 13:19:24 -07002213config CMD_INI
2214 bool "ini"
2215 help
2216 Enable the 'ini' command which allows a .ini file to be parsed and
2217 placed into environment variables. Please check the source code for
2218 this as there is no documentation.
2219
Chris Packham3e257df2017-04-29 15:20:28 +12002220config CMD_DATE
2221 bool "date"
2222 default y if DM_RTC
AKASHI Takahiro51ba5222019-11-13 09:44:49 +09002223 select LIB_DATE
Chris Packham3e257df2017-04-29 15:20:28 +12002224 help
2225 Enable the 'date' command for getting/setting the time/date in RTC
2226 devices.
2227
Rasmus Villemoescc092022020-07-06 22:01:15 +02002228config CMD_RTC
2229 bool "rtc"
2230 depends on DM_RTC
2231 help
2232 Enable the 'rtc' command for low-level access to RTC devices.
2233
Simon Glass29499a02016-01-17 20:53:51 -07002234config CMD_TIME
2235 bool "time"
2236 help
2237 Run commands and summarize execution time.
2238
Simon Glassfa744522017-05-17 03:25:23 -06002239config CMD_GETTIME
2240 bool "gettime - read elapsed time"
2241 help
2242 Enable the 'gettime' command which reads the elapsed time since
2243 U-Boot started running. This shows the time in seconds and
2244 milliseconds. See also the 'bootstage' command which provides more
2245 flexibility for boot timing.
2246
Samuel Dionne-Riele69e1f12022-08-18 15:44:04 -04002247config CMD_PAUSE
2248 bool "pause command"
2249 help
2250 Delay execution waiting for any user input.
2251 Useful to allow the user to read a failure log.
2252
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002253config CMD_RNG
2254 bool "rng command"
2255 depends on DM_RNG
Sughosh Ganu6daac6b2022-07-22 21:32:09 +05302256 default y if SANDBOX
Heinrich Schuchardta31a5942019-12-24 22:17:37 +01002257 select HEXDUMP
2258 help
2259 Print bytes from the hardware random number generator.
2260
Chris Morgan61a96182021-08-25 11:22:57 -05002261config CMD_KASLRSEED
2262 bool "kaslrseed"
2263 depends on DM_RNG
2264 help
2265 Set the kaslr-seed in the chosen node with entropy provided by a
2266 hardware random number generator.
2267
Bin Meng7c4f7be2020-10-13 18:45:05 +08002268config CMD_SLEEP
Simon Glass29499a02016-01-17 20:53:51 -07002269 bool "sleep"
2270 default y
2271 help
2272 Delay execution for some time
2273
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002274config CMD_MP
2275 bool "support for multiprocessor commands"
2276 depends on MP
2277 default y
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002278 help
Ashok Reddy Soma1e6f9962022-01-17 10:16:50 +01002279 This enables commands to bringup different processors
2280 in multiprocessor cases.
Siva Durga Prasad Paladugu8e45f1a2018-06-19 12:24:23 +02002281
Simon Glass29499a02016-01-17 20:53:51 -07002282config CMD_TIMER
2283 bool "timer"
2284 help
2285 Access the system timer.
2286
Simon Glass29499a02016-01-17 20:53:51 -07002287config CMD_SOUND
2288 bool "sound"
2289 depends on SOUND
2290 help
2291 This provides basic access to the U-Boot's sound support. The main
2292 feature is to play a beep.
2293
2294 sound init - set up sound system
2295 sound play - play a sound
2296
Patrice Chotard7b81c052019-11-25 09:07:38 +01002297config CMD_SYSBOOT
2298 bool "sysboot"
John Keeping9b60a172022-07-28 11:19:15 +01002299 select PXE_UTILS
Patrice Chotard7b81c052019-11-25 09:07:38 +01002300 help
2301 Boot image via local extlinux.conf file
2302
Miao Yan92106272016-05-22 19:37:17 -07002303config CMD_QFW
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002304 bool "qfw"
Miao Yan4fcd7f22016-05-22 19:37:14 -07002305 select QFW
Tom Rinibbf245d2023-10-26 14:31:14 -04002306 default y if TARGET_QEMU_ARM_32BIT || TARGET_QEMU_ARM_64BIT || \
2307 TARGET_QEMU_X86 || TARGET_QEMU_X86_64
Tom Rinibcb3c8d2016-05-06 10:40:22 -04002308 help
2309 This provides access to the QEMU firmware interface. The main
2310 feature is to allow easy loading of files passed to qemu-system
2311 via -kernel / -initrd
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002312
Frédéric Danised2e8e42020-03-20 10:59:22 +01002313config CMD_PSTORE
2314 bool "pstore"
2315 help
2316 This provides access to Linux PStore with Rammoops backend. The main
2317 feature is to allow to display or save PStore records.
2318
2319 See doc/pstore.rst for more information.
2320
2321if CMD_PSTORE
2322
2323config CMD_PSTORE_MEM_ADDR
2324 hex "Memory Address"
2325 depends on CMD_PSTORE
2326 help
2327 Base addr used for PStore ramoops memory, should be identical to
2328 ramoops.mem_address parameter used by kernel
2329
2330config CMD_PSTORE_MEM_SIZE
2331 hex "Memory size"
2332 depends on CMD_PSTORE
2333 default "0x10000"
2334 help
2335 Size of PStore ramoops memory, should be identical to ramoops.mem_size
2336 parameter used by kernel, a power of 2 and larger than the sum of the
2337 record sizes
2338
2339config CMD_PSTORE_RECORD_SIZE
2340 hex "Dump record size"
2341 depends on CMD_PSTORE
2342 default "0x1000"
2343 help
2344 Size of each dump done on oops/panic, should be identical to
2345 ramoops.record_size parameter used by kernel and a power of 2
2346 Must be non-zero
2347
2348config CMD_PSTORE_CONSOLE_SIZE
2349 hex "Kernel console log size"
2350 depends on CMD_PSTORE
2351 default "0x1000"
2352 help
2353 Size of kernel console log, should be identical to
2354 ramoops.console_size parameter used by kernel and a power of 2
2355 Must be non-zero
2356
2357config CMD_PSTORE_FTRACE_SIZE
2358 hex "FTrace log size"
2359 depends on CMD_PSTORE
2360 default "0x1000"
2361 help
2362 Size of ftrace log, should be identical to ramoops.ftrace_size
2363 parameter used by kernel and a power of 2
2364
2365config CMD_PSTORE_PMSG_SIZE
2366 hex "User space message log size"
2367 depends on CMD_PSTORE
2368 default "0x1000"
2369 help
2370 Size of user space message log, should be identical to
2371 ramoops.pmsg_size parameter used by kernel and a power of 2
2372
2373config CMD_PSTORE_ECC_SIZE
2374 int "ECC size"
2375 depends on CMD_PSTORE
2376 default "0"
2377 help
2378 if non-zero, the option enables ECC support and specifies ECC buffer
2379 size in bytes (1 is a special value, means 16 bytes ECC), should be
2380 identical to ramoops.ramoops_ecc parameter used by kernel
2381
2382endif
2383
Konstantin Porotchkin97d26782016-12-08 12:22:28 +02002384source "cmd/mvebu/Kconfig"
2385
Simon Glass89342ef2017-08-04 16:34:55 -06002386config CMD_TERMINAL
2387 bool "terminal - provides a way to attach a serial terminal"
2388 help
2389 Provides a 'cu'-like serial terminal command. This can be used to
2390 access other serial ports from the system console. The terminal
2391 is very simple with no special processing of characters. As with
2392 cu, you can press ~. (tilde followed by period) to exit.
2393
Simon Glass6d56aad2017-08-04 16:35:02 -06002394config CMD_UUID
2395 bool "uuid, guid - generation of unique IDs"
Adam Ford70c8f052018-02-06 12:14:28 -06002396 select LIB_UUID
Simon Glass6d56aad2017-08-04 16:35:02 -06002397 help
2398 This enables two commands:
2399
2400 uuid - generate random Universally Unique Identifier
2401 guid - generate Globally Unique Identifier based on random UUID
2402
2403 The two commands are very similar except for the endianness of the
2404 output.
2405
Simon Glass724e2a42022-10-06 08:36:06 -06002406config CMD_VIDCONSOLE
2407 bool "lcdputs and setcurs"
Simon Glass52cb5042022-10-18 07:46:31 -06002408 depends on VIDEO
Simon Glass724e2a42022-10-06 08:36:06 -06002409 default y
2410 help
2411 Enabling this will provide 'setcurs' and 'lcdputs' commands which
2412 support cursor positioning and drawing strings on the video
2413 console (framebuffer).
2414
2415 The name 'lcdputs' is a bit of a misnomer, but so named because the
2416 video device is often an LCD.
2417
Dzmitry Sankouskibb165e42023-03-07 13:21:16 +03002418config CMD_SELECT_FONT
2419 bool "select font size"
2420 depends on VIDEO
Simon Glass9faa7a32023-10-26 14:31:18 -04002421 default y if CONSOLE_TRUETYPE
Dzmitry Sankouskibb165e42023-03-07 13:21:16 +03002422 help
2423 Enabling this will provide 'font' command.
2424 Allows font selection at runtime.
2425
Simon Glass29499a02016-01-17 20:53:51 -07002426endmenu
2427
Lokesh Vutla962c4e02017-12-29 11:47:49 +05302428source "cmd/ti/Kconfig"
2429
Simon Glass29499a02016-01-17 20:53:51 -07002430config CMD_BOOTSTAGE
2431 bool "Enable the 'bootstage' command"
2432 depends on BOOTSTAGE
2433 help
2434 Add a 'bootstage' command which supports printing a report
2435 and un/stashing of bootstage data.
2436
2437menu "Power commands"
2438config CMD_PMIC
2439 bool "Enable Driver Model PMIC command"
2440 depends on DM_PMIC
2441 help
2442 This is the pmic command, based on a driver model pmic's API.
2443 Command features are unchanged:
2444 - list - list pmic devices
2445 - pmic dev <id> - show or [set] operating pmic device (NEW)
2446 - pmic dump - dump registers
2447 - pmic read address - read byte of register at address
2448 - pmic write address - write byte to register at address
2449 The only one change for this command is 'dev' subcommand.
2450
2451config CMD_REGULATOR
2452 bool "Enable Driver Model REGULATOR command"
2453 depends on DM_REGULATOR
2454 help
2455 This command is based on driver model regulator's API.
2456 User interface features:
2457 - list - list regulator devices
2458 - regulator dev <id> - show or [set] operating regulator device
2459 - regulator info - print constraints info
2460 - regulator status - print operating status
2461 - regulator value <val] <-f> - print/[set] voltage value [uV]
2462 - regulator current <val> - print/[set] current value [uA]
2463 - regulator mode <id> - print/[set] operating mode id
2464 - regulator enable - enable the regulator output
2465 - regulator disable - disable the regulator output
2466
2467 The '-f' (force) option can be used for set the value which exceeds
2468 the limits, which are found in device-tree and are kept in regulator's
Simon Glass71fa5b42020-12-03 16:55:18 -07002469 uclass plat structure.
Simon Glass29499a02016-01-17 20:53:51 -07002470
2471endmenu
2472
2473menu "Security commands"
Simon Glass528fdd12017-04-26 22:27:49 -06002474config CMD_AES
2475 bool "Enable the 'aes' command"
2476 select AES
2477 help
2478 This provides a means to encrypt and decrypt data using the AES
2479 (Advanced Encryption Standard). This algorithm uses a symetric key
2480 and is widely used as a streaming cipher. Different key lengths are
2481 supported by the algorithm but this command only supports 128 bits
2482 at present.
2483
Simon Glass311ec4f2017-04-26 22:27:53 -06002484config CMD_BLOB
2485 bool "Enable the 'blob' command"
Aymen Sghaierf18c71f2021-03-25 17:30:27 +08002486 depends on !MX6ULL && !MX6SLL && !MX6SL
2487 select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
Simon Glass311ec4f2017-04-26 22:27:53 -06002488 help
2489 This is used with the Freescale secure boot mechanism.
2490
2491 Freescale's SEC block has built-in Blob Protocol which provides
2492 a method for protecting user-defined data across system power
2493 cycles. SEC block protects data in a data structure called a Blob,
2494 which provides both confidentiality and integrity protection.
2495
2496 Encapsulating data as a blob
2497 Each time that the Blob Protocol is used to protect data, a
2498 different randomly generated key is used to encrypt the data.
2499 This random key is itself encrypted using a key which is derived
2500 from SoC's non-volatile secret key and a 16 bit Key identifier.
2501 The resulting encrypted key along with encrypted data is called a
2502 blob. The non-volatile secure key is available for use only during
2503 secure boot.
2504
2505 During decapsulation, the reverse process is performed to get back
2506 the original data.
2507
2508 Sub-commands:
Michal Simekf751ff52018-07-23 15:55:12 +02002509 blob enc - encapsulating data as a cryptgraphic blob
Simon Glass311ec4f2017-04-26 22:27:53 -06002510 blob dec - decapsulating cryptgraphic blob to get the data
2511
2512 Syntax:
2513
2514 blob enc src dst len km
2515
2516 Encapsulate and create blob of data $len bytes long
2517 at address $src and store the result at address $dst.
2518 $km is the 16 byte key modifier is also required for
2519 generation/use as key for cryptographic operation. Key
2520 modifier should be 16 byte long.
2521
2522 blob dec src dst len km
2523
2524 Decapsulate the blob of data at address $src and
2525 store result of $len byte at addr $dst.
2526 $km is the 16 byte key modifier is also required for
2527 generation/use as key for cryptographic operation. Key
2528 modifier should be 16 byte long.
2529
Simon Glass027608e2017-05-17 03:25:25 -06002530config CMD_HASH
2531 bool "Support 'hash' command"
Simon Glassb22ec7a2017-05-17 09:05:34 -06002532 select HASH
Simon Glass027608e2017-05-17 03:25:25 -06002533 help
2534 This provides a way to hash data in memory using various supported
2535 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
2536 saved to memory or to an environment variable. It is also possible
2537 to verify a hash against data in memory.
2538
Michalis Pappasd382d222018-04-13 10:40:57 +03002539config CMD_HVC
2540 bool "Support the 'hvc' command"
2541 depends on ARM_SMCCC
2542 help
2543 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
2544 development and testing.
2545
2546config CMD_SMC
2547 bool "Support the 'smc' command"
2548 depends on ARM_SMCCC
2549 help
2550 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
2551 development and testing.
2552
Daniel Thompsona9e2c672017-05-19 17:26:58 +01002553config HASH_VERIFY
2554 bool "hash -v"
2555 depends on CMD_HASH
2556 help
2557 Add -v option to verify data against a hash.
2558
Jorge Ramirez-Ortiz7d80df92021-02-14 16:27:24 +01002559config CMD_SCP03
2560 bool "scp03 - SCP03 enable and rotate/provision operations"
2561 depends on SCP03
2562 help
2563 This command provides access to a Trusted Application
2564 running in a TEE to request Secure Channel Protocol 03
2565 (SCP03) enablement and/or rotation of its SCP03 keys.
2566
Miquel Raynal294f82a2018-05-15 11:57:05 +02002567config CMD_TPM_V1
2568 bool
2569
2570config CMD_TPM_V2
2571 bool
2572
Simon Glass29499a02016-01-17 20:53:51 -07002573config CMD_TPM
2574 bool "Enable the 'tpm' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002575 depends on TPM_V1 || TPM_V2
2576 select CMD_TPM_V1 if TPM_V1
2577 select CMD_TPM_V2 if TPM_V2
Simon Glass29499a02016-01-17 20:53:51 -07002578 help
2579 This provides a means to talk to a TPM from the command line. A wide
2580 range of commands if provided - see 'tpm help' for details. The
2581 command requires a suitable TPM on your board and the correct driver
2582 must be enabled.
2583
Miquel Raynal294f82a2018-05-15 11:57:05 +02002584if CMD_TPM
2585
Simon Glass29499a02016-01-17 20:53:51 -07002586config CMD_TPM_TEST
2587 bool "Enable the 'tpm test' command"
Miquel Raynal294f82a2018-05-15 11:57:05 +02002588 depends on TPM_V1
Simon Glass29499a02016-01-17 20:53:51 -07002589 help
Miquel Raynal294f82a2018-05-15 11:57:05 +02002590 This provides a a series of tests to confirm that the TPMv1.x is
2591 working correctly. The tests cover initialisation, non-volatile RAM,
2592 extend, global lock and checking that timing is within expectations.
2593 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass29499a02016-01-17 20:53:51 -07002594 for other devices.
2595
Miquel Raynal294f82a2018-05-15 11:57:05 +02002596endif
2597
Simon Glass29499a02016-01-17 20:53:51 -07002598endmenu
2599
Moritz Fischer62b30272016-10-04 17:08:08 -07002600menu "Firmware commands"
2601config CMD_CROS_EC
2602 bool "Enable crosec command"
2603 depends on CROS_EC
2604 default y
2605 help
2606 Enable command-line access to the Chrome OS EC (Embedded
2607 Controller). This provides the 'crosec' command which has
2608 a number of sub-commands for performing EC tasks such as
2609 updating its flash, accessing a small saved context area
2610 and talking to the I2C bus behind the EC (if there is one).
AKASHI Takahiro1cdcaed2023-11-14 11:14:26 +09002611
2612config CMD_SCMI
2613 bool "Enable scmi command"
2614 depends on SCMI_FIRMWARE
2615 default n
2616 help
2617 This command provides user interfaces to several SCMI (System
2618 Control and Management Interface) protocols available on Arm
2619 platforms to manage system resources.
Moritz Fischer62b30272016-10-04 17:08:08 -07002620endmenu
2621
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002622menu "Filesystem commands"
Marek Behún27cec792017-09-03 17:00:30 +02002623config CMD_BTRFS
2624 bool "Enable the 'btrsubvol' command"
2625 select FS_BTRFS
2626 help
2627 This enables the 'btrsubvol' command to list subvolumes
2628 of a BTRFS filesystem. There are no special commands for
2629 listing BTRFS directories or loading BTRFS files - this
2630 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
2631 when BTRFS is enabled (see FS_BTRFS).
2632
Simon Glass0501e3e2017-04-26 22:27:58 -06002633config CMD_CBFS
2634 bool "Enable the 'cbfs' command"
Simon Glass579b51a2017-04-26 22:27:59 -06002635 depends on FS_CBFS
Simon Glass0501e3e2017-04-26 22:27:58 -06002636 help
2637 Define this to enable support for reading from a Coreboot
2638 filesystem. This is a ROM-based filesystem used for accessing files
2639 on systems that use coreboot as the first boot-loader and then load
2640 U-Boot to actually boot the Operating System. Available commands are
2641 cbfsinit, cbfsinfo, cbfsls and cbfsload.
2642
Simon Glass519805e2017-04-26 22:28:03 -06002643config CMD_CRAMFS
2644 bool "Enable the 'cramfs' command"
Simon Glass690f5092017-04-26 22:28:04 -06002645 depends on FS_CRAMFS
Simon Glass519805e2017-04-26 22:28:03 -06002646 help
2647 This provides commands for dealing with CRAMFS (Compressed ROM
2648 filesystem). CRAMFS is useful when space is tight since files are
2649 compressed. Two commands are provided:
2650
2651 cramfsls - lists files in a cramfs image
2652 cramfsload - loads a file from a cramfs image
2653
Huang Jiananc8eefae2022-02-26 15:05:50 +08002654config CMD_EROFS
2655 bool "EROFS command support"
2656 select FS_EROFS
2657 help
2658 Support for the EROFS fs
2659
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002660config CMD_EXT2
2661 bool "ext2 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002662 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002663 help
2664 Enables EXT2 FS command
2665
2666config CMD_EXT4
2667 bool "ext4 command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002668 select FS_EXT4
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002669 help
2670 Enables EXT4 FS command
2671
2672config CMD_EXT4_WRITE
2673 depends on CMD_EXT4
2674 bool "ext4 write command support"
Tuomas Tynkkynen388f9a02018-01-05 02:45:17 +02002675 select EXT4_WRITE
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002676 help
2677 Enables EXT4 FS write command
2678
2679config CMD_FAT
2680 bool "FAT command support"
Sekhar Nori1909a7b2017-06-02 17:53:59 +05302681 select FS_FAT
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002682 help
2683 Support for the FAT fs
2684
Joao Marcos Costaa12c66f2020-07-30 15:33:48 +02002685config CMD_SQUASHFS
2686 bool "SquashFS command support"
2687 select FS_SQUASHFS
2688 help
2689 Enables SquashFS filesystem commands (e.g. load, ls).
2690
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002691config CMD_FS_GENERIC
2692 bool "filesystem commands"
2693 help
2694 Enables filesystem commands (e.g. load, ls) that work for multiple
2695 fs types.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002696
Josua Mayerf5ebfe72017-04-24 10:10:45 +02002697config CMD_FS_UUID
2698 bool "fsuuid command"
2699 help
2700 Enables fsuuid command for filesystem UUID.
2701
Simon Glassc4abb4b2017-05-17 03:25:37 -06002702config CMD_JFFS2
2703 bool "jffs2 command"
Simon Glass8c6c7c22017-05-17 03:25:38 -06002704 select FS_JFFS2
Simon Glassc4abb4b2017-05-17 03:25:37 -06002705 help
2706 Enables commands to support the JFFS2 (Journalling Flash File System
2707 version 2) filesystem. This enables fsload, ls and fsinfo which
2708 provide the ability to load files, list directories and obtain
2709 filesystem information.
2710
Tom Rini9c8268d2021-12-17 18:08:47 -05002711config JFFS2_DEV
2712 string "Default device for JFFS2"
2713 depends on CMD_JFFS2
2714 default "nor0"
2715 help
2716 The default device to use with the jffs2 command.
2717
2718config JFFS2_PART_OFFSET
2719 hex "Default offset within flash to locate the JFFS2 image"
2720 depends on CMD_JFFS2
2721 default 0x0
2722 help
2723 The default offset within flash to locate the JFFS2 image.
2724
2725config JFFS2_PART_SIZE
2726 hex "Default size of JFFS2 partition"
2727 depends on CMD_JFFS2
2728 default 0xFFFFFFFF
2729 help
2730 The default size of the JFFS2 partition
2731
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002732config CMD_MTDPARTS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002733 bool "MTD partition support"
Miquel Raynald2418202019-10-25 19:39:30 +02002734 depends on MTD
Tom Rinidc11bf02024-01-10 13:46:07 -05002735 select MTD_PARTITIONS
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002736 help
Miquel Raynal007dddc2018-09-29 12:58:30 +02002737 MTD partitioning tool support.
2738 It is strongly encouraged to avoid using this command
2739 anymore along with 'sf', 'nand', 'onenand'. One can still
2740 declare the partitions in the mtdparts environment variable
2741 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripardbf2fbd12017-02-27 18:22:04 +01002742
Simon Glass66d7db02017-08-04 16:34:30 -06002743config CMD_MTDPARTS_SPREAD
2744 bool "Padd partition size to take account of bad blocks"
2745 depends on CMD_MTDPARTS
2746 help
2747 This enables the 'spread' sub-command of the mtdparts command.
2748 This command will modify the existing mtdparts variable by increasing
2749 the size of the partitions such that 1) each partition's net size is
2750 at least as large as the size specified in the mtdparts variable and
2751 2) each partition starts on a good block.
2752
Alexander Dahl6cae4f42019-10-30 16:53:55 +01002753config CMD_MTDPARTS_SHOW_NET_SIZES
2754 bool "Show net size (w/o bad blocks) of partitions"
2755 depends on CMD_MTDPARTS
2756 help
2757 Adds two columns to the printed partition table showing the
2758 effective usable size of a partition, if bad blocks are taken
2759 into account.
2760
Miquel Raynalf21322f2019-10-03 19:50:25 +02002761config MTDIDS_DEFAULT
2762 string "Default MTD IDs"
Miquel Raynald2418202019-10-25 19:39:30 +02002763 depends on MTD || SPI_FLASH
Patrick Delaunay1e8e8282022-12-08 09:10:13 +01002764 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynalf21322f2019-10-03 19:50:25 +02002765 help
2766 Defines a default MTD IDs list for use with MTD partitions in the
2767 Linux MTD command line partitions format.
2768
2769config MTDPARTS_DEFAULT
2770 string "Default MTD partition scheme"
Miquel Raynald2418202019-10-25 19:39:30 +02002771 depends on MTD || SPI_FLASH
Patrick Delaunay1e8e8282022-12-08 09:10:13 +01002772 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynalf21322f2019-10-03 19:50:25 +02002773 help
2774 Defines a default MTD partitioning scheme in the Linux MTD command
2775 line partitions format
2776
Simon Glass19c5caf2017-08-04 16:34:58 -06002777config CMD_YAFFS2
2778 bool "yaffs2 - Access of YAFFS2 filesystem"
2779 depends on YAFFS2
2780 default y
2781 help
2782 This provides commands for accessing a YAFFS2 filesystem. Yet
2783 Another Flash Filesystem 2 is a filesystem designed specifically
2784 for NAND flash. It incorporates bad-block management and ensures
2785 that device writes are sequential regardless of filesystem
2786 activity.
2787
Simon Glassdc82dee2017-08-04 16:35:04 -06002788config CMD_ZFS
2789 bool "zfs - Access of ZFS filesystem"
2790 help
2791 This provides commands to accessing a ZFS filesystem, commonly used
2792 on Solaris systems. Two sub-commands are provided:
2793
2794 zfsls - list files in a directory
2795 zfsload - load a file
2796
2797 See doc/README.zfs for more details.
2798
Dinh Nguyen0685bef2016-04-21 09:05:23 -05002799endmenu
2800
Simon Glass3423f212017-04-26 22:27:52 -06002801menu "Debug commands"
2802
Simon Glasse1efad22021-03-15 18:00:24 +13002803config CMD_CBSYSINFO
2804 bool "cbsysinfo"
2805 depends on X86
2806 default y if SYS_COREBOOT
2807 help
2808 This provides information about the coreboot sysinfo table stored in
2809 memory by coreboot before jumping to U-Boot. It can be useful for
2810 debugging the beaaviour of coreboot or U-Boot.
2811
Stefan Roese2702b272022-09-02 13:57:51 +02002812config CMD_CYCLIC
2813 bool "cyclic - Show information about cyclic functions"
2814 depends on CYCLIC
2815 default y
2816 help
2817 This enables the 'cyclic' command which provides information about
2818 cyclic execution functions. This infrastructure allows registering
2819 functions to be executed cyclically, e.g. every 100ms. These commands
2820 are supported:
2821
2822 cyclic list - list cyclic functions
2823 cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic
2824 demo function
2825
2826 See doc/develop/cyclic.rst for more details.
2827
Simon Glass20ea5632017-04-26 22:28:08 -06002828config CMD_DIAG
2829 bool "diag - Board diagnostics"
2830 help
2831 This command provides access to board diagnostic tests. These are
2832 called Power-on Self Tests (POST). The command allows listing of
2833 available tests and running either all the tests, or specific tests
2834 identified by name.
2835
Simon Glass3304fa82022-03-04 08:43:06 -07002836config CMD_EVENT
2837 bool "event - Show information about events"
Tom Rini7d3684a2023-01-16 15:46:49 -05002838 depends on EVENT
Simon Glass3304fa82022-03-04 08:43:06 -07002839 default y if EVENT_DEBUG
2840 help
2841 This enables the 'event' command which provides information about
2842 events and event-handler routines. This can help to device event
2843 hadling.
2844
Simon Glass4c3a6202017-05-17 03:25:39 -06002845config CMD_IRQ
2846 bool "irq - Show information about interrupts"
Pragnesh Patel3375e0b2020-08-24 20:38:55 +05302847 depends on !ARM && !MIPS && !RISCV && !SH
Simon Glass4c3a6202017-05-17 03:25:39 -06002848 help
2849 This enables two commands:
2850
2851 interrupts - enable or disable interrupts
2852 irqinfo - print device-specific interrupt information
Simon Glassfd9948c2017-05-17 03:25:40 -06002853
2854config CMD_KGDB
2855 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simek9d364412018-10-04 14:26:13 +02002856 depends on PPC
Simon Glassfd9948c2017-05-17 03:25:40 -06002857 help
2858 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2859 over a serial link for debugging purposes. This allows
2860 single-stepping, inspecting variables, etc. This is supported only
2861 on PowerPC at present.
2862
Simon Glass5684f8f2017-12-04 13:48:26 -07002863config CMD_LOG
2864 bool "log - Generation, control and access to logging"
Heinrich Schuchardt74bad682018-04-19 22:02:46 +02002865 select LOG
Sean Anderson304882e2020-10-27 19:55:38 -04002866 select GETOPT
Simon Glass5684f8f2017-12-04 13:48:26 -07002867 help
2868 This provides access to logging features. It allows the output of
2869 log data to be controlled to a limited extent (setting up the default
Simon Glass14c8a062017-12-04 13:48:27 -07002870 maximum log level for emitting of records). It also provides access
2871 to a command used for testing the log system.
Simon Glass5684f8f2017-12-04 13:48:26 -07002872
Simon Glass126cb792017-08-04 16:34:59 -06002873config CMD_TRACE
2874 bool "trace - Support tracing of function calls and timing"
Simon Glass84b77112021-11-24 09:26:39 -07002875 depends on TRACE
2876 default y
Simon Glass126cb792017-08-04 16:34:59 -06002877 help
2878 Enables a command to control using of function tracing within
2879 U-Boot. This allows recording of call traces including timing
2880 information. The command can write data to memory for exporting
Simon Glassbfce7fc2019-04-08 13:20:51 -06002881 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glass126cb792017-08-04 16:34:59 -06002882 details.
2883
Igor Opaniuk60291192018-06-03 21:56:39 +03002884config CMD_AVB
2885 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniuke0df0352018-07-17 14:33:25 +03002886 depends on AVB_VERIFY
Igor Opaniuk60291192018-06-03 21:56:39 +03002887 help
2888 Enables a "avb" command to perform verification of partitions using
2889 Android Verified Boot 2.0 functionality. It includes such subcommands:
2890 avb init - initialize avb2 subsystem
2891 avb read_rb - read rollback index
2892 avb write_rb - write rollback index
2893 avb is_unlocked - check device lock state
2894 avb get_uuid - read and print uuid of a partition
2895 avb read_part - read data from partition
2896 avb read_part_hex - read data from partition and output to stdout
2897 avb write_part - write data to partition
2898 avb verify - run full verification chain
Joel Peshkin369d87a2021-04-11 11:21:58 +02002899
2900config CMD_STACKPROTECTOR_TEST
2901 bool "Test command for stack protector"
2902 depends on STACKPROTECTOR
2903 help
2904 Enable stackprot_test command
2905 The stackprot_test command will force a stack overrun to test
2906 the stack smashing detection mechanisms.
2907
Simon Glass3423f212017-04-26 22:27:52 -06002908endmenu
2909
Heiko Schocher09dbb852016-09-21 07:58:19 +02002910config CMD_UBI
2911 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher09dbb852016-09-21 07:58:19 +02002912 select MTD_UBI
2913 help
2914 UBI is a software layer above MTD layer which admits use of LVM-like
2915 logical volumes on top of MTD devices, hides some complexities of
2916 flash chips like wear and bad blocks and provides some other useful
2917 capabilities. Please, consult the MTD web site for more details
2918 (www.linux-mtd.infradead.org). Activate this option if you want
2919 to use U-Boot UBI commands.
Miquel Raynal12f1ff12018-09-29 12:58:29 +02002920 It is also strongly encouraged to also enable CONFIG_MTD to get full
2921 partition support.
Heiko Schocher09dbb852016-09-21 07:58:19 +02002922
Philippe Reynes10d53222020-03-23 19:20:47 +01002923config CMD_UBI_RENAME
2924 bool "Enable rename"
2925 depends on CMD_UBI
Philippe Reynes10d53222020-03-23 19:20:47 +01002926 help
2927 Enable a "ubi" command to rename ubi volume:
2928 ubi rename <oldname> <newname>
2929
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002930config CMD_UBIFS
2931 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard1e6a0962017-03-03 14:53:22 +01002932 depends on CMD_UBI
Michal Simek84f3dec2018-07-23 15:55:13 +02002933 default y if CMD_UBI
Karl Beldan3418eeb2017-07-12 16:11:47 +00002934 select LZO
Pali Rohár67a8b272022-05-23 22:50:36 +02002935 select GZIP
Boris Brezillonaa57d0f2017-02-27 18:22:06 +01002936 help
2937 UBIFS is a file system for flash devices which works on top of UBI.
2938
Aswath Govindrajubb5b9fe2021-08-13 23:04:41 +05302939config MMC_SPEED_MODE_SET
2940 bool "set speed mode using mmc command"
2941 depends on CMD_MMC
Aswath Govindrajubb5b9fe2021-08-13 23:04:41 +05302942 help
2943 Enable setting speed mode using mmc rescan and mmc dev commands.
2944 The speed mode is provided as the last argument in these commands
2945 and is indicated using the index from enum bus_mode in
2946 include/mmc.h. A speed mode can be set only if it has already
2947 been enabled in the device tree.
Alexey Romanov68c4a372023-01-10 13:56:47 +03002948
2949config CMD_MESON
2950 bool "Amlogic Meson commands"
2951 depends on ARCH_MESON
2952 default y
2953 help
2954 Enable useful commands for the Meson Soc family developed by Amlogic Inc.
Simon Glassd4ebc6b2023-10-26 14:31:29 -04002955
2956endif