]> git.ipfire.org Git - people/ms/u-boot.git/blame - cmd/Kconfig
Convert CONFIG_CMD_PCMCIA to Kconfig
[people/ms/u-boot.git] / cmd / Kconfig
CommitLineData
72a8cf8d
SG
1menu "Command line interface"
2
302a6487
SG
3config 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
72a8cf8d
SG
14config HUSH_PARSER
15 bool "Use hush shell"
302a6487 16 depends on CMDLINE
72a8cf8d
SG
17 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
72a8cf8d
SG
26config 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
41598c82
MY
35config AUTOBOOT
36 bool "Autoboot"
37 default y
38 help
39 This enables the autoboot. See doc/README.autoboot for detail.
40
72a8cf8d
SG
41config 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
e016f0b2
SR
117source "cmd/fastboot/Kconfig"
118
72a8cf8d
SG
119comment "Commands"
120
121menu "Info commands"
122
123config CMD_BDI
124 bool "bdinfo"
125 default y
126 help
127 Print board info
128
61304dbe
MY
129config 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
72a8cf8d
SG
141config 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"
d726f225 157 select BUILD_BIN2C
72a8cf8d
SG
158 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
ab8243e4
DN
178config CMD_BOOTZ
179 bool "bootz"
180 help
181 Boot the Linux zImage
182
26959271
MY
183config CMD_BOOTI
184 bool "booti"
185 depends on ARM64
186 default y
187 help
188 Boot an AArch64 Linux Kernel image from memory.
189
b9939336
AG
190config CMD_BOOTEFI
191 bool "bootefi"
192 depends on EFI_LOADER
193 default y
194 help
195 Boot an EFI image from memory.
196
95b62b2e
AG
197config 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
c7ae3dfd
SG
210config CMD_BOOTEFI_HELLO
211 bool "Allow booting a standard EFI hello world for testing"
95b62b2e 212 depends on CMD_BOOTEFI_HELLO_COMPILE
c7ae3dfd
SG
213 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
4880b026
TR
219config CMD_BOOTMENU
220 bool "bootmenu"
221 select MENU
222 help
223 Add an ANSI terminal boot menu command.
224
72a8cf8d
SG
225config CMD_ELF
226 bool "bootelf, bootvx"
227 default y
228 help
229 Boot an ELF/vxWorks image from the memory.
230
23922e26
MS
231config 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
72a8cf8d
SG
238config 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
e05d5058
MS
269 bool "poweroff"
270 help
271 Poweroff/Shutdown the system
72a8cf8d
SG
272
273endmenu
274
275menu "Environment commands"
276
ab8243e4
DN
277config CMD_ASKENV
278 bool "ask for env variable"
279 help
280 Ask for environment variable
281
72a8cf8d
SG
282config 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
ab8243e4
DN
300config CMD_GREPENV
301 bool "search env"
302 help
303 Allow for searching environment variables
304
72a8cf8d
SG
305config 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
a55d29d2
SG
319config 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
ffc76589
SG
327config 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
72a8cf8d
SG
335endmenu
336
337menu "Memory commands"
338
339config CMD_MEMORY
340 bool "md, mm, nm, mw, cp, cmp, base, loop"
341 default y
342 help
c99d1b3c 343 Memory commands.
72a8cf8d
SG
344 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
c99d1b3c 351 loop - initialize loop on address range
72a8cf8d
SG
352
353config CMD_CRC32
354 bool "crc32"
d70f919e 355 select HASH
72a8cf8d
SG
356 default y
357 help
358 Compute CRC32.
359
221a949e
DT
360config 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
a1dc980d
SG
366config 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
bea79d7d
AP
414config CMD_MD5SUM
415 bool "md5sum"
416 default n
417 select MD5
418 help
419 Compute MD5 checksum.
420
221a949e 421config MD5SUM_VERIFY
bea79d7d
AP
422 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
221a949e
DT
428config 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
72a8cf8d
SG
440config 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
ee7c0e71
SG
461endmenu
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
e9d33e73
MY
472config 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
72a8cf8d
SG
482endmenu
483
484menu "Device access commands"
485
0c19b4d1
SG
486config CMD_ARMFLASH
487 #depends on FLASH_CFI_DRIVER
488 bool "armflash"
489 help
490 ARM Ltd reference designs flash partition access
491
d315628e
SG
492config 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
0c19b4d1
SG
501config 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
513config 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
72a8cf8d
SG
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
0c19b4d1
SG
531config CMD_FDC
532 bool "fdcboot - Boot from floppy device"
72a8cf8d 533 help
0c19b4d1
SG
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.
72a8cf8d 613
75eb9976
SG
614config CMD_IDE
615 bool "ide - Support for IDE drivers"
fc843a02 616 select IDE
75eb9976
SG
617 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
594e8d1c
SG
623config 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
7d0f5c13
SG
631config 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
0c19b4d1
SG
665config CMD_I2C
666 bool "i2c"
667 help
668 I2C support.
669
72a8cf8d
SG
670config 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
ab8243e4
DN
682config CMD_MMC
683 bool "mmc"
684 help
685 MMC memory mapped support.
686
72a8cf8d
SG
687config CMD_NAND
688 bool "nand"
522c282f 689 default y if NAND_SUNXI
72a8cf8d
SG
690 help
691 NAND support.
692
e915d201
BB
693if CMD_NAND
694config CMD_NAND_TRIMFFS
695 bool "nand write.trimffs"
d482a8df 696 default y if ARCH_SUNXI
e915d201
BB
697 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
f38c5f52
SG
712config 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
978f0854
SG
721config 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
b331cd62
PD
729config 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
6500ec7a
SG
736config 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
7f666555
SG
744config 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
0c19b4d1
SG
752config CMD_REMOTEPROC
753 bool "remoteproc"
754 depends on REMOTEPROC
755 help
756 Support for Remote Processor control
757
758config CMD_SATA
759 bool "sata - Access SATA subsystem"
760 select SATA
761 help
762 SATA (Serial Advanced Technology Attachment) is a serial bus
763 standard for connecting to hard drives and other storage devices.
764 This command provides information about attached devices and allows
765 reading, writing and other operations.
766
767 SATA replaces PATA (originally just ATA), which stands for Parallel AT
768 Attachment, where AT refers to an IBM AT (Advanced Technology)
769 computer released in 1984.
770
72a8cf8d
SG
771config CMD_SF
772 bool "sf"
773 help
774 SPI Flash support
775
776config CMD_SPI
777 bool "sspi"
778 help
779 SPI utility command.
780
72a8cf8d
SG
781config CMD_USB
782 bool "usb"
783 help
784 USB support.
785
ab8243e4
DN
786config CMD_USB_MASS_STORAGE
787 bool "UMS usb mass storage"
788 help
789 USB mass storage support
790
72a8cf8d
SG
791endmenu
792
793
794menu "Shell scripting commands"
795
796config CMD_ECHO
797 bool "echo"
798 default y
799 help
800 Echo args to console
801
802config CMD_ITEST
803 bool "itest"
804 default y
805 help
806 Return true/false on integer compare.
807
808config CMD_SOURCE
809 bool "source"
810 default y
811 help
812 Run script from memory
813
814config CMD_SETEXPR
815 bool "setexpr"
816 default y
817 help
818 Evaluate boolean and math expressions and store the result in an env
819 variable.
820 Also supports loading the value at a memory location into a variable.
821 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
822
823endmenu
824
825menu "Network commands"
826
827config CMD_NET
828 bool "bootp, tftpboot"
829 select NET
830 default y
831 help
832 Network commands.
833 bootp - boot image via network using BOOTP/TFTP protocol
834 tftpboot - boot image via network using TFTP protocol
835
836config CMD_TFTPPUT
837 bool "tftp put"
838 help
839 TFTP put command, for uploading files to a server
840
841config CMD_TFTPSRV
842 bool "tftpsrv"
843 help
844 Act as a TFTP server and boot the first received file
845
846config CMD_RARP
847 bool "rarpboot"
848 help
849 Boot image via network using RARP/TFTP protocol
850
851config CMD_DHCP
852 bool "dhcp"
853 help
854 Boot image via network using DHCP/TFTP protocol
855
bfb380b3
YM
856config CMD_PXE
857 bool "pxe"
858 select MENU
859 help
860 Boot image via network using PXE protocol
861
72a8cf8d
SG
862config CMD_NFS
863 bool "nfs"
864 default y
865 help
866 Boot image via network using NFS protocol.
867
ab8243e4
DN
868config CMD_MII
869 bool "mii"
870 help
871 Enable MII utility commands.
872
72a8cf8d
SG
873config CMD_PING
874 bool "ping"
875 help
876 Send ICMP ECHO_REQUEST to network host
877
878config CMD_CDP
879 bool "cdp"
880 help
881 Perform CDP network configuration
882
883config CMD_SNTP
884 bool "sntp"
885 help
886 Synchronize RTC via network
887
888config CMD_DNS
889 bool "dns"
890 help
891 Lookup the IP of a hostname
892
893config CMD_LINK_LOCAL
894 bool "linklocal"
895 help
896 Acquire a network IP address using the link-local protocol
897
ef072200
SG
898config CMD_ETHSW
899 bool "ethsw"
900 help
901 Allow control of L2 Ethernet switch commands. These are supported
902 by the vsc9953 Ethernet driver at present. Sub-commands allow
903 operations such as enabling / disabling a port and
904 viewing/maintaining the filtering database (FDB)
905
72a8cf8d
SG
906endmenu
907
908menu "Misc commands"
909
0f710258
SG
910config CMD_BMP
911 bool "Enable 'bmp' command"
912 depends on LCD || DM_VIDEO || VIDEO
913 help
914 This provides a way to obtain information about a BMP-format iamge
915 and to display it. BMP (which presumably stands for BitMaP) is a
916 file format defined by Microsoft which supports images of various
917 depths, formats and compression methods. Headers on the file
918 determine the formats used. This command can be used by first loading
919 the image into RAM, then using this command to look at it or display
920 it.
921
4893e34b
SG
922config CMD_BSP
923 bool "Enable board-specific commands"
924 help
925 (deprecated: instead, please define a Kconfig option for each command)
926
927 Some boards have board-specific commands which are only enabled
928 during developemnt and need to be turned off for production. This
929 option provides a way to control this. The commands that are enabled
930 vary depending on the board.
931
cd3d4880
TM
932config CMD_BKOPS_ENABLE
933 bool "mmc bkops enable"
934 depends on CMD_MMC
935 default n
936 help
937 Enable command for setting manual background operations handshake
938 on a eMMC device. The feature is optionally available on eMMC devices
939 conforming to standard >= 4.41.
940
e40cf34a
EN
941config CMD_BLOCK_CACHE
942 bool "blkcache - control and stats for block cache"
943 depends on BLOCK_CACHE
944 default y if BLOCK_CACHE
945 help
946 Enable the blkcache command, which can be used to control the
947 operation of the cache functions.
948 This is most useful when fine-tuning the operation of the cache
949 during development, but also allows the cache to be disabled when
950 it might hurt performance (e.g. when using the ums command).
951
ab8243e4
DN
952config CMD_CACHE
953 bool "icache or dcache"
954 help
955 Enable the "icache" and "dcache" commands
956
93d66ee5
SG
957config CMD_DISPLAY
958 bool "Enable the 'display' command, for character displays"
959 help
960 (this needs porting to driver model)
961 This enables the 'display' command which allows a string to be
962 displayed on a simple board-specific display. Implement
963 display_putc() to use it.
964
ffe2052d
SG
965config CMD_LED
966 bool "led"
967 default y if LED
968 help
969 Enable the 'led' command which allows for control of LEDs supported
970 by the board. The LEDs can be listed with 'led list' and controlled
971 with led on/off/togle/blink. Any LED drivers can be controlled with
972 this command, e.g. led_gpio.
973
c9032ce1
CP
974config CMD_DATE
975 bool "date"
976 default y if DM_RTC
977 help
978 Enable the 'date' command for getting/setting the time/date in RTC
979 devices.
980
72a8cf8d
SG
981config CMD_TIME
982 bool "time"
983 help
984 Run commands and summarize execution time.
985
d91a9d7f
SG
986config CMD_GETTIME
987 bool "gettime - read elapsed time"
988 help
989 Enable the 'gettime' command which reads the elapsed time since
990 U-Boot started running. This shows the time in seconds and
991 milliseconds. See also the 'bootstage' command which provides more
992 flexibility for boot timing.
993
72a8cf8d
SG
994# TODO: rename to CMD_SLEEP
995config CMD_MISC
996 bool "sleep"
997 default y
998 help
999 Delay execution for some time
1000
1001config CMD_TIMER
1002 bool "timer"
1003 help
1004 Access the system timer.
1005
72a8cf8d
SG
1006config CMD_SOUND
1007 bool "sound"
1008 depends on SOUND
1009 help
1010 This provides basic access to the U-Boot's sound support. The main
1011 feature is to play a beep.
1012
1013 sound init - set up sound system
1014 sound play - play a sound
1015
18686590 1016config CMD_QFW
dd6f3abb 1017 bool "qfw"
fcf5c041 1018 select QFW
dd6f3abb
TR
1019 help
1020 This provides access to the QEMU firmware interface. The main
1021 feature is to allow easy loading of files passed to qemu-system
1022 via -kernel / -initrd
fa61ef6b
KP
1023
1024source "cmd/mvebu/Kconfig"
1025
72a8cf8d
SG
1026endmenu
1027
1028config CMD_BOOTSTAGE
1029 bool "Enable the 'bootstage' command"
1030 depends on BOOTSTAGE
1031 help
1032 Add a 'bootstage' command which supports printing a report
1033 and un/stashing of bootstage data.
1034
1035menu "Power commands"
1036config CMD_PMIC
1037 bool "Enable Driver Model PMIC command"
1038 depends on DM_PMIC
1039 help
1040 This is the pmic command, based on a driver model pmic's API.
1041 Command features are unchanged:
1042 - list - list pmic devices
1043 - pmic dev <id> - show or [set] operating pmic device (NEW)
1044 - pmic dump - dump registers
1045 - pmic read address - read byte of register at address
1046 - pmic write address - write byte to register at address
1047 The only one change for this command is 'dev' subcommand.
1048
1049config CMD_REGULATOR
1050 bool "Enable Driver Model REGULATOR command"
1051 depends on DM_REGULATOR
1052 help
1053 This command is based on driver model regulator's API.
1054 User interface features:
1055 - list - list regulator devices
1056 - regulator dev <id> - show or [set] operating regulator device
1057 - regulator info - print constraints info
1058 - regulator status - print operating status
1059 - regulator value <val] <-f> - print/[set] voltage value [uV]
1060 - regulator current <val> - print/[set] current value [uA]
1061 - regulator mode <id> - print/[set] operating mode id
1062 - regulator enable - enable the regulator output
1063 - regulator disable - disable the regulator output
1064
1065 The '-f' (force) option can be used for set the value which exceeds
1066 the limits, which are found in device-tree and are kept in regulator's
1067 uclass platdata structure.
1068
1069endmenu
1070
1071menu "Security commands"
b1a873df
SG
1072config CMD_AES
1073 bool "Enable the 'aes' command"
1074 select AES
1075 help
1076 This provides a means to encrypt and decrypt data using the AES
1077 (Advanced Encryption Standard). This algorithm uses a symetric key
1078 and is widely used as a streaming cipher. Different key lengths are
1079 supported by the algorithm but this command only supports 128 bits
1080 at present.
1081
c04b9b34
SG
1082config CMD_BLOB
1083 bool "Enable the 'blob' command"
1084 help
1085 This is used with the Freescale secure boot mechanism.
1086
1087 Freescale's SEC block has built-in Blob Protocol which provides
1088 a method for protecting user-defined data across system power
1089 cycles. SEC block protects data in a data structure called a Blob,
1090 which provides both confidentiality and integrity protection.
1091
1092 Encapsulating data as a blob
1093 Each time that the Blob Protocol is used to protect data, a
1094 different randomly generated key is used to encrypt the data.
1095 This random key is itself encrypted using a key which is derived
1096 from SoC's non-volatile secret key and a 16 bit Key identifier.
1097 The resulting encrypted key along with encrypted data is called a
1098 blob. The non-volatile secure key is available for use only during
1099 secure boot.
1100
1101 During decapsulation, the reverse process is performed to get back
1102 the original data.
1103
1104 Sub-commands:
1105 blob enc - encapsulating data as a cryptgraphic blob
1106 blob dec - decapsulating cryptgraphic blob to get the data
1107
1108 Syntax:
1109
1110 blob enc src dst len km
1111
1112 Encapsulate and create blob of data $len bytes long
1113 at address $src and store the result at address $dst.
1114 $km is the 16 byte key modifier is also required for
1115 generation/use as key for cryptographic operation. Key
1116 modifier should be 16 byte long.
1117
1118 blob dec src dst len km
1119
1120 Decapsulate the blob of data at address $src and
1121 store result of $len byte at addr $dst.
1122 $km is the 16 byte key modifier is also required for
1123 generation/use as key for cryptographic operation. Key
1124 modifier should be 16 byte long.
1125
551c3934
SG
1126config CMD_HASH
1127 bool "Support 'hash' command"
d70f919e 1128 select HASH
551c3934
SG
1129 help
1130 This provides a way to hash data in memory using various supported
1131 algorithms (such as SHA1, MD5, CRC32). The computed digest can be
1132 saved to memory or to an environment variable. It is also possible
1133 to verify a hash against data in memory.
1134
221a949e
DT
1135config HASH_VERIFY
1136 bool "hash -v"
1137 depends on CMD_HASH
1138 help
1139 Add -v option to verify data against a hash.
1140
72a8cf8d
SG
1141config CMD_TPM
1142 bool "Enable the 'tpm' command"
1143 depends on TPM
1144 help
1145 This provides a means to talk to a TPM from the command line. A wide
1146 range of commands if provided - see 'tpm help' for details. The
1147 command requires a suitable TPM on your board and the correct driver
1148 must be enabled.
1149
1150config CMD_TPM_TEST
1151 bool "Enable the 'tpm test' command"
1152 depends on CMD_TPM
1153 help
1154 This provides a a series of tests to confirm that the TPM is working
1155 correctly. The tests cover initialisation, non-volatile RAM, extend,
1156 global lock and checking that timing is within expectations. The
1157 tests pass correctly on Infineon TPMs but may need to be adjusted
1158 for other devices.
1159
1160endmenu
bfeba017
MF
1161
1162menu "Firmware commands"
1163config CMD_CROS_EC
1164 bool "Enable crosec command"
1165 depends on CROS_EC
1166 default y
1167 help
1168 Enable command-line access to the Chrome OS EC (Embedded
1169 Controller). This provides the 'crosec' command which has
1170 a number of sub-commands for performing EC tasks such as
1171 updating its flash, accessing a small saved context area
1172 and talking to the I2C bus behind the EC (if there is one).
1173endmenu
72a8cf8d 1174
ab8243e4 1175menu "Filesystem commands"
d66a10fc
SG
1176config CMD_CBFS
1177 bool "Enable the 'cbfs' command"
deb95999 1178 depends on FS_CBFS
d66a10fc
SG
1179 help
1180 Define this to enable support for reading from a Coreboot
1181 filesystem. This is a ROM-based filesystem used for accessing files
1182 on systems that use coreboot as the first boot-loader and then load
1183 U-Boot to actually boot the Operating System. Available commands are
1184 cbfsinit, cbfsinfo, cbfsls and cbfsload.
1185
97072747
SG
1186config CMD_CRAMFS
1187 bool "Enable the 'cramfs' command"
80e44cfe 1188 depends on FS_CRAMFS
97072747
SG
1189 help
1190 This provides commands for dealing with CRAMFS (Compressed ROM
1191 filesystem). CRAMFS is useful when space is tight since files are
1192 compressed. Two commands are provided:
1193
1194 cramfsls - lists files in a cramfs image
1195 cramfsload - loads a file from a cramfs image
1196
ab8243e4
DN
1197config CMD_EXT2
1198 bool "ext2 command support"
1199 help
1200 Enables EXT2 FS command
1201
1202config CMD_EXT4
1203 bool "ext4 command support"
1204 help
1205 Enables EXT4 FS command
1206
1207config CMD_EXT4_WRITE
1208 depends on CMD_EXT4
1209 bool "ext4 write command support"
1210 help
1211 Enables EXT4 FS write command
1212
1213config CMD_FAT
1214 bool "FAT command support"
eedfb89e 1215 select FS_FAT
ab8243e4
DN
1216 help
1217 Support for the FAT fs
1218
1219config CMD_FS_GENERIC
1220 bool "filesystem commands"
1221 help
1222 Enables filesystem commands (e.g. load, ls) that work for multiple
1223 fs types.
0269dfae 1224
efbe99ce
JM
1225config CMD_FS_UUID
1226 bool "fsuuid command"
1227 help
1228 Enables fsuuid command for filesystem UUID.
1229
b8682a7f
SG
1230config CMD_JFFS2
1231 bool "jffs2 command"
59e12a4a 1232 select FS_JFFS2
b8682a7f
SG
1233 help
1234 Enables commands to support the JFFS2 (Journalling Flash File System
1235 version 2) filesystem. This enables fsload, ls and fsinfo which
1236 provide the ability to load files, list directories and obtain
1237 filesystem information.
1238
0269dfae 1239config CMD_MTDPARTS
0269dfae
MR
1240 bool "MTD partition support"
1241 help
1242 MTD partition support
1243
1244config MTDIDS_DEFAULT
1245 string "Default MTD IDs"
1246 depends on CMD_MTDPARTS
1247 help
1248 Defines a default MTD ID
1249
1250config MTDPARTS_DEFAULT
1251 string "Default MTD partition scheme"
1252 depends on CMD_MTDPARTS
1253 help
1254 Defines a default MTD partitioning scheme in the Linux MTD command
1255 line partitions format
1256
cb70e6cb
SG
1257config CMD_MTDPARTS_SPREAD
1258 bool "Padd partition size to take account of bad blocks"
1259 depends on CMD_MTDPARTS
1260 help
1261 This enables the 'spread' sub-command of the mtdparts command.
1262 This command will modify the existing mtdparts variable by increasing
1263 the size of the partitions such that 1) each partition's net size is
1264 at least as large as the size specified in the mtdparts variable and
1265 2) each partition starts on a good block.
1266
ab8243e4
DN
1267endmenu
1268
ac20a1b2
SG
1269menu "Debug commands"
1270
1271config CMD_BEDBUG
1272 bool "bedbug"
1273 help
1274 The bedbug (emBEDded deBUGger) command provides debugging features
1275 for some PowerPC processors. For details please see the
1276 docuemntation in doc/README.beddbug
1277
3bd25cb5
SG
1278config CMD_DIAG
1279 bool "diag - Board diagnostics"
1280 help
1281 This command provides access to board diagnostic tests. These are
1282 called Power-on Self Tests (POST). The command allows listing of
1283 available tests and running either all the tests, or specific tests
1284 identified by name.
1285
1b330894
SG
1286config CMD_IRQ
1287 bool "irq - Show information about interrupts"
064b55cf 1288 depends on !ARM && !MIPS && !SH
1b330894
SG
1289 help
1290 This enables two commands:
1291
1292 interrupts - enable or disable interrupts
1293 irqinfo - print device-specific interrupt information
6bac227a
SG
1294
1295config CMD_KGDB
1296 bool "kgdb - Allow debugging of U-Boot with gdb"
1297 help
1298 This enables a 'kgdb' command which allows gdb to connect to U-Boot
1299 over a serial link for debugging purposes. This allows
1300 single-stepping, inspecting variables, etc. This is supported only
1301 on PowerPC at present.
1302
ac20a1b2
SG
1303endmenu
1304
8f2fe0c8
HS
1305config CMD_UBI
1306 tristate "Enable UBI - Unsorted block images commands"
1307 select CRC32
1308 select MTD_UBI
22cf953a 1309 select CMD_MTDPARTS
522c282f 1310 default y if NAND_SUNXI
8f2fe0c8
HS
1311 help
1312 UBI is a software layer above MTD layer which admits use of LVM-like
1313 logical volumes on top of MTD devices, hides some complexities of
1314 flash chips like wear and bad blocks and provides some other useful
1315 capabilities. Please, consult the MTD web site for more details
1316 (www.linux-mtd.infradead.org). Activate this option if you want
1317 to use U-Boot UBI commands.
1318
173aafbf
BB
1319config CMD_UBIFS
1320 tristate "Enable UBIFS - Unsorted block images filesystem commands"
2bc734b1 1321 depends on CMD_UBI
173aafbf 1322 select CRC32
24fc9531 1323 select LZO
d56b4b19 1324 default y if CMD_UBI
173aafbf
BB
1325 help
1326 UBIFS is a file system for flash devices which works on top of UBI.
1327
72a8cf8d 1328endmenu