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
346 This provides basic access to the U-Boot's sound support. The main
347 feature is to play a beep.
349 sound init - set up sound system
350 sound play - play a sound
357 bool "Boot timing and reporting"
359 Enable recording of boot time while booting. To use it, insert
360 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
361 bootstage.h. Only a single entry is recorded for each ID. You can
362 give the entry a name with bootstage_mark_name(). You can also
363 record elapsed time in a particular stage using bootstage_start()
364 before starting and bootstage_accum() when finished. Bootstage will
365 add up all the accumated time and report it.
367 Normally, IDs are defined in bootstage.h but a small number of
368 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
371 Calls to show_boot_progress() wil also result in log entries but
372 these will not have names.
374 config BOOTSTAGE_REPORT
375 bool "Display a detailed boot timing report before booting the OS"
378 Enable output of a boot time report just before the OS is booted.
379 This shows how long it took U-Boot to go through each stage of the
380 boot process. The report looks something like this:
382 Timer summary in microseconds:
385 3,575,678 3,575,678 board_init_f start
386 3,575,695 17 arch_cpu_init A9
387 3,575,777 82 arch_cpu_init done
388 3,659,598 83,821 board_init_r start
389 3,910,375 250,777 main_loop
390 29,916,167 26,005,792 bootm_start
391 30,361,327 445,160 start_kernel
393 config BOOTSTAGE_USER_COUNT
394 hex "Number of boot ID numbers available for user use"
397 This is the number of available user bootstage records.
398 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
399 a new ID will be allocated from this stash. If you exceed
400 the limit, recording will stop.
403 bool "Enable the 'bootstage' command"
406 Add a 'bootstage' command which supports printing a report
407 and un/stashing of bootstage data.
410 bool "Store boot timing information in the OS device tree"
413 Stash the bootstage information in the FDT. A root 'bootstage'
414 node is created with each bootstage id as a child. Each child
415 has a 'name' property and either 'mark' containing the
416 mark time in microsecond, or 'accum' containing the
417 accumulated time for that bootstage id in microseconds.
422 name = "board_init_f";
431 Code in the Linux kernel can find this in /proc/devicetree.
433 config BOOTSTAGE_STASH
434 bool "Stash the boot timing information in memory before booting OS"
437 Some OSes do not support device tree. Bootstage can instead write
438 the boot timing information in a binary format at a given address.
439 This happens through a call to bootstage_stash(), typically in
440 the CPU's cleanup_before_linux() function. You can use the
441 'bootstage stash' and 'bootstage unstash' commands to do this on
444 config BOOTSTAGE_STASH_ADDR
445 hex "Address to stash boot timing information"
448 Provide an address which will not be overwritten by the OS when it
449 starts, so that it can read this information when ready.
451 config BOOTSTAGE_STASH_SIZE
452 hex "Size of boot timing stash region"
455 This should be large enough to hold the bootstage stash. A value of
456 4096 (4KiB) is normally plenty.