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
257 menu "Network commands"
260 bool "bootp, tftpboot"
263 bootp - boot image via network using BOOTP/TFTP protocol
264 tftpboot - boot image via network using TFTP protocol
269 TFTP put command, for uploading files to a server
274 Act as a TFTP server and boot the first received file
279 Boot image via network using RARP/TFTP protocol
284 Boot image via network using DHCP/TFTP protocol
289 Boot image via network using NFS protocol.
294 Send ICMP ECHO_REQUEST to network host
299 Perform CDP network configuration
304 Synchronize RTC via network
309 Lookup the IP of a hostname
311 config CMD_LINK_LOCAL
314 Acquire a network IP address using the link-local protocol
323 Run commands and summarize execution time.
325 # TODO: rename to CMD_SLEEP
329 Delay execution for some time
334 Access the system timer.
337 bool "getdcr, setdcr, getidcr, setidcr"
340 getdcr - Get an AMCC PPC 4xx DCR's value
341 setdcr - Set an AMCC PPC 4xx DCR's value
342 getidcr - Get a register value via indirect DCR addressing
343 setidcr - Set a register value via indirect DCR addressing
349 This provides basic access to the U-Boot's sound support. The main
350 feature is to play a beep.
352 sound init - set up sound system
353 sound play - play a sound
360 bool "Boot timing and reporting"
362 Enable recording of boot time while booting. To use it, insert
363 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
364 bootstage.h. Only a single entry is recorded for each ID. You can
365 give the entry a name with bootstage_mark_name(). You can also
366 record elapsed time in a particular stage using bootstage_start()
367 before starting and bootstage_accum() when finished. Bootstage will
368 add up all the accumated time and report it.
370 Normally, IDs are defined in bootstage.h but a small number of
371 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
374 Calls to show_boot_progress() wil also result in log entries but
375 these will not have names.
377 config BOOTSTAGE_REPORT
378 bool "Display a detailed boot timing report before booting the OS"
381 Enable output of a boot time report just before the OS is booted.
382 This shows how long it took U-Boot to go through each stage of the
383 boot process. The report looks something like this:
385 Timer summary in microseconds:
388 3,575,678 3,575,678 board_init_f start
389 3,575,695 17 arch_cpu_init A9
390 3,575,777 82 arch_cpu_init done
391 3,659,598 83,821 board_init_r start
392 3,910,375 250,777 main_loop
393 29,916,167 26,005,792 bootm_start
394 30,361,327 445,160 start_kernel
396 config BOOTSTAGE_USER_COUNT
397 hex "Number of boot ID numbers available for user use"
400 This is the number of available user bootstage records.
401 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
402 a new ID will be allocated from this stash. If you exceed
403 the limit, recording will stop.
406 bool "Enable the 'bootstage' command"
409 Add a 'bootstage' command which supports printing a report
410 and un/stashing of bootstage data.
413 bool "Store boot timing information in the OS device tree"
416 Stash the bootstage information in the FDT. A root 'bootstage'
417 node is created with each bootstage id as a child. Each child
418 has a 'name' property and either 'mark' containing the
419 mark time in microsecond, or 'accum' containing the
420 accumulated time for that bootstage id in microseconds.
425 name = "board_init_f";
434 Code in the Linux kernel can find this in /proc/devicetree.
436 config BOOTSTAGE_STASH
437 bool "Stash the boot timing information in memory before booting OS"
440 Some OSes do not support device tree. Bootstage can instead write
441 the boot timing information in a binary format at a given address.
442 This happens through a call to bootstage_stash(), typically in
443 the CPU's cleanup_before_linux() function. You can use the
444 'bootstage stash' and 'bootstage unstash' commands to do this on
447 config BOOTSTAGE_STASH_ADDR
448 hex "Address to stash boot timing information"
451 Provide an address which will not be overwritten by the OS when it
452 starts, so that it can read this information when ready.
454 config BOOTSTAGE_STASH_SIZE
455 hex "Size of boot timing stash region"
458 This should be large enough to hold the bootstage stash. A value of
459 4096 (4KiB) is normally plenty.