]> git.ipfire.org Git - people/ms/u-boot.git/blob - common/Kconfig
Merge branch 'u-boot/master' into 'u-boot-arm/master'
[people/ms/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 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_GO
145 bool "go"
146 default y
147 help
148 Start an application at a given address.
149
150 config CMD_RUN
151 bool "run"
152 default y
153 help
154 Run the command in the given environment variable.
155
156 config CMD_IMI
157 bool "iminfo"
158 default y
159 help
160 Print header information for application image.
161
162 config CMD_IMLS
163 bool "imls"
164 default y
165 help
166 List all images found in flash
167
168 config CMD_XIMG
169 bool "imxtract"
170 default y
171 help
172 Extract a part of a multi-image.
173
174 endmenu
175
176 menu "Environment commands"
177
178 config CMD_EXPORTENV
179 bool "env export"
180 default y
181 help
182 Export environments.
183
184 config CMD_IMPORTENV
185 bool "env import"
186 default y
187 help
188 Import environments.
189
190 config CMD_EDITENV
191 bool "editenv"
192 default y
193 help
194 Edit environment variable.
195
196 config CMD_SAVEENV
197 bool "saveenv"
198 default y
199 help
200 Save all environment variables into the compiled-in persistent
201 storage.
202
203 config CMD_ENV_EXISTS
204 bool "env exists"
205 default y
206 help
207 Check if a variable is defined in the environment for use in
208 shell scripting.
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
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 CMD_NAND
310 bool "nand"
311 help
312 NAND support.
313
314 config CMD_SPI
315 bool "sspi"
316 help
317 SPI utility command.
318
319 config CMD_I2C
320 bool "i2c"
321 help
322 I2C support.
323
324 config CMD_USB
325 bool "usb"
326 help
327 USB support.
328
329 config CMD_FPGA
330 bool "fpga"
331 default y
332 help
333 FPGA support.
334
335 endmenu
336
337
338 menu "Shell scripting commands"
339
340 config CMD_ECHO
341 bool "echo"
342 default y
343 help
344 Echo args to console
345
346 config CMD_ITEST
347 bool "itest"
348 default y
349 help
350 Return true/false on integer compare.
351
352 config CMD_SOURCE
353 bool "source"
354 default y
355 help
356 Run script from memory
357
358 config CMD_SETEXPR
359 bool "setexpr"
360 default y
361 help
362 Evaluate boolean and math expressions and store the result in an env
363 variable.
364 Also supports loading the value at a memory location into a variable.
365 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
366
367 endmenu
368
369 menu "Network commands"
370
371 config CMD_NET
372 bool "bootp, tftpboot"
373 select NET
374 default y
375 help
376 Network commands.
377 bootp - boot image via network using BOOTP/TFTP protocol
378 tftpboot - boot image via network using TFTP protocol
379
380 config CMD_TFTPPUT
381 bool "tftp put"
382 help
383 TFTP put command, for uploading files to a server
384
385 config CMD_TFTPSRV
386 bool "tftpsrv"
387 help
388 Act as a TFTP server and boot the first received file
389
390 config CMD_RARP
391 bool "rarpboot"
392 help
393 Boot image via network using RARP/TFTP protocol
394
395 config CMD_DHCP
396 bool "dhcp"
397 help
398 Boot image via network using DHCP/TFTP protocol
399
400 config CMD_NFS
401 bool "nfs"
402 default y
403 help
404 Boot image via network using NFS protocol.
405
406 config CMD_PING
407 bool "ping"
408 help
409 Send ICMP ECHO_REQUEST to network host
410
411 config CMD_CDP
412 bool "cdp"
413 help
414 Perform CDP network configuration
415
416 config CMD_SNTP
417 bool "sntp"
418 help
419 Synchronize RTC via network
420
421 config CMD_DNS
422 bool "dns"
423 help
424 Lookup the IP of a hostname
425
426 config CMD_LINK_LOCAL
427 bool "linklocal"
428 help
429 Acquire a network IP address using the link-local protocol
430
431 endmenu
432
433 menu "Misc commands"
434
435 config CMD_TIME
436 bool "time"
437 help
438 Run commands and summarize execution time.
439
440 # TODO: rename to CMD_SLEEP
441 config CMD_MISC
442 bool "sleep"
443 default y
444 help
445 Delay execution for some time
446
447 config CMD_TIMER
448 bool "timer"
449 help
450 Access the system timer.
451
452 config CMD_SETGETDCR
453 bool "getdcr, setdcr, getidcr, setidcr"
454 depends on 4xx
455 default y
456 help
457 getdcr - Get an AMCC PPC 4xx DCR's value
458 setdcr - Set an AMCC PPC 4xx DCR's value
459 getidcr - Get a register value via indirect DCR addressing
460 setidcr - Set a register value via indirect DCR addressing
461
462 config CMD_SOUND
463 bool "sound"
464 depends on SOUND
465 help
466 This provides basic access to the U-Boot's sound support. The main
467 feature is to play a beep.
468
469 sound init - set up sound system
470 sound play - play a sound
471
472 endmenu
473
474 menu "Boot timing"
475
476 config BOOTSTAGE
477 bool "Boot timing and reporting"
478 help
479 Enable recording of boot time while booting. To use it, insert
480 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
481 bootstage.h. Only a single entry is recorded for each ID. You can
482 give the entry a name with bootstage_mark_name(). You can also
483 record elapsed time in a particular stage using bootstage_start()
484 before starting and bootstage_accum() when finished. Bootstage will
485 add up all the accumated time and report it.
486
487 Normally, IDs are defined in bootstage.h but a small number of
488 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
489 as the ID.
490
491 Calls to show_boot_progress() wil also result in log entries but
492 these will not have names.
493
494 config BOOTSTAGE_REPORT
495 bool "Display a detailed boot timing report before booting the OS"
496 depends on BOOTSTAGE
497 help
498 Enable output of a boot time report just before the OS is booted.
499 This shows how long it took U-Boot to go through each stage of the
500 boot process. The report looks something like this:
501
502 Timer summary in microseconds:
503 Mark Elapsed Stage
504 0 0 reset
505 3,575,678 3,575,678 board_init_f start
506 3,575,695 17 arch_cpu_init A9
507 3,575,777 82 arch_cpu_init done
508 3,659,598 83,821 board_init_r start
509 3,910,375 250,777 main_loop
510 29,916,167 26,005,792 bootm_start
511 30,361,327 445,160 start_kernel
512
513 config BOOTSTAGE_USER_COUNT
514 hex "Number of boot ID numbers available for user use"
515 default 20
516 help
517 This is the number of available user bootstage records.
518 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
519 a new ID will be allocated from this stash. If you exceed
520 the limit, recording will stop.
521
522 config CMD_BOOTSTAGE
523 bool "Enable the 'bootstage' command"
524 depends on BOOTSTAGE
525 help
526 Add a 'bootstage' command which supports printing a report
527 and un/stashing of bootstage data.
528
529 config BOOTSTAGE_FDT
530 bool "Store boot timing information in the OS device tree"
531 depends on BOOTSTAGE
532 help
533 Stash the bootstage information in the FDT. A root 'bootstage'
534 node is created with each bootstage id as a child. Each child
535 has a 'name' property and either 'mark' containing the
536 mark time in microsecond, or 'accum' containing the
537 accumulated time for that bootstage id in microseconds.
538 For example:
539
540 bootstage {
541 154 {
542 name = "board_init_f";
543 mark = <3575678>;
544 };
545 170 {
546 name = "lcd";
547 accum = <33482>;
548 };
549 };
550
551 Code in the Linux kernel can find this in /proc/devicetree.
552
553 config BOOTSTAGE_STASH
554 bool "Stash the boot timing information in memory before booting OS"
555 depends on BOOTSTAGE
556 help
557 Some OSes do not support device tree. Bootstage can instead write
558 the boot timing information in a binary format at a given address.
559 This happens through a call to bootstage_stash(), typically in
560 the CPU's cleanup_before_linux() function. You can use the
561 'bootstage stash' and 'bootstage unstash' commands to do this on
562 the command line.
563
564 config BOOTSTAGE_STASH_ADDR
565 hex "Address to stash boot timing information"
566 default 0
567 help
568 Provide an address which will not be overwritten by the OS when it
569 starts, so that it can read this information when ready.
570
571 config BOOTSTAGE_STASH_SIZE
572 hex "Size of boot timing stash region"
573 default 4096
574 help
575 This should be large enough to hold the bootstage stash. A value of
576 4096 (4KiB) is normally plenty.
577
578 endmenu
579
580 menu "Power commands"
581 config CMD_PMIC
582 bool "Enable Driver Model PMIC command"
583 depends on DM_PMIC
584 help
585 This is the pmic command, based on a driver model pmic's API.
586 Command features are unchanged:
587 - list - list pmic devices
588 - pmic dev <id> - show or [set] operating pmic device (NEW)
589 - pmic dump - dump registers
590 - pmic read address - read byte of register at address
591 - pmic write address - write byte to register at address
592 The only one change for this command is 'dev' subcommand.
593
594 config CMD_REGULATOR
595 bool "Enable Driver Model REGULATOR command"
596 depends on DM_REGULATOR
597 help
598 This command is based on driver model regulator's API.
599 User interface features:
600 - list - list regulator devices
601 - regulator dev <id> - show or [set] operating regulator device
602 - regulator info - print constraints info
603 - regulator status - print operating status
604 - regulator value <val] <-f> - print/[set] voltage value [uV]
605 - regulator current <val> - print/[set] current value [uA]
606 - regulator mode <id> - print/[set] operating mode id
607 - regulator enable - enable the regulator output
608 - regulator disable - disable the regulator output
609
610 The '-f' (force) option can be used for set the value which exceeds
611 the limits, which are found in device-tree and are kept in regulator's
612 uclass platdata structure.
613
614 endmenu
615
616 endmenu