blob: cb14592e0ece7989c8bb247c30f8c8f07ea01586 [file] [log] [blame]
Masahiro Yamadaed363232014-09-16 16:32:58 +09001menu "Command line interface"
Masahiro Yamadaed363232014-09-16 16:32:58 +09002
Masahiro Yamada6c775092014-11-13 19:29:07 +09003config 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
15config SYS_HUSH_PARSER
16 bool
17 help
18 Backward compatibility.
19
Stefan Roesed126e012015-05-18 14:08:23 +020020menu "Autoboot options"
21
22config 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
32config 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
Stefan Roese8f0b1e22015-05-18 14:08:24 +020048config AUTOBOOT_ENCRYPTION
49 bool "Enable encryption in autoboot stopping"
50 depends on AUTOBOOT_KEYED
51 default n
52
Stefan Roesed126e012015-05-18 14:08:23 +020053config AUTOBOOT_DELAY_STR
54 string "Delay autobooting via specific input key / string"
Stefan Roese8f0b1e22015-05-18 14:08:24 +020055 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
Stefan Roesed126e012015-05-18 14:08:23 +020056 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
65config AUTOBOOT_STOP_STR
66 string "Stop autobooting via specific input key / string"
Stefan Roese8f0b1e22015-05-18 14:08:24 +020067 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
Stefan Roesed126e012015-05-18 14:08:23 +020068 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
77config AUTOBOOT_KEYED_CTRLC
78 bool "Enable Ctrl-C autoboot interruption"
Stefan Roese8f0b1e22015-05-18 14:08:24 +020079 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
Stefan Roesed126e012015-05-18 14:08:23 +020080 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
Stefan Roese8f0b1e22015-05-18 14:08:24 +020087config 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
Stefan Roesed126e012015-05-18 14:08:23 +020096endmenu
97
Masahiro Yamada60296a82014-11-13 19:29:08 +090098comment "Commands"
99
100menu "Info commands"
101
102config CMD_BDI
103 bool "bdinfo"
104 help
105 Print board info
106
107config CMD_CONSOLE
108 bool "coninfo"
109 help
110 Print console devices and information.
111
Simon Glass8e2fac02015-04-28 20:25:11 -0600112config CMD_CPU
113 bool "cpu"
114 help
115 Print information about available CPUs. This normally shows the
116 number of CPUs, type (e.g. manufacturer, architecture, product or
117 internal name) and clock frequency. Other information may be
118 available depending on the CPU driver.
119
Masahiro Yamada60296a82014-11-13 19:29:08 +0900120config CMD_LICENSE
121 bool "license"
122 help
123 Print GPL license text
124
125endmenu
126
127menu "Boot commands"
128
129config CMD_BOOTD
130 bool "bootd"
131 help
132 Run the command stored in the environment "bootcmd", i.e.
133 "bootd" does the same thing as "run bootcmd".
134
Masahiro Yamadadba16972014-09-16 16:33:00 +0900135config CMD_BOOTM
Masahiro Yamada60296a82014-11-13 19:29:08 +0900136 bool "bootm"
Masahiro Yamadadba16972014-09-16 16:33:00 +0900137 default y
138 help
139 Boot an application image from the memory.
140
Masahiro Yamada60296a82014-11-13 19:29:08 +0900141config CMD_GO
142 bool "go"
Masahiro Yamadaca05ee92014-09-16 16:33:01 +0900143 default y
144 help
Masahiro Yamada60296a82014-11-13 19:29:08 +0900145 Start an application at a given address.
146
147config CMD_RUN
148 bool "run"
149 help
150 Run the command in the given environment variable.
151
152config CMD_IMI
153 bool "iminfo"
154 help
155 Print header information for application image.
156
157config CMD_IMLS
158 bool "imls"
159 help
160 List all images found in flash
161
162config CMD_XIMG
163 bool "imxtract"
164 help
165 Extract a part of a multi-image.
166
167endmenu
168
169menu "Environment commands"
Masahiro Yamadaca05ee92014-09-16 16:33:01 +0900170
Masahiro Yamadacccee182014-09-16 16:33:02 +0900171config CMD_EXPORTENV
Masahiro Yamada60296a82014-11-13 19:29:08 +0900172 bool "env export"
Masahiro Yamadacccee182014-09-16 16:33:02 +0900173 default y
174 help
175 Export environments.
176
Masahiro Yamada1d5c2012014-09-16 16:33:04 +0900177config CMD_IMPORTENV
Masahiro Yamada60296a82014-11-13 19:29:08 +0900178 bool "env import"
Masahiro Yamada1d5c2012014-09-16 16:33:04 +0900179 default y
180 help
181 Import environments.
182
Masahiro Yamada60296a82014-11-13 19:29:08 +0900183config CMD_EDITENV
184 bool "editenv"
185 help
186 Edit environment variable.
187
188config CMD_SAVEENV
189 bool "saveenv"
190 help
Joe Hershbergerf38bec92015-06-22 16:15:25 -0500191 Save all environment variables into the compiled-in persistent
192 storage.
Masahiro Yamada60296a82014-11-13 19:29:08 +0900193
Joe Hershberger6aab5ae2015-06-22 16:15:26 -0500194config CMD_ENV_EXISTS
195 bool "env exists"
196 help
197 Check if a variable is defined in the environment for use in
198 shell scripting.
199
Masahiro Yamada60296a82014-11-13 19:29:08 +0900200endmenu
201
202menu "Memory commands"
203
204config CMD_MEMORY
205 bool "md, mm, nm, mw, cp, cmp, base, loop"
206 help
207 Memeory commands.
208 md - memory display
209 mm - memory modify (auto-incrementing address)
210 nm - memory modify (constant address)
211 mw - memory write (fill)
212 cp - memory copy
213 cmp - memory compare
214 base - print or set address offset
215 loop - initinite loop on address range
216
217config CMD_CRC32
218 bool "crc32"
Masahiro Yamada726ac8e2014-09-16 16:33:03 +0900219 default y
220 help
Masahiro Yamada60296a82014-11-13 19:29:08 +0900221 Compute CRC32.
222
223config LOOPW
224 bool "loopw"
225 help
226 Infinite write loop on address range
227
228config CMD_MEMTEST
Nikolaos Pasaloukos41ffb452015-03-05 13:15:20 +0000229 bool "memtest"
Masahiro Yamada60296a82014-11-13 19:29:08 +0900230 help
231 Simple RAM read/write test.
232
233config CMD_MX_CYCLIC
234 bool "mdc, mwc"
235 help
236 mdc - memory display cyclic
237 mwc - memory write cyclic
238
239config CMD_MEMINFO
240 bool "meminfo"
241 help
242 Display memory information.
243
244endmenu
245
246menu "Device access commands"
247
Simon Glassf058f152015-02-05 21:41:38 -0700248config CMD_DM
249 bool "dm - Access to driver model information"
250 depends on DM
251 default y
252 help
253 Provides access to driver model data structures and information,
254 such as a list of devices, list of uclasses and the state of each
255 device (e.g. activated). This is not required for operation, but
256 can be useful to see the state of driver model for debugging or
257 interest.
258
259config CMD_DEMO
260 bool "demo - Demonstration commands for driver model"
261 depends on DM
262 help
263 Provides a 'demo' command which can be used to play around with
264 driver model. To use this properly you will need to enable one or
265 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
266 Otherwise you will always get an empty list of devices. The demo
267 devices are defined in the sandbox device tree, so the easiest
268 option is to use sandbox and pass the -d point to sandbox's
269 u-boot.dtb file.
270
Masahiro Yamada60296a82014-11-13 19:29:08 +0900271config CMD_LOADB
272 bool "loadb"
273 help
274 Load a binary file over serial line.
275
276config CMD_LOADS
277 bool "loads"
278 help
279 Load an S-Record file over serial line
280
281config CMD_FLASH
282 bool "flinfo, erase, protect"
283 help
284 NOR flash support.
285 flinfo - print FLASH memory information
286 erase - FLASH memory
287 protect - enable or disable FLASH write protection
288
Linus Walleij4bb66502015-04-05 01:48:31 +0200289config CMD_ARMFLASH
290 depends on FLASH_CFI_DRIVER
291 bool "armflash"
292 help
293 ARM Ltd reference designs flash partition access
294
Masahiro Yamada60296a82014-11-13 19:29:08 +0900295config CMD_NAND
296 bool "nand"
297 help
298 NAND support.
299
300config CMD_SPI
301 bool "sspi"
302 help
303 SPI utility command.
304
305config CMD_I2C
306 bool "i2c"
307 help
308 I2C support.
309
310config CMD_USB
311 bool "usb"
312 help
313 USB support.
314
315config CMD_FPGA
316 bool "fpga"
317 help
318 FPGA support.
319
320endmenu
321
322
323menu "Shell scripting commands"
324
325config CMD_ECHO
326 bool "echo"
327 help
328 Echo args to console
329
330config CMD_ITEST
331 bool "itest"
332 help
333 Return true/false on integer compare.
334
335config CMD_SOURCE
336 bool "source"
337 help
338 Run script from memory
339
Joe Hershberger7453cb52015-05-05 19:08:13 -0500340config CMD_SETEXPR
341 bool "setexpr"
342 help
343 Evaluate boolean and math expressions and store the result in an env
344 variable.
345 Also supports loading the value at a memory location into a variable.
346 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
347
Masahiro Yamada60296a82014-11-13 19:29:08 +0900348endmenu
349
350menu "Network commands"
351
352config CMD_NET
353 bool "bootp, tftpboot"
Joe Hershberger6eed3782015-05-29 19:46:35 -0500354 select NET
Masahiro Yamada60296a82014-11-13 19:29:08 +0900355 help
356 Network commands.
357 bootp - boot image via network using BOOTP/TFTP protocol
358 tftpboot - boot image via network using TFTP protocol
359
360config CMD_TFTPPUT
361 bool "tftp put"
362 help
363 TFTP put command, for uploading files to a server
364
365config CMD_TFTPSRV
366 bool "tftpsrv"
367 help
368 Act as a TFTP server and boot the first received file
369
370config CMD_RARP
371 bool "rarpboot"
372 help
373 Boot image via network using RARP/TFTP protocol
374
375config CMD_DHCP
376 bool "dhcp"
377 help
378 Boot image via network using DHCP/TFTP protocol
379
380config CMD_NFS
381 bool "nfs"
382 help
383 Boot image via network using NFS protocol.
384
385config CMD_PING
386 bool "ping"
387 help
388 Send ICMP ECHO_REQUEST to network host
389
390config CMD_CDP
391 bool "cdp"
392 help
393 Perform CDP network configuration
394
395config CMD_SNTP
396 bool "sntp"
397 help
398 Synchronize RTC via network
399
400config CMD_DNS
401 bool "dns"
402 help
403 Lookup the IP of a hostname
404
Masahiro Yamada60296a82014-11-13 19:29:08 +0900405config CMD_LINK_LOCAL
406 bool "linklocal"
407 help
408 Acquire a network IP address using the link-local protocol
409
410endmenu
411
412menu "Misc commands"
413
414config CMD_TIME
415 bool "time"
416 help
417 Run commands and summarize execution time.
418
419# TODO: rename to CMD_SLEEP
420config CMD_MISC
421 bool "sleep"
422 help
423 Delay execution for some time
424
425config CMD_TIMER
426 bool "timer"
427 help
428 Access the system timer.
429
430config CMD_SETGETDCR
431 bool "getdcr, setdcr, getidcr, setidcr"
432 depends on 4xx
433 help
434 getdcr - Get an AMCC PPC 4xx DCR's value
435 setdcr - Set an AMCC PPC 4xx DCR's value
436 getidcr - Get a register value via indirect DCR addressing
437 setidcr - Set a register value via indirect DCR addressing
438
Simon Glassde79a762015-03-06 13:19:09 -0700439config CMD_SOUND
440 bool "sound"
441 depends on SOUND
442 help
443 This provides basic access to the U-Boot's sound support. The main
444 feature is to play a beep.
445
446 sound init - set up sound system
447 sound play - play a sound
448
Masahiro Yamada60296a82014-11-13 19:29:08 +0900449endmenu
Masahiro Yamada726ac8e2014-09-16 16:33:03 +0900450
Simon Glassee2b2432015-03-02 17:04:37 -0700451menu "Boot timing"
452
453config BOOTSTAGE
454 bool "Boot timing and reporting"
455 help
456 Enable recording of boot time while booting. To use it, insert
457 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
458 bootstage.h. Only a single entry is recorded for each ID. You can
459 give the entry a name with bootstage_mark_name(). You can also
460 record elapsed time in a particular stage using bootstage_start()
461 before starting and bootstage_accum() when finished. Bootstage will
462 add up all the accumated time and report it.
463
464 Normally, IDs are defined in bootstage.h but a small number of
465 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
466 as the ID.
467
468 Calls to show_boot_progress() wil also result in log entries but
469 these will not have names.
470
471config BOOTSTAGE_REPORT
472 bool "Display a detailed boot timing report before booting the OS"
473 depends on BOOTSTAGE
474 help
475 Enable output of a boot time report just before the OS is booted.
476 This shows how long it took U-Boot to go through each stage of the
477 boot process. The report looks something like this:
478
479 Timer summary in microseconds:
480 Mark Elapsed Stage
481 0 0 reset
482 3,575,678 3,575,678 board_init_f start
483 3,575,695 17 arch_cpu_init A9
484 3,575,777 82 arch_cpu_init done
485 3,659,598 83,821 board_init_r start
486 3,910,375 250,777 main_loop
487 29,916,167 26,005,792 bootm_start
488 30,361,327 445,160 start_kernel
489
490config BOOTSTAGE_USER_COUNT
491 hex "Number of boot ID numbers available for user use"
492 default 20
493 help
494 This is the number of available user bootstage records.
495 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
496 a new ID will be allocated from this stash. If you exceed
497 the limit, recording will stop.
498
499config CMD_BOOTSTAGE
500 bool "Enable the 'bootstage' command"
501 depends on BOOTSTAGE
502 help
503 Add a 'bootstage' command which supports printing a report
504 and un/stashing of bootstage data.
505
506config BOOTSTAGE_FDT
507 bool "Store boot timing information in the OS device tree"
508 depends on BOOTSTAGE
509 help
510 Stash the bootstage information in the FDT. A root 'bootstage'
511 node is created with each bootstage id as a child. Each child
512 has a 'name' property and either 'mark' containing the
513 mark time in microsecond, or 'accum' containing the
514 accumulated time for that bootstage id in microseconds.
515 For example:
516
517 bootstage {
518 154 {
519 name = "board_init_f";
520 mark = <3575678>;
521 };
522 170 {
523 name = "lcd";
524 accum = <33482>;
525 };
526 };
527
528 Code in the Linux kernel can find this in /proc/devicetree.
529
530config BOOTSTAGE_STASH
531 bool "Stash the boot timing information in memory before booting OS"
532 depends on BOOTSTAGE
533 help
534 Some OSes do not support device tree. Bootstage can instead write
535 the boot timing information in a binary format at a given address.
536 This happens through a call to bootstage_stash(), typically in
537 the CPU's cleanup_before_linux() function. You can use the
538 'bootstage stash' and 'bootstage unstash' commands to do this on
539 the command line.
540
541config BOOTSTAGE_STASH_ADDR
542 hex "Address to stash boot timing information"
543 default 0
544 help
545 Provide an address which will not be overwritten by the OS when it
546 starts, so that it can read this information when ready.
547
548config BOOTSTAGE_STASH_SIZE
549 hex "Size of boot timing stash region"
550 default 4096
551 help
552 This should be large enough to hold the bootstage stash. A value of
553 4096 (4KiB) is normally plenty.
554
555endmenu
556
Przemyslaw Marczakd89fdcf2015-04-20 20:07:43 +0200557menu "Power commands"
558config CMD_PMIC
559 bool "Enable Driver Model PMIC command"
560 depends on DM_PMIC
561 help
562 This is the pmic command, based on a driver model pmic's API.
563 Command features are unchanged:
564 - list - list pmic devices
565 - pmic dev <id> - show or [set] operating pmic device (NEW)
566 - pmic dump - dump registers
567 - pmic read address - read byte of register at address
568 - pmic write address - write byte to register at address
569 The only one change for this command is 'dev' subcommand.
Przemyslaw Marczak6262b722015-04-20 20:07:44 +0200570
571config CMD_REGULATOR
572 bool "Enable Driver Model REGULATOR command"
573 depends on DM_REGULATOR
574 help
575 This command is based on driver model regulator's API.
576 User interface features:
577 - list - list regulator devices
578 - regulator dev <id> - show or [set] operating regulator device
579 - regulator info - print constraints info
580 - regulator status - print operating status
581 - regulator value <val] <-f> - print/[set] voltage value [uV]
582 - regulator current <val> - print/[set] current value [uA]
583 - regulator mode <id> - print/[set] operating mode id
584 - regulator enable - enable the regulator output
585 - regulator disable - disable the regulator output
586
587 The '-f' (force) option can be used for set the value which exceeds
588 the limits, which are found in device-tree and are kept in regulator's
589 uclass platdata structure.
590
Przemyslaw Marczakd89fdcf2015-04-20 20:07:43 +0200591endmenu
Przemyslaw Marczak6262b722015-04-20 20:07:44 +0200592
Masahiro Yamadaed363232014-09-16 16:32:58 +0900593endmenu