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