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 187config CMD_POWEROFF 188 bool 189 190endmenu 191 192menu "Environment commands" 193 194config CMD_EXPORTENV 195 bool "env export" 196 default y 197 help 198 Export environments. 199 200config CMD_IMPORTENV 201 bool "env import" 202 default y 203 help 204 Import environments. 205 206config CMD_EDITENV 207 bool "editenv" 208 default y 209 help 210 Edit environment variable. 211 212config CMD_SAVEENV 213 bool "saveenv" 214 default y 215 help 216 Save all environment variables into the compiled-in persistent 217 storage. 218 219config CMD_ENV_EXISTS 220 bool "env exists" 221 default y 222 help 223 Check if a variable is defined in the environment for use in 224 shell scripting. 225 226endmenu 227 228menu "Memory commands" 229 230config CMD_MEMORY 231 bool "md, mm, nm, mw, cp, cmp, base, loop" 232 default y 233 help 234 Memeory commands. 235 md - memory display 236 mm - memory modify (auto-incrementing address) 237 nm - memory modify (constant address) 238 mw - memory write (fill) 239 cp - memory copy 240 cmp - memory compare 241 base - print or set address offset 242 loop - initinite loop on address range 243 244config CMD_CRC32 245 bool "crc32" 246 default y 247 help 248 Compute CRC32. 249 250config LOOPW 251 bool "loopw" 252 help 253 Infinite write loop on address range 254 255config CMD_MEMTEST 256 bool "memtest" 257 help 258 Simple RAM read/write test. 259 260config CMD_MX_CYCLIC 261 bool "mdc, mwc" 262 help 263 mdc - memory display cyclic 264 mwc - memory write cyclic 265 266config CMD_MEMINFO 267 bool "meminfo" 268 help 269 Display memory information. 270 271endmenu 272 273menu "Device access commands" 274 275config CMD_DM 276 bool "dm - Access to driver model information" 277 depends on DM 278 default y 279 help 280 Provides access to driver model data structures and information, 281 such as a list of devices, list of uclasses and the state of each 282 device (e.g. activated). This is not required for operation, but 283 can be useful to see the state of driver model for debugging or 284 interest. 285 286config CMD_DEMO 287 bool "demo - Demonstration commands for driver model" 288 depends on DM 289 help 290 Provides a 'demo' command which can be used to play around with 291 driver model. To use this properly you will need to enable one or 292 both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE). 293 Otherwise you will always get an empty list of devices. The demo 294 devices are defined in the sandbox device tree, so the easiest 295 option is to use sandbox and pass the -d point to sandbox's 296 u-boot.dtb file. 297 298config CMD_LOADB 299 bool "loadb" 300 default y 301 help 302 Load a binary file over serial line. 303 304config CMD_LOADS 305 bool "loads" 306 default y 307 help 308 Load an S-Record file over serial line 309 310config CMD_FLASH 311 bool "flinfo, erase, protect" 312 default y 313 help 314 NOR flash support. 315 flinfo - print FLASH memory information 316 erase - FLASH memory 317 protect - enable or disable FLASH write protection 318 319config CMD_ARMFLASH 320 depends on FLASH_CFI_DRIVER 321 bool "armflash" 322 help 323 ARM Ltd reference designs flash partition access 324 325config CMD_NAND 326 bool "nand" 327 help 328 NAND support. 329 330config CMD_SF 331 bool "sf" 332 help 333 SPI Flash support 334 335config CMD_SPI 336 bool "sspi" 337 help 338 SPI utility command. 339 340config CMD_I2C 341 bool "i2c" 342 help 343 I2C support. 344 345config CMD_USB 346 bool "usb" 347 help 348 USB support. 349 350config CMD_FPGA 351 bool "fpga" 352 default y 353 help 354 FPGA support. 355 356config CMD_REMOTEPROC 357 bool "remoteproc" 358 depends on REMOTEPROC 359 help 360 Support for Remote Processor control 361 362config CMD_GPIO 363 bool "gpio" 364 help 365 GPIO support. 366 367endmenu 368 369 370menu "Shell scripting commands" 371 372config CMD_ECHO 373 bool "echo" 374 default y 375 help 376 Echo args to console 377 378config CMD_ITEST 379 bool "itest" 380 default y 381 help 382 Return true/false on integer compare. 383 384config CMD_SOURCE 385 bool "source" 386 default y 387 help 388 Run script from memory 389 390config CMD_SETEXPR 391 bool "setexpr" 392 default y 393 help 394 Evaluate boolean and math expressions and store the result in an env 395 variable. 396 Also supports loading the value at a memory location into a variable. 397 If CONFIG_REGEX is enabled, setexpr also supports a gsub function. 398 399endmenu 400 401menu "Network commands" 402 403config CMD_NET 404 bool "bootp, tftpboot" 405 select NET 406 default y 407 help 408 Network commands. 409 bootp - boot image via network using BOOTP/TFTP protocol 410 tftpboot - boot image via network using TFTP protocol 411 412config CMD_TFTPPUT 413 bool "tftp put" 414 help 415 TFTP put command, for uploading files to a server 416 417config CMD_TFTPSRV 418 bool "tftpsrv" 419 help 420 Act as a TFTP server and boot the first received file 421 422config CMD_RARP 423 bool "rarpboot" 424 help 425 Boot image via network using RARP/TFTP protocol 426 427config CMD_DHCP 428 bool "dhcp" 429 help 430 Boot image via network using DHCP/TFTP protocol 431 432config CMD_NFS 433 bool "nfs" 434 default y 435 help 436 Boot image via network using NFS protocol. 437 438config CMD_PING 439 bool "ping" 440 help 441 Send ICMP ECHO_REQUEST to network host 442 443config CMD_CDP 444 bool "cdp" 445 help 446 Perform CDP network configuration 447 448config CMD_SNTP 449 bool "sntp" 450 help 451 Synchronize RTC via network 452 453config CMD_DNS 454 bool "dns" 455 help 456 Lookup the IP of a hostname 457 458config CMD_LINK_LOCAL 459 bool "linklocal" 460 help 461 Acquire a network IP address using the link-local protocol 462 463endmenu 464 465menu "Misc commands" 466 467config CMD_AMBAPP 468 bool "ambapp" 469 depends on LEON3 470 default y 471 help 472 Lists AMBA Plug-n-Play information. 473 474config SYS_AMBAPP_PRINT_ON_STARTUP 475 bool "Show AMBA PnP info on startup" 476 depends on CMD_AMBAPP 477 default n 478 help 479 Show AMBA Plug-n-Play information on startup. 480 481config CMD_TIME 482 bool "time" 483 help 484 Run commands and summarize execution time. 485 486# TODO: rename to CMD_SLEEP 487config CMD_MISC 488 bool "sleep" 489 default y 490 help 491 Delay execution for some time 492 493config CMD_TIMER 494 bool "timer" 495 help 496 Access the system timer. 497 498config CMD_SETGETDCR 499 bool "getdcr, setdcr, getidcr, setidcr" 500 depends on 4xx 501 default y 502 help 503 getdcr - Get an AMCC PPC 4xx DCR's value 504 setdcr - Set an AMCC PPC 4xx DCR's value 505 getidcr - Get a register value via indirect DCR addressing 506 setidcr - Set a register value via indirect DCR addressing 507 508config CMD_SOUND 509 bool "sound" 510 depends on SOUND 511 help 512 This provides basic access to the U-Boot's sound support. The main 513 feature is to play a beep. 514 515 sound init - set up sound system 516 sound play - play a sound 517 518endmenu 519 520menu "Boot timing" 521 522config BOOTSTAGE 523 bool "Boot timing and reporting" 524 help 525 Enable recording of boot time while booting. To use it, insert 526 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from 527 bootstage.h. Only a single entry is recorded for each ID. You can 528 give the entry a name with bootstage_mark_name(). You can also 529 record elapsed time in a particular stage using bootstage_start() 530 before starting and bootstage_accum() when finished. Bootstage will 531 add up all the accumated time and report it. 532 533 Normally, IDs are defined in bootstage.h but a small number of 534 additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC 535 as the ID. 536 537 Calls to show_boot_progress() wil also result in log entries but 538 these will not have names. 539 540config BOOTSTAGE_REPORT 541 bool "Display a detailed boot timing report before booting the OS" 542 depends on BOOTSTAGE 543 help 544 Enable output of a boot time report just before the OS is booted. 545 This shows how long it took U-Boot to go through each stage of the 546 boot process. The report looks something like this: 547 548 Timer summary in microseconds: 549 Mark Elapsed Stage 550 0 0 reset 551 3,575,678 3,575,678 board_init_f start 552 3,575,695 17 arch_cpu_init A9 553 3,575,777 82 arch_cpu_init done 554 3,659,598 83,821 board_init_r start 555 3,910,375 250,777 main_loop 556 29,916,167 26,005,792 bootm_start 557 30,361,327 445,160 start_kernel 558 559config BOOTSTAGE_USER_COUNT 560 hex "Number of boot ID numbers available for user use" 561 default 20 562 help 563 This is the number of available user bootstage records. 564 Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...) 565 a new ID will be allocated from this stash. If you exceed 566 the limit, recording will stop. 567 568config CMD_BOOTSTAGE 569 bool "Enable the 'bootstage' command" 570 depends on BOOTSTAGE 571 help 572 Add a 'bootstage' command which supports printing a report 573 and un/stashing of bootstage data. 574 575config BOOTSTAGE_FDT 576 bool "Store boot timing information in the OS device tree" 577 depends on BOOTSTAGE 578 help 579 Stash the bootstage information in the FDT. A root 'bootstage' 580 node is created with each bootstage id as a child. Each child 581 has a 'name' property and either 'mark' containing the 582 mark time in microsecond, or 'accum' containing the 583 accumulated time for that bootstage id in microseconds. 584 For example: 585 586 bootstage { 587 154 { 588 name = "board_init_f"; 589 mark = <3575678>; 590 }; 591 170 { 592 name = "lcd"; 593 accum = <33482>; 594 }; 595 }; 596 597 Code in the Linux kernel can find this in /proc/devicetree. 598 599config BOOTSTAGE_STASH 600 bool "Stash the boot timing information in memory before booting OS" 601 depends on BOOTSTAGE 602 help 603 Some OSes do not support device tree. Bootstage can instead write 604 the boot timing information in a binary format at a given address. 605 This happens through a call to bootstage_stash(), typically in 606 the CPU's cleanup_before_linux() function. You can use the 607 'bootstage stash' and 'bootstage unstash' commands to do this on 608 the command line. 609 610config BOOTSTAGE_STASH_ADDR 611 hex "Address to stash boot timing information" 612 default 0 613 help 614 Provide an address which will not be overwritten by the OS when it 615 starts, so that it can read this information when ready. 616 617config BOOTSTAGE_STASH_SIZE 618 hex "Size of boot timing stash region" 619 default 4096 620 help 621 This should be large enough to hold the bootstage stash. A value of 622 4096 (4KiB) is normally plenty. 623 624endmenu 625 626menu "Power commands" 627config CMD_PMIC 628 bool "Enable Driver Model PMIC command" 629 depends on DM_PMIC 630 help 631 This is the pmic command, based on a driver model pmic's API. 632 Command features are unchanged: 633 - list - list pmic devices 634 - pmic dev <id> - show or [set] operating pmic device (NEW) 635 - pmic dump - dump registers 636 - pmic read address - read byte of register at address 637 - pmic write address - write byte to register at address 638 The only one change for this command is 'dev' subcommand. 639 640config CMD_REGULATOR 641 bool "Enable Driver Model REGULATOR command" 642 depends on DM_REGULATOR 643 help 644 This command is based on driver model regulator's API. 645 User interface features: 646 - list - list regulator devices 647 - regulator dev <id> - show or [set] operating regulator device 648 - regulator info - print constraints info 649 - regulator status - print operating status 650 - regulator value <val] <-f> - print/[set] voltage value [uV] 651 - regulator current <val> - print/[set] current value [uA] 652 - regulator mode <id> - print/[set] operating mode id 653 - regulator enable - enable the regulator output 654 - regulator disable - disable the regulator output 655 656 The '-f' (force) option can be used for set the value which exceeds 657 the limits, which are found in device-tree and are kept in regulator's 658 uclass platdata structure. 659 660endmenu 661 662menu "Security commands" 663config CMD_TPM 664 bool "Enable the 'tpm' command" 665 depends on TPM 666 help 667 This provides a means to talk to a TPM from the command line. A wide 668 range of commands if provided - see 'tpm help' for details. The 669 command requires a suitable TPM on your board and the correct driver 670 must be enabled. 671 672config CMD_TPM_TEST 673 bool "Enable the 'tpm test' command" 674 depends on CMD_TPM 675 help 676 This provides a a series of tests to confirm that the TPM is working 677 correctly. The tests cover initialisation, non-volatile RAM, extend, 678 global lock and checking that timing is within expectations. The 679 tests pass correctly on Infineon TPMs but may need to be adjusted 680 for other devices. 681 682endmenu 683 684endmenu 685 686config CONSOLE_RECORD 687 bool "Console recording" 688 help 689 This provides a way to record console output (and provide console 690 input) through cirular buffers. This is mostly useful for testing. 691 Console output is recorded even when the console is silent. 692 To enable console recording, call console_record_reset_enable() 693 from your code. 694 695config CONSOLE_RECORD_OUT_SIZE 696 hex "Output buffer size" 697 depends on CONSOLE_RECORD 698 default 0x400 if CONSOLE_RECORD 699 help 700 Set the size of the console output buffer. When this fills up, no 701 more data will be recorded until some is removed. The buffer is 702 allocated immediately after the malloc() region is ready. 703 704config CONSOLE_RECORD_IN_SIZE 705 hex "Input buffer size" 706 depends on CONSOLE_RECORD 707 default 0x100 if CONSOLE_RECORD 708 help 709 Set the size of the console input buffer. When this contains data, 710 tstc() and getc() will use this in preference to real device input. 711 The buffer is allocated immediately after the malloc() region is 712 ready. 713