1menu "Command line interface" 2 3config HUSH_PARSER 4 bool "Use hush shell" 5 select SYS_HUSH_PARSER 6 help 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"). 11 12 If disabled, you get the old, much simpler behaviour with a somewhat 13 smaller memory footprint. 14 15config SYS_HUSH_PARSER 16 bool 17 help 18 Backward compatibility. 19 20config SYS_PROMPT 21 string "Shell prompt" 22 default "=> " 23 help 24 This string is displayed in the command line to the left of the 25 cursor. 26 27menu "Autoboot options" 28 29config AUTOBOOT_KEYED 30 bool "Stop autobooting via specific input key / string" 31 default n 32 help 33 This option enables stopping (aborting) of the automatic 34 boot feature only by issuing a specific input key or 35 string. If not enabled, any input key will abort the 36 U-Boot automatic booting process and bring the device 37 to the U-Boot prompt for user input. 38 39config AUTOBOOT_PROMPT 40 string "Autoboot stop prompt" 41 depends on AUTOBOOT_KEYED 42 default "Autoboot in %d seconds\\n" 43 help 44 This string is displayed before the boot delay selected by 45 CONFIG_BOOTDELAY starts. If it is not defined there is no 46 output indicating that autoboot is in progress. 47 48 Note that this define is used as the (only) argument to a 49 printf() call, so it may contain '%' format specifications, 50 provided that it also includes, sepearated by commas exactly 51 like in a printf statement, the required arguments. It is 52 the responsibility of the user to select only such arguments 53 that are valid in the given context. 54 55config AUTOBOOT_ENCRYPTION 56 bool "Enable encryption in autoboot stopping" 57 depends on AUTOBOOT_KEYED 58 default n 59 60config AUTOBOOT_DELAY_STR 61 string "Delay autobooting via specific input key / string" 62 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION 63 help 64 This option delays the automatic boot feature by issuing 65 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR 66 or the environment variable "bootdelaykey" is specified 67 and this string is received from console input before 68 autoboot starts booting, U-Boot gives a command prompt. The 69 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is 70 used, otherwise it never times out. 71 72config AUTOBOOT_STOP_STR 73 string "Stop autobooting via specific input key / string" 74 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION 75 help 76 This option enables stopping (aborting) of the automatic 77 boot feature only by issuing a specific input key or 78 string. If CONFIG_AUTOBOOT_STOP_STR or the environment 79 variable "bootstopkey" is specified and this string is 80 received from console input before autoboot starts booting, 81 U-Boot gives a command prompt. The U-Boot prompt never 82 times out, even if CONFIG_BOOT_RETRY_TIME is used. 83 84config AUTOBOOT_KEYED_CTRLC 85 bool "Enable Ctrl-C autoboot interruption" 86 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION 87 default n 88 help 89 This option allows for the boot sequence to be interrupted 90 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey". 91 Setting this variable provides an escape sequence from the 92 limited "password" strings. 93 94config AUTOBOOT_STOP_STR_SHA256 95 string "Stop autobooting via SHA256 encrypted password" 96 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION 97 help 98 This option adds the feature to only stop the autobooting, 99 and therefore boot into the U-Boot prompt, when the input 100 string / password matches a values that is encypted via 101 a SHA256 hash and saved in the environment. 102 103endmenu 104 105comment "Commands" 106 107menu "Info commands" 108 109config CMD_BDI 110 bool "bdinfo" 111 default y 112 help 113 Print board info 114 115config CMD_CONSOLE 116 bool "coninfo" 117 default y 118 help 119 Print console devices and information. 120 121config CMD_CPU 122 bool "cpu" 123 help 124 Print information about available CPUs. This normally shows the 125 number of CPUs, type (e.g. manufacturer, architecture, product or 126 internal name) and clock frequency. Other information may be 127 available depending on the CPU driver. 128 129config CMD_LICENSE 130 bool "license" 131 help 132 Print GPL license text 133 134endmenu 135 136menu "Boot commands" 137 138config CMD_BOOTD 139 bool "bootd" 140 default y 141 help 142 Run the command stored in the environment "bootcmd", i.e. 143 "bootd" does the same thing as "run bootcmd". 144 145config CMD_BOOTM 146 bool "bootm" 147 default y 148 help 149 Boot an application image from the memory. 150 151config CMD_ELF 152 bool "bootelf, bootvx" 153 default y 154 help 155 Boot an ELF/vxWorks image from the memory. 156 157config CMD_GO 158 bool "go" 159 default y 160 help 161 Start an application at a given address. 162 163config CMD_RUN 164 bool "run" 165 default y 166 help 167 Run the command in the given environment variable. 168 169config CMD_IMI 170 bool "iminfo" 171 default y 172 help 173 Print header information for application image. 174 175config CMD_IMLS 176 bool "imls" 177 default y 178 help 179 List all images found in flash 180 181config CMD_XIMG 182 bool "imxtract" 183 default y 184 help 185 Extract a part of a multi-image. 186 187endmenu 188 189menu "Environment commands" 190 191config CMD_EXPORTENV 192 bool "env export" 193 default y 194 help 195 Export environments. 196 197config CMD_IMPORTENV 198 bool "env import" 199 default y 200 help 201 Import environments. 202 203config CMD_EDITENV 204 bool "editenv" 205 default y 206 help 207 Edit environment variable. 208 209config CMD_SAVEENV 210 bool "saveenv" 211 default y 212 help 213 Save all environment variables into the compiled-in persistent 214 storage. 215 216config CMD_ENV_EXISTS 217 bool "env exists" 218 default y 219 help 220 Check if a variable is defined in the environment for use in 221 shell scripting. 222 223endmenu 224 225menu "Memory commands" 226 227config CMD_MEMORY 228 bool "md, mm, nm, mw, cp, cmp, base, loop" 229 default y 230 help 231 Memeory commands. 232 md - memory display 233 mm - memory modify (auto-incrementing address) 234 nm - memory modify (constant address) 235 mw - memory write (fill) 236 cp - memory copy 237 cmp - memory compare 238 base - print or set address offset 239 loop - initinite loop on address range 240 241config CMD_CRC32 242 bool "crc32" 243 default y 244 help 245 Compute CRC32. 246 247config LOOPW 248 bool "loopw" 249 help 250 Infinite write loop on address range 251 252config CMD_MEMTEST 253 bool "memtest" 254 help 255 Simple RAM read/write test. 256 257config CMD_MX_CYCLIC 258 bool "mdc, mwc" 259 help 260 mdc - memory display cyclic 261 mwc - memory write cyclic 262 263config CMD_MEMINFO 264 bool "meminfo" 265 help 266 Display memory information. 267 268endmenu 269 270menu "Device access commands" 271 272config CMD_DM 273 bool "dm - Access to driver model information" 274 depends on DM 275 default y 276 help 277 Provides access to driver model data structures and information, 278 such as a list of devices, list of uclasses and the state of each 279 device (e.g. activated). This is not required for operation, but 280 can be useful to see the state of driver model for debugging or 281 interest. 282 283config CMD_DEMO 284 bool "demo - Demonstration commands for driver model" 285 depends on DM 286 help 287 Provides a 'demo' command which can be used to play around with 288 driver model. To use this properly you will need to enable one or 289 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE). 290 Otherwise you will always get an empty list of devices. The demo 291 devices are defined in the sandbox device tree, so the easiest 292 option is to use sandbox and pass the -d point to sandbox's 293 u-boot.dtb file. 294 295config CMD_LOADB 296 bool "loadb" 297 default y 298 help 299 Load a binary file over serial line. 300 301config CMD_LOADS 302 bool "loads" 303 default y 304 help 305 Load an S-Record file over serial line 306 307config CMD_FLASH 308 bool "flinfo, erase, protect" 309 default y 310 help 311 NOR flash support. 312 flinfo - print FLASH memory information 313 erase - FLASH memory 314 protect - enable or disable FLASH write protection 315 316config CMD_ARMFLASH 317 depends on FLASH_CFI_DRIVER 318 bool "armflash" 319 help 320 ARM Ltd reference designs flash partition access 321 322config CMD_NAND 323 bool "nand" 324 help 325 NAND support. 326 327config CMD_SF 328 bool "sf" 329 help 330 SPI Flash support 331 332config CMD_SPI 333 bool "sspi" 334 help 335 SPI utility command. 336 337config CMD_I2C 338 bool "i2c" 339 help 340 I2C support. 341 342config CMD_USB 343 bool "usb" 344 help 345 USB support. 346 347config CMD_FPGA 348 bool "fpga" 349 default y 350 help 351 FPGA support. 352 353config CMD_REMOTEPROC 354 bool "remoteproc" 355 depends on REMOTEPROC 356 help 357 Support for Remote Processor control 358 359config CMD_GPIO 360 bool "gpio" 361 help 362 GPIO support. 363 364endmenu 365 366 367menu "Shell scripting commands" 368 369config CMD_ECHO 370 bool "echo" 371 default y 372 help 373 Echo args to console 374 375config CMD_ITEST 376 bool "itest" 377 default y 378 help 379 Return true/false on integer compare. 380 381config CMD_SOURCE 382 bool "source" 383 default y 384 help 385 Run script from memory 386 387config CMD_SETEXPR 388 bool "setexpr" 389 default y 390 help 391 Evaluate boolean and math expressions and store the result in an env 392 variable. 393 Also supports loading the value at a memory location into a variable. 394 If CONFIG_REGEX is enabled, setexpr also supports a gsub function. 395 396endmenu 397 398menu "Network commands" 399 400config CMD_NET 401 bool "bootp, tftpboot" 402 select NET 403 default y 404 help 405 Network commands. 406 bootp - boot image via network using BOOTP/TFTP protocol 407 tftpboot - boot image via network using TFTP protocol 408 409config CMD_TFTPPUT 410 bool "tftp put" 411 help 412 TFTP put command, for uploading files to a server 413 414config CMD_TFTPSRV 415 bool "tftpsrv" 416 help 417 Act as a TFTP server and boot the first received file 418 419config CMD_RARP 420 bool "rarpboot" 421 help 422 Boot image via network using RARP/TFTP protocol 423 424config CMD_DHCP 425 bool "dhcp" 426 help 427 Boot image via network using DHCP/TFTP protocol 428 429config CMD_NFS 430 bool "nfs" 431 default y 432 help 433 Boot image via network using NFS protocol. 434 435config CMD_PING 436 bool "ping" 437 help 438 Send ICMP ECHO_REQUEST to network host 439 440config CMD_CDP 441 bool "cdp" 442 help 443 Perform CDP network configuration 444 445config CMD_SNTP 446 bool "sntp" 447 help 448 Synchronize RTC via network 449 450config CMD_DNS 451 bool "dns" 452 help 453 Lookup the IP of a hostname 454 455config CMD_LINK_LOCAL 456 bool "linklocal" 457 help 458 Acquire a network IP address using the link-local protocol 459 460endmenu 461 462menu "Misc commands" 463 464config CMD_AMBAPP 465 bool "ambapp" 466 depends on LEON3 467 default y 468 help 469 Lists AMBA Plug-n-Play information. 470 471config SYS_AMBAPP_PRINT_ON_STARTUP 472 bool "Show AMBA PnP info on startup" 473 depends on CMD_AMBAPP 474 default n 475 help 476 Show AMBA Plug-n-Play information on startup. 477 478config CMD_TIME 479 bool "time" 480 help 481 Run commands and summarize execution time. 482 483# TODO: rename to CMD_SLEEP 484config CMD_MISC 485 bool "sleep" 486 default y 487 help 488 Delay execution for some time 489 490config CMD_TIMER 491 bool "timer" 492 help 493 Access the system timer. 494 495config CMD_SETGETDCR 496 bool "getdcr, setdcr, getidcr, setidcr" 497 depends on 4xx 498 default y 499 help 500 getdcr - Get an AMCC PPC 4xx DCR's value 501 setdcr - Set an AMCC PPC 4xx DCR's value 502 getidcr - Get a register value via indirect DCR addressing 503 setidcr - Set a register value via indirect DCR addressing 504 505config CMD_SOUND 506 bool "sound" 507 depends on SOUND 508 help 509 This provides basic access to the U-Boot's sound support. The main 510 feature is to play a beep. 511 512 sound init - set up sound system 513 sound play - play a sound 514 515endmenu 516 517menu "Boot timing" 518 519config BOOTSTAGE 520 bool "Boot timing and reporting" 521 help 522 Enable recording of boot time while booting. To use it, insert 523 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from 524 bootstage.h. Only a single entry is recorded for each ID. You can 525 give the entry a name with bootstage_mark_name(). You can also 526 record elapsed time in a particular stage using bootstage_start() 527 before starting and bootstage_accum() when finished. Bootstage will 528 add up all the accumated time and report it. 529 530 Normally, IDs are defined in bootstage.h but a small number of 531 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC 532 as the ID. 533 534 Calls to show_boot_progress() wil also result in log entries but 535 these will not have names. 536 537config BOOTSTAGE_REPORT 538 bool "Display a detailed boot timing report before booting the OS" 539 depends on BOOTSTAGE 540 help 541 Enable output of a boot time report just before the OS is booted. 542 This shows how long it took U-Boot to go through each stage of the 543 boot process. The report looks something like this: 544 545 Timer summary in microseconds: 546 Mark Elapsed Stage 547 0 0 reset 548 3,575,678 3,575,678 board_init_f start 549 3,575,695 17 arch_cpu_init A9 550 3,575,777 82 arch_cpu_init done 551 3,659,598 83,821 board_init_r start 552 3,910,375 250,777 main_loop 553 29,916,167 26,005,792 bootm_start 554 30,361,327 445,160 start_kernel 555 556config BOOTSTAGE_USER_COUNT 557 hex "Number of boot ID numbers available for user use" 558 default 20 559 help 560 This is the number of available user bootstage records. 561 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...) 562 a new ID will be allocated from this stash. If you exceed 563 the limit, recording will stop. 564 565config CMD_BOOTSTAGE 566 bool "Enable the 'bootstage' command" 567 depends on BOOTSTAGE 568 help 569 Add a 'bootstage' command which supports printing a report 570 and un/stashing of bootstage data. 571 572config BOOTSTAGE_FDT 573 bool "Store boot timing information in the OS device tree" 574 depends on BOOTSTAGE 575 help 576 Stash the bootstage information in the FDT. A root 'bootstage' 577 node is created with each bootstage id as a child. Each child 578 has a 'name' property and either 'mark' containing the 579 mark time in microsecond, or 'accum' containing the 580 accumulated time for that bootstage id in microseconds. 581 For example: 582 583 bootstage { 584 154 { 585 name = "board_init_f"; 586 mark = <3575678>; 587 }; 588 170 { 589 name = "lcd"; 590 accum = <33482>; 591 }; 592 }; 593 594 Code in the Linux kernel can find this in /proc/devicetree. 595 596config BOOTSTAGE_STASH 597 bool "Stash the boot timing information in memory before booting OS" 598 depends on BOOTSTAGE 599 help 600 Some OSes do not support device tree. Bootstage can instead write 601 the boot timing information in a binary format at a given address. 602 This happens through a call to bootstage_stash(), typically in 603 the CPU's cleanup_before_linux() function. You can use the 604 'bootstage stash' and 'bootstage unstash' commands to do this on 605 the command line. 606 607config BOOTSTAGE_STASH_ADDR 608 hex "Address to stash boot timing information" 609 default 0 610 help 611 Provide an address which will not be overwritten by the OS when it 612 starts, so that it can read this information when ready. 613 614config BOOTSTAGE_STASH_SIZE 615 hex "Size of boot timing stash region" 616 default 4096 617 help 618 This should be large enough to hold the bootstage stash. A value of 619 4096 (4KiB) is normally plenty. 620 621endmenu 622 623menu "Power commands" 624config CMD_PMIC 625 bool "Enable Driver Model PMIC command" 626 depends on DM_PMIC 627 help 628 This is the pmic command, based on a driver model pmic's API. 629 Command features are unchanged: 630 - list - list pmic devices 631 - pmic dev <id> - show or [set] operating pmic device (NEW) 632 - pmic dump - dump registers 633 - pmic read address - read byte of register at address 634 - pmic write address - write byte to register at address 635 The only one change for this command is 'dev' subcommand. 636 637config CMD_REGULATOR 638 bool "Enable Driver Model REGULATOR command" 639 depends on DM_REGULATOR 640 help 641 This command is based on driver model regulator's API. 642 User interface features: 643 - list - list regulator devices 644 - regulator dev <id> - show or [set] operating regulator device 645 - regulator info - print constraints info 646 - regulator status - print operating status 647 - regulator value <val] <-f> - print/[set] voltage value [uV] 648 - regulator current <val> - print/[set] current value [uA] 649 - regulator mode <id> - print/[set] operating mode id 650 - regulator enable - enable the regulator output 651 - regulator disable - disable the regulator output 652 653 The '-f' (force) option can be used for set the value which exceeds 654 the limits, which are found in device-tree and are kept in regulator's 655 uclass platdata structure. 656 657endmenu 658 659menu "Security commands" 660config CMD_TPM 661 bool "Enable the 'tpm' command" 662 depends on TPM 663 help 664 This provides a means to talk to a TPM from the command line. A wide 665 range of commands if provided - see 'tpm help' for details. The 666 command requires a suitable TPM on your board and the correct driver 667 must be enabled. 668 669config CMD_TPM_TEST 670 bool "Enable the 'tpm test' command" 671 depends on CMD_TPM 672 help 673 This provides a a series of tests to confirm that the TPM is working 674 correctly. The tests cover initialisation, non-volatile RAM, extend, 675 global lock and checking that timing is within expectations. The 676 tests pass correctly on Infineon TPMs but may need to be adjusted 677 for other devices. 678 679endmenu 680 681endmenu 682 683config CONSOLE_RECORD 684 bool "Console recording" 685 help 686 This provides a way to record console output (and provide console 687 input) through cirular buffers. This is mostly useful for testing. 688 Console output is recorded even when the console is silent. 689 To enable console recording, call console_record_reset_enable() 690 from your code. 691 692config CONSOLE_RECORD_OUT_SIZE 693 hex "Output buffer size" 694 depends on CONSOLE_RECORD 695 default 0x400 if CONSOLE_RECORD 696 help 697 Set the size of the console output buffer. When this fills up, no 698 more data will be recorded until some is removed. The buffer is 699 allocated immediately after the malloc() region is ready. 700 701config CONSOLE_RECORD_IN_SIZE 702 hex "Input buffer size" 703 depends on CONSOLE_RECORD 704 default 0x100 if CONSOLE_RECORD 705 help 706 Set the size of the console input buffer. When this contains data, 707 tstc() and getc() will use this in preference to real device input. 708 The buffer is allocated immediately after the malloc() region is 709 ready. 710