blob: ec2fe7ad35c3ac89465b006c0dffb298b82d58cb [file] [log] [blame]
Simon Glass88d9b262023-10-26 14:31:29 -04001menuconfig CMDLINE
2 bool "Command line interface"
Simon Glass302a6482016-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 Glass88d9b262023-10-26 14:31:29 -040012if CMDLINE
13
Simon Glass72a8cf82016-01-17 20:53:51 -070014config HUSH_PARSER
15 bool "Use hush shell"
Simon Glass72a8cf82016-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 Laniel30dcef82023-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 Rini3c3a7342024-01-18 09:07:25 -050030 default y
Francis Laniel30dcef82023-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 Rini3c3a7342024-01-18 09:07:25 -050035 It is actually the default U-Boot shell when decided to use hush as shell.
36
Francis Laniel9a068372023-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 Rini3c3a7342024-01-18 09:07:25 -050043 This parser is experimental and not well tested.
44
Francis Laniel9a068372023-12-22 22:02:32 +010045config HUSH_SELECTABLE
46 bool
47 default y if HUSH_OLD_PARSER && HUSH_MODERN_PARSER
Francis Laniel30dcef82023-12-22 22:02:29 +010048endmenu
49
Adam Fordd021e942018-02-06 07:58:59 -060050config CMDLINE_EDITING
51 bool "Enable command line editing"
Adam Fordd021e942018-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 Rinidafcd962022-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 Fordd021e942018-02-06 07:58:59 -060064config AUTO_COMPLETE
65 bool "Enable auto complete using TAB"
Adam Fordd021e942018-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 Glass88d9b262023-10-26 14:31:29 -040072 default y
Adam Fordd021e942018-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 Glass72a8cf82016-01-17 20:53:51 -070077config SYS_PROMPT
78 string "Shell prompt"
Michal Simeka91feae2019-09-25 12:32:41 +020079 default "Zynq> " if ARCH_ZYNQ
Michal Simek3c3886d2019-09-25 12:37:15 +020080 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass72a8cf82016-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 Delaunay48aee0a2020-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 Rinicf493582022-05-11 16:21:06 -040095config SYS_MAXARGS
96 int "Maximum number arguments accepted by commands"
Heinrich Schuchardtcc7e3d12024-01-15 14:46:56 +010097 default 64
Tom Rinicf493582022-05-11 16:21:06 -040098
Christoph Muellner7ae31fc2019-04-05 13:03:46 +020099config SYS_XTRACE
Sean Andersonb935d192021-03-04 11:34:23 -0500100 bool "Command execution tracer"
Simon Glass88d9b262023-10-26 14:31:29 -0400101 default y
Christoph Muellner7ae31fc2019-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 Protsenko610eec72017-09-28 12:33:45 -0700109config BUILD_BIN2C
110 bool
111
Simon Glass72a8cf82016-01-17 20:53:51 -0700112comment "Commands"
113
114menu "Info commands"
115
Simon Glass0b885bc2020-04-26 09:19:53 -0600116config CMD_ACPI
117 bool "acpi"
Simon Glass0992a902023-05-04 16:54:57 -0600118 depends on ACPI
Heinrich Schuchardt12218c12021-01-20 21:37:56 +0100119 default y
Simon Glass0b885bc2020-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 Meng56d06352021-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 Glass72a8cf82016-01-17 20:53:51 -0700138config CMD_BDI
139 bool "bdinfo"
140 default y
141 help
142 Print board info
143
Simon Glassb279f512023-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 Yamada61304db2017-01-30 11:12:07 +0900152config CMD_CONFIG
153 bool "config"
Masahiro Yamada61304db2017-01-30 11:12:07 +0900154 default SANDBOX
Michal Simek5ed063d2018-07-23 15:55:13 +0200155 select BUILD_BIN2C
Masahiro Yamada61304db2017-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 Glass72a8cf82016-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 Schuchardt622178d2020-11-05 00:29:11 +0100172 depends on CPU
Simon Glass72a8cf82016-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 Ganue68c03b2022-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 Glass33eb0b92023-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 Zhao421359a2024-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 Glass72a8cf82016-01-17 20:53:51 -0700203config CMD_LICENSE
204 bool "license"
Masahiro Yamadad726f222017-01-30 11:12:08 +0900205 select BUILD_BIN2C
Ivan Orlovcf536da2024-01-11 12:58:19 +0000206 depends on GZIP
Simon Glass72a8cf82016-01-17 20:53:51 -0700207 help
208 Print GPL license text
209
Simon Glass3b65ee32019-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 Leroyfa379222017-08-04 16:34:40 -0600218config CMD_REGINFO
219 bool "reginfo"
220 depends on PPC
221 help
222 Register dump
223
Sebastian Reichel1db4c0a2024-10-15 17:26:43 +0200224config CMD_TCPM
225 bool "tcpm"
226 depends on TYPEC_TCPM
227 help
228 Show voltage and current negotiated via USB PD as well as the
229 current state of the Type C Port Manager (TCPM) state machine.
230
Baruch Siach1c79f2f2020-01-21 15:44:54 +0200231config CMD_TLV_EEPROM
232 bool "tlv_eeprom"
233 depends on I2C_EEPROM
Pali Rohár56e3d6e2022-05-30 10:42:35 +0200234 select CRC32
Baruch Siach1c79f2f2020-01-21 15:44:54 +0200235 help
236 Display and program the system EEPROM data block in ONIE Tlvinfo
237 format. TLV stands for Type-Length-Value.
238
239config SPL_CMD_TLV_EEPROM
240 bool "tlv_eeprom for SPL"
241 depends on SPL_I2C_EEPROM
Simon Glass9ca00682021-07-10 21:14:31 -0600242 select SPL_DRIVERS_MISC
Pali Rohár56e3d6e2022-05-30 10:42:35 +0200243 select SPL_CRC32
Baruch Siach1c79f2f2020-01-21 15:44:54 +0200244 help
245 Read system EEPROM data block in ONIE Tlvinfo format from SPL.
246
Heinrich Schuchardtc92b50a2020-08-20 19:43:39 +0200247config CMD_SBI
248 bool "sbi"
249 depends on RISCV_SMODE && SBI_V02
250 help
251 Display information about the SBI implementation.
252
Heinrich Schuchardt9de4ec82024-01-25 16:54:34 +0100253config CMD_SMBIOS
254 bool "smbios"
255 depends on SMBIOS
256 help
257 Display the SMBIOS information.
258
Simon Glass72a8cf82016-01-17 20:53:51 -0700259endmenu
260
261menu "Boot commands"
262
263config CMD_BOOTD
264 bool "bootd"
265 default y
266 help
267 Run the command stored in the environment "bootcmd", i.e.
268 "bootd" does the same thing as "run bootcmd".
269
270config CMD_BOOTM
271 bool "bootm"
272 default y
273 help
274 Boot an application image from the memory.
275
Philippe Reynes9d46e632022-03-28 22:57:00 +0200276config CMD_BOOTM_PRE_LOAD
277 bool "enable pre-load on bootm"
278 depends on CMD_BOOTM
279 depends on IMAGE_PRE_LOAD
Philippe Reynes9d46e632022-03-28 22:57:00 +0200280 help
Anand Moon608a88c2024-06-23 23:10:21 +0530281 Enable support of stage pre-load for the bootm command.
Philippe Reynes9d46e632022-03-28 22:57:00 +0200282 This stage allow to check or modify the image provided
283 to the bootm command.
284
Simon Glass5d053cc2022-04-24 23:31:10 -0600285config CMD_BOOTDEV
286 bool "bootdev"
287 depends on BOOTSTD
288 default y if BOOTSTD_FULL
289 help
290 Support listing available bootdevs (boot devices) which can provide an
291 OS to boot, as well as showing information about a particular one.
292
293 This command is not necessary for bootstd to work.
294
Simon Glass2d653f62022-04-24 23:31:11 -0600295config CMD_BOOTFLOW
296 bool "bootflow"
297 depends on BOOTSTD
298 default y
299 help
300 Support scanning for bootflows available with the bootdevs. The
301 bootflows can optionally be booted.
302
303config CMD_BOOTFLOW_FULL
304 bool "bootflow - extract subcommands"
305 depends on BOOTSTD_FULL
Simon Glassd8d40bc2023-05-06 08:27:09 -0600306 default y
Simon Glass2d653f62022-04-24 23:31:11 -0600307 help
308 Add the ability to list the available bootflows, select one and obtain
309 information about it.
310
311 This command is not necessary for bootstd to work.
312
Simon Glass7fca71d2022-04-24 23:31:12 -0600313config CMD_BOOTMETH
314 bool "bootmeth"
315 depends on BOOTSTD
316 default y if BOOTSTD_FULL
317 help
Quentin Schulz20a03832024-06-12 16:58:46 +0200318 Support listing available bootmeths (methods used to boot an
Simon Glass7fca71d2022-04-24 23:31:12 -0600319 Operating System), as well as selecting the order that the bootmeths
320 are used.
321
322 This command is not necessary for bootstd to work.
323
Cristian Ciocalteaecc7fda2019-12-24 18:05:39 +0200324config BOOTM_EFI
325 bool "Support booting UEFI FIT images"
AKASHI Takahiro64228202024-01-17 13:39:41 +0900326 depends on EFI_BINARY_EXEC && CMD_BOOTM && FIT
Cristian Ciocalteaecc7fda2019-12-24 18:05:39 +0200327 default y
328 help
329 Support booting UEFI FIT images via the bootm command.
330
Maxim Moskalets2abf14d2024-06-21 14:42:10 +0300331config BOOTM_ELF
332 bool "Support booting ELF images"
333 depends on CMD_BOOTM && LIB_ELF
Maxim Moskalets0e463842024-07-15 23:01:10 +0300334 default y if LIB_ELF
Maxim Moskalets2abf14d2024-06-21 14:42:10 +0300335 help
336 Support booting ELF images via the bootm command.
337
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500338config CMD_BOOTZ
339 bool "bootz"
340 help
341 Boot the Linux zImage
342
Masahiro Yamada26959272016-08-12 08:31:16 -0400343config CMD_BOOTI
344 bool "booti"
Simon Glass6b8f26b2023-10-01 19:15:24 -0600345 depends on ARM64 || RISCV || SANDBOX
Masahiro Yamada26959272016-08-12 08:31:16 -0400346 default y
347 help
348 Boot an AArch64 Linux Kernel image from memory.
349
Tom Rinicdd20e32024-04-18 08:29:35 -0600350config BOOTM_LINUX
351 bool "Support booting Linux OS images"
352 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
353 default y
354 help
355 Support booting the Linux kernel directly via a command such as bootm
356 or booti or bootz.
357
358config BOOTM_NETBSD
359 bool "Support booting NetBSD (non-EFI) loader images"
360 depends on CMD_BOOTM
361 default y
362 help
363 Support booting NetBSD via the bootm command.
364
365config BOOTM_OPENRTOS
366 bool "Support booting OPENRTOS / FreeRTOS images"
367 depends on CMD_BOOTM
368 help
369 Support booting OPENRTOS / FreeRTOS via the bootm command.
370
371config BOOTM_OSE
372 bool "Support booting Enea OSE images"
373 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
374 depends on CMD_BOOTM
375 help
376 Support booting Enea OSE images via the bootm command.
377
378config BOOTM_PLAN9
379 bool "Support booting Plan9 OS images"
380 depends on CMD_BOOTM
381 default y
382 help
383 Support booting Plan9 images via the bootm command.
384
385config BOOTM_RTEMS
386 bool "Support booting RTEMS OS images"
387 depends on CMD_BOOTM
388 default y
389 help
390 Support booting RTEMS images via the bootm command.
391
Linus Walleij41a29f22023-02-01 00:16:13 +0100392config CMD_SEAMA
393 bool "Support read SEAMA NAND images"
394 depends on MTD_RAW_NAND
395 help
396 Support reading NAND Seattle Image (SEAMA) images.
397
Simon Glass264f4b02024-08-07 16:47:30 -0600398config CMD_UPL
399 bool "upl - Universal Payload Specification"
400 help
401 Provides commands to deal with UPL payloads and handoff information.
402 U-Boot supports generating and accepting handoff information. The
403 mkimage tool will eventually support creating payloads.
404
Simon Glass5fe76d42022-07-30 15:52:37 -0600405config CMD_VBE
406 bool "vbe - Verified Boot for Embedded"
407 depends on BOOTMETH_VBE
Simon Glass2d742262022-08-23 10:14:05 -0700408 default y if BOOTSTD_FULL
Simon Glass5fe76d42022-07-30 15:52:37 -0600409 help
410 Provides various subcommands related to VBE, such as listing the
411 available methods, looking at the state and changing which method
412 is used to boot. Updating the parameters is not currently
413 supported.
414
Tom Rinicdd20e32024-04-18 08:29:35 -0600415config BOOTM_VXWORKS
416 bool "Support booting VxWorks OS images"
417 depends on CMD_BOOTM
418 default y
419 help
420 Support booting VxWorks images via the bootm command.
421
AKASHI Takahirofefff632019-11-08 10:32:15 +0900422config CMD_BOOTEFI
423 bool "bootefi"
424 depends on EFI_LOADER
425 default y
426 help
427 Boot an EFI image from memory.
428
AKASHI Takahiro296faf42023-11-21 10:29:40 +0900429if CMD_BOOTEFI
430config CMD_BOOTEFI_BINARY
431 bool "Allow booting an EFI binary directly"
AKASHI Takahiro64228202024-01-17 13:39:41 +0900432 depends on EFI_BINARY_EXEC
AKASHI Takahiro296faf42023-11-21 10:29:40 +0900433 default y
434 help
435 Select this option to enable direct execution of binary at 'bootefi'.
436 This subcommand will allow you to load the UEFI binary using
437 other U-Boot commands or external methods and then run it.
438
Simon Glass422822c2023-10-26 14:31:20 -0400439config CMD_BOOTEFI_BOOTMGR
440 bool "UEFI Boot Manager command"
AKASHI Takahiro279b03d2024-01-17 13:39:42 +0900441 depends on EFI_BOOTMGR
Simon Glass422822c2023-10-26 14:31:20 -0400442 default y
443 help
444 Select this option to enable the 'bootmgr' subcommand of 'bootefi'.
445 This subcommand will allow you to select the UEFI binary to be booted
446 via UEFI variables Boot####, BootOrder, and BootNext.
447
Simon Glassc7ae3df2016-11-07 08:47:08 -0700448config CMD_BOOTEFI_HELLO
449 bool "Allow booting a standard EFI hello world for testing"
Simon Glass6fe80872024-09-26 23:59:31 +0200450 depends on CMD_BOOTEFI_BINARY && BOOTEFI_HELLO_COMPILE
Heinrich Schuchardtec5f0ed2020-07-13 07:33:40 +0200451 default y if CMD_BOOTEFI_SELFTEST
Simon Glassc7ae3df2016-11-07 08:47:08 -0700452 help
453 This adds a standard EFI hello world application to U-Boot so that
454 it can be used with the 'bootefi hello' command. This is useful
455 for testing that EFI is working at a basic level, and for bringing
456 up EFI support on a new architecture.
457
Michal Simek953d3352024-04-16 08:55:16 +0200458source "lib/efi_selftest/Kconfig"
AKASHI Takahiro296faf42023-11-21 10:29:40 +0900459endif
Heinrich Schuchardt623b3a52017-09-15 10:06:11 +0200460
Tom Rini4880b022016-11-29 09:14:56 -0500461config CMD_BOOTMENU
462 bool "bootmenu"
463 select MENU
Masahisa Kojimaa3d0aa82022-04-28 17:09:41 +0900464 select CHARSET
Tom Rini4880b022016-11-29 09:14:56 -0500465 help
466 Add an ANSI terminal boot menu command.
467
Eugeniu Roscab84acf12019-12-24 17:51:06 +0100468config CMD_ADTIMG
469 bool "adtimg"
Sam Protsenkod03e76a2018-08-16 23:34:13 +0300470 help
471 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
472 image into RAM, dump image structure information, etc. Those dtb/dtbo
473 files should be merged in one dtb further, which needs to be passed to
474 the kernel, as part of a boot process.
475
Sam Protsenko94f6d0d2020-01-24 17:53:42 +0200476config CMD_ABOOTIMG
477 bool "abootimg"
478 depends on ANDROID_BOOT_IMAGE
479 help
480 Android Boot Image manipulation commands. Allows one to extract
481 images contained in boot.img, like kernel, ramdisk, dtb, etc, and
482 obtain corresponding meta-information from boot.img.
483
Sam Protsenko34b43192020-01-24 17:53:43 +0200484 See doc/android/boot-image.rst for details.
485
Simon Glassa0874dc2023-06-01 10:23:02 -0600486config CMD_CEDIT
487 bool "cedit - Configuration editor"
488 depends on CEDIT
489 default y
490 help
491 Provides a command to allow editing of board configuration and
492 providing a UI for the user to adjust settings. Subcommands allow
493 loading and saving of configuration as well as showing an editor.
494
Simon Glass72a8cf82016-01-17 20:53:51 -0700495config CMD_ELF
Daniel Palmer080bb842024-09-29 18:27:39 +0900496 bool "bootelf"
Simon Glass72a8cf82016-01-17 20:53:51 -0700497 default y
Keerthy805b3ca2020-02-12 13:55:03 +0530498 select LIB_ELF
Simon Glass72a8cf82016-01-17 20:53:51 -0700499 help
Daniel Palmer080bb842024-09-29 18:27:39 +0900500 Boot an ELF image from memory.
501
502config CMD_ELF_BOOTVX
503 bool "bootvx"
504 default y
505 depends on CMD_ELF
506 help
507 Boot a vxWorks image from memory
Simon Glass72a8cf82016-01-17 20:53:51 -0700508
Maxim Moskalets6d1734f2024-03-08 00:29:14 +0300509config CMD_ELF_FDT_SETUP
510 bool "Flattened Device Tree setup in bootelf cmd"
Maxim Moskalets6d1734f2024-03-08 00:29:14 +0300511 depends on CMD_ELF
Maxim Moskalets0e463842024-07-15 23:01:10 +0300512 select OF_LIBFDT
Maxim Moskalets6d1734f2024-03-08 00:29:14 +0300513 help
514 Do FDT setup in bootelf command optionally by param -d, which
515 allows to bring additional system info (e.g. /memory node) to
516 the Operating System or application.
517
Michal Simek23922e22016-04-06 20:28:04 +0200518config CMD_FDT
519 bool "Flattened Device Tree utility commands"
520 default y
521 depends on OF_LIBFDT
522 help
523 Do FDT related setup before booting into the Operating System.
524
Kory Maincent2f84e9c2021-05-04 19:31:22 +0200525config SUPPORT_EXTENSION_SCAN
526 bool
527
528config CMD_EXTENSION
529 bool "Extension board management command"
530 select CMD_FDT
531 depends on SUPPORT_EXTENSION_SCAN
532 help
533 Enables the "extension" command, which allows to detect
534 extension boards connected to the system, and apply
535 corresponding Device Tree overlays.
536
Simon Glass72a8cf82016-01-17 20:53:51 -0700537config CMD_GO
538 bool "go"
539 default y
540 help
541 Start an application at a given address.
542
543config CMD_RUN
544 bool "run"
545 default y
546 help
547 Run the command in the given environment variable.
548
549config CMD_IMI
550 bool "iminfo"
551 default y
552 help
553 Print header information for application image.
554
555config CMD_IMLS
556 bool "imls"
Tom Rini03de3052024-05-20 13:35:03 -0600557 depends on MTD_NOR_FLASH || FLASH_CFI_DRIVER
Simon Glass72a8cf82016-01-17 20:53:51 -0700558 help
559 List all images found in flash
560
561config CMD_XIMG
562 bool "imxtract"
563 default y
564 help
565 Extract a part of a multi-image.
566
Nikita Shubin05e8e242022-12-19 11:05:27 +0300567config SYS_XIMG_LEN
568 hex "imxtract max gunzip size"
569 default 0x800000
570 depends on CMD_XIMG && GZIP
571 help
572 This provides the size of the commad-line argument area
573 used by imxtract for extracting pieces of FIT image.
574 It should be large enough to fit uncompressed size of
575 FIT piece we are extracting.
576
Simon Glass72c30332017-08-04 16:34:48 -0600577config CMD_SPL
578 bool "spl export - Export boot information for Falcon boot"
579 depends on SPL
580 help
581 Falcon mode allows booting directly from SPL into an Operating
582 System such as Linux, thus skipping U-Boot proper. See
583 doc/README.falcon for full information about how to use this
584 command.
585
Simon Glass203dc1b2017-08-04 16:34:49 -0600586config CMD_SPL_NAND_OFS
Lukasz Majewskif63c43b2019-05-16 16:01:36 +0200587 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewski7cb179e2019-05-16 16:01:35 +0200588 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Tom Rinia077ac12023-08-02 11:09:43 -0400589 default 0x0
Simon Glass203dc1b2017-08-04 16:34:49 -0600590 help
591 This provides the offset of the command line arguments for Linux
592 when booting from NAND in Falcon mode. See doc/README.falcon
593 for full information about how to use this option (and also see
594 board/gateworks/gw_ventana/README for an example).
595
Lukasz Majewskief9e57d2019-05-16 16:01:37 +0200596config CMD_SPL_NOR_OFS
597 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
598 depends on CMD_SPL && SPL_NOR_SUPPORT
Tom Rinia077ac12023-08-02 11:09:43 -0400599 default 0x0
Lukasz Majewskief9e57d2019-05-16 16:01:37 +0200600 help
601 This provides the offset of the command line arguments or dtb for
602 Linux when booting from NOR in Falcon mode.
603
Simon Glass3a91a252017-08-04 16:34:50 -0600604config CMD_SPL_WRITE_SIZE
605 hex "Size of argument area"
606 depends on CMD_SPL
607 default 0x2000
608 help
609 This provides the size of the command-line argument area in NAND
610 flash used by Falcon-mode boot. See the documentation until CMD_SPL
611 for detail.
612
Simon Glass9b92a8d2017-08-04 16:34:57 -0600613config CMD_THOR_DOWNLOAD
614 bool "thor - TIZEN 'thor' download"
Marek Szyprowski909338c2019-10-02 12:29:08 +0200615 select DFU
Venkatesh Yadav Abbarapu16794d32023-09-04 08:45:27 +0530616 select USB_FUNCTION_THOR
617 depends on USB_GADGET_DOWNLOAD
Simon Glass9b92a8d2017-08-04 16:34:57 -0600618 help
619 Implements the 'thor' download protocol. This is a way of
620 downloading a software update over USB from an attached host.
621 There is no documentation about this within the U-Boot source code
622 but you should be able to find something on the interwebs.
623
Tom Rini60910a32022-12-02 16:42:46 -0500624config THOR_RESET_OFF
625 bool "thor: Disable reset on completion"
626 depends on CMD_THOR_DOWNLOAD
627
Simon Glasse7a815f2017-08-04 16:35:03 -0600628config CMD_ZBOOT
629 bool "zboot - x86 boot command"
Simon Glass80d4c982023-12-03 17:29:28 -0700630 depends on ZBOOT
631 default y
Simon Glasse7a815f2017-08-04 16:35:03 -0600632 help
633 With x86 machines it is common to boot a bzImage file which
634 contains both a kernel and a setup.bin file. The latter includes
635 configuration information from the dark ages which x86 boards still
636 need to pick things out of.
637
638 Consider using FIT in preference to this since it supports directly
639 booting both 32- and 64-bit kernels, as well as secure boot.
Heinrich Schuchardt082b4672024-06-18 08:05:46 +0200640 Documentation is available in doc/usage/fit/x86-fit-boot.rst.
Simon Glasse7a815f2017-08-04 16:35:03 -0600641
Simon Glass72a8cf82016-01-17 20:53:51 -0700642endmenu
643
644menu "Environment commands"
645
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500646config CMD_ASKENV
647 bool "ask for env variable"
648 help
649 Ask for environment variable
650
Simon Glass72a8cf82016-01-17 20:53:51 -0700651config CMD_EXPORTENV
652 bool "env export"
653 default y
654 help
655 Export environments.
656
657config CMD_IMPORTENV
658 bool "env import"
659 default y
660 help
661 Import environments.
662
663config CMD_EDITENV
664 bool "editenv"
665 default y
666 help
667 Edit environment variable.
668
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500669config CMD_GREPENV
670 bool "search env"
671 help
672 Allow for searching environment variables
673
Simon Glass72a8cf82016-01-17 20:53:51 -0700674config CMD_SAVEENV
675 bool "saveenv"
676 default y
677 help
678 Save all environment variables into the compiled-in persistent
679 storage.
680
Frank Wunderlichcd121bd2019-06-29 11:36:19 +0200681config CMD_ERASEENV
682 bool "eraseenv"
Frank Wunderlichcd121bd2019-06-29 11:36:19 +0200683 depends on CMD_SAVEENV
684 help
685 Erase environment variables from the compiled-in persistent
686 storage.
687
Simon Glass72a8cf82016-01-17 20:53:51 -0700688config CMD_ENV_EXISTS
689 bool "env exists"
690 default y
691 help
692 Check if a variable is defined in the environment for use in
693 shell scripting.
694
Simon Glassa55d29d2017-05-17 03:25:13 -0600695config CMD_ENV_CALLBACK
696 bool "env callbacks - print callbacks and their associated variables"
697 help
698 Some environment variable have callbacks defined by
699 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
700 For example changing "baudrate" adjust the serial baud rate. This
701 command lists the currently defined callbacks.
702
Simon Glassffc76582017-05-17 03:25:14 -0600703config CMD_ENV_FLAGS
704 bool "env flags -print variables that have non-default flags"
705 help
706 Some environment variables have special flags that control their
707 behaviour. For example, serial# can only be written once and cannot
708 be deleted. This command shows the variables that have special
709 flags.
710
AKASHI Takahiro49d81fd2019-02-25 15:54:36 +0900711config CMD_NVEDIT_EFI
712 bool "env [set|print] -e - set/print UEFI variables"
713 depends on EFI_LOADER
AKASHI Takahiro49d81fd2019-02-25 15:54:36 +0900714 imply HEXDUMP
715 help
716 UEFI variables are encoded as some form of U-Boot variables.
717 If enabled, we are allowed to set/print UEFI variables using
718 "env" command with "-e" option without knowing details.
719
Samuel Dionne-Rielec57bd72021-12-20 18:31:56 -0500720config CMD_NVEDIT_INDIRECT
721 bool "env indirect - Sets environment value from another"
722
Leo Ruan8e921202019-05-24 17:20:19 +0200723config CMD_NVEDIT_INFO
724 bool "env info - print or evaluate environment information"
725 help
726 Print environment information:
727 - env_valid : is environment valid
728 - env_ready : is environment imported into hash table
729 - env_use_default : is default environment used
730
731 This command can be optionally used for evaluation in scripts:
732 [-d] : evaluate whether default environment is used
733 [-p] : evaluate whether environment can be persisted
Patrick Delaunay6718ebd2020-06-19 14:03:34 +0200734 [-q] : quiet output
Leo Ruan8e921202019-05-24 17:20:19 +0200735 The result of multiple evaluations will be combined with AND.
736
Patrick Delaunay0115dd32020-07-28 11:51:20 +0200737config CMD_NVEDIT_LOAD
738 bool "env load"
739 help
740 Load all environment variables from the compiled-in persistent
741 storage.
742
Patrick Delaunaya97d22e2020-07-28 11:51:21 +0200743config CMD_NVEDIT_SELECT
744 bool "env select"
745 help
746 Select the compiled-in persistent storage of environment variables.
747
Simon Glass72a8cf82016-01-17 20:53:51 -0700748endmenu
749
750menu "Memory commands"
751
Mario Six55b25562018-03-28 14:39:18 +0200752config CMD_BINOP
753 bool "binop"
754 help
755 Compute binary operations (xor, or, and) of byte arrays of arbitrary
756 size from memory and store the result in memory or the environment.
757
Simon Glass4aed2272020-09-19 18:49:26 -0600758config CMD_BLOBLIST
759 bool "bloblist"
Heinrich Schuchardtaa028df2024-04-22 15:50:10 +0200760 depends on BLOBLIST
761 default y
Simon Glass4aed2272020-09-19 18:49:26 -0600762 help
763 Show information about the bloblist, a collection of binary blobs
764 held in memory that persist between SPL and U-Boot. In the case of
765 x86 devices the bloblist can be used to hold ACPI tables so that they
766 remain available in memory.
767
Simon Glass72a8cf82016-01-17 20:53:51 -0700768config CMD_CRC32
769 bool "crc32"
770 default y
Michal Simek5ed063d2018-07-23 15:55:13 +0200771 select HASH
Simon Glass72a8cf82016-01-17 20:53:51 -0700772 help
773 Compute CRC32.
774
Daniel Thompson221a9492017-05-19 17:26:58 +0100775config CRC32_VERIFY
776 bool "crc32 -v"
777 depends on CMD_CRC32
778 help
779 Add -v option to verify data against a crc32 checksum.
780
Simon Glassa1dc9802017-05-17 03:25:10 -0600781config CMD_EEPROM
782 bool "eeprom - EEPROM subsystem"
Ivan Orlov407184c2024-02-23 17:14:20 +0000783 depends on DM_I2C || SYS_I2C_LEGACY
Simon Glassa1dc9802017-05-17 03:25:10 -0600784 help
785 (deprecated, needs conversion to driver model)
786 Provides commands to read and write EEPROM (Electrically Erasable
787 Programmable Read Only Memory) chips that are connected over an
788 I2C bus.
789
790config CMD_EEPROM_LAYOUT
791 bool "Enable layout-aware eeprom commands"
792 depends on CMD_EEPROM
793 help
794 (deprecated, needs conversion to driver model)
795 When enabled, additional eeprom sub-commands become available.
796
797 eeprom print - prints the contents of the eeprom in a human-readable
798 way (eeprom layout fields, and data formatted to be fit for human
799 consumption).
800
801 eeprom update - allows user to update eeprom fields by specifying
802 the field name, and providing the new data in a human readable format
803 (same format as displayed by the eeprom print command).
804
805 Both commands can either auto detect the layout, or be told which
806 layout to use.
807
808 Feature API:
809 __weak int parse_layout_version(char *str)
810 - override to provide your own layout name parsing
811 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
812 int layout_version);
813 - override to setup the layout metadata based on the version
814 __weak int eeprom_layout_detect(unsigned char *data)
815 - override to provide your own algorithm for detecting layout
816 version
817 eeprom_field.c
818 - contains various printing and updating functions for common
819 types of eeprom fields. Can be used for defining
820 custom layouts.
821
Marek Behún2d49daf2024-05-21 09:13:30 +0200822config EEPROM_LAYOUT_VERSIONS
823 bool "Support specifying eeprom layout version"
824 depends on CMD_EEPROM_LAYOUT
825 help
826 Support specifying eeprom layout version in the 'eeprom' command
827 via the -l option.
828
Simon Glassa1dc9802017-05-17 03:25:10 -0600829config EEPROM_LAYOUT_HELP_STRING
830 string "Tells user what layout names are supported"
Marek Behún2d49daf2024-05-21 09:13:30 +0200831 depends on EEPROM_LAYOUT_VERSIONS
Simon Glassa1dc9802017-05-17 03:25:10 -0600832 default "<not defined>"
833 help
834 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
835 command's help.
836
Tom Rini88cd7d02021-08-17 17:59:45 -0400837config SYS_I2C_EEPROM_BUS
838 int "I2C bus of the EEPROM device."
839 depends on CMD_EEPROM
840 default 0
841
842config SYS_I2C_EEPROM_ADDR_LEN
843 int "Length in bytes of the EEPROM memory array address"
844 depends on CMD_EEPROM || ID_EEPROM
845 default 1
846 range 1 2
847 help
848 Note: This is NOT the chip address length!
849
850config SYS_EEPROM_SIZE
851 depends on CMD_EEPROM
852 int "Size in bytes of the EEPROM device"
853 default 256
854
855config SYS_EEPROM_PAGE_WRITE_BITS
856 int "Number of bits used to address bytes in a single page"
Tom Rini03de3052024-05-20 13:35:03 -0600857 depends on CMD_EEPROM || ENV_IS_IN_EEPROM
Tom Rini88cd7d02021-08-17 17:59:45 -0400858 default 8
859 help
860 The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS.
861 A 64 byte page, for example would require six bits.
862
863config SYS_EEPROM_PAGE_WRITE_DELAY_MS
864 int "Number of milliseconds to delay between page writes"
865 depends on CMD_EEPROM || CMD_I2C
866 default 0
867
Simon Glassba71be52017-08-04 16:34:51 -0600868config LOOPW
869 bool "loopw"
870 help
871 Infinite write loop on address range
872
Andre Przywarabea79d72017-03-15 01:19:05 +0000873config CMD_MD5SUM
874 bool "md5sum"
Andre Przywarabea79d72017-03-15 01:19:05 +0000875 select MD5
Igor Opaniuk6ec3f922024-03-02 16:05:48 +0100876 select HASH
Andre Przywarabea79d72017-03-15 01:19:05 +0000877 help
878 Compute MD5 checksum.
879
Daniel Thompson221a9492017-05-19 17:26:58 +0100880config MD5SUM_VERIFY
Andre Przywarabea79d72017-03-15 01:19:05 +0000881 bool "md5sum -v"
Andre Przywarabea79d72017-03-15 01:19:05 +0000882 depends on CMD_MD5SUM
883 help
884 Add -v option to verify data against an MD5 checksum.
885
Simon Glassba71be52017-08-04 16:34:51 -0600886config CMD_MEMINFO
887 bool "meminfo"
Simon Glass8306c3b2024-10-21 10:19:29 +0200888 default y if SANDBOX
Daniel Thompson221a9492017-05-19 17:26:58 +0100889 help
Simon Glassba71be52017-08-04 16:34:51 -0600890 Display memory information.
Daniel Thompson221a9492017-05-19 17:26:58 +0100891
Simon Glassba71be52017-08-04 16:34:51 -0600892config CMD_MEMORY
893 bool "md, mm, nm, mw, cp, cmp, base, loop"
894 default y
Daniel Thompson221a9492017-05-19 17:26:58 +0100895 help
Simon Glassba71be52017-08-04 16:34:51 -0600896 Memory commands.
897 md - memory display
898 mm - memory modify (auto-incrementing address)
899 nm - memory modify (constant address)
900 mw - memory write (fill)
901 cp - memory copy
902 cmp - memory compare
903 base - print or set address offset
904 loop - initialize loop on address range
Simon Glass72a8cf82016-01-17 20:53:51 -0700905
Simon Glass550a9e72020-07-28 19:41:14 -0600906config CMD_MEM_SEARCH
Simon Glassbdded202020-06-02 19:26:49 -0600907 bool "ms - Memory search"
908 help
909 Memory-search command
910
911 This allows searching through a region of memory looking for hex
912 data (byte, 16-bit word, 32-bit long, also 64-bit on machines that
913 support it). It is also possible to search for a string. The
914 command accepts a memory range and a list of values to search for.
915 The values need to appear in memory in the same order they are given
916 in the command. At most 10 matches can be returned at a time, but
917 pressing return will show the next 10 matches. Environment variables
918 are set for use with scripting (memmatches, memaddr, mempos).
919
Joel Johnson72732312020-01-29 09:17:18 -0700920config CMD_MX_CYCLIC
Adam Ford78f28772019-08-14 07:54:34 -0500921 bool "Enable cyclic md/mw commands"
922 depends on CMD_MEMORY
923 help
Anand Moon608a88c2024-06-23 23:10:21 +0530924 Add the "mdc" and "mwc" memory commands. These are cyclic
925 "md/mw" commands.
926 Examples:
Adam Ford78f28772019-08-14 07:54:34 -0500927
928 => mdc.b 10 4 500
929 This command will print 4 bytes (10,11,12,13) each 500 ms.
930
931 => mwc.l 100 12345678 10
932 This command will write 12345678 to address 100 all 10 ms.
933
Jean-Jacques Hiblot803e1a32019-07-02 14:23:26 +0200934config CMD_RANDOM
935 bool "random"
936 default y
937 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
938 help
939 random - fill memory with random data
940
Simon Glass72a8cf82016-01-17 20:53:51 -0700941config CMD_MEMTEST
942 bool "memtest"
943 help
944 Simple RAM read/write test.
945
Mario Sixe89f8aa2018-03-28 14:38:14 +0200946if CMD_MEMTEST
947
948config SYS_ALT_MEMTEST
949 bool "Alternative test"
950 help
951 Use a more complete alternative memory test.
952
Ralph Siemsen9989fb12020-09-09 12:10:00 -0400953if SYS_ALT_MEMTEST
954
955config SYS_ALT_MEMTEST_BITFLIP
956 bool "Bitflip test"
957 default y
958 help
959 The alternative memory test includes bitflip test since 2020.07.
960 The bitflip test significantly increases the overall test time.
961 Bitflip test can optionally be disabled here.
962
963endif
964
Ashok Reddy Soma702de892020-05-04 15:26:21 +0200965config SYS_MEMTEST_START
966 hex "default start address for mtest"
Tom Riniff27af12021-12-12 22:12:29 -0500967 default 0x0
Ashok Reddy Soma702de892020-05-04 15:26:21 +0200968 help
969 This is the default start address for mtest for simple read/write
970 test. If no arguments are given to mtest, default address is used
971 as start address.
972
973config SYS_MEMTEST_END
974 hex "default end address for mtest"
975 default 0x1000
976 help
977 This is the default end address for mtest for simple read/write
978 test. If no arguments are given to mtest, default address is used
979 as end address.
980
Mario Sixe89f8aa2018-03-28 14:38:14 +0200981endif
982
Simon Glassba71be52017-08-04 16:34:51 -0600983config CMD_SHA1SUM
984 bool "sha1sum"
985 select SHA1
Simon Glass72a8cf82016-01-17 20:53:51 -0700986 help
Simon Glassba71be52017-08-04 16:34:51 -0600987 Compute SHA1 checksum.
988
989config SHA1SUM_VERIFY
990 bool "sha1sum -v"
991 depends on CMD_SHA1SUM
992 help
993 Add -v option to verify data against a SHA1 checksum.
Simon Glass72a8cf82016-01-17 20:53:51 -0700994
Simon Glass00805d72017-08-04 16:34:52 -0600995config CMD_STRINGS
996 bool "strings - display strings in memory"
997 help
998 This works similarly to the Unix 'strings' command except that it
999 works with a memory range. String of printable characters found
1000 within the range are displayed. The minimum number of characters
1001 for a sequence to be considered a string can be provided.
1002
Simon Glassee7c0e72017-05-17 03:25:43 -06001003endmenu
1004
1005menu "Compression commands"
1006
1007config CMD_LZMADEC
1008 bool "lzmadec"
Tom Rini99e46df2017-09-29 14:32:44 -04001009 default y if CMD_BOOTI
Simon Glassee7c0e72017-05-17 03:25:43 -06001010 select LZMA
1011 help
1012 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
1013 image from memory.
1014
Yusuke Ashidukaa1732232020-02-20 20:48:01 +09001015config CMD_UNLZ4
1016 bool "unlz4"
1017 default y if CMD_BOOTI
1018 select LZ4
1019 help
1020 Support decompressing an LZ4 image from memory region.
1021
Masahiro Yamadae9d33e72017-02-05 10:42:56 +09001022config CMD_UNZIP
1023 bool "unzip"
Tom Rini99e46df2017-09-29 14:32:44 -04001024 default y if CMD_BOOTI
Michael Walle56c311b2020-05-22 14:07:35 +02001025 select GZIP
Masahiro Yamadae9d33e72017-02-05 10:42:56 +09001026 help
1027 Uncompress a zip-compressed memory region.
1028
1029config CMD_ZIP
1030 bool "zip"
Michael Walleeff5a542020-05-22 14:07:36 +02001031 select GZIP_COMPRESSED
Masahiro Yamadae9d33e72017-02-05 10:42:56 +09001032 help
1033 Compress a memory region with zlib deflate method.
1034
Simon Glass72a8cf82016-01-17 20:53:51 -07001035endmenu
1036
1037menu "Device access commands"
1038
Abdellatif El Khlifif16a48f2023-08-04 14:33:43 +01001039config CMD_ARMFFA
1040 bool "Arm FF-A test command"
1041 depends on ARM_FFA_TRANSPORT
1042 help
1043 Provides a test command for the FF-A support
1044 supported options:
1045 - Listing the partition(s) info
1046 - Sending a data pattern to the specified partition
1047 - Displaying the arm_ffa device info
1048
Simon Glass0c19b4d2017-08-04 16:34:28 -06001049config CMD_ARMFLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001050 bool "armflash"
Tom Rini03de3052024-05-20 13:35:03 -06001051 depends on FLASH_CFI_DRIVER
Simon Glass0c19b4d2017-08-04 16:34:28 -06001052 help
1053 ARM Ltd reference designs flash partition access
1054
Neil Armstrong051ebe32018-04-27 15:17:57 +02001055config CMD_ADC
1056 bool "adc - Access Analog to Digital Converters info and data"
1057 select ADC
Michal Simek6e741cf2020-08-19 10:44:17 +02001058 depends on DM_REGULATOR
Neil Armstrong051ebe32018-04-27 15:17:57 +02001059 help
1060 Shows ADC device info and permit printing one-shot analog converted
1061 data from a named Analog to Digital Converter.
1062
Eugeniu Roscadb7b7a02019-05-23 17:32:22 +02001063config CMD_BCB
1064 bool "bcb"
Eugeniu Roscadb7b7a02019-05-23 17:32:22 +02001065 depends on PARTITIONS
1066 help
1067 Read/modify/write the fields of Bootloader Control Block, usually
1068 stored on the flash "misc" partition with its structure defined in:
1069 https://android.googlesource.com/platform/bootable/recovery/+/master/
1070 bootloader_message/include/bootloader_message/bootloader_message.h
1071
1072 Some real-life use-cases include (but are not limited to):
1073 - Determine the "boot reason" (and act accordingly):
1074 https://source.android.com/devices/bootloader/boot-reason
1075 - Get/pass a list of commands from/to recovery:
1076 https://android.googlesource.com/platform/bootable/recovery
1077 - Inspect/dump the contents of the BCB fields
1078
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +02001079config CMD_BIND
1080 bool "bind/unbind - Bind or unbind a device to/from a driver"
1081 depends on DM
Miquel Raynal249a75d2023-10-10 11:03:03 +02001082 imply CMD_DM
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +02001083 help
1084 Bind or unbind a device to/from a driver from the command line.
1085 This is useful in situations where a device may be handled by several
1086 drivers. For example, this can be used to bind a UDC to the usb ether
1087 gadget driver from the command line.
1088
Simon Glassd3156282017-04-26 22:28:02 -06001089config CMD_CLK
Heinrich Schuchardt56efea82024-09-10 01:45:28 +02001090 bool "clk - Show and set clock frequencies"
1091 depends on CLK
Simon Glassd3156282017-04-26 22:28:02 -06001092 help
Heinrich Schuchardt56efea82024-09-10 01:45:28 +02001093 Show and set clock frequencies managed by CLK uclass drivers.
Simon Glassd3156282017-04-26 22:28:02 -06001094
Simon Glass72a8cf82016-01-17 20:53:51 -07001095config CMD_DEMO
1096 bool "demo - Demonstration commands for driver model"
1097 depends on DM
1098 help
1099 Provides a 'demo' command which can be used to play around with
1100 driver model. To use this properly you will need to enable one or
1101 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
1102 Otherwise you will always get an empty list of devices. The demo
1103 devices are defined in the sandbox device tree, so the easiest
1104 option is to use sandbox and pass the -d point to sandbox's
1105 u-boot.dtb file.
1106
Simon Glass0c19b4d2017-08-04 16:34:28 -06001107config CMD_DFU
1108 bool "dfu"
Marek Vasut0f44d332018-02-16 16:41:17 +01001109 select DFU
Simon Glass0c19b4d2017-08-04 16:34:28 -06001110 help
1111 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass00fd59d2017-08-04 16:35:06 -06001112 class device via USB. This command requires that the "dfu_alt_info"
1113 environment variable be set and define the alt settings to expose to
1114 the host.
Simon Glass0c19b4d2017-08-04 16:34:28 -06001115
1116config CMD_DM
1117 bool "dm - Access to driver model information"
1118 depends on DM
Simon Glass0c19b4d2017-08-04 16:34:28 -06001119 help
1120 Provides access to driver model data structures and information,
1121 such as a list of devices, list of uclasses and the state of each
1122 device (e.g. activated). This is not required for operation, but
1123 can be useful to see the state of driver model for debugging or
1124 interest.
1125
Alex Kiernan312a10f2018-05-29 15:30:39 +00001126config CMD_FASTBOOT
1127 bool "fastboot - Android fastboot support"
1128 depends on FASTBOOT
1129 help
1130 This enables the command "fastboot" which enables the Android
1131 fastboot mode for the platform. Fastboot is a protocol for
1132 downloading images, flashing and device control used on
Alex Kiernanf73a7df2018-05-29 15:30:53 +00001133 Android devices. Fastboot requires either the network stack
1134 enabled or support for acting as a USB device.
Alex Kiernan312a10f2018-05-29 15:30:39 +00001135
Sam Protsenko586a1bf2020-01-24 17:53:44 +02001136 See doc/android/fastboot.rst for more information.
Alex Kiernan312a10f2018-05-29 15:30:39 +00001137
Simon Glass0c19b4d2017-08-04 16:34:28 -06001138config CMD_FLASH
1139 bool "flinfo, erase, protect"
1140 default y
Tom Rinicda3f812024-01-10 13:46:09 -05001141 depends on FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001142 help
1143 NOR flash support.
1144 flinfo - print FLASH memory information
1145 erase - FLASH memory
1146 protect - enable or disable FLASH write protection
1147
1148config CMD_FPGA
1149 bool "fpga"
Tuomas Tynkkynena4fa8112018-01-27 20:28:40 +02001150 depends on FPGA
Simon Glass0c19b4d2017-08-04 16:34:28 -06001151 default y
1152 help
1153 FPGA support.
1154
1155config CMD_FPGA_LOADBP
1156 bool "fpga loadbp - load partial bitstream (Xilinx only)"
1157 depends on CMD_FPGA
1158 help
1159 Supports loading an FPGA device from a bitstream buffer containing
1160 a partial bitstream.
1161
1162config CMD_FPGA_LOADFS
1163 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
1164 depends on CMD_FPGA
1165 help
1166 Supports loading an FPGA device from a FAT filesystem.
1167
1168config CMD_FPGA_LOADMK
1169 bool "fpga loadmk - load bitstream from image"
1170 depends on CMD_FPGA
1171 help
1172 Supports loading an FPGA device from a image generated by mkimage.
1173
1174config CMD_FPGA_LOADP
1175 bool "fpga loadp - load partial bitstream"
1176 depends on CMD_FPGA
1177 help
1178 Supports loading an FPGA device from a bitstream buffer containing
1179 a partial bitstream.
1180
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +05301181config CMD_FPGA_LOAD_SECURE
Oleksandr Suvorovfb2b8852022-07-22 17:16:02 +03001182 bool "fpga loads - loads secure bitstreams"
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +05301183 depends on CMD_FPGA
Oleksandr Suvorovfb2b8852022-07-22 17:16:02 +03001184 select FPGA_LOAD_SECURE
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +05301185 help
1186 Enables the fpga loads command which is used to load secure
1187 (authenticated or encrypted or both) bitstreams on to FPGA.
1188
Simon Glass0c19b4d2017-08-04 16:34:28 -06001189config CMD_FPGAD
1190 bool "fpgad - dump FPGA registers"
Tom Rini03de3052024-05-20 13:35:03 -06001191 depends on GDSYS_LEGACY_DRIVERS
Simon Glass0c19b4d2017-08-04 16:34:28 -06001192 help
1193 (legacy, needs conversion to driver model)
1194 Provides a way to dump FPGA registers by calling the board-specific
1195 fpga_get_reg() function. This functions similarly to the 'md'
1196 command.
1197
1198config CMD_FUSE
1199 bool "fuse - support for the fuse subssystem"
1200 help
1201 (deprecated - needs conversion to driver model)
1202 This allows reading, sensing, programming or overriding fuses
1203 which control the behaviour of the device. The command uses the
1204 fuse_...() API.
1205
1206config CMD_GPIO
1207 bool "gpio"
1208 help
1209 GPIO support.
1210
Diego Rondinidd2b8c12022-04-11 12:02:09 +02001211config CMD_GPIO_READ
1212 bool "gpio read - save GPIO value to variable"
1213 depends on CMD_GPIO
1214 help
1215 Enables the 'gpio read' command that saves the value
1216 of a GPIO pin to a variable.
1217
Pragnesh Patel9e9a5302020-12-22 11:30:05 +05301218config CMD_PWM
1219 bool "pwm"
1220 depends on DM_PWM
1221 help
1222 Control PWM channels, this allows invert/config/enable/disable PWM channels.
1223
Simon Glass0c19b4d2017-08-04 16:34:28 -06001224config CMD_GPT
1225 bool "GPT (GUID Partition Table) command"
Simon Glass0c19b4d2017-08-04 16:34:28 -06001226 select EFI_PARTITION
Michal Simek5ed063d2018-07-23 15:55:13 +02001227 select PARTITION_UUIDS
Maxime Ripard47738ac2017-08-24 11:52:32 +02001228 imply RANDOM_UUID
Simon Glass0c19b4d2017-08-04 16:34:28 -06001229 help
1230 Enable the 'gpt' command to ready and write GPT style partition
1231 tables.
1232
1233config CMD_GPT_RENAME
1234 bool "GPT partition renaming commands"
1235 depends on CMD_GPT
1236 help
1237 Enables the 'gpt' command to interchange names on two GPT
1238 partitions via the 'gpt swap' command or to rename single
1239 partitions via the 'rename' command.
1240
Simon Glass75eb9972017-05-17 03:25:29 -06001241config CMD_IDE
1242 bool "ide - Support for IDE drivers"
Simon Glassfc843a02017-05-17 03:25:30 -06001243 select IDE
Simon Glass75eb9972017-05-17 03:25:29 -06001244 help
1245 Provides an 'ide' command which allows accessing the IDE drive,
Vagrant Cascadian1107b062021-12-21 13:06:56 -08001246 resetting the IDE interface, printing the partition table and
Simon Glass75eb9972017-05-17 03:25:29 -06001247 geting device info. It also enables the 'diskboot' command which
1248 permits booting from an IDE drive.
1249
Simon Glass594e8d12017-05-17 03:25:34 -06001250config CMD_IO
1251 bool "io - Support for performing I/O accesses"
1252 help
1253 Provides an 'iod' command to display I/O space and an 'iow' command
1254 to write values to the I/O space. This can be useful for manually
1255 checking the state of devices during boot when debugging device
1256 drivers, etc.
1257
Simon Glass7d0f5c12017-05-17 03:25:36 -06001258config CMD_IOTRACE
1259 bool "iotrace - Support for tracing I/O activity"
1260 help
1261 Provides an 'iotrace' command which supports recording I/O reads and
1262 writes in a trace buffer in memory . It also maintains a checksum
1263 of the trace records (even if space is exhausted) so that the
1264 sequence of I/O accesses can be verified.
1265
1266 When debugging drivers it is useful to see what I/O accesses were
1267 done and in what order.
1268
1269 Even if the individual accesses are of little interest it can be
1270 useful to verify that the access pattern is consistent each time
1271 an operation is performed. In this case a checksum can be used to
1272 characterise the operation of a driver. The checksum can be compared
1273 across different runs of the operation to verify that the driver is
1274 working properly.
1275
1276 In particular, when performing major refactoring of the driver, where
1277 the access pattern should not change, the checksum provides assurance
1278 that the refactoring work has not broken the driver.
1279
1280 This works by sneaking into the io.h heder for an architecture and
1281 redirecting I/O accesses through iotrace's tracing mechanism.
1282
1283 For now no commands are provided to examine the trace buffer. The
1284 format is fairly simple, so 'md' is a reasonable substitute.
1285
1286 Note: The checksum feature is only useful for I/O regions where the
1287 contents do not change outside of software control. Where this is not
1288 suitable you can fall back to manually comparing the addresses. It
1289 might be useful to enhance tracing to only checksum the accesses and
1290 not the data read/written.
1291
Simon Glass0c19b4d2017-08-04 16:34:28 -06001292config CMD_I2C
1293 bool "i2c"
1294 help
1295 I2C support.
1296
Eugen Hristevd05266f2018-09-18 10:35:33 +03001297config CMD_W1
1298 depends on W1
1299 default y if W1
1300 bool "w1 - Support for Dallas 1-Wire protocol"
1301 help
1302 Dallas 1-wire protocol support
1303
Simon Glass72a8cf82016-01-17 20:53:51 -07001304config CMD_LOADB
1305 bool "loadb"
1306 default y
1307 help
1308 Load a binary file over serial line.
1309
Rui Miguel Silvabfef72e2022-05-11 10:55:40 +01001310config CMD_LOADM
1311 bool "loadm"
1312 help
1313 Load a binary over memory mapped.
1314
Simon Glass72a8cf82016-01-17 20:53:51 -07001315config CMD_LOADS
Tom Rini2c8d04d2022-10-28 20:27:02 -04001316 bool "loads - Load a file over serial in S-Record format"
Simon Glass72a8cf82016-01-17 20:53:51 -07001317 default y
1318 help
1319 Load an S-Record file over serial line
1320
Tom Rini2c8d04d2022-10-28 20:27:02 -04001321config LOADS_ECHO
1322 bool "Echo all characters received during a loads back to console"
1323 depends on CMD_LOADS
1324 help
1325 If enabled, all characters received during a serial download (using
1326 the "loads" command) are echoed back. This might be needed by some
1327 terminal emulations (like "cu"), but may as well just take time on
1328 others. This sets the initial value of the "loads_echo" environment
1329 variable to 1.
1330
1331config CMD_SAVES
1332 bool "saves - Save a file over serial in S-Record format"
Ying Sunaadc1a62023-06-25 16:24:47 +08001333 depends on CMD_LOADS
Tom Rini2c8d04d2022-10-28 20:27:02 -04001334 help
1335 Provides a way to save a binary file using the Motorola S-Record
1336 format over the serial line.
1337
1338config SYS_LOADS_BAUD_CHANGE
1339 bool "Enable a temporary baudrate change during loads/saves command"
1340 depends on CMD_LOADS || CMD_SAVES
1341
Pali Rohár1b3e6822022-08-27 16:37:55 +02001342config CMD_LOADXY_TIMEOUT
1343 int "loadxy_timeout"
1344 range 0 2000
1345 default 90
1346 help
1347 Initial timeout for loadx and loady commands. Zero means infinity.
1348
Niel Fouriee3697902020-03-30 17:22:58 +02001349config CMD_LSBLK
1350 depends on BLK
1351 bool "lsblk - list block drivers and devices"
1352 help
1353 Print list of available block device drivers, and for each, the list
1354 of known block devices.
1355
Marek Szyprowski750c5432020-12-23 13:55:15 +01001356config CMD_MBR
1357 bool "MBR (Master Boot Record) command"
1358 select DOS_PARTITION
Marek Szyprowski750c5432020-12-23 13:55:15 +01001359 help
1360 Enable the 'mbr' command to ready and write MBR (Master Boot Record)
1361 style partition tables.
1362
Bin Meng3bc0db12020-10-14 14:34:52 +08001363config CMD_MISC
1364 bool "misc"
1365 depends on MISC
1366 help
1367 Enable the command "misc" for accessing miscellaneous devices with
1368 a MISC uclass driver. The command provides listing all MISC devices
1369 as well as read and write functionalities via their drivers.
1370
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001371config CMD_MMC
1372 bool "mmc"
Heinrich Schuchardtec611872021-03-27 11:43:54 +01001373 depends on MMC
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001374 help
1375 MMC memory mapped support.
1376
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001377if CMD_MMC
1378
1379config CMD_BKOPS_ENABLE
1380 bool "mmc bkops enable"
1381 depends on CMD_MMC
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001382 help
1383 Enable command for setting manual background operations handshake
1384 on a eMMC device. The feature is optionally available on eMMC devices
1385 conforming to standard >= 4.41.
1386
Marek Vasutb5f40392023-10-31 13:20:17 +01001387config CMD_MMC_REG
1388 bool "Enable support for reading card registers in the mmc command"
1389 depends on CMD_MMC
1390 help
1391 Enable the commands for reading card registers. This is useful
1392 mostly for debugging or extracting details from the card.
1393
Alex Kiernan5a7b11e2018-05-08 04:43:31 +00001394config CMD_MMC_RPMB
1395 bool "Enable support for RPMB in the mmc command"
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001396 depends on SUPPORT_EMMC_RPMB
Alex Kiernan5a7b11e2018-05-08 04:43:31 +00001397 help
1398 Enable the commands for reading, writing and programming the
1399 key for the Replay Protection Memory Block partition in eMMC.
1400
Alex Kiernanc232d142018-05-29 15:30:52 +00001401config CMD_MMC_SWRITE
1402 bool "mmc swrite"
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001403 depends on MMC_WRITE
Alex Kiernanc232d142018-05-29 15:30:52 +00001404 select IMAGE_SPARSE
1405 help
1406 Enable support for the "mmc swrite" command to write Android sparse
1407 images to eMMC.
1408
Marek Vasut39aa94a2024-09-02 15:37:09 +02001409config MMC_SPEED_MODE_SET
1410 bool "set speed mode using mmc command"
1411 help
1412 Enable setting speed mode using mmc rescan and mmc dev commands.
1413 The speed mode is provided as the last argument in these commands
1414 and is indicated using the index from enum bus_mode in
1415 include/mmc.h. A speed mode can be set only if it has already
1416 been enabled in the device tree.
1417
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001418endif
1419
John Chau4a4830c2020-07-02 12:01:21 +08001420config CMD_CLONE
1421 bool "clone"
1422 depends on BLK
1423 help
1424 Enable storage cloning over block devices, useful for
1425 initial flashing by external block device without network
1426 or usb support.
1427
Ruchika Guptabcc6c572020-10-23 13:39:33 +05301428config CMD_OPTEE_RPMB
1429 bool "Enable read/write support on RPMB via OPTEE"
Igor Opaniukdfac18e2024-04-04 15:19:49 +02001430 depends on (SUPPORT_EMMC_RPMB && OPTEE) || SANDBOX_TEE
1431 default y if SANDBOX_TEE
1432 select OPTEE_TA_AVB if SANDBOX_TEE
Ruchika Guptabcc6c572020-10-23 13:39:33 +05301433 help
1434 Enable the commands for reading, writing persistent named values
1435 in the Replay Protection Memory Block partition in eMMC by
1436 using Persistent Objects in OPTEE
1437
Miquel Raynal5db66b32018-09-29 12:58:28 +02001438config CMD_MTD
1439 bool "mtd"
Miquel Raynalff102c52019-10-25 19:39:30 +02001440 depends on MTD
Miquel Raynal5db66b32018-09-29 12:58:28 +02001441 select MTD_PARTITIONS
1442 help
1443 MTD commands support.
1444
Arseniy Krasnov248fc162024-03-27 01:39:19 +03001445config CMD_MTD_OTP
1446 bool "mtd otp"
1447 depends on CMD_MTD
1448 select HEXDUMP
1449 help
1450 MTD commands for OTP access.
1451
Pratyush Yadav05115ab2020-10-16 16:16:35 +05301452config CMD_MUX
1453 bool "mux"
1454 depends on MULTIPLEXER
1455 help
1456 List, select, and deselect mux controllers on the fly.
1457
Simon Glass72a8cf82016-01-17 20:53:51 -07001458config CMD_NAND
1459 bool "nand"
Maxime Ripard522c2822017-03-03 15:13:30 +01001460 default y if NAND_SUNXI
Miquel Raynalff102c52019-10-25 19:39:30 +02001461 depends on MTD_RAW_NAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001462 help
1463 NAND support.
1464
Boris Brezillone915d202017-02-27 18:22:07 +01001465if CMD_NAND
1466config CMD_NAND_TRIMFFS
1467 bool "nand write.trimffs"
Hans de Goeded482a8d2017-02-27 18:22:10 +01001468 default y if ARCH_SUNXI
Boris Brezillone915d202017-02-27 18:22:07 +01001469 help
1470 Allows one to skip empty pages when flashing something on a NAND.
1471
1472config CMD_NAND_LOCK_UNLOCK
1473 bool "nand lock/unlock"
1474 help
1475 NAND locking support.
1476
1477config CMD_NAND_TORTURE
1478 bool "nand torture"
1479 help
1480 NAND torture support.
1481
1482endif # CMD_NAND
1483
Zhikang Zhang0adc38b2017-08-03 02:30:59 -07001484config CMD_NVME
1485 bool "nvme"
1486 depends on NVME
1487 default y if NVME
1488 help
1489 NVM Express device support
1490
Simon Glass978f0852017-08-04 16:34:31 -06001491config CMD_ONENAND
1492 bool "onenand - access to onenand device"
Miquel Raynalff102c52019-10-25 19:39:30 +02001493 depends on MTD
Simon Glass978f0852017-08-04 16:34:31 -06001494 help
1495 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1496 various useful features. This command allows reading, writing,
1497 and erasing blocks. It allso provides a way to show and change
1498 bad blocks, and test the device.
1499
Tom Rinidd4bf242022-06-15 12:03:51 -04001500config USE_ONENAND_BOARD_INIT
1501 bool "Call onenand_board_init() in the onenand command"
1502 depends on CMD_ONENAND
1503
Mario Six3bf65cb2018-09-27 09:19:34 +02001504config CMD_OSD
1505 bool "osd"
Marek Vasut650883a2024-09-06 19:12:23 +02001506 depends on OSD
Mario Six3bf65cb2018-09-27 09:19:34 +02001507 help
1508 Enable the 'osd' command which allows to query information from and
1509 write text data to a on-screen display (OSD) device; a virtual device
1510 associated with a display capable of displaying a text overlay on the
1511 display it's associated with..
1512
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001513config CMD_PART
1514 bool "part"
AKASHI Takahiro64efbd12022-04-22 10:44:30 +09001515 depends on PARTITIONS
Michal Simek5ed063d2018-07-23 15:55:13 +02001516 select PARTITION_UUIDS
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001517 help
1518 Read and display information about the partition table on
1519 various media.
1520
Simon Glass6500ec72017-08-04 16:34:34 -06001521config CMD_PCI
1522 bool "pci - Access PCI devices"
1523 help
1524 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1525 used on some devices to allow the CPU to communicate with its
1526 peripherals. Sub-commands allow bus enumeration, displaying and
1527 changing configuration space and a few other features.
1528
Stephen Carlson59b1c9b2023-03-10 11:07:13 -08001529config CMD_PCI_MPS
1530 bool "pci_mps - Configure PCI device MPS"
1531 depends on PCI
1532 help
1533 Enables PCI Express Maximum Packet Size (MPS) tuning. This
1534 command configures the PCI Express MPS of each endpoint to the
1535 largest value supported by all devices below the root complex.
1536 The Maximum Read Request Size will not be altered. This method is
1537 the same algorithm as used by Linux pci=pcie_bus_safe.
1538
Patrice Chotardd5a83132018-10-24 14:10:17 +02001539config CMD_PINMUX
1540 bool "pinmux - show pins muxing"
Marek Behúna70abcf2021-02-09 21:23:47 +01001541 depends on PINCTRL
Patrice Chotardd5a83132018-10-24 14:10:17 +02001542 default y if PINCTRL
1543 help
1544 Parse all available pin-controllers and show pins muxing. This
1545 is useful for debug purpoer to check the pin muxing and to know if
1546 a pin is configured as a GPIO or as an alternate function.
1547
Adam Ford577c40a2018-09-09 07:05:57 -05001548config CMD_POWEROFF
1549 bool "poweroff"
1550 help
1551 Poweroff/Shutdown the system
1552
Simon Glassb75dfd22017-08-04 16:34:39 -06001553config CMD_READ
1554 bool "read - Read binary data from a partition"
1555 help
1556 Provides low-level access to the data in a partition.
1557
Simon Glass72a8cf82016-01-17 20:53:51 -07001558config CMD_REMOTEPROC
1559 bool "remoteproc"
1560 depends on REMOTEPROC
1561 help
1562 Support for Remote Processor control
1563
Simon Glass3bf926c2017-06-14 21:28:24 -06001564config CMD_SATA
1565 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -06001566 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -06001567 help
1568 SATA (Serial Advanced Technology Attachment) is a serial bus
1569 standard for connecting to hard drives and other storage devices.
1570 This command provides information about attached devices and allows
1571 reading, writing and other operations.
1572
1573 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1574 Attachment, where AT refers to an IBM AT (Advanced Technology)
1575 computer released in 1984.
1576
Heinrich Schuchardt0c3fecd2018-02-14 08:05:44 +01001577config CMD_SCSI
1578 bool "scsi - Access to SCSI devices"
Heinrich Schuchardtfa3f0cb2023-03-26 19:10:38 +02001579 depends on SCSI
1580 default y
Heinrich Schuchardt0c3fecd2018-02-14 08:05:44 +01001581 help
1582 This provides a 'scsi' command which provides access to SCSI (Small
1583 Computer System Interface) devices. The command provides a way to
1584 scan the bus, reset the bus, read and write data and get information
1585 about devices.
1586
Simon Glassefce2442017-08-04 16:34:45 -06001587config CMD_SDRAM
1588 bool "sdram - Print SDRAM configuration information"
1589 help
1590 Provides information about attached SDRAM. This assumed that the
1591 SDRAM has an EEPROM with information that can be read using the
1592 I2C bus. This is only available on some boards.
1593
Simon Glass0c19b4d2017-08-04 16:34:28 -06001594config CMD_SF
1595 bool "sf"
Tom Rinia4298dd2019-05-29 17:01:28 -04001596 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Tekic2af7fb2019-10-16 17:59:42 +05301597 default y if DM_SPI_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001598 help
1599 SPI Flash support
1600
Simon Glass719d36e2017-08-04 16:34:46 -06001601config CMD_SF_TEST
1602 bool "sf test - Allow testing of SPI flash"
Tom Rinia4298dd2019-05-29 17:01:28 -04001603 depends on CMD_SF
Simon Glass719d36e2017-08-04 16:34:46 -06001604 help
1605 Provides a way to test that SPI flash is working correctly. The
1606 test is destructive, in that an area of SPI flash must be provided
1607 for the test to use. Performance information is also provided,
1608 measuring the performance of reading, writing and erasing in
1609 Mbps (Million Bits Per Second). This value should approximately
1610 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1611 everything is working properly.
1612
Simon Glass0c19b4d2017-08-04 16:34:28 -06001613config CMD_SPI
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001614 bool "sspi - Command to access spi device"
Tom Rinia4298dd2019-05-29 17:01:28 -04001615 depends on SPI
Simon Glass0c19b4d2017-08-04 16:34:28 -06001616 help
1617 SPI utility command.
1618
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001619config DEFAULT_SPI_BUS
1620 int "default spi bus used by sspi command"
1621 depends on CMD_SPI
1622 default 0
1623
1624config DEFAULT_SPI_MODE
1625 hex "default spi mode used by sspi command (see include/spi.h)"
1626 depends on CMD_SPI
Tom Rinia077ac12023-08-02 11:09:43 -04001627 default 0x0
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001628
Robert Marko7f673bb2022-09-06 13:30:33 +02001629config CMD_TEMPERATURE
1630 bool "temperature - display the temperature from thermal sensors"
1631 depends on DM_THERMAL
1632 help
1633 Provides a way to list thermal sensors and to get their readings.
1634
Simon Glass5605aa82017-08-04 16:35:00 -06001635config CMD_TSI148
1636 bool "tsi148 - Command to access tsi148 device"
Tom Rini03de3052024-05-20 13:35:03 -06001637 depends on DM_PCI_COMPAT
Simon Glass5605aa82017-08-04 16:35:00 -06001638 help
1639 This provides various sub-commands to initialise and configure the
1640 Turndra tsi148 device. See the command help for full details.
1641
Faiz Abbasa539c8b2019-10-15 18:24:40 +05301642config CMD_UFS
Bin Mengff039a82023-10-11 21:15:46 +08001643 bool "ufs - Universal Flash Storage commands"
Faiz Abbasa539c8b2019-10-15 18:24:40 +05301644 depends on UFS
1645 help
1646 "This provides commands to initialise and configure universal flash
1647 subsystem devices"
1648
Simon Glass2a242e32017-08-04 16:35:01 -06001649config CMD_UNIVERSE
1650 bool "universe - Command to set up the Turndra Universe controller"
Tom Rini03de3052024-05-20 13:35:03 -06001651 depends on DM_PCI_COMPAT
Simon Glass2a242e32017-08-04 16:35:01 -06001652 help
1653 This allows setting up the VMEbus provided by this controller.
1654 See the command help for full details.
1655
Simon Glass0c19b4d2017-08-04 16:34:28 -06001656config CMD_USB
1657 bool "usb"
Tom Rinie8d3eaa2021-07-09 10:11:55 -04001658 depends on USB_HOST
Simon Glass0c19b4d2017-08-04 16:34:28 -06001659 help
1660 USB support.
1661
Stefan Agner2f005692017-08-16 11:00:53 -07001662config CMD_USB_SDP
1663 bool "sdp"
Jerome Forissier8cb33032024-10-16 12:03:59 +02001664 depends on USB_GADGET_DOWNLOAD
Stefan Agner2f005692017-08-16 11:00:53 -07001665 select USB_FUNCTION_SDP
1666 help
1667 Enables the command "sdp" which is used to have U-Boot emulating the
1668 Serial Download Protocol (SDP) via USB.
Michal Simek6e7bdde2018-07-23 15:55:12 +02001669
Johan Jonkeraacf2142023-10-18 16:01:40 +02001670config CMD_RKMTD
1671 bool "rkmtd"
1672 select RKMTD
1673 help
1674 Enable the command "rkmtd" to create a virtual block device to transfer
1675 Rockchip boot block data to and from NAND with block orientated tools
1676 like "ums" and "rockusb".
1677
Eddie Cai453c95e2017-12-15 08:17:11 +08001678config CMD_ROCKUSB
1679 bool "rockusb"
1680 depends on USB_FUNCTION_ROCKUSB
1681 help
Michal Simek6e7bdde2018-07-23 15:55:12 +02001682 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai453c95e2017-12-15 08:17:11 +08001683 read/write info, image to/from devices. This enable rockusb command
1684 support to communication with rockusb device. for more detail about
1685 this command, please read doc/README.rockusb.
Stefan Agner2f005692017-08-16 11:00:53 -07001686
Simon Glass0c19b4d2017-08-04 16:34:28 -06001687config CMD_USB_MASS_STORAGE
1688 bool "UMS usb mass storage"
Heinrich Schuchardtc74758c2024-09-21 11:20:50 +02001689 depends on BLK && USB_GADGET_DOWNLOAD
Lukasz Majewskie4d46042018-01-29 19:28:02 +01001690 select USB_FUNCTION_MASS_STORAGE
Simon Glass0c19b4d2017-08-04 16:34:28 -06001691 help
Patrick Delaunay6b8d9c92021-06-04 18:51:46 +02001692 Enables the command "ums" and the USB mass storage support to the
1693 export a block device: U-Boot, the USB device, acts as a simple
1694 external hard drive plugged on the host USB port.
Simon Glass0c19b4d2017-08-04 16:34:28 -06001695
Svyatoslav Ryhela57adac2023-03-20 21:01:43 +02001696config CMD_UMS_ABORT_KEYED
1697 bool "UMS abort with any key"
1698 depends on CMD_USB_MASS_STORAGE
1699 help
1700 Allow interruption of usb mass storage run with any key pressed.
1701
Anastasiia Lukianenko722bc5b2020-08-06 12:42:55 +03001702config CMD_PVBLOCK
1703 bool "Xen para-virtualized block device"
1704 depends on XEN
1705 select PVBLOCK
1706 help
1707 Xen para-virtualized block device support
1708
Tuomas Tynkkynen78e12902018-10-15 02:21:12 -07001709config CMD_VIRTIO
1710 bool "virtio"
1711 depends on VIRTIO
1712 default y if VIRTIO
1713 help
1714 VirtIO block device support
1715
Michael Walle82a00be2019-04-06 02:24:02 +02001716config CMD_WDT
1717 bool "wdt"
1718 depends on WDT
1719 help
1720 This provides commands to control the watchdog timer devices.
1721
Rasmus Villemoes8311ac52023-03-02 09:12:22 +01001722config CMD_WRITE
1723 bool "write - Write binary data to a partition"
1724 help
1725 Provides low-level write access to a partition.
1726
Mario Six37c4a5f2018-08-09 14:51:21 +02001727config CMD_AXI
1728 bool "axi"
1729 depends on AXI
1730 help
1731 Enable the command "axi" for accessing AXI (Advanced eXtensible
1732 Interface) busses, a on-chip interconnect specification for managing
1733 functional blocks in SoC designs, which is also often used in designs
1734 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass72a8cf82016-01-17 20:53:51 -07001735endmenu
1736
1737
1738menu "Shell scripting commands"
1739
Roger Knecht690a1d62022-09-03 11:34:53 +00001740config CMD_CAT
1741 bool "cat"
1742 help
1743 Print file to standard output
1744
Simon Glass72a8cf82016-01-17 20:53:51 -07001745config CMD_ECHO
1746 bool "echo"
1747 default y
1748 help
1749 Echo args to console
1750
1751config CMD_ITEST
1752 bool "itest"
1753 default y
1754 help
1755 Return true/false on integer compare.
1756
1757config CMD_SOURCE
1758 bool "source"
1759 default y
1760 help
1761 Run script from memory
1762
1763config CMD_SETEXPR
1764 bool "setexpr"
1765 default y
1766 help
1767 Evaluate boolean and math expressions and store the result in an env
1768 variable.
1769 Also supports loading the value at a memory location into a variable.
1770 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1771
Roland Gaudigf4f8d8b2021-07-23 12:29:21 +00001772config CMD_SETEXPR_FMT
1773 bool "setexpr_fmt"
Roland Gaudigf4f8d8b2021-07-23 12:29:21 +00001774 depends on CMD_SETEXPR
1775 help
1776 Evaluate format string expression and store result in an environment
1777 variable.
1778
Roger Knechtc3b27a82023-09-07 14:51:43 +00001779config CMD_XXD
1780 bool "xxd"
1781 help
1782 Print file as hexdump to standard output
1783
Simon Glass72a8cf82016-01-17 20:53:51 -07001784endmenu
1785
Ruslan Trofymenko17030c72019-07-05 15:37:33 +03001786menu "Android support commands"
1787
1788config CMD_AB_SELECT
1789 bool "ab_select"
Ruslan Trofymenko17030c72019-07-05 15:37:33 +03001790 depends on ANDROID_AB
1791 help
1792 On Android devices with more than one boot slot (multiple copies of
1793 the kernel and system images) this provides a command to select which
1794 slot should be used to boot from and register the boot attempt. This
1795 is used by the new A/B update model where one slot is updated in the
1796 background while running from the other slot.
1797
1798endmenu
1799
Jerome Forissier98ad1452024-10-16 12:04:03 +02001800if NET || NET_LWIP
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001801
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001802menuconfig CMD_NET
1803 bool "Network commands"
1804 default y
1805
Jerome Forissier98ad1452024-10-16 12:04:03 +02001806endif
1807
1808if NET
1809
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001810if CMD_NET
1811
1812config CMD_BOOTP
1813 bool "bootp"
Simon Glass72a8cf82016-01-17 20:53:51 -07001814 default y
1815 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001816 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001817
Sean Edmond7d018892023-04-11 10:48:47 -07001818config CMD_DHCP6
1819 bool "dhcp6"
1820 depends on IPV6
1821 help
1822 Boot image via network using DHCPv6/TFTP protocol using IPv6.
1823
1824 Will perform 4-message exchange with DHCPv6 server, requesting
1825 the minimum required options to TFTP boot. Complies with RFC 8415.
1826
Heinrich Schuchardt84e000c2024-07-17 16:54:46 +02001827if CMD_DHCP6
1828
1829config DHCP6_PXE_CLIENTARCH
1830 hex
1831 default 0x16 if ARM64
1832 default 0x15 if ARM
1833 default 0xFF
1834
1835config DHCP6_PXE_DHCP_OPTION
1836 bool "Request & store 'pxe_configfile' from DHCP6 server"
1837
1838config DHCP6_ENTERPRISE_ID
1839 int "Enterprise ID to send in DHCPv6 Vendor Class Option"
1840 default 0
1841
1842endif
1843
Tom Rinia542e432022-02-25 11:19:50 -05001844config BOOTP_MAY_FAIL
1845 bool "Allow for the BOOTP/DHCP server to not be found"
1846 depends on CMD_BOOTP
1847 help
1848 If the DHCP server is not found after the configured retry count, the
1849 call will fail instead of starting over. This can be used to fail
1850 over to Link-local IP address configuration if the DHCP server is not
1851 available.
1852
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001853config BOOTP_BOOTPATH
Joe Hershberger8df69d92018-04-13 15:26:34 -05001854 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001855 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001856 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001857 help
1858 Even though the config is called BOOTP_BOOTPATH, it stores the
1859 path in the variable 'rootpath'.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001860
Tom Rinia542e432022-02-25 11:19:50 -05001861config BOOTP_VENDOREX
1862 bool "Support vendor extensions from BOOTP/DHCP server"
1863 depends on CMD_BOOTP
1864
1865config BOOTP_BOOTFILESIZE
1866 bool "Request & store 'bootfilesize' from BOOTP/DHCP server"
1867 depends on CMD_BOOTP
1868
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001869config BOOTP_DNS
Joe Hershberger8df69d92018-04-13 15:26:34 -05001870 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001871 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001872 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001873 help
1874 The primary DNS server is stored as 'dnsip'. If two servers are
1875 returned, you must set BOOTP_DNS2 to store that second server IP
1876 also.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001877
Joe Hershberger80449c02018-04-13 15:26:35 -05001878config BOOTP_DNS2
1879 bool "Store 'dnsip2' from BOOTP/DHCP server"
1880 depends on BOOTP_DNS
1881 help
1882 If a DHCP client requests the DNS server IP from a DHCP server,
1883 it is possible that more than one DNS serverip is offered to the
1884 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1885 server IP will be stored in the additional environment
1886 variable "dnsip2". The first DNS serverip is always
1887 stored in the variable "dnsip", when BOOTP_DNS is defined.
1888
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001889config BOOTP_GATEWAY
Joe Hershberger8df69d92018-04-13 15:26:34 -05001890 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001891 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001892 depends on CMD_BOOTP
1893
1894config BOOTP_HOSTNAME
Joe Hershberger8df69d92018-04-13 15:26:34 -05001895 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001896 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001897 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001898 help
1899 The name may or may not be qualified with the local domain name.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001900
Alexander Grafbdce3402018-06-15 10:29:28 +02001901config BOOTP_PREFER_SERVERIP
1902 bool "serverip variable takes precedent over DHCP server IP."
1903 depends on CMD_BOOTP
1904 help
1905 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1906
1907 With this option enabled, the 'serverip' variable in the environment
1908 takes precedence over DHCP server IP and will only be set by the DHCP
1909 server if not already set in the environment.
1910
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001911config BOOTP_SUBNETMASK
Joe Hershberger8df69d92018-04-13 15:26:34 -05001912 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001913 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001914 depends on CMD_BOOTP
1915
Tom Rinia542e432022-02-25 11:19:50 -05001916config BOOTP_NISDOMAIN
1917 bool "Request & store 'nisdomain' from BOOTP/DHCP server"
1918 depends on CMD_BOOTP
1919
Chris Packham9b23c732018-05-03 20:19:02 +12001920config BOOTP_NTPSERVER
1921 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1922 depends on CMD_BOOTP
1923
Tom Rinia542e432022-02-25 11:19:50 -05001924config BOOTP_TIMEOFFSET
1925 bool "Request & store 'timeoffset' from BOOTP/DHCP server"
1926 depends on CMD_BOOTP && CMD_SNTP
1927
Ramon Fried3eaac632019-07-18 21:43:30 +03001928config CMD_PCAP
1929 bool "pcap capture"
1930 help
1931 Selecting this will allow capturing all Ethernet packets and store
1932 them in physical memory in a PCAP formated file,
1933 later to be analyzed by PCAP reader application (IE. WireShark).
1934
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001935config BOOTP_PXE
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001936 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001937 default y
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001938 depends on CMD_BOOTP && CMD_PXE
1939 help
1940 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001941
1942config BOOTP_PXE_CLIENTARCH
1943 hex
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001944 depends on BOOTP_PXE
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001945 default 0x16 if ARM64
1946 default 0x15 if ARM
Tom Rinia077ac12023-08-02 11:09:43 -04001947 default 0x0 if X86
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001948
Sean Edmond91953952023-07-25 16:20:30 -07001949config BOOTP_PXE_DHCP_OPTION
1950 bool "Request & store 'pxe_configfile' from BOOTP/DHCP server"
1951 depends on BOOTP_PXE
1952
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001953config BOOTP_VCI_STRING
1954 string
1955 depends on CMD_BOOTP
Michal Simek4bbd6b12018-04-26 18:21:29 +05301956 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001957 default "U-Boot.armv8" if ARM64
1958 default "U-Boot.arm" if ARM
1959 default "U-Boot"
1960
Simon Glass72a8cf82016-01-17 20:53:51 -07001961config CMD_TFTPPUT
1962 bool "tftp put"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001963 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001964 help
1965 TFTP put command, for uploading files to a server
1966
1967config CMD_TFTPSRV
1968 bool "tftpsrv"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001969 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001970 help
1971 Act as a TFTP server and boot the first received file
1972
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001973config NET_TFTP_VARS
1974 bool "Control TFTP timeout and count through environment"
1975 depends on CMD_TFTPBOOT
1976 default y
1977 help
1978 If set, allows controlling the TFTP timeout through the
1979 environment variable tftptimeout, and the TFTP maximum
1980 timeout count through the variable tftptimeoutcountmax.
1981 If unset, timeout and maximum are hard-defined as 1 second
1982 and 10 timouts per TFTP transfer.
1983
Simon Glass72a8cf82016-01-17 20:53:51 -07001984config CMD_RARP
1985 bool "rarpboot"
1986 help
1987 Boot image via network using RARP/TFTP protocol
1988
Simon Glass72a8cf82016-01-17 20:53:51 -07001989config CMD_NFS
1990 bool "nfs"
Simon Glass72a8cf82016-01-17 20:53:51 -07001991 help
1992 Boot image via network using NFS protocol.
1993
Tom Rinieeda7622022-03-11 09:12:05 -05001994config NFS_TIMEOUT
1995 int "Timeout in milliseconds for NFS mounts"
1996 depends on CMD_NFS
1997 default 2000
1998 help
1999 Timeout in milliseconds used in NFS protocol. If you encounter
2000 "ERROR: Cannot umount" in nfs command, try longer timeout such as
2001 10000.
2002
Tom Rinibf904ea2022-06-13 22:57:35 -04002003config SYS_DISABLE_AUTOLOAD
2004 bool "Disable automatically loading files over the network"
2005 depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP
2006 help
2007 Typically, commands such as "dhcp" will attempt to automatically
2008 load a file from the network, once the initial network configuration
2009 is complete. Enable this option to disable this behavior and instead
2010 require files to be loaded over the network by subsequent commands.
2011
Viacheslav Mitrofanoveeb0a2c2022-12-02 12:18:08 +03002012config CMD_PING6
2013 bool "ping6"
2014 depends on IPV6
2015 default y if (CMD_PING && IPV6)
2016 help
2017 Send ICMPv6 ECHO_REQUEST to network host
2018
Simon Glass72a8cf82016-01-17 20:53:51 -07002019config CMD_CDP
2020 bool "cdp"
2021 help
2022 Perform CDP network configuration
2023
2024config CMD_SNTP
2025 bool "sntp"
Philippe Reynes912ece42020-09-18 14:13:02 +02002026 select PROT_UDP
Simon Glass72a8cf82016-01-17 20:53:51 -07002027 help
2028 Synchronize RTC via network
2029
Simon Glass72a8cf82016-01-17 20:53:51 -07002030config CMD_LINK_LOCAL
2031 bool "linklocal"
Joe Hershberger6f0dc0c2018-04-30 12:45:22 -05002032 select LIB_RAND
Simon Glass72a8cf82016-01-17 20:53:51 -07002033 help
2034 Acquire a network IP address using the link-local protocol
2035
Samuel Mendoza-Jonas4b290d42022-08-08 21:46:04 +09302036config CMD_NCSI
2037 bool "ncsi"
2038 depends on PHY_NCSI
2039 help
2040 Manually configure the attached NIC via NC-SI.
2041 Normally this happens automatically before other network
2042 operations.
2043
Ehsan Mohandesi6de98b62023-04-21 17:08:21 -07002044config IPV6_ROUTER_DISCOVERY
2045 bool "Do IPv6 router discovery"
2046 depends on IPV6
2047 help
2048 Will automatically perform router solicitation on first IPv6
2049 network operation
Jerome Forissier98ad1452024-10-16 12:04:03 +02002050endif # if CMD_NET
Joe Hershberger92fa44d2018-04-13 15:26:32 -05002051
Simon Glassef072202017-05-17 03:25:17 -06002052config CMD_ETHSW
2053 bool "ethsw"
2054 help
2055 Allow control of L2 Ethernet switch commands. These are supported
2056 by the vsc9953 Ethernet driver at present. Sub-commands allow
2057 operations such as enabling / disabling a port and
2058 viewing/maintaining the filtering database (FDB)
2059
Jerome Forissier98ad1452024-10-16 12:04:03 +02002060config CMD_WOL
2061 bool "wol"
2062 help
2063 Wait for wake-on-lan Magic Packet
2064
2065endif # if NET
2066
2067if NET || NET_LWIP
2068
2069if CMD_NET
2070
2071config CMD_DHCP
2072 bool "dhcp"
2073 select PROT_DHCP_LWIP if NET_LWIP
2074 help
2075 Boot image via network using DHCP/TFTP protocol
2076
Jerome Forissieraedcfec2024-10-16 12:04:07 +02002077config CMD_DNS
2078 bool "dns"
2079 select PROT_DNS_LWIP if NET_LWIP
2080 help
2081 Lookup the IP of a hostname
2082
Jerome Forissier98ad1452024-10-16 12:04:03 +02002083config CMD_MII
2084 bool "mii"
2085 imply CMD_MDIO
2086 help
2087 If set, allows 802.3(clause 22) MII Management functions interface access
2088 The management interface specified in Clause 22 provides
2089 a simple, two signal, serial interface to connect a
2090 Station Management entity and a managed PHY for providing access
2091 to management parameters and services.
2092 The interface is referred to as the MII management interface.
2093
2094config MII_INIT
2095 bool "Call mii_init() in the mii command"
2096 depends on CMD_MII && (MPC8XX_FEC || FSLDMAFE || MCFFEC)
2097
2098config CMD_MDIO
2099 bool "mdio"
2100 depends on PHYLIB
2101 help
2102 If set, allows Enable 802.3(clause 45) MDIO interface registers access
2103 The MDIO interface is orthogonal to the MII interface and extends
2104 it by adding access to more registers through indirect addressing.
2105
Jerome Forissier7a5e00d2024-10-16 12:04:06 +02002106config CMD_PING
2107 bool "ping"
2108 select PROT_RAW_LWIP if NET_LWIP
2109 help
2110 Send ICMP ECHO_REQUEST to network host
2111
Jerome Forissier98ad1452024-10-16 12:04:03 +02002112config CMD_TFTPBOOT
2113 bool "tftp"
2114 select PROT_UDP_LWIP if NET_LWIP
Jerome Forissier4d4d7832024-10-16 12:04:05 +02002115 default y
Jerome Forissier98ad1452024-10-16 12:04:03 +02002116 help
2117 tftpboot - load file via network using TFTP protocol
Jerome Forissier98ad1452024-10-16 12:04:03 +02002118
Jerome Forissier3c656c92024-10-16 12:04:09 +02002119config CMD_WGET
2120 bool "wget"
Heinrich Schuchardt82c98b92024-10-16 11:50:39 +02002121 depends on CMD_NET
Jerome Forissier3c656c92024-10-16 12:04:09 +02002122 default y if SANDBOX
2123 select PROT_TCP if NET
2124 select PROT_TCP_LWIP if NET_LWIP
2125 select PROT_DNS_LWIP if NET_LWIP
2126 help
2127 wget is a simple command to download kernel, or other files,
2128 from a http server over TCP.
2129
Jerome Forissier98ad1452024-10-16 12:04:03 +02002130endif # if CMD_NET
2131
Joe Hershberger92fa44d2018-04-13 15:26:32 -05002132config CMD_PXE
2133 bool "pxe"
John Keepingbe43a352022-07-28 11:19:15 +01002134 select PXE_UTILS
Jerome Forissier1582e432024-09-11 11:58:28 +02002135 imply CMD_TFTPBOOT
Joe Hershberger92fa44d2018-04-13 15:26:32 -05002136 help
2137 Boot image via network using PXE protocol
Michal Simek3b3ea2c2018-02-26 16:01:02 +01002138
Jerome Forissier98ad1452024-10-16 12:04:03 +02002139endif # if NET || NET_LWIP
Simon Glass72a8cf82016-01-17 20:53:51 -07002140
2141menu "Misc commands"
2142
Simon Glassa554ee72023-02-07 14:33:53 -07002143config CMD_2048
2144 bool "Play 2048"
2145 help
2146 This is a simple sliding block puzzle game designed by Italian web
2147 developer Gabriele Cirulli. The game's objective is to slide numbered
2148 tiles on a grid to combine them to create a tile with the number
2149 2048.
2150
2151 This needs ANSI support on your terminal to work. It is not fully
2152 functional on a video device.
2153
Simon Glass0f710252017-04-26 22:27:55 -06002154config CMD_BMP
2155 bool "Enable 'bmp' command"
Simon Glassb86986c2022-10-18 07:46:31 -06002156 depends on VIDEO
Samuel Dionne-Riel373991d62023-07-18 14:27:36 +05302157 select BMP
Simon Glass0f710252017-04-26 22:27:55 -06002158 help
Andrius Štikonas60a9aeb2019-09-23 22:43:41 +01002159 This provides a way to obtain information about a BMP-format image
Simon Glass0f710252017-04-26 22:27:55 -06002160 and to display it. BMP (which presumably stands for BitMaP) is a
2161 file format defined by Microsoft which supports images of various
2162 depths, formats and compression methods. Headers on the file
2163 determine the formats used. This command can be used by first loading
2164 the image into RAM, then using this command to look at it or display
2165 it.
2166
Alex Kiernanb11ed7d2018-05-12 05:49:47 +00002167config CMD_BOOTCOUNT
2168 bool "bootcount"
2169 depends on BOOTCOUNT_LIMIT
2170 help
2171 Enable the bootcount command, which allows interrogation and
2172 reset of the bootcounter.
2173
Simon Glass4893e342017-04-26 22:27:56 -06002174config CMD_BSP
2175 bool "Enable board-specific commands"
2176 help
2177 (deprecated: instead, please define a Kconfig option for each command)
2178
2179 Some boards have board-specific commands which are only enabled
2180 during developemnt and need to be turned off for production. This
2181 option provides a way to control this. The commands that are enabled
2182 vary depending on the board.
2183
Eric Nelsone40cf342016-03-28 10:05:44 -07002184config CMD_BLOCK_CACHE
2185 bool "blkcache - control and stats for block cache"
2186 depends on BLOCK_CACHE
2187 default y if BLOCK_CACHE
2188 help
2189 Enable the blkcache command, which can be used to control the
2190 operation of the cache functions.
2191 This is most useful when fine-tuning the operation of the cache
2192 during development, but also allows the cache to be disabled when
2193 it might hurt performance (e.g. when using the ums command).
2194
Tobias Waldekranzbb56da12023-02-16 16:33:52 +01002195config CMD_BLKMAP
2196 bool "blkmap - Composable virtual block devices"
2197 depends on BLKMAP
2198 default y if BLKMAP
2199 help
2200 Create virtual block devices that are backed by various sources,
2201 e.g. RAM, or parts of an existing block device. Though much more
2202 rudimentary, it borrows a lot of ideas from Linux's device mapper
2203 subsystem.
2204
2205 Example use-cases:
2206 - Treat a region of RAM as a block device, i.e. a RAM disk. This let's
Anand Moon608a88c2024-06-23 23:10:21 +05302207 you extract files from filesystem images stored in RAM (perhaps as a
2208 result of a TFTP transfer).
Tobias Waldekranzbb56da12023-02-16 16:33:52 +01002209 - Create a virtual partition on an existing device. This let's you
Anand Moon608a88c2024-06-23 23:10:21 +05302210 access filesystems that aren't stored at an exact partition
2211 boundary. A common example is a filesystem image embedded in an FIT
2212 image.
Tobias Waldekranzbb56da12023-02-16 16:33:52 +01002213
Philippe Reynes325141a2020-07-24 18:19:47 +02002214config CMD_BUTTON
2215 bool "button"
2216 depends on BUTTON
2217 default y if BUTTON
2218 help
2219 Enable the 'button' command which allows to get the status of
2220 buttons supported by the board. The buttonss can be listed with
2221 'button list' and state can be known with 'button <label>'.
2222 Any button drivers can be controlled with this command, e.g.
2223 button_gpio.
2224
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002225config CMD_CACHE
2226 bool "icache or dcache"
2227 help
2228 Enable the "icache" and "dcache" commands
2229
Heinrich Schuchardt29cfc092018-09-07 19:43:11 +02002230config CMD_CONITRACE
2231 bool "conitrace - trace console input codes"
2232 help
2233 Enable the 'conitrace' command which displays the codes received
2234 from the console input as hexadecimal numbers.
2235
Anatolij Gustschin4e92e602018-12-01 10:47:20 +01002236config CMD_CLS
2237 bool "Enable clear screen command 'cls'"
John Keeping2fdc4c02022-11-23 17:16:14 +00002238 default y if LCD || VIDEO
Anatolij Gustschin4e92e602018-12-01 10:47:20 +01002239 help
2240 Enable the 'cls' command which clears the screen contents
2241 on video frame buffer.
2242
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09002243config CMD_EFIDEBUG
2244 bool "efidebug - display/configure UEFI environment"
2245 depends on EFI_LOADER
Heinrich Schuchardt64b5ba42019-05-11 09:53:33 +02002246 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09002247 help
2248 Enable the 'efidebug' command which provides a subset of UEFI
2249 shell utility with simplified functionality. It will be useful
2250 particularly for managing boot parameters as well as examining
2251 various EFI status for debugging.
2252
Masahisa Kojima87d79142022-09-12 17:33:50 +09002253config CMD_EFICONFIG
2254 bool "eficonfig - provide menu-driven uefi variables maintenance interface"
Heinrich Schuchardt8925f0e2023-02-08 09:57:00 +01002255 default y if !HAS_BOARD_SIZE_LIMIT
AKASHI Takahiro279b03d2024-01-17 13:39:42 +09002256 depends on EFI_BOOTMGR
Heinrich Schuchardt75d494d2023-02-08 13:56:33 +01002257 select MENU
Masahisa Kojima87d79142022-09-12 17:33:50 +09002258 help
2259 Enable the 'eficonfig' command which provides the menu-driven UEFI
2260 variable maintenance interface.
2261
Heinrich Schuchardtdab87882018-12-26 17:20:35 +01002262config CMD_EXCEPTION
2263 bool "exception - raise exception"
Heinrich Schuchardt3a5ec032020-11-12 00:29:57 +01002264 depends on ARM || RISCV || SANDBOX || X86
Heinrich Schuchardtdab87882018-12-26 17:20:35 +01002265 help
2266 Enable the 'exception' command which allows to raise an exception.
2267
Simon Glassffe20522017-04-10 11:34:59 -06002268config CMD_LED
2269 bool "led"
Jan Kiszka2ab6e742019-01-03 09:08:42 +01002270 depends on LED
Simon Glassffe20522017-04-10 11:34:59 -06002271 default y if LED
2272 help
2273 Enable the 'led' command which allows for control of LEDs supported
2274 by the board. The LEDs can be listed with 'led list' and controlled
2275 with led on/off/togle/blink. Any LED drivers can be controlled with
2276 this command, e.g. led_gpio.
2277
Simon Glasse158c942023-02-01 13:19:24 -07002278config CMD_INI
2279 bool "ini"
2280 help
2281 Enable the 'ini' command which allows a .ini file to be parsed and
2282 placed into environment variables. Please check the source code for
2283 this as there is no documentation.
2284
Chris Packhamc9032ce2017-04-29 15:20:28 +12002285config CMD_DATE
2286 bool "date"
2287 default y if DM_RTC
AKASHI Takahiro05429b62019-11-13 09:44:49 +09002288 select LIB_DATE
Chris Packhamc9032ce2017-04-29 15:20:28 +12002289 help
2290 Enable the 'date' command for getting/setting the time/date in RTC
2291 devices.
2292
Rasmus Villemoes803a8592020-07-06 22:01:15 +02002293config CMD_RTC
2294 bool "rtc"
2295 depends on DM_RTC
Simon Glassabb77802024-10-14 16:32:12 -06002296 default y if X86
Rasmus Villemoes803a8592020-07-06 22:01:15 +02002297 help
2298 Enable the 'rtc' command for low-level access to RTC devices.
2299
Simon Glass72a8cf82016-01-17 20:53:51 -07002300config CMD_TIME
2301 bool "time"
2302 help
2303 Run commands and summarize execution time.
2304
Simon Glassd91a9d72017-05-17 03:25:23 -06002305config CMD_GETTIME
2306 bool "gettime - read elapsed time"
2307 help
2308 Enable the 'gettime' command which reads the elapsed time since
2309 U-Boot started running. This shows the time in seconds and
2310 milliseconds. See also the 'bootstage' command which provides more
2311 flexibility for boot timing.
2312
Samuel Dionne-Rieldc0d17c2022-08-18 15:44:04 -04002313config CMD_PAUSE
2314 bool "pause command"
2315 help
2316 Delay execution waiting for any user input.
2317 Useful to allow the user to read a failure log.
2318
Heinrich Schuchardt4f24ac02019-12-24 22:17:37 +01002319config CMD_RNG
2320 bool "rng command"
2321 depends on DM_RNG
Sughosh Ganude706192022-07-22 21:32:09 +05302322 default y if SANDBOX
Heinrich Schuchardt4f24ac02019-12-24 22:17:37 +01002323 select HEXDUMP
2324 help
2325 Print bytes from the hardware random number generator.
2326
Chris Morganfe3dde32021-08-25 11:22:57 -05002327config CMD_KASLRSEED
2328 bool "kaslrseed"
2329 depends on DM_RNG
2330 help
2331 Set the kaslr-seed in the chosen node with entropy provided by a
2332 hardware random number generator.
2333
Bin Meng16060852020-10-13 18:45:05 +08002334config CMD_SLEEP
Simon Glass72a8cf82016-01-17 20:53:51 -07002335 bool "sleep"
2336 default y
2337 help
2338 Delay execution for some time
2339
Ashok Reddy Soma480245c2022-01-17 10:16:50 +01002340config CMD_MP
2341 bool "support for multiprocessor commands"
2342 depends on MP
2343 default y
Siva Durga Prasad Paladugu0fd2290c2018-06-19 12:24:23 +02002344 help
Ashok Reddy Soma480245c2022-01-17 10:16:50 +01002345 This enables commands to bringup different processors
2346 in multiprocessor cases.
Siva Durga Prasad Paladugu0fd2290c2018-06-19 12:24:23 +02002347
Simon Glass72a8cf82016-01-17 20:53:51 -07002348config CMD_TIMER
2349 bool "timer"
2350 help
2351 Access the system timer.
2352
Simon Glass72a8cf82016-01-17 20:53:51 -07002353config CMD_SOUND
2354 bool "sound"
2355 depends on SOUND
2356 help
2357 This provides basic access to the U-Boot's sound support. The main
2358 feature is to play a beep.
2359
2360 sound init - set up sound system
2361 sound play - play a sound
2362
Patrice Chotard993c9122019-11-25 09:07:38 +01002363config CMD_SYSBOOT
2364 bool "sysboot"
John Keepingbe43a352022-07-28 11:19:15 +01002365 select PXE_UTILS
Patrice Chotard993c9122019-11-25 09:07:38 +01002366 help
2367 Boot image via local extlinux.conf file
2368
Miao Yan18686592016-05-22 19:37:17 -07002369config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04002370 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -07002371 select QFW
Tom Rinibfaa0482023-10-26 14:31:14 -04002372 default y if TARGET_QEMU_ARM_32BIT || TARGET_QEMU_ARM_64BIT || \
2373 TARGET_QEMU_X86 || TARGET_QEMU_X86_64
Tom Rinidd6f3ab2016-05-06 10:40:22 -04002374 help
2375 This provides access to the QEMU firmware interface. The main
2376 feature is to allow easy loading of files passed to qemu-system
2377 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02002378
Frédéric Danis9744d1a2020-03-20 10:59:22 +01002379config CMD_PSTORE
2380 bool "pstore"
2381 help
2382 This provides access to Linux PStore with Rammoops backend. The main
2383 feature is to allow to display or save PStore records.
2384
2385 See doc/pstore.rst for more information.
2386
2387if CMD_PSTORE
2388
2389config CMD_PSTORE_MEM_ADDR
2390 hex "Memory Address"
2391 depends on CMD_PSTORE
2392 help
2393 Base addr used for PStore ramoops memory, should be identical to
2394 ramoops.mem_address parameter used by kernel
2395
2396config CMD_PSTORE_MEM_SIZE
2397 hex "Memory size"
2398 depends on CMD_PSTORE
2399 default "0x10000"
2400 help
2401 Size of PStore ramoops memory, should be identical to ramoops.mem_size
2402 parameter used by kernel, a power of 2 and larger than the sum of the
2403 record sizes
2404
2405config CMD_PSTORE_RECORD_SIZE
2406 hex "Dump record size"
2407 depends on CMD_PSTORE
2408 default "0x1000"
2409 help
2410 Size of each dump done on oops/panic, should be identical to
2411 ramoops.record_size parameter used by kernel and a power of 2
2412 Must be non-zero
2413
2414config CMD_PSTORE_CONSOLE_SIZE
2415 hex "Kernel console log size"
2416 depends on CMD_PSTORE
2417 default "0x1000"
2418 help
2419 Size of kernel console log, should be identical to
2420 ramoops.console_size parameter used by kernel and a power of 2
2421 Must be non-zero
2422
2423config CMD_PSTORE_FTRACE_SIZE
2424 hex "FTrace log size"
2425 depends on CMD_PSTORE
2426 default "0x1000"
2427 help
2428 Size of ftrace log, should be identical to ramoops.ftrace_size
2429 parameter used by kernel and a power of 2
2430
2431config CMD_PSTORE_PMSG_SIZE
2432 hex "User space message log size"
2433 depends on CMD_PSTORE
2434 default "0x1000"
2435 help
2436 Size of user space message log, should be identical to
2437 ramoops.pmsg_size parameter used by kernel and a power of 2
2438
2439config CMD_PSTORE_ECC_SIZE
2440 int "ECC size"
2441 depends on CMD_PSTORE
2442 default "0"
2443 help
2444 if non-zero, the option enables ECC support and specifies ECC buffer
2445 size in bytes (1 is a special value, means 16 bytes ECC), should be
2446 identical to ramoops.ramoops_ecc parameter used by kernel
2447
2448endif
2449
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02002450source "cmd/mvebu/Kconfig"
2451
Simon Glass3cef3b32017-08-04 16:34:55 -06002452config CMD_TERMINAL
2453 bool "terminal - provides a way to attach a serial terminal"
2454 help
2455 Provides a 'cu'-like serial terminal command. This can be used to
2456 access other serial ports from the system console. The terminal
2457 is very simple with no special processing of characters. As with
2458 cu, you can press ~. (tilde followed by period) to exit.
2459
Simon Glass1aa4e8d2017-08-04 16:35:02 -06002460config CMD_UUID
2461 bool "uuid, guid - generation of unique IDs"
Adam Forda451bc22018-02-06 12:14:28 -06002462 select LIB_UUID
Simon Glass1aa4e8d2017-08-04 16:35:02 -06002463 help
2464 This enables two commands:
2465
2466 uuid - generate random Universally Unique Identifier
2467 guid - generate Globally Unique Identifier based on random UUID
2468
2469 The two commands are very similar except for the endianness of the
2470 output.
2471
Simon Glassf029f902022-10-06 08:36:06 -06002472config CMD_VIDCONSOLE
2473 bool "lcdputs and setcurs"
Simon Glassb86986c2022-10-18 07:46:31 -06002474 depends on VIDEO
Simon Glassf029f902022-10-06 08:36:06 -06002475 default y
2476 help
2477 Enabling this will provide 'setcurs' and 'lcdputs' commands which
2478 support cursor positioning and drawing strings on the video
2479 console (framebuffer).
2480
2481 The name 'lcdputs' is a bit of a misnomer, but so named because the
2482 video device is often an LCD.
2483
Dzmitry Sankouskie7ee1fd2023-03-07 13:21:16 +03002484config CMD_SELECT_FONT
2485 bool "select font size"
2486 depends on VIDEO
Simon Glassd83f4e62023-10-26 14:31:18 -04002487 default y if CONSOLE_TRUETYPE
Dzmitry Sankouskie7ee1fd2023-03-07 13:21:16 +03002488 help
2489 Enabling this will provide 'font' command.
2490 Allows font selection at runtime.
2491
Simon Glass72a8cf82016-01-17 20:53:51 -07002492endmenu
2493
Lokesh Vutla5cd96612017-12-29 11:47:49 +05302494source "cmd/ti/Kconfig"
2495
Simon Glass72a8cf82016-01-17 20:53:51 -07002496config CMD_BOOTSTAGE
2497 bool "Enable the 'bootstage' command"
2498 depends on BOOTSTAGE
2499 help
2500 Add a 'bootstage' command which supports printing a report
2501 and un/stashing of bootstage data.
2502
2503menu "Power commands"
2504config CMD_PMIC
2505 bool "Enable Driver Model PMIC command"
2506 depends on DM_PMIC
2507 help
2508 This is the pmic command, based on a driver model pmic's API.
2509 Command features are unchanged:
2510 - list - list pmic devices
2511 - pmic dev <id> - show or [set] operating pmic device (NEW)
2512 - pmic dump - dump registers
2513 - pmic read address - read byte of register at address
2514 - pmic write address - write byte to register at address
2515 The only one change for this command is 'dev' subcommand.
2516
2517config CMD_REGULATOR
2518 bool "Enable Driver Model REGULATOR command"
2519 depends on DM_REGULATOR
2520 help
2521 This command is based on driver model regulator's API.
2522 User interface features:
2523 - list - list regulator devices
2524 - regulator dev <id> - show or [set] operating regulator device
2525 - regulator info - print constraints info
2526 - regulator status - print operating status
2527 - regulator value <val] <-f> - print/[set] voltage value [uV]
2528 - regulator current <val> - print/[set] current value [uA]
2529 - regulator mode <id> - print/[set] operating mode id
2530 - regulator enable - enable the regulator output
2531 - regulator disable - disable the regulator output
2532
2533 The '-f' (force) option can be used for set the value which exceeds
2534 the limits, which are found in device-tree and are kept in regulator's
Simon Glasscaa4daa2020-12-03 16:55:18 -07002535 uclass plat structure.
Simon Glass72a8cf82016-01-17 20:53:51 -07002536
2537endmenu
2538
2539menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06002540config CMD_AES
2541 bool "Enable the 'aes' command"
2542 select AES
2543 help
2544 This provides a means to encrypt and decrypt data using the AES
2545 (Advanced Encryption Standard). This algorithm uses a symetric key
2546 and is widely used as a streaming cipher. Different key lengths are
2547 supported by the algorithm but this command only supports 128 bits
2548 at present.
2549
Simon Glassc04b9b32017-04-26 22:27:53 -06002550config CMD_BLOB
2551 bool "Enable the 'blob' command"
Aymen Sghaier25324292021-03-25 17:30:27 +08002552 depends on !MX6ULL && !MX6SLL && !MX6SL
2553 select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
Simon Glassc04b9b32017-04-26 22:27:53 -06002554 help
2555 This is used with the Freescale secure boot mechanism.
2556
2557 Freescale's SEC block has built-in Blob Protocol which provides
2558 a method for protecting user-defined data across system power
2559 cycles. SEC block protects data in a data structure called a Blob,
2560 which provides both confidentiality and integrity protection.
2561
2562 Encapsulating data as a blob
2563 Each time that the Blob Protocol is used to protect data, a
2564 different randomly generated key is used to encrypt the data.
2565 This random key is itself encrypted using a key which is derived
2566 from SoC's non-volatile secret key and a 16 bit Key identifier.
2567 The resulting encrypted key along with encrypted data is called a
2568 blob. The non-volatile secure key is available for use only during
2569 secure boot.
2570
2571 During decapsulation, the reverse process is performed to get back
2572 the original data.
2573
2574 Sub-commands:
Michal Simek6e7bdde2018-07-23 15:55:12 +02002575 blob enc - encapsulating data as a cryptgraphic blob
Simon Glassc04b9b32017-04-26 22:27:53 -06002576 blob dec - decapsulating cryptgraphic blob to get the data
2577
2578 Syntax:
2579
2580 blob enc src dst len km
2581
2582 Encapsulate and create blob of data $len bytes long
2583 at address $src and store the result at address $dst.
2584 $km is the 16 byte key modifier is also required for
2585 generation/use as key for cryptographic operation. Key
2586 modifier should be 16 byte long.
2587
2588 blob dec src dst len km
2589
2590 Decapsulate the blob of data at address $src and
2591 store result of $len byte at addr $dst.
2592 $km is the 16 byte key modifier is also required for
2593 generation/use as key for cryptographic operation. Key
2594 modifier should be 16 byte long.
2595
Simon Glass551c3932017-05-17 03:25:25 -06002596config CMD_HASH
2597 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06002598 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06002599 help
2600 This provides a way to hash data in memory using various supported
2601 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
2602 saved to memory or to an environment variable. It is also possible
2603 to verify a hash against data in memory.
2604
Michalis Pappas666028f2018-04-13 10:40:57 +03002605config CMD_HVC
2606 bool "Support the 'hvc' command"
2607 depends on ARM_SMCCC
2608 help
2609 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
2610 development and testing.
2611
2612config CMD_SMC
2613 bool "Support the 'smc' command"
2614 depends on ARM_SMCCC
2615 help
2616 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
2617 development and testing.
2618
Daniel Thompson221a9492017-05-19 17:26:58 +01002619config HASH_VERIFY
2620 bool "hash -v"
2621 depends on CMD_HASH
2622 help
2623 Add -v option to verify data against a hash.
2624
Jorge Ramirez-Ortiz26839e52021-02-14 16:27:24 +01002625config CMD_SCP03
2626 bool "scp03 - SCP03 enable and rotate/provision operations"
2627 depends on SCP03
2628 help
2629 This command provides access to a Trusted Application
2630 running in a TEE to request Secure Channel Protocol 03
2631 (SCP03) enablement and/or rotation of its SCP03 keys.
2632
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002633config CMD_TPM_V1
2634 bool
2635
2636config CMD_TPM_V2
2637 bool
2638
Simon Glass72a8cf82016-01-17 20:53:51 -07002639config CMD_TPM
2640 bool "Enable the 'tpm' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002641 depends on TPM_V1 || TPM_V2
2642 select CMD_TPM_V1 if TPM_V1
2643 select CMD_TPM_V2 if TPM_V2
Simon Glass72a8cf82016-01-17 20:53:51 -07002644 help
2645 This provides a means to talk to a TPM from the command line. A wide
2646 range of commands if provided - see 'tpm help' for details. The
2647 command requires a suitable TPM on your board and the correct driver
2648 must be enabled.
2649
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002650if CMD_TPM
2651
Simon Glass72a8cf82016-01-17 20:53:51 -07002652config CMD_TPM_TEST
2653 bool "Enable the 'tpm test' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002654 depends on TPM_V1
Simon Glass72a8cf82016-01-17 20:53:51 -07002655 help
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002656 This provides a a series of tests to confirm that the TPMv1.x is
2657 working correctly. The tests cover initialisation, non-volatile RAM,
2658 extend, global lock and checking that timing is within expectations.
2659 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass72a8cf82016-01-17 20:53:51 -07002660 for other devices.
2661
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002662endif
2663
Simon Glass72a8cf82016-01-17 20:53:51 -07002664endmenu
2665
Moritz Fischerbfeba012016-10-04 17:08:08 -07002666menu "Firmware commands"
2667config CMD_CROS_EC
2668 bool "Enable crosec command"
2669 depends on CROS_EC
2670 default y
2671 help
2672 Enable command-line access to the Chrome OS EC (Embedded
2673 Controller). This provides the 'crosec' command which has
2674 a number of sub-commands for performing EC tasks such as
2675 updating its flash, accessing a small saved context area
2676 and talking to the I2C bus behind the EC (if there is one).
AKASHI Takahiro8055f902023-11-14 11:14:26 +09002677
2678config CMD_SCMI
2679 bool "Enable scmi command"
2680 depends on SCMI_FIRMWARE
AKASHI Takahiro8055f902023-11-14 11:14:26 +09002681 help
2682 This command provides user interfaces to several SCMI (System
2683 Control and Management Interface) protocols available on Arm
2684 platforms to manage system resources.
Moritz Fischerbfeba012016-10-04 17:08:08 -07002685endmenu
2686
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002687menu "Filesystem commands"
Marek Behún9d845502017-09-03 17:00:30 +02002688config CMD_BTRFS
2689 bool "Enable the 'btrsubvol' command"
2690 select FS_BTRFS
2691 help
2692 This enables the 'btrsubvol' command to list subvolumes
2693 of a BTRFS filesystem. There are no special commands for
2694 listing BTRFS directories or loading BTRFS files - this
2695 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
2696 when BTRFS is enabled (see FS_BTRFS).
2697
Simon Glassd66a10f2017-04-26 22:27:58 -06002698config CMD_CBFS
2699 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06002700 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06002701 help
2702 Define this to enable support for reading from a Coreboot
2703 filesystem. This is a ROM-based filesystem used for accessing files
2704 on systems that use coreboot as the first boot-loader and then load
2705 U-Boot to actually boot the Operating System. Available commands are
2706 cbfsinit, cbfsinfo, cbfsls and cbfsload.
2707
Simon Glass97072742017-04-26 22:28:03 -06002708config CMD_CRAMFS
2709 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06002710 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06002711 help
2712 This provides commands for dealing with CRAMFS (Compressed ROM
2713 filesystem). CRAMFS is useful when space is tight since files are
2714 compressed. Two commands are provided:
2715
2716 cramfsls - lists files in a cramfs image
2717 cramfsload - loads a file from a cramfs image
2718
Huang Jianan739941e2022-02-26 15:05:50 +08002719config CMD_EROFS
2720 bool "EROFS command support"
2721 select FS_EROFS
2722 help
2723 Support for the EROFS fs
2724
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002725config CMD_EXT2
2726 bool "ext2 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02002727 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002728 help
2729 Enables EXT2 FS command
2730
2731config CMD_EXT4
2732 bool "ext4 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02002733 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002734 help
2735 Enables EXT4 FS command
2736
2737config CMD_EXT4_WRITE
2738 depends on CMD_EXT4
2739 bool "ext4 write command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02002740 select EXT4_WRITE
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002741 help
2742 Enables EXT4 FS write command
2743
2744config CMD_FAT
2745 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05302746 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002747 help
2748 Support for the FAT fs
2749
Joao Marcos Costabba604b2020-07-30 15:33:48 +02002750config CMD_SQUASHFS
2751 bool "SquashFS command support"
2752 select FS_SQUASHFS
2753 help
2754 Enables SquashFS filesystem commands (e.g. load, ls).
2755
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002756config CMD_FS_GENERIC
2757 bool "filesystem commands"
2758 help
2759 Enables filesystem commands (e.g. load, ls) that work for multiple
2760 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002761
Josua Mayerefbe99c2017-04-24 10:10:45 +02002762config CMD_FS_UUID
2763 bool "fsuuid command"
2764 help
2765 Enables fsuuid command for filesystem UUID.
2766
Simon Glassb8682a72017-05-17 03:25:37 -06002767config CMD_JFFS2
2768 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06002769 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06002770 help
2771 Enables commands to support the JFFS2 (Journalling Flash File System
2772 version 2) filesystem. This enables fsload, ls and fsinfo which
2773 provide the ability to load files, list directories and obtain
2774 filesystem information.
2775
Tom Rini968c6212021-12-17 18:08:47 -05002776config JFFS2_DEV
2777 string "Default device for JFFS2"
2778 depends on CMD_JFFS2
2779 default "nor0"
2780 help
2781 The default device to use with the jffs2 command.
2782
2783config JFFS2_PART_OFFSET
2784 hex "Default offset within flash to locate the JFFS2 image"
2785 depends on CMD_JFFS2
2786 default 0x0
2787 help
2788 The default offset within flash to locate the JFFS2 image.
2789
2790config JFFS2_PART_SIZE
2791 hex "Default size of JFFS2 partition"
2792 depends on CMD_JFFS2
2793 default 0xFFFFFFFF
2794 help
2795 The default size of the JFFS2 partition
2796
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002797config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002798 bool "MTD partition support"
Miquel Raynalff102c52019-10-25 19:39:30 +02002799 depends on MTD
Tom Rini246c94f2024-01-10 13:46:07 -05002800 select MTD_PARTITIONS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002801 help
Miquel Raynal938db6f2018-09-29 12:58:30 +02002802 MTD partitioning tool support.
2803 It is strongly encouraged to avoid using this command
2804 anymore along with 'sf', 'nand', 'onenand'. One can still
2805 declare the partitions in the mtdparts environment variable
2806 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002807
Simon Glasscb70e6c2017-08-04 16:34:30 -06002808config CMD_MTDPARTS_SPREAD
2809 bool "Padd partition size to take account of bad blocks"
2810 depends on CMD_MTDPARTS
2811 help
2812 This enables the 'spread' sub-command of the mtdparts command.
2813 This command will modify the existing mtdparts variable by increasing
2814 the size of the partitions such that 1) each partition's net size is
2815 at least as large as the size specified in the mtdparts variable and
2816 2) each partition starts on a good block.
2817
Alexander Dahl672c5702019-10-30 16:53:55 +01002818config CMD_MTDPARTS_SHOW_NET_SIZES
2819 bool "Show net size (w/o bad blocks) of partitions"
2820 depends on CMD_MTDPARTS
2821 help
2822 Adds two columns to the printed partition table showing the
2823 effective usable size of a partition, if bad blocks are taken
2824 into account.
2825
Miquel Raynal587f4452019-10-03 19:50:25 +02002826config MTDIDS_DEFAULT
2827 string "Default MTD IDs"
Miquel Raynalff102c52019-10-25 19:39:30 +02002828 depends on MTD || SPI_FLASH
Patrick Delaunay6762c8d2022-12-08 09:10:13 +01002829 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynal587f4452019-10-03 19:50:25 +02002830 help
2831 Defines a default MTD IDs list for use with MTD partitions in the
2832 Linux MTD command line partitions format.
2833
2834config MTDPARTS_DEFAULT
2835 string "Default MTD partition scheme"
Miquel Raynalff102c52019-10-25 19:39:30 +02002836 depends on MTD || SPI_FLASH
Patrick Delaunay6762c8d2022-12-08 09:10:13 +01002837 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynal587f4452019-10-03 19:50:25 +02002838 help
2839 Defines a default MTD partitioning scheme in the Linux MTD command
2840 line partitions format
2841
Simon Glass7a764312017-08-04 16:34:58 -06002842config CMD_YAFFS2
2843 bool "yaffs2 - Access of YAFFS2 filesystem"
2844 depends on YAFFS2
2845 default y
2846 help
2847 This provides commands for accessing a YAFFS2 filesystem. Yet
2848 Another Flash Filesystem 2 is a filesystem designed specifically
2849 for NAND flash. It incorporates bad-block management and ensures
2850 that device writes are sequential regardless of filesystem
2851 activity.
2852
Simon Glass54feea12017-08-04 16:35:04 -06002853config CMD_ZFS
2854 bool "zfs - Access of ZFS filesystem"
2855 help
2856 This provides commands to accessing a ZFS filesystem, commonly used
2857 on Solaris systems. Two sub-commands are provided:
2858
2859 zfsls - list files in a directory
2860 zfsload - load a file
2861
2862 See doc/README.zfs for more details.
2863
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002864endmenu
2865
Simon Glassac20a1b2017-04-26 22:27:52 -06002866menu "Debug commands"
2867
Simon Glass71cebf02021-03-15 18:00:24 +13002868config CMD_CBSYSINFO
2869 bool "cbsysinfo"
2870 depends on X86
2871 default y if SYS_COREBOOT
2872 help
2873 This provides information about the coreboot sysinfo table stored in
2874 memory by coreboot before jumping to U-Boot. It can be useful for
2875 debugging the beaaviour of coreboot or U-Boot.
2876
Stefan Roese1f865ee2022-09-02 13:57:51 +02002877config CMD_CYCLIC
2878 bool "cyclic - Show information about cyclic functions"
2879 depends on CYCLIC
2880 default y
2881 help
2882 This enables the 'cyclic' command which provides information about
2883 cyclic execution functions. This infrastructure allows registering
2884 functions to be executed cyclically, e.g. every 100ms. These commands
2885 are supported:
2886
2887 cyclic list - list cyclic functions
2888 cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic
2889 demo function
2890
2891 See doc/develop/cyclic.rst for more details.
2892
Simon Glass3bd25cb2017-04-26 22:28:08 -06002893config CMD_DIAG
2894 bool "diag - Board diagnostics"
2895 help
2896 This command provides access to board diagnostic tests. These are
2897 called Power-on Self Tests (POST). The command allows listing of
2898 available tests and running either all the tests, or specific tests
2899 identified by name.
2900
Simon Glassc81b4602022-03-04 08:43:06 -07002901config CMD_EVENT
2902 bool "event - Show information about events"
Tom Rini448e2b62023-01-16 15:46:49 -05002903 depends on EVENT
Simon Glassc81b4602022-03-04 08:43:06 -07002904 default y if EVENT_DEBUG
2905 help
2906 This enables the 'event' command which provides information about
2907 events and event-handler routines. This can help to device event
2908 hadling.
2909
Simon Glass1b330892017-05-17 03:25:39 -06002910config CMD_IRQ
2911 bool "irq - Show information about interrupts"
Pragnesh Patelc5a7e5b2020-08-24 20:38:55 +05302912 depends on !ARM && !MIPS && !RISCV && !SH
Simon Glass1b330892017-05-17 03:25:39 -06002913 help
2914 This enables two commands:
2915
2916 interrupts - enable or disable interrupts
2917 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06002918
2919config CMD_KGDB
2920 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simekb9205502018-10-04 14:26:13 +02002921 depends on PPC
Simon Glass6bac2272017-05-17 03:25:40 -06002922 help
2923 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2924 over a serial link for debugging purposes. This allows
2925 single-stepping, inspecting variables, etc. This is supported only
2926 on PowerPC at present.
2927
Simon Glassd5f61f22017-12-04 13:48:26 -07002928config CMD_LOG
2929 bool "log - Generation, control and access to logging"
Heinrich Schuchardt83a1f932018-04-19 22:02:46 +02002930 select LOG
Sean Anderson3e409762020-10-27 19:55:38 -04002931 select GETOPT
Simon Glassd5f61f22017-12-04 13:48:26 -07002932 help
2933 This provides access to logging features. It allows the output of
2934 log data to be controlled to a limited extent (setting up the default
Simon Glassef11ed82017-12-04 13:48:27 -07002935 maximum log level for emitting of records). It also provides access
2936 to a command used for testing the log system.
Simon Glassd5f61f22017-12-04 13:48:26 -07002937
Simon Glassce058ae2017-08-04 16:34:59 -06002938config CMD_TRACE
2939 bool "trace - Support tracing of function calls and timing"
Simon Glass89050242021-11-24 09:26:39 -07002940 depends on TRACE
2941 default y
Simon Glassce058ae2017-08-04 16:34:59 -06002942 help
2943 Enables a command to control using of function tracing within
2944 U-Boot. This allows recording of call traces including timing
2945 information. The command can write data to memory for exporting
Vincent Stehlé6d9a8512024-04-11 18:44:02 +02002946 for analysis (e.g. using bootchart). See doc/develop/trace.rst
2947 for full details.
Simon Glassce058ae2017-08-04 16:34:59 -06002948
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002949config CMD_AVB
2950 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniukb0aa74a2018-07-17 14:33:25 +03002951 depends on AVB_VERIFY
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002952 help
2953 Enables a "avb" command to perform verification of partitions using
2954 Android Verified Boot 2.0 functionality. It includes such subcommands:
2955 avb init - initialize avb2 subsystem
2956 avb read_rb - read rollback index
2957 avb write_rb - write rollback index
2958 avb is_unlocked - check device lock state
2959 avb get_uuid - read and print uuid of a partition
2960 avb read_part - read data from partition
2961 avb read_part_hex - read data from partition and output to stdout
2962 avb write_part - write data to partition
2963 avb verify - run full verification chain
Joel Peshkin4e9bce12021-04-11 11:21:58 +02002964
2965config CMD_STACKPROTECTOR_TEST
2966 bool "Test command for stack protector"
2967 depends on STACKPROTECTOR
2968 help
2969 Enable stackprot_test command
2970 The stackprot_test command will force a stack overrun to test
2971 the stack smashing detection mechanisms.
2972
Simon Glassac20a1b2017-04-26 22:27:52 -06002973endmenu
2974
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002975config CMD_UBI
2976 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002977 select MTD_UBI
2978 help
2979 UBI is a software layer above MTD layer which admits use of LVM-like
2980 logical volumes on top of MTD devices, hides some complexities of
2981 flash chips like wear and bad blocks and provides some other useful
2982 capabilities. Please, consult the MTD web site for more details
2983 (www.linux-mtd.infradead.org). Activate this option if you want
2984 to use U-Boot UBI commands.
Miquel Raynalc58fb2c2018-09-29 12:58:29 +02002985 It is also strongly encouraged to also enable CONFIG_MTD to get full
2986 partition support.
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002987
Philippe Reynes83f70782020-03-23 19:20:47 +01002988config CMD_UBI_RENAME
2989 bool "Enable rename"
2990 depends on CMD_UBI
Philippe Reynes83f70782020-03-23 19:20:47 +01002991 help
Anand Moon608a88c2024-06-23 23:10:21 +05302992 Enable a "ubi" command to rename ubi volume:
Philippe Reynes83f70782020-03-23 19:20:47 +01002993 ubi rename <oldname> <newname>
2994
Boris Brezillon173aafb2017-02-27 18:22:06 +01002995config CMD_UBIFS
2996 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01002997 depends on CMD_UBI
Michal Simek5ed063d2018-07-23 15:55:13 +02002998 default y if CMD_UBI
Karl Beldan24fc9532017-07-12 16:11:47 +00002999 select LZO
Pali Rohárb257c4e2022-05-23 22:50:36 +02003000 select GZIP
Boris Brezillon173aafb2017-02-27 18:22:06 +01003001 help
3002 UBIFS is a file system for flash devices which works on top of UBI.
3003
Alexey Romanov311106a2023-01-10 13:56:47 +03003004config CMD_MESON
3005 bool "Amlogic Meson commands"
3006 depends on ARCH_MESON
3007 default y
3008 help
3009 Enable useful commands for the Meson Soc family developed by Amlogic Inc.
Simon Glass88d9b262023-10-26 14:31:29 -04003010
3011endif