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