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