sparc: Kconfig: Move the CMD_AMBAPP command to Kconfig
[platform/kernel/u-boot.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 config SYS_PROMPT
21         string "Shell prompt"
22         default "=> "
23         help
24           This string is displayed in the command line to the left of the
25           cursor.
26
27 menu "Autoboot options"
28
29 config AUTOBOOT_KEYED
30         bool "Stop autobooting via specific input key / string"
31         default n
32         help
33           This option enables stopping (aborting) of the automatic
34           boot feature only by issuing a specific input key or
35           string. If not enabled, any input key will abort the
36           U-Boot automatic booting process and bring the device
37           to the U-Boot prompt for user input.
38
39 config AUTOBOOT_PROMPT
40         string "Autoboot stop prompt"
41         depends on AUTOBOOT_KEYED
42         default "Autoboot in %d seconds\\n"
43         help
44           This string is displayed before the boot delay selected by
45           CONFIG_BOOTDELAY starts. If it is not defined there is no
46           output indicating that autoboot is in progress.
47
48           Note that this define is used as the (only) argument to a
49           printf() call, so it may contain '%' format specifications,
50           provided that it also includes, sepearated by commas exactly
51           like in a printf statement, the required arguments. It is
52           the responsibility of the user to select only such arguments
53           that are valid in the given context.
54
55 config AUTOBOOT_ENCRYPTION
56         bool "Enable encryption in autoboot stopping"
57         depends on AUTOBOOT_KEYED
58         default n
59
60 config AUTOBOOT_DELAY_STR
61         string "Delay autobooting via specific input key / string"
62         depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
63         help
64           This option delays the automatic boot feature by issuing
65           a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
66           or the environment variable "bootdelaykey" is specified
67           and this string is received from console input before
68           autoboot starts booting, U-Boot gives a command prompt. The
69           U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
70           used, otherwise it never times out.
71
72 config AUTOBOOT_STOP_STR
73         string "Stop autobooting via specific input key / string"
74         depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
75         help
76           This option enables stopping (aborting) of the automatic
77           boot feature only by issuing a specific input key or
78           string. If CONFIG_AUTOBOOT_STOP_STR or the environment
79           variable "bootstopkey" is specified and this string is
80           received from console input before autoboot starts booting,
81           U-Boot gives a command prompt. The U-Boot prompt never
82           times out, even if CONFIG_BOOT_RETRY_TIME is used.
83
84 config AUTOBOOT_KEYED_CTRLC
85         bool "Enable Ctrl-C autoboot interruption"
86         depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
87         default n
88         help
89           This option allows for the boot sequence to be interrupted
90           by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
91           Setting this variable provides an escape sequence from the
92           limited "password" strings.
93
94 config AUTOBOOT_STOP_STR_SHA256
95         string "Stop autobooting via SHA256 encrypted password"
96         depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
97         help
98           This option adds the feature to only stop the autobooting,
99           and therefore boot into the U-Boot prompt, when the input
100           string / password matches a values that is encypted via
101           a SHA256 hash and saved in the environment.
102
103 endmenu
104
105 comment "Commands"
106
107 menu "Info commands"
108
109 config CMD_BDI
110         bool "bdinfo"
111         default y
112         help
113           Print board info
114
115 config CMD_CONSOLE
116         bool "coninfo"
117         default y
118         help
119           Print console devices and information.
120
121 config CMD_CPU
122         bool "cpu"
123         help
124           Print information about available CPUs. This normally shows the
125           number of CPUs, type (e.g. manufacturer, architecture, product or
126           internal name) and clock frequency. Other information may be
127           available depending on the CPU driver.
128
129 config CMD_LICENSE
130         bool "license"
131         help
132           Print GPL license text
133
134 endmenu
135
136 menu "Boot commands"
137
138 config CMD_BOOTD
139         bool "bootd"
140         default y
141         help
142           Run the command stored in the environment "bootcmd", i.e.
143           "bootd" does the same thing as "run bootcmd".
144
145 config CMD_BOOTM
146         bool "bootm"
147         default y
148         help
149           Boot an application image from the memory.
150
151 config CMD_ELF
152         bool "bootelf, bootvx"
153         default y
154         help
155           Boot an ELF/vxWorks image from the memory.
156
157 config CMD_GO
158         bool "go"
159         default y
160         help
161           Start an application at a given address.
162
163 config CMD_RUN
164         bool "run"
165         default y
166         help
167           Run the command in the given environment variable.
168
169 config CMD_IMI
170         bool "iminfo"
171         default y
172         help
173           Print header information for application image.
174
175 config CMD_IMLS
176         bool "imls"
177         default y
178         help
179           List all images found in flash
180
181 config CMD_XIMG
182         bool "imxtract"
183         default y
184         help
185           Extract a part of a multi-image.
186
187 endmenu
188
189 menu "Environment commands"
190
191 config CMD_EXPORTENV
192         bool "env export"
193         default y
194         help
195           Export environments.
196
197 config CMD_IMPORTENV
198         bool "env import"
199         default y
200         help
201           Import environments.
202
203 config CMD_EDITENV
204         bool "editenv"
205         default y
206         help
207           Edit environment variable.
208
209 config CMD_SAVEENV
210         bool "saveenv"
211         default y
212         help
213           Save all environment variables into the compiled-in persistent
214           storage.
215
216 config CMD_ENV_EXISTS
217         bool "env exists"
218         default y
219         help
220           Check if a variable is defined in the environment for use in
221           shell scripting.
222
223 endmenu
224
225 menu "Memory commands"
226
227 config CMD_MEMORY
228         bool "md, mm, nm, mw, cp, cmp, base, loop"
229         default y
230         help
231           Memeory commands.
232             md - memory display
233             mm - memory modify (auto-incrementing address)
234             nm - memory modify (constant address)
235             mw - memory write (fill)
236             cp - memory copy
237             cmp - memory compare
238             base - print or set address offset
239             loop - initinite loop on address range
240
241 config CMD_CRC32
242         bool "crc32"
243         default y
244         help
245           Compute CRC32.
246
247 config LOOPW
248         bool "loopw"
249         help
250           Infinite write loop on address range
251
252 config CMD_MEMTEST
253         bool "memtest"
254         help
255           Simple RAM read/write test.
256
257 config CMD_MX_CYCLIC
258         bool "mdc, mwc"
259         help
260           mdc - memory display cyclic
261           mwc - memory write cyclic
262
263 config CMD_MEMINFO
264         bool "meminfo"
265         help
266           Display memory information.
267
268 endmenu
269
270 menu "Device access commands"
271
272 config CMD_DM
273         bool "dm - Access to driver model information"
274         depends on DM
275         default y
276         help
277           Provides access to driver model data structures and information,
278           such as a list of devices, list of uclasses and the state of each
279           device (e.g. activated). This is not required for operation, but
280           can be useful to see the state of driver model for debugging or
281           interest.
282
283 config CMD_DEMO
284         bool "demo - Demonstration commands for driver model"
285         depends on DM
286         help
287           Provides a 'demo' command which can be used to play around with
288           driver model. To use this properly you will need to enable one or
289           both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
290           Otherwise you will always get an empty list of devices. The demo
291           devices are defined in the sandbox device tree, so the easiest
292           option is to use sandbox and pass the -d point to sandbox's
293           u-boot.dtb file.
294
295 config CMD_LOADB
296         bool "loadb"
297         default y
298         help
299           Load a binary file over serial line.
300
301 config CMD_LOADS
302         bool "loads"
303         default y
304         help
305           Load an S-Record file over serial line
306
307 config CMD_FLASH
308         bool "flinfo, erase, protect"
309         default y
310         help
311           NOR flash support.
312             flinfo - print FLASH memory information
313             erase - FLASH memory
314             protect - enable or disable FLASH write protection
315
316 config CMD_ARMFLASH
317         depends on FLASH_CFI_DRIVER
318         bool "armflash"
319         help
320           ARM Ltd reference designs flash partition access
321
322 config CMD_NAND
323         bool "nand"
324         help
325           NAND support.
326
327 config CMD_SF
328         bool "sf"
329         help
330           SPI Flash support
331
332 config CMD_SPI
333         bool "sspi"
334         help
335           SPI utility command.
336
337 config CMD_I2C
338         bool "i2c"
339         help
340           I2C support.
341
342 config CMD_USB
343         bool "usb"
344         help
345           USB support.
346
347 config CMD_FPGA
348         bool "fpga"
349         default y
350         help
351           FPGA support.
352
353 config CMD_REMOTEPROC
354         bool "remoteproc"
355         depends on REMOTEPROC
356         help
357           Support for Remote Processor control
358 endmenu
359
360
361 menu "Shell scripting commands"
362
363 config CMD_ECHO
364         bool "echo"
365         default y
366         help
367           Echo args to console
368
369 config CMD_ITEST
370         bool "itest"
371         default y
372         help
373           Return true/false on integer compare.
374
375 config CMD_SOURCE
376         bool "source"
377         default y
378         help
379           Run script from memory
380
381 config CMD_SETEXPR
382         bool "setexpr"
383         default y
384         help
385           Evaluate boolean and math expressions and store the result in an env
386             variable.
387           Also supports loading the value at a memory location into a variable.
388           If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
389
390 endmenu
391
392 menu "Network commands"
393
394 config CMD_NET
395         bool "bootp, tftpboot"
396         select NET
397         default y
398         help
399           Network commands.
400           bootp - boot image via network using BOOTP/TFTP protocol
401           tftpboot - boot image via network using TFTP protocol
402
403 config CMD_TFTPPUT
404         bool "tftp put"
405         help
406           TFTP put command, for uploading files to a server
407
408 config CMD_TFTPSRV
409         bool "tftpsrv"
410         help
411           Act as a TFTP server and boot the first received file
412
413 config CMD_RARP
414         bool "rarpboot"
415         help
416           Boot image via network using RARP/TFTP protocol
417
418 config CMD_DHCP
419         bool "dhcp"
420         help
421           Boot image via network using DHCP/TFTP protocol
422
423 config CMD_NFS
424         bool "nfs"
425         default y
426         help
427           Boot image via network using NFS protocol.
428
429 config CMD_PING
430         bool "ping"
431         help
432           Send ICMP ECHO_REQUEST to network host
433
434 config CMD_CDP
435         bool "cdp"
436         help
437           Perform CDP network configuration
438
439 config CMD_SNTP
440         bool "sntp"
441         help
442           Synchronize RTC via network
443
444 config CMD_DNS
445         bool "dns"
446         help
447           Lookup the IP of a hostname
448
449 config CMD_LINK_LOCAL
450         bool "linklocal"
451         help
452           Acquire a network IP address using the link-local protocol
453
454 endmenu
455
456 menu "Misc commands"
457
458 config CMD_AMBAPP
459         bool "ambapp"
460         depends on LEON3
461         default y
462         help
463           Lists AMBA Plug-n-Play information.
464
465 config SYS_AMBAPP_PRINT_ON_STARTUP
466         bool "Show AMBA PnP info on startup"
467         depends on CMD_AMBAPP
468         default n
469         help
470           Show AMBA Plug-n-Play information on startup.
471
472 config CMD_TIME
473         bool "time"
474         help
475           Run commands and summarize execution time.
476
477 # TODO: rename to CMD_SLEEP
478 config CMD_MISC
479         bool "sleep"
480         default y
481         help
482           Delay execution for some time
483
484 config CMD_TIMER
485         bool "timer"
486         help
487           Access the system timer.
488
489 config CMD_SETGETDCR
490         bool "getdcr, setdcr, getidcr, setidcr"
491         depends on 4xx
492         default y
493         help
494           getdcr - Get an AMCC PPC 4xx DCR's value
495           setdcr - Set an AMCC PPC 4xx DCR's value
496           getidcr - Get a register value via indirect DCR addressing
497           setidcr - Set a register value via indirect DCR addressing
498
499 config CMD_SOUND
500         bool "sound"
501         depends on SOUND
502         help
503           This provides basic access to the U-Boot's sound support. The main
504           feature is to play a beep.
505
506              sound init   - set up sound system
507              sound play   - play a sound
508
509 endmenu
510
511 menu "Boot timing"
512
513 config BOOTSTAGE
514         bool "Boot timing and reporting"
515         help
516           Enable recording of boot time while booting. To use it, insert
517           calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
518           bootstage.h. Only a single entry is recorded for each ID. You can
519           give the entry a name with bootstage_mark_name(). You can also
520           record elapsed time in a particular stage using bootstage_start()
521           before starting and bootstage_accum() when finished. Bootstage will
522           add up all the accumated time and report it.
523
524           Normally, IDs are defined in bootstage.h but a small number of
525           additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
526           as the ID.
527
528           Calls to show_boot_progress() wil also result in log entries but
529           these will not have names.
530
531 config BOOTSTAGE_REPORT
532         bool "Display a detailed boot timing report before booting the OS"
533         depends on BOOTSTAGE
534         help
535           Enable output of a boot time report just before the OS is booted.
536           This shows how long it took U-Boot to go through each stage of the
537           boot process. The report looks something like this:
538
539                 Timer summary in microseconds:
540                        Mark    Elapsed  Stage
541                           0          0  reset
542                   3,575,678  3,575,678  board_init_f start
543                   3,575,695         17  arch_cpu_init A9
544                   3,575,777         82  arch_cpu_init done
545                   3,659,598     83,821  board_init_r start
546                   3,910,375    250,777  main_loop
547                  29,916,167 26,005,792  bootm_start
548                  30,361,327    445,160  start_kernel
549
550 config BOOTSTAGE_USER_COUNT
551         hex "Number of boot ID numbers available for user use"
552         default 20
553         help
554           This is the number of available user bootstage records.
555           Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
556           a new ID will be allocated from this stash. If you exceed
557           the limit, recording will stop.
558
559 config CMD_BOOTSTAGE
560         bool "Enable the 'bootstage' command"
561         depends on BOOTSTAGE
562         help
563           Add a 'bootstage' command which supports printing a report
564           and un/stashing of bootstage data.
565
566 config BOOTSTAGE_FDT
567         bool "Store boot timing information in the OS device tree"
568         depends on BOOTSTAGE
569         help
570           Stash the bootstage information in the FDT. A root 'bootstage'
571           node is created with each bootstage id as a child. Each child
572           has a 'name' property and either 'mark' containing the
573           mark time in microsecond, or 'accum' containing the
574           accumulated time for that bootstage id in microseconds.
575           For example:
576
577                 bootstage {
578                         154 {
579                                 name = "board_init_f";
580                                 mark = <3575678>;
581                         };
582                         170 {
583                                 name = "lcd";
584                                 accum = <33482>;
585                         };
586                 };
587
588           Code in the Linux kernel can find this in /proc/devicetree.
589
590 config BOOTSTAGE_STASH
591         bool "Stash the boot timing information in memory before booting OS"
592         depends on BOOTSTAGE
593         help
594           Some OSes do not support device tree. Bootstage can instead write
595           the boot timing information in a binary format at a given address.
596           This happens through a call to bootstage_stash(), typically in
597           the CPU's cleanup_before_linux() function. You can use the
598           'bootstage stash' and 'bootstage unstash' commands to do this on
599           the command line.
600
601 config BOOTSTAGE_STASH_ADDR
602         hex "Address to stash boot timing information"
603         default 0
604         help
605           Provide an address which will not be overwritten by the OS when it
606           starts, so that it can read this information when ready.
607
608 config BOOTSTAGE_STASH_SIZE
609         hex "Size of boot timing stash region"
610         default 4096
611         help
612           This should be large enough to hold the bootstage stash. A value of
613           4096 (4KiB) is normally plenty.
614
615 endmenu
616
617 menu "Power commands"
618 config CMD_PMIC
619         bool "Enable Driver Model PMIC command"
620         depends on DM_PMIC
621         help
622           This is the pmic command, based on a driver model pmic's API.
623           Command features are unchanged:
624           - list               - list pmic devices
625           - pmic dev <id>      - show or [set] operating pmic device (NEW)
626           - pmic dump          - dump registers
627           - pmic read address  - read byte of register at address
628           - pmic write address - write byte to register at address
629           The only one change for this command is 'dev' subcommand.
630
631 config CMD_REGULATOR
632         bool "Enable Driver Model REGULATOR command"
633         depends on DM_REGULATOR
634         help
635           This command is based on driver model regulator's API.
636           User interface features:
637           - list               - list regulator devices
638           - regulator dev <id> - show or [set] operating regulator device
639           - regulator info     - print constraints info
640           - regulator status   - print operating status
641           - regulator value <val] <-f> - print/[set] voltage value [uV]
642           - regulator current <val>    - print/[set] current value [uA]
643           - regulator mode <id>        - print/[set] operating mode id
644           - regulator enable           - enable the regulator output
645           - regulator disable          - disable the regulator output
646
647           The '-f' (force) option can be used for set the value which exceeds
648           the limits, which are found in device-tree and are kept in regulator's
649           uclass platdata structure.
650
651 endmenu
652
653 menu "Security commands"
654 config CMD_TPM
655         bool "Enable the 'tpm' command"
656         depends on TPM
657         help
658           This provides a means to talk to a TPM from the command line. A wide
659           range of commands if provided - see 'tpm help' for details. The
660           command requires a suitable TPM on your board and the correct driver
661           must be enabled.
662
663 config CMD_TPM_TEST
664         bool "Enable the 'tpm test' command"
665         depends on CMD_TPM
666         help
667           This provides a a series of tests to confirm that the TPM is working
668           correctly. The tests cover initialisation, non-volatile RAM, extend,
669           global lock and checking that timing is within expectations. The
670           tests pass correctly on Infineon TPMs but may need to be adjusted
671           for other devices.
672
673 endmenu
674
675 endmenu