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