Kconfig 17.4 KB
Newer Older
1 2
menu "Command line interface"

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
config HUSH_PARSER
	bool "Use hush shell"
	select SYS_HUSH_PARSER
	help
	  This option enables the "hush" shell (from Busybox) as command line
	  interpreter, thus enabling powerful command line syntax like
	  if...then...else...fi conditionals or `&&' and '||'
	  constructs ("shell scripts").

	  If disabled, you get the old, much simpler behaviour with a somewhat
	  smaller memory footprint.

config SYS_HUSH_PARSER
	bool
	help
	  Backward compatibility.

20 21 22 23 24 25 26
config SYS_PROMPT
	string "Shell prompt"
	default "=> "
	help
	  This string is displayed in the command line to the left of the
	  cursor.

27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
menu "Autoboot options"

config AUTOBOOT_KEYED
	bool "Stop autobooting via specific input key / string"
	default n
	help
	  This option enables stopping (aborting) of the automatic
	  boot feature only by issuing a specific input key or
	  string. If not enabled, any input key will abort the
	  U-Boot automatic booting process and bring the device
	  to the U-Boot prompt for user input.

config AUTOBOOT_PROMPT
	string "Autoboot stop prompt"
	depends on AUTOBOOT_KEYED
	default "Autoboot in %d seconds\\n"
	help
	  This string is displayed before the boot delay selected by
	  CONFIG_BOOTDELAY starts. If it is not defined	there is no
	  output indicating that autoboot is in progress.

	  Note that this define is used as the (only) argument to a
	  printf() call, so it may contain '%' format specifications,
	  provided that it also includes, sepearated by commas exactly
	  like in a printf statement, the required arguments. It is
	  the responsibility of the user to select only such arguments
	  that are valid in the given context.

55 56 57 58 59
config AUTOBOOT_ENCRYPTION
	bool "Enable encryption in autoboot stopping"
	depends on AUTOBOOT_KEYED
	default n

60 61
config AUTOBOOT_DELAY_STR
	string "Delay autobooting via specific input key / string"
62
	depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
63 64 65 66 67 68 69 70 71 72 73
	help
	  This option delays the automatic boot feature by issuing
	  a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
	  or the environment variable "bootdelaykey" is specified
	  and this string is received from console input before
	  autoboot starts booting, U-Boot gives a command prompt. The
	  U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
	  used, otherwise it never times out.

config AUTOBOOT_STOP_STR
	string "Stop autobooting via specific input key / string"
74
	depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
75 76 77 78 79 80 81 82 83 84 85
	help
	  This option enables stopping (aborting) of the automatic
	  boot feature only by issuing a specific input key or
	  string. If CONFIG_AUTOBOOT_STOP_STR or the environment
	  variable "bootstopkey" is specified and this string is
	  received from console input before autoboot starts booting,
	  U-Boot gives a command prompt. The U-Boot prompt never
	  times out, even if CONFIG_BOOT_RETRY_TIME is used.

config AUTOBOOT_KEYED_CTRLC
	bool "Enable Ctrl-C autoboot interruption"
86
	depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
87 88 89 90 91 92 93
	default n
	help
	  This option allows for the boot sequence to be interrupted
	  by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
	  Setting this variable	provides an escape sequence from the
	  limited "password" strings.

94 95 96 97 98 99 100 101 102
config AUTOBOOT_STOP_STR_SHA256
	string "Stop autobooting via SHA256 encrypted password"
	depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
	help
	  This option adds the feature to only stop the autobooting,
	  and therefore boot into the U-Boot prompt, when the input
	  string / password matches a values that is encypted via
	  a SHA256 hash and saved in the environment.

103 104
endmenu

105 106 107 108 109 110
comment "Commands"

menu "Info commands"

config CMD_BDI
	bool "bdinfo"
111
	default y
112 113 114 115 116
	help
	  Print board info

config CMD_CONSOLE
	bool "coninfo"
117
	default y
118 119 120
	help
	  Print console devices and information.

121 122 123 124 125 126 127 128
config CMD_CPU
	bool "cpu"
	help
	  Print information about available CPUs. This normally shows the
	  number of CPUs, type (e.g. manufacturer, architecture, product or
	  internal name) and clock frequency. Other information may be
	  available depending on the CPU driver.

129 130 131 132 133 134 135 136 137 138 139
config CMD_LICENSE
	bool "license"
	help
	  Print GPL license text

endmenu

menu "Boot commands"

config CMD_BOOTD
	bool "bootd"
140
	default y
141 142 143 144
	help
	  Run the command stored in the environment "bootcmd", i.e.
	  "bootd" does the same thing as "run bootcmd".

145
config CMD_BOOTM
146
	bool "bootm"
147 148 149 150
	default y
	help
	  Boot an application image from the memory.

151 152 153 154 155 156
config CMD_ELF
	bool "bootelf, bootvx"
	default y
	help
	  Boot an ELF/vxWorks image from the memory.

157 158
config CMD_GO
	bool "go"
159 160
	default y
	help
161 162 163 164
	  Start an application at a given address.

config CMD_RUN
	bool "run"
165
	default y
166 167 168 169 170
	help
	  Run the command in the given environment variable.

config CMD_IMI
	bool "iminfo"
171
	default y
172 173 174 175 176
	help
	  Print header information for application image.

config CMD_IMLS
	bool "imls"
177
	default y
178 179 180 181 182
	help
	  List all images found in flash

config CMD_XIMG
	bool "imxtract"
183
	default y
184 185 186 187 188 189
	help
	  Extract a part of a multi-image.

endmenu

menu "Environment commands"
190

191
config CMD_EXPORTENV
192
	bool "env export"
193 194 195 196
	default y
	help
	  Export environments.

197
config CMD_IMPORTENV
198
	bool "env import"
199 200 201 202
	default y
	help
	  Import environments.

203 204
config CMD_EDITENV
	bool "editenv"
205
	default y
206 207 208 209 210
	help
	  Edit environment variable.

config CMD_SAVEENV
	bool "saveenv"
211
	default y
212
	help
213 214
	  Save all environment variables into the compiled-in persistent
	  storage.
215

216 217
config CMD_ENV_EXISTS
	bool "env exists"
218
	default y
219 220 221 222
	help
	  Check if a variable is defined in the environment for use in
	  shell scripting.

223 224 225 226 227 228
endmenu

menu "Memory commands"

config CMD_MEMORY
	bool "md, mm, nm, mw, cp, cmp, base, loop"
229
	default y
230 231 232 233 234 235 236 237 238 239 240 241 242
	help
	  Memeory commands.
	    md - memory display
	    mm - memory modify (auto-incrementing address)
	    nm - memory modify (constant address)
	    mw - memory write (fill)
	    cp - memory copy
	    cmp - memory compare
	    base - print or set address offset
	    loop - initinite loop on address range

config CMD_CRC32
	bool "crc32"
243 244
	default y
	help
245 246 247 248 249 250 251 252
	  Compute CRC32.

config LOOPW
	bool "loopw"
	help
	  Infinite write loop on address range

config CMD_MEMTEST
253
	bool "memtest"
254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271
	help
	  Simple RAM read/write test.

config CMD_MX_CYCLIC
	bool "mdc, mwc"
	help
	  mdc - memory display cyclic
	  mwc - memory write cyclic

config CMD_MEMINFO
	bool "meminfo"
	help
	  Display memory information.

endmenu

menu "Device access commands"

272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294
config CMD_DM
	bool "dm - Access to driver model information"
	depends on DM
	default y
	help
	  Provides access to driver model data structures and information,
	  such as a list of devices, list of uclasses and the state of each
	  device (e.g. activated). This is not required for operation, but
	  can be useful to see the state of driver model for debugging or
	  interest.

config CMD_DEMO
	bool "demo - Demonstration commands for driver model"
	depends on DM
	help
	  Provides a 'demo' command which can be used to play around with
	  driver model. To use this properly you will need to enable one or
	  both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
	  Otherwise you will always get an empty list of devices. The demo
	  devices are defined in the sandbox device tree, so the easiest
	  option is to use sandbox and pass the -d point to sandbox's
	  u-boot.dtb file.

295 296
config CMD_LOADB
	bool "loadb"
297
	default y
298 299 300 301 302
	help
	  Load a binary file over serial line.

config CMD_LOADS
	bool "loads"
303
	default y
304 305 306 307 308
	help
	  Load an S-Record file over serial line

config CMD_FLASH
	bool "flinfo, erase, protect"
309
	default y
310 311 312 313 314 315
	help
	  NOR flash support.
	    flinfo - print FLASH memory information
	    erase - FLASH memory
	    protect - enable or disable FLASH write protection

316 317 318 319 320 321
config CMD_ARMFLASH
	depends on FLASH_CFI_DRIVER
	bool "armflash"
	help
	  ARM Ltd reference designs flash partition access

322 323 324 325 326
config CMD_NAND
	bool "nand"
	help
	  NAND support.

327 328 329 330 331
config CMD_SF
	bool "sf"
	help
	  SPI Flash support

332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348
config CMD_SPI
	bool "sspi"
	help
	  SPI utility command.

config CMD_I2C
	bool "i2c"
	help
	  I2C support.

config CMD_USB
	bool "usb"
	help
	  USB support.

config CMD_FPGA
	bool "fpga"
349
	default y
350 351 352
	help
	  FPGA support.

353 354 355 356 357
config CMD_REMOTEPROC
	bool "remoteproc"
	depends on REMOTEPROC
	help
	  Support for Remote Processor control
358 359 360 361 362 363

config CMD_GPIO
	bool "gpio"
	help
	  GPIO support.

364 365 366 367 368 369 370
endmenu


menu "Shell scripting commands"

config CMD_ECHO
	bool "echo"
371
	default y
372 373 374 375 376
	help
	  Echo args to console

config CMD_ITEST
	bool "itest"
377
	default y
378 379 380 381 382
	help
	  Return true/false on integer compare.

config CMD_SOURCE
	bool "source"
383
	default y
384 385 386
	help
	  Run script from memory

387 388
config CMD_SETEXPR
	bool "setexpr"
389
	default y
390 391 392 393 394 395
	help
	  Evaluate boolean and math expressions and store the result in an env
	    variable.
	  Also supports loading the value at a memory location into a variable.
	  If CONFIG_REGEX is enabled, setexpr also supports a gsub function.

396 397 398 399 400 401
endmenu

menu "Network commands"

config CMD_NET
	bool "bootp, tftpboot"
402
        select NET
403
	default y
404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430
	help
	  Network commands.
	  bootp - boot image via network using BOOTP/TFTP protocol
	  tftpboot - boot image via network using TFTP protocol

config CMD_TFTPPUT
	bool "tftp put"
	help
	  TFTP put command, for uploading files to a server

config CMD_TFTPSRV
	bool "tftpsrv"
	help
	  Act as a TFTP server and boot the first received file

config CMD_RARP
	bool "rarpboot"
	help
	  Boot image via network using RARP/TFTP protocol

config CMD_DHCP
	bool "dhcp"
	help
	  Boot image via network using DHCP/TFTP protocol

config CMD_NFS
	bool "nfs"
431
	default y
432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463
	help
	  Boot image via network using NFS protocol.

config CMD_PING
	bool "ping"
	help
	  Send ICMP ECHO_REQUEST to network host

config CMD_CDP
	bool "cdp"
	help
	  Perform CDP network configuration

config CMD_SNTP
	bool "sntp"
	help
	  Synchronize RTC via network

config CMD_DNS
	bool "dns"
	help
	  Lookup the IP of a hostname

config CMD_LINK_LOCAL
	bool "linklocal"
	help
	  Acquire a network IP address using the link-local protocol

endmenu

menu "Misc commands"

464 465 466 467 468 469 470 471 472 473 474 475 476 477
config CMD_AMBAPP
	bool "ambapp"
	depends on LEON3
	default y
	help
	  Lists AMBA Plug-n-Play information.

config SYS_AMBAPP_PRINT_ON_STARTUP
	bool "Show AMBA PnP info on startup"
	depends on CMD_AMBAPP
	default n
	help
	  Show AMBA Plug-n-Play information on startup.

478 479 480 481 482 483 484 485
config CMD_TIME
	bool "time"
	help
	  Run commands and summarize execution time.

# TODO: rename to CMD_SLEEP
config CMD_MISC
	bool "sleep"
486
	default y
487 488 489 490 491 492 493 494 495 496 497
	help
	  Delay execution for some time

config CMD_TIMER
	bool "timer"
	help
	  Access the system timer.

config CMD_SETGETDCR
	bool "getdcr, setdcr, getidcr, setidcr"
	depends on 4xx
498
	default y
499 500 501 502 503 504
	help
	  getdcr - Get an AMCC PPC 4xx DCR's value
	  setdcr - Set an AMCC PPC 4xx DCR's value
	  getidcr - Get a register value via indirect DCR addressing
	  setidcr - Set a register value via indirect DCR addressing

505 506 507 508 509 510 511 512 513 514
config CMD_SOUND
	bool "sound"
	depends on SOUND
	help
	  This provides basic access to the U-Boot's sound support. The main
	  feature is to play a beep.

	     sound init   - set up sound system
	     sound play   - play a sound

515
endmenu
516

517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622
menu "Boot timing"

config BOOTSTAGE
	bool "Boot timing and reporting"
	help
	  Enable recording of boot time while booting. To use it, insert
	  calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
	  bootstage.h. Only a single entry is recorded for each ID. You can
	  give the entry a name with bootstage_mark_name(). You can also
	  record elapsed time in a particular stage using bootstage_start()
	  before starting and bootstage_accum() when finished. Bootstage will
	  add up all the accumated time and report it.

	  Normally, IDs are defined in bootstage.h but a small number of
	  additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
	  as the ID.

	  Calls to show_boot_progress() wil also result in log entries but
	  these will not have names.

config BOOTSTAGE_REPORT
	bool "Display a detailed boot timing report before booting the OS"
	depends on BOOTSTAGE
	help
	  Enable output of a boot time report just before the OS is booted.
	  This shows how long it took U-Boot to go through each stage of the
	  boot process. The report looks something like this:

		Timer summary in microseconds:
		       Mark    Elapsed  Stage
			  0          0  reset
		  3,575,678  3,575,678  board_init_f start
		  3,575,695         17  arch_cpu_init A9
		  3,575,777         82  arch_cpu_init done
		  3,659,598     83,821  board_init_r start
		  3,910,375    250,777  main_loop
		 29,916,167 26,005,792  bootm_start
		 30,361,327    445,160  start_kernel

config BOOTSTAGE_USER_COUNT
	hex "Number of boot ID numbers available for user use"
	default 20
	help
	  This is the number of available user bootstage records.
	  Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
	  a new ID will be allocated from this stash. If you exceed
	  the limit, recording will stop.

config CMD_BOOTSTAGE
	bool "Enable the 'bootstage' command"
	depends on BOOTSTAGE
	help
	  Add a 'bootstage' command which supports printing a report
	  and un/stashing of bootstage data.

config BOOTSTAGE_FDT
	bool "Store boot timing information in the OS device tree"
	depends on BOOTSTAGE
	help
	  Stash the bootstage information in the FDT. A root 'bootstage'
	  node is created with each bootstage id as a child. Each child
	  has a 'name' property and either 'mark' containing the
	  mark time in microsecond, or 'accum' containing the
	  accumulated time for that bootstage id in microseconds.
	  For example:

		bootstage {
			154 {
				name = "board_init_f";
				mark = <3575678>;
			};
			170 {
				name = "lcd";
				accum = <33482>;
			};
		};

	  Code in the Linux kernel can find this in /proc/devicetree.

config BOOTSTAGE_STASH
	bool "Stash the boot timing information in memory before booting OS"
	depends on BOOTSTAGE
	help
	  Some OSes do not support device tree. Bootstage can instead write
	  the boot timing information in a binary format at a given address.
	  This happens through a call to bootstage_stash(), typically in
	  the CPU's cleanup_before_linux() function. You can use the
	  'bootstage stash' and 'bootstage unstash' commands to do this on
	  the command line.

config BOOTSTAGE_STASH_ADDR
	hex "Address to stash boot timing information"
	default 0
	help
	  Provide an address which will not be overwritten by the OS when it
	  starts, so that it can read this information when ready.

config BOOTSTAGE_STASH_SIZE
	hex "Size of boot timing stash region"
	default 4096
	help
	  This should be large enough to hold the bootstage stash. A value of
	  4096 (4KiB) is normally plenty.

endmenu

623 624 625 626 627 628 629 630 631 632 633 634 635
menu "Power commands"
config CMD_PMIC
	bool "Enable Driver Model PMIC command"
	depends on DM_PMIC
	help
	  This is the pmic command, based on a driver model pmic's API.
	  Command features are unchanged:
	  - list               - list pmic devices
	  - pmic dev <id>      - show or [set] operating pmic device (NEW)
	  - pmic dump          - dump registers
	  - pmic read address  - read byte of register at address
	  - pmic write address - write byte to register at address
	  The only one change for this command is 'dev' subcommand.
636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656

config CMD_REGULATOR
	bool "Enable Driver Model REGULATOR command"
	depends on DM_REGULATOR
	help
	  This command is based on driver model regulator's API.
	  User interface features:
	  - list               - list regulator devices
	  - regulator dev <id> - show or [set] operating regulator device
	  - regulator info     - print constraints info
	  - regulator status   - print operating status
	  - regulator value <val] <-f> - print/[set] voltage value [uV]
	  - regulator current <val>    - print/[set] current value [uA]
	  - regulator mode <id>        - print/[set] operating mode id
	  - regulator enable           - enable the regulator output
	  - regulator disable          - disable the regulator output

	  The '-f' (force) option can be used for set the value which exceeds
	  the limits, which are found in device-tree and are kept in regulator's
	  uclass platdata structure.

657
endmenu
658

659 660 661 662 663 664 665 666 667 668
menu "Security commands"
config CMD_TPM
	bool "Enable the 'tpm' command"
	depends on TPM
	help
	  This provides a means to talk to a TPM from the command line. A wide
	  range of commands if provided - see 'tpm help' for details. The
	  command requires a suitable TPM on your board and the correct driver
	  must be enabled.

669 670 671 672 673 674 675 676 677 678
config CMD_TPM_TEST
	bool "Enable the 'tpm test' command"
	depends on CMD_TPM
	help
	  This provides a a series of tests to confirm that the TPM is working
	  correctly. The tests cover initialisation, non-volatile RAM, extend,
	  global lock and checking that timing is within expectations. The
	  tests pass correctly on Infineon TPMs but may need to be adjusted
	  for other devices.

679 680
endmenu

681
endmenu
682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709

config CONSOLE_RECORD
	bool "Console recording"
	help
	  This provides a way to record console output (and provide console
	  input) through cirular buffers. This is mostly useful for testing.
	  Console output is recorded even when the console is silent.
	  To enable console recording, call console_record_reset_enable()
	  from your code.

config CONSOLE_RECORD_OUT_SIZE
	hex "Output buffer size"
	depends on CONSOLE_RECORD
	default 0x400 if CONSOLE_RECORD
	help
	  Set the size of the console output buffer. When this fills up, no
	  more data will be recorded until some is removed. The buffer is
	  allocated immediately after the malloc() region is ready.

config CONSOLE_RECORD_IN_SIZE
	hex "Input buffer size"
	depends on CONSOLE_RECORD
	default 0x100 if CONSOLE_RECORD
	help
	  Set the size of the console input buffer. When this contains data,
	  tstc() and getc() will use this in preference to real device input.
	  The buffer is allocated immediately after the malloc() region is
	  ready.