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.
24 This string is displayed in the command line to the left of the
27 menu "Autoboot options"
30 bool "Stop autobooting via specific input key / string"
33 This option enables stopping (aborting) of the automatic
34 boot feature only by issuing a specific input key or
35 string. If not enabled, any input key will abort the
36 U-Boot automatic booting process and bring the device
37 to the U-Boot prompt for user input.
39 config AUTOBOOT_PROMPT
40 string "Autoboot stop prompt"
41 depends on AUTOBOOT_KEYED
42 default "Autoboot in %d seconds\\n"
44 This string is displayed before the boot delay selected by
45 CONFIG_BOOTDELAY starts. If it is not defined there is no
46 output indicating that autoboot is in progress.
48 Note that this define is used as the (only) argument to a
49 printf() call, so it may contain '%' format specifications,
50 provided that it also includes, sepearated by commas exactly
51 like in a printf statement, the required arguments. It is
52 the responsibility of the user to select only such arguments
53 that are valid in the given context.
55 config AUTOBOOT_ENCRYPTION
56 bool "Enable encryption in autoboot stopping"
57 depends on AUTOBOOT_KEYED
60 config AUTOBOOT_DELAY_STR
61 string "Delay autobooting via specific input key / string"
62 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
64 This option delays the automatic boot feature by issuing
65 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
66 or the environment variable "bootdelaykey" is specified
67 and this string is received from console input before
68 autoboot starts booting, U-Boot gives a command prompt. The
69 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
70 used, otherwise it never times out.
72 config AUTOBOOT_STOP_STR
73 string "Stop autobooting via specific input key / string"
74 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
76 This option enables stopping (aborting) of the automatic
77 boot feature only by issuing a specific input key or
78 string. If CONFIG_AUTOBOOT_STOP_STR or the environment
79 variable "bootstopkey" is specified and this string is
80 received from console input before autoboot starts booting,
81 U-Boot gives a command prompt. The U-Boot prompt never
82 times out, even if CONFIG_BOOT_RETRY_TIME is used.
84 config AUTOBOOT_KEYED_CTRLC
85 bool "Enable Ctrl-C autoboot interruption"
86 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
89 This option allows for the boot sequence to be interrupted
90 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
91 Setting this variable provides an escape sequence from the
92 limited "password" strings.
94 config AUTOBOOT_STOP_STR_SHA256
95 string "Stop autobooting via SHA256 encrypted password"
96 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
98 This option adds the feature to only stop the autobooting,
99 and therefore boot into the U-Boot prompt, when the input
100 string / password matches a values that is encypted via
101 a SHA256 hash and saved in the environment.
119 Print console devices and information.
124 Print information about available CPUs. This normally shows the
125 number of CPUs, type (e.g. manufacturer, architecture, product or
126 internal name) and clock frequency. Other information may be
127 available depending on the CPU driver.
132 Print GPL license text
142 Run the command stored in the environment "bootcmd", i.e.
143 "bootd" does the same thing as "run bootcmd".
149 Boot an application image from the memory.
155 Boot a Linux kernel zImage.
160 Boot a WindowsCE image.
166 Start an application at a given address.
172 Run the command in the given environment variable.
178 Print header information for application image.
182 default !SYS_NO_FLASH
184 List all images found in flash
190 Extract a part of a multi-image.
197 bool "Enable FDT commands"
199 config OF_BOARD_SETUP
200 bool "Support DT modifications by board code"
205 menu "Environment commands"
223 Edit environment variable.
229 Save all environment variables into the compiled-in persistent
232 config CMD_ENV_EXISTS
236 Check if a variable is defined in the environment for use in
239 config UBOOT_IGNORE_ENV
242 Ignore non-volatile environment settings and use default
247 menu "Memory commands"
250 bool "md, mm, nm, mw, cp, cmp, base, loop"
255 mm - memory modify (auto-incrementing address)
256 nm - memory modify (constant address)
257 mw - memory write (fill)
260 base - print or set address offset
261 loop - initinite loop on address range
272 Infinite write loop on address range
277 Simple RAM read/write test.
282 mdc - memory display cyclic
283 mwc - memory write cyclic
288 Display memory information.
292 menu "Device access commands"
295 bool "dm - Access to driver model information"
299 Provides access to driver model data structures and information,
300 such as a list of devices, list of uclasses and the state of each
301 device (e.g. activated). This is not required for operation, but
302 can be useful to see the state of driver model for debugging or
306 bool "demo - Demonstration commands for driver model"
309 Provides a 'demo' command which can be used to play around with
310 driver model. To use this properly you will need to enable one or
311 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
312 Otherwise you will always get an empty list of devices. The demo
313 devices are defined in the sandbox device tree, so the easiest
314 option is to use sandbox and pass the -d point to sandbox's
321 Load a binary file over serial line.
327 Load an S-Record file over serial line
330 bool "flinfo, erase, protect"
331 default y if !SYS_NO_FLASH
334 flinfo - print FLASH memory information
336 protect - enable or disable FLASH write protection
339 depends on FLASH_CFI_DRIVER
342 ARM Ltd reference designs flash partition access
345 bool "MTD device support"
348 bool "MTD partitioning support"
350 depends on MTD_DEVICE && (CMD_FLASH || CMD_NAND)
357 config CMD_NAND_TRIMFFS
358 bool "Enable nand write.trimffs command"
360 Enable command to leave page sized runs of 0xff patterns in
361 erased state rather than overwriting them. This is required
362 for using NAND flash filesystems on NAND controllers with
363 a non-0xff ECC code for all 0xff data.
404 menu "Shell scripting commands"
416 Return true/false on integer compare.
422 Run script from memory
428 Evaluate boolean and math expressions and store the result in an env
430 Also supports loading the value at a memory location into a variable.
431 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
435 menu "Network commands"
438 bool "bootp, tftpboot"
444 bootp - boot image via network using BOOTP/TFTP protocol
445 tftpboot - boot image via network using TFTP protocol
450 TFTP put command, for uploading files to a server
455 Act as a TFTP server and boot the first received file
460 Boot image via network using RARP/TFTP protocol
465 Boot image via network using DHCP/TFTP protocol
471 config BOOTP_BOOTFILESIZE
472 bool "obtain bootfile size from DHCP"
474 config BOOTP_BOOTPATH
475 bool "obtain bootfile path from DHCP"
478 bool "obtain DNS server IP address from DHCP"
481 bool "store secondary DNS IP address in dnsip2"
484 bool "obtain gateway IP address from DHCP"
486 config BOOTP_ID_CACHE_SIZE
487 int "DHCP transaction ID cache size"
490 BOOTP packets are uniquely identified using a 32-bit ID. The
491 server will copy the ID from client requests to responses and
492 U-Boot will use this to determine if it is the destination of
493 an incoming response. Some servers will check that addresses
494 aren't in use before handing them out (usually using an ARP
495 ping) and therefore take up to a few hundred milliseconds to
496 respond. Network congestion may also influence the time it
497 takes for a response to make it back to the client. If that
498 time is too long, U-Boot will retransmit requests. In order
499 to allow earlier responses to still be accepted after these
500 retransmissions, U-Boot's BOOTP client keeps a small cache of
501 IDs. The CONFIG_BOOTP_ID_CACHE_SIZE controls the size of this
502 cache. The default is to keep IDs for up to four outstanding
503 requests. Increasing this will allow U-Boot to accept offers
504 from a BOOTP client in networks with unusually high latency.
506 config BOOTP_MAY_FAIL
507 bool "Do not start over, if DHCP server is not available"
509 If the DHCP server is not found after the configured retry
510 count, the call will fail instead of starting over. This
511 can be used to fail over to Link-local IP address
512 configuration if the DHCP server is not available.
514 config BOOTP_NISDOMAIN
515 bool "obtain NIS domain from DHCP"
517 config BOOTP_NTPSERVER
518 bool "obtain NTP server IP address from DHCP"
520 config BOOTP_RANDOM_DELAY
521 bool "Use a (pseudo) random delay between DHCP retries"
524 config BOOTP_RANDOM_ID
525 bool "Generate a (pseudo) random transaction ID"
528 config BOOTP_SEND_HOSTNAME
529 bool "send hostname in DHCP request"
531 config BOOTP_SUBNETMASK
532 bool "obtain subnet mask from DHCP"
534 config BOOTP_TIMEOFFSET
535 bool "obtain from DHCP"
537 config BOOTP_VENDOREX
538 bool "obtain from DHCP"
548 Boot image via network using NFS protocol.
553 Send ICMP ECHO_REQUEST to network host
558 Perform CDP network configuration
563 Synchronize RTC via network
568 Lookup the IP of a hostname
570 config CMD_LINK_LOCAL
573 Acquire a network IP address using the link-local protocol
576 bool "MII register access"
578 Support reading/writing ETH PHY registers via MII bus
587 Enable commands to switch data cache on/off.
592 Run commands and summarize execution time.
595 bool "fuse read/write"
597 eFuse reading and programming support
599 # TODO: rename to CMD_SLEEP
604 Delay execution for some time
609 Access the system timer.
612 bool "getdcr, setdcr, getidcr, setidcr"
616 getdcr - Get an AMCC PPC 4xx DCR's value
617 setdcr - Set an AMCC PPC 4xx DCR's value
618 getidcr - Get a register value via indirect DCR addressing
619 setidcr - Set a register value via indirect DCR addressing
625 This provides basic access to the U-Boot's sound support. The main
626 feature is to play a beep.
628 sound init - set up sound system
629 sound play - play a sound
636 bool "Boot timing and reporting"
638 Enable recording of boot time while booting. To use it, insert
639 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
640 bootstage.h. Only a single entry is recorded for each ID. You can
641 give the entry a name with bootstage_mark_name(). You can also
642 record elapsed time in a particular stage using bootstage_start()
643 before starting and bootstage_accum() when finished. Bootstage will
644 add up all the accumated time and report it.
646 Normally, IDs are defined in bootstage.h but a small number of
647 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
650 Calls to show_boot_progress() wil also result in log entries but
651 these will not have names.
653 config BOOTSTAGE_REPORT
654 bool "Display a detailed boot timing report before booting the OS"
657 Enable output of a boot time report just before the OS is booted.
658 This shows how long it took U-Boot to go through each stage of the
659 boot process. The report looks something like this:
661 Timer summary in microseconds:
664 3,575,678 3,575,678 board_init_f start
665 3,575,695 17 arch_cpu_init A9
666 3,575,777 82 arch_cpu_init done
667 3,659,598 83,821 board_init_r start
668 3,910,375 250,777 main_loop
669 29,916,167 26,005,792 bootm_start
670 30,361,327 445,160 start_kernel
672 config BOOTSTAGE_USER_COUNT
673 hex "Number of boot ID numbers available for user use"
676 This is the number of available user bootstage records.
677 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
678 a new ID will be allocated from this stash. If you exceed
679 the limit, recording will stop.
682 bool "Enable the 'bootstage' command"
685 Add a 'bootstage' command which supports printing a report
686 and un/stashing of bootstage data.
689 bool "Store boot timing information in the OS device tree"
692 Stash the bootstage information in the FDT. A root 'bootstage'
693 node is created with each bootstage id as a child. Each child
694 has a 'name' property and either 'mark' containing the
695 mark time in microsecond, or 'accum' containing the
696 accumulated time for that bootstage id in microseconds.
701 name = "board_init_f";
710 Code in the Linux kernel can find this in /proc/devicetree.
712 config BOOTSTAGE_STASH
713 bool "Stash the boot timing information in memory before booting OS"
716 Some OSes do not support device tree. Bootstage can instead write
717 the boot timing information in a binary format at a given address.
718 This happens through a call to bootstage_stash(), typically in
719 the CPU's cleanup_before_linux() function. You can use the
720 'bootstage stash' and 'bootstage unstash' commands to do this on
723 config BOOTSTAGE_STASH_ADDR
724 hex "Address to stash boot timing information"
727 Provide an address which will not be overwritten by the OS when it
728 starts, so that it can read this information when ready.
730 config BOOTSTAGE_STASH_SIZE
731 hex "Size of boot timing stash region"
734 This should be large enough to hold the bootstage stash. A value of
735 4096 (4KiB) is normally plenty.
739 menu "Power commands"
741 bool "Enable Driver Model PMIC command"
744 This is the pmic command, based on a driver model pmic's API.
745 Command features are unchanged:
746 - list - list pmic devices
747 - pmic dev <id> - show or [set] operating pmic device (NEW)
748 - pmic dump - dump registers
749 - pmic read address - read byte of register at address
750 - pmic write address - write byte to register at address
751 The only one change for this command is 'dev' subcommand.
754 bool "Enable Driver Model REGULATOR command"
755 depends on DM_REGULATOR
757 This command is based on driver model regulator's API.
758 User interface features:
759 - list - list regulator devices
760 - regulator dev <id> - show or [set] operating regulator device
761 - regulator info - print constraints info
762 - regulator status - print operating status
763 - regulator value <val] <-f> - print/[set] voltage value [uV]
764 - regulator current <val> - print/[set] current value [uA]
765 - regulator mode <id> - print/[set] operating mode id
766 - regulator enable - enable the regulator output
767 - regulator disable - disable the regulator output
769 The '-f' (force) option can be used for set the value which exceeds
770 the limits, which are found in device-tree and are kept in regulator's
771 uclass platdata structure.
775 menu "Security commands"
777 bool "Enable the 'tpm' command"
780 This provides a means to talk to a TPM from the command line. A wide
781 range of commands if provided - see 'tpm help' for details. The
782 command requires a suitable TPM on your board and the correct driver
786 bool "Enable the 'tpm test' command"
789 This provides a a series of tests to confirm that the TPM is working
790 correctly. The tests cover initialisation, non-volatile RAM, extend,
791 global lock and checking that timing is within expectations. The
792 tests pass correctly on Infineon TPMs but may need to be adjusted
799 menu "Environment configuration settings"
802 prompt "Select environment non-volatile storage"
804 config ENV_IS_NOWHERE
805 bool "do not store environment"
807 config ENV_IS_IN_NAND
808 bool "store environment in NAND"
812 bool "store environment in MMC"
815 config ENV_IS_IN_SPI_FLASH
816 bool "store environment in SPI flash"
822 menu "Display configuration"
827 config DISPLAY_BOARDINFO
828 bool "Display board info"