Merge git://git.denx.de/u-boot-mpc85xx
[platform/kernel/u-boot.git] / cmd / Kconfig
1 menu "Command line interface"
2
3 config 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
14 config HUSH_PARSER
15         bool "Use hush shell"
16         depends on CMDLINE
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
26 config 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
33 menu "Autoboot options"
34
35 config AUTOBOOT
36         bool "Autoboot"
37         default y
38         help
39           This enables the autoboot.  See doc/README.autoboot for detail.
40
41 config 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
51 config 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
67 config AUTOBOOT_ENCRYPTION
68         bool "Enable encryption in autoboot stopping"
69         depends on AUTOBOOT_KEYED
70         default n
71
72 config 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
84 config 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
96 config 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
106 config 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
115 endmenu
116
117 source "cmd/fastboot/Kconfig"
118
119 comment "Commands"
120
121 menu "Info commands"
122
123 config CMD_BDI
124         bool "bdinfo"
125         default y
126         help
127           Print board info
128
129 config CMD_CONSOLE
130         bool "coninfo"
131         default y
132         help
133           Print console devices and information.
134
135 config CMD_CPU
136         bool "cpu"
137         help
138           Print information about available CPUs. This normally shows the
139           number of CPUs, type (e.g. manufacturer, architecture, product or
140           internal name) and clock frequency. Other information may be
141           available depending on the CPU driver.
142
143 config CMD_LICENSE
144         bool "license"
145         help
146           Print GPL license text
147
148 endmenu
149
150 menu "Boot commands"
151
152 config CMD_BOOTD
153         bool "bootd"
154         default y
155         help
156           Run the command stored in the environment "bootcmd", i.e.
157           "bootd" does the same thing as "run bootcmd".
158
159 config CMD_BOOTM
160         bool "bootm"
161         default y
162         help
163           Boot an application image from the memory.
164
165 config CMD_BOOTZ
166         bool "bootz"
167         help
168           Boot the Linux zImage
169
170 config CMD_BOOTI
171         bool "booti"
172         depends on ARM64
173         default y
174         help
175           Boot an AArch64 Linux Kernel image from memory.
176
177 config CMD_BOOTEFI
178         bool "bootefi"
179         depends on EFI_LOADER
180         default y
181         help
182           Boot an EFI image from memory.
183
184 config CMD_BOOTEFI_HELLO_COMPILE
185         bool "Compile a standard EFI hello world binary for testing"
186         depends on CMD_BOOTEFI && (ARM || X86)
187         default y
188         help
189           This compiles a standard EFI hello world application with U-Boot so
190           that it can be used with the test/py testing framework. This is useful
191           for testing that EFI is working at a basic level, and for bringing
192           up EFI support on a new architecture.
193
194           No additional space will be required in the resulting U-Boot binary
195           when this option is enabled.
196
197 config CMD_BOOTEFI_HELLO
198         bool "Allow booting a standard EFI hello world for testing"
199         depends on CMD_BOOTEFI_HELLO_COMPILE
200         help
201           This adds a standard EFI hello world application to U-Boot so that
202           it can be used with the 'bootefi hello' command. This is useful
203           for testing that EFI is working at a basic level, and for bringing
204           up EFI support on a new architecture.
205
206 config CMD_BOOTMENU
207         bool "bootmenu"
208         select MENU
209         help
210           Add an ANSI terminal boot menu command.
211
212 config CMD_ELF
213         bool "bootelf, bootvx"
214         default y
215         help
216           Boot an ELF/vxWorks image from the memory.
217
218 config CMD_FDT
219         bool "Flattened Device Tree utility commands"
220         default y
221         depends on OF_LIBFDT
222         help
223           Do FDT related setup before booting into the Operating System.
224
225 config CMD_GO
226         bool "go"
227         default y
228         help
229           Start an application at a given address.
230
231 config CMD_RUN
232         bool "run"
233         default y
234         help
235           Run the command in the given environment variable.
236
237 config CMD_IMI
238         bool "iminfo"
239         default y
240         help
241           Print header information for application image.
242
243 config CMD_IMLS
244         bool "imls"
245         default y
246         help
247           List all images found in flash
248
249 config CMD_XIMG
250         bool "imxtract"
251         default y
252         help
253           Extract a part of a multi-image.
254
255 config CMD_POWEROFF
256         bool
257
258 endmenu
259
260 menu "Environment commands"
261
262 config CMD_ASKENV
263         bool "ask for env variable"
264         help
265           Ask for environment variable
266
267 config CMD_EXPORTENV
268         bool "env export"
269         default y
270         help
271           Export environments.
272
273 config CMD_IMPORTENV
274         bool "env import"
275         default y
276         help
277           Import environments.
278
279 config CMD_EDITENV
280         bool "editenv"
281         default y
282         help
283           Edit environment variable.
284
285 config CMD_GREPENV
286         bool "search env"
287         help
288           Allow for searching environment variables
289
290 config CMD_SAVEENV
291         bool "saveenv"
292         default y
293         help
294           Save all environment variables into the compiled-in persistent
295           storage.
296
297 config CMD_ENV_EXISTS
298         bool "env exists"
299         default y
300         help
301           Check if a variable is defined in the environment for use in
302           shell scripting.
303
304 endmenu
305
306 menu "Memory commands"
307
308 config CMD_MEMORY
309         bool "md, mm, nm, mw, cp, cmp, base, loop"
310         default y
311         help
312           Memory commands.
313             md - memory display
314             mm - memory modify (auto-incrementing address)
315             nm - memory modify (constant address)
316             mw - memory write (fill)
317             cp - memory copy
318             cmp - memory compare
319             base - print or set address offset
320             loop - initialize loop on address range
321
322 config CMD_CRC32
323         bool "crc32"
324         default y
325         help
326           Compute CRC32.
327
328 config LOOPW
329         bool "loopw"
330         help
331           Infinite write loop on address range
332
333 config CMD_MEMTEST
334         bool "memtest"
335         help
336           Simple RAM read/write test.
337
338 config CMD_MX_CYCLIC
339         bool "mdc, mwc"
340         help
341           mdc - memory display cyclic
342           mwc - memory write cyclic
343
344 config CMD_MEMINFO
345         bool "meminfo"
346         help
347           Display memory information.
348
349 endmenu
350
351 menu "Device access commands"
352
353 config CMD_DM
354         bool "dm - Access to driver model information"
355         depends on DM
356         default y
357         help
358           Provides access to driver model data structures and information,
359           such as a list of devices, list of uclasses and the state of each
360           device (e.g. activated). This is not required for operation, but
361           can be useful to see the state of driver model for debugging or
362           interest.
363
364 config CMD_DEMO
365         bool "demo - Demonstration commands for driver model"
366         depends on DM
367         help
368           Provides a 'demo' command which can be used to play around with
369           driver model. To use this properly you will need to enable one or
370           both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
371           Otherwise you will always get an empty list of devices. The demo
372           devices are defined in the sandbox device tree, so the easiest
373           option is to use sandbox and pass the -d point to sandbox's
374           u-boot.dtb file.
375
376 config CMD_LOADB
377         bool "loadb"
378         default y
379         help
380           Load a binary file over serial line.
381
382 config CMD_LOADS
383         bool "loads"
384         default y
385         help
386           Load an S-Record file over serial line
387
388 config CMD_FLASH
389         bool "flinfo, erase, protect"
390         default y
391         help
392           NOR flash support.
393             flinfo - print FLASH memory information
394             erase - FLASH memory
395             protect - enable or disable FLASH write protection
396
397 config CMD_GPT
398         bool "GPT (GUID Partition Table) command"
399         select PARTITION_UUIDS
400         select EFI_PARTITION
401         help
402           Enable the 'gpt' command to ready and write GPT style partition
403           tables.
404
405 config CMD_ARMFLASH
406         #depends on FLASH_CFI_DRIVER
407         bool "armflash"
408         help
409           ARM Ltd reference designs flash partition access
410
411 config CMD_MMC
412         bool "mmc"
413         help
414           MMC memory mapped support.
415
416 config CMD_NAND
417         bool "nand"
418         help
419           NAND support.
420
421 config CMD_PART
422         bool "part"
423         select PARTITION_UUIDS
424         help
425           Read and display information about the partition table on
426           various media.
427
428 config CMD_SF
429         bool "sf"
430         help
431           SPI Flash support
432
433 config CMD_SPI
434         bool "sspi"
435         help
436           SPI utility command.
437
438 config CMD_I2C
439         bool "i2c"
440         help
441           I2C support.
442
443 config CMD_USB
444         bool "usb"
445         help
446           USB support.
447
448 config CMD_DFU
449         bool "dfu"
450         select USB_FUNCTION_DFU
451         help
452           Enables the command "dfu" which is used to have U-Boot create a DFU
453           class device via USB.
454
455 config CMD_USB_MASS_STORAGE
456         bool "UMS usb mass storage"
457         help
458           USB mass storage support
459
460 config CMD_FPGA
461         bool "fpga"
462         default y
463         help
464           FPGA support.
465
466 config CMD_REMOTEPROC
467         bool "remoteproc"
468         depends on REMOTEPROC
469         help
470           Support for Remote Processor control
471
472 config CMD_GPIO
473         bool "gpio"
474         help
475           GPIO support.
476
477 endmenu
478
479
480 menu "Shell scripting commands"
481
482 config CMD_ECHO
483         bool "echo"
484         default y
485         help
486           Echo args to console
487
488 config CMD_ITEST
489         bool "itest"
490         default y
491         help
492           Return true/false on integer compare.
493
494 config CMD_SOURCE
495         bool "source"
496         default y
497         help
498           Run script from memory
499
500 config CMD_SETEXPR
501         bool "setexpr"
502         default y
503         help
504           Evaluate boolean and math expressions and store the result in an env
505             variable.
506           Also supports loading the value at a memory location into a variable.
507           If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
508
509 endmenu
510
511 menu "Network commands"
512
513 config CMD_NET
514         bool "bootp, tftpboot"
515         select NET
516         default y
517         help
518           Network commands.
519           bootp - boot image via network using BOOTP/TFTP protocol
520           tftpboot - boot image via network using TFTP protocol
521
522 config CMD_TFTPPUT
523         bool "tftp put"
524         help
525           TFTP put command, for uploading files to a server
526
527 config CMD_TFTPSRV
528         bool "tftpsrv"
529         help
530           Act as a TFTP server and boot the first received file
531
532 config CMD_RARP
533         bool "rarpboot"
534         help
535           Boot image via network using RARP/TFTP protocol
536
537 config CMD_DHCP
538         bool "dhcp"
539         help
540           Boot image via network using DHCP/TFTP protocol
541
542 config CMD_PXE
543         bool "pxe"
544         select MENU
545         help
546           Boot image via network using PXE protocol
547
548 config CMD_NFS
549         bool "nfs"
550         default y
551         help
552           Boot image via network using NFS protocol.
553
554 config CMD_MII
555         bool "mii"
556         help
557           Enable MII utility commands.
558
559 config CMD_PING
560         bool "ping"
561         help
562           Send ICMP ECHO_REQUEST to network host
563
564 config CMD_CDP
565         bool "cdp"
566         help
567           Perform CDP network configuration
568
569 config CMD_SNTP
570         bool "sntp"
571         help
572           Synchronize RTC via network
573
574 config CMD_DNS
575         bool "dns"
576         help
577           Lookup the IP of a hostname
578
579 config CMD_LINK_LOCAL
580         bool "linklocal"
581         help
582           Acquire a network IP address using the link-local protocol
583
584 endmenu
585
586 menu "Misc commands"
587
588 config CMD_AMBAPP
589         bool "ambapp"
590         depends on LEON3
591         default y
592         help
593           Lists AMBA Plug-n-Play information.
594
595 config SYS_AMBAPP_PRINT_ON_STARTUP
596         bool "Show AMBA PnP info on startup"
597         depends on CMD_AMBAPP
598         default n
599         help
600           Show AMBA Plug-n-Play information on startup.
601
602 config CMD_BKOPS_ENABLE
603         bool "mmc bkops enable"
604         depends on CMD_MMC
605         default n
606         help
607           Enable command for setting manual background operations handshake
608           on a eMMC device. The feature is optionally available on eMMC devices
609           conforming to standard >= 4.41.
610
611 config CMD_BLOCK_CACHE
612         bool "blkcache - control and stats for block cache"
613         depends on BLOCK_CACHE
614         default y if BLOCK_CACHE
615         help
616           Enable the blkcache command, which can be used to control the
617           operation of the cache functions.
618           This is most useful when fine-tuning the operation of the cache
619           during development, but also allows the cache to be disabled when
620           it might hurt performance (e.g. when using the ums command).
621
622 config CMD_CACHE
623         bool "icache or dcache"
624         help
625           Enable the "icache" and "dcache" commands
626
627 config CMD_TIME
628         bool "time"
629         help
630           Run commands and summarize execution time.
631
632 # TODO: rename to CMD_SLEEP
633 config CMD_MISC
634         bool "sleep"
635         default y
636         help
637           Delay execution for some time
638
639 config CMD_TIMER
640         bool "timer"
641         help
642           Access the system timer.
643
644 config CMD_SETGETDCR
645         bool "getdcr, setdcr, getidcr, setidcr"
646         depends on 4xx
647         default y
648         help
649           getdcr - Get an AMCC PPC 4xx DCR's value
650           setdcr - Set an AMCC PPC 4xx DCR's value
651           getidcr - Get a register value via indirect DCR addressing
652           setidcr - Set a register value via indirect DCR addressing
653
654 config CMD_SOUND
655         bool "sound"
656         depends on SOUND
657         help
658           This provides basic access to the U-Boot's sound support. The main
659           feature is to play a beep.
660
661              sound init   - set up sound system
662              sound play   - play a sound
663
664 config CMD_QFW
665         bool "qfw"
666         select QFW
667         help
668           This provides access to the QEMU firmware interface.  The main
669           feature is to allow easy loading of files passed to qemu-system
670           via -kernel / -initrd
671
672 source "cmd/mvebu/Kconfig"
673
674 endmenu
675
676 config CMD_BOOTSTAGE
677         bool "Enable the 'bootstage' command"
678         depends on BOOTSTAGE
679         help
680           Add a 'bootstage' command which supports printing a report
681           and un/stashing of bootstage data.
682
683 menu "Power commands"
684 config CMD_PMIC
685         bool "Enable Driver Model PMIC command"
686         depends on DM_PMIC
687         help
688           This is the pmic command, based on a driver model pmic's API.
689           Command features are unchanged:
690           - list               - list pmic devices
691           - pmic dev <id>      - show or [set] operating pmic device (NEW)
692           - pmic dump          - dump registers
693           - pmic read address  - read byte of register at address
694           - pmic write address - write byte to register at address
695           The only one change for this command is 'dev' subcommand.
696
697 config CMD_REGULATOR
698         bool "Enable Driver Model REGULATOR command"
699         depends on DM_REGULATOR
700         help
701           This command is based on driver model regulator's API.
702           User interface features:
703           - list               - list regulator devices
704           - regulator dev <id> - show or [set] operating regulator device
705           - regulator info     - print constraints info
706           - regulator status   - print operating status
707           - regulator value <val] <-f> - print/[set] voltage value [uV]
708           - regulator current <val>    - print/[set] current value [uA]
709           - regulator mode <id>        - print/[set] operating mode id
710           - regulator enable           - enable the regulator output
711           - regulator disable          - disable the regulator output
712
713           The '-f' (force) option can be used for set the value which exceeds
714           the limits, which are found in device-tree and are kept in regulator's
715           uclass platdata structure.
716
717 endmenu
718
719 menu "Security commands"
720 config CMD_TPM
721         bool "Enable the 'tpm' command"
722         depends on TPM
723         help
724           This provides a means to talk to a TPM from the command line. A wide
725           range of commands if provided - see 'tpm help' for details. The
726           command requires a suitable TPM on your board and the correct driver
727           must be enabled.
728
729 config CMD_TPM_TEST
730         bool "Enable the 'tpm test' command"
731         depends on CMD_TPM
732         help
733           This provides a a series of tests to confirm that the TPM is working
734           correctly. The tests cover initialisation, non-volatile RAM, extend,
735           global lock and checking that timing is within expectations. The
736           tests pass correctly on Infineon TPMs but may need to be adjusted
737           for other devices.
738
739 endmenu
740
741 menu "Firmware commands"
742 config CMD_CROS_EC
743         bool "Enable crosec command"
744         depends on CROS_EC
745         default y
746         help
747           Enable command-line access to the Chrome OS EC (Embedded
748           Controller). This provides the 'crosec' command which has
749           a number of sub-commands for performing EC tasks such as
750           updating its flash, accessing a small saved context area
751           and talking to the I2C bus behind the EC (if there is one).
752 endmenu
753
754 menu "Filesystem commands"
755 config CMD_EXT2
756         bool "ext2 command support"
757         help
758           Enables EXT2 FS command
759
760 config CMD_EXT4
761         bool "ext4 command support"
762         help
763           Enables EXT4 FS command
764
765 config CMD_EXT4_WRITE
766         depends on CMD_EXT4
767         bool "ext4 write command support"
768         help
769           Enables EXT4 FS write command
770
771 config CMD_FAT
772         bool "FAT command support"
773         help
774           Support for the FAT fs
775
776 config CMD_FS_GENERIC
777         bool "filesystem commands"
778         help
779           Enables filesystem commands (e.g. load, ls) that work for multiple
780           fs types.
781 endmenu
782
783 config CMD_UBI
784         tristate "Enable UBI - Unsorted block images commands"
785         select CRC32
786         select MTD_UBI
787         help
788           UBI is a software layer above MTD layer which admits use of LVM-like
789           logical volumes on top of MTD devices, hides some complexities of
790           flash chips like wear and bad blocks and provides some other useful
791           capabilities. Please, consult the MTD web site for more details
792           (www.linux-mtd.infradead.org). Activate this option if you want
793           to use U-Boot UBI commands.
794
795 endmenu