blob: 0d9292b4f66a6ed3ba387ca9a96257265f9c38e4 [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 Glass0c19b4d2017-08-04 16:34:28 -0600486config CMD_ARMFLASH
487 #depends on FLASH_CFI_DRIVER
488 bool "armflash"
489 help
490 ARM Ltd reference designs flash partition access
491
Simon Glassd3156282017-04-26 22:28:02 -0600492config CMD_CLK
493 bool "clk - Show clock frequencies"
494 help
495 (deprecated)
496 Shows clock frequences by calling a sock_clk_dump() hook function.
497 This is depreated in favour of using the CLK uclass and accessing
498 clock values from associated drivers. However currently no command
499 exists for this.
500
Simon Glass72a8cf82016-01-17 20:53:51 -0700501config CMD_DEMO
502 bool "demo - Demonstration commands for driver model"
503 depends on DM
504 help
505 Provides a 'demo' command which can be used to play around with
506 driver model. To use this properly you will need to enable one or
507 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
508 Otherwise you will always get an empty list of devices. The demo
509 devices are defined in the sandbox device tree, so the easiest
510 option is to use sandbox and pass the -d point to sandbox's
511 u-boot.dtb file.
512
Simon Glass0c19b4d2017-08-04 16:34:28 -0600513config CMD_DFU
514 bool "dfu"
515 select USB_FUNCTION_DFU
516 help
517 Enables the command "dfu" which is used to have U-Boot create a DFU
518 class device via USB.
519
520config CMD_DM
521 bool "dm - Access to driver model information"
522 depends on DM
523 default y
524 help
525 Provides access to driver model data structures and information,
526 such as a list of devices, list of uclasses and the state of each
527 device (e.g. activated). This is not required for operation, but
528 can be useful to see the state of driver model for debugging or
529 interest.
530
531config CMD_FDC
532 bool "fdcboot - Boot from floppy device"
533 help
534 The 'fdtboot' command allows booting an image from a floppy disk.
535
536config CMD_FLASH
537 bool "flinfo, erase, protect"
538 default y
539 help
540 NOR flash support.
541 flinfo - print FLASH memory information
542 erase - FLASH memory
543 protect - enable or disable FLASH write protection
544
545config CMD_FPGA
546 bool "fpga"
547 default y
548 help
549 FPGA support.
550
551config CMD_FPGA_LOADBP
552 bool "fpga loadbp - load partial bitstream (Xilinx only)"
553 depends on CMD_FPGA
554 help
555 Supports loading an FPGA device from a bitstream buffer containing
556 a partial bitstream.
557
558config CMD_FPGA_LOADFS
559 bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
560 depends on CMD_FPGA
561 help
562 Supports loading an FPGA device from a FAT filesystem.
563
564config CMD_FPGA_LOADMK
565 bool "fpga loadmk - load bitstream from image"
566 depends on CMD_FPGA
567 help
568 Supports loading an FPGA device from a image generated by mkimage.
569
570config CMD_FPGA_LOADP
571 bool "fpga loadp - load partial bitstream"
572 depends on CMD_FPGA
573 help
574 Supports loading an FPGA device from a bitstream buffer containing
575 a partial bitstream.
576
577config CMD_FPGAD
578 bool "fpgad - dump FPGA registers"
579 help
580 (legacy, needs conversion to driver model)
581 Provides a way to dump FPGA registers by calling the board-specific
582 fpga_get_reg() function. This functions similarly to the 'md'
583 command.
584
585config CMD_FUSE
586 bool "fuse - support for the fuse subssystem"
587 help
588 (deprecated - needs conversion to driver model)
589 This allows reading, sensing, programming or overriding fuses
590 which control the behaviour of the device. The command uses the
591 fuse_...() API.
592
593config CMD_GPIO
594 bool "gpio"
595 help
596 GPIO support.
597
598config CMD_GPT
599 bool "GPT (GUID Partition Table) command"
600 select PARTITION_UUIDS
601 select EFI_PARTITION
602 help
603 Enable the 'gpt' command to ready and write GPT style partition
604 tables.
605
606config CMD_GPT_RENAME
607 bool "GPT partition renaming commands"
608 depends on CMD_GPT
609 help
610 Enables the 'gpt' command to interchange names on two GPT
611 partitions via the 'gpt swap' command or to rename single
612 partitions via the 'rename' command.
613
Simon Glass75eb9972017-05-17 03:25:29 -0600614config CMD_IDE
615 bool "ide - Support for IDE drivers"
Simon Glassfc843a02017-05-17 03:25:30 -0600616 select IDE
Simon Glass75eb9972017-05-17 03:25:29 -0600617 help
618 Provides an 'ide' command which allows accessing the IDE drive,
619 reseting the IDE interface, printing the partition table and
620 geting device info. It also enables the 'diskboot' command which
621 permits booting from an IDE drive.
622
Simon Glass594e8d12017-05-17 03:25:34 -0600623config CMD_IO
624 bool "io - Support for performing I/O accesses"
625 help
626 Provides an 'iod' command to display I/O space and an 'iow' command
627 to write values to the I/O space. This can be useful for manually
628 checking the state of devices during boot when debugging device
629 drivers, etc.
630
Simon Glass7d0f5c12017-05-17 03:25:36 -0600631config CMD_IOTRACE
632 bool "iotrace - Support for tracing I/O activity"
633 help
634 Provides an 'iotrace' command which supports recording I/O reads and
635 writes in a trace buffer in memory . It also maintains a checksum
636 of the trace records (even if space is exhausted) so that the
637 sequence of I/O accesses can be verified.
638
639 When debugging drivers it is useful to see what I/O accesses were
640 done and in what order.
641
642 Even if the individual accesses are of little interest it can be
643 useful to verify that the access pattern is consistent each time
644 an operation is performed. In this case a checksum can be used to
645 characterise the operation of a driver. The checksum can be compared
646 across different runs of the operation to verify that the driver is
647 working properly.
648
649 In particular, when performing major refactoring of the driver, where
650 the access pattern should not change, the checksum provides assurance
651 that the refactoring work has not broken the driver.
652
653 This works by sneaking into the io.h heder for an architecture and
654 redirecting I/O accesses through iotrace's tracing mechanism.
655
656 For now no commands are provided to examine the trace buffer. The
657 format is fairly simple, so 'md' is a reasonable substitute.
658
659 Note: The checksum feature is only useful for I/O regions where the
660 contents do not change outside of software control. Where this is not
661 suitable you can fall back to manually comparing the addresses. It
662 might be useful to enhance tracing to only checksum the accesses and
663 not the data read/written.
664
Simon Glass0c19b4d2017-08-04 16:34:28 -0600665config CMD_I2C
666 bool "i2c"
667 help
668 I2C support.
669
Simon Glass72a8cf82016-01-17 20:53:51 -0700670config CMD_LOADB
671 bool "loadb"
672 default y
673 help
674 Load a binary file over serial line.
675
676config CMD_LOADS
677 bool "loads"
678 default y
679 help
680 Load an S-Record file over serial line
681
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500682config CMD_MMC
683 bool "mmc"
684 help
685 MMC memory mapped support.
686
Simon Glass72a8cf82016-01-17 20:53:51 -0700687config CMD_NAND
688 bool "nand"
Maxime Ripard522c2822017-03-03 15:13:30 +0100689 default y if NAND_SUNXI
Simon Glass72a8cf82016-01-17 20:53:51 -0700690 help
691 NAND support.
692
Boris Brezillone915d202017-02-27 18:22:07 +0100693if CMD_NAND
694config CMD_NAND_TRIMFFS
695 bool "nand write.trimffs"
Hans de Goeded482a8d2017-02-27 18:22:10 +0100696 default y if ARCH_SUNXI
Boris Brezillone915d202017-02-27 18:22:07 +0100697 help
698 Allows one to skip empty pages when flashing something on a NAND.
699
700config CMD_NAND_LOCK_UNLOCK
701 bool "nand lock/unlock"
702 help
703 NAND locking support.
704
705config CMD_NAND_TORTURE
706 bool "nand torture"
707 help
708 NAND torture support.
709
710endif # CMD_NAND
711
Simon Glassf38c5f52017-08-04 16:34:29 -0600712config CMD_MMC_SPI
713 bool "mmc_spi - Set up MMC SPI device"
714 help
715 Provides a way to set up an MMC (Multimedia Card) SPI (Serial
716 Peripheral Interface) device. The device provides a means of
717 accessing an MMC device via SPI using a single data line, limited
718 to 20MHz. It is useful since it reduces the amount of protocol code
719 required.
720
Simon Glass978f0852017-08-04 16:34:31 -0600721config CMD_ONENAND
722 bool "onenand - access to onenand device"
723 help
724 OneNAND is a brand of NAND ('Not AND' gate) flash which provides
725 various useful features. This command allows reading, writing,
726 and erasing blocks. It allso provides a way to show and change
727 bad blocks, and test the device.
728
Patrick Delaunayb331cd62017-01-27 11:00:42 +0100729config CMD_PART
730 bool "part"
731 select PARTITION_UUIDS
732 help
733 Read and display information about the partition table on
734 various media.
735
Simon Glass6500ec72017-08-04 16:34:34 -0600736config CMD_PCI
737 bool "pci - Access PCI devices"
738 help
739 Provide access to PCI (Peripheral Interconnect Bus), a type of bus
740 used on some devices to allow the CPU to communicate with its
741 peripherals. Sub-commands allow bus enumeration, displaying and
742 changing configuration space and a few other features.
743
Simon Glass7f666552017-08-04 16:34:37 -0600744config CMD_PCMCIA
745 bool "pinit - Set up PCMCIA device"
746 help
747 Provides a means to initialise a PCMCIA (Personal Computer Memory
748 Card International Association) device. This is an old standard from
749 about 1990. These devices are typically removable memory or network
750 cards using a standard 68-pin connector.
751
Simon Glassb75dfd22017-08-04 16:34:39 -0600752config CMD_READ
753 bool "read - Read binary data from a partition"
754 help
755 Provides low-level access to the data in a partition.
756
Simon Glass72a8cf82016-01-17 20:53:51 -0700757config CMD_REMOTEPROC
758 bool "remoteproc"
759 depends on REMOTEPROC
760 help
761 Support for Remote Processor control
762
Simon Glass3bf926c2017-06-14 21:28:24 -0600763config CMD_SATA
764 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -0600765 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -0600766 help
767 SATA (Serial Advanced Technology Attachment) is a serial bus
768 standard for connecting to hard drives and other storage devices.
769 This command provides information about attached devices and allows
770 reading, writing and other operations.
771
772 SATA replaces PATA (originally just ATA), which stands for Parallel AT
773 Attachment, where AT refers to an IBM AT (Advanced Technology)
774 computer released in 1984.
775
Simon Glass0c19b4d2017-08-04 16:34:28 -0600776config CMD_SF
777 bool "sf"
778 help
779 SPI Flash support
780
781config CMD_SPI
782 bool "sspi"
783 help
784 SPI utility command.
785
786config CMD_USB
787 bool "usb"
788 help
789 USB support.
790
791config CMD_USB_MASS_STORAGE
792 bool "UMS usb mass storage"
793 help
794 USB mass storage support
795
Simon Glass72a8cf82016-01-17 20:53:51 -0700796endmenu
797
798
799menu "Shell scripting commands"
800
801config CMD_ECHO
802 bool "echo"
803 default y
804 help
805 Echo args to console
806
807config CMD_ITEST
808 bool "itest"
809 default y
810 help
811 Return true/false on integer compare.
812
813config CMD_SOURCE
814 bool "source"
815 default y
816 help
817 Run script from memory
818
819config CMD_SETEXPR
820 bool "setexpr"
821 default y
822 help
823 Evaluate boolean and math expressions and store the result in an env
824 variable.
825 Also supports loading the value at a memory location into a variable.
826 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
827
828endmenu
829
830menu "Network commands"
831
832config CMD_NET
833 bool "bootp, tftpboot"
834 select NET
835 default y
836 help
837 Network commands.
838 bootp - boot image via network using BOOTP/TFTP protocol
839 tftpboot - boot image via network using TFTP protocol
840
841config CMD_TFTPPUT
842 bool "tftp put"
843 help
844 TFTP put command, for uploading files to a server
845
846config CMD_TFTPSRV
847 bool "tftpsrv"
848 help
849 Act as a TFTP server and boot the first received file
850
851config CMD_RARP
852 bool "rarpboot"
853 help
854 Boot image via network using RARP/TFTP protocol
855
856config CMD_DHCP
857 bool "dhcp"
858 help
859 Boot image via network using DHCP/TFTP protocol
860
Yann E. MORINbfb380b2016-11-13 21:59:52 +0100861config CMD_PXE
862 bool "pxe"
863 select MENU
864 help
865 Boot image via network using PXE protocol
866
Simon Glass72a8cf82016-01-17 20:53:51 -0700867config CMD_NFS
868 bool "nfs"
869 default y
870 help
871 Boot image via network using NFS protocol.
872
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500873config CMD_MII
874 bool "mii"
875 help
876 Enable MII utility commands.
877
Simon Glass72a8cf82016-01-17 20:53:51 -0700878config CMD_PING
879 bool "ping"
880 help
881 Send ICMP ECHO_REQUEST to network host
882
883config CMD_CDP
884 bool "cdp"
885 help
886 Perform CDP network configuration
887
888config CMD_SNTP
889 bool "sntp"
890 help
891 Synchronize RTC via network
892
893config CMD_DNS
894 bool "dns"
895 help
896 Lookup the IP of a hostname
897
898config CMD_LINK_LOCAL
899 bool "linklocal"
900 help
901 Acquire a network IP address using the link-local protocol
902
Simon Glassef072202017-05-17 03:25:17 -0600903config CMD_ETHSW
904 bool "ethsw"
905 help
906 Allow control of L2 Ethernet switch commands. These are supported
907 by the vsc9953 Ethernet driver at present. Sub-commands allow
908 operations such as enabling / disabling a port and
909 viewing/maintaining the filtering database (FDB)
910
Simon Glass72a8cf82016-01-17 20:53:51 -0700911endmenu
912
913menu "Misc commands"
914
Simon Glass0f710252017-04-26 22:27:55 -0600915config CMD_BMP
916 bool "Enable 'bmp' command"
917 depends on LCD || DM_VIDEO || VIDEO
918 help
919 This provides a way to obtain information about a BMP-format iamge
920 and to display it. BMP (which presumably stands for BitMaP) is a
921 file format defined by Microsoft which supports images of various
922 depths, formats and compression methods. Headers on the file
923 determine the formats used. This command can be used by first loading
924 the image into RAM, then using this command to look at it or display
925 it.
926
Simon Glass4893e342017-04-26 22:27:56 -0600927config CMD_BSP
928 bool "Enable board-specific commands"
929 help
930 (deprecated: instead, please define a Kconfig option for each command)
931
932 Some boards have board-specific commands which are only enabled
933 during developemnt and need to be turned off for production. This
934 option provides a way to control this. The commands that are enabled
935 vary depending on the board.
936
Tomas Melincd3d4882016-11-25 11:01:03 +0200937config CMD_BKOPS_ENABLE
938 bool "mmc bkops enable"
939 depends on CMD_MMC
940 default n
941 help
942 Enable command for setting manual background operations handshake
943 on a eMMC device. The feature is optionally available on eMMC devices
944 conforming to standard >= 4.41.
945
Eric Nelsone40cf342016-03-28 10:05:44 -0700946config CMD_BLOCK_CACHE
947 bool "blkcache - control and stats for block cache"
948 depends on BLOCK_CACHE
949 default y if BLOCK_CACHE
950 help
951 Enable the blkcache command, which can be used to control the
952 operation of the cache functions.
953 This is most useful when fine-tuning the operation of the cache
954 during development, but also allows the cache to be disabled when
955 it might hurt performance (e.g. when using the ums command).
956
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500957config CMD_CACHE
958 bool "icache or dcache"
959 help
960 Enable the "icache" and "dcache" commands
961
Simon Glass93d66ee2017-04-26 22:28:09 -0600962config CMD_DISPLAY
963 bool "Enable the 'display' command, for character displays"
964 help
965 (this needs porting to driver model)
966 This enables the 'display' command which allows a string to be
967 displayed on a simple board-specific display. Implement
968 display_putc() to use it.
969
Simon Glassffe20522017-04-10 11:34:59 -0600970config CMD_LED
971 bool "led"
972 default y if LED
973 help
974 Enable the 'led' command which allows for control of LEDs supported
975 by the board. The LEDs can be listed with 'led list' and controlled
976 with led on/off/togle/blink. Any LED drivers can be controlled with
977 this command, e.g. led_gpio.
978
Chris Packhamc9032ce2017-04-29 15:20:28 +1200979config CMD_DATE
980 bool "date"
981 default y if DM_RTC
982 help
983 Enable the 'date' command for getting/setting the time/date in RTC
984 devices.
985
Simon Glass72a8cf82016-01-17 20:53:51 -0700986config CMD_TIME
987 bool "time"
988 help
989 Run commands and summarize execution time.
990
Simon Glassd91a9d72017-05-17 03:25:23 -0600991config CMD_GETTIME
992 bool "gettime - read elapsed time"
993 help
994 Enable the 'gettime' command which reads the elapsed time since
995 U-Boot started running. This shows the time in seconds and
996 milliseconds. See also the 'bootstage' command which provides more
997 flexibility for boot timing.
998
Simon Glass72a8cf82016-01-17 20:53:51 -0700999# TODO: rename to CMD_SLEEP
1000config CMD_MISC
1001 bool "sleep"
1002 default y
1003 help
1004 Delay execution for some time
1005
1006config CMD_TIMER
1007 bool "timer"
1008 help
1009 Access the system timer.
1010
Simon Glass72a8cf82016-01-17 20:53:51 -07001011config CMD_SOUND
1012 bool "sound"
1013 depends on SOUND
1014 help
1015 This provides basic access to the U-Boot's sound support. The main
1016 feature is to play a beep.
1017
1018 sound init - set up sound system
1019 sound play - play a sound
1020
Miao Yan18686592016-05-22 19:37:17 -07001021config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001022 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -07001023 select QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -04001024 help
1025 This provides access to the QEMU firmware interface. The main
1026 feature is to allow easy loading of files passed to qemu-system
1027 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +02001028
1029source "cmd/mvebu/Kconfig"
1030
Simon Glass72a8cf82016-01-17 20:53:51 -07001031endmenu
1032
1033config CMD_BOOTSTAGE
1034 bool "Enable the 'bootstage' command"
1035 depends on BOOTSTAGE
1036 help
1037 Add a 'bootstage' command which supports printing a report
1038 and un/stashing of bootstage data.
1039
1040menu "Power commands"
1041config CMD_PMIC
1042 bool "Enable Driver Model PMIC command"
1043 depends on DM_PMIC
1044 help
1045 This is the pmic command, based on a driver model pmic's API.
1046 Command features are unchanged:
1047 - list - list pmic devices
1048 - pmic dev <id> - show or [set] operating pmic device (NEW)
1049 - pmic dump - dump registers
1050 - pmic read address - read byte of register at address
1051 - pmic write address - write byte to register at address
1052 The only one change for this command is 'dev' subcommand.
1053
1054config CMD_REGULATOR
1055 bool "Enable Driver Model REGULATOR command"
1056 depends on DM_REGULATOR
1057 help
1058 This command is based on driver model regulator's API.
1059 User interface features:
1060 - list - list regulator devices
1061 - regulator dev <id> - show or [set] operating regulator device
1062 - regulator info - print constraints info
1063 - regulator status - print operating status
1064 - regulator value <val] <-f> - print/[set] voltage value [uV]
1065 - regulator current <val> - print/[set] current value [uA]
1066 - regulator mode <id> - print/[set] operating mode id
1067 - regulator enable - enable the regulator output
1068 - regulator disable - disable the regulator output
1069
1070 The '-f' (force) option can be used for set the value which exceeds
1071 the limits, which are found in device-tree and are kept in regulator's
1072 uclass platdata structure.
1073
1074endmenu
1075
1076menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06001077config CMD_AES
1078 bool "Enable the 'aes' command"
1079 select AES
1080 help
1081 This provides a means to encrypt and decrypt data using the AES
1082 (Advanced Encryption Standard). This algorithm uses a symetric key
1083 and is widely used as a streaming cipher. Different key lengths are
1084 supported by the algorithm but this command only supports 128 bits
1085 at present.
1086
Simon Glassc04b9b32017-04-26 22:27:53 -06001087config CMD_BLOB
1088 bool "Enable the 'blob' command"
1089 help
1090 This is used with the Freescale secure boot mechanism.
1091
1092 Freescale's SEC block has built-in Blob Protocol which provides
1093 a method for protecting user-defined data across system power
1094 cycles. SEC block protects data in a data structure called a Blob,
1095 which provides both confidentiality and integrity protection.
1096
1097 Encapsulating data as a blob
1098 Each time that the Blob Protocol is used to protect data, a
1099 different randomly generated key is used to encrypt the data.
1100 This random key is itself encrypted using a key which is derived
1101 from SoC's non-volatile secret key and a 16 bit Key identifier.
1102 The resulting encrypted key along with encrypted data is called a
1103 blob. The non-volatile secure key is available for use only during
1104 secure boot.
1105
1106 During decapsulation, the reverse process is performed to get back
1107 the original data.
1108
1109 Sub-commands:
1110 blob enc - encapsulating data as a cryptgraphic blob
1111 blob dec - decapsulating cryptgraphic blob to get the data
1112
1113 Syntax:
1114
1115 blob enc src dst len km
1116
1117 Encapsulate and create blob of data $len bytes long
1118 at address $src and store the result at address $dst.
1119 $km is the 16 byte key modifier is also required for
1120 generation/use as key for cryptographic operation. Key
1121 modifier should be 16 byte long.
1122
1123 blob dec src dst len km
1124
1125 Decapsulate the blob of data at address $src and
1126 store result of $len byte at addr $dst.
1127 $km is the 16 byte key modifier is also required for
1128 generation/use as key for cryptographic operation. Key
1129 modifier should be 16 byte long.
1130
Simon Glass551c3932017-05-17 03:25:25 -06001131config CMD_HASH
1132 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06001133 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06001134 help
1135 This provides a way to hash data in memory using various supported
1136 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1137 saved to memory or to an environment variable. It is also possible
1138 to verify a hash against data in memory.
1139
Daniel Thompson221a9492017-05-19 17:26:58 +01001140config HASH_VERIFY
1141 bool "hash -v"
1142 depends on CMD_HASH
1143 help
1144 Add -v option to verify data against a hash.
1145
Simon Glass72a8cf82016-01-17 20:53:51 -07001146config CMD_TPM
1147 bool "Enable the 'tpm' command"
1148 depends on TPM
1149 help
1150 This provides a means to talk to a TPM from the command line. A wide
1151 range of commands if provided - see 'tpm help' for details. The
1152 command requires a suitable TPM on your board and the correct driver
1153 must be enabled.
1154
1155config CMD_TPM_TEST
1156 bool "Enable the 'tpm test' command"
1157 depends on CMD_TPM
1158 help
1159 This provides a a series of tests to confirm that the TPM is working
1160 correctly. The tests cover initialisation, non-volatile RAM, extend,
1161 global lock and checking that timing is within expectations. The
1162 tests pass correctly on Infineon TPMs but may need to be adjusted
1163 for other devices.
1164
1165endmenu
1166
Moritz Fischerbfeba012016-10-04 17:08:08 -07001167menu "Firmware commands"
1168config CMD_CROS_EC
1169 bool "Enable crosec command"
1170 depends on CROS_EC
1171 default y
1172 help
1173 Enable command-line access to the Chrome OS EC (Embedded
1174 Controller). This provides the 'crosec' command which has
1175 a number of sub-commands for performing EC tasks such as
1176 updating its flash, accessing a small saved context area
1177 and talking to the I2C bus behind the EC (if there is one).
1178endmenu
1179
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001180menu "Filesystem commands"
Simon Glassd66a10f2017-04-26 22:27:58 -06001181config CMD_CBFS
1182 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06001183 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06001184 help
1185 Define this to enable support for reading from a Coreboot
1186 filesystem. This is a ROM-based filesystem used for accessing files
1187 on systems that use coreboot as the first boot-loader and then load
1188 U-Boot to actually boot the Operating System. Available commands are
1189 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1190
Simon Glass97072742017-04-26 22:28:03 -06001191config CMD_CRAMFS
1192 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06001193 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06001194 help
1195 This provides commands for dealing with CRAMFS (Compressed ROM
1196 filesystem). CRAMFS is useful when space is tight since files are
1197 compressed. Two commands are provided:
1198
1199 cramfsls - lists files in a cramfs image
1200 cramfsload - loads a file from a cramfs image
1201
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001202config CMD_EXT2
1203 bool "ext2 command support"
1204 help
1205 Enables EXT2 FS command
1206
1207config CMD_EXT4
1208 bool "ext4 command support"
1209 help
1210 Enables EXT4 FS command
1211
1212config CMD_EXT4_WRITE
1213 depends on CMD_EXT4
1214 bool "ext4 write command support"
1215 help
1216 Enables EXT4 FS write command
1217
1218config CMD_FAT
1219 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05301220 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001221 help
1222 Support for the FAT fs
1223
1224config CMD_FS_GENERIC
1225 bool "filesystem commands"
1226 help
1227 Enables filesystem commands (e.g. load, ls) that work for multiple
1228 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001229
Josua Mayerefbe99c2017-04-24 10:10:45 +02001230config CMD_FS_UUID
1231 bool "fsuuid command"
1232 help
1233 Enables fsuuid command for filesystem UUID.
1234
Simon Glassb8682a72017-05-17 03:25:37 -06001235config CMD_JFFS2
1236 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06001237 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06001238 help
1239 Enables commands to support the JFFS2 (Journalling Flash File System
1240 version 2) filesystem. This enables fsload, ls and fsinfo which
1241 provide the ability to load files, list directories and obtain
1242 filesystem information.
1243
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001244config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001245 bool "MTD partition support"
1246 help
1247 MTD partition support
1248
1249config MTDIDS_DEFAULT
1250 string "Default MTD IDs"
1251 depends on CMD_MTDPARTS
1252 help
1253 Defines a default MTD ID
1254
1255config MTDPARTS_DEFAULT
1256 string "Default MTD partition scheme"
1257 depends on CMD_MTDPARTS
1258 help
1259 Defines a default MTD partitioning scheme in the Linux MTD command
1260 line partitions format
1261
Simon Glasscb70e6c2017-08-04 16:34:30 -06001262config CMD_MTDPARTS_SPREAD
1263 bool "Padd partition size to take account of bad blocks"
1264 depends on CMD_MTDPARTS
1265 help
1266 This enables the 'spread' sub-command of the mtdparts command.
1267 This command will modify the existing mtdparts variable by increasing
1268 the size of the partitions such that 1) each partition's net size is
1269 at least as large as the size specified in the mtdparts variable and
1270 2) each partition starts on a good block.
1271
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001272endmenu
1273
Simon Glassac20a1b2017-04-26 22:27:52 -06001274menu "Debug commands"
1275
1276config CMD_BEDBUG
1277 bool "bedbug"
1278 help
1279 The bedbug (emBEDded deBUGger) command provides debugging features
1280 for some PowerPC processors. For details please see the
1281 docuemntation in doc/README.beddbug
1282
Simon Glass3bd25cb2017-04-26 22:28:08 -06001283config CMD_DIAG
1284 bool "diag - Board diagnostics"
1285 help
1286 This command provides access to board diagnostic tests. These are
1287 called Power-on Self Tests (POST). The command allows listing of
1288 available tests and running either all the tests, or specific tests
1289 identified by name.
1290
Simon Glass1b330892017-05-17 03:25:39 -06001291config CMD_IRQ
1292 bool "irq - Show information about interrupts"
Heiko Schocher064b55c2017-06-14 05:49:40 +02001293 depends on !ARM && !MIPS && !SH
Simon Glass1b330892017-05-17 03:25:39 -06001294 help
1295 This enables two commands:
1296
1297 interrupts - enable or disable interrupts
1298 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06001299
1300config CMD_KGDB
1301 bool "kgdb - Allow debugging of U-Boot with gdb"
1302 help
1303 This enables a 'kgdb' command which allows gdb to connect to U-Boot
1304 over a serial link for debugging purposes. This allows
1305 single-stepping, inspecting variables, etc. This is supported only
1306 on PowerPC at present.
1307
Simon Glassac20a1b2017-04-26 22:27:52 -06001308endmenu
1309
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02001310config CMD_UBI
1311 tristate "Enable UBI - Unsorted block images commands"
1312 select CRC32
1313 select MTD_UBI
Karl Beldan22cf9532017-07-12 16:11:46 +00001314 select CMD_MTDPARTS
Maxime Ripard522c2822017-03-03 15:13:30 +01001315 default y if NAND_SUNXI
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02001316 help
1317 UBI is a software layer above MTD layer which admits use of LVM-like
1318 logical volumes on top of MTD devices, hides some complexities of
1319 flash chips like wear and bad blocks and provides some other useful
1320 capabilities. Please, consult the MTD web site for more details
1321 (www.linux-mtd.infradead.org). Activate this option if you want
1322 to use U-Boot UBI commands.
1323
Boris Brezillon173aafb2017-02-27 18:22:06 +01001324config CMD_UBIFS
1325 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01001326 depends on CMD_UBI
Boris Brezillon173aafb2017-02-27 18:22:06 +01001327 select CRC32
Karl Beldan24fc9532017-07-12 16:11:47 +00001328 select LZO
Tom Rinid56b4b12017-07-22 18:36:16 -04001329 default y if CMD_UBI
Boris Brezillon173aafb2017-02-27 18:22:06 +01001330 help
1331 UBIFS is a file system for flash devices which works on top of UBI.
1332
Simon Glass72a8cf82016-01-17 20:53:51 -07001333endmenu