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.
32 Print console devices and information.
37 Print information about available CPUs. This normally shows the
38 number of CPUs, type (e.g. manufacturer, architecture, product or
39 internal name) and clock frequency. Other information may be
40 available depending on the CPU driver.
45 Print GPL license text
54 Run the command stored in the environment "bootcmd", i.e.
55 "bootd" does the same thing as "run bootcmd".
61 Boot an application image from the memory.
67 Start an application at a given address.
72 Run the command in the given environment variable.
77 Print header information for application image.
82 List all images found in flash
87 Extract a part of a multi-image.
91 menu "Environment commands"
108 Edit environment variable.
113 Run the command in the given environment variable.
117 menu "Memory commands"
120 bool "md, mm, nm, mw, cp, cmp, base, loop"
124 mm - memory modify (auto-incrementing address)
125 nm - memory modify (constant address)
126 mw - memory write (fill)
129 base - print or set address offset
130 loop - initinite loop on address range
141 Infinite write loop on address range
146 Simple RAM read/write test.
151 mdc - memory display cyclic
152 mwc - memory write cyclic
157 Display memory information.
161 menu "Device access commands"
164 bool "dm - Access to driver model information"
168 Provides access to driver model data structures and information,
169 such as a list of devices, list of uclasses and the state of each
170 device (e.g. activated). This is not required for operation, but
171 can be useful to see the state of driver model for debugging or
175 bool "demo - Demonstration commands for driver model"
178 Provides a 'demo' command which can be used to play around with
179 driver model. To use this properly you will need to enable one or
180 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
181 Otherwise you will always get an empty list of devices. The demo
182 devices are defined in the sandbox device tree, so the easiest
183 option is to use sandbox and pass the -d point to sandbox's
189 Load a binary file over serial line.
194 Load an S-Record file over serial line
197 bool "flinfo, erase, protect"
200 flinfo - print FLASH memory information
202 protect - enable or disable FLASH write protection
205 depends on FLASH_CFI_DRIVER
208 ARM Ltd reference designs flash partition access
238 menu "Shell scripting commands"
248 Return true/false on integer compare.
253 Run script from memory
258 Evaluate boolean and math expressions and store the result in an env
260 Also supports loading the value at a memory location into a variable.
261 If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
265 menu "Network commands"
268 bool "bootp, tftpboot"
271 bootp - boot image via network using BOOTP/TFTP protocol
272 tftpboot - boot image via network using TFTP protocol
277 TFTP put command, for uploading files to a server
282 Act as a TFTP server and boot the first received file
287 Boot image via network using RARP/TFTP protocol
292 Boot image via network using DHCP/TFTP protocol
297 Boot image via network using NFS protocol.
302 Send ICMP ECHO_REQUEST to network host
307 Perform CDP network configuration
312 Synchronize RTC via network
317 Lookup the IP of a hostname
319 config CMD_LINK_LOCAL
322 Acquire a network IP address using the link-local protocol
331 Run commands and summarize execution time.
333 # TODO: rename to CMD_SLEEP
337 Delay execution for some time
342 Access the system timer.
345 bool "getdcr, setdcr, getidcr, setidcr"
348 getdcr - Get an AMCC PPC 4xx DCR's value
349 setdcr - Set an AMCC PPC 4xx DCR's value
350 getidcr - Get a register value via indirect DCR addressing
351 setidcr - Set a register value via indirect DCR addressing
357 This provides basic access to the U-Boot's sound support. The main
358 feature is to play a beep.
360 sound init - set up sound system
361 sound play - play a sound
368 bool "Boot timing and reporting"
370 Enable recording of boot time while booting. To use it, insert
371 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
372 bootstage.h. Only a single entry is recorded for each ID. You can
373 give the entry a name with bootstage_mark_name(). You can also
374 record elapsed time in a particular stage using bootstage_start()
375 before starting and bootstage_accum() when finished. Bootstage will
376 add up all the accumated time and report it.
378 Normally, IDs are defined in bootstage.h but a small number of
379 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
382 Calls to show_boot_progress() wil also result in log entries but
383 these will not have names.
385 config BOOTSTAGE_REPORT
386 bool "Display a detailed boot timing report before booting the OS"
389 Enable output of a boot time report just before the OS is booted.
390 This shows how long it took U-Boot to go through each stage of the
391 boot process. The report looks something like this:
393 Timer summary in microseconds:
396 3,575,678 3,575,678 board_init_f start
397 3,575,695 17 arch_cpu_init A9
398 3,575,777 82 arch_cpu_init done
399 3,659,598 83,821 board_init_r start
400 3,910,375 250,777 main_loop
401 29,916,167 26,005,792 bootm_start
402 30,361,327 445,160 start_kernel
404 config BOOTSTAGE_USER_COUNT
405 hex "Number of boot ID numbers available for user use"
408 This is the number of available user bootstage records.
409 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
410 a new ID will be allocated from this stash. If you exceed
411 the limit, recording will stop.
414 bool "Enable the 'bootstage' command"
417 Add a 'bootstage' command which supports printing a report
418 and un/stashing of bootstage data.
421 bool "Store boot timing information in the OS device tree"
424 Stash the bootstage information in the FDT. A root 'bootstage'
425 node is created with each bootstage id as a child. Each child
426 has a 'name' property and either 'mark' containing the
427 mark time in microsecond, or 'accum' containing the
428 accumulated time for that bootstage id in microseconds.
433 name = "board_init_f";
442 Code in the Linux kernel can find this in /proc/devicetree.
444 config BOOTSTAGE_STASH
445 bool "Stash the boot timing information in memory before booting OS"
448 Some OSes do not support device tree. Bootstage can instead write
449 the boot timing information in a binary format at a given address.
450 This happens through a call to bootstage_stash(), typically in
451 the CPU's cleanup_before_linux() function. You can use the
452 'bootstage stash' and 'bootstage unstash' commands to do this on
455 config BOOTSTAGE_STASH_ADDR
456 hex "Address to stash boot timing information"
459 Provide an address which will not be overwritten by the OS when it
460 starts, so that it can read this information when ready.
462 config BOOTSTAGE_STASH_SIZE
463 hex "Size of boot timing stash region"
466 This should be large enough to hold the bootstage stash. A value of
467 4096 (4KiB) is normally plenty.
471 menu "Power commands"
473 bool "Enable Driver Model PMIC command"
476 This is the pmic command, based on a driver model pmic's API.
477 Command features are unchanged:
478 - list - list pmic devices
479 - pmic dev <id> - show or [set] operating pmic device (NEW)
480 - pmic dump - dump registers
481 - pmic read address - read byte of register at address
482 - pmic write address - write byte to register at address
483 The only one change for this command is 'dev' subcommand.
486 bool "Enable Driver Model REGULATOR command"
487 depends on DM_REGULATOR
489 This command is based on driver model regulator's API.
490 User interface features:
491 - list - list regulator devices
492 - regulator dev <id> - show or [set] operating regulator device
493 - regulator info - print constraints info
494 - regulator status - print operating status
495 - regulator value <val] <-f> - print/[set] voltage value [uV]
496 - regulator current <val> - print/[set] current value [uA]
497 - regulator mode <id> - print/[set] operating mode id
498 - regulator enable - enable the regulator output
499 - regulator disable - disable the regulator output
501 The '-f' (force) option can be used for set the value which exceeds
502 the limits, which are found in device-tree and are kept in regulator's
503 uclass platdata structure.