]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - common/Kconfig
Move defaults from config_cmd_default.h to Kconfig
[karo-tx-uboot.git] / common / Kconfig
1 menu "Command line interface"
2
3 config HUSH_PARSER
4         bool "Use hush shell"
5         select SYS_HUSH_PARSER
6         help
7           This option enables the "hush" shell (from Busybox) as command line
8           interpreter, thus enabling powerful command line syntax like
9           if...then...else...fi conditionals or `&&' and '||'
10           constructs ("shell scripts").
11
12           If disabled, you get the old, much simpler behaviour with a somewhat
13           smaller memory footprint.
14
15 config SYS_HUSH_PARSER
16         bool
17         help
18           Backward compatibility.
19
20 menu "Autoboot options"
21
22 config AUTOBOOT_KEYED
23         bool "Stop autobooting via specific input key / string"
24         default n
25         help
26           This option enables stopping (aborting) of the automatic
27           boot feature only by issuing a specific input key or
28           string. If not enabled, any input key will abort the
29           U-Boot automatic booting process and bring the device
30           to the U-Boot prompt for user input.
31
32 config AUTOBOOT_PROMPT
33         string "Autoboot stop prompt"
34         depends on AUTOBOOT_KEYED
35         default "Autoboot in %d seconds\\n"
36         help
37           This string is displayed before the boot delay selected by
38           CONFIG_BOOTDELAY starts. If it is not defined there is no
39           output indicating that autoboot is in progress.
40
41           Note that this define is used as the (only) argument to a
42           printf() call, so it may contain '%' format specifications,
43           provided that it also includes, sepearated by commas exactly
44           like in a printf statement, the required arguments. It is
45           the responsibility of the user to select only such arguments
46           that are valid in the given context.
47
48 config AUTOBOOT_ENCRYPTION
49         bool "Enable encryption in autoboot stopping"
50         depends on AUTOBOOT_KEYED
51         default n
52
53 config AUTOBOOT_DELAY_STR
54         string "Delay autobooting via specific input key / string"
55         depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
56         help
57           This option delays the automatic boot feature by issuing
58           a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
59           or the environment variable "bootdelaykey" is specified
60           and this string is received from console input before
61           autoboot starts booting, U-Boot gives a command prompt. The
62           U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
63           used, otherwise it never times out.
64
65 config AUTOBOOT_STOP_STR
66         string "Stop autobooting via specific input key / string"
67         depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
68         help
69           This option enables stopping (aborting) of the automatic
70           boot feature only by issuing a specific input key or
71           string. If CONFIG_AUTOBOOT_STOP_STR or the environment
72           variable "bootstopkey" is specified and this string is
73           received from console input before autoboot starts booting,
74           U-Boot gives a command prompt. The U-Boot prompt never
75           times out, even if CONFIG_BOOT_RETRY_TIME is used.
76
77 config AUTOBOOT_KEYED_CTRLC
78         bool "Enable Ctrl-C autoboot interruption"
79         depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
80         default n
81         help
82           This option allows for the boot sequence to be interrupted
83           by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
84           Setting this variable provides an escape sequence from the
85           limited "password" strings.
86
87 config AUTOBOOT_STOP_STR_SHA256
88         string "Stop autobooting via SHA256 encrypted password"
89         depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
90         help
91           This option adds the feature to only stop the autobooting,
92           and therefore boot into the U-Boot prompt, when the input
93           string / password matches a values that is encypted via
94           a SHA256 hash and saved in the environment.
95
96 endmenu
97
98 comment "Commands"
99
100 menu "Info commands"
101
102 config CMD_BDI
103         bool "bdinfo"
104         default y
105         help
106           Print board info
107
108 config CMD_CONSOLE
109         bool "coninfo"
110         default y
111         help
112           Print console devices and information.
113
114 config CMD_CPU
115         bool "cpu"
116         help
117           Print information about available CPUs. This normally shows the
118           number of CPUs, type (e.g. manufacturer, architecture, product or
119           internal name) and clock frequency. Other information may be
120           available depending on the CPU driver.
121
122 config CMD_LICENSE
123         bool "license"
124         help
125           Print GPL license text
126
127 endmenu
128
129 menu "Boot commands"
130
131 config CMD_BOOTD
132         bool "bootd"
133         default y
134         help
135           Run the command stored in the environment "bootcmd", i.e.
136           "bootd" does the same thing as "run bootcmd".
137
138 config CMD_BOOTM
139         bool "bootm"
140         default y
141         help
142           Boot an application image from the memory.
143
144 config CMD_BOOTZ
145         bool "bootz"
146         default y
147         help
148           Boot a Linux kernel zImage.
149
150 config CMD_BOOTCE
151         bool "bootce"
152         help
153           Boot a WindowsCE image.
154
155 config CMD_GO
156         bool "go"
157         default y
158         help
159           Start an application at a given address.
160
161 config CMD_RUN
162         bool "run"
163         default y
164         help
165           Run the command in the given environment variable.
166
167 config CMD_IMI
168         bool "iminfo"
169         default y
170         help
171           Print header information for application image.
172
173 config CMD_IMLS
174         bool "imls"
175         default !SYS_NO_FLASH
176         help
177           List all images found in flash
178
179 config CMD_XIMG
180         bool "imxtract"
181         default y
182         help
183           Extract a part of a multi-image.
184
185 endmenu
186
187 menu "DTB support"
188
189 config OF_LIBFDT
190         bool "Enable FDT commands"
191
192 config OF_BOARD_SETUP
193         bool "Support DT modifications by board code"
194         depends on OF_LIBFDT
195
196 endmenu
197
198 menu "Environment commands"
199
200 config CMD_EXPORTENV
201         bool "env export"
202         default y
203         help
204           Export environments.
205
206 config CMD_IMPORTENV
207         bool "env import"
208         default y
209         help
210           Import environments.
211
212 config CMD_EDITENV
213         bool "editenv"
214         default y
215         help
216           Edit environment variable.
217
218 config CMD_SAVEENV
219         bool "saveenv"
220         default y
221         help
222           Save all environment variables into the compiled-in persistent
223           storage.
224
225 config CMD_ENV_EXISTS
226         bool "env exists"
227         default y
228         help
229           Check if a variable is defined in the environment for use in
230           shell scripting.
231
232 endmenu
233
234 menu "Memory commands"
235
236 config CMD_MEMORY
237         bool "md, mm, nm, mw, cp, cmp, base, loop"
238         default y
239         help
240           Memeory commands.
241             md - memory display
242             mm - memory modify (auto-incrementing address)
243             nm - memory modify (constant address)
244             mw - memory write (fill)
245             cp - memory copy
246             cmp - memory compare
247             base - print or set address offset
248             loop - initinite loop on address range
249
250 config CMD_CRC32
251         bool "crc32"
252         default y
253         help
254           Compute CRC32.
255
256 config LOOPW
257         bool "loopw"
258         help
259           Infinite write loop on address range
260
261 config CMD_MEMTEST
262         bool "memtest"
263         help
264           Simple RAM read/write test.
265
266 config CMD_MX_CYCLIC
267         bool "mdc, mwc"
268         help
269           mdc - memory display cyclic
270           mwc - memory write cyclic
271
272 config CMD_MEMINFO
273         bool "meminfo"
274         help
275           Display memory information.
276
277 endmenu
278
279 menu "Device access commands"
280
281 config CMD_DM
282         bool "dm - Access to driver model information"
283         depends on DM
284         default y
285         help
286           Provides access to driver model data structures and information,
287           such as a list of devices, list of uclasses and the state of each
288           device (e.g. activated). This is not required for operation, but
289           can be useful to see the state of driver model for debugging or
290           interest.
291
292 config CMD_DEMO
293         bool "demo - Demonstration commands for driver model"
294         depends on DM
295         help
296           Provides a 'demo' command which can be used to play around with
297           driver model. To use this properly you will need to enable one or
298           both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
299           Otherwise you will always get an empty list of devices. The demo
300           devices are defined in the sandbox device tree, so the easiest
301           option is to use sandbox and pass the -d point to sandbox's
302           u-boot.dtb file.
303
304 config CMD_LOADB
305         bool "loadb"
306         default y
307         help
308           Load a binary file over serial line.
309
310 config CMD_LOADS
311         bool "loads"
312         default y
313         help
314           Load an S-Record file over serial line
315
316 config CMD_FLASH
317         bool "flinfo, erase, protect"
318         default y if !SYS_NO_FLASH
319         help
320           NOR flash support.
321             flinfo - print FLASH memory information
322             erase - FLASH memory
323             protect - enable or disable FLASH write protection
324
325 config CMD_ARMFLASH
326         depends on FLASH_CFI_DRIVER
327         bool "armflash"
328         help
329           ARM Ltd reference designs flash partition access
330
331 config MTD_DEVICE
332         bool "MTD device support"
333
334 config CMD_MTDPARTS
335         bool "MTD partitioning support"
336         default y
337         depends on MTD_DEVICE && (CMD_FLASH || CMD_NAND)
338
339 config CMD_NAND
340         bool "nand"
341         help
342           NAND support.
343
344 config CMD_NAND_TRIMFFS
345         bool "Enable nand write.trimffs command"
346         help
347           Enable command to leave page sized runs of 0xff patterns in
348           erased state rather than overwriting them. This is required
349           for using NAND flash filesystems on NAND controllers with
350           a non-0xff ECC code for all 0xff data.
351
352 config CMD_ROMUPDATE
353         bool
354         depends on NAND
355
356 config CMD_MMC
357         bool "mmc/sd"
358         select PARTITIONS
359         help
360           MMC/SD support.
361
362 config CMD_SPI
363         bool "sspi"
364         help
365           SPI utility command.
366
367 config CMD_I2C
368         bool "i2c"
369         help
370           I2C support.
371
372 config CMD_USB
373         bool "usb"
374         help
375           USB support.
376
377 config CMD_FPGA
378         bool "fpga"
379         default y
380         help
381           FPGA support.
382
383 endmenu
384
385
386 menu "Shell scripting commands"
387
388 config CMD_ECHO
389         bool "echo"
390         default y
391         help
392           Echo args to console
393
394 config CMD_ITEST
395         bool "itest"
396         default y
397         help
398           Return true/false on integer compare.
399
400 config CMD_SOURCE
401         bool "source"
402         default y
403         help
404           Run script from memory
405
406 config CMD_SETEXPR
407         bool "setexpr"
408         default y
409         help
410           Evaluate boolean and math expressions and store the result in an env
411             variable.
412           Also supports loading the value at a memory location into a variable.
413           If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
414
415 endmenu
416
417 menu "Network commands"
418
419 config CMD_NET
420         bool "bootp, tftpboot"
421         default y
422         select NET
423         default y
424         help
425           Network commands.
426           bootp - boot image via network using BOOTP/TFTP protocol
427           tftpboot - boot image via network using TFTP protocol
428
429 config CMD_TFTPPUT
430         bool "tftp put"
431         help
432           TFTP put command, for uploading files to a server
433
434 config CMD_TFTPSRV
435         bool "tftpsrv"
436         help
437           Act as a TFTP server and boot the first received file
438
439 config CMD_RARP
440         bool "rarpboot"
441         help
442           Boot image via network using RARP/TFTP protocol
443
444 config CMD_DHCP
445         bool "dhcp"
446         help
447           Boot image via network using DHCP/TFTP protocol
448
449 if CMD_DHCP
450
451 menu "DHCP options"
452
453 config BOOTP_BOOTFILESIZE
454         bool "obtain bootfile size from DHCP"
455
456 config BOOTP_BOOTPATH
457         bool "obtain bootfile path from DHCP"
458
459 config BOOTP_DNS
460         bool "obtain DNS server IP address from DHCP"
461
462 config BOOTP_DNS2
463         bool "store secondary DNS IP address in dnsip2"
464
465 config BOOTP_GATEWAY
466         bool "obtain gateway IP address from DHCP"
467
468 config BOOTP_ID_CACHE_SIZE
469         int "DHCP transaction ID cache size"
470         default 4
471         help
472           BOOTP packets are uniquely identified using a 32-bit ID. The
473           server will copy the ID from client requests to responses and
474           U-Boot will use this to determine if it is the destination of
475           an incoming response. Some servers will check that addresses
476           aren't in use before handing them out (usually using an ARP
477           ping) and therefore take up to a few hundred milliseconds to
478           respond. Network congestion may also influence the time it
479           takes for a response to make it back to the client. If that
480           time is too long, U-Boot will retransmit requests. In order
481           to allow earlier responses to still be accepted after these
482           retransmissions, U-Boot's BOOTP client keeps a small cache of
483           IDs. The CONFIG_BOOTP_ID_CACHE_SIZE controls the size of this
484           cache. The default is to keep IDs for up to four outstanding
485           requests. Increasing this will allow U-Boot to accept offers
486           from a BOOTP client in networks with unusually high latency.
487
488 config BOOTP_MAY_FAIL
489         bool "Do not start over, if DHCP server is not available"
490         help
491           If the DHCP server is not found after the configured retry
492           count, the call will fail instead of starting over.  This
493           can be used to fail over to Link-local IP address
494           configuration if the DHCP server is not available.
495
496 config BOOTP_NISDOMAIN
497         bool "obtain NIS domain from DHCP"
498
499 config BOOTP_NTPSERVER
500         bool "obtain NTP server IP address from DHCP"
501
502 config BOOTP_RANDOM_DELAY
503         bool "Use a (pseudo) random delay between DHCP retries"
504         select LIB_RAND
505
506 config BOOTP_RANDOM_ID
507         bool "Generate a (pseudo) random transaction ID"
508         select LIB_RAND
509
510 config BOOTP_SEND_HOSTNAME
511         bool "send hostname in DHCP request"
512
513 config BOOTP_SUBNETMASK
514         bool "obtain subnet mask from DHCP"
515
516 config BOOTP_TIMEOFFSET
517         bool "obtain  from DHCP"
518
519 config BOOTP_VENDOREX
520         bool "obtain  from DHCP"
521
522 endmenu
523
524 endif
525
526 config CMD_NFS
527         bool "nfs"
528         default y
529         help
530           Boot image via network using NFS protocol.
531
532 config CMD_PING
533         bool "ping"
534         help
535           Send ICMP ECHO_REQUEST to network host
536
537 config CMD_CDP
538         bool "cdp"
539         help
540           Perform CDP network configuration
541
542 config CMD_SNTP
543         bool "sntp"
544         help
545           Synchronize RTC via network
546
547 config CMD_DNS
548         bool "dns"
549         help
550           Lookup the IP of a hostname
551
552 config CMD_LINK_LOCAL
553         bool "linklocal"
554         help
555           Acquire a network IP address using the link-local protocol
556
557 config CMD_MII
558         bool "MII register access"
559         help
560           Support reading/writing ETH PHY registers via MII bus
561
562 endmenu
563
564 menu "Misc commands"
565
566 config CMD_CACHE
567         bool "cache control"
568         help
569           Enable commands to switch data cache on/off.
570
571 config CMD_TIME
572         bool "time"
573         help
574           Run commands and summarize execution time.
575
576 config CMD_FUSE
577         bool "fuse read/write"
578         help
579           eFuse reading and programming support
580
581 # TODO: rename to CMD_SLEEP
582 config CMD_MISC
583         bool "sleep"
584         default y
585         help
586           Delay execution for some time
587
588 config CMD_TIMER
589         bool "timer"
590         help
591           Access the system timer.
592
593 config CMD_SETGETDCR
594         bool "getdcr, setdcr, getidcr, setidcr"
595         depends on 4xx
596         default y
597         help
598           getdcr - Get an AMCC PPC 4xx DCR's value
599           setdcr - Set an AMCC PPC 4xx DCR's value
600           getidcr - Get a register value via indirect DCR addressing
601           setidcr - Set a register value via indirect DCR addressing
602
603 config CMD_SOUND
604         bool "sound"
605         depends on SOUND
606         help
607           This provides basic access to the U-Boot's sound support. The main
608           feature is to play a beep.
609
610              sound init   - set up sound system
611              sound play   - play a sound
612
613 endmenu
614
615 menu "Boot timing"
616
617 config BOOTSTAGE
618         bool "Boot timing and reporting"
619         help
620           Enable recording of boot time while booting. To use it, insert
621           calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
622           bootstage.h. Only a single entry is recorded for each ID. You can
623           give the entry a name with bootstage_mark_name(). You can also
624           record elapsed time in a particular stage using bootstage_start()
625           before starting and bootstage_accum() when finished. Bootstage will
626           add up all the accumated time and report it.
627
628           Normally, IDs are defined in bootstage.h but a small number of
629           additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
630           as the ID.
631
632           Calls to show_boot_progress() wil also result in log entries but
633           these will not have names.
634
635 config BOOTSTAGE_REPORT
636         bool "Display a detailed boot timing report before booting the OS"
637         depends on BOOTSTAGE
638         help
639           Enable output of a boot time report just before the OS is booted.
640           This shows how long it took U-Boot to go through each stage of the
641           boot process. The report looks something like this:
642
643                 Timer summary in microseconds:
644                        Mark    Elapsed  Stage
645                           0          0  reset
646                   3,575,678  3,575,678  board_init_f start
647                   3,575,695         17  arch_cpu_init A9
648                   3,575,777         82  arch_cpu_init done
649                   3,659,598     83,821  board_init_r start
650                   3,910,375    250,777  main_loop
651                  29,916,167 26,005,792  bootm_start
652                  30,361,327    445,160  start_kernel
653
654 config BOOTSTAGE_USER_COUNT
655         hex "Number of boot ID numbers available for user use"
656         default 20
657         help
658           This is the number of available user bootstage records.
659           Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
660           a new ID will be allocated from this stash. If you exceed
661           the limit, recording will stop.
662
663 config CMD_BOOTSTAGE
664         bool "Enable the 'bootstage' command"
665         depends on BOOTSTAGE
666         help
667           Add a 'bootstage' command which supports printing a report
668           and un/stashing of bootstage data.
669
670 config BOOTSTAGE_FDT
671         bool "Store boot timing information in the OS device tree"
672         depends on BOOTSTAGE
673         help
674           Stash the bootstage information in the FDT. A root 'bootstage'
675           node is created with each bootstage id as a child. Each child
676           has a 'name' property and either 'mark' containing the
677           mark time in microsecond, or 'accum' containing the
678           accumulated time for that bootstage id in microseconds.
679           For example:
680
681                 bootstage {
682                         154 {
683                                 name = "board_init_f";
684                                 mark = <3575678>;
685                         };
686                         170 {
687                                 name = "lcd";
688                                 accum = <33482>;
689                         };
690                 };
691
692           Code in the Linux kernel can find this in /proc/devicetree.
693
694 config BOOTSTAGE_STASH
695         bool "Stash the boot timing information in memory before booting OS"
696         depends on BOOTSTAGE
697         help
698           Some OSes do not support device tree. Bootstage can instead write
699           the boot timing information in a binary format at a given address.
700           This happens through a call to bootstage_stash(), typically in
701           the CPU's cleanup_before_linux() function. You can use the
702           'bootstage stash' and 'bootstage unstash' commands to do this on
703           the command line.
704
705 config BOOTSTAGE_STASH_ADDR
706         hex "Address to stash boot timing information"
707         default 0
708         help
709           Provide an address which will not be overwritten by the OS when it
710           starts, so that it can read this information when ready.
711
712 config BOOTSTAGE_STASH_SIZE
713         hex "Size of boot timing stash region"
714         default 4096
715         help
716           This should be large enough to hold the bootstage stash. A value of
717           4096 (4KiB) is normally plenty.
718
719 endmenu
720
721 menu "Power commands"
722 config CMD_PMIC
723         bool "Enable Driver Model PMIC command"
724         depends on DM_PMIC
725         help
726           This is the pmic command, based on a driver model pmic's API.
727           Command features are unchanged:
728           - list               - list pmic devices
729           - pmic dev <id>      - show or [set] operating pmic device (NEW)
730           - pmic dump          - dump registers
731           - pmic read address  - read byte of register at address
732           - pmic write address - write byte to register at address
733           The only one change for this command is 'dev' subcommand.
734
735 config CMD_REGULATOR
736         bool "Enable Driver Model REGULATOR command"
737         depends on DM_REGULATOR
738         help
739           This command is based on driver model regulator's API.
740           User interface features:
741           - list               - list regulator devices
742           - regulator dev <id> - show or [set] operating regulator device
743           - regulator info     - print constraints info
744           - regulator status   - print operating status
745           - regulator value <val] <-f> - print/[set] voltage value [uV]
746           - regulator current <val>    - print/[set] current value [uA]
747           - regulator mode <id>        - print/[set] operating mode id
748           - regulator enable           - enable the regulator output
749           - regulator disable          - disable the regulator output
750
751           The '-f' (force) option can be used for set the value which exceeds
752           the limits, which are found in device-tree and are kept in regulator's
753           uclass platdata structure.
754
755 endmenu
756
757 endmenu
758
759 menu "Environment configuration settings"
760
761 choice
762         prompt "Select environment non-volatile storage"
763
764 config ENV_IS_NOWHERE
765         bool "do not store environment"
766
767 config ENV_IS_IN_NAND
768         bool "store environment in NAND"
769         depends on NAND
770
771 config ENV_IS_IN_MMC
772         bool "store environment in MMC"
773         depends on MMC
774
775 config ENV_IS_IN_SPI_FLASH
776         bool "store environment in SPI flash"
777
778 endchoice
779
780 endmenu
781
782 menu "Display configuration"
783
784 config LCD
785         bool "LCD support"
786
787 config DISPLAY_BOARDINFO
788         bool "Display board info"
789
790 endmenu