blob: 4d89af4a819ef3430c888745bdcc83d3adf08ad3 [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
Patrick Delaunayb331cd62017-01-27 11:00:42 +0100721config CMD_PART
722 bool "part"
723 select PARTITION_UUIDS
724 help
725 Read and display information about the partition table on
726 various media.
727
Simon Glass72a8cf82016-01-17 20:53:51 -0700728config CMD_REMOTEPROC
729 bool "remoteproc"
730 depends on REMOTEPROC
731 help
732 Support for Remote Processor control
733
Simon Glass3bf926c2017-06-14 21:28:24 -0600734config CMD_SATA
735 bool "sata - Access SATA subsystem"
Simon Glass10e40d52017-06-14 21:28:25 -0600736 select SATA
Simon Glass3bf926c2017-06-14 21:28:24 -0600737 help
738 SATA (Serial Advanced Technology Attachment) is a serial bus
739 standard for connecting to hard drives and other storage devices.
740 This command provides information about attached devices and allows
741 reading, writing and other operations.
742
743 SATA replaces PATA (originally just ATA), which stands for Parallel AT
744 Attachment, where AT refers to an IBM AT (Advanced Technology)
745 computer released in 1984.
746
Simon Glass0c19b4d2017-08-04 16:34:28 -0600747config CMD_SF
748 bool "sf"
749 help
750 SPI Flash support
751
752config CMD_SPI
753 bool "sspi"
754 help
755 SPI utility command.
756
757config CMD_USB
758 bool "usb"
759 help
760 USB support.
761
762config CMD_USB_MASS_STORAGE
763 bool "UMS usb mass storage"
764 help
765 USB mass storage support
766
Simon Glass72a8cf82016-01-17 20:53:51 -0700767endmenu
768
769
770menu "Shell scripting commands"
771
772config CMD_ECHO
773 bool "echo"
774 default y
775 help
776 Echo args to console
777
778config CMD_ITEST
779 bool "itest"
780 default y
781 help
782 Return true/false on integer compare.
783
784config CMD_SOURCE
785 bool "source"
786 default y
787 help
788 Run script from memory
789
790config CMD_SETEXPR
791 bool "setexpr"
792 default y
793 help
794 Evaluate boolean and math expressions and store the result in an env
795 variable.
796 Also supports loading the value at a memory location into a variable.
797 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
798
799endmenu
800
801menu "Network commands"
802
803config CMD_NET
804 bool "bootp, tftpboot"
805 select NET
806 default y
807 help
808 Network commands.
809 bootp - boot image via network using BOOTP/TFTP protocol
810 tftpboot - boot image via network using TFTP protocol
811
812config CMD_TFTPPUT
813 bool "tftp put"
814 help
815 TFTP put command, for uploading files to a server
816
817config CMD_TFTPSRV
818 bool "tftpsrv"
819 help
820 Act as a TFTP server and boot the first received file
821
822config CMD_RARP
823 bool "rarpboot"
824 help
825 Boot image via network using RARP/TFTP protocol
826
827config CMD_DHCP
828 bool "dhcp"
829 help
830 Boot image via network using DHCP/TFTP protocol
831
Yann E. MORINbfb380b2016-11-13 21:59:52 +0100832config CMD_PXE
833 bool "pxe"
834 select MENU
835 help
836 Boot image via network using PXE protocol
837
Simon Glass72a8cf82016-01-17 20:53:51 -0700838config CMD_NFS
839 bool "nfs"
840 default y
841 help
842 Boot image via network using NFS protocol.
843
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500844config CMD_MII
845 bool "mii"
846 help
847 Enable MII utility commands.
848
Simon Glass72a8cf82016-01-17 20:53:51 -0700849config CMD_PING
850 bool "ping"
851 help
852 Send ICMP ECHO_REQUEST to network host
853
854config CMD_CDP
855 bool "cdp"
856 help
857 Perform CDP network configuration
858
859config CMD_SNTP
860 bool "sntp"
861 help
862 Synchronize RTC via network
863
864config CMD_DNS
865 bool "dns"
866 help
867 Lookup the IP of a hostname
868
869config CMD_LINK_LOCAL
870 bool "linklocal"
871 help
872 Acquire a network IP address using the link-local protocol
873
Simon Glassef072202017-05-17 03:25:17 -0600874config CMD_ETHSW
875 bool "ethsw"
876 help
877 Allow control of L2 Ethernet switch commands. These are supported
878 by the vsc9953 Ethernet driver at present. Sub-commands allow
879 operations such as enabling / disabling a port and
880 viewing/maintaining the filtering database (FDB)
881
Simon Glass72a8cf82016-01-17 20:53:51 -0700882endmenu
883
884menu "Misc commands"
885
Simon Glass0f710252017-04-26 22:27:55 -0600886config CMD_BMP
887 bool "Enable 'bmp' command"
888 depends on LCD || DM_VIDEO || VIDEO
889 help
890 This provides a way to obtain information about a BMP-format iamge
891 and to display it. BMP (which presumably stands for BitMaP) is a
892 file format defined by Microsoft which supports images of various
893 depths, formats and compression methods. Headers on the file
894 determine the formats used. This command can be used by first loading
895 the image into RAM, then using this command to look at it or display
896 it.
897
Simon Glass4893e342017-04-26 22:27:56 -0600898config CMD_BSP
899 bool "Enable board-specific commands"
900 help
901 (deprecated: instead, please define a Kconfig option for each command)
902
903 Some boards have board-specific commands which are only enabled
904 during developemnt and need to be turned off for production. This
905 option provides a way to control this. The commands that are enabled
906 vary depending on the board.
907
Tomas Melincd3d4882016-11-25 11:01:03 +0200908config CMD_BKOPS_ENABLE
909 bool "mmc bkops enable"
910 depends on CMD_MMC
911 default n
912 help
913 Enable command for setting manual background operations handshake
914 on a eMMC device. The feature is optionally available on eMMC devices
915 conforming to standard >= 4.41.
916
Eric Nelsone40cf342016-03-28 10:05:44 -0700917config CMD_BLOCK_CACHE
918 bool "blkcache - control and stats for block cache"
919 depends on BLOCK_CACHE
920 default y if BLOCK_CACHE
921 help
922 Enable the blkcache command, which can be used to control the
923 operation of the cache functions.
924 This is most useful when fine-tuning the operation of the cache
925 during development, but also allows the cache to be disabled when
926 it might hurt performance (e.g. when using the ums command).
927
Dinh Nguyenab8243e2016-04-21 09:05:23 -0500928config CMD_CACHE
929 bool "icache or dcache"
930 help
931 Enable the "icache" and "dcache" commands
932
Simon Glass93d66ee2017-04-26 22:28:09 -0600933config CMD_DISPLAY
934 bool "Enable the 'display' command, for character displays"
935 help
936 (this needs porting to driver model)
937 This enables the 'display' command which allows a string to be
938 displayed on a simple board-specific display. Implement
939 display_putc() to use it.
940
Simon Glassffe20522017-04-10 11:34:59 -0600941config CMD_LED
942 bool "led"
943 default y if LED
944 help
945 Enable the 'led' command which allows for control of LEDs supported
946 by the board. The LEDs can be listed with 'led list' and controlled
947 with led on/off/togle/blink. Any LED drivers can be controlled with
948 this command, e.g. led_gpio.
949
Chris Packhamc9032ce2017-04-29 15:20:28 +1200950config CMD_DATE
951 bool "date"
952 default y if DM_RTC
953 help
954 Enable the 'date' command for getting/setting the time/date in RTC
955 devices.
956
Simon Glass72a8cf82016-01-17 20:53:51 -0700957config CMD_TIME
958 bool "time"
959 help
960 Run commands and summarize execution time.
961
Simon Glassd91a9d72017-05-17 03:25:23 -0600962config CMD_GETTIME
963 bool "gettime - read elapsed time"
964 help
965 Enable the 'gettime' command which reads the elapsed time since
966 U-Boot started running. This shows the time in seconds and
967 milliseconds. See also the 'bootstage' command which provides more
968 flexibility for boot timing.
969
Simon Glass72a8cf82016-01-17 20:53:51 -0700970# TODO: rename to CMD_SLEEP
971config CMD_MISC
972 bool "sleep"
973 default y
974 help
975 Delay execution for some time
976
977config CMD_TIMER
978 bool "timer"
979 help
980 Access the system timer.
981
Simon Glass72a8cf82016-01-17 20:53:51 -0700982config CMD_SOUND
983 bool "sound"
984 depends on SOUND
985 help
986 This provides basic access to the U-Boot's sound support. The main
987 feature is to play a beep.
988
989 sound init - set up sound system
990 sound play - play a sound
991
Miao Yan18686592016-05-22 19:37:17 -0700992config CMD_QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -0400993 bool "qfw"
Miao Yanfcf5c042016-05-22 19:37:14 -0700994 select QFW
Tom Rinidd6f3ab2016-05-06 10:40:22 -0400995 help
996 This provides access to the QEMU firmware interface. The main
997 feature is to allow easy loading of files passed to qemu-system
998 via -kernel / -initrd
Konstantin Porotchkinfa61ef62016-12-08 12:22:28 +0200999
1000source "cmd/mvebu/Kconfig"
1001
Simon Glass72a8cf82016-01-17 20:53:51 -07001002endmenu
1003
1004config CMD_BOOTSTAGE
1005 bool "Enable the 'bootstage' command"
1006 depends on BOOTSTAGE
1007 help
1008 Add a 'bootstage' command which supports printing a report
1009 and un/stashing of bootstage data.
1010
1011menu "Power commands"
1012config CMD_PMIC
1013 bool "Enable Driver Model PMIC command"
1014 depends on DM_PMIC
1015 help
1016 This is the pmic command, based on a driver model pmic's API.
1017 Command features are unchanged:
1018 - list - list pmic devices
1019 - pmic dev <id> - show or [set] operating pmic device (NEW)
1020 - pmic dump - dump registers
1021 - pmic read address - read byte of register at address
1022 - pmic write address - write byte to register at address
1023 The only one change for this command is 'dev' subcommand.
1024
1025config CMD_REGULATOR
1026 bool "Enable Driver Model REGULATOR command"
1027 depends on DM_REGULATOR
1028 help
1029 This command is based on driver model regulator's API.
1030 User interface features:
1031 - list - list regulator devices
1032 - regulator dev <id> - show or [set] operating regulator device
1033 - regulator info - print constraints info
1034 - regulator status - print operating status
1035 - regulator value <val] <-f> - print/[set] voltage value [uV]
1036 - regulator current <val> - print/[set] current value [uA]
1037 - regulator mode <id> - print/[set] operating mode id
1038 - regulator enable - enable the regulator output
1039 - regulator disable - disable the regulator output
1040
1041 The '-f' (force) option can be used for set the value which exceeds
1042 the limits, which are found in device-tree and are kept in regulator's
1043 uclass platdata structure.
1044
1045endmenu
1046
1047menu "Security commands"
Simon Glassb1a873d2017-04-26 22:27:49 -06001048config CMD_AES
1049 bool "Enable the 'aes' command"
1050 select AES
1051 help
1052 This provides a means to encrypt and decrypt data using the AES
1053 (Advanced Encryption Standard). This algorithm uses a symetric key
1054 and is widely used as a streaming cipher. Different key lengths are
1055 supported by the algorithm but this command only supports 128 bits
1056 at present.
1057
Simon Glassc04b9b32017-04-26 22:27:53 -06001058config CMD_BLOB
1059 bool "Enable the 'blob' command"
1060 help
1061 This is used with the Freescale secure boot mechanism.
1062
1063 Freescale's SEC block has built-in Blob Protocol which provides
1064 a method for protecting user-defined data across system power
1065 cycles. SEC block protects data in a data structure called a Blob,
1066 which provides both confidentiality and integrity protection.
1067
1068 Encapsulating data as a blob
1069 Each time that the Blob Protocol is used to protect data, a
1070 different randomly generated key is used to encrypt the data.
1071 This random key is itself encrypted using a key which is derived
1072 from SoC's non-volatile secret key and a 16 bit Key identifier.
1073 The resulting encrypted key along with encrypted data is called a
1074 blob. The non-volatile secure key is available for use only during
1075 secure boot.
1076
1077 During decapsulation, the reverse process is performed to get back
1078 the original data.
1079
1080 Sub-commands:
1081 blob enc - encapsulating data as a cryptgraphic blob
1082 blob dec - decapsulating cryptgraphic blob to get the data
1083
1084 Syntax:
1085
1086 blob enc src dst len km
1087
1088 Encapsulate and create blob of data $len bytes long
1089 at address $src and store the result at address $dst.
1090 $km is the 16 byte key modifier is also required for
1091 generation/use as key for cryptographic operation. Key
1092 modifier should be 16 byte long.
1093
1094 blob dec src dst len km
1095
1096 Decapsulate the blob of data at address $src and
1097 store result of $len byte at addr $dst.
1098 $km is the 16 byte key modifier is also required for
1099 generation/use as key for cryptographic operation. Key
1100 modifier should be 16 byte long.
1101
Simon Glass551c3932017-05-17 03:25:25 -06001102config CMD_HASH
1103 bool "Support 'hash' command"
Simon Glassd70f9192017-05-17 09:05:34 -06001104 select HASH
Simon Glass551c3932017-05-17 03:25:25 -06001105 help
1106 This provides a way to hash data in memory using various supported
1107 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1108 saved to memory or to an environment variable. It is also possible
1109 to verify a hash against data in memory.
1110
Daniel Thompson221a9492017-05-19 17:26:58 +01001111config HASH_VERIFY
1112 bool "hash -v"
1113 depends on CMD_HASH
1114 help
1115 Add -v option to verify data against a hash.
1116
Simon Glass72a8cf82016-01-17 20:53:51 -07001117config CMD_TPM
1118 bool "Enable the 'tpm' command"
1119 depends on TPM
1120 help
1121 This provides a means to talk to a TPM from the command line. A wide
1122 range of commands if provided - see 'tpm help' for details. The
1123 command requires a suitable TPM on your board and the correct driver
1124 must be enabled.
1125
1126config CMD_TPM_TEST
1127 bool "Enable the 'tpm test' command"
1128 depends on CMD_TPM
1129 help
1130 This provides a a series of tests to confirm that the TPM is working
1131 correctly. The tests cover initialisation, non-volatile RAM, extend,
1132 global lock and checking that timing is within expectations. The
1133 tests pass correctly on Infineon TPMs but may need to be adjusted
1134 for other devices.
1135
1136endmenu
1137
Moritz Fischerbfeba012016-10-04 17:08:08 -07001138menu "Firmware commands"
1139config CMD_CROS_EC
1140 bool "Enable crosec command"
1141 depends on CROS_EC
1142 default y
1143 help
1144 Enable command-line access to the Chrome OS EC (Embedded
1145 Controller). This provides the 'crosec' command which has
1146 a number of sub-commands for performing EC tasks such as
1147 updating its flash, accessing a small saved context area
1148 and talking to the I2C bus behind the EC (if there is one).
1149endmenu
1150
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001151menu "Filesystem commands"
Simon Glassd66a10f2017-04-26 22:27:58 -06001152config CMD_CBFS
1153 bool "Enable the 'cbfs' command"
Simon Glassdeb959992017-04-26 22:27:59 -06001154 depends on FS_CBFS
Simon Glassd66a10f2017-04-26 22:27:58 -06001155 help
1156 Define this to enable support for reading from a Coreboot
1157 filesystem. This is a ROM-based filesystem used for accessing files
1158 on systems that use coreboot as the first boot-loader and then load
1159 U-Boot to actually boot the Operating System. Available commands are
1160 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1161
Simon Glass97072742017-04-26 22:28:03 -06001162config CMD_CRAMFS
1163 bool "Enable the 'cramfs' command"
Simon Glass80e44cf2017-04-26 22:28:04 -06001164 depends on FS_CRAMFS
Simon Glass97072742017-04-26 22:28:03 -06001165 help
1166 This provides commands for dealing with CRAMFS (Compressed ROM
1167 filesystem). CRAMFS is useful when space is tight since files are
1168 compressed. Two commands are provided:
1169
1170 cramfsls - lists files in a cramfs image
1171 cramfsload - loads a file from a cramfs image
1172
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001173config CMD_EXT2
1174 bool "ext2 command support"
1175 help
1176 Enables EXT2 FS command
1177
1178config CMD_EXT4
1179 bool "ext4 command support"
1180 help
1181 Enables EXT4 FS command
1182
1183config CMD_EXT4_WRITE
1184 depends on CMD_EXT4
1185 bool "ext4 write command support"
1186 help
1187 Enables EXT4 FS write command
1188
1189config CMD_FAT
1190 bool "FAT command support"
Sekhar Norieedfb892017-06-02 17:53:59 +05301191 select FS_FAT
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001192 help
1193 Support for the FAT fs
1194
1195config CMD_FS_GENERIC
1196 bool "filesystem commands"
1197 help
1198 Enables filesystem commands (e.g. load, ls) that work for multiple
1199 fs types.
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001200
Josua Mayerefbe99c2017-04-24 10:10:45 +02001201config CMD_FS_UUID
1202 bool "fsuuid command"
1203 help
1204 Enables fsuuid command for filesystem UUID.
1205
Simon Glassb8682a72017-05-17 03:25:37 -06001206config CMD_JFFS2
1207 bool "jffs2 command"
Simon Glass59e12a42017-05-17 03:25:38 -06001208 select FS_JFFS2
Simon Glassb8682a72017-05-17 03:25:37 -06001209 help
1210 Enables commands to support the JFFS2 (Journalling Flash File System
1211 version 2) filesystem. This enables fsload, ls and fsinfo which
1212 provide the ability to load files, list directories and obtain
1213 filesystem information.
1214
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001215config CMD_MTDPARTS
Maxime Ripard0269dfa2017-02-27 18:22:04 +01001216 bool "MTD partition support"
1217 help
1218 MTD partition support
1219
1220config MTDIDS_DEFAULT
1221 string "Default MTD IDs"
1222 depends on CMD_MTDPARTS
1223 help
1224 Defines a default MTD ID
1225
1226config MTDPARTS_DEFAULT
1227 string "Default MTD partition scheme"
1228 depends on CMD_MTDPARTS
1229 help
1230 Defines a default MTD partitioning scheme in the Linux MTD command
1231 line partitions format
1232
Simon Glasscb70e6c2017-08-04 16:34:30 -06001233config CMD_MTDPARTS_SPREAD
1234 bool "Padd partition size to take account of bad blocks"
1235 depends on CMD_MTDPARTS
1236 help
1237 This enables the 'spread' sub-command of the mtdparts command.
1238 This command will modify the existing mtdparts variable by increasing
1239 the size of the partitions such that 1) each partition's net size is
1240 at least as large as the size specified in the mtdparts variable and
1241 2) each partition starts on a good block.
1242
Dinh Nguyenab8243e2016-04-21 09:05:23 -05001243endmenu
1244
Simon Glassac20a1b2017-04-26 22:27:52 -06001245menu "Debug commands"
1246
1247config CMD_BEDBUG
1248 bool "bedbug"
1249 help
1250 The bedbug (emBEDded deBUGger) command provides debugging features
1251 for some PowerPC processors. For details please see the
1252 docuemntation in doc/README.beddbug
1253
Simon Glass3bd25cb2017-04-26 22:28:08 -06001254config CMD_DIAG
1255 bool "diag - Board diagnostics"
1256 help
1257 This command provides access to board diagnostic tests. These are
1258 called Power-on Self Tests (POST). The command allows listing of
1259 available tests and running either all the tests, or specific tests
1260 identified by name.
1261
Simon Glass1b330892017-05-17 03:25:39 -06001262config CMD_IRQ
1263 bool "irq - Show information about interrupts"
Heiko Schocher064b55c2017-06-14 05:49:40 +02001264 depends on !ARM && !MIPS && !SH
Simon Glass1b330892017-05-17 03:25:39 -06001265 help
1266 This enables two commands:
1267
1268 interrupts - enable or disable interrupts
1269 irqinfo - print device-specific interrupt information
Simon Glass6bac2272017-05-17 03:25:40 -06001270
1271config CMD_KGDB
1272 bool "kgdb - Allow debugging of U-Boot with gdb"
1273 help
1274 This enables a 'kgdb' command which allows gdb to connect to U-Boot
1275 over a serial link for debugging purposes. This allows
1276 single-stepping, inspecting variables, etc. This is supported only
1277 on PowerPC at present.
1278
Simon Glassac20a1b2017-04-26 22:27:52 -06001279endmenu
1280
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02001281config CMD_UBI
1282 tristate "Enable UBI - Unsorted block images commands"
1283 select CRC32
1284 select MTD_UBI
Karl Beldan22cf9532017-07-12 16:11:46 +00001285 select CMD_MTDPARTS
Maxime Ripard522c2822017-03-03 15:13:30 +01001286 default y if NAND_SUNXI
Heiko Schocher8f2fe0c2016-09-21 07:58:19 +02001287 help
1288 UBI is a software layer above MTD layer which admits use of LVM-like
1289 logical volumes on top of MTD devices, hides some complexities of
1290 flash chips like wear and bad blocks and provides some other useful
1291 capabilities. Please, consult the MTD web site for more details
1292 (www.linux-mtd.infradead.org). Activate this option if you want
1293 to use U-Boot UBI commands.
1294
Boris Brezillon173aafb2017-02-27 18:22:06 +01001295config CMD_UBIFS
1296 tristate "Enable UBIFS - Unsorted block images filesystem commands"
Maxime Ripard2bc734b2017-03-03 14:53:22 +01001297 depends on CMD_UBI
Boris Brezillon173aafb2017-02-27 18:22:06 +01001298 select CRC32
Karl Beldan24fc9532017-07-12 16:11:47 +00001299 select LZO
Tom Rinid56b4b12017-07-22 18:36:16 -04001300 default y if CMD_UBI
Boris Brezillon173aafb2017-02-27 18:22:06 +01001301 help
1302 UBIFS is a file system for flash devices which works on top of UBI.
1303
Simon Glass72a8cf82016-01-17 20:53:51 -07001304endmenu