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"
32 This option enables stopping (aborting) of the automatic
33 boot feature only by issuing a specific input key or
34 string. If not enabled, any input key will abort the
35 U-Boot automatic booting process and bring the device
36 to the U-Boot prompt for user input.
38 config AUTOBOOT_PROMPT
39 string "Autoboot stop prompt"
40 depends on AUTOBOOT_KEYED
41 default "Autoboot in %d seconds\\n"
43 This string is displayed before the boot delay selected by
44 CONFIG_BOOTDELAY starts. If it is not defined there is no
45 output indicating that autoboot is in progress.
47 Note that this define is used as the (only) argument to a
48 printf() call, so it may contain '%' format specifications,
49 provided that it also includes, sepearated by commas exactly
50 like in a printf statement, the required arguments. It is
51 the responsibility of the user to select only such arguments
52 that are valid in the given context.
54 config AUTOBOOT_ENCRYPTION
55 bool "Enable encryption in autoboot stopping"
56 depends on AUTOBOOT_KEYED
58 config AUTOBOOT_DELAY_STR
59 string "Delay autobooting via specific input key / string"
60 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
62 This option delays the automatic boot feature by issuing
63 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
64 or the environment variable "bootdelaykey" is specified
65 and this string is received from console input before
66 autoboot starts booting, U-Boot gives a command prompt. The
67 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
68 used, otherwise it never times out.
70 config AUTOBOOT_STOP_STR
71 string "Stop autobooting via specific input key / string"
72 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
74 This option enables stopping (aborting) of the automatic
75 boot feature only by issuing a specific input key or
76 string. If CONFIG_AUTOBOOT_STOP_STR or the environment
77 variable "bootstopkey" is specified and this string is
78 received from console input before autoboot starts booting,
79 U-Boot gives a command prompt. The U-Boot prompt never
80 times out, even if CONFIG_BOOT_RETRY_TIME is used.
82 config AUTOBOOT_KEYED_CTRLC
83 bool "Enable Ctrl-C autoboot interruption"
84 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
86 This option allows for the boot sequence to be interrupted
87 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
88 Setting this variable provides an escape sequence from the
89 limited "password" strings.
91 config AUTOBOOT_STOP_STR_SHA256
92 string "Stop autobooting via SHA256 encrypted password"
93 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
95 This option adds the feature to only stop the autobooting,
96 and therefore boot into the U-Boot prompt, when the input
97 string / password matches a values that is encypted via
98 a SHA256 hash and saved in the environment.
116 Print console devices and information.
121 Print information about available CPUs. This normally shows the
122 number of CPUs, type (e.g. manufacturer, architecture, product or
123 internal name) and clock frequency. Other information may be
124 available depending on the CPU driver.
129 Print GPL license text
139 Run the command stored in the environment "bootcmd", i.e.
140 "bootd" does the same thing as "run bootcmd".
146 Boot an application image from the memory.
152 Boot a Linux kernel zImage.
157 Boot a WindowsCE image.
163 Start an application at a given address.
169 Run the command in the given environment variable.
175 Print header information for application image.
179 default !SYS_NO_FLASH
181 List all images found in flash
187 Extract a part of a multi-image.
194 bool "Enable FDT commands"
196 config OF_BOARD_SETUP
197 bool "Support DT modifications by board code"
202 menu "Environment commands"
220 Edit environment variable.
226 Save all environment variables into the compiled-in persistent
229 config CMD_ENV_EXISTS
233 Check if a variable is defined in the environment for use in
236 config UBOOT_IGNORE_ENV
239 Ignore non-volatile environment settings and use default
244 menu "Memory commands"
247 bool "md, mm, nm, mw, cp, cmp, base, loop"
252 mm - memory modify (auto-incrementing address)
253 nm - memory modify (constant address)
254 mw - memory write (fill)
257 base - print or set address offset
258 loop - initinite loop on address range
269 Infinite write loop on address range
274 Simple RAM read/write test.
279 mdc - memory display cyclic
280 mwc - memory write cyclic
285 Display memory information.
289 menu "Device access commands"
292 bool "dm - Access to driver model information"
296 Provides access to driver model data structures and information,
297 such as a list of devices, list of uclasses and the state of each
298 device (e.g. activated). This is not required for operation, but
299 can be useful to see the state of driver model for debugging or
303 bool "demo - Demonstration commands for driver model"
306 Provides a 'demo' command which can be used to play around with
307 driver model. To use this properly you will need to enable one or
308 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
309 Otherwise you will always get an empty list of devices. The demo
310 devices are defined in the sandbox device tree, so the easiest
311 option is to use sandbox and pass the -d point to sandbox's
318 Load a binary file over serial line.
324 Load an S-Record file over serial line
327 bool "flinfo, erase, protect"
328 default y if !SYS_NO_FLASH
331 flinfo - print FLASH memory information
333 protect - enable or disable FLASH write protection
336 depends on FLASH_CFI_DRIVER
339 ARM Ltd reference designs flash partition access
342 bool "MTD device support"
345 bool "MTD partitioning support"
347 depends on MTD_DEVICE && (CMD_FLASH || CMD_NAND)
354 config CMD_NAND_TRIMFFS
355 bool "Enable nand write.trimffs command"
357 Enable command to leave page sized runs of 0xff patterns in
358 erased state rather than overwriting them. This is required
359 for using NAND flash filesystems on NAND controllers with
360 a non-0xff ECC code for all 0xff data.
401 menu "Shell scripting commands"
413 Return true/false on integer compare.
419 Run script from memory
425 Evaluate boolean and math expressions and store the result in an env
427 Also supports loading the value at a memory location into a variable.
428 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
432 menu "Network commands"
435 bool "bootp, tftpboot"
441 bootp - boot image via network using BOOTP/TFTP protocol
442 tftpboot - boot image via network using TFTP protocol
447 TFTP put command, for uploading files to a server
452 Act as a TFTP server and boot the first received file
457 Boot image via network using RARP/TFTP protocol
462 Boot image via network using DHCP/TFTP protocol
468 config BOOTP_BOOTFILESIZE
469 bool "obtain bootfile size from DHCP"
471 config BOOTP_BOOTPATH
472 bool "obtain bootfile path from DHCP"
475 bool "obtain DNS server IP address from DHCP"
478 bool "store secondary DNS IP address in dnsip2"
481 bool "obtain gateway IP address from DHCP"
483 config BOOTP_ID_CACHE_SIZE
484 int "DHCP transaction ID cache size"
487 BOOTP packets are uniquely identified using a 32-bit ID. The
488 server will copy the ID from client requests to responses and
489 U-Boot will use this to determine if it is the destination of
490 an incoming response. Some servers will check that addresses
491 aren't in use before handing them out (usually using an ARP
492 ping) and therefore take up to a few hundred milliseconds to
493 respond. Network congestion may also influence the time it
494 takes for a response to make it back to the client. If that
495 time is too long, U-Boot will retransmit requests. In order
496 to allow earlier responses to still be accepted after these
497 retransmissions, U-Boot's BOOTP client keeps a small cache of
498 IDs. The CONFIG_BOOTP_ID_CACHE_SIZE controls the size of this
499 cache. The default is to keep IDs for up to four outstanding
500 requests. Increasing this will allow U-Boot to accept offers
501 from a BOOTP client in networks with unusually high latency.
503 config BOOTP_MAY_FAIL
504 bool "Do not start over, if DHCP server is not available"
506 If the DHCP server is not found after the configured retry
507 count, the call will fail instead of starting over. This
508 can be used to fail over to Link-local IP address
509 configuration if the DHCP server is not available.
511 config BOOTP_NISDOMAIN
512 bool "obtain NIS domain from DHCP"
514 config BOOTP_NTPSERVER
515 bool "obtain NTP server IP address from DHCP"
517 config BOOTP_RANDOM_DELAY
518 bool "Use a (pseudo) random delay between DHCP retries"
521 config BOOTP_RANDOM_ID
522 bool "Generate a (pseudo) random transaction ID"
525 config BOOTP_SEND_HOSTNAME
526 bool "send hostname in DHCP request"
528 config BOOTP_SUBNETMASK
529 bool "obtain subnet mask from DHCP"
531 config BOOTP_TIMEOFFSET
532 bool "obtain from DHCP"
534 config BOOTP_VENDOREX
535 bool "obtain from DHCP"
545 Boot image via network using NFS protocol.
550 Send ICMP ECHO_REQUEST to network host
555 Perform CDP network configuration
560 Synchronize RTC via network
565 Lookup the IP of a hostname
567 config CMD_LINK_LOCAL
570 Acquire a network IP address using the link-local protocol
573 bool "MII register access"
575 Support reading/writing ETH PHY registers via MII bus
584 Enable commands to switch data cache on/off.
589 Run commands and summarize execution time.
592 bool "fuse read/write"
594 eFuse reading and programming support
596 # TODO: rename to CMD_SLEEP
601 Delay execution for some time
606 Access the system timer.
609 bool "getdcr, setdcr, getidcr, setidcr"
613 getdcr - Get an AMCC PPC 4xx DCR's value
614 setdcr - Set an AMCC PPC 4xx DCR's value
615 getidcr - Get a register value via indirect DCR addressing
616 setidcr - Set a register value via indirect DCR addressing
622 This provides basic access to the U-Boot's sound support. The main
623 feature is to play a beep.
625 sound init - set up sound system
626 sound play - play a sound
633 bool "Boot timing and reporting"
635 Enable recording of boot time while booting. To use it, insert
636 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
637 bootstage.h. Only a single entry is recorded for each ID. You can
638 give the entry a name with bootstage_mark_name(). You can also
639 record elapsed time in a particular stage using bootstage_start()
640 before starting and bootstage_accum() when finished. Bootstage will
641 add up all the accumated time and report it.
643 Normally, IDs are defined in bootstage.h but a small number of
644 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
647 Calls to show_boot_progress() wil also result in log entries but
648 these will not have names.
650 config BOOTSTAGE_REPORT
651 bool "Display a detailed boot timing report before booting the OS"
654 Enable output of a boot time report just before the OS is booted.
655 This shows how long it took U-Boot to go through each stage of the
656 boot process. The report looks something like this:
658 Timer summary in microseconds:
661 3,575,678 3,575,678 board_init_f start
662 3,575,695 17 arch_cpu_init A9
663 3,575,777 82 arch_cpu_init done
664 3,659,598 83,821 board_init_r start
665 3,910,375 250,777 main_loop
666 29,916,167 26,005,792 bootm_start
667 30,361,327 445,160 start_kernel
669 config BOOTSTAGE_USER_COUNT
670 hex "Number of boot ID numbers available for user use"
673 This is the number of available user bootstage records.
674 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
675 a new ID will be allocated from this stash. If you exceed
676 the limit, recording will stop.
679 bool "Enable the 'bootstage' command"
682 Add a 'bootstage' command which supports printing a report
683 and un/stashing of bootstage data.
686 bool "Store boot timing information in the OS device tree"
689 Stash the bootstage information in the FDT. A root 'bootstage'
690 node is created with each bootstage id as a child. Each child
691 has a 'name' property and either 'mark' containing the
692 mark time in microsecond, or 'accum' containing the
693 accumulated time for that bootstage id in microseconds.
698 name = "board_init_f";
707 Code in the Linux kernel can find this in /proc/devicetree.
709 config BOOTSTAGE_STASH
710 bool "Stash the boot timing information in memory before booting OS"
713 Some OSes do not support device tree. Bootstage can instead write
714 the boot timing information in a binary format at a given address.
715 This happens through a call to bootstage_stash(), typically in
716 the CPU's cleanup_before_linux() function. You can use the
717 'bootstage stash' and 'bootstage unstash' commands to do this on
720 config BOOTSTAGE_STASH_ADDR
721 hex "Address to stash boot timing information"
724 Provide an address which will not be overwritten by the OS when it
725 starts, so that it can read this information when ready.
727 config BOOTSTAGE_STASH_SIZE
728 hex "Size of boot timing stash region"
731 This should be large enough to hold the bootstage stash. A value of
732 4096 (4KiB) is normally plenty.
736 menu "Power commands"
738 bool "Enable Driver Model PMIC command"
741 This is the pmic command, based on a driver model pmic's API.
742 Command features are unchanged:
743 - list - list pmic devices
744 - pmic dev <id> - show or [set] operating pmic device (NEW)
745 - pmic dump - dump registers
746 - pmic read address - read byte of register at address
747 - pmic write address - write byte to register at address
748 The only one change for this command is 'dev' subcommand.
751 bool "Enable Driver Model REGULATOR command"
752 depends on DM_REGULATOR
754 This command is based on driver model regulator's API.
755 User interface features:
756 - list - list regulator devices
757 - regulator dev <id> - show or [set] operating regulator device
758 - regulator info - print constraints info
759 - regulator status - print operating status
760 - regulator value <val] <-f> - print/[set] voltage value [uV]
761 - regulator current <val> - print/[set] current value [uA]
762 - regulator mode <id> - print/[set] operating mode id
763 - regulator enable - enable the regulator output
764 - regulator disable - disable the regulator output
766 The '-f' (force) option can be used for set the value which exceeds
767 the limits, which are found in device-tree and are kept in regulator's
768 uclass platdata structure.
772 menu "Security commands"
774 bool "Enable the 'tpm' command"
777 This provides a means to talk to a TPM from the command line. A wide
778 range of commands if provided - see 'tpm help' for details. The
779 command requires a suitable TPM on your board and the correct driver
783 bool "Enable the 'tpm test' command"
786 This provides a a series of tests to confirm that the TPM is working
787 correctly. The tests cover initialisation, non-volatile RAM, extend,
788 global lock and checking that timing is within expectations. The
789 tests pass correctly on Infineon TPMs but may need to be adjusted
796 menu "Environment configuration settings"
799 prompt "Select environment non-volatile storage"
801 config ENV_IS_NOWHERE
802 bool "do not store environment"
804 config ENV_IS_IN_NAND
805 bool "store environment in NAND"
809 bool "store environment in MMC"
812 config ENV_IS_IN_SPI_FLASH
813 bool "store environment in SPI flash"
819 menu "Display configuration"
824 config DISPLAY_BOARDINFO
825 bool "Display board info"