1 menu "Command line interface"
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").
12 If disabled, you get the old, much simpler behaviour with a somewhat
13 smaller memory footprint.
15 config SYS_HUSH_PARSER
18 Backward compatibility.
20 menu "Autoboot options"
23 bool "Stop autobooting via specific input key / string"
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.
32 config AUTOBOOT_PROMPT
33 string "Autoboot stop prompt"
34 depends on AUTOBOOT_KEYED
35 default "Autoboot in %d seconds\\n"
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.
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.
48 config AUTOBOOT_ENCRYPTION
49 bool "Enable encryption in autoboot stopping"
50 depends on AUTOBOOT_KEYED
53 config AUTOBOOT_DELAY_STR
54 string "Delay autobooting via specific input key / string"
55 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
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.
65 config AUTOBOOT_STOP_STR
66 string "Stop autobooting via specific input key / string"
67 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
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.
77 config AUTOBOOT_KEYED_CTRLC
78 bool "Enable Ctrl-C autoboot interruption"
79 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
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.
87 config AUTOBOOT_STOP_STR_SHA256
88 string "Stop autobooting via SHA256 encrypted password"
89 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
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.
112 Print console devices and information.
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.
125 Print GPL license text
135 Run the command stored in the environment "bootcmd", i.e.
136 "bootd" does the same thing as "run bootcmd".
142 Boot an application image from the memory.
148 Boot a Linux kernel zImage.
153 Boot a WindowsCE image.
159 Start an application at a given address.
165 Run the command in the given environment variable.
171 Print header information for application image.
175 default !SYS_NO_FLASH
177 List all images found in flash
183 Extract a part of a multi-image.
190 bool "Enable FDT commands"
192 config OF_BOARD_SETUP
193 bool "Support DT modifications by board code"
198 menu "Environment commands"
216 Edit environment variable.
222 Save all environment variables into the compiled-in persistent
225 config CMD_ENV_EXISTS
228 Check if a variable is defined in the environment for use in
233 menu "Memory commands"
236 bool "md, mm, nm, mw, cp, cmp, base, loop"
241 mm - memory modify (auto-incrementing address)
242 nm - memory modify (constant address)
243 mw - memory write (fill)
246 base - print or set address offset
247 loop - initinite loop on address range
258 Infinite write loop on address range
263 Simple RAM read/write test.
268 mdc - memory display cyclic
269 mwc - memory write cyclic
274 Display memory information.
278 menu "Device access commands"
281 bool "dm - Access to driver model information"
285 Provides access to driver model data structures and information,
286 such as a list of devices, list of uclasses and the state of each
287 device (e.g. activated). This is not required for operation, but
288 can be useful to see the state of driver model for debugging or
292 bool "demo - Demonstration commands for driver model"
295 Provides a 'demo' command which can be used to play around with
296 driver model. To use this properly you will need to enable one or
297 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
298 Otherwise you will always get an empty list of devices. The demo
299 devices are defined in the sandbox device tree, so the easiest
300 option is to use sandbox and pass the -d point to sandbox's
307 Load a binary file over serial line.
313 Load an S-Record file over serial line
316 bool "flinfo, erase, protect"
317 default y if !SYS_NO_FLASH
320 flinfo - print FLASH memory information
322 protect - enable or disable FLASH write protection
325 depends on FLASH_CFI_DRIVER
328 ARM Ltd reference designs flash partition access
331 bool "MTD device support"
334 bool "MTD partitioning support"
336 depends on MTD_DEVICE && (CMD_FLASH || CMD_NAND)
343 config CMD_NAND_TRIMFFS
344 bool "Enable nand write.trimffs command"
346 Enable command to leave page sized runs of 0xff patterns in
347 erased state rather than overwriting them. This is required
348 for using NAND flash filesystems on NAND controllers with
349 a non-0xff ECC code for all 0xff data.
385 menu "Shell scripting commands"
397 Return true/false on integer compare.
403 Run script from memory
408 Evaluate boolean and math expressions and store the result in an env
410 Also supports loading the value at a memory location into a variable.
411 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
415 menu "Network commands"
418 bool "bootp, tftpboot"
423 bootp - boot image via network using BOOTP/TFTP protocol
424 tftpboot - boot image via network using TFTP protocol
429 TFTP put command, for uploading files to a server
434 Act as a TFTP server and boot the first received file
439 Boot image via network using RARP/TFTP protocol
444 Boot image via network using DHCP/TFTP protocol
450 config BOOTP_BOOTFILESIZE
451 bool "obtain bootfile size from DHCP"
453 config BOOTP_BOOTPATH
454 bool "obtain bootfile path from DHCP"
457 bool "obtain DNS server IP address from DHCP"
460 bool "store secondary DNS IP address in dnsip2"
463 bool "obtain gateway IP address from DHCP"
465 config BOOTP_ID_CACHE_SIZE
466 int "DHCP transaction ID cache size"
469 BOOTP packets are uniquely identified using a 32-bit ID. The
470 server will copy the ID from client requests to responses and
471 U-Boot will use this to determine if it is the destination of
472 an incoming response. Some servers will check that addresses
473 aren't in use before handing them out (usually using an ARP
474 ping) and therefore take up to a few hundred milliseconds to
475 respond. Network congestion may also influence the time it
476 takes for a response to make it back to the client. If that
477 time is too long, U-Boot will retransmit requests. In order
478 to allow earlier responses to still be accepted after these
479 retransmissions, U-Boot's BOOTP client keeps a small cache of
480 IDs. The CONFIG_BOOTP_ID_CACHE_SIZE controls the size of this
481 cache. The default is to keep IDs for up to four outstanding
482 requests. Increasing this will allow U-Boot to accept offers
483 from a BOOTP client in networks with unusually high latency.
485 config BOOTP_MAY_FAIL
486 bool "Do not start over, if DHCP server is not available"
488 If the DHCP server is not found after the configured retry
489 count, the call will fail instead of starting over. This
490 can be used to fail over to Link-local IP address
491 configuration if the DHCP server is not available.
493 config BOOTP_NISDOMAIN
494 bool "obtain NIS domain from DHCP"
496 config BOOTP_NTPSERVER
497 bool "obtain NTP server IP address from DHCP"
499 config BOOTP_RANDOM_DELAY
500 bool "Use a (pseudo) random delay between DHCP retries"
503 config BOOTP_RANDOM_ID
504 bool "Generate a (pseudo) random transaction ID"
507 config BOOTP_SEND_HOSTNAME
508 bool "send hostname in DHCP request"
510 config BOOTP_SUBNETMASK
511 bool "obtain subnet mask from DHCP"
513 config BOOTP_TIMEOFFSET
514 bool "obtain from DHCP"
516 config BOOTP_VENDOREX
517 bool "obtain from DHCP"
527 Boot image via network using NFS protocol.
532 Send ICMP ECHO_REQUEST to network host
537 Perform CDP network configuration
542 Synchronize RTC via network
547 Lookup the IP of a hostname
549 config CMD_LINK_LOCAL
552 Acquire a network IP address using the link-local protocol
555 bool "MII register access"
557 Support reading/writing ETH PHY registers via MII bus
566 Enable commands to switch data cache on/off.
571 Run commands and summarize execution time.
574 bool "fuse read/write"
576 eFuse reading and programming support
578 # TODO: rename to CMD_SLEEP
583 Delay execution for some time
588 Access the system timer.
591 bool "getdcr, setdcr, getidcr, setidcr"
595 getdcr - Get an AMCC PPC 4xx DCR's value
596 setdcr - Set an AMCC PPC 4xx DCR's value
597 getidcr - Get a register value via indirect DCR addressing
598 setidcr - Set a register value via indirect DCR addressing
604 This provides basic access to the U-Boot's sound support. The main
605 feature is to play a beep.
607 sound init - set up sound system
608 sound play - play a sound
615 bool "Boot timing and reporting"
617 Enable recording of boot time while booting. To use it, insert
618 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
619 bootstage.h. Only a single entry is recorded for each ID. You can
620 give the entry a name with bootstage_mark_name(). You can also
621 record elapsed time in a particular stage using bootstage_start()
622 before starting and bootstage_accum() when finished. Bootstage will
623 add up all the accumated time and report it.
625 Normally, IDs are defined in bootstage.h but a small number of
626 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
629 Calls to show_boot_progress() wil also result in log entries but
630 these will not have names.
632 config BOOTSTAGE_REPORT
633 bool "Display a detailed boot timing report before booting the OS"
636 Enable output of a boot time report just before the OS is booted.
637 This shows how long it took U-Boot to go through each stage of the
638 boot process. The report looks something like this:
640 Timer summary in microseconds:
643 3,575,678 3,575,678 board_init_f start
644 3,575,695 17 arch_cpu_init A9
645 3,575,777 82 arch_cpu_init done
646 3,659,598 83,821 board_init_r start
647 3,910,375 250,777 main_loop
648 29,916,167 26,005,792 bootm_start
649 30,361,327 445,160 start_kernel
651 config BOOTSTAGE_USER_COUNT
652 hex "Number of boot ID numbers available for user use"
655 This is the number of available user bootstage records.
656 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
657 a new ID will be allocated from this stash. If you exceed
658 the limit, recording will stop.
661 bool "Enable the 'bootstage' command"
664 Add a 'bootstage' command which supports printing a report
665 and un/stashing of bootstage data.
668 bool "Store boot timing information in the OS device tree"
671 Stash the bootstage information in the FDT. A root 'bootstage'
672 node is created with each bootstage id as a child. Each child
673 has a 'name' property and either 'mark' containing the
674 mark time in microsecond, or 'accum' containing the
675 accumulated time for that bootstage id in microseconds.
680 name = "board_init_f";
689 Code in the Linux kernel can find this in /proc/devicetree.
691 config BOOTSTAGE_STASH
692 bool "Stash the boot timing information in memory before booting OS"
695 Some OSes do not support device tree. Bootstage can instead write
696 the boot timing information in a binary format at a given address.
697 This happens through a call to bootstage_stash(), typically in
698 the CPU's cleanup_before_linux() function. You can use the
699 'bootstage stash' and 'bootstage unstash' commands to do this on
702 config BOOTSTAGE_STASH_ADDR
703 hex "Address to stash boot timing information"
706 Provide an address which will not be overwritten by the OS when it
707 starts, so that it can read this information when ready.
709 config BOOTSTAGE_STASH_SIZE
710 hex "Size of boot timing stash region"
713 This should be large enough to hold the bootstage stash. A value of
714 4096 (4KiB) is normally plenty.
718 menu "Power commands"
720 bool "Enable Driver Model PMIC command"
723 This is the pmic command, based on a driver model pmic's API.
724 Command features are unchanged:
725 - list - list pmic devices
726 - pmic dev <id> - show or [set] operating pmic device (NEW)
727 - pmic dump - dump registers
728 - pmic read address - read byte of register at address
729 - pmic write address - write byte to register at address
730 The only one change for this command is 'dev' subcommand.
733 bool "Enable Driver Model REGULATOR command"
734 depends on DM_REGULATOR
736 This command is based on driver model regulator's API.
737 User interface features:
738 - list - list regulator devices
739 - regulator dev <id> - show or [set] operating regulator device
740 - regulator info - print constraints info
741 - regulator status - print operating status
742 - regulator value <val] <-f> - print/[set] voltage value [uV]
743 - regulator current <val> - print/[set] current value [uA]
744 - regulator mode <id> - print/[set] operating mode id
745 - regulator enable - enable the regulator output
746 - regulator disable - disable the regulator output
748 The '-f' (force) option can be used for set the value which exceeds
749 the limits, which are found in device-tree and are kept in regulator's
750 uclass platdata structure.
756 menu "Environment configuration settings"
759 prompt "Select environment non-volatile storage"
761 config ENV_IS_NOWHERE
762 bool "do not store environment"
764 config ENV_IS_IN_NAND
765 bool "store environment in NAND"
769 bool "store environment in MMC"
772 config ENV_IS_IN_SPI_FLASH
773 bool "store environment in SPI flash"
779 menu "Display configuration"
784 config DISPLAY_BOARDINFO
785 bool "Display board info"