blob: cd72ea8e56a98a0f67192e1b714bfd3fd875f90c [file] [log] [blame]
Simon Glass72a8cf82016-01-17 20:53:51 -07001menu "Command line interface"
2
Simon Glass302a6482016-03-13 19:07:28 -06003config CMDLINE
4 bool "Support U-Boot commands"
5 default y
6 help
7 Enable U-Boot's command-line functions. This provides a means
8 to enter commands into U-Boot for a wide variety of purposes. It
9 also allows scripts (containing commands) to be executed.
10 Various commands and command categorys can be indivdually enabled.
11 Depending on the number of commands enabled, this can add
12 substantially to the size of U-Boot.
13
Simon Glass72a8cf82016-01-17 20:53:51 -070014config HUSH_PARSER
15 bool "Use hush shell"
Simon Glass302a6482016-03-13 19:07:28 -060016 depends on CMDLINE
Simon Glass72a8cf82016-01-17 20:53:51 -070017 help
18 This option enables the "hush" shell (from Busybox) as command line
19 interpreter, thus enabling powerful command line syntax like
20 if...then...else...fi conditionals or `&&' and '||'
21 constructs ("shell scripts").
22
23 If disabled, you get the old, much simpler behaviour with a somewhat
24 smaller memory footprint.
25
Simon Glass72a8cf82016-01-17 20:53:51 -070026config SYS_PROMPT
27 string "Shell prompt"
28 default "=> "
29 help
30 This string is displayed in the command line to the left of the
31 cursor.
32
33menu "Autoboot options"
34
Masahiro Yamada41598c82016-06-20 17:33:39 +090035config AUTOBOOT
36 bool "Autoboot"
37 default y
38 help
39 This enables the autoboot. See doc/README.autoboot for detail.
40
Simon Glass72a8cf82016-01-17 20:53:51 -070041config AUTOBOOT_KEYED
42 bool "Stop autobooting via specific input key / string"
43 default n
44 help
45 This option enables stopping (aborting) of the automatic
46 boot feature only by issuing a specific input key or
47 string. If not enabled, any input key will abort the
48 U-Boot automatic booting process and bring the device
49 to the U-Boot prompt for user input.
50
51config AUTOBOOT_PROMPT
52 string "Autoboot stop prompt"
53 depends on AUTOBOOT_KEYED
54 default "Autoboot in %d seconds\\n"
55 help
56 This string is displayed before the boot delay selected by
57 CONFIG_BOOTDELAY starts. If it is not defined there is no
58 output indicating that autoboot is in progress.
59
60 Note that this define is used as the (only) argument to a
61 printf() call, so it may contain '%' format specifications,
62 provided that it also includes, sepearated by commas exactly
63 like in a printf statement, the required arguments. It is
64 the responsibility of the user to select only such arguments
65 that are valid in the given context.
66
67config AUTOBOOT_ENCRYPTION
68 bool "Enable encryption in autoboot stopping"
69 depends on AUTOBOOT_KEYED
70 default n
71
72config AUTOBOOT_DELAY_STR
73 string "Delay autobooting via specific input key / string"
74 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
75 help
76 This option delays the automatic boot feature by issuing
77 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
78 or the environment variable "bootdelaykey" is specified
79 and this string is received from console input before
80 autoboot starts booting, U-Boot gives a command prompt. The
81 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
82 used, otherwise it never times out.
83
84config AUTOBOOT_STOP_STR
85 string "Stop autobooting via specific input key / string"
86 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
87 help
88 This option enables stopping (aborting) of the automatic
89 boot feature only by issuing a specific input key or
90 string. If CONFIG_AUTOBOOT_STOP_STR or the environment
91 variable "bootstopkey" is specified and this string is
92 received from console input before autoboot starts booting,
93 U-Boot gives a command prompt. The U-Boot prompt never
94 times out, even if CONFIG_BOOT_RETRY_TIME is used.
95
96config AUTOBOOT_KEYED_CTRLC
97 bool "Enable Ctrl-C autoboot interruption"
98 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
99 default n
100 help
101 This option allows for the boot sequence to be interrupted
102 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
103 Setting this variable provides an escape sequence from the
104 limited "password" strings.
105
106config AUTOBOOT_STOP_STR_SHA256
107 string "Stop autobooting via SHA256 encrypted password"
108 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
109 help
110 This option adds the feature to only stop the autobooting,
111 and therefore boot into the U-Boot prompt, when the input
112 string / password matches a values that is encypted via
113 a SHA256 hash and saved in the environment.
114
115endmenu
116
Steve Raee016f0b2016-08-15 17:26:26 -0700117source "cmd/fastboot/Kconfig"
118
Simon Glass72a8cf82016-01-17 20:53:51 -0700119comment "Commands"
120
121menu "Info commands"
122
123config CMD_BDI
124 bool "bdinfo"
125 default y
126 help
127 Print board info
128
Masahiro Yamada61304db2017-01-30 11:12:07 +0900129config CMD_CONFIG
130 bool "config"
131 select BUILD_BIN2C
132 default SANDBOX
133 help
134 Print ".config" contents.
135
136 If this option is enabled, the ".config" file contents are embedded
137 in the U-Boot image and can be printed on the console by the "config"
138 command. This provides information of which options are enabled on
139 the running U-Boot.
140
Simon Glass72a8cf82016-01-17 20:53:51 -0700141config CMD_CONSOLE
142 bool "coninfo"
143 default y
144 help
145 Print console devices and information.
146
147config CMD_CPU
148 bool "cpu"
149 help
150 Print information about available CPUs. This normally shows the
151 number of CPUs, type (e.g. manufacturer, architecture, product or
152 internal name) and clock frequency. Other information may be
153 available depending on the CPU driver.
154
155config CMD_LICENSE
156 bool "license"
Masahiro Yamadad726f222017-01-30 11:12:08 +0900157 select BUILD_BIN2C
Simon Glass72a8cf82016-01-17 20:53:51 -0700158 help
159 Print GPL license text
160
161endmenu
162
163menu "Boot commands"
164
165config CMD_BOOTD
166 bool "bootd"
167 default y
168 help
169 Run the command stored in the environment "bootcmd", i.e.
170 "bootd" does the same thing as "run bootcmd".
171
172config CMD_BOOTM
173 bool "bootm"
174 default y
175 help
176 Boot an application image from the memory.
177
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500178config CMD_BOOTZ
179 bool "bootz"
180 help
181 Boot the Linux zImage
182
Masahiro Yamada26959272016-08-12 08:31:16 -0400183config CMD_BOOTI
184 bool "booti"
185 depends on ARM64
186 default y
187 help
188 Boot an AArch64 Linux Kernel image from memory.
189
Alexander Grafb9939332016-03-10 00:27:20 +0100190config CMD_BOOTEFI
191 bool "bootefi"
192 depends on EFI_LOADER
193 default y
194 help
195 Boot an EFI image from memory.
196
Alexander Graf95b62b22016-11-17 22:40:10 +0100197config CMD_BOOTEFI_HELLO_COMPILE
198 bool "Compile a standard EFI hello world binary for testing"
199 depends on CMD_BOOTEFI && (ARM || X86)
200 default y
201 help
202 This compiles a standard EFI hello world application with U-Boot so
203 that it can be used with the test/py testing framework. This is useful
204 for testing that EFI is working at a basic level, and for bringing
205 up EFI support on a new architecture.
206
207 No additional space will be required in the resulting U-Boot binary
208 when this option is enabled.
209
Simon Glassc7ae3df2016-11-07 08:47:08 -0700210config CMD_BOOTEFI_HELLO
211 bool "Allow booting a standard EFI hello world for testing"
Alexander Graf95b62b22016-11-17 22:40:10 +0100212 depends on CMD_BOOTEFI_HELLO_COMPILE
Simon Glassc7ae3df2016-11-07 08:47:08 -0700213 help
214 This adds a standard EFI hello world application to U-Boot so that
215 it can be used with the 'bootefi hello' command. This is useful
216 for testing that EFI is working at a basic level, and for bringing
217 up EFI support on a new architecture.
218
Tom Rini4880b022016-11-29 09:14:56 -0500219config CMD_BOOTMENU
220 bool "bootmenu"
221 select MENU
222 help
223 Add an ANSI terminal boot menu command.
224
Simon Glass72a8cf82016-01-17 20:53:51 -0700225config CMD_ELF
226 bool "bootelf, bootvx"
227 default y
228 help
229 Boot an ELF/vxWorks image from the memory.
230
Michal Simek23922e22016-04-06 20:28:04 +0200231config CMD_FDT
232 bool "Flattened Device Tree utility commands"
233 default y
234 depends on OF_LIBFDT
235 help
236 Do FDT related setup before booting into the Operating System.
237
Simon Glass72a8cf82016-01-17 20:53:51 -0700238config CMD_GO
239 bool "go"
240 default y
241 help
242 Start an application at a given address.
243
244config CMD_RUN
245 bool "run"
246 default y
247 help
248 Run the command in the given environment variable.
249
250config CMD_IMI
251 bool "iminfo"
252 default y
253 help
254 Print header information for application image.
255
256config CMD_IMLS
257 bool "imls"
258 default y
259 help
260 List all images found in flash
261
262config CMD_XIMG
263 bool "imxtract"
264 default y
265 help
266 Extract a part of a multi-image.
267
268config CMD_POWEROFF
Michal Simeke05d5052017-06-05 08:28:17 +0200269 bool "poweroff"
270 help
271 Poweroff/Shutdown the system
Simon Glass72a8cf82016-01-17 20:53:51 -0700272
273endmenu
274
275menu "Environment commands"
276
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500277config CMD_ASKENV
278 bool "ask for env variable"
279 help
280 Ask for environment variable
281
Simon Glass72a8cf82016-01-17 20:53:51 -0700282config CMD_EXPORTENV
283 bool "env export"
284 default y
285 help
286 Export environments.
287
288config CMD_IMPORTENV
289 bool "env import"
290 default y
291 help
292 Import environments.
293
294config CMD_EDITENV
295 bool "editenv"
296 default y
297 help
298 Edit environment variable.
299
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500300config CMD_GREPENV
301 bool "search env"
302 help
303 Allow for searching environment variables
304
Simon Glass72a8cf82016-01-17 20:53:51 -0700305config CMD_SAVEENV
306 bool "saveenv"
307 default y
308 help
309 Save all environment variables into the compiled-in persistent
310 storage.
311
312config CMD_ENV_EXISTS
313 bool "env exists"
314 default y
315 help
316 Check if a variable is defined in the environment for use in
317 shell scripting.
318
Simon Glassa55d29d2017-05-17 03:25:13 -0600319config CMD_ENV_CALLBACK
320 bool "env callbacks - print callbacks and their associated variables"
321 help
322 Some environment variable have callbacks defined by
323 U_BOOT_ENV_CALLBACK. These are called when the variable changes.
324 For example changing "baudrate" adjust the serial baud rate. This
325 command lists the currently defined callbacks.
326
Simon Glassffc76582017-05-17 03:25:14 -0600327config CMD_ENV_FLAGS
328 bool "env flags -print variables that have non-default flags"
329 help
330 Some environment variables have special flags that control their
331 behaviour. For example, serial# can only be written once and cannot
332 be deleted. This command shows the variables that have special
333 flags.
334
Simon Glass72a8cf82016-01-17 20:53:51 -0700335endmenu
336
337menu "Memory commands"
338
339config CMD_MEMORY
340 bool "md, mm, nm, mw, cp, cmp, base, loop"
341 default y
342 help
Fabio Estevamc99d1b32016-12-15 20:02:19 -0200343 Memory commands.
Simon Glass72a8cf82016-01-17 20:53:51 -0700344 md - memory display
345 mm - memory modify (auto-incrementing address)
346 nm - memory modify (constant address)
347 mw - memory write (fill)
348 cp - memory copy
349 cmp - memory compare
350 base - print or set address offset
Fabio Estevamc99d1b32016-12-15 20:02:19 -0200351 loop - initialize loop on address range
Simon Glass72a8cf82016-01-17 20:53:51 -0700352
353config CMD_CRC32
354 bool "crc32"
Simon Glassd70f9192017-05-17 09:05:34 -0600355 select HASH
Simon Glass72a8cf82016-01-17 20:53:51 -0700356 default y
357 help
358 Compute CRC32.
359
Daniel Thompson221a9492017-05-19 17:26:58 +0100360config CRC32_VERIFY
361 bool "crc32 -v"
362 depends on CMD_CRC32
363 help
364 Add -v option to verify data against a crc32 checksum.
365
Simon Glassa1dc9802017-05-17 03:25:10 -0600366config CMD_EEPROM
367 bool "eeprom - EEPROM subsystem"
368 help
369 (deprecated, needs conversion to driver model)
370 Provides commands to read and write EEPROM (Electrically Erasable
371 Programmable Read Only Memory) chips that are connected over an
372 I2C bus.
373
374config CMD_EEPROM_LAYOUT
375 bool "Enable layout-aware eeprom commands"
376 depends on CMD_EEPROM
377 help
378 (deprecated, needs conversion to driver model)
379 When enabled, additional eeprom sub-commands become available.
380
381 eeprom print - prints the contents of the eeprom in a human-readable
382 way (eeprom layout fields, and data formatted to be fit for human
383 consumption).
384
385 eeprom update - allows user to update eeprom fields by specifying
386 the field name, and providing the new data in a human readable format
387 (same format as displayed by the eeprom print command).
388
389 Both commands can either auto detect the layout, or be told which
390 layout to use.
391
392 Feature API:
393 __weak int parse_layout_version(char *str)
394 - override to provide your own layout name parsing
395 __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
396 int layout_version);
397 - override to setup the layout metadata based on the version
398 __weak int eeprom_layout_detect(unsigned char *data)
399 - override to provide your own algorithm for detecting layout
400 version
401 eeprom_field.c
402 - contains various printing and updating functions for common
403 types of eeprom fields. Can be used for defining
404 custom layouts.
405
406config EEPROM_LAYOUT_HELP_STRING
407 string "Tells user what layout names are supported"
408 depends on CMD_EEPROM_LAYOUT
409 default "<not defined>"
410 help
411 Help printed with the LAYOUT VERSIONS part of the 'eeprom'
412 command's help.
413
Andre Przywarabea79d72017-03-15 01:19:05 +0000414config CMD_MD5SUM
415 bool "md5sum"
416 default n
417 select MD5
418 help
419 Compute MD5 checksum.
420
Daniel Thompson221a9492017-05-19 17:26:58 +0100421config MD5SUM_VERIFY
Andre Przywarabea79d72017-03-15 01:19:05 +0000422 bool "md5sum -v"
423 default n
424 depends on CMD_MD5SUM
425 help
426 Add -v option to verify data against an MD5 checksum.
427
Daniel Thompson221a9492017-05-19 17:26:58 +0100428config CMD_SHA1SUM
429 bool "sha1sum"
430 select SHA1
431 help
432 Compute SHA1 checksum.
433
434config SHA1SUM_VERIFY
435 bool "sha1sum -v"
436 depends on CMD_SHA1SUM
437 help
438 Add -v option to verify data against a SHA1 checksum.
439
Simon Glass72a8cf82016-01-17 20:53:51 -0700440config LOOPW
441 bool "loopw"
442 help
443 Infinite write loop on address range
444
445config CMD_MEMTEST
446 bool "memtest"
447 help
448 Simple RAM read/write test.
449
450config CMD_MX_CYCLIC
451 bool "mdc, mwc"
452 help
453 mdc - memory display cyclic
454 mwc - memory write cyclic
455
456config CMD_MEMINFO
457 bool "meminfo"
458 help
459 Display memory information.
460
Simon Glassee7c0e72017-05-17 03:25:43 -0600461endmenu
462
463menu "Compression commands"
464
465config CMD_LZMADEC
466 bool "lzmadec"
467 select LZMA
468 help
469 Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
470 image from memory.
471
Masahiro Yamadae9d33e72017-02-05 10:42:56 +0900472config CMD_UNZIP
473 bool "unzip"
474 help
475 Uncompress a zip-compressed memory region.
476
477config CMD_ZIP
478 bool "zip"
479 help
480 Compress a memory region with zlib deflate method.
481
Simon Glass72a8cf82016-01-17 20:53:51 -0700482endmenu
483
484menu "Device access commands"
485
Simon Glassd3156282017-04-26 22:28:02 -0600486config CMD_CLK
487 bool "clk - Show clock frequencies"
488 help
489 (deprecated)
490 Shows clock frequences by calling a sock_clk_dump() hook function.
491 This is depreated in favour of using the CLK uclass and accessing
492 clock values from associated drivers. However currently no command
493 exists for this.
494
Simon Glass72a8cf82016-01-17 20:53:51 -0700495config CMD_DM
496 bool "dm - Access to driver model information"
497 depends on DM
498 default y
499 help
500 Provides access to driver model data structures and information,
501 such as a list of devices, list of uclasses and the state of each
502 device (e.g. activated). This is not required for operation, but
503 can be useful to see the state of driver model for debugging or
504 interest.
505
506config CMD_DEMO
507 bool "demo - Demonstration commands for driver model"
508 depends on DM
509 help
510 Provides a 'demo' command which can be used to play around with
511 driver model. To use this properly you will need to enable one or
512 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
513 Otherwise you will always get an empty list of devices. The demo
514 devices are defined in the sandbox device tree, so the easiest
515 option is to use sandbox and pass the -d point to sandbox's
516 u-boot.dtb file.
517
Simon Glass75eb9972017-05-17 03:25:29 -0600518config CMD_IDE
519 bool "ide - Support for IDE drivers"
Simon Glassfc843a02017-05-17 03:25:30 -0600520 select IDE
Simon Glass75eb9972017-05-17 03:25:29 -0600521 help
522 Provides an 'ide' command which allows accessing the IDE drive,
523 reseting the IDE interface, printing the partition table and
524 geting device info. It also enables the 'diskboot' command which
525 permits booting from an IDE drive.
526
Simon Glass594e8d12017-05-17 03:25:34 -0600527config CMD_IO
528 bool "io - Support for performing I/O accesses"
529 help
530 Provides an 'iod' command to display I/O space and an 'iow' command
531 to write values to the I/O space. This can be useful for manually
532 checking the state of devices during boot when debugging device
533 drivers, etc.
534
Simon Glass7d0f5c12017-05-17 03:25:36 -0600535config CMD_IOTRACE
536 bool "iotrace - Support for tracing I/O activity"
537 help
538 Provides an 'iotrace' command which supports recording I/O reads and
539 writes in a trace buffer in memory . It also maintains a checksum
540 of the trace records (even if space is exhausted) so that the
541 sequence of I/O accesses can be verified.
542
543 When debugging drivers it is useful to see what I/O accesses were
544 done and in what order.
545
546 Even if the individual accesses are of little interest it can be
547 useful to verify that the access pattern is consistent each time
548 an operation is performed. In this case a checksum can be used to
549 characterise the operation of a driver. The checksum can be compared
550 across different runs of the operation to verify that the driver is
551 working properly.
552
553 In particular, when performing major refactoring of the driver, where
554 the access pattern should not change, the checksum provides assurance
555 that the refactoring work has not broken the driver.
556
557 This works by sneaking into the io.h heder for an architecture and
558 redirecting I/O accesses through iotrace's tracing mechanism.
559
560 For now no commands are provided to examine the trace buffer. The
561 format is fairly simple, so 'md' is a reasonable substitute.
562
563 Note: The checksum feature is only useful for I/O regions where the
564 contents do not change outside of software control. Where this is not
565 suitable you can fall back to manually comparing the addresses. It
566 might be useful to enhance tracing to only checksum the accesses and
567 not the data read/written.
568
Simon Glass72a8cf82016-01-17 20:53:51 -0700569config CMD_LOADB
570 bool "loadb"
571 default y
572 help
573 Load a binary file over serial line.
574
575config CMD_LOADS
576 bool "loads"
577 default y
578 help
579 Load an S-Record file over serial line
580
581config CMD_FLASH
582 bool "flinfo, erase, protect"
583 default y
584 help
585 NOR flash support.
586 flinfo - print FLASH memory information
587 erase - FLASH memory
588 protect - enable or disable FLASH write protection
589
Patrick Delaunayb331cd62017-01-27 11:00:42 +0100590config CMD_GPT
591 bool "GPT (GUID Partition Table) command"
592 select PARTITION_UUIDS
593 select EFI_PARTITION
594 help
595 Enable the 'gpt' command to ready and write GPT style partition
596 tables.
597
Alison Chaiken203f9b42017-07-04 11:19:18 -0700598config CMD_GPT_RENAME
599 bool "GPT partition renaming commands"
600 depends on CMD_GPT
601 help
602 Enables the 'gpt' command to interchange names on two GPT
603 partitions via the 'gpt swap' command or to rename single
604 partitions via the 'rename' command.
605
Simon Glass72a8cf82016-01-17 20:53:51 -0700606config CMD_ARMFLASH
Tom Rini78d1e1d2016-04-22 16:41:25 -0400607 #depends on FLASH_CFI_DRIVER
Simon Glass72a8cf82016-01-17 20:53:51 -0700608 bool "armflash"
609 help
610 ARM Ltd reference designs flash partition access
611
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500612config CMD_MMC
613 bool "mmc"
614 help
615 MMC memory mapped support.
616
Simon Glass72a8cf82016-01-17 20:53:51 -0700617config CMD_NAND
618 bool "nand"
Maxime Ripard522c2822017-03-03 15:13:30 +0100619 default y if NAND_SUNXI
Simon Glass72a8cf82016-01-17 20:53:51 -0700620 help
621 NAND support.
622
Boris Brezillone915d202017-02-27 18:22:07 +0100623if CMD_NAND
624config CMD_NAND_TRIMFFS
625 bool "nand write.trimffs"
Hans de Goeded482a8d2017-02-27 18:22:10 +0100626 default y if ARCH_SUNXI
Boris Brezillone915d202017-02-27 18:22:07 +0100627 help
628 Allows one to skip empty pages when flashing something on a NAND.
629
630config CMD_NAND_LOCK_UNLOCK
631 bool "nand lock/unlock"
632 help
633 NAND locking support.
634
635config CMD_NAND_TORTURE
636 bool "nand torture"
637 help
638 NAND torture support.
639
640endif # CMD_NAND
641
Patrick Delaunayb331cd62017-01-27 11:00:42 +0100642config CMD_PART
643 bool "part"
644 select PARTITION_UUIDS
645 help
646 Read and display information about the partition table on
647 various media.
648
Simon Glass72a8cf82016-01-17 20:53:51 -0700649config CMD_SF
650 bool "sf"
651 help
652 SPI Flash support
653
654config CMD_SPI
655 bool "sspi"
656 help
657 SPI utility command.
658
659config CMD_I2C
660 bool "i2c"
661 help
662 I2C support.
663
664config CMD_USB
665 bool "usb"
666 help
667 USB support.
668
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500669config CMD_DFU
670 bool "dfu"
Tom Rini6828e602016-09-19 13:31:30 -0400671 select USB_FUNCTION_DFU
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500672 help
673 Enables the command "dfu" which is used to have U-Boot create a DFU
674 class device via USB.
675
676config CMD_USB_MASS_STORAGE
677 bool "UMS usb mass storage"
678 help
679 USB mass storage support
680
Simon Glass72a8cf82016-01-17 20:53:51 -0700681config CMD_FPGA
682 bool "fpga"
683 default y
684 help
685 FPGA support.
686
Simon Glassfe7604a2017-05-17 03:25:21 -0600687config CMD_FPGA_LOADBP
688 bool "fpga loadbp - load partial bitstream (Xilinx only)"
689 depends on CMD_FPGA
690 help
691 Supports loading an FPGA device from a bitstream buffer containing
692 a partial bitstream.
693
694config CMD_FPGA_LOADFS
695 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
696 depends on CMD_FPGA
697 help
698 Supports loading an FPGA device from a FAT filesystem.
699
700config CMD_FPGA_LOADMK
701 bool "fpga loadmk - load bitstream from image"
702 depends on CMD_FPGA
703 help
704 Supports loading an FPGA device from a image generated by mkimage.
705
706config CMD_FPGA_LOADP
707 bool "fpga loadp - load partial bitstream"
708 depends on CMD_FPGA
709 help
710 Supports loading an FPGA device from a bitstream buffer containing
711 a partial bitstream.
712
Simon Glassdf1c4892017-05-17 03:25:20 -0600713config CMD_FPGAD
714 bool "fpgad - dump FPGA registers"
715 help
716 (legacy, needs conversion to driver model)
717 Provides a way to dump FPGA registers by calling the board-specific
718 fpga_get_reg() function. This functions similarly to the 'md'
719 command.
720
Simon Glass51f29372017-05-17 03:25:22 -0600721config CMD_FUSE
722 bool "fuse - support for the fuse subssystem"
723 help
724 (deprecated - needs conversion to driver model)
725 This allows reading, sensing, programming or overriding fuses
726 which control the behaviour of the device. The command uses the
727 fuse_...() API.
728
Simon Glass72a8cf82016-01-17 20:53:51 -0700729config CMD_REMOTEPROC
730 bool "remoteproc"
731 depends on REMOTEPROC
732 help
733 Support for Remote Processor control
734
735config CMD_GPIO
736 bool "gpio"
737 help
738 GPIO support.
739
Simon Glassb0e7a702017-05-17 03:25:18 -0600740config CMD_FDC
741 bool "fdcboot - Boot from floppy device"
742 help
743 The 'fdtboot' command allows booting an image from a floppy disk.
744
Simon Glass3bf926c2017-06-14 21:28:24 -0600745config CMD_SATA
746 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -0600747 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -0600748 help
749 SATA (Serial Advanced Technology Attachment) is a serial bus
750 standard for connecting to hard drives and other storage devices.
751 This command provides information about attached devices and allows
752 reading, writing and other operations.
753
754 SATA replaces PATA (originally just ATA), which stands for Parallel AT
755 Attachment, where AT refers to an IBM AT (Advanced Technology)
756 computer released in 1984.
757
Simon Glass72a8cf82016-01-17 20:53:51 -0700758endmenu
759
760
761menu "Shell scripting commands"
762
763config CMD_ECHO
764 bool "echo"
765 default y
766 help
767 Echo args to console
768
769config CMD_ITEST
770 bool "itest"
771 default y
772 help
773 Return true/false on integer compare.
774
775config CMD_SOURCE
776 bool "source"
777 default y
778 help
779 Run script from memory
780
781config CMD_SETEXPR
782 bool "setexpr"
783 default y
784 help
785 Evaluate boolean and math expressions and store the result in an env
786 variable.
787 Also supports loading the value at a memory location into a variable.
788 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
789
790endmenu
791
792menu "Network commands"
793
794config CMD_NET
795 bool "bootp, tftpboot"
796 select NET
797 default y
798 help
799 Network commands.
800 bootp - boot image via network using BOOTP/TFTP protocol
801 tftpboot - boot image via network using TFTP protocol
802
803config CMD_TFTPPUT
804 bool "tftp put"
805 help
806 TFTP put command, for uploading files to a server
807
808config CMD_TFTPSRV
809 bool "tftpsrv"
810 help
811 Act as a TFTP server and boot the first received file
812
813config CMD_RARP
814 bool "rarpboot"
815 help
816 Boot image via network using RARP/TFTP protocol
817
818config CMD_DHCP
819 bool "dhcp"
820 help
821 Boot image via network using DHCP/TFTP protocol
822
Yann E. MORINbfb380b2016-11-13 21:59:52 +0100823config CMD_PXE
824 bool "pxe"
825 select MENU
826 help
827 Boot image via network using PXE protocol
828
Simon Glass72a8cf82016-01-17 20:53:51 -0700829config CMD_NFS
830 bool "nfs"
831 default y
832 help
833 Boot image via network using NFS protocol.
834
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500835config CMD_MII
836 bool "mii"
837 help
838 Enable MII utility commands.
839
Simon Glass72a8cf82016-01-17 20:53:51 -0700840config CMD_PING
841 bool "ping"
842 help
843 Send ICMP ECHO_REQUEST to network host
844
845config CMD_CDP
846 bool "cdp"
847 help
848 Perform CDP network configuration
849
850config CMD_SNTP
851 bool "sntp"
852 help
853 Synchronize RTC via network
854
855config CMD_DNS
856 bool "dns"
857 help
858 Lookup the IP of a hostname
859
860config CMD_LINK_LOCAL
861 bool "linklocal"
862 help
863 Acquire a network IP address using the link-local protocol
864
Simon Glassef072202017-05-17 03:25:17 -0600865config CMD_ETHSW
866 bool "ethsw"
867 help
868 Allow control of L2 Ethernet switch commands. These are supported
869 by the vsc9953 Ethernet driver at present. Sub-commands allow
870 operations such as enabling / disabling a port and
871 viewing/maintaining the filtering database (FDB)
872
Simon Glass72a8cf82016-01-17 20:53:51 -0700873endmenu
874
875menu "Misc commands"
876
Simon Glass0f710252017-04-26 22:27:55 -0600877config CMD_BMP
878 bool "Enable 'bmp' command"
879 depends on LCD || DM_VIDEO || VIDEO
880 help
881 This provides a way to obtain information about a BMP-format iamge
882 and to display it. BMP (which presumably stands for BitMaP) is a
883 file format defined by Microsoft which supports images of various
884 depths, formats and compression methods. Headers on the file
885 determine the formats used. This command can be used by first loading
886 the image into RAM, then using this command to look at it or display
887 it.
888
Simon Glass4893e342017-04-26 22:27:56 -0600889config CMD_BSP
890 bool "Enable board-specific commands"
891 help
892 (deprecated: instead, please define a Kconfig option for each command)
893
894 Some boards have board-specific commands which are only enabled
895 during developemnt and need to be turned off for production. This
896 option provides a way to control this. The commands that are enabled
897 vary depending on the board.
898
Tomas Melincd3d4882016-11-25 11:01:03 +0200899config CMD_BKOPS_ENABLE
900 bool "mmc bkops enable"
901 depends on CMD_MMC
902 default n
903 help
904 Enable command for setting manual background operations handshake
905 on a eMMC device. The feature is optionally available on eMMC devices
906 conforming to standard >= 4.41.
907
Eric Nelsone40cf342016-03-28 10:05:44 -0700908config CMD_BLOCK_CACHE
909 bool "blkcache - control and stats for block cache"
910 depends on BLOCK_CACHE
911 default y if BLOCK_CACHE
912 help
913 Enable the blkcache command, which can be used to control the
914 operation of the cache functions.
915 This is most useful when fine-tuning the operation of the cache
916 during development, but also allows the cache to be disabled when
917 it might hurt performance (e.g. when using the ums command).
918
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500919config CMD_CACHE
920 bool "icache or dcache"
921 help
922 Enable the "icache" and "dcache" commands
923
Simon Glass93d66ee2017-04-26 22:28:09 -0600924config CMD_DISPLAY
925 bool "Enable the 'display' command, for character displays"
926 help
927 (this needs porting to driver model)
928 This enables the 'display' command which allows a string to be
929 displayed on a simple board-specific display. Implement
930 display_putc() to use it.
931
Simon Glassffe20522017-04-10 11:34:59 -0600932config CMD_LED
933 bool "led"
934 default y if LED
935 help
936 Enable the 'led' command which allows for control of LEDs supported
937 by the board. The LEDs can be listed with 'led list' and controlled
938 with led on/off/togle/blink. Any LED drivers can be controlled with
939 this command, e.g. led_gpio.
940
Chris Packhamc9032ce2017-04-29 15:20:28 +1200941config CMD_DATE
942 bool "date"
943 default y if DM_RTC
944 help
945 Enable the 'date' command for getting/setting the time/date in RTC
946 devices.
947
Simon Glass72a8cf82016-01-17 20:53:51 -0700948config CMD_TIME
949 bool "time"
950 help
951 Run commands and summarize execution time.
952
Simon Glassd91a9d72017-05-17 03:25:23 -0600953config CMD_GETTIME
954 bool "gettime - read elapsed time"
955 help
956 Enable the 'gettime' command which reads the elapsed time since
957 U-Boot started running. This shows the time in seconds and
958 milliseconds. See also the 'bootstage' command which provides more
959 flexibility for boot timing.
960
Simon Glass72a8cf82016-01-17 20:53:51 -0700961# TODO: rename to CMD_SLEEP
962config CMD_MISC
963 bool "sleep"
964 default y
965 help
966 Delay execution for some time
967
968config CMD_TIMER
969 bool "timer"
970 help
971 Access the system timer.
972
Simon Glass72a8cf82016-01-17 20:53:51 -0700973config CMD_SOUND
974 bool "sound"
975 depends on SOUND
976 help
977 This provides basic access to the U-Boot's sound support. The main
978 feature is to play a beep.
979
980 sound init - set up sound system
981 sound play - play a sound
982
Miao Yan18686592016-05-22 19:37:17 -0700983config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -0400984 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -0700985 select QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -0400986 help
987 This provides access to the QEMU firmware interface. The main
988 feature is to allow easy loading of files passed to qemu-system
989 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +0200990
991source "cmd/mvebu/Kconfig"
992
Simon Glass72a8cf82016-01-17 20:53:51 -0700993endmenu
994
995config CMD_BOOTSTAGE
996 bool "Enable the 'bootstage' command"
997 depends on BOOTSTAGE
998 help
999 Add a 'bootstage' command which supports printing a report
1000 and un/stashing of bootstage data.
1001
1002menu "Power commands"
1003config CMD_PMIC
1004 bool "Enable Driver Model PMIC command"
1005 depends on DM_PMIC
1006 help
1007 This is the pmic command, based on a driver model pmic's API.
1008 Command features are unchanged:
1009 - list - list pmic devices
1010 - pmic dev <id> - show or [set] operating pmic device (NEW)
1011 - pmic dump - dump registers
1012 - pmic read address - read byte of register at address
1013 - pmic write address - write byte to register at address
1014 The only one change for this command is 'dev' subcommand.
1015
1016config CMD_REGULATOR
1017 bool "Enable Driver Model REGULATOR command"
1018 depends on DM_REGULATOR
1019 help
1020 This command is based on driver model regulator's API.
1021 User interface features:
1022 - list - list regulator devices
1023 - regulator dev <id> - show or [set] operating regulator device
1024 - regulator info - print constraints info
1025 - regulator status - print operating status
1026 - regulator value <val] <-f> - print/[set] voltage value [uV]
1027 - regulator current <val> - print/[set] current value [uA]
1028 - regulator mode <id> - print/[set] operating mode id
1029 - regulator enable - enable the regulator output
1030 - regulator disable - disable the regulator output
1031
1032 The '-f' (force) option can be used for set the value which exceeds
1033 the limits, which are found in device-tree and are kept in regulator's
1034 uclass platdata structure.
1035
1036endmenu
1037
1038menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06001039config CMD_AES
1040 bool "Enable the 'aes' command"
1041 select AES
1042 help
1043 This provides a means to encrypt and decrypt data using the AES
1044 (Advanced Encryption Standard). This algorithm uses a symetric key
1045 and is widely used as a streaming cipher. Different key lengths are
1046 supported by the algorithm but this command only supports 128 bits
1047 at present.
1048
Simon Glassc04b9b32017-04-26 22:27:53 -06001049config CMD_BLOB
1050 bool "Enable the 'blob' command"
1051 help
1052 This is used with the Freescale secure boot mechanism.
1053
1054 Freescale's SEC block has built-in Blob Protocol which provides
1055 a method for protecting user-defined data across system power
1056 cycles. SEC block protects data in a data structure called a Blob,
1057 which provides both confidentiality and integrity protection.
1058
1059 Encapsulating data as a blob
1060 Each time that the Blob Protocol is used to protect data, a
1061 different randomly generated key is used to encrypt the data.
1062 This random key is itself encrypted using a key which is derived
1063 from SoC's non-volatile secret key and a 16 bit Key identifier.
1064 The resulting encrypted key along with encrypted data is called a
1065 blob. The non-volatile secure key is available for use only during
1066 secure boot.
1067
1068 During decapsulation, the reverse process is performed to get back
1069 the original data.
1070
1071 Sub-commands:
1072 blob enc - encapsulating data as a cryptgraphic blob
1073 blob dec - decapsulating cryptgraphic blob to get the data
1074
1075 Syntax:
1076
1077 blob enc src dst len km
1078
1079 Encapsulate and create blob of data $len bytes long
1080 at address $src and store the result at address $dst.
1081 $km is the 16 byte key modifier is also required for
1082 generation/use as key for cryptographic operation. Key
1083 modifier should be 16 byte long.
1084
1085 blob dec src dst len km
1086
1087 Decapsulate the blob of data at address $src and
1088 store result of $len byte at addr $dst.
1089 $km is the 16 byte key modifier is also required for
1090 generation/use as key for cryptographic operation. Key
1091 modifier should be 16 byte long.
1092
Simon Glass551c3932017-05-17 03:25:25 -06001093config CMD_HASH
1094 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06001095 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06001096 help
1097 This provides a way to hash data in memory using various supported
1098 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1099 saved to memory or to an environment variable. It is also possible
1100 to verify a hash against data in memory.
1101
Daniel Thompson221a9492017-05-19 17:26:58 +01001102config HASH_VERIFY
1103 bool "hash -v"
1104 depends on CMD_HASH
1105 help
1106 Add -v option to verify data against a hash.
1107
Simon Glass72a8cf82016-01-17 20:53:51 -07001108config CMD_TPM
1109 bool "Enable the 'tpm' command"
1110 depends on TPM
1111 help
1112 This provides a means to talk to a TPM from the command line. A wide
1113 range of commands if provided - see 'tpm help' for details. The
1114 command requires a suitable TPM on your board and the correct driver
1115 must be enabled.
1116
1117config CMD_TPM_TEST
1118 bool "Enable the 'tpm test' command"
1119 depends on CMD_TPM
1120 help
1121 This provides a a series of tests to confirm that the TPM is working
1122 correctly. The tests cover initialisation, non-volatile RAM, extend,
1123 global lock and checking that timing is within expectations. The
1124 tests pass correctly on Infineon TPMs but may need to be adjusted
1125 for other devices.
1126
1127endmenu
1128
Moritz Fischerbfeba012016-10-04 17:08:08 -07001129menu "Firmware commands"
1130config CMD_CROS_EC
1131 bool "Enable crosec command"
1132 depends on CROS_EC
1133 default y
1134 help
1135 Enable command-line access to the Chrome OS EC (Embedded
1136 Controller). This provides the 'crosec' command which has
1137 a number of sub-commands for performing EC tasks such as
1138 updating its flash, accessing a small saved context area
1139 and talking to the I2C bus behind the EC (if there is one).
1140endmenu
1141
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001142menu "Filesystem commands"
Simon Glassd66a10f2017-04-26 22:27:58 -06001143config CMD_CBFS
1144 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06001145 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06001146 help
1147 Define this to enable support for reading from a Coreboot
1148 filesystem. This is a ROM-based filesystem used for accessing files
1149 on systems that use coreboot as the first boot-loader and then load
1150 U-Boot to actually boot the Operating System. Available commands are
1151 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1152
Simon Glass97072742017-04-26 22:28:03 -06001153config CMD_CRAMFS
1154 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06001155 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06001156 help
1157 This provides commands for dealing with CRAMFS (Compressed ROM
1158 filesystem). CRAMFS is useful when space is tight since files are
1159 compressed. Two commands are provided:
1160
1161 cramfsls - lists files in a cramfs image
1162 cramfsload - loads a file from a cramfs image
1163
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001164config CMD_EXT2
1165 bool "ext2 command support"
1166 help
1167 Enables EXT2 FS command
1168
1169config CMD_EXT4
1170 bool "ext4 command support"
1171 help
1172 Enables EXT4 FS command
1173
1174config CMD_EXT4_WRITE
1175 depends on CMD_EXT4
1176 bool "ext4 write command support"
1177 help
1178 Enables EXT4 FS write command
1179
1180config CMD_FAT
1181 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05301182 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001183 help
1184 Support for the FAT fs
1185
1186config CMD_FS_GENERIC
1187 bool "filesystem commands"
1188 help
1189 Enables filesystem commands (e.g. load, ls) that work for multiple
1190 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001191
Josua Mayerefbe99c2017-04-24 10:10:45 +02001192config CMD_FS_UUID
1193 bool "fsuuid command"
1194 help
1195 Enables fsuuid command for filesystem UUID.
1196
Simon Glassb8682a72017-05-17 03:25:37 -06001197config CMD_JFFS2
1198 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06001199 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06001200 help
1201 Enables commands to support the JFFS2 (Journalling Flash File System
1202 version 2) filesystem. This enables fsload, ls and fsinfo which
1203 provide the ability to load files, list directories and obtain
1204 filesystem information.
1205
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001206config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001207 bool "MTD partition support"
1208 help
1209 MTD partition support
1210
1211config MTDIDS_DEFAULT
1212 string "Default MTD IDs"
1213 depends on CMD_MTDPARTS
1214 help
1215 Defines a default MTD ID
1216
1217config MTDPARTS_DEFAULT
1218 string "Default MTD partition scheme"
1219 depends on CMD_MTDPARTS
1220 help
1221 Defines a default MTD partitioning scheme in the Linux MTD command
1222 line partitions format
1223
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001224endmenu
1225
Simon Glassac20a1b2017-04-26 22:27:52 -06001226menu "Debug commands"
1227
1228config CMD_BEDBUG
1229 bool "bedbug"
1230 help
1231 The bedbug (emBEDded deBUGger) command provides debugging features
1232 for some PowerPC processors. For details please see the
1233 docuemntation in doc/README.beddbug
1234
Simon Glass3bd25cb2017-04-26 22:28:08 -06001235config CMD_DIAG
1236 bool "diag - Board diagnostics"
1237 help
1238 This command provides access to board diagnostic tests. These are
1239 called Power-on Self Tests (POST). The command allows listing of
1240 available tests and running either all the tests, or specific tests
1241 identified by name.
1242
Simon Glass1b330892017-05-17 03:25:39 -06001243config CMD_IRQ
1244 bool "irq - Show information about interrupts"
Heiko Schocher064b55c2017-06-14 05:49:40 +02001245 depends on !ARM && !MIPS && !SH
Simon Glass1b330892017-05-17 03:25:39 -06001246 help
1247 This enables two commands:
1248
1249 interrupts - enable or disable interrupts
1250 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06001251
1252config CMD_KGDB
1253 bool "kgdb - Allow debugging of U-Boot with gdb"
1254 help
1255 This enables a 'kgdb' command which allows gdb to connect to U-Boot
1256 over a serial link for debugging purposes. This allows
1257 single-stepping, inspecting variables, etc. This is supported only
1258 on PowerPC at present.
1259
Simon Glassac20a1b2017-04-26 22:27:52 -06001260endmenu
1261
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02001262config CMD_UBI
1263 tristate "Enable UBI - Unsorted block images commands"
1264 select CRC32
1265 select MTD_UBI
Karl Beldan22cf9532017-07-12 16:11:46 +00001266 select CMD_MTDPARTS
Maxime Ripard522c2822017-03-03 15:13:30 +01001267 default y if NAND_SUNXI
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02001268 help
1269 UBI is a software layer above MTD layer which admits use of LVM-like
1270 logical volumes on top of MTD devices, hides some complexities of
1271 flash chips like wear and bad blocks and provides some other useful
1272 capabilities. Please, consult the MTD web site for more details
1273 (www.linux-mtd.infradead.org). Activate this option if you want
1274 to use U-Boot UBI commands.
1275
Boris Brezillon173aafb2017-02-27 18:22:06 +01001276config CMD_UBIFS
1277 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01001278 depends on CMD_UBI
Boris Brezillon173aafb2017-02-27 18:22:06 +01001279 select CRC32
Karl Beldan24fc9532017-07-12 16:11:47 +00001280 select LZO
Tom Rinid56b4b12017-07-22 18:36:16 -04001281 default y if CMD_UBI
Boris Brezillon173aafb2017-02-27 18:22:06 +01001282 help
1283 UBIFS is a file system for flash devices which works on top of UBI.
1284
Simon Glass72a8cf82016-01-17 20:53:51 -07001285endmenu