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
227 menu "Memory commands"
230 bool "md, mm, nm, mw, cp, cmp, base, loop"
235 mm - memory modify (auto-incrementing address)
236 nm - memory modify (constant address)
237 mw - memory write (fill)
240 base - print or set address offset
241 loop - initinite loop on address range
252 Infinite write loop on address range
257 Simple RAM read/write test.
262 mdc - memory display cyclic
263 mwc - memory write cyclic
268 Display memory information.
272 menu "Device access commands"
275 bool "dm - Access to driver model information"
279 Provides access to driver model data structures and information,
280 such as a list of devices, list of uclasses and the state of each
281 device (e.g. activated). This is not required for operation, but
282 can be useful to see the state of driver model for debugging or
286 bool "demo - Demonstration commands for driver model"
289 Provides a 'demo' command which can be used to play around with
290 driver model. To use this properly you will need to enable one or
291 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
292 Otherwise you will always get an empty list of devices. The demo
293 devices are defined in the sandbox device tree, so the easiest
294 option is to use sandbox and pass the -d point to sandbox's
301 Load a binary file over serial line.
307 Load an S-Record file over serial line
310 bool "flinfo, erase, protect"
311 default y if !SYS_NO_FLASH
314 flinfo - print FLASH memory information
316 protect - enable or disable FLASH write protection
319 depends on FLASH_CFI_DRIVER
322 ARM Ltd reference designs flash partition access
325 bool "MTD device support"
328 bool "MTD partitioning support"
330 depends on MTD_DEVICE && (CMD_FLASH || CMD_NAND)
337 config CMD_NAND_TRIMFFS
338 bool "Enable nand write.trimffs command"
340 Enable command to leave page sized runs of 0xff patterns in
341 erased state rather than overwriting them. This is required
342 for using NAND flash filesystems on NAND controllers with
343 a non-0xff ECC code for all 0xff data.
379 menu "Shell scripting commands"
391 Return true/false on integer compare.
397 Run script from memory
402 Evaluate boolean and math expressions and store the result in an env
404 Also supports loading the value at a memory location into a variable.
405 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
409 menu "Network commands"
412 bool "bootp, tftpboot"
417 bootp - boot image via network using BOOTP/TFTP protocol
418 tftpboot - boot image via network using TFTP protocol
423 TFTP put command, for uploading files to a server
428 Act as a TFTP server and boot the first received file
433 Boot image via network using RARP/TFTP protocol
438 Boot image via network using DHCP/TFTP protocol
444 config BOOTP_BOOTFILESIZE
445 bool "obtain bootfile size from DHCP"
447 config BOOTP_BOOTPATH
448 bool "obtain bootfile path from DHCP"
451 bool "obtain DNS server IP address from DHCP"
454 bool "store secondary DNS IP address in dnsip2"
457 bool "obtain gateway IP address from DHCP"
459 config BOOTP_ID_CACHE_SIZE
460 int "DHCP transaction ID cache size"
463 BOOTP packets are uniquely identified using a 32-bit ID. The
464 server will copy the ID from client requests to responses and
465 U-Boot will use this to determine if it is the destination of
466 an incoming response. Some servers will check that addresses
467 aren't in use before handing them out (usually using an ARP
468 ping) and therefore take up to a few hundred milliseconds to
469 respond. Network congestion may also influence the time it
470 takes for a response to make it back to the client. If that
471 time is too long, U-Boot will retransmit requests. In order
472 to allow earlier responses to still be accepted after these
473 retransmissions, U-Boot's BOOTP client keeps a small cache of
474 IDs. The CONFIG_BOOTP_ID_CACHE_SIZE controls the size of this
475 cache. The default is to keep IDs for up to four outstanding
476 requests. Increasing this will allow U-Boot to accept offers
477 from a BOOTP client in networks with unusually high latency.
479 config BOOTP_MAY_FAIL
480 bool "Do not start over, if DHCP server is not available"
482 If the DHCP server is not found after the configured retry
483 count, the call will fail instead of starting over. This
484 can be used to fail over to Link-local IP address
485 configuration if the DHCP server is not available.
487 config BOOTP_NISDOMAIN
488 bool "obtain NIS domain from DHCP"
490 config BOOTP_NTPSERVER
491 bool "obtain NTP server IP address from DHCP"
493 config BOOTP_RANDOM_DELAY
494 bool "Use a (pseudo) random delay between DHCP retries"
497 config BOOTP_RANDOM_ID
498 bool "Generate a (pseudo) random transaction ID"
501 config BOOTP_SEND_HOSTNAME
502 bool "send hostname in DHCP request"
504 config BOOTP_SUBNETMASK
505 bool "obtain subnet mask from DHCP"
507 config BOOTP_TIMEOFFSET
508 bool "obtain from DHCP"
510 config BOOTP_VENDOREX
511 bool "obtain from DHCP"
521 Boot image via network using NFS protocol.
526 Send ICMP ECHO_REQUEST to network host
531 Perform CDP network configuration
536 Synchronize RTC via network
541 Lookup the IP of a hostname
543 config CMD_LINK_LOCAL
546 Acquire a network IP address using the link-local protocol
549 bool "MII register access"
551 Support reading/writing ETH PHY registers via MII bus
560 Enable commands to switch data cache on/off.
565 Run commands and summarize execution time.
568 bool "fuse read/write"
570 eFuse reading and programming support
572 # TODO: rename to CMD_SLEEP
577 Delay execution for some time
582 Access the system timer.
585 bool "getdcr, setdcr, getidcr, setidcr"
589 getdcr - Get an AMCC PPC 4xx DCR's value
590 setdcr - Set an AMCC PPC 4xx DCR's value
591 getidcr - Get a register value via indirect DCR addressing
592 setidcr - Set a register value via indirect DCR addressing
598 This provides basic access to the U-Boot's sound support. The main
599 feature is to play a beep.
601 sound init - set up sound system
602 sound play - play a sound
609 bool "Boot timing and reporting"
611 Enable recording of boot time while booting. To use it, insert
612 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
613 bootstage.h. Only a single entry is recorded for each ID. You can
614 give the entry a name with bootstage_mark_name(). You can also
615 record elapsed time in a particular stage using bootstage_start()
616 before starting and bootstage_accum() when finished. Bootstage will
617 add up all the accumated time and report it.
619 Normally, IDs are defined in bootstage.h but a small number of
620 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
623 Calls to show_boot_progress() wil also result in log entries but
624 these will not have names.
626 config BOOTSTAGE_REPORT
627 bool "Display a detailed boot timing report before booting the OS"
630 Enable output of a boot time report just before the OS is booted.
631 This shows how long it took U-Boot to go through each stage of the
632 boot process. The report looks something like this:
634 Timer summary in microseconds:
637 3,575,678 3,575,678 board_init_f start
638 3,575,695 17 arch_cpu_init A9
639 3,575,777 82 arch_cpu_init done
640 3,659,598 83,821 board_init_r start
641 3,910,375 250,777 main_loop
642 29,916,167 26,005,792 bootm_start
643 30,361,327 445,160 start_kernel
645 config BOOTSTAGE_USER_COUNT
646 hex "Number of boot ID numbers available for user use"
649 This is the number of available user bootstage records.
650 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
651 a new ID will be allocated from this stash. If you exceed
652 the limit, recording will stop.
655 bool "Enable the 'bootstage' command"
658 Add a 'bootstage' command which supports printing a report
659 and un/stashing of bootstage data.
662 bool "Store boot timing information in the OS device tree"
665 Stash the bootstage information in the FDT. A root 'bootstage'
666 node is created with each bootstage id as a child. Each child
667 has a 'name' property and either 'mark' containing the
668 mark time in microsecond, or 'accum' containing the
669 accumulated time for that bootstage id in microseconds.
674 name = "board_init_f";
683 Code in the Linux kernel can find this in /proc/devicetree.
685 config BOOTSTAGE_STASH
686 bool "Stash the boot timing information in memory before booting OS"
689 Some OSes do not support device tree. Bootstage can instead write
690 the boot timing information in a binary format at a given address.
691 This happens through a call to bootstage_stash(), typically in
692 the CPU's cleanup_before_linux() function. You can use the
693 'bootstage stash' and 'bootstage unstash' commands to do this on
696 config BOOTSTAGE_STASH_ADDR
697 hex "Address to stash boot timing information"
700 Provide an address which will not be overwritten by the OS when it
701 starts, so that it can read this information when ready.
703 config BOOTSTAGE_STASH_SIZE
704 hex "Size of boot timing stash region"
707 This should be large enough to hold the bootstage stash. A value of
708 4096 (4KiB) is normally plenty.
712 menu "Power commands"
714 bool "Enable Driver Model PMIC command"
717 This is the pmic command, based on a driver model pmic's API.
718 Command features are unchanged:
719 - list - list pmic devices
720 - pmic dev <id> - show or [set] operating pmic device (NEW)
721 - pmic dump - dump registers
722 - pmic read address - read byte of register at address
723 - pmic write address - write byte to register at address
724 The only one change for this command is 'dev' subcommand.
727 bool "Enable Driver Model REGULATOR command"
728 depends on DM_REGULATOR
730 This command is based on driver model regulator's API.
731 User interface features:
732 - list - list regulator devices
733 - regulator dev <id> - show or [set] operating regulator device
734 - regulator info - print constraints info
735 - regulator status - print operating status
736 - regulator value <val] <-f> - print/[set] voltage value [uV]
737 - regulator current <val> - print/[set] current value [uA]
738 - regulator mode <id> - print/[set] operating mode id
739 - regulator enable - enable the regulator output
740 - regulator disable - disable the regulator output
742 The '-f' (force) option can be used for set the value which exceeds
743 the limits, which are found in device-tree and are kept in regulator's
744 uclass platdata structure.
750 menu "Environment configuration settings"
753 prompt "Select environment non-volatile storage"
755 config ENV_IS_NOWHERE
756 bool "do not store environment"
758 config ENV_IS_IN_NAND
759 bool "store environment in NAND"
763 bool "store environment in MMC"
766 config ENV_IS_IN_SPI_FLASH
767 bool "store environment in SPI flash"
773 menu "Display configuration"
778 config DISPLAY_BOARDINFO
779 bool "Display board info"