blob: 24bfbe505722dcd99713dda5ac49ac2887186015 [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
Adam Fordd021e942018-02-06 07:58:59 -060025config CMDLINE_EDITING
26 bool "Enable command line editing"
Adam Fordd021e942018-02-06 07:58:59 -060027 default y
28 help
29 Enable editing and History functions for interactive command line
30 input operations
31
Tom Rinidafcd962022-03-30 18:07:14 -040032config CMDLINE_PS_SUPPORT
33 bool "Enable support for changing the command prompt string at run-time"
34 depends on HUSH_PARSER
35 help
36 Only static string in the prompt is supported so far. The string is
37 obtained from environment variables PS1 and PS2.
38
Adam Fordd021e942018-02-06 07:58:59 -060039config AUTO_COMPLETE
40 bool "Enable auto complete using TAB"
Adam Fordd021e942018-02-06 07:58:59 -060041 default y
42 help
43 Enable auto completion of commands using TAB.
44
45config SYS_LONGHELP
46 bool "Enable long help messages"
Simon Glass88d9b262023-10-26 14:31:29 -040047 default y
Adam Fordd021e942018-02-06 07:58:59 -060048 help
49 Defined when you want long help messages included
50 Do not set this option when short of memory.
51
Simon Glass72a8cf82016-01-17 20:53:51 -070052config SYS_PROMPT
53 string "Shell prompt"
Michal Simeka91feae2019-09-25 12:32:41 +020054 default "Zynq> " if ARCH_ZYNQ
Michal Simek3c3886d2019-09-25 12:37:15 +020055 default "ZynqMP> " if ARCH_ZYNQMP
Simon Glass72a8cf82016-01-17 20:53:51 -070056 default "=> "
57 help
58 This string is displayed in the command line to the left of the
59 cursor.
60
Patrick Delaunay48aee0a2020-10-26 09:31:42 +010061config SYS_PROMPT_HUSH_PS2
62 string "Hush shell secondary prompt"
63 depends on HUSH_PARSER
64 default "> "
65 help
66 This defines the secondary prompt string, which is
67 printed when the command interpreter needs more input
68 to complete a command. Usually "> ".
69
Tom Rinicf493582022-05-11 16:21:06 -040070config SYS_MAXARGS
71 int "Maximum number arguments accepted by commands"
72 default 16
73
Christoph Muellner7ae31fc2019-04-05 13:03:46 +020074config SYS_XTRACE
Sean Andersonb935d192021-03-04 11:34:23 -050075 bool "Command execution tracer"
Simon Glass88d9b262023-10-26 14:31:29 -040076 default y
Christoph Muellner7ae31fc2019-04-05 13:03:46 +020077 help
78 This option enables the possiblity to print all commands before
79 executing them and after all variables are evaluated (similar
80 to Bash's xtrace/'set -x' feature).
81 To enable the tracer a variable "xtrace" needs to be defined in
82 the environment.
83
Sam Protsenko610eec72017-09-28 12:33:45 -070084config BUILD_BIN2C
85 bool
86
Simon Glass72a8cf82016-01-17 20:53:51 -070087comment "Commands"
88
89menu "Info commands"
90
Simon Glass0b885bc2020-04-26 09:19:53 -060091config CMD_ACPI
92 bool "acpi"
Simon Glass0992a902023-05-04 16:54:57 -060093 depends on ACPI
Heinrich Schuchardt12218c12021-01-20 21:37:56 +010094 default y
Simon Glass0b885bc2020-04-26 09:19:53 -060095 help
96 List and dump ACPI tables. ACPI (Advanced Configuration and Power
97 Interface) is used mostly on x86 for providing information to the
98 Operating System about devices in the system. The tables are set up
99 by the firmware, typically U-Boot but possibly an earlier firmware
100 module, if U-Boot is chain-loaded from something else. ACPI tables
101 can also include code, to perform hardware-specific tasks required
102 by the Operating Systems. This allows some amount of separation
103 between the firmware and OS, and is particularly useful when you
104 want to make hardware changes without the OS needing to be adjusted.
105
Bin Meng56d06352021-02-25 17:22:34 +0800106config CMD_ADDRMAP
107 bool "addrmap"
108 depends on ADDR_MAP
109 default y
110 help
111 List non-identity virtual-physical memory mappings for 32-bit CPUs.
112
Simon Glass72a8cf82016-01-17 20:53:51 -0700113config CMD_BDI
114 bool "bdinfo"
115 default y
116 help
117 Print board info
118
Simon Glassb279f512023-07-15 21:38:46 -0600119config CMD_BDINFO_EXTRA
120 bool "bdinfo extra features"
121 default y if SANDBOX || X86
122 help
123 Show additional information about the board. This uses a little more
124 code space but provides more options, particularly those useful for
125 bringup, development and debugging.
126
Masahiro Yamada61304db2017-01-30 11:12:07 +0900127config CMD_CONFIG
128 bool "config"
Masahiro Yamada61304db2017-01-30 11:12:07 +0900129 default SANDBOX
Michal Simek5ed063d2018-07-23 15:55:13 +0200130 select BUILD_BIN2C
Masahiro Yamada61304db2017-01-30 11:12:07 +0900131 help
132 Print ".config" contents.
133
134 If this option is enabled, the ".config" file contents are embedded
135 in the U-Boot image and can be printed on the console by the "config"
136 command. This provides information of which options are enabled on
137 the running U-Boot.
138
Simon Glass72a8cf82016-01-17 20:53:51 -0700139config CMD_CONSOLE
140 bool "coninfo"
141 default y
142 help
143 Print console devices and information.
144
145config CMD_CPU
146 bool "cpu"
Heinrich Schuchardt622178d2020-11-05 00:29:11 +0100147 depends on CPU
Simon Glass72a8cf82016-01-17 20:53:51 -0700148 help
149 Print information about available CPUs. This normally shows the
150 number of CPUs, type (e.g. manufacturer, architecture, product or
151 internal name) and clock frequency. Other information may be
152 available depending on the CPU driver.
153
Sughosh Ganue68c03b2022-10-21 18:16:04 +0530154config CMD_FWU_METADATA
155 bool "fwu metadata read"
156 depends on FWU_MULTI_BANK_UPDATE
157 help
158 Command to read the metadata and dump it's contents
159
Simon Glass33eb0b92023-10-01 19:13:06 -0600160config CMD_HISTORY
161 bool "history"
162 depends on CMDLINE_EDITING
163 help
164 Show the command-line history, i.e. a list of commands that are in
165 the history buffer.
166
Simon Glass72a8cf82016-01-17 20:53:51 -0700167config CMD_LICENSE
168 bool "license"
Masahiro Yamadad726f222017-01-30 11:12:08 +0900169 select BUILD_BIN2C
Simon Glass72a8cf82016-01-17 20:53:51 -0700170 help
171 Print GPL license text
172
Simon Glass3b65ee32019-12-06 21:41:54 -0700173config CMD_PMC
174 bool "pmc"
175 help
176 Provides access to the Intel Power-Management Controller (PMC) so
177 that its state can be examined. This does not currently support
178 changing the state but it is still useful for debugging and seeing
179 what is going on.
180
Christophe Leroyfa379222017-08-04 16:34:40 -0600181config CMD_REGINFO
182 bool "reginfo"
183 depends on PPC
184 help
185 Register dump
186
Baruch Siach1c79f2f2020-01-21 15:44:54 +0200187config CMD_TLV_EEPROM
188 bool "tlv_eeprom"
189 depends on I2C_EEPROM
Pali Rohár56e3d6e2022-05-30 10:42:35 +0200190 select CRC32
Baruch Siach1c79f2f2020-01-21 15:44:54 +0200191 help
192 Display and program the system EEPROM data block in ONIE Tlvinfo
193 format. TLV stands for Type-Length-Value.
194
195config SPL_CMD_TLV_EEPROM
196 bool "tlv_eeprom for SPL"
197 depends on SPL_I2C_EEPROM
Simon Glass9ca00682021-07-10 21:14:31 -0600198 select SPL_DRIVERS_MISC
Pali Rohár56e3d6e2022-05-30 10:42:35 +0200199 select SPL_CRC32
Baruch Siach1c79f2f2020-01-21 15:44:54 +0200200 help
201 Read system EEPROM data block in ONIE Tlvinfo format from SPL.
202
Heinrich Schuchardtc92b50a2020-08-20 19:43:39 +0200203config CMD_SBI
204 bool "sbi"
205 depends on RISCV_SMODE && SBI_V02
206 help
207 Display information about the SBI implementation.
208
Simon Glass72a8cf82016-01-17 20:53:51 -0700209endmenu
210
211menu "Boot commands"
212
213config CMD_BOOTD
214 bool "bootd"
215 default y
216 help
217 Run the command stored in the environment "bootcmd", i.e.
218 "bootd" does the same thing as "run bootcmd".
219
220config CMD_BOOTM
221 bool "bootm"
222 default y
223 help
224 Boot an application image from the memory.
225
Philippe Reynes9d46e632022-03-28 22:57:00 +0200226config CMD_BOOTM_PRE_LOAD
227 bool "enable pre-load on bootm"
228 depends on CMD_BOOTM
229 depends on IMAGE_PRE_LOAD
Philippe Reynes9d46e632022-03-28 22:57:00 +0200230 help
231 Enable support of stage pre-load for the bootm command.
232 This stage allow to check or modify the image provided
233 to the bootm command.
234
Simon Glass5d053cc2022-04-24 23:31:10 -0600235config CMD_BOOTDEV
236 bool "bootdev"
237 depends on BOOTSTD
238 default y if BOOTSTD_FULL
239 help
240 Support listing available bootdevs (boot devices) which can provide an
241 OS to boot, as well as showing information about a particular one.
242
243 This command is not necessary for bootstd to work.
244
Simon Glass2d653f62022-04-24 23:31:11 -0600245config CMD_BOOTFLOW
246 bool "bootflow"
247 depends on BOOTSTD
248 default y
249 help
250 Support scanning for bootflows available with the bootdevs. The
251 bootflows can optionally be booted.
252
253config CMD_BOOTFLOW_FULL
254 bool "bootflow - extract subcommands"
255 depends on BOOTSTD_FULL
Simon Glassd8d40bc2023-05-06 08:27:09 -0600256 default y
Simon Glass2d653f62022-04-24 23:31:11 -0600257 help
258 Add the ability to list the available bootflows, select one and obtain
259 information about it.
260
261 This command is not necessary for bootstd to work.
262
Simon Glass7fca71d2022-04-24 23:31:12 -0600263config CMD_BOOTMETH
264 bool "bootmeth"
265 depends on BOOTSTD
266 default y if BOOTSTD_FULL
267 help
268 Support listing available bootmethds (methods used to boot an
269 Operating System), as well as selecting the order that the bootmeths
270 are used.
271
272 This command is not necessary for bootstd to work.
273
Cristian Ciocalteaecc7fda2019-12-24 18:05:39 +0200274config BOOTM_EFI
275 bool "Support booting UEFI FIT images"
AKASHI Takahiro7017fc52023-11-21 10:29:46 +0900276 depends on BOOTEFI_BOOTMGR && CMD_BOOTM && FIT
Cristian Ciocalteaecc7fda2019-12-24 18:05:39 +0200277 default y
278 help
279 Support booting UEFI FIT images via the bootm command.
280
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500281config CMD_BOOTZ
282 bool "bootz"
283 help
284 Boot the Linux zImage
285
Masahiro Yamada26959272016-08-12 08:31:16 -0400286config CMD_BOOTI
287 bool "booti"
Simon Glass6b8f26b2023-10-01 19:15:24 -0600288 depends on ARM64 || RISCV || SANDBOX
Masahiro Yamada26959272016-08-12 08:31:16 -0400289 default y
290 help
291 Boot an AArch64 Linux Kernel image from memory.
292
Tom Rini4b0bcfa2019-09-20 17:36:50 -0400293config BOOTM_LINUX
294 bool "Support booting Linux OS images"
295 depends on CMD_BOOTM || CMD_BOOTZ || CMD_BOOTI
296 default y
297 help
298 Support booting the Linux kernel directly via a command such as bootm
299 or booti or bootz.
300
301config BOOTM_NETBSD
302 bool "Support booting NetBSD (non-EFI) loader images"
303 depends on CMD_BOOTM
304 default y
305 help
306 Support booting NetBSD via the bootm command.
307
308config BOOTM_OPENRTOS
309 bool "Support booting OPENRTOS / FreeRTOS images"
310 depends on CMD_BOOTM
311 help
312 Support booting OPENRTOS / FreeRTOS via the bootm command.
313
314config BOOTM_OSE
315 bool "Support booting Enea OSE images"
Tom Rini14a2dee2019-12-05 18:46:11 -0500316 depends on (ARM && (ARM64 || CPU_V7A || CPU_V7R) || SANDBOX || PPC || X86)
Tom Rini4b0bcfa2019-09-20 17:36:50 -0400317 depends on CMD_BOOTM
318 help
319 Support booting Enea OSE images via the bootm command.
320
321config BOOTM_PLAN9
322 bool "Support booting Plan9 OS images"
323 depends on CMD_BOOTM
324 default y
325 help
326 Support booting Plan9 images via the bootm command.
327
328config BOOTM_RTEMS
329 bool "Support booting RTEMS OS images"
330 depends on CMD_BOOTM
331 default y
332 help
333 Support booting RTEMS images via the bootm command.
334
Linus Walleij41a29f22023-02-01 00:16:13 +0100335config CMD_SEAMA
336 bool "Support read SEAMA NAND images"
337 depends on MTD_RAW_NAND
338 help
339 Support reading NAND Seattle Image (SEAMA) images.
340
Simon Glass5fe76d42022-07-30 15:52:37 -0600341config CMD_VBE
342 bool "vbe - Verified Boot for Embedded"
343 depends on BOOTMETH_VBE
Simon Glass2d742262022-08-23 10:14:05 -0700344 default y if BOOTSTD_FULL
Simon Glass5fe76d42022-07-30 15:52:37 -0600345 help
346 Provides various subcommands related to VBE, such as listing the
347 available methods, looking at the state and changing which method
348 is used to boot. Updating the parameters is not currently
349 supported.
350
Tom Rini4b0bcfa2019-09-20 17:36:50 -0400351config BOOTM_VXWORKS
352 bool "Support booting VxWorks OS images"
353 depends on CMD_BOOTM
354 default y
355 help
356 Support booting VxWorks images via the bootm command.
357
AKASHI Takahirofefff632019-11-08 10:32:15 +0900358config CMD_BOOTEFI
359 bool "bootefi"
360 depends on EFI_LOADER
361 default y
362 help
363 Boot an EFI image from memory.
364
AKASHI Takahiro296faf42023-11-21 10:29:40 +0900365if CMD_BOOTEFI
366config CMD_BOOTEFI_BINARY
367 bool "Allow booting an EFI binary directly"
368 depends on BOOTEFI_BOOTMGR
369 default y
370 help
371 Select this option to enable direct execution of binary at 'bootefi'.
372 This subcommand will allow you to load the UEFI binary using
373 other U-Boot commands or external methods and then run it.
374
Simon Glass422822c2023-10-26 14:31:20 -0400375config CMD_BOOTEFI_BOOTMGR
376 bool "UEFI Boot Manager command"
AKASHI Takahiro296faf42023-11-21 10:29:40 +0900377 depends on BOOTEFI_BOOTMGR
Simon Glass422822c2023-10-26 14:31:20 -0400378 default y
379 help
380 Select this option to enable the 'bootmgr' subcommand of 'bootefi'.
381 This subcommand will allow you to select the UEFI binary to be booted
382 via UEFI variables Boot####, BootOrder, and BootNext.
383
Alexander Graf95b62b22016-11-17 22:40:10 +0100384config CMD_BOOTEFI_HELLO_COMPILE
385 bool "Compile a standard EFI hello world binary for testing"
Alexander Graf95b62b22016-11-17 22:40:10 +0100386 default y
387 help
388 This compiles a standard EFI hello world application with U-Boot so
389 that it can be used with the test/py testing framework. This is useful
390 for testing that EFI is working at a basic level, and for bringing
391 up EFI support on a new architecture.
392
393 No additional space will be required in the resulting U-Boot binary
394 when this option is enabled.
395
Simon Glassc7ae3df2016-11-07 08:47:08 -0700396config CMD_BOOTEFI_HELLO
397 bool "Allow booting a standard EFI hello world for testing"
Alexander Graf95b62b22016-11-17 22:40:10 +0100398 depends on CMD_BOOTEFI_HELLO_COMPILE
Heinrich Schuchardtec5f0ed2020-07-13 07:33:40 +0200399 default y if CMD_BOOTEFI_SELFTEST
Simon Glassc7ae3df2016-11-07 08:47:08 -0700400 help
401 This adds a standard EFI hello world application to U-Boot so that
402 it can be used with the 'bootefi hello' command. This is useful
403 for testing that EFI is working at a basic level, and for bringing
404 up EFI support on a new architecture.
405
Heinrich Schuchardt623b3a52017-09-15 10:06:11 +0200406source lib/efi_selftest/Kconfig
AKASHI Takahiro296faf42023-11-21 10:29:40 +0900407endif
Heinrich Schuchardt623b3a52017-09-15 10:06:11 +0200408
Tom Rini4880b022016-11-29 09:14:56 -0500409config CMD_BOOTMENU
410 bool "bootmenu"
411 select MENU
Masahisa Kojimaa3d0aa82022-04-28 17:09:41 +0900412 select CHARSET
Tom Rini4880b022016-11-29 09:14:56 -0500413 help
414 Add an ANSI terminal boot menu command.
415
Eugeniu Roscab84acf12019-12-24 17:51:06 +0100416config CMD_ADTIMG
417 bool "adtimg"
Sam Protsenkod03e76a2018-08-16 23:34:13 +0300418 help
419 Android DTB/DTBO image manipulation commands. Read dtb/dtbo files from
420 image into RAM, dump image structure information, etc. Those dtb/dtbo
421 files should be merged in one dtb further, which needs to be passed to
422 the kernel, as part of a boot process.
423
Sam Protsenko94f6d0d2020-01-24 17:53:42 +0200424config CMD_ABOOTIMG
425 bool "abootimg"
426 depends on ANDROID_BOOT_IMAGE
427 help
428 Android Boot Image manipulation commands. Allows one to extract
429 images contained in boot.img, like kernel, ramdisk, dtb, etc, and
430 obtain corresponding meta-information from boot.img.
431
Sam Protsenko34b43192020-01-24 17:53:43 +0200432 See doc/android/boot-image.rst for details.
433
Simon Glassa0874dc2023-06-01 10:23:02 -0600434config CMD_CEDIT
435 bool "cedit - Configuration editor"
436 depends on CEDIT
437 default y
438 help
439 Provides a command to allow editing of board configuration and
440 providing a UI for the user to adjust settings. Subcommands allow
441 loading and saving of configuration as well as showing an editor.
442
Simon Glass72a8cf82016-01-17 20:53:51 -0700443config CMD_ELF
444 bool "bootelf, bootvx"
445 default y
Keerthy805b3ca2020-02-12 13:55:03 +0530446 select LIB_ELF
Simon Glass72a8cf82016-01-17 20:53:51 -0700447 help
448 Boot an ELF/vxWorks image from the memory.
449
Michal Simek23922e22016-04-06 20:28:04 +0200450config CMD_FDT
451 bool "Flattened Device Tree utility commands"
452 default y
453 depends on OF_LIBFDT
454 help
455 Do FDT related setup before booting into the Operating System.
456
Kory Maincent2f84e9c2021-05-04 19:31:22 +0200457config SUPPORT_EXTENSION_SCAN
458 bool
459
460config CMD_EXTENSION
461 bool "Extension board management command"
462 select CMD_FDT
463 depends on SUPPORT_EXTENSION_SCAN
464 help
465 Enables the "extension" command, which allows to detect
466 extension boards connected to the system, and apply
467 corresponding Device Tree overlays.
468
Simon Glass72a8cf82016-01-17 20:53:51 -0700469config CMD_GO
470 bool "go"
471 default y
472 help
473 Start an application at a given address.
474
475config CMD_RUN
476 bool "run"
477 default y
478 help
479 Run the command in the given environment variable.
480
481config CMD_IMI
482 bool "iminfo"
483 default y
484 help
485 Print header information for application image.
486
487config CMD_IMLS
488 bool "imls"
Simon Glass72a8cf82016-01-17 20:53:51 -0700489 help
490 List all images found in flash
491
492config CMD_XIMG
493 bool "imxtract"
494 default y
495 help
496 Extract a part of a multi-image.
497
Simon Glass72c30332017-08-04 16:34:48 -0600498config CMD_SPL
499 bool "spl export - Export boot information for Falcon boot"
500 depends on SPL
501 help
502 Falcon mode allows booting directly from SPL into an Operating
503 System such as Linux, thus skipping U-Boot proper. See
504 doc/README.falcon for full information about how to use this
505 command.
506
Simon Glass203dc1b2017-08-04 16:34:49 -0600507config CMD_SPL_NAND_OFS
Lukasz Majewskif63c43b2019-05-16 16:01:36 +0200508 hex "Offset of OS args or dtb for Falcon-mode NAND boot"
Lukasz Majewski7cb179e2019-05-16 16:01:35 +0200509 depends on CMD_SPL && (TPL_NAND_SUPPORT || SPL_NAND_SUPPORT)
Tom Rinia077ac12023-08-02 11:09:43 -0400510 default 0x0
Simon Glass203dc1b2017-08-04 16:34:49 -0600511 help
512 This provides the offset of the command line arguments for Linux
513 when booting from NAND in Falcon mode. See doc/README.falcon
514 for full information about how to use this option (and also see
515 board/gateworks/gw_ventana/README for an example).
516
Lukasz Majewskief9e57d2019-05-16 16:01:37 +0200517config CMD_SPL_NOR_OFS
518 hex "Offset of OS args or dtb for Falcon-mode NOR boot"
519 depends on CMD_SPL && SPL_NOR_SUPPORT
Tom Rinia077ac12023-08-02 11:09:43 -0400520 default 0x0
Lukasz Majewskief9e57d2019-05-16 16:01:37 +0200521 help
522 This provides the offset of the command line arguments or dtb for
523 Linux when booting from NOR in Falcon mode.
524
Simon Glass3a91a252017-08-04 16:34:50 -0600525config CMD_SPL_WRITE_SIZE
526 hex "Size of argument area"
527 depends on CMD_SPL
528 default 0x2000
529 help
530 This provides the size of the command-line argument area in NAND
531 flash used by Falcon-mode boot. See the documentation until CMD_SPL
532 for detail.
533
Simon Glass9b92a8d2017-08-04 16:34:57 -0600534config CMD_THOR_DOWNLOAD
535 bool "thor - TIZEN 'thor' download"
Marek Szyprowski909338c2019-10-02 12:29:08 +0200536 select DFU
Venkatesh Yadav Abbarapu16794d32023-09-04 08:45:27 +0530537 select USB_FUNCTION_THOR
538 depends on USB_GADGET_DOWNLOAD
Simon Glass9b92a8d2017-08-04 16:34:57 -0600539 help
540 Implements the 'thor' download protocol. This is a way of
541 downloading a software update over USB from an attached host.
542 There is no documentation about this within the U-Boot source code
543 but you should be able to find something on the interwebs.
544
Tom Rini60910a32022-12-02 16:42:46 -0500545config THOR_RESET_OFF
546 bool "thor: Disable reset on completion"
547 depends on CMD_THOR_DOWNLOAD
548
Simon Glasse7a815f2017-08-04 16:35:03 -0600549config CMD_ZBOOT
550 bool "zboot - x86 boot command"
551 help
552 With x86 machines it is common to boot a bzImage file which
553 contains both a kernel and a setup.bin file. The latter includes
554 configuration information from the dark ages which x86 boards still
555 need to pick things out of.
556
557 Consider using FIT in preference to this since it supports directly
558 booting both 32- and 64-bit kernels, as well as secure boot.
559 Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
560
Simon Glass72a8cf82016-01-17 20:53:51 -0700561endmenu
562
563menu "Environment commands"
564
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500565config CMD_ASKENV
566 bool "ask for env variable"
567 help
568 Ask for environment variable
569
Simon Glass72a8cf82016-01-17 20:53:51 -0700570config CMD_EXPORTENV
571 bool "env export"
572 default y
573 help
574 Export environments.
575
576config CMD_IMPORTENV
577 bool "env import"
578 default y
579 help
580 Import environments.
581
582config CMD_EDITENV
583 bool "editenv"
584 default y
585 help
586 Edit environment variable.
587
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500588config CMD_GREPENV
589 bool "search env"
590 help
591 Allow for searching environment variables
592
Simon Glass72a8cf82016-01-17 20:53:51 -0700593config CMD_SAVEENV
594 bool "saveenv"
595 default y
596 help
597 Save all environment variables into the compiled-in persistent
598 storage.
599
Frank Wunderlichcd121bd2019-06-29 11:36:19 +0200600config CMD_ERASEENV
601 bool "eraseenv"
Frank Wunderlichcd121bd2019-06-29 11:36:19 +0200602 depends on CMD_SAVEENV
603 help
604 Erase environment variables from the compiled-in persistent
605 storage.
606
Simon Glass72a8cf82016-01-17 20:53:51 -0700607config CMD_ENV_EXISTS
608 bool "env exists"
609 default y
610 help
611 Check if a variable is defined in the environment for use in
612 shell scripting.
613
Simon Glassa55d29d2017-05-17 03:25:13 -0600614config CMD_ENV_CALLBACK
615 bool "env callbacks - print callbacks and their associated variables"
616 help
617 Some environment variable have callbacks defined by
618 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
619 For example changing "baudrate" adjust the serial baud rate. This
620 command lists the currently defined callbacks.
621
Simon Glassffc76582017-05-17 03:25:14 -0600622config CMD_ENV_FLAGS
623 bool "env flags -print variables that have non-default flags"
624 help
625 Some environment variables have special flags that control their
626 behaviour. For example, serial# can only be written once and cannot
627 be deleted. This command shows the variables that have special
628 flags.
629
AKASHI Takahiro49d81fd2019-02-25 15:54:36 +0900630config CMD_NVEDIT_EFI
631 bool "env [set|print] -e - set/print UEFI variables"
632 depends on EFI_LOADER
AKASHI Takahiro49d81fd2019-02-25 15:54:36 +0900633 imply HEXDUMP
634 help
635 UEFI variables are encoded as some form of U-Boot variables.
636 If enabled, we are allowed to set/print UEFI variables using
637 "env" command with "-e" option without knowing details.
638
Samuel Dionne-Rielec57bd72021-12-20 18:31:56 -0500639config CMD_NVEDIT_INDIRECT
640 bool "env indirect - Sets environment value from another"
641
Leo Ruan8e921202019-05-24 17:20:19 +0200642config CMD_NVEDIT_INFO
643 bool "env info - print or evaluate environment information"
644 help
645 Print environment information:
646 - env_valid : is environment valid
647 - env_ready : is environment imported into hash table
648 - env_use_default : is default environment used
649
650 This command can be optionally used for evaluation in scripts:
651 [-d] : evaluate whether default environment is used
652 [-p] : evaluate whether environment can be persisted
Patrick Delaunay6718ebd2020-06-19 14:03:34 +0200653 [-q] : quiet output
Leo Ruan8e921202019-05-24 17:20:19 +0200654 The result of multiple evaluations will be combined with AND.
655
Patrick Delaunay0115dd32020-07-28 11:51:20 +0200656config CMD_NVEDIT_LOAD
657 bool "env load"
658 help
659 Load all environment variables from the compiled-in persistent
660 storage.
661
Patrick Delaunaya97d22e2020-07-28 11:51:21 +0200662config CMD_NVEDIT_SELECT
663 bool "env select"
664 help
665 Select the compiled-in persistent storage of environment variables.
666
Simon Glass72a8cf82016-01-17 20:53:51 -0700667endmenu
668
669menu "Memory commands"
670
Mario Six55b25562018-03-28 14:39:18 +0200671config CMD_BINOP
672 bool "binop"
673 help
674 Compute binary operations (xor, or, and) of byte arrays of arbitrary
675 size from memory and store the result in memory or the environment.
676
Simon Glass4aed2272020-09-19 18:49:26 -0600677config CMD_BLOBLIST
678 bool "bloblist"
679 default y if BLOBLIST
680 help
681 Show information about the bloblist, a collection of binary blobs
682 held in memory that persist between SPL and U-Boot. In the case of
683 x86 devices the bloblist can be used to hold ACPI tables so that they
684 remain available in memory.
685
Simon Glass72a8cf82016-01-17 20:53:51 -0700686config CMD_CRC32
687 bool "crc32"
688 default y
Michal Simek5ed063d2018-07-23 15:55:13 +0200689 select HASH
Simon Glass72a8cf82016-01-17 20:53:51 -0700690 help
691 Compute CRC32.
692
Daniel Thompson221a9492017-05-19 17:26:58 +0100693config CRC32_VERIFY
694 bool "crc32 -v"
695 depends on CMD_CRC32
696 help
697 Add -v option to verify data against a crc32 checksum.
698
Simon Glassa1dc9802017-05-17 03:25:10 -0600699config CMD_EEPROM
700 bool "eeprom - EEPROM subsystem"
701 help
702 (deprecated, needs conversion to driver model)
703 Provides commands to read and write EEPROM (Electrically Erasable
704 Programmable Read Only Memory) chips that are connected over an
705 I2C bus.
706
707config CMD_EEPROM_LAYOUT
708 bool "Enable layout-aware eeprom commands"
709 depends on CMD_EEPROM
710 help
711 (deprecated, needs conversion to driver model)
712 When enabled, additional eeprom sub-commands become available.
713
714 eeprom print - prints the contents of the eeprom in a human-readable
715 way (eeprom layout fields, and data formatted to be fit for human
716 consumption).
717
718 eeprom update - allows user to update eeprom fields by specifying
719 the field name, and providing the new data in a human readable format
720 (same format as displayed by the eeprom print command).
721
722 Both commands can either auto detect the layout, or be told which
723 layout to use.
724
725 Feature API:
726 __weak int parse_layout_version(char *str)
727 - override to provide your own layout name parsing
728 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
729 int layout_version);
730 - override to setup the layout metadata based on the version
731 __weak int eeprom_layout_detect(unsigned char *data)
732 - override to provide your own algorithm for detecting layout
733 version
734 eeprom_field.c
735 - contains various printing and updating functions for common
736 types of eeprom fields. Can be used for defining
737 custom layouts.
738
739config EEPROM_LAYOUT_HELP_STRING
740 string "Tells user what layout names are supported"
741 depends on CMD_EEPROM_LAYOUT
742 default "<not defined>"
743 help
744 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
745 command's help.
746
Tom Rini88cd7d02021-08-17 17:59:45 -0400747config SYS_I2C_EEPROM_BUS
748 int "I2C bus of the EEPROM device."
749 depends on CMD_EEPROM
750 default 0
751
752config SYS_I2C_EEPROM_ADDR_LEN
753 int "Length in bytes of the EEPROM memory array address"
754 depends on CMD_EEPROM || ID_EEPROM
755 default 1
756 range 1 2
757 help
758 Note: This is NOT the chip address length!
759
760config SYS_EEPROM_SIZE
761 depends on CMD_EEPROM
762 int "Size in bytes of the EEPROM device"
763 default 256
764
765config SYS_EEPROM_PAGE_WRITE_BITS
766 int "Number of bits used to address bytes in a single page"
767 depends on CMD_EEPROM
768 default 8
769 help
770 The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS.
771 A 64 byte page, for example would require six bits.
772
773config SYS_EEPROM_PAGE_WRITE_DELAY_MS
774 int "Number of milliseconds to delay between page writes"
775 depends on CMD_EEPROM || CMD_I2C
776 default 0
777
Simon Glassba71be52017-08-04 16:34:51 -0600778config LOOPW
779 bool "loopw"
780 help
781 Infinite write loop on address range
782
Andre Przywarabea79d72017-03-15 01:19:05 +0000783config CMD_MD5SUM
784 bool "md5sum"
Andre Przywarabea79d72017-03-15 01:19:05 +0000785 select MD5
786 help
787 Compute MD5 checksum.
788
Daniel Thompson221a9492017-05-19 17:26:58 +0100789config MD5SUM_VERIFY
Andre Przywarabea79d72017-03-15 01:19:05 +0000790 bool "md5sum -v"
Andre Przywarabea79d72017-03-15 01:19:05 +0000791 depends on CMD_MD5SUM
792 help
793 Add -v option to verify data against an MD5 checksum.
794
Simon Glassba71be52017-08-04 16:34:51 -0600795config CMD_MEMINFO
796 bool "meminfo"
Daniel Thompson221a9492017-05-19 17:26:58 +0100797 help
Simon Glassba71be52017-08-04 16:34:51 -0600798 Display memory information.
Daniel Thompson221a9492017-05-19 17:26:58 +0100799
Simon Glassba71be52017-08-04 16:34:51 -0600800config CMD_MEMORY
801 bool "md, mm, nm, mw, cp, cmp, base, loop"
802 default y
Daniel Thompson221a9492017-05-19 17:26:58 +0100803 help
Simon Glassba71be52017-08-04 16:34:51 -0600804 Memory commands.
805 md - memory display
806 mm - memory modify (auto-incrementing address)
807 nm - memory modify (constant address)
808 mw - memory write (fill)
809 cp - memory copy
810 cmp - memory compare
811 base - print or set address offset
812 loop - initialize loop on address range
Simon Glass72a8cf82016-01-17 20:53:51 -0700813
Simon Glass550a9e72020-07-28 19:41:14 -0600814config CMD_MEM_SEARCH
Simon Glassbdded202020-06-02 19:26:49 -0600815 bool "ms - Memory search"
816 help
817 Memory-search command
818
819 This allows searching through a region of memory looking for hex
820 data (byte, 16-bit word, 32-bit long, also 64-bit on machines that
821 support it). It is also possible to search for a string. The
822 command accepts a memory range and a list of values to search for.
823 The values need to appear in memory in the same order they are given
824 in the command. At most 10 matches can be returned at a time, but
825 pressing return will show the next 10 matches. Environment variables
826 are set for use with scripting (memmatches, memaddr, mempos).
827
Joel Johnson72732312020-01-29 09:17:18 -0700828config CMD_MX_CYCLIC
Adam Ford78f28772019-08-14 07:54:34 -0500829 bool "Enable cyclic md/mw commands"
830 depends on CMD_MEMORY
831 help
832 Add the "mdc" and "mwc" memory commands. These are cyclic
833 "md/mw" commands.
834 Examples:
835
836 => mdc.b 10 4 500
837 This command will print 4 bytes (10,11,12,13) each 500 ms.
838
839 => mwc.l 100 12345678 10
840 This command will write 12345678 to address 100 all 10 ms.
841
Jean-Jacques Hiblot803e1a32019-07-02 14:23:26 +0200842config CMD_RANDOM
843 bool "random"
844 default y
845 depends on CMD_MEMORY && (LIB_RAND || LIB_HW_RAND)
846 help
847 random - fill memory with random data
848
Simon Glass72a8cf82016-01-17 20:53:51 -0700849config CMD_MEMTEST
850 bool "memtest"
851 help
852 Simple RAM read/write test.
853
Mario Sixe89f8aa2018-03-28 14:38:14 +0200854if CMD_MEMTEST
855
856config SYS_ALT_MEMTEST
857 bool "Alternative test"
858 help
859 Use a more complete alternative memory test.
860
Ralph Siemsen9989fb12020-09-09 12:10:00 -0400861if SYS_ALT_MEMTEST
862
863config SYS_ALT_MEMTEST_BITFLIP
864 bool "Bitflip test"
865 default y
866 help
867 The alternative memory test includes bitflip test since 2020.07.
868 The bitflip test significantly increases the overall test time.
869 Bitflip test can optionally be disabled here.
870
871endif
872
Ashok Reddy Soma702de892020-05-04 15:26:21 +0200873config SYS_MEMTEST_START
874 hex "default start address for mtest"
Tom Riniff27af12021-12-12 22:12:29 -0500875 default 0x0
Ashok Reddy Soma702de892020-05-04 15:26:21 +0200876 help
877 This is the default start address for mtest for simple read/write
878 test. If no arguments are given to mtest, default address is used
879 as start address.
880
881config SYS_MEMTEST_END
882 hex "default end address for mtest"
883 default 0x1000
884 help
885 This is the default end address for mtest for simple read/write
886 test. If no arguments are given to mtest, default address is used
887 as end address.
888
Mario Sixe89f8aa2018-03-28 14:38:14 +0200889endif
890
Simon Glassba71be52017-08-04 16:34:51 -0600891config CMD_SHA1SUM
892 bool "sha1sum"
893 select SHA1
Simon Glass72a8cf82016-01-17 20:53:51 -0700894 help
Simon Glassba71be52017-08-04 16:34:51 -0600895 Compute SHA1 checksum.
896
897config SHA1SUM_VERIFY
898 bool "sha1sum -v"
899 depends on CMD_SHA1SUM
900 help
901 Add -v option to verify data against a SHA1 checksum.
Simon Glass72a8cf82016-01-17 20:53:51 -0700902
Simon Glass00805d72017-08-04 16:34:52 -0600903config CMD_STRINGS
904 bool "strings - display strings in memory"
905 help
906 This works similarly to the Unix 'strings' command except that it
907 works with a memory range. String of printable characters found
908 within the range are displayed. The minimum number of characters
909 for a sequence to be considered a string can be provided.
910
Simon Glassee7c0e72017-05-17 03:25:43 -0600911endmenu
912
913menu "Compression commands"
914
915config CMD_LZMADEC
916 bool "lzmadec"
Tom Rini99e46df2017-09-29 14:32:44 -0400917 default y if CMD_BOOTI
Simon Glassee7c0e72017-05-17 03:25:43 -0600918 select LZMA
919 help
920 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
921 image from memory.
922
Yusuke Ashidukaa1732232020-02-20 20:48:01 +0900923config CMD_UNLZ4
924 bool "unlz4"
925 default y if CMD_BOOTI
926 select LZ4
927 help
928 Support decompressing an LZ4 image from memory region.
929
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900930config CMD_UNZIP
931 bool "unzip"
Tom Rini99e46df2017-09-29 14:32:44 -0400932 default y if CMD_BOOTI
Michael Walle56c311b2020-05-22 14:07:35 +0200933 select GZIP
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900934 help
935 Uncompress a zip-compressed memory region.
936
937config CMD_ZIP
938 bool "zip"
Michael Walleeff5a542020-05-22 14:07:36 +0200939 select GZIP_COMPRESSED
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900940 help
941 Compress a memory region with zlib deflate method.
942
Simon Glass72a8cf82016-01-17 20:53:51 -0700943endmenu
944
945menu "Device access commands"
946
Abdellatif El Khlifif16a48f2023-08-04 14:33:43 +0100947config CMD_ARMFFA
948 bool "Arm FF-A test command"
949 depends on ARM_FFA_TRANSPORT
950 help
951 Provides a test command for the FF-A support
952 supported options:
953 - Listing the partition(s) info
954 - Sending a data pattern to the specified partition
955 - Displaying the arm_ffa device info
956
Simon Glass0c19b4d2017-08-04 16:34:28 -0600957config CMD_ARMFLASH
958 #depends on FLASH_CFI_DRIVER
959 bool "armflash"
960 help
961 ARM Ltd reference designs flash partition access
962
Neil Armstrong051ebe32018-04-27 15:17:57 +0200963config CMD_ADC
964 bool "adc - Access Analog to Digital Converters info and data"
965 select ADC
Michal Simek6e741cf2020-08-19 10:44:17 +0200966 depends on DM_REGULATOR
Neil Armstrong051ebe32018-04-27 15:17:57 +0200967 help
968 Shows ADC device info and permit printing one-shot analog converted
969 data from a named Analog to Digital Converter.
970
Eugeniu Roscadb7b7a02019-05-23 17:32:22 +0200971config CMD_BCB
972 bool "bcb"
Eugeniu Roscadb7b7a02019-05-23 17:32:22 +0200973 depends on PARTITIONS
974 help
975 Read/modify/write the fields of Bootloader Control Block, usually
976 stored on the flash "misc" partition with its structure defined in:
977 https://android.googlesource.com/platform/bootable/recovery/+/master/
978 bootloader_message/include/bootloader_message/bootloader_message.h
979
980 Some real-life use-cases include (but are not limited to):
981 - Determine the "boot reason" (and act accordingly):
982 https://source.android.com/devices/bootloader/boot-reason
983 - Get/pass a list of commands from/to recovery:
984 https://android.googlesource.com/platform/bootable/recovery
985 - Inspect/dump the contents of the BCB fields
986
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +0200987config CMD_BIND
988 bool "bind/unbind - Bind or unbind a device to/from a driver"
989 depends on DM
Miquel Raynal249a75d2023-10-10 11:03:03 +0200990 imply CMD_DM
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +0200991 help
992 Bind or unbind a device to/from a driver from the command line.
993 This is useful in situations where a device may be handled by several
994 drivers. For example, this can be used to bind a UDC to the usb ether
995 gadget driver from the command line.
996
Simon Glassd3156282017-04-26 22:28:02 -0600997config CMD_CLK
998 bool "clk - Show clock frequencies"
999 help
1000 (deprecated)
1001 Shows clock frequences by calling a sock_clk_dump() hook function.
1002 This is depreated in favour of using the CLK uclass and accessing
1003 clock values from associated drivers. However currently no command
1004 exists for this.
1005
Simon Glass72a8cf82016-01-17 20:53:51 -07001006config CMD_DEMO
1007 bool "demo - Demonstration commands for driver model"
1008 depends on DM
1009 help
1010 Provides a 'demo' command which can be used to play around with
1011 driver model. To use this properly you will need to enable one or
1012 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
1013 Otherwise you will always get an empty list of devices. The demo
1014 devices are defined in the sandbox device tree, so the easiest
1015 option is to use sandbox and pass the -d point to sandbox's
1016 u-boot.dtb file.
1017
Simon Glass0c19b4d2017-08-04 16:34:28 -06001018config CMD_DFU
1019 bool "dfu"
Marek Vasut0f44d332018-02-16 16:41:17 +01001020 select DFU
Simon Glass0c19b4d2017-08-04 16:34:28 -06001021 help
1022 Enables the command "dfu" which is used to have U-Boot create a DFU
Simon Glass00fd59d2017-08-04 16:35:06 -06001023 class device via USB. This command requires that the "dfu_alt_info"
1024 environment variable be set and define the alt settings to expose to
1025 the host.
Simon Glass0c19b4d2017-08-04 16:34:28 -06001026
1027config CMD_DM
1028 bool "dm - Access to driver model information"
1029 depends on DM
Simon Glass0c19b4d2017-08-04 16:34:28 -06001030 help
1031 Provides access to driver model data structures and information,
1032 such as a list of devices, list of uclasses and the state of each
1033 device (e.g. activated). This is not required for operation, but
1034 can be useful to see the state of driver model for debugging or
1035 interest.
1036
Alex Kiernan312a10f2018-05-29 15:30:39 +00001037config CMD_FASTBOOT
1038 bool "fastboot - Android fastboot support"
1039 depends on FASTBOOT
1040 help
1041 This enables the command "fastboot" which enables the Android
1042 fastboot mode for the platform. Fastboot is a protocol for
1043 downloading images, flashing and device control used on
Alex Kiernanf73a7df2018-05-29 15:30:53 +00001044 Android devices. Fastboot requires either the network stack
1045 enabled or support for acting as a USB device.
Alex Kiernan312a10f2018-05-29 15:30:39 +00001046
Sam Protsenko586a1bf2020-01-24 17:53:44 +02001047 See doc/android/fastboot.rst for more information.
Alex Kiernan312a10f2018-05-29 15:30:39 +00001048
Simon Glass0c19b4d2017-08-04 16:34:28 -06001049config CMD_FLASH
1050 bool "flinfo, erase, protect"
1051 default y
Miquel Raynalff102c52019-10-25 19:39:30 +02001052 depends on MTD || FLASH_CFI_DRIVER || MTD_NOR_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001053 help
1054 NOR flash support.
1055 flinfo - print FLASH memory information
1056 erase - FLASH memory
1057 protect - enable or disable FLASH write protection
1058
1059config CMD_FPGA
1060 bool "fpga"
Tuomas Tynkkynena4fa8112018-01-27 20:28:40 +02001061 depends on FPGA
Simon Glass0c19b4d2017-08-04 16:34:28 -06001062 default y
1063 help
1064 FPGA support.
1065
1066config CMD_FPGA_LOADBP
1067 bool "fpga loadbp - load partial bitstream (Xilinx only)"
1068 depends on CMD_FPGA
1069 help
1070 Supports loading an FPGA device from a bitstream buffer containing
1071 a partial bitstream.
1072
1073config CMD_FPGA_LOADFS
1074 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
1075 depends on CMD_FPGA
1076 help
1077 Supports loading an FPGA device from a FAT filesystem.
1078
1079config CMD_FPGA_LOADMK
1080 bool "fpga loadmk - load bitstream from image"
1081 depends on CMD_FPGA
1082 help
1083 Supports loading an FPGA device from a image generated by mkimage.
1084
1085config CMD_FPGA_LOADP
1086 bool "fpga loadp - load partial bitstream"
1087 depends on CMD_FPGA
1088 help
1089 Supports loading an FPGA device from a bitstream buffer containing
1090 a partial bitstream.
1091
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +05301092config CMD_FPGA_LOAD_SECURE
Oleksandr Suvorovfb2b8852022-07-22 17:16:02 +03001093 bool "fpga loads - loads secure bitstreams"
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +05301094 depends on CMD_FPGA
Oleksandr Suvorovfb2b8852022-07-22 17:16:02 +03001095 select FPGA_LOAD_SECURE
Siva Durga Prasad Paladugucedd48e2018-05-31 15:10:22 +05301096 help
1097 Enables the fpga loads command which is used to load secure
1098 (authenticated or encrypted or both) bitstreams on to FPGA.
1099
Simon Glass0c19b4d2017-08-04 16:34:28 -06001100config CMD_FPGAD
1101 bool "fpgad - dump FPGA registers"
1102 help
1103 (legacy, needs conversion to driver model)
1104 Provides a way to dump FPGA registers by calling the board-specific
1105 fpga_get_reg() function. This functions similarly to the 'md'
1106 command.
1107
1108config CMD_FUSE
1109 bool "fuse - support for the fuse subssystem"
1110 help
1111 (deprecated - needs conversion to driver model)
1112 This allows reading, sensing, programming or overriding fuses
1113 which control the behaviour of the device. The command uses the
1114 fuse_...() API.
1115
1116config CMD_GPIO
1117 bool "gpio"
1118 help
1119 GPIO support.
1120
Diego Rondinidd2b8c12022-04-11 12:02:09 +02001121config CMD_GPIO_READ
1122 bool "gpio read - save GPIO value to variable"
1123 depends on CMD_GPIO
1124 help
1125 Enables the 'gpio read' command that saves the value
1126 of a GPIO pin to a variable.
1127
Pragnesh Patel9e9a5302020-12-22 11:30:05 +05301128config CMD_PWM
1129 bool "pwm"
1130 depends on DM_PWM
1131 help
1132 Control PWM channels, this allows invert/config/enable/disable PWM channels.
1133
Simon Glass0c19b4d2017-08-04 16:34:28 -06001134config CMD_GPT
1135 bool "GPT (GUID Partition Table) command"
Simon Glass0c19b4d2017-08-04 16:34:28 -06001136 select EFI_PARTITION
Michal Simek5ed063d2018-07-23 15:55:13 +02001137 select PARTITION_UUIDS
Maxime Ripard47738ac2017-08-24 11:52:32 +02001138 imply RANDOM_UUID
Simon Glass0c19b4d2017-08-04 16:34:28 -06001139 help
1140 Enable the 'gpt' command to ready and write GPT style partition
1141 tables.
1142
1143config CMD_GPT_RENAME
1144 bool "GPT partition renaming commands"
1145 depends on CMD_GPT
1146 help
1147 Enables the 'gpt' command to interchange names on two GPT
1148 partitions via the 'gpt swap' command or to rename single
1149 partitions via the 'rename' command.
1150
Simon Glass75eb9972017-05-17 03:25:29 -06001151config CMD_IDE
1152 bool "ide - Support for IDE drivers"
Simon Glassfc843a02017-05-17 03:25:30 -06001153 select IDE
Simon Glass75eb9972017-05-17 03:25:29 -06001154 help
1155 Provides an 'ide' command which allows accessing the IDE drive,
Vagrant Cascadian1107b062021-12-21 13:06:56 -08001156 resetting the IDE interface, printing the partition table and
Simon Glass75eb9972017-05-17 03:25:29 -06001157 geting device info. It also enables the 'diskboot' command which
1158 permits booting from an IDE drive.
1159
Simon Glass594e8d12017-05-17 03:25:34 -06001160config CMD_IO
1161 bool "io - Support for performing I/O accesses"
1162 help
1163 Provides an 'iod' command to display I/O space and an 'iow' command
1164 to write values to the I/O space. This can be useful for manually
1165 checking the state of devices during boot when debugging device
1166 drivers, etc.
1167
Simon Glass7d0f5c12017-05-17 03:25:36 -06001168config CMD_IOTRACE
1169 bool "iotrace - Support for tracing I/O activity"
1170 help
1171 Provides an 'iotrace' command which supports recording I/O reads and
1172 writes in a trace buffer in memory . It also maintains a checksum
1173 of the trace records (even if space is exhausted) so that the
1174 sequence of I/O accesses can be verified.
1175
1176 When debugging drivers it is useful to see what I/O accesses were
1177 done and in what order.
1178
1179 Even if the individual accesses are of little interest it can be
1180 useful to verify that the access pattern is consistent each time
1181 an operation is performed. In this case a checksum can be used to
1182 characterise the operation of a driver. The checksum can be compared
1183 across different runs of the operation to verify that the driver is
1184 working properly.
1185
1186 In particular, when performing major refactoring of the driver, where
1187 the access pattern should not change, the checksum provides assurance
1188 that the refactoring work has not broken the driver.
1189
1190 This works by sneaking into the io.h heder for an architecture and
1191 redirecting I/O accesses through iotrace's tracing mechanism.
1192
1193 For now no commands are provided to examine the trace buffer. The
1194 format is fairly simple, so 'md' is a reasonable substitute.
1195
1196 Note: The checksum feature is only useful for I/O regions where the
1197 contents do not change outside of software control. Where this is not
1198 suitable you can fall back to manually comparing the addresses. It
1199 might be useful to enhance tracing to only checksum the accesses and
1200 not the data read/written.
1201
Simon Glass0c19b4d2017-08-04 16:34:28 -06001202config CMD_I2C
1203 bool "i2c"
1204 help
1205 I2C support.
1206
Eugen Hristevd05266f2018-09-18 10:35:33 +03001207config CMD_W1
1208 depends on W1
1209 default y if W1
1210 bool "w1 - Support for Dallas 1-Wire protocol"
1211 help
1212 Dallas 1-wire protocol support
1213
Simon Glass72a8cf82016-01-17 20:53:51 -07001214config CMD_LOADB
1215 bool "loadb"
1216 default y
1217 help
1218 Load a binary file over serial line.
1219
Rui Miguel Silvabfef72e2022-05-11 10:55:40 +01001220config CMD_LOADM
1221 bool "loadm"
1222 help
1223 Load a binary over memory mapped.
1224
Simon Glass72a8cf82016-01-17 20:53:51 -07001225config CMD_LOADS
Tom Rini2c8d04d2022-10-28 20:27:02 -04001226 bool "loads - Load a file over serial in S-Record format"
Simon Glass72a8cf82016-01-17 20:53:51 -07001227 default y
1228 help
1229 Load an S-Record file over serial line
1230
Tom Rini2c8d04d2022-10-28 20:27:02 -04001231config LOADS_ECHO
1232 bool "Echo all characters received during a loads back to console"
1233 depends on CMD_LOADS
1234 help
1235 If enabled, all characters received during a serial download (using
1236 the "loads" command) are echoed back. This might be needed by some
1237 terminal emulations (like "cu"), but may as well just take time on
1238 others. This sets the initial value of the "loads_echo" environment
1239 variable to 1.
1240
1241config CMD_SAVES
1242 bool "saves - Save a file over serial in S-Record format"
Ying Sunaadc1a62023-06-25 16:24:47 +08001243 depends on CMD_LOADS
Tom Rini2c8d04d2022-10-28 20:27:02 -04001244 help
1245 Provides a way to save a binary file using the Motorola S-Record
1246 format over the serial line.
1247
1248config SYS_LOADS_BAUD_CHANGE
1249 bool "Enable a temporary baudrate change during loads/saves command"
1250 depends on CMD_LOADS || CMD_SAVES
1251
Pali Rohár1b3e6822022-08-27 16:37:55 +02001252config CMD_LOADXY_TIMEOUT
1253 int "loadxy_timeout"
1254 range 0 2000
1255 default 90
1256 help
1257 Initial timeout for loadx and loady commands. Zero means infinity.
1258
Niel Fouriee3697902020-03-30 17:22:58 +02001259config CMD_LSBLK
1260 depends on BLK
1261 bool "lsblk - list block drivers and devices"
1262 help
1263 Print list of available block device drivers, and for each, the list
1264 of known block devices.
1265
Marek Szyprowski750c5432020-12-23 13:55:15 +01001266config CMD_MBR
1267 bool "MBR (Master Boot Record) command"
1268 select DOS_PARTITION
Marek Szyprowski750c5432020-12-23 13:55:15 +01001269 help
1270 Enable the 'mbr' command to ready and write MBR (Master Boot Record)
1271 style partition tables.
1272
Bin Meng3bc0db12020-10-14 14:34:52 +08001273config CMD_MISC
1274 bool "misc"
1275 depends on MISC
1276 help
1277 Enable the command "misc" for accessing miscellaneous devices with
1278 a MISC uclass driver. The command provides listing all MISC devices
1279 as well as read and write functionalities via their drivers.
1280
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001281config CMD_MMC
1282 bool "mmc"
Heinrich Schuchardtec611872021-03-27 11:43:54 +01001283 depends on MMC
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001284 help
1285 MMC memory mapped support.
1286
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001287if CMD_MMC
1288
1289config CMD_BKOPS_ENABLE
1290 bool "mmc bkops enable"
1291 depends on CMD_MMC
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001292 help
1293 Enable command for setting manual background operations handshake
1294 on a eMMC device. The feature is optionally available on eMMC devices
1295 conforming to standard >= 4.41.
1296
Marek Vasutb5f40392023-10-31 13:20:17 +01001297config CMD_MMC_REG
1298 bool "Enable support for reading card registers in the mmc command"
1299 depends on CMD_MMC
1300 help
1301 Enable the commands for reading card registers. This is useful
1302 mostly for debugging or extracting details from the card.
1303
Alex Kiernan5a7b11e2018-05-08 04:43:31 +00001304config CMD_MMC_RPMB
1305 bool "Enable support for RPMB in the mmc command"
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001306 depends on SUPPORT_EMMC_RPMB
Alex Kiernan5a7b11e2018-05-08 04:43:31 +00001307 help
1308 Enable the commands for reading, writing and programming the
1309 key for the Replay Protection Memory Block partition in eMMC.
1310
Alex Kiernanc232d142018-05-29 15:30:52 +00001311config CMD_MMC_SWRITE
1312 bool "mmc swrite"
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001313 depends on MMC_WRITE
Alex Kiernanc232d142018-05-29 15:30:52 +00001314 select IMAGE_SPARSE
1315 help
1316 Enable support for the "mmc swrite" command to write Android sparse
1317 images to eMMC.
1318
Heinrich Schuchardt453d2132020-03-31 17:39:28 +00001319endif
1320
John Chau4a4830c2020-07-02 12:01:21 +08001321config CMD_CLONE
1322 bool "clone"
1323 depends on BLK
1324 help
1325 Enable storage cloning over block devices, useful for
1326 initial flashing by external block device without network
1327 or usb support.
1328
Ruchika Guptabcc6c572020-10-23 13:39:33 +05301329config CMD_OPTEE_RPMB
1330 bool "Enable read/write support on RPMB via OPTEE"
1331 depends on SUPPORT_EMMC_RPMB && OPTEE
1332 help
1333 Enable the commands for reading, writing persistent named values
1334 in the Replay Protection Memory Block partition in eMMC by
1335 using Persistent Objects in OPTEE
1336
Miquel Raynal5db66b32018-09-29 12:58:28 +02001337config CMD_MTD
1338 bool "mtd"
Miquel Raynalff102c52019-10-25 19:39:30 +02001339 depends on MTD
Miquel Raynal5db66b32018-09-29 12:58:28 +02001340 select MTD_PARTITIONS
1341 help
1342 MTD commands support.
1343
Pratyush Yadav05115ab2020-10-16 16:16:35 +05301344config CMD_MUX
1345 bool "mux"
1346 depends on MULTIPLEXER
1347 help
1348 List, select, and deselect mux controllers on the fly.
1349
Simon Glass72a8cf82016-01-17 20:53:51 -07001350config CMD_NAND
1351 bool "nand"
Maxime Ripard522c2822017-03-03 15:13:30 +01001352 default y if NAND_SUNXI
Miquel Raynalff102c52019-10-25 19:39:30 +02001353 depends on MTD_RAW_NAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001354 help
1355 NAND support.
1356
Boris Brezillone915d202017-02-27 18:22:07 +01001357if CMD_NAND
1358config CMD_NAND_TRIMFFS
1359 bool "nand write.trimffs"
Hans de Goeded482a8d2017-02-27 18:22:10 +01001360 default y if ARCH_SUNXI
Boris Brezillone915d202017-02-27 18:22:07 +01001361 help
1362 Allows one to skip empty pages when flashing something on a NAND.
1363
1364config CMD_NAND_LOCK_UNLOCK
1365 bool "nand lock/unlock"
1366 help
1367 NAND locking support.
1368
1369config CMD_NAND_TORTURE
1370 bool "nand torture"
1371 help
1372 NAND torture support.
1373
1374endif # CMD_NAND
1375
Zhikang Zhang0adc38b2017-08-03 02:30:59 -07001376config CMD_NVME
1377 bool "nvme"
1378 depends on NVME
1379 default y if NVME
1380 help
1381 NVM Express device support
1382
Simon Glass978f0852017-08-04 16:34:31 -06001383config CMD_ONENAND
1384 bool "onenand - access to onenand device"
Miquel Raynalff102c52019-10-25 19:39:30 +02001385 depends on MTD
Simon Glass978f0852017-08-04 16:34:31 -06001386 help
1387 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
1388 various useful features. This command allows reading, writing,
1389 and erasing blocks. It allso provides a way to show and change
1390 bad blocks, and test the device.
1391
Tom Rinidd4bf242022-06-15 12:03:51 -04001392config USE_ONENAND_BOARD_INIT
1393 bool "Call onenand_board_init() in the onenand command"
1394 depends on CMD_ONENAND
1395
Mario Six3bf65cb2018-09-27 09:19:34 +02001396config CMD_OSD
1397 bool "osd"
1398 help
1399 Enable the 'osd' command which allows to query information from and
1400 write text data to a on-screen display (OSD) device; a virtual device
1401 associated with a display capable of displaying a text overlay on the
1402 display it's associated with..
1403
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001404config CMD_PART
1405 bool "part"
AKASHI Takahiro64efbd12022-04-22 10:44:30 +09001406 depends on PARTITIONS
Michal Simek5ed063d2018-07-23 15:55:13 +02001407 select PARTITION_UUIDS
Patrick Delaunayb331cd62017-01-27 11:00:42 +01001408 help
1409 Read and display information about the partition table on
1410 various media.
1411
Simon Glass6500ec72017-08-04 16:34:34 -06001412config CMD_PCI
1413 bool "pci - Access PCI devices"
1414 help
1415 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
1416 used on some devices to allow the CPU to communicate with its
1417 peripherals. Sub-commands allow bus enumeration, displaying and
1418 changing configuration space and a few other features.
1419
Stephen Carlson59b1c9b2023-03-10 11:07:13 -08001420config CMD_PCI_MPS
1421 bool "pci_mps - Configure PCI device MPS"
1422 depends on PCI
1423 help
1424 Enables PCI Express Maximum Packet Size (MPS) tuning. This
1425 command configures the PCI Express MPS of each endpoint to the
1426 largest value supported by all devices below the root complex.
1427 The Maximum Read Request Size will not be altered. This method is
1428 the same algorithm as used by Linux pci=pcie_bus_safe.
1429
Patrice Chotardd5a83132018-10-24 14:10:17 +02001430config CMD_PINMUX
1431 bool "pinmux - show pins muxing"
Marek Behúna70abcf2021-02-09 21:23:47 +01001432 depends on PINCTRL
Patrice Chotardd5a83132018-10-24 14:10:17 +02001433 default y if PINCTRL
1434 help
1435 Parse all available pin-controllers and show pins muxing. This
1436 is useful for debug purpoer to check the pin muxing and to know if
1437 a pin is configured as a GPIO or as an alternate function.
1438
Adam Ford577c40a2018-09-09 07:05:57 -05001439config CMD_POWEROFF
1440 bool "poweroff"
1441 help
1442 Poweroff/Shutdown the system
1443
Simon Glassb75dfd22017-08-04 16:34:39 -06001444config CMD_READ
1445 bool "read - Read binary data from a partition"
1446 help
1447 Provides low-level access to the data in a partition.
1448
Simon Glass72a8cf82016-01-17 20:53:51 -07001449config CMD_REMOTEPROC
1450 bool "remoteproc"
1451 depends on REMOTEPROC
1452 help
1453 Support for Remote Processor control
1454
Simon Glass3bf926c2017-06-14 21:28:24 -06001455config CMD_SATA
1456 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -06001457 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -06001458 help
1459 SATA (Serial Advanced Technology Attachment) is a serial bus
1460 standard for connecting to hard drives and other storage devices.
1461 This command provides information about attached devices and allows
1462 reading, writing and other operations.
1463
1464 SATA replaces PATA (originally just ATA), which stands for Parallel AT
1465 Attachment, where AT refers to an IBM AT (Advanced Technology)
1466 computer released in 1984.
1467
Heinrich Schuchardt0c3fecd2018-02-14 08:05:44 +01001468config CMD_SCSI
1469 bool "scsi - Access to SCSI devices"
Heinrich Schuchardtfa3f0cb2023-03-26 19:10:38 +02001470 depends on SCSI
1471 default y
Heinrich Schuchardt0c3fecd2018-02-14 08:05:44 +01001472 help
1473 This provides a 'scsi' command which provides access to SCSI (Small
1474 Computer System Interface) devices. The command provides a way to
1475 scan the bus, reset the bus, read and write data and get information
1476 about devices.
1477
Simon Glassefce2442017-08-04 16:34:45 -06001478config CMD_SDRAM
1479 bool "sdram - Print SDRAM configuration information"
1480 help
1481 Provides information about attached SDRAM. This assumed that the
1482 SDRAM has an EEPROM with information that can be read using the
1483 I2C bus. This is only available on some boards.
1484
Simon Glass0c19b4d2017-08-04 16:34:28 -06001485config CMD_SF
1486 bool "sf"
Tom Rinia4298dd2019-05-29 17:01:28 -04001487 depends on DM_SPI_FLASH || SPI_FLASH
Jagan Tekic2af7fb2019-10-16 17:59:42 +05301488 default y if DM_SPI_FLASH
Simon Glass0c19b4d2017-08-04 16:34:28 -06001489 help
1490 SPI Flash support
1491
Simon Glass719d36e2017-08-04 16:34:46 -06001492config CMD_SF_TEST
1493 bool "sf test - Allow testing of SPI flash"
Tom Rinia4298dd2019-05-29 17:01:28 -04001494 depends on CMD_SF
Simon Glass719d36e2017-08-04 16:34:46 -06001495 help
1496 Provides a way to test that SPI flash is working correctly. The
1497 test is destructive, in that an area of SPI flash must be provided
1498 for the test to use. Performance information is also provided,
1499 measuring the performance of reading, writing and erasing in
1500 Mbps (Million Bits Per Second). This value should approximately
1501 equal the SPI bus speed for a single-bit-wide SPI bus, assuming
1502 everything is working properly.
1503
Simon Glass0c19b4d2017-08-04 16:34:28 -06001504config CMD_SPI
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001505 bool "sspi - Command to access spi device"
Tom Rinia4298dd2019-05-29 17:01:28 -04001506 depends on SPI
Simon Glass0c19b4d2017-08-04 16:34:28 -06001507 help
1508 SPI utility command.
1509
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001510config DEFAULT_SPI_BUS
1511 int "default spi bus used by sspi command"
1512 depends on CMD_SPI
1513 default 0
1514
1515config DEFAULT_SPI_MODE
1516 hex "default spi mode used by sspi command (see include/spi.h)"
1517 depends on CMD_SPI
Tom Rinia077ac12023-08-02 11:09:43 -04001518 default 0x0
Patrick Delaunayc95e6322019-02-27 15:20:37 +01001519
Robert Marko7f673bb2022-09-06 13:30:33 +02001520config CMD_TEMPERATURE
1521 bool "temperature - display the temperature from thermal sensors"
1522 depends on DM_THERMAL
1523 help
1524 Provides a way to list thermal sensors and to get their readings.
1525
Simon Glass5605aa82017-08-04 16:35:00 -06001526config CMD_TSI148
1527 bool "tsi148 - Command to access tsi148 device"
1528 help
1529 This provides various sub-commands to initialise and configure the
1530 Turndra tsi148 device. See the command help for full details.
1531
Faiz Abbasa539c8b2019-10-15 18:24:40 +05301532config CMD_UFS
Bin Mengff039a82023-10-11 21:15:46 +08001533 bool "ufs - Universal Flash Storage commands"
Faiz Abbasa539c8b2019-10-15 18:24:40 +05301534 depends on UFS
1535 help
1536 "This provides commands to initialise and configure universal flash
1537 subsystem devices"
1538
Simon Glass2a242e32017-08-04 16:35:01 -06001539config CMD_UNIVERSE
1540 bool "universe - Command to set up the Turndra Universe controller"
1541 help
1542 This allows setting up the VMEbus provided by this controller.
1543 See the command help for full details.
1544
Simon Glass0c19b4d2017-08-04 16:34:28 -06001545config CMD_USB
1546 bool "usb"
Tom Rinie8d3eaa2021-07-09 10:11:55 -04001547 depends on USB_HOST
Simon Glass0c19b4d2017-08-04 16:34:28 -06001548 help
1549 USB support.
1550
Stefan Agner2f005692017-08-16 11:00:53 -07001551config CMD_USB_SDP
1552 bool "sdp"
1553 select USB_FUNCTION_SDP
1554 help
1555 Enables the command "sdp" which is used to have U-Boot emulating the
1556 Serial Download Protocol (SDP) via USB.
Michal Simek6e7bdde2018-07-23 15:55:12 +02001557
Johan Jonkeraacf2142023-10-18 16:01:40 +02001558config CMD_RKMTD
1559 bool "rkmtd"
1560 select RKMTD
1561 help
1562 Enable the command "rkmtd" to create a virtual block device to transfer
1563 Rockchip boot block data to and from NAND with block orientated tools
1564 like "ums" and "rockusb".
1565
Eddie Cai453c95e2017-12-15 08:17:11 +08001566config CMD_ROCKUSB
1567 bool "rockusb"
1568 depends on USB_FUNCTION_ROCKUSB
1569 help
Michal Simek6e7bdde2018-07-23 15:55:12 +02001570 Rockusb protocol is widely used by Rockchip SoC based devices. It can
Eddie Cai453c95e2017-12-15 08:17:11 +08001571 read/write info, image to/from devices. This enable rockusb command
1572 support to communication with rockusb device. for more detail about
1573 this command, please read doc/README.rockusb.
Stefan Agner2f005692017-08-16 11:00:53 -07001574
Simon Glass0c19b4d2017-08-04 16:34:28 -06001575config CMD_USB_MASS_STORAGE
1576 bool "UMS usb mass storage"
Tom Rini123dc512021-05-22 08:47:16 -04001577 depends on USB_GADGET_DOWNLOAD
Lukasz Majewskie4d46042018-01-29 19:28:02 +01001578 select USB_FUNCTION_MASS_STORAGE
Patrick Delaunay6b8d9c92021-06-04 18:51:46 +02001579 depends on BLK && USB_GADGET
Simon Glass0c19b4d2017-08-04 16:34:28 -06001580 help
Patrick Delaunay6b8d9c92021-06-04 18:51:46 +02001581 Enables the command "ums" and the USB mass storage support to the
1582 export a block device: U-Boot, the USB device, acts as a simple
1583 external hard drive plugged on the host USB port.
Simon Glass0c19b4d2017-08-04 16:34:28 -06001584
Svyatoslav Ryhela57adac2023-03-20 21:01:43 +02001585config CMD_UMS_ABORT_KEYED
1586 bool "UMS abort with any key"
1587 depends on CMD_USB_MASS_STORAGE
1588 help
1589 Allow interruption of usb mass storage run with any key pressed.
1590
Anastasiia Lukianenko722bc5b2020-08-06 12:42:55 +03001591config CMD_PVBLOCK
1592 bool "Xen para-virtualized block device"
1593 depends on XEN
1594 select PVBLOCK
1595 help
1596 Xen para-virtualized block device support
1597
Tuomas Tynkkynen78e12902018-10-15 02:21:12 -07001598config CMD_VIRTIO
1599 bool "virtio"
1600 depends on VIRTIO
1601 default y if VIRTIO
1602 help
1603 VirtIO block device support
1604
Michael Walle82a00be2019-04-06 02:24:02 +02001605config CMD_WDT
1606 bool "wdt"
1607 depends on WDT
1608 help
1609 This provides commands to control the watchdog timer devices.
1610
Rasmus Villemoes8311ac52023-03-02 09:12:22 +01001611config CMD_WRITE
1612 bool "write - Write binary data to a partition"
1613 help
1614 Provides low-level write access to a partition.
1615
Mario Six37c4a5f2018-08-09 14:51:21 +02001616config CMD_AXI
1617 bool "axi"
1618 depends on AXI
1619 help
1620 Enable the command "axi" for accessing AXI (Advanced eXtensible
1621 Interface) busses, a on-chip interconnect specification for managing
1622 functional blocks in SoC designs, which is also often used in designs
1623 involving FPGAs (e.g. communication with IP cores in Xilinx FPGAs).
Simon Glass72a8cf82016-01-17 20:53:51 -07001624endmenu
1625
1626
1627menu "Shell scripting commands"
1628
Roger Knecht690a1d62022-09-03 11:34:53 +00001629config CMD_CAT
1630 bool "cat"
1631 help
1632 Print file to standard output
1633
Simon Glass72a8cf82016-01-17 20:53:51 -07001634config CMD_ECHO
1635 bool "echo"
1636 default y
1637 help
1638 Echo args to console
1639
1640config CMD_ITEST
1641 bool "itest"
1642 default y
1643 help
1644 Return true/false on integer compare.
1645
1646config CMD_SOURCE
1647 bool "source"
1648 default y
1649 help
1650 Run script from memory
1651
1652config CMD_SETEXPR
1653 bool "setexpr"
1654 default y
1655 help
1656 Evaluate boolean and math expressions and store the result in an env
1657 variable.
1658 Also supports loading the value at a memory location into a variable.
1659 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
1660
Roland Gaudigf4f8d8b2021-07-23 12:29:21 +00001661config CMD_SETEXPR_FMT
1662 bool "setexpr_fmt"
Roland Gaudigf4f8d8b2021-07-23 12:29:21 +00001663 depends on CMD_SETEXPR
1664 help
1665 Evaluate format string expression and store result in an environment
1666 variable.
1667
Roger Knechtc3b27a82023-09-07 14:51:43 +00001668config CMD_XXD
1669 bool "xxd"
1670 help
1671 Print file as hexdump to standard output
1672
Simon Glass72a8cf82016-01-17 20:53:51 -07001673endmenu
1674
Ruslan Trofymenko17030c72019-07-05 15:37:33 +03001675menu "Android support commands"
1676
1677config CMD_AB_SELECT
1678 bool "ab_select"
Ruslan Trofymenko17030c72019-07-05 15:37:33 +03001679 depends on ANDROID_AB
1680 help
1681 On Android devices with more than one boot slot (multiple copies of
1682 the kernel and system images) this provides a command to select which
1683 slot should be used to boot from and register the boot attempt. This
1684 is used by the new A/B update model where one slot is updated in the
1685 background while running from the other slot.
1686
1687endmenu
1688
Michal Simek3b3ea2c2018-02-26 16:01:02 +01001689if NET
1690
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001691menuconfig CMD_NET
1692 bool "Network commands"
1693 default y
1694
1695if CMD_NET
1696
1697config CMD_BOOTP
1698 bool "bootp"
Simon Glass72a8cf82016-01-17 20:53:51 -07001699 default y
1700 help
Simon Glass72a8cf82016-01-17 20:53:51 -07001701 bootp - boot image via network using BOOTP/TFTP protocol
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001702
Joe Hershbergere88b2562018-04-13 15:26:33 -05001703config CMD_DHCP
1704 bool "dhcp"
1705 depends on CMD_BOOTP
1706 help
1707 Boot image via network using DHCP/TFTP protocol
1708
Sean Edmond7d018892023-04-11 10:48:47 -07001709config CMD_DHCP6
1710 bool "dhcp6"
1711 depends on IPV6
1712 help
1713 Boot image via network using DHCPv6/TFTP protocol using IPv6.
1714
1715 Will perform 4-message exchange with DHCPv6 server, requesting
1716 the minimum required options to TFTP boot. Complies with RFC 8415.
1717
Tom Rinia542e432022-02-25 11:19:50 -05001718config BOOTP_MAY_FAIL
1719 bool "Allow for the BOOTP/DHCP server to not be found"
1720 depends on CMD_BOOTP
1721 help
1722 If the DHCP server is not found after the configured retry count, the
1723 call will fail instead of starting over. This can be used to fail
1724 over to Link-local IP address configuration if the DHCP server is not
1725 available.
1726
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001727config BOOTP_BOOTPATH
Joe Hershberger8df69d92018-04-13 15:26:34 -05001728 bool "Request & store 'rootpath' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001729 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001730 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001731 help
1732 Even though the config is called BOOTP_BOOTPATH, it stores the
1733 path in the variable 'rootpath'.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001734
Tom Rinia542e432022-02-25 11:19:50 -05001735config BOOTP_VENDOREX
1736 bool "Support vendor extensions from BOOTP/DHCP server"
1737 depends on CMD_BOOTP
1738
1739config BOOTP_BOOTFILESIZE
1740 bool "Request & store 'bootfilesize' from BOOTP/DHCP server"
1741 depends on CMD_BOOTP
1742
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001743config BOOTP_DNS
Joe Hershberger8df69d92018-04-13 15:26:34 -05001744 bool "Request & store 'dnsip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001745 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001746 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001747 help
1748 The primary DNS server is stored as 'dnsip'. If two servers are
1749 returned, you must set BOOTP_DNS2 to store that second server IP
1750 also.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001751
Joe Hershberger80449c02018-04-13 15:26:35 -05001752config BOOTP_DNS2
1753 bool "Store 'dnsip2' from BOOTP/DHCP server"
1754 depends on BOOTP_DNS
1755 help
1756 If a DHCP client requests the DNS server IP from a DHCP server,
1757 it is possible that more than one DNS serverip is offered to the
1758 client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
1759 server IP will be stored in the additional environment
1760 variable "dnsip2". The first DNS serverip is always
1761 stored in the variable "dnsip", when BOOTP_DNS is defined.
1762
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001763config BOOTP_GATEWAY
Joe Hershberger8df69d92018-04-13 15:26:34 -05001764 bool "Request & store 'gatewayip' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001765 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001766 depends on CMD_BOOTP
1767
1768config BOOTP_HOSTNAME
Joe Hershberger8df69d92018-04-13 15:26:34 -05001769 bool "Request & store 'hostname' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001770 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001771 depends on CMD_BOOTP
Joe Hershberger8df69d92018-04-13 15:26:34 -05001772 help
1773 The name may or may not be qualified with the local domain name.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001774
Alexander Grafbdce3402018-06-15 10:29:28 +02001775config BOOTP_PREFER_SERVERIP
1776 bool "serverip variable takes precedent over DHCP server IP."
1777 depends on CMD_BOOTP
1778 help
1779 By default a BOOTP/DHCP reply will overwrite the 'serverip' variable.
1780
1781 With this option enabled, the 'serverip' variable in the environment
1782 takes precedence over DHCP server IP and will only be set by the DHCP
1783 server if not already set in the environment.
1784
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001785config BOOTP_SUBNETMASK
Joe Hershberger8df69d92018-04-13 15:26:34 -05001786 bool "Request & store 'netmask' from BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001787 default y
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001788 depends on CMD_BOOTP
1789
Tom Rinia542e432022-02-25 11:19:50 -05001790config BOOTP_NISDOMAIN
1791 bool "Request & store 'nisdomain' from BOOTP/DHCP server"
1792 depends on CMD_BOOTP
1793
Chris Packham9b23c732018-05-03 20:19:02 +12001794config BOOTP_NTPSERVER
1795 bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
1796 depends on CMD_BOOTP
1797
Tom Rinia542e432022-02-25 11:19:50 -05001798config BOOTP_TIMEOFFSET
1799 bool "Request & store 'timeoffset' from BOOTP/DHCP server"
1800 depends on CMD_BOOTP && CMD_SNTP
1801
Ramon Fried3eaac632019-07-18 21:43:30 +03001802config CMD_PCAP
1803 bool "pcap capture"
1804 help
1805 Selecting this will allow capturing all Ethernet packets and store
1806 them in physical memory in a PCAP formated file,
1807 later to be analyzed by PCAP reader application (IE. WireShark).
1808
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001809config BOOTP_PXE
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001810 bool "Send PXE client arch to BOOTP/DHCP server"
Joe Hershberger3dfbc532018-04-13 15:26:37 -05001811 default y
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001812 depends on CMD_BOOTP && CMD_PXE
1813 help
1814 Supported for ARM, ARM64, and x86 for now.
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001815
1816config BOOTP_PXE_CLIENTARCH
1817 hex
Joe Hershberger2b9f4862018-04-13 15:26:36 -05001818 depends on BOOTP_PXE
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001819 default 0x16 if ARM64
1820 default 0x15 if ARM
Tom Rinia077ac12023-08-02 11:09:43 -04001821 default 0x0 if X86
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001822
Sean Edmond91953952023-07-25 16:20:30 -07001823config BOOTP_PXE_DHCP_OPTION
1824 bool "Request & store 'pxe_configfile' from BOOTP/DHCP server"
1825 depends on BOOTP_PXE
1826
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001827config BOOTP_VCI_STRING
1828 string
1829 depends on CMD_BOOTP
Michal Simek4bbd6b12018-04-26 18:21:29 +05301830 default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001831 default "U-Boot.armv8" if ARM64
1832 default "U-Boot.arm" if ARM
1833 default "U-Boot"
1834
Sean Edmond7d018892023-04-11 10:48:47 -07001835if CMD_DHCP6
1836
1837config DHCP6_PXE_CLIENTARCH
1838 hex
1839 default 0x16 if ARM64
1840 default 0x15 if ARM
1841 default 0xFF
1842
1843config DHCP6_PXE_DHCP_OPTION
1844 bool "Request & store 'pxe_configfile' from DHCP6 server"
1845
1846config DHCP6_ENTERPRISE_ID
1847 int "Enterprise ID to send in DHCPv6 Vendor Class Option"
1848 default 0
1849
1850endif
1851
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001852config CMD_TFTPBOOT
1853 bool "tftpboot"
1854 default y
1855 help
Heinrich Schuchardt651031e2022-09-04 09:08:11 +02001856 tftpboot - load file via network using TFTP protocol
Simon Glass72a8cf82016-01-17 20:53:51 -07001857
1858config CMD_TFTPPUT
1859 bool "tftp put"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001860 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001861 help
1862 TFTP put command, for uploading files to a server
1863
1864config CMD_TFTPSRV
1865 bool "tftpsrv"
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05001866 depends on CMD_TFTPBOOT
Simon Glass72a8cf82016-01-17 20:53:51 -07001867 help
1868 Act as a TFTP server and boot the first received file
1869
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001870config NET_TFTP_VARS
1871 bool "Control TFTP timeout and count through environment"
1872 depends on CMD_TFTPBOOT
1873 default y
1874 help
1875 If set, allows controlling the TFTP timeout through the
1876 environment variable tftptimeout, and the TFTP maximum
1877 timeout count through the variable tftptimeoutcountmax.
1878 If unset, timeout and maximum are hard-defined as 1 second
1879 and 10 timouts per TFTP transfer.
1880
Simon Glass72a8cf82016-01-17 20:53:51 -07001881config CMD_RARP
1882 bool "rarpboot"
1883 help
1884 Boot image via network using RARP/TFTP protocol
1885
Simon Glass72a8cf82016-01-17 20:53:51 -07001886config CMD_NFS
1887 bool "nfs"
Simon Glass72a8cf82016-01-17 20:53:51 -07001888 help
1889 Boot image via network using NFS protocol.
1890
Tom Rinieeda7622022-03-11 09:12:05 -05001891config NFS_TIMEOUT
1892 int "Timeout in milliseconds for NFS mounts"
1893 depends on CMD_NFS
1894 default 2000
1895 help
1896 Timeout in milliseconds used in NFS protocol. If you encounter
1897 "ERROR: Cannot umount" in nfs command, try longer timeout such as
1898 10000.
1899
Tom Rinibf904ea2022-06-13 22:57:35 -04001900config SYS_DISABLE_AUTOLOAD
1901 bool "Disable automatically loading files over the network"
1902 depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP
1903 help
1904 Typically, commands such as "dhcp" will attempt to automatically
1905 load a file from the network, once the initial network configuration
1906 is complete. Enable this option to disable this behavior and instead
1907 require files to be loaded over the network by subsequent commands.
1908
Ying-Chun Liu (PaulLiu)cfbae482022-11-08 14:17:29 +08001909config CMD_WGET
1910 bool "wget"
Michael Walle20422d62022-12-28 16:27:15 +01001911 select PROT_TCP
Ying-Chun Liu (PaulLiu)cfbae482022-11-08 14:17:29 +08001912 help
1913 wget is a simple command to download kernel, or other files,
1914 from a http server over TCP.
1915
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001916config CMD_MII
1917 bool "mii"
Ramon Fried7d9701d2019-09-13 18:25:03 +03001918 imply CMD_MDIO
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001919 help
Ramon Fried7d9701d2019-09-13 18:25:03 +03001920 If set, allows 802.3(clause 22) MII Management functions interface access
1921 The management interface specified in Clause 22 provides
1922 a simple, two signal, serial interface to connect a
1923 Station Management entity and a managed PHY for providing access
1924 to management parameters and services.
1925 The interface is referred to as the MII management interface.
1926
Tom Rinicc386f12022-03-18 08:38:27 -04001927config MII_INIT
1928 bool "Call mii_init() in the mii command"
1929 depends on CMD_MII && (MPC8XX_FEC || FSLDMAFE || MCFFEC)
1930
Ramon Fried7d9701d2019-09-13 18:25:03 +03001931config CMD_MDIO
1932 bool "mdio"
1933 depends on PHYLIB
1934 help
1935 If set, allows Enable 802.3(clause 45) MDIO interface registers access
1936 The MDIO interface is orthogonal to the MII interface and extends
1937 it by adding access to more registers through indirect addressing.
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001938
Simon Glass72a8cf82016-01-17 20:53:51 -07001939config CMD_PING
1940 bool "ping"
1941 help
1942 Send ICMP ECHO_REQUEST to network host
1943
Viacheslav Mitrofanoveeb0a2c2022-12-02 12:18:08 +03001944config CMD_PING6
1945 bool "ping6"
1946 depends on IPV6
1947 default y if (CMD_PING && IPV6)
1948 help
1949 Send ICMPv6 ECHO_REQUEST to network host
1950
Simon Glass72a8cf82016-01-17 20:53:51 -07001951config CMD_CDP
1952 bool "cdp"
1953 help
1954 Perform CDP network configuration
1955
1956config CMD_SNTP
1957 bool "sntp"
Philippe Reynes912ece42020-09-18 14:13:02 +02001958 select PROT_UDP
Simon Glass72a8cf82016-01-17 20:53:51 -07001959 help
1960 Synchronize RTC via network
1961
1962config CMD_DNS
1963 bool "dns"
1964 help
1965 Lookup the IP of a hostname
1966
1967config CMD_LINK_LOCAL
1968 bool "linklocal"
Joe Hershberger6f0dc0c2018-04-30 12:45:22 -05001969 select LIB_RAND
Simon Glass72a8cf82016-01-17 20:53:51 -07001970 help
1971 Acquire a network IP address using the link-local protocol
1972
Samuel Mendoza-Jonas4b290d42022-08-08 21:46:04 +09301973config CMD_NCSI
1974 bool "ncsi"
1975 depends on PHY_NCSI
1976 help
1977 Manually configure the attached NIC via NC-SI.
1978 Normally this happens automatically before other network
1979 operations.
1980
Ehsan Mohandesi6de98b62023-04-21 17:08:21 -07001981config IPV6_ROUTER_DISCOVERY
1982 bool "Do IPv6 router discovery"
1983 depends on IPV6
1984 help
1985 Will automatically perform router solicitation on first IPv6
1986 network operation
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001987endif
1988
Simon Glassef072202017-05-17 03:25:17 -06001989config CMD_ETHSW
1990 bool "ethsw"
1991 help
1992 Allow control of L2 Ethernet switch commands. These are supported
1993 by the vsc9953 Ethernet driver at present. Sub-commands allow
1994 operations such as enabling / disabling a port and
1995 viewing/maintaining the filtering database (FDB)
1996
Joe Hershberger92fa44d2018-04-13 15:26:32 -05001997config CMD_PXE
1998 bool "pxe"
John Keepingbe43a352022-07-28 11:19:15 +01001999 select PXE_UTILS
Joe Hershberger92fa44d2018-04-13 15:26:32 -05002000 help
2001 Boot image via network using PXE protocol
Michal Simek3b3ea2c2018-02-26 16:01:02 +01002002
Lothar Feltend8970da2018-06-22 22:29:54 +02002003config CMD_WOL
2004 bool "wol"
2005 help
2006 Wait for wake-on-lan Magic Packet
2007
Joe Hershbergerd7a45ea2018-04-13 15:26:30 -05002008endif
Simon Glass72a8cf82016-01-17 20:53:51 -07002009
2010menu "Misc commands"
2011
Simon Glassa554ee72023-02-07 14:33:53 -07002012config CMD_2048
2013 bool "Play 2048"
2014 help
2015 This is a simple sliding block puzzle game designed by Italian web
2016 developer Gabriele Cirulli. The game's objective is to slide numbered
2017 tiles on a grid to combine them to create a tile with the number
2018 2048.
2019
2020 This needs ANSI support on your terminal to work. It is not fully
2021 functional on a video device.
2022
Simon Glass0f710252017-04-26 22:27:55 -06002023config CMD_BMP
2024 bool "Enable 'bmp' command"
Simon Glassb86986c2022-10-18 07:46:31 -06002025 depends on VIDEO
Samuel Dionne-Riel373991d62023-07-18 14:27:36 +05302026 select BMP
Simon Glass0f710252017-04-26 22:27:55 -06002027 help
Andrius Štikonas60a9aeb2019-09-23 22:43:41 +01002028 This provides a way to obtain information about a BMP-format image
Simon Glass0f710252017-04-26 22:27:55 -06002029 and to display it. BMP (which presumably stands for BitMaP) is a
2030 file format defined by Microsoft which supports images of various
2031 depths, formats and compression methods. Headers on the file
2032 determine the formats used. This command can be used by first loading
2033 the image into RAM, then using this command to look at it or display
2034 it.
2035
Alex Kiernanb11ed7d2018-05-12 05:49:47 +00002036config CMD_BOOTCOUNT
2037 bool "bootcount"
2038 depends on BOOTCOUNT_LIMIT
2039 help
2040 Enable the bootcount command, which allows interrogation and
2041 reset of the bootcounter.
2042
Simon Glass4893e342017-04-26 22:27:56 -06002043config CMD_BSP
2044 bool "Enable board-specific commands"
2045 help
2046 (deprecated: instead, please define a Kconfig option for each command)
2047
2048 Some boards have board-specific commands which are only enabled
2049 during developemnt and need to be turned off for production. This
2050 option provides a way to control this. The commands that are enabled
2051 vary depending on the board.
2052
Eric Nelsone40cf342016-03-28 10:05:44 -07002053config CMD_BLOCK_CACHE
2054 bool "blkcache - control and stats for block cache"
2055 depends on BLOCK_CACHE
2056 default y if BLOCK_CACHE
2057 help
2058 Enable the blkcache command, which can be used to control the
2059 operation of the cache functions.
2060 This is most useful when fine-tuning the operation of the cache
2061 during development, but also allows the cache to be disabled when
2062 it might hurt performance (e.g. when using the ums command).
2063
Tobias Waldekranzbb56da12023-02-16 16:33:52 +01002064config CMD_BLKMAP
2065 bool "blkmap - Composable virtual block devices"
2066 depends on BLKMAP
2067 default y if BLKMAP
2068 help
2069 Create virtual block devices that are backed by various sources,
2070 e.g. RAM, or parts of an existing block device. Though much more
2071 rudimentary, it borrows a lot of ideas from Linux's device mapper
2072 subsystem.
2073
2074 Example use-cases:
2075 - Treat a region of RAM as a block device, i.e. a RAM disk. This let's
2076 you extract files from filesystem images stored in RAM (perhaps as a
2077 result of a TFTP transfer).
2078 - Create a virtual partition on an existing device. This let's you
2079 access filesystems that aren't stored at an exact partition
2080 boundary. A common example is a filesystem image embedded in an FIT
2081 image.
2082
Philippe Reynes325141a2020-07-24 18:19:47 +02002083config CMD_BUTTON
2084 bool "button"
2085 depends on BUTTON
2086 default y if BUTTON
2087 help
2088 Enable the 'button' command which allows to get the status of
2089 buttons supported by the board. The buttonss can be listed with
2090 'button list' and state can be known with 'button <label>'.
2091 Any button drivers can be controlled with this command, e.g.
2092 button_gpio.
2093
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002094config CMD_CACHE
2095 bool "icache or dcache"
2096 help
2097 Enable the "icache" and "dcache" commands
2098
Heinrich Schuchardt29cfc092018-09-07 19:43:11 +02002099config CMD_CONITRACE
2100 bool "conitrace - trace console input codes"
2101 help
2102 Enable the 'conitrace' command which displays the codes received
2103 from the console input as hexadecimal numbers.
2104
Anatolij Gustschin4e92e602018-12-01 10:47:20 +01002105config CMD_CLS
2106 bool "Enable clear screen command 'cls'"
John Keeping2fdc4c02022-11-23 17:16:14 +00002107 default y if LCD || VIDEO
Anatolij Gustschin4e92e602018-12-01 10:47:20 +01002108 help
2109 Enable the 'cls' command which clears the screen contents
2110 on video frame buffer.
2111
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09002112config CMD_EFIDEBUG
2113 bool "efidebug - display/configure UEFI environment"
2114 depends on EFI_LOADER
Heinrich Schuchardt64b5ba42019-05-11 09:53:33 +02002115 select EFI_DEVICE_PATH_TO_TEXT
AKASHI Takahiro59df7e72019-02-25 15:54:38 +09002116 help
2117 Enable the 'efidebug' command which provides a subset of UEFI
2118 shell utility with simplified functionality. It will be useful
2119 particularly for managing boot parameters as well as examining
2120 various EFI status for debugging.
2121
Masahisa Kojima87d79142022-09-12 17:33:50 +09002122config CMD_EFICONFIG
2123 bool "eficonfig - provide menu-driven uefi variables maintenance interface"
Heinrich Schuchardt8925f0e2023-02-08 09:57:00 +01002124 default y if !HAS_BOARD_SIZE_LIMIT
Simon Glass422822c2023-10-26 14:31:20 -04002125 depends on BOOTEFI_BOOTMGR
Heinrich Schuchardt75d494d2023-02-08 13:56:33 +01002126 select MENU
Masahisa Kojima87d79142022-09-12 17:33:50 +09002127 help
2128 Enable the 'eficonfig' command which provides the menu-driven UEFI
2129 variable maintenance interface.
2130
Heinrich Schuchardtdab87882018-12-26 17:20:35 +01002131config CMD_EXCEPTION
2132 bool "exception - raise exception"
Heinrich Schuchardt3a5ec032020-11-12 00:29:57 +01002133 depends on ARM || RISCV || SANDBOX || X86
Heinrich Schuchardtdab87882018-12-26 17:20:35 +01002134 help
2135 Enable the 'exception' command which allows to raise an exception.
2136
Simon Glassffe20522017-04-10 11:34:59 -06002137config CMD_LED
2138 bool "led"
Jan Kiszka2ab6e742019-01-03 09:08:42 +01002139 depends on LED
Simon Glassffe20522017-04-10 11:34:59 -06002140 default y if LED
2141 help
2142 Enable the 'led' command which allows for control of LEDs supported
2143 by the board. The LEDs can be listed with 'led list' and controlled
2144 with led on/off/togle/blink. Any LED drivers can be controlled with
2145 this command, e.g. led_gpio.
2146
Simon Glasse158c942023-02-01 13:19:24 -07002147config CMD_INI
2148 bool "ini"
2149 help
2150 Enable the 'ini' command which allows a .ini file to be parsed and
2151 placed into environment variables. Please check the source code for
2152 this as there is no documentation.
2153
Chris Packhamc9032ce2017-04-29 15:20:28 +12002154config CMD_DATE
2155 bool "date"
2156 default y if DM_RTC
AKASHI Takahiro05429b62019-11-13 09:44:49 +09002157 select LIB_DATE
Chris Packhamc9032ce2017-04-29 15:20:28 +12002158 help
2159 Enable the 'date' command for getting/setting the time/date in RTC
2160 devices.
2161
Rasmus Villemoes803a8592020-07-06 22:01:15 +02002162config CMD_RTC
2163 bool "rtc"
2164 depends on DM_RTC
2165 help
2166 Enable the 'rtc' command for low-level access to RTC devices.
2167
Simon Glass72a8cf82016-01-17 20:53:51 -07002168config CMD_TIME
2169 bool "time"
2170 help
2171 Run commands and summarize execution time.
2172
Simon Glassd91a9d72017-05-17 03:25:23 -06002173config CMD_GETTIME
2174 bool "gettime - read elapsed time"
2175 help
2176 Enable the 'gettime' command which reads the elapsed time since
2177 U-Boot started running. This shows the time in seconds and
2178 milliseconds. See also the 'bootstage' command which provides more
2179 flexibility for boot timing.
2180
Samuel Dionne-Rieldc0d17c2022-08-18 15:44:04 -04002181config CMD_PAUSE
2182 bool "pause command"
2183 help
2184 Delay execution waiting for any user input.
2185 Useful to allow the user to read a failure log.
2186
Heinrich Schuchardt4f24ac02019-12-24 22:17:37 +01002187config CMD_RNG
2188 bool "rng command"
2189 depends on DM_RNG
Sughosh Ganude706192022-07-22 21:32:09 +05302190 default y if SANDBOX
Heinrich Schuchardt4f24ac02019-12-24 22:17:37 +01002191 select HEXDUMP
2192 help
2193 Print bytes from the hardware random number generator.
2194
Chris Morganfe3dde32021-08-25 11:22:57 -05002195config CMD_KASLRSEED
2196 bool "kaslrseed"
2197 depends on DM_RNG
2198 help
2199 Set the kaslr-seed in the chosen node with entropy provided by a
2200 hardware random number generator.
2201
Bin Meng16060852020-10-13 18:45:05 +08002202config CMD_SLEEP
Simon Glass72a8cf82016-01-17 20:53:51 -07002203 bool "sleep"
2204 default y
2205 help
2206 Delay execution for some time
2207
Ashok Reddy Soma480245c2022-01-17 10:16:50 +01002208config CMD_MP
2209 bool "support for multiprocessor commands"
2210 depends on MP
2211 default y
Siva Durga Prasad Paladugu0fd2290c2018-06-19 12:24:23 +02002212 help
Ashok Reddy Soma480245c2022-01-17 10:16:50 +01002213 This enables commands to bringup different processors
2214 in multiprocessor cases.
Siva Durga Prasad Paladugu0fd2290c2018-06-19 12:24:23 +02002215
Simon Glass72a8cf82016-01-17 20:53:51 -07002216config CMD_TIMER
2217 bool "timer"
2218 help
2219 Access the system timer.
2220
Simon Glass72a8cf82016-01-17 20:53:51 -07002221config CMD_SOUND
2222 bool "sound"
2223 depends on SOUND
2224 help
2225 This provides basic access to the U-Boot's sound support. The main
2226 feature is to play a beep.
2227
2228 sound init - set up sound system
2229 sound play - play a sound
2230
Patrice Chotard993c9122019-11-25 09:07:38 +01002231config CMD_SYSBOOT
2232 bool "sysboot"
John Keepingbe43a352022-07-28 11:19:15 +01002233 select PXE_UTILS
Patrice Chotard993c9122019-11-25 09:07:38 +01002234 help
2235 Boot image via local extlinux.conf file
2236
Miao Yan18686592016-05-22 19:37:17 -07002237config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04002238 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -07002239 select QFW
Tom Rinibfaa0482023-10-26 14:31:14 -04002240 default y if TARGET_QEMU_ARM_32BIT || TARGET_QEMU_ARM_64BIT || \
2241 TARGET_QEMU_X86 || TARGET_QEMU_X86_64
Tom Rinidd6f3ab2016-05-06 10:40:22 -04002242 help
2243 This provides access to the QEMU firmware interface. The main
2244 feature is to allow easy loading of files passed to qemu-system
2245 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02002246
Frédéric Danis9744d1a2020-03-20 10:59:22 +01002247config CMD_PSTORE
2248 bool "pstore"
2249 help
2250 This provides access to Linux PStore with Rammoops backend. The main
2251 feature is to allow to display or save PStore records.
2252
2253 See doc/pstore.rst for more information.
2254
2255if CMD_PSTORE
2256
2257config CMD_PSTORE_MEM_ADDR
2258 hex "Memory Address"
2259 depends on CMD_PSTORE
2260 help
2261 Base addr used for PStore ramoops memory, should be identical to
2262 ramoops.mem_address parameter used by kernel
2263
2264config CMD_PSTORE_MEM_SIZE
2265 hex "Memory size"
2266 depends on CMD_PSTORE
2267 default "0x10000"
2268 help
2269 Size of PStore ramoops memory, should be identical to ramoops.mem_size
2270 parameter used by kernel, a power of 2 and larger than the sum of the
2271 record sizes
2272
2273config CMD_PSTORE_RECORD_SIZE
2274 hex "Dump record size"
2275 depends on CMD_PSTORE
2276 default "0x1000"
2277 help
2278 Size of each dump done on oops/panic, should be identical to
2279 ramoops.record_size parameter used by kernel and a power of 2
2280 Must be non-zero
2281
2282config CMD_PSTORE_CONSOLE_SIZE
2283 hex "Kernel console log size"
2284 depends on CMD_PSTORE
2285 default "0x1000"
2286 help
2287 Size of kernel console log, should be identical to
2288 ramoops.console_size parameter used by kernel and a power of 2
2289 Must be non-zero
2290
2291config CMD_PSTORE_FTRACE_SIZE
2292 hex "FTrace log size"
2293 depends on CMD_PSTORE
2294 default "0x1000"
2295 help
2296 Size of ftrace log, should be identical to ramoops.ftrace_size
2297 parameter used by kernel and a power of 2
2298
2299config CMD_PSTORE_PMSG_SIZE
2300 hex "User space message log size"
2301 depends on CMD_PSTORE
2302 default "0x1000"
2303 help
2304 Size of user space message log, should be identical to
2305 ramoops.pmsg_size parameter used by kernel and a power of 2
2306
2307config CMD_PSTORE_ECC_SIZE
2308 int "ECC size"
2309 depends on CMD_PSTORE
2310 default "0"
2311 help
2312 if non-zero, the option enables ECC support and specifies ECC buffer
2313 size in bytes (1 is a special value, means 16 bytes ECC), should be
2314 identical to ramoops.ramoops_ecc parameter used by kernel
2315
2316endif
2317
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02002318source "cmd/mvebu/Kconfig"
2319
Simon Glass3cef3b32017-08-04 16:34:55 -06002320config CMD_TERMINAL
2321 bool "terminal - provides a way to attach a serial terminal"
2322 help
2323 Provides a 'cu'-like serial terminal command. This can be used to
2324 access other serial ports from the system console. The terminal
2325 is very simple with no special processing of characters. As with
2326 cu, you can press ~. (tilde followed by period) to exit.
2327
Simon Glass1aa4e8d2017-08-04 16:35:02 -06002328config CMD_UUID
2329 bool "uuid, guid - generation of unique IDs"
Adam Forda451bc22018-02-06 12:14:28 -06002330 select LIB_UUID
Simon Glass1aa4e8d2017-08-04 16:35:02 -06002331 help
2332 This enables two commands:
2333
2334 uuid - generate random Universally Unique Identifier
2335 guid - generate Globally Unique Identifier based on random UUID
2336
2337 The two commands are very similar except for the endianness of the
2338 output.
2339
Simon Glassf029f902022-10-06 08:36:06 -06002340config CMD_VIDCONSOLE
2341 bool "lcdputs and setcurs"
Simon Glassb86986c2022-10-18 07:46:31 -06002342 depends on VIDEO
Simon Glassf029f902022-10-06 08:36:06 -06002343 default y
2344 help
2345 Enabling this will provide 'setcurs' and 'lcdputs' commands which
2346 support cursor positioning and drawing strings on the video
2347 console (framebuffer).
2348
2349 The name 'lcdputs' is a bit of a misnomer, but so named because the
2350 video device is often an LCD.
2351
Dzmitry Sankouskie7ee1fd2023-03-07 13:21:16 +03002352config CMD_SELECT_FONT
2353 bool "select font size"
2354 depends on VIDEO
Simon Glassd83f4e62023-10-26 14:31:18 -04002355 default y if CONSOLE_TRUETYPE
Dzmitry Sankouskie7ee1fd2023-03-07 13:21:16 +03002356 help
2357 Enabling this will provide 'font' command.
2358 Allows font selection at runtime.
2359
Simon Glass72a8cf82016-01-17 20:53:51 -07002360endmenu
2361
Lokesh Vutla5cd96612017-12-29 11:47:49 +05302362source "cmd/ti/Kconfig"
2363
Simon Glass72a8cf82016-01-17 20:53:51 -07002364config CMD_BOOTSTAGE
2365 bool "Enable the 'bootstage' command"
2366 depends on BOOTSTAGE
2367 help
2368 Add a 'bootstage' command which supports printing a report
2369 and un/stashing of bootstage data.
2370
2371menu "Power commands"
2372config CMD_PMIC
2373 bool "Enable Driver Model PMIC command"
2374 depends on DM_PMIC
2375 help
2376 This is the pmic command, based on a driver model pmic's API.
2377 Command features are unchanged:
2378 - list - list pmic devices
2379 - pmic dev <id> - show or [set] operating pmic device (NEW)
2380 - pmic dump - dump registers
2381 - pmic read address - read byte of register at address
2382 - pmic write address - write byte to register at address
2383 The only one change for this command is 'dev' subcommand.
2384
2385config CMD_REGULATOR
2386 bool "Enable Driver Model REGULATOR command"
2387 depends on DM_REGULATOR
2388 help
2389 This command is based on driver model regulator's API.
2390 User interface features:
2391 - list - list regulator devices
2392 - regulator dev <id> - show or [set] operating regulator device
2393 - regulator info - print constraints info
2394 - regulator status - print operating status
2395 - regulator value <val] <-f> - print/[set] voltage value [uV]
2396 - regulator current <val> - print/[set] current value [uA]
2397 - regulator mode <id> - print/[set] operating mode id
2398 - regulator enable - enable the regulator output
2399 - regulator disable - disable the regulator output
2400
2401 The '-f' (force) option can be used for set the value which exceeds
2402 the limits, which are found in device-tree and are kept in regulator's
Simon Glasscaa4daa2020-12-03 16:55:18 -07002403 uclass plat structure.
Simon Glass72a8cf82016-01-17 20:53:51 -07002404
2405endmenu
2406
2407menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06002408config CMD_AES
2409 bool "Enable the 'aes' command"
2410 select AES
2411 help
2412 This provides a means to encrypt and decrypt data using the AES
2413 (Advanced Encryption Standard). This algorithm uses a symetric key
2414 and is widely used as a streaming cipher. Different key lengths are
2415 supported by the algorithm but this command only supports 128 bits
2416 at present.
2417
Simon Glassc04b9b32017-04-26 22:27:53 -06002418config CMD_BLOB
2419 bool "Enable the 'blob' command"
Aymen Sghaier25324292021-03-25 17:30:27 +08002420 depends on !MX6ULL && !MX6SLL && !MX6SL
2421 select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
Simon Glassc04b9b32017-04-26 22:27:53 -06002422 help
2423 This is used with the Freescale secure boot mechanism.
2424
2425 Freescale's SEC block has built-in Blob Protocol which provides
2426 a method for protecting user-defined data across system power
2427 cycles. SEC block protects data in a data structure called a Blob,
2428 which provides both confidentiality and integrity protection.
2429
2430 Encapsulating data as a blob
2431 Each time that the Blob Protocol is used to protect data, a
2432 different randomly generated key is used to encrypt the data.
2433 This random key is itself encrypted using a key which is derived
2434 from SoC's non-volatile secret key and a 16 bit Key identifier.
2435 The resulting encrypted key along with encrypted data is called a
2436 blob. The non-volatile secure key is available for use only during
2437 secure boot.
2438
2439 During decapsulation, the reverse process is performed to get back
2440 the original data.
2441
2442 Sub-commands:
Michal Simek6e7bdde2018-07-23 15:55:12 +02002443 blob enc - encapsulating data as a cryptgraphic blob
Simon Glassc04b9b32017-04-26 22:27:53 -06002444 blob dec - decapsulating cryptgraphic blob to get the data
2445
2446 Syntax:
2447
2448 blob enc src dst len km
2449
2450 Encapsulate and create blob of data $len bytes long
2451 at address $src and store the result at address $dst.
2452 $km is the 16 byte key modifier is also required for
2453 generation/use as key for cryptographic operation. Key
2454 modifier should be 16 byte long.
2455
2456 blob dec src dst len km
2457
2458 Decapsulate the blob of data at address $src and
2459 store result of $len byte at addr $dst.
2460 $km is the 16 byte key modifier is also required for
2461 generation/use as key for cryptographic operation. Key
2462 modifier should be 16 byte long.
2463
Simon Glass551c3932017-05-17 03:25:25 -06002464config CMD_HASH
2465 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06002466 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06002467 help
2468 This provides a way to hash data in memory using various supported
2469 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
2470 saved to memory or to an environment variable. It is also possible
2471 to verify a hash against data in memory.
2472
Michalis Pappas666028f2018-04-13 10:40:57 +03002473config CMD_HVC
2474 bool "Support the 'hvc' command"
2475 depends on ARM_SMCCC
2476 help
2477 Allows issuing Hypervisor Calls (HVCs). Mostly useful for
2478 development and testing.
2479
2480config CMD_SMC
2481 bool "Support the 'smc' command"
2482 depends on ARM_SMCCC
2483 help
2484 Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
2485 development and testing.
2486
Daniel Thompson221a9492017-05-19 17:26:58 +01002487config HASH_VERIFY
2488 bool "hash -v"
2489 depends on CMD_HASH
2490 help
2491 Add -v option to verify data against a hash.
2492
Jorge Ramirez-Ortiz26839e52021-02-14 16:27:24 +01002493config CMD_SCP03
2494 bool "scp03 - SCP03 enable and rotate/provision operations"
2495 depends on SCP03
2496 help
2497 This command provides access to a Trusted Application
2498 running in a TEE to request Secure Channel Protocol 03
2499 (SCP03) enablement and/or rotation of its SCP03 keys.
2500
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002501config CMD_TPM_V1
2502 bool
2503
2504config CMD_TPM_V2
2505 bool
2506
Simon Glass72a8cf82016-01-17 20:53:51 -07002507config CMD_TPM
2508 bool "Enable the 'tpm' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002509 depends on TPM_V1 || TPM_V2
2510 select CMD_TPM_V1 if TPM_V1
2511 select CMD_TPM_V2 if TPM_V2
Simon Glass72a8cf82016-01-17 20:53:51 -07002512 help
2513 This provides a means to talk to a TPM from the command line. A wide
2514 range of commands if provided - see 'tpm help' for details. The
2515 command requires a suitable TPM on your board and the correct driver
2516 must be enabled.
2517
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002518if CMD_TPM
2519
Simon Glass72a8cf82016-01-17 20:53:51 -07002520config CMD_TPM_TEST
2521 bool "Enable the 'tpm test' command"
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002522 depends on TPM_V1
Simon Glass72a8cf82016-01-17 20:53:51 -07002523 help
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002524 This provides a a series of tests to confirm that the TPMv1.x is
2525 working correctly. The tests cover initialisation, non-volatile RAM,
2526 extend, global lock and checking that timing is within expectations.
2527 The tests pass correctly on Infineon TPMs but may need to be adjusted
Simon Glass72a8cf82016-01-17 20:53:51 -07002528 for other devices.
2529
Miquel Raynal9f9ce3c2018-05-15 11:57:05 +02002530endif
2531
Simon Glass72a8cf82016-01-17 20:53:51 -07002532endmenu
2533
Moritz Fischerbfeba012016-10-04 17:08:08 -07002534menu "Firmware commands"
2535config CMD_CROS_EC
2536 bool "Enable crosec command"
2537 depends on CROS_EC
2538 default y
2539 help
2540 Enable command-line access to the Chrome OS EC (Embedded
2541 Controller). This provides the 'crosec' command which has
2542 a number of sub-commands for performing EC tasks such as
2543 updating its flash, accessing a small saved context area
2544 and talking to the I2C bus behind the EC (if there is one).
AKASHI Takahiro8055f902023-11-14 11:14:26 +09002545
2546config CMD_SCMI
2547 bool "Enable scmi command"
2548 depends on SCMI_FIRMWARE
2549 default n
2550 help
2551 This command provides user interfaces to several SCMI (System
2552 Control and Management Interface) protocols available on Arm
2553 platforms to manage system resources.
Moritz Fischerbfeba012016-10-04 17:08:08 -07002554endmenu
2555
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002556menu "Filesystem commands"
Marek Behún9d845502017-09-03 17:00:30 +02002557config CMD_BTRFS
2558 bool "Enable the 'btrsubvol' command"
2559 select FS_BTRFS
2560 help
2561 This enables the 'btrsubvol' command to list subvolumes
2562 of a BTRFS filesystem. There are no special commands for
2563 listing BTRFS directories or loading BTRFS files - this
2564 can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
2565 when BTRFS is enabled (see FS_BTRFS).
2566
Simon Glassd66a10f2017-04-26 22:27:58 -06002567config CMD_CBFS
2568 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06002569 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06002570 help
2571 Define this to enable support for reading from a Coreboot
2572 filesystem. This is a ROM-based filesystem used for accessing files
2573 on systems that use coreboot as the first boot-loader and then load
2574 U-Boot to actually boot the Operating System. Available commands are
2575 cbfsinit, cbfsinfo, cbfsls and cbfsload.
2576
Simon Glass97072742017-04-26 22:28:03 -06002577config CMD_CRAMFS
2578 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06002579 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06002580 help
2581 This provides commands for dealing with CRAMFS (Compressed ROM
2582 filesystem). CRAMFS is useful when space is tight since files are
2583 compressed. Two commands are provided:
2584
2585 cramfsls - lists files in a cramfs image
2586 cramfsload - loads a file from a cramfs image
2587
Huang Jianan739941e2022-02-26 15:05:50 +08002588config CMD_EROFS
2589 bool "EROFS command support"
2590 select FS_EROFS
2591 help
2592 Support for the EROFS fs
2593
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002594config CMD_EXT2
2595 bool "ext2 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02002596 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002597 help
2598 Enables EXT2 FS command
2599
2600config CMD_EXT4
2601 bool "ext4 command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02002602 select FS_EXT4
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002603 help
2604 Enables EXT4 FS command
2605
2606config CMD_EXT4_WRITE
2607 depends on CMD_EXT4
2608 bool "ext4 write command support"
Tuomas Tynkkynen3d22bae2018-01-05 02:45:17 +02002609 select EXT4_WRITE
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002610 help
2611 Enables EXT4 FS write command
2612
2613config CMD_FAT
2614 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05302615 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002616 help
2617 Support for the FAT fs
2618
Joao Marcos Costabba604b2020-07-30 15:33:48 +02002619config CMD_SQUASHFS
2620 bool "SquashFS command support"
2621 select FS_SQUASHFS
2622 help
2623 Enables SquashFS filesystem commands (e.g. load, ls).
2624
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002625config CMD_FS_GENERIC
2626 bool "filesystem commands"
2627 help
2628 Enables filesystem commands (e.g. load, ls) that work for multiple
2629 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002630
Josua Mayerefbe99c2017-04-24 10:10:45 +02002631config CMD_FS_UUID
2632 bool "fsuuid command"
2633 help
2634 Enables fsuuid command for filesystem UUID.
2635
Simon Glassb8682a72017-05-17 03:25:37 -06002636config CMD_JFFS2
2637 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06002638 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06002639 help
2640 Enables commands to support the JFFS2 (Journalling Flash File System
2641 version 2) filesystem. This enables fsload, ls and fsinfo which
2642 provide the ability to load files, list directories and obtain
2643 filesystem information.
2644
Tom Rini968c6212021-12-17 18:08:47 -05002645config JFFS2_DEV
2646 string "Default device for JFFS2"
2647 depends on CMD_JFFS2
2648 default "nor0"
2649 help
2650 The default device to use with the jffs2 command.
2651
2652config JFFS2_PART_OFFSET
2653 hex "Default offset within flash to locate the JFFS2 image"
2654 depends on CMD_JFFS2
2655 default 0x0
2656 help
2657 The default offset within flash to locate the JFFS2 image.
2658
2659config JFFS2_PART_SIZE
2660 hex "Default size of JFFS2 partition"
2661 depends on CMD_JFFS2
2662 default 0xFFFFFFFF
2663 help
2664 The default size of the JFFS2 partition
2665
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002666config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002667 bool "MTD partition support"
Miquel Raynalff102c52019-10-25 19:39:30 +02002668 depends on MTD
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002669 help
Miquel Raynal938db6f2018-09-29 12:58:30 +02002670 MTD partitioning tool support.
2671 It is strongly encouraged to avoid using this command
2672 anymore along with 'sf', 'nand', 'onenand'. One can still
2673 declare the partitions in the mtdparts environment variable
2674 but better use the MTD stack and the 'mtd' command instead.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01002675
Simon Glasscb70e6c2017-08-04 16:34:30 -06002676config CMD_MTDPARTS_SPREAD
2677 bool "Padd partition size to take account of bad blocks"
2678 depends on CMD_MTDPARTS
2679 help
2680 This enables the 'spread' sub-command of the mtdparts command.
2681 This command will modify the existing mtdparts variable by increasing
2682 the size of the partitions such that 1) each partition's net size is
2683 at least as large as the size specified in the mtdparts variable and
2684 2) each partition starts on a good block.
2685
Alexander Dahl672c5702019-10-30 16:53:55 +01002686config CMD_MTDPARTS_SHOW_NET_SIZES
2687 bool "Show net size (w/o bad blocks) of partitions"
2688 depends on CMD_MTDPARTS
2689 help
2690 Adds two columns to the printed partition table showing the
2691 effective usable size of a partition, if bad blocks are taken
2692 into account.
2693
Miquel Raynal587f4452019-10-03 19:50:25 +02002694config MTDIDS_DEFAULT
2695 string "Default MTD IDs"
Miquel Raynalff102c52019-10-25 19:39:30 +02002696 depends on MTD || SPI_FLASH
Patrick Delaunay6762c8d2022-12-08 09:10:13 +01002697 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynal587f4452019-10-03 19:50:25 +02002698 help
2699 Defines a default MTD IDs list for use with MTD partitions in the
2700 Linux MTD command line partitions format.
2701
2702config MTDPARTS_DEFAULT
2703 string "Default MTD partition scheme"
Miquel Raynalff102c52019-10-25 19:39:30 +02002704 depends on MTD || SPI_FLASH
Patrick Delaunay6762c8d2022-12-08 09:10:13 +01002705 depends on !SYS_MTDPARTS_RUNTIME
Miquel Raynal587f4452019-10-03 19:50:25 +02002706 help
2707 Defines a default MTD partitioning scheme in the Linux MTD command
2708 line partitions format
2709
Simon Glassf8803a92017-08-04 16:34:41 -06002710config CMD_REISER
2711 bool "reiser - Access to reiserfs filesystems"
2712 help
2713 This provides two commands which operate on a resierfs filesystem,
2714 commonly used some years ago:
2715
2716 reiserls - list files
2717 reiserload - load a file
2718
Simon Glass7a764312017-08-04 16:34:58 -06002719config CMD_YAFFS2
2720 bool "yaffs2 - Access of YAFFS2 filesystem"
2721 depends on YAFFS2
2722 default y
2723 help
2724 This provides commands for accessing a YAFFS2 filesystem. Yet
2725 Another Flash Filesystem 2 is a filesystem designed specifically
2726 for NAND flash. It incorporates bad-block management and ensures
2727 that device writes are sequential regardless of filesystem
2728 activity.
2729
Simon Glass54feea12017-08-04 16:35:04 -06002730config CMD_ZFS
2731 bool "zfs - Access of ZFS filesystem"
2732 help
2733 This provides commands to accessing a ZFS filesystem, commonly used
2734 on Solaris systems. Two sub-commands are provided:
2735
2736 zfsls - list files in a directory
2737 zfsload - load a file
2738
2739 See doc/README.zfs for more details.
2740
Dinh Nguyenab8243e2016-04-21 09:05:23 -05002741endmenu
2742
Simon Glassac20a1b2017-04-26 22:27:52 -06002743menu "Debug commands"
2744
Simon Glass71cebf02021-03-15 18:00:24 +13002745config CMD_CBSYSINFO
2746 bool "cbsysinfo"
2747 depends on X86
2748 default y if SYS_COREBOOT
2749 help
2750 This provides information about the coreboot sysinfo table stored in
2751 memory by coreboot before jumping to U-Boot. It can be useful for
2752 debugging the beaaviour of coreboot or U-Boot.
2753
Stefan Roese1f865ee2022-09-02 13:57:51 +02002754config CMD_CYCLIC
2755 bool "cyclic - Show information about cyclic functions"
2756 depends on CYCLIC
2757 default y
2758 help
2759 This enables the 'cyclic' command which provides information about
2760 cyclic execution functions. This infrastructure allows registering
2761 functions to be executed cyclically, e.g. every 100ms. These commands
2762 are supported:
2763
2764 cyclic list - list cyclic functions
2765 cyclic cyclic demo <cycletime_ms> <delay_us> - register cyclic
2766 demo function
2767
2768 See doc/develop/cyclic.rst for more details.
2769
Simon Glass3bd25cb2017-04-26 22:28:08 -06002770config CMD_DIAG
2771 bool "diag - Board diagnostics"
2772 help
2773 This command provides access to board diagnostic tests. These are
2774 called Power-on Self Tests (POST). The command allows listing of
2775 available tests and running either all the tests, or specific tests
2776 identified by name.
2777
Simon Glassc81b4602022-03-04 08:43:06 -07002778config CMD_EVENT
2779 bool "event - Show information about events"
Tom Rini448e2b62023-01-16 15:46:49 -05002780 depends on EVENT
Simon Glassc81b4602022-03-04 08:43:06 -07002781 default y if EVENT_DEBUG
2782 help
2783 This enables the 'event' command which provides information about
2784 events and event-handler routines. This can help to device event
2785 hadling.
2786
Simon Glass1b330892017-05-17 03:25:39 -06002787config CMD_IRQ
2788 bool "irq - Show information about interrupts"
Pragnesh Patelc5a7e5b2020-08-24 20:38:55 +05302789 depends on !ARM && !MIPS && !RISCV && !SH
Simon Glass1b330892017-05-17 03:25:39 -06002790 help
2791 This enables two commands:
2792
2793 interrupts - enable or disable interrupts
2794 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06002795
2796config CMD_KGDB
2797 bool "kgdb - Allow debugging of U-Boot with gdb"
Michal Simekb9205502018-10-04 14:26:13 +02002798 depends on PPC
Simon Glass6bac2272017-05-17 03:25:40 -06002799 help
2800 This enables a 'kgdb' command which allows gdb to connect to U-Boot
2801 over a serial link for debugging purposes. This allows
2802 single-stepping, inspecting variables, etc. This is supported only
2803 on PowerPC at present.
2804
Simon Glassd5f61f22017-12-04 13:48:26 -07002805config CMD_LOG
2806 bool "log - Generation, control and access to logging"
Heinrich Schuchardt83a1f932018-04-19 22:02:46 +02002807 select LOG
Sean Anderson3e409762020-10-27 19:55:38 -04002808 select GETOPT
Simon Glassd5f61f22017-12-04 13:48:26 -07002809 help
2810 This provides access to logging features. It allows the output of
2811 log data to be controlled to a limited extent (setting up the default
Simon Glassef11ed82017-12-04 13:48:27 -07002812 maximum log level for emitting of records). It also provides access
2813 to a command used for testing the log system.
Simon Glassd5f61f22017-12-04 13:48:26 -07002814
Simon Glassce058ae2017-08-04 16:34:59 -06002815config CMD_TRACE
2816 bool "trace - Support tracing of function calls and timing"
Simon Glass89050242021-11-24 09:26:39 -07002817 depends on TRACE
2818 default y
Simon Glassce058ae2017-08-04 16:34:59 -06002819 help
2820 Enables a command to control using of function tracing within
2821 U-Boot. This allows recording of call traces including timing
2822 information. The command can write data to memory for exporting
Simon Glassa24a78d2019-04-08 13:20:51 -06002823 for analysis (e.g. using bootchart). See doc/README.trace for full
Simon Glassce058ae2017-08-04 16:34:59 -06002824 details.
2825
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002826config CMD_AVB
2827 bool "avb - Android Verified Boot 2.0 operations"
Igor Opaniukb0aa74a2018-07-17 14:33:25 +03002828 depends on AVB_VERIFY
Igor Opaniuk60b2f9e2018-06-03 21:56:39 +03002829 help
2830 Enables a "avb" command to perform verification of partitions using
2831 Android Verified Boot 2.0 functionality. It includes such subcommands:
2832 avb init - initialize avb2 subsystem
2833 avb read_rb - read rollback index
2834 avb write_rb - write rollback index
2835 avb is_unlocked - check device lock state
2836 avb get_uuid - read and print uuid of a partition
2837 avb read_part - read data from partition
2838 avb read_part_hex - read data from partition and output to stdout
2839 avb write_part - write data to partition
2840 avb verify - run full verification chain
Joel Peshkin4e9bce12021-04-11 11:21:58 +02002841
2842config CMD_STACKPROTECTOR_TEST
2843 bool "Test command for stack protector"
2844 depends on STACKPROTECTOR
2845 help
2846 Enable stackprot_test command
2847 The stackprot_test command will force a stack overrun to test
2848 the stack smashing detection mechanisms.
2849
Simon Glassac20a1b2017-04-26 22:27:52 -06002850endmenu
2851
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002852config CMD_UBI
2853 tristate "Enable UBI - Unsorted block images commands"
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002854 select MTD_UBI
2855 help
2856 UBI is a software layer above MTD layer which admits use of LVM-like
2857 logical volumes on top of MTD devices, hides some complexities of
2858 flash chips like wear and bad blocks and provides some other useful
2859 capabilities. Please, consult the MTD web site for more details
2860 (www.linux-mtd.infradead.org). Activate this option if you want
2861 to use U-Boot UBI commands.
Miquel Raynalc58fb2c2018-09-29 12:58:29 +02002862 It is also strongly encouraged to also enable CONFIG_MTD to get full
2863 partition support.
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02002864
Philippe Reynes83f70782020-03-23 19:20:47 +01002865config CMD_UBI_RENAME
2866 bool "Enable rename"
2867 depends on CMD_UBI
Philippe Reynes83f70782020-03-23 19:20:47 +01002868 help
2869 Enable a "ubi" command to rename ubi volume:
2870 ubi rename <oldname> <newname>
2871
Boris Brezillon173aafb2017-02-27 18:22:06 +01002872config CMD_UBIFS
2873 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01002874 depends on CMD_UBI
Michal Simek5ed063d2018-07-23 15:55:13 +02002875 default y if CMD_UBI
Karl Beldan24fc9532017-07-12 16:11:47 +00002876 select LZO
Pali Rohárb257c4e2022-05-23 22:50:36 +02002877 select GZIP
Boris Brezillon173aafb2017-02-27 18:22:06 +01002878 help
2879 UBIFS is a file system for flash devices which works on top of UBI.
2880
Aswath Govindraju19f7a342021-08-13 23:04:41 +05302881config MMC_SPEED_MODE_SET
2882 bool "set speed mode using mmc command"
2883 depends on CMD_MMC
Aswath Govindraju19f7a342021-08-13 23:04:41 +05302884 help
2885 Enable setting speed mode using mmc rescan and mmc dev commands.
2886 The speed mode is provided as the last argument in these commands
2887 and is indicated using the index from enum bus_mode in
2888 include/mmc.h. A speed mode can be set only if it has already
2889 been enabled in the device tree.
Alexey Romanov311106a2023-01-10 13:56:47 +03002890
2891config CMD_MESON
2892 bool "Amlogic Meson commands"
2893 depends on ARCH_MESON
2894 default y
2895 help
2896 Enable useful commands for the Meson Soc family developed by Amlogic Inc.
Simon Glass88d9b262023-10-26 14:31:29 -04002897
2898endif