Merge branch 'master' of git://git.denx.de/u-boot-mips
[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 comment "Commands"
21
22 menu "Info commands"
23
24 config CMD_BDI
25         bool "bdinfo"
26         help
27           Print board info
28
29 config CMD_CONSOLE
30         bool "coninfo"
31         help
32           Print console devices and information.
33
34 config CMD_LICENSE
35         bool "license"
36         help
37           Print GPL license text
38
39 endmenu
40
41 menu "Boot commands"
42
43 config CMD_BOOTD
44         bool "bootd"
45         help
46           Run the command stored in the environment "bootcmd", i.e.
47           "bootd" does the same thing as "run bootcmd".
48
49 config CMD_BOOTM
50         bool "bootm"
51         default y
52         help
53           Boot an application image from the memory.
54
55 config CMD_GO
56         bool "go"
57         default y
58         help
59           Start an application at a given address.
60
61 config CMD_RUN
62         bool "run"
63         help
64           Run the command in the given environment variable.
65
66 config CMD_IMI
67         bool "iminfo"
68         help
69           Print header information for application image.
70
71 config CMD_IMLS
72         bool "imls"
73         help
74           List all images found in flash
75
76 config CMD_XIMG
77         bool "imxtract"
78         help
79           Extract a part of a multi-image.
80
81 endmenu
82
83 menu "Environment commands"
84
85 config CMD_EXPORTENV
86         bool "env export"
87         default y
88         help
89           Export environments.
90
91 config CMD_IMPORTENV
92         bool "env import"
93         default y
94         help
95           Import environments.
96
97 config CMD_EDITENV
98         bool "editenv"
99         help
100           Edit environment variable.
101
102 config CMD_SAVEENV
103         bool "saveenv"
104         help
105           Run the command in the given environment variable.
106
107 endmenu
108
109 menu "Memory commands"
110
111 config CMD_MEMORY
112         bool "md, mm, nm, mw, cp, cmp, base, loop"
113         help
114           Memeory commands.
115             md - memory display
116             mm - memory modify (auto-incrementing address)
117             nm - memory modify (constant address)
118             mw - memory write (fill)
119             cp - memory copy
120             cmp - memory compare
121             base - print or set address offset
122             loop - initinite loop on address range
123
124 config CMD_CRC32
125         bool "crc32"
126         default y
127         help
128           Compute CRC32.
129
130 config LOOPW
131         bool "loopw"
132         help
133           Infinite write loop on address range
134
135 config CMD_MEMTEST
136         bool "memtest"
137         help
138           Simple RAM read/write test.
139
140 config CMD_MX_CYCLIC
141         bool "mdc, mwc"
142         help
143           mdc - memory display cyclic
144           mwc - memory write cyclic
145
146 config CMD_MEMINFO
147         bool "meminfo"
148         help
149           Display memory information.
150
151 endmenu
152
153 menu "Device access commands"
154
155 config CMD_DM
156         bool "dm - Access to driver model information"
157         depends on DM
158         default y
159         help
160           Provides access to driver model data structures and information,
161           such as a list of devices, list of uclasses and the state of each
162           device (e.g. activated). This is not required for operation, but
163           can be useful to see the state of driver model for debugging or
164           interest.
165
166 config CMD_DEMO
167         bool "demo - Demonstration commands for driver model"
168         depends on DM
169         help
170           Provides a 'demo' command which can be used to play around with
171           driver model. To use this properly you will need to enable one or
172           both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
173           Otherwise you will always get an empty list of devices. The demo
174           devices are defined in the sandbox device tree, so the easiest
175           option is to use sandbox and pass the -d point to sandbox's
176           u-boot.dtb file.
177
178 config CMD_LOADB
179         bool "loadb"
180         help
181           Load a binary file over serial line.
182
183 config CMD_LOADS
184         bool "loads"
185         help
186           Load an S-Record file over serial line
187
188 config CMD_FLASH
189         bool "flinfo, erase, protect"
190         help
191           NOR flash support.
192             flinfo - print FLASH memory information
193             erase - FLASH memory
194             protect - enable or disable FLASH write protection
195
196 config CMD_ARMFLASH
197         depends on FLASH_CFI_DRIVER
198         bool "armflash"
199         help
200           ARM Ltd reference designs flash partition access
201
202 config CMD_NAND
203         bool "nand"
204         help
205           NAND support.
206
207 config CMD_SPI
208         bool "sspi"
209         help
210           SPI utility command.
211
212 config CMD_I2C
213         bool "i2c"
214         help
215           I2C support.
216
217 config CMD_USB
218         bool "usb"
219         help
220           USB support.
221
222 config CMD_FPGA
223         bool "fpga"
224         help
225           FPGA support.
226
227 endmenu
228
229
230 menu "Shell scripting commands"
231
232 config CMD_ECHO
233         bool "echo"
234         help
235           Echo args to console
236
237 config CMD_ITEST
238         bool "itest"
239         help
240           Return true/false on integer compare.
241
242 config CMD_SOURCE
243         bool "source"
244         help
245           Run script from memory
246
247 endmenu
248
249 menu "Network commands"
250
251 config CMD_NET
252         bool "bootp, tftpboot"
253         help
254           Network commands.
255           bootp - boot image via network using BOOTP/TFTP protocol
256           tftpboot - boot image via network using TFTP protocol
257
258 config CMD_TFTPPUT
259         bool "tftp put"
260         help
261           TFTP put command, for uploading files to a server
262
263 config CMD_TFTPSRV
264         bool "tftpsrv"
265         help
266           Act as a TFTP server and boot the first received file
267
268 config CMD_RARP
269         bool "rarpboot"
270         help
271           Boot image via network using RARP/TFTP protocol
272
273 config CMD_DHCP
274         bool "dhcp"
275         help
276           Boot image via network using DHCP/TFTP protocol
277
278 config CMD_NFS
279         bool "nfs"
280         help
281           Boot image via network using NFS protocol.
282
283 config CMD_PING
284         bool "ping"
285         help
286           Send ICMP ECHO_REQUEST to network host
287
288 config CMD_CDP
289         bool "cdp"
290         help
291           Perform CDP network configuration
292
293 config CMD_SNTP
294         bool "sntp"
295         help
296           Synchronize RTC via network
297
298 config CMD_DNS
299         bool "dns"
300         help
301           Lookup the IP of a hostname
302
303 config CMD_LINK_LOCAL
304         bool "linklocal"
305         help
306           Acquire a network IP address using the link-local protocol
307
308 endmenu
309
310 menu "Misc commands"
311
312 config CMD_TIME
313         bool "time"
314         help
315           Run commands and summarize execution time.
316
317 # TODO: rename to CMD_SLEEP
318 config CMD_MISC
319         bool "sleep"
320         help
321           Delay execution for some time
322
323 config CMD_TIMER
324         bool "timer"
325         help
326           Access the system timer.
327
328 config CMD_SETGETDCR
329         bool "getdcr, setdcr, getidcr, setidcr"
330         depends on 4xx
331         help
332           getdcr - Get an AMCC PPC 4xx DCR's value
333           setdcr - Set an AMCC PPC 4xx DCR's value
334           getidcr - Get a register value via indirect DCR addressing
335           setidcr - Set a register value via indirect DCR addressing
336
337 config CMD_SOUND
338         bool "sound"
339         depends on SOUND
340         help
341           This provides basic access to the U-Boot's sound support. The main
342           feature is to play a beep.
343
344              sound init   - set up sound system
345              sound play   - play a sound
346
347 endmenu
348
349 menu "Boot timing"
350
351 config BOOTSTAGE
352         bool "Boot timing and reporting"
353         help
354           Enable recording of boot time while booting. To use it, insert
355           calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
356           bootstage.h. Only a single entry is recorded for each ID. You can
357           give the entry a name with bootstage_mark_name(). You can also
358           record elapsed time in a particular stage using bootstage_start()
359           before starting and bootstage_accum() when finished. Bootstage will
360           add up all the accumated time and report it.
361
362           Normally, IDs are defined in bootstage.h but a small number of
363           additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
364           as the ID.
365
366           Calls to show_boot_progress() wil also result in log entries but
367           these will not have names.
368
369 config BOOTSTAGE_REPORT
370         bool "Display a detailed boot timing report before booting the OS"
371         depends on BOOTSTAGE
372         help
373           Enable output of a boot time report just before the OS is booted.
374           This shows how long it took U-Boot to go through each stage of the
375           boot process. The report looks something like this:
376
377                 Timer summary in microseconds:
378                        Mark    Elapsed  Stage
379                           0          0  reset
380                   3,575,678  3,575,678  board_init_f start
381                   3,575,695         17  arch_cpu_init A9
382                   3,575,777         82  arch_cpu_init done
383                   3,659,598     83,821  board_init_r start
384                   3,910,375    250,777  main_loop
385                  29,916,167 26,005,792  bootm_start
386                  30,361,327    445,160  start_kernel
387
388 config BOOTSTAGE_USER_COUNT
389         hex "Number of boot ID numbers available for user use"
390         default 20
391         help
392           This is the number of available user bootstage records.
393           Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
394           a new ID will be allocated from this stash. If you exceed
395           the limit, recording will stop.
396
397 config CMD_BOOTSTAGE
398         bool "Enable the 'bootstage' command"
399         depends on BOOTSTAGE
400         help
401           Add a 'bootstage' command which supports printing a report
402           and un/stashing of bootstage data.
403
404 config BOOTSTAGE_FDT
405         bool "Store boot timing information in the OS device tree"
406         depends on BOOTSTAGE
407         help
408           Stash the bootstage information in the FDT. A root 'bootstage'
409           node is created with each bootstage id as a child. Each child
410           has a 'name' property and either 'mark' containing the
411           mark time in microsecond, or 'accum' containing the
412           accumulated time for that bootstage id in microseconds.
413           For example:
414
415                 bootstage {
416                         154 {
417                                 name = "board_init_f";
418                                 mark = <3575678>;
419                         };
420                         170 {
421                                 name = "lcd";
422                                 accum = <33482>;
423                         };
424                 };
425
426           Code in the Linux kernel can find this in /proc/devicetree.
427
428 config BOOTSTAGE_STASH
429         bool "Stash the boot timing information in memory before booting OS"
430         depends on BOOTSTAGE
431         help
432           Some OSes do not support device tree. Bootstage can instead write
433           the boot timing information in a binary format at a given address.
434           This happens through a call to bootstage_stash(), typically in
435           the CPU's cleanup_before_linux() function. You can use the
436           'bootstage stash' and 'bootstage unstash' commands to do this on
437           the command line.
438
439 config BOOTSTAGE_STASH_ADDR
440         hex "Address to stash boot timing information"
441         default 0
442         help
443           Provide an address which will not be overwritten by the OS when it
444           starts, so that it can read this information when ready.
445
446 config BOOTSTAGE_STASH_SIZE
447         hex "Size of boot timing stash region"
448         default 4096
449         help
450           This should be large enough to hold the bootstage stash. A value of
451           4096 (4KiB) is normally plenty.
452
453 endmenu
454
455 endmenu