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 GPL license text
46 Run the command stored in the environment "bootcmd", i.e.
47 "bootd" does the same thing as "run bootcmd".
53 Boot an application image from the memory.
59 Start an application at a given address.
64 Run the command in the given environment variable.
69 Print header information for application image.
74 List all images found in flash
79 Extract a part of a multi-image.
83 menu "Environment commands"
100 Edit environment variable.
105 Run the command in the given environment variable.
109 menu "Memory commands"
112 bool "md, mm, nm, mw, cp, cmp, base, loop"
116 mm - memory modify (auto-incrementing address)
117 nm - memory modify (constant address)
118 mw - memory write (fill)
121 base - print or set address offset
122 loop - initinite loop on address range
133 Infinite write loop on address range
138 Simple RAM read/write test.
143 mdc - memory display cyclic
144 mwc - memory write cyclic
149 Display memory information.
153 menu "Device access commands"
156 bool "dm - Access to driver model information"
160 Provides access to driver model data structures and information,
161 such as a list of devices, list of uclasses and the state of each
162 device (e.g. activated). This is not required for operation, but
163 can be useful to see the state of driver model for debugging or
167 bool "demo - Demonstration commands for driver model"
170 Provides a 'demo' command which can be used to play around with
171 driver model. To use this properly you will need to enable one or
172 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
173 Otherwise you will always get an empty list of devices. The demo
174 devices are defined in the sandbox device tree, so the easiest
175 option is to use sandbox and pass the -d point to sandbox's
181 Load a binary file over serial line.
186 Load an S-Record file over serial line
189 bool "flinfo, erase, protect"
192 flinfo - print FLASH memory information
194 protect - enable or disable FLASH write protection
197 depends on FLASH_CFI_DRIVER
200 ARM Ltd reference designs flash partition access
230 menu "Shell scripting commands"
240 Return true/false on integer compare.
245 Run script from memory
249 menu "Network commands"
252 bool "bootp, tftpboot"
255 bootp - boot image via network using BOOTP/TFTP protocol
256 tftpboot - boot image via network using TFTP protocol
261 TFTP put command, for uploading files to a server
266 Act as a TFTP server and boot the first received file
271 Boot image via network using RARP/TFTP protocol
276 Boot image via network using DHCP/TFTP protocol
281 Boot image via network using NFS protocol.
286 Send ICMP ECHO_REQUEST to network host
291 Perform CDP network configuration
296 Synchronize RTC via network
301 Lookup the IP of a hostname
306 Lookup the IP of a hostname
308 config CMD_LINK_LOCAL
311 Acquire a network IP address using the link-local protocol
320 Run commands and summarize execution time.
322 # TODO: rename to CMD_SLEEP
326 Delay execution for some time
331 Access the system timer.
334 bool "getdcr, setdcr, getidcr, setidcr"
337 getdcr - Get an AMCC PPC 4xx DCR's value
338 setdcr - Set an AMCC PPC 4xx DCR's value
339 getidcr - Get a register value via indirect DCR addressing
340 setidcr - Set a register value via indirect DCR addressing
347 bool "Boot timing and reporting"
349 Enable recording of boot time while booting. To use it, insert
350 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
351 bootstage.h. Only a single entry is recorded for each ID. You can
352 give the entry a name with bootstage_mark_name(). You can also
353 record elapsed time in a particular stage using bootstage_start()
354 before starting and bootstage_accum() when finished. Bootstage will
355 add up all the accumated time and report it.
357 Normally, IDs are defined in bootstage.h but a small number of
358 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
361 Calls to show_boot_progress() wil also result in log entries but
362 these will not have names.
364 config BOOTSTAGE_REPORT
365 bool "Display a detailed boot timing report before booting the OS"
368 Enable output of a boot time report just before the OS is booted.
369 This shows how long it took U-Boot to go through each stage of the
370 boot process. The report looks something like this:
372 Timer summary in microseconds:
375 3,575,678 3,575,678 board_init_f start
376 3,575,695 17 arch_cpu_init A9
377 3,575,777 82 arch_cpu_init done
378 3,659,598 83,821 board_init_r start
379 3,910,375 250,777 main_loop
380 29,916,167 26,005,792 bootm_start
381 30,361,327 445,160 start_kernel
383 config BOOTSTAGE_USER_COUNT
384 hex "Number of boot ID numbers available for user use"
387 This is the number of available user bootstage records.
388 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
389 a new ID will be allocated from this stash. If you exceed
390 the limit, recording will stop.
393 bool "Enable the 'bootstage' command"
396 Add a 'bootstage' command which supports printing a report
397 and un/stashing of bootstage data.
400 bool "Store boot timing information in the OS device tree"
403 Stash the bootstage information in the FDT. A root 'bootstage'
404 node is created with each bootstage id as a child. Each child
405 has a 'name' property and either 'mark' containing the
406 mark time in microsecond, or 'accum' containing the
407 accumulated time for that bootstage id in microseconds.
412 name = "board_init_f";
421 Code in the Linux kernel can find this in /proc/devicetree.
423 config BOOTSTAGE_STASH
424 bool "Stash the boot timing information in memory before booting OS"
427 Some OSes do not support device tree. Bootstage can instead write
428 the boot timing information in a binary format at a given address.
429 This happens through a call to bootstage_stash(), typically in
430 the CPU's cleanup_before_linux() function. You can use the
431 'bootstage stash' and 'bootstage unstash' commands to do this on
434 config BOOTSTAGE_STASH_ADDR
435 hex "Address to stash boot timing information"
438 Provide an address which will not be overwritten by the OS when it
439 starts, so that it can read this information when ready.
441 config BOOTSTAGE_STASH_SIZE
442 hex "Size of boot timing stash region"
445 This should be large enough to hold the bootstage stash. A value of
446 4096 (4KiB) is normally plenty.