Kconfig 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786
  1. menu "Command line interface"
  2. config CMDLINE
  3. bool "Support U-Boot commands"
  4. default y
  5. help
  6. Enable U-Boot's command-line functions. This provides a means
  7. to enter commands into U-Boot for a wide variety of purposes. It
  8. also allows scripts (containing commands) to be executed.
  9. Various commands and command categorys can be indivdually enabled.
  10. Depending on the number of commands enabled, this can add
  11. substantially to the size of U-Boot.
  12. config HUSH_PARSER
  13. bool "Use hush shell"
  14. depends on CMDLINE
  15. help
  16. This option enables the "hush" shell (from Busybox) as command line
  17. interpreter, thus enabling powerful command line syntax like
  18. if...then...else...fi conditionals or `&&' and '||'
  19. constructs ("shell scripts").
  20. If disabled, you get the old, much simpler behaviour with a somewhat
  21. smaller memory footprint.
  22. config SYS_PROMPT
  23. string "Shell prompt"
  24. default "=> "
  25. help
  26. This string is displayed in the command line to the left of the
  27. cursor.
  28. menu "Autoboot options"
  29. config AUTOBOOT
  30. bool "Autoboot"
  31. default y
  32. help
  33. This enables the autoboot. See doc/README.autoboot for detail.
  34. config AUTOBOOT_KEYED
  35. bool "Stop autobooting via specific input key / string"
  36. default n
  37. help
  38. This option enables stopping (aborting) of the automatic
  39. boot feature only by issuing a specific input key or
  40. string. If not enabled, any input key will abort the
  41. U-Boot automatic booting process and bring the device
  42. to the U-Boot prompt for user input.
  43. config AUTOBOOT_PROMPT
  44. string "Autoboot stop prompt"
  45. depends on AUTOBOOT_KEYED
  46. default "Autoboot in %d seconds\\n"
  47. help
  48. This string is displayed before the boot delay selected by
  49. CONFIG_BOOTDELAY starts. If it is not defined there is no
  50. output indicating that autoboot is in progress.
  51. Note that this define is used as the (only) argument to a
  52. printf() call, so it may contain '%' format specifications,
  53. provided that it also includes, sepearated by commas exactly
  54. like in a printf statement, the required arguments. It is
  55. the responsibility of the user to select only such arguments
  56. that are valid in the given context.
  57. config AUTOBOOT_ENCRYPTION
  58. bool "Enable encryption in autoboot stopping"
  59. depends on AUTOBOOT_KEYED
  60. default n
  61. config AUTOBOOT_DELAY_STR
  62. string "Delay autobooting via specific input key / string"
  63. depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
  64. help
  65. This option delays the automatic boot feature by issuing
  66. a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
  67. or the environment variable "bootdelaykey" is specified
  68. and this string is received from console input before
  69. autoboot starts booting, U-Boot gives a command prompt. The
  70. U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
  71. used, otherwise it never times out.
  72. config 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. config AUTOBOOT_KEYED_CTRLC
  84. bool "Enable Ctrl-C autoboot interruption"
  85. depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
  86. default n
  87. help
  88. This option allows for the boot sequence to be interrupted
  89. by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
  90. Setting this variable provides an escape sequence from the
  91. limited "password" strings.
  92. config AUTOBOOT_STOP_STR_SHA256
  93. string "Stop autobooting via SHA256 encrypted password"
  94. depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
  95. help
  96. This option adds the feature to only stop the autobooting,
  97. and therefore boot into the U-Boot prompt, when the input
  98. string / password matches a values that is encypted via
  99. a SHA256 hash and saved in the environment.
  100. endmenu
  101. source "cmd/fastboot/Kconfig"
  102. comment "Commands"
  103. menu "Info commands"
  104. config CMD_BDI
  105. bool "bdinfo"
  106. default y
  107. help
  108. Print board info
  109. config CMD_CONSOLE
  110. bool "coninfo"
  111. default y
  112. help
  113. Print console devices and information.
  114. config CMD_CPU
  115. bool "cpu"
  116. help
  117. Print information about available CPUs. This normally shows the
  118. number of CPUs, type (e.g. manufacturer, architecture, product or
  119. internal name) and clock frequency. Other information may be
  120. available depending on the CPU driver.
  121. config CMD_LICENSE
  122. bool "license"
  123. help
  124. Print GPL license text
  125. endmenu
  126. menu "Boot commands"
  127. config CMD_BOOTD
  128. bool "bootd"
  129. default y
  130. help
  131. Run the command stored in the environment "bootcmd", i.e.
  132. "bootd" does the same thing as "run bootcmd".
  133. config CMD_BOOTM
  134. bool "bootm"
  135. default y
  136. help
  137. Boot an application image from the memory.
  138. config CMD_BOOTZ
  139. bool "bootz"
  140. help
  141. Boot the Linux zImage
  142. config CMD_BOOTI
  143. bool "booti"
  144. depends on ARM64
  145. default y
  146. help
  147. Boot an AArch64 Linux Kernel image from memory.
  148. config CMD_BOOTEFI
  149. bool "bootefi"
  150. depends on EFI_LOADER
  151. default y
  152. help
  153. Boot an EFI image from memory.
  154. config CMD_BOOTEFI_HELLO_COMPILE
  155. bool "Compile a standard EFI hello world binary for testing"
  156. depends on CMD_BOOTEFI && (ARM || X86)
  157. default y
  158. help
  159. This compiles a standard EFI hello world application with U-Boot so
  160. that it can be used with the test/py testing framework. This is useful
  161. for testing that EFI is working at a basic level, and for bringing
  162. up EFI support on a new architecture.
  163. No additional space will be required in the resulting U-Boot binary
  164. when this option is enabled.
  165. config CMD_BOOTEFI_HELLO
  166. bool "Allow booting a standard EFI hello world for testing"
  167. depends on CMD_BOOTEFI_HELLO_COMPILE
  168. help
  169. This adds a standard EFI hello world application to U-Boot so that
  170. it can be used with the 'bootefi hello' command. This is useful
  171. for testing that EFI is working at a basic level, and for bringing
  172. up EFI support on a new architecture.
  173. config CMD_BOOTMENU
  174. bool "bootmenu"
  175. select MENU
  176. help
  177. Add an ANSI terminal boot menu command.
  178. config CMD_ELF
  179. bool "bootelf, bootvx"
  180. default y
  181. help
  182. Boot an ELF/vxWorks image from the memory.
  183. config CMD_FDT
  184. bool "Flattened Device Tree utility commands"
  185. default y
  186. depends on OF_LIBFDT
  187. help
  188. Do FDT related setup before booting into the Operating System.
  189. config CMD_GO
  190. bool "go"
  191. default y
  192. help
  193. Start an application at a given address.
  194. config CMD_RUN
  195. bool "run"
  196. default y
  197. help
  198. Run the command in the given environment variable.
  199. config CMD_IMI
  200. bool "iminfo"
  201. default y
  202. help
  203. Print header information for application image.
  204. config CMD_IMLS
  205. bool "imls"
  206. default y
  207. help
  208. List all images found in flash
  209. config CMD_XIMG
  210. bool "imxtract"
  211. default y
  212. help
  213. Extract a part of a multi-image.
  214. config CMD_POWEROFF
  215. bool
  216. endmenu
  217. menu "Environment commands"
  218. config CMD_ASKENV
  219. bool "ask for env variable"
  220. help
  221. Ask for environment variable
  222. config CMD_EXPORTENV
  223. bool "env export"
  224. default y
  225. help
  226. Export environments.
  227. config CMD_IMPORTENV
  228. bool "env import"
  229. default y
  230. help
  231. Import environments.
  232. config CMD_EDITENV
  233. bool "editenv"
  234. default y
  235. help
  236. Edit environment variable.
  237. config CMD_GREPENV
  238. bool "search env"
  239. help
  240. Allow for searching environment variables
  241. config CMD_SAVEENV
  242. bool "saveenv"
  243. default y
  244. help
  245. Save all environment variables into the compiled-in persistent
  246. storage.
  247. config CMD_ENV_EXISTS
  248. bool "env exists"
  249. default y
  250. help
  251. Check if a variable is defined in the environment for use in
  252. shell scripting.
  253. endmenu
  254. menu "Memory commands"
  255. config CMD_MEMORY
  256. bool "md, mm, nm, mw, cp, cmp, base, loop"
  257. default y
  258. help
  259. Memory commands.
  260. md - memory display
  261. mm - memory modify (auto-incrementing address)
  262. nm - memory modify (constant address)
  263. mw - memory write (fill)
  264. cp - memory copy
  265. cmp - memory compare
  266. base - print or set address offset
  267. loop - initialize loop on address range
  268. config CMD_CRC32
  269. bool "crc32"
  270. default y
  271. help
  272. Compute CRC32.
  273. config LOOPW
  274. bool "loopw"
  275. help
  276. Infinite write loop on address range
  277. config CMD_MEMTEST
  278. bool "memtest"
  279. help
  280. Simple RAM read/write test.
  281. config CMD_MX_CYCLIC
  282. bool "mdc, mwc"
  283. help
  284. mdc - memory display cyclic
  285. mwc - memory write cyclic
  286. config CMD_MEMINFO
  287. bool "meminfo"
  288. help
  289. Display memory information.
  290. endmenu
  291. menu "Device access commands"
  292. config CMD_DM
  293. bool "dm - Access to driver model information"
  294. depends on DM
  295. default y
  296. help
  297. Provides access to driver model data structures and information,
  298. such as a list of devices, list of uclasses and the state of each
  299. device (e.g. activated). This is not required for operation, but
  300. can be useful to see the state of driver model for debugging or
  301. interest.
  302. config CMD_DEMO
  303. bool "demo - Demonstration commands for driver model"
  304. depends on DM
  305. help
  306. Provides a 'demo' command which can be used to play around with
  307. driver model. To use this properly you will need to enable one or
  308. both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
  309. Otherwise you will always get an empty list of devices. The demo
  310. devices are defined in the sandbox device tree, so the easiest
  311. option is to use sandbox and pass the -d point to sandbox's
  312. u-boot.dtb file.
  313. config CMD_LOADB
  314. bool "loadb"
  315. default y
  316. help
  317. Load a binary file over serial line.
  318. config CMD_LOADS
  319. bool "loads"
  320. default y
  321. help
  322. Load an S-Record file over serial line
  323. config CMD_FLASH
  324. bool "flinfo, erase, protect"
  325. default y
  326. help
  327. NOR flash support.
  328. flinfo - print FLASH memory information
  329. erase - FLASH memory
  330. protect - enable or disable FLASH write protection
  331. config CMD_ARMFLASH
  332. #depends on FLASH_CFI_DRIVER
  333. bool "armflash"
  334. help
  335. ARM Ltd reference designs flash partition access
  336. config CMD_MMC
  337. bool "mmc"
  338. help
  339. MMC memory mapped support.
  340. config CMD_NAND
  341. bool "nand"
  342. help
  343. NAND support.
  344. config CMD_SF
  345. bool "sf"
  346. help
  347. SPI Flash support
  348. config CMD_SPI
  349. bool "sspi"
  350. help
  351. SPI utility command.
  352. config CMD_I2C
  353. bool "i2c"
  354. help
  355. I2C support.
  356. config CMD_USB
  357. bool "usb"
  358. help
  359. USB support.
  360. config CMD_DFU
  361. bool "dfu"
  362. select USB_FUNCTION_DFU
  363. help
  364. Enables the command "dfu" which is used to have U-Boot create a DFU
  365. class device via USB.
  366. config CMD_USB_MASS_STORAGE
  367. bool "UMS usb mass storage"
  368. help
  369. USB mass storage support
  370. config CMD_FPGA
  371. bool "fpga"
  372. default y
  373. help
  374. FPGA support.
  375. config CMD_REMOTEPROC
  376. bool "remoteproc"
  377. depends on REMOTEPROC
  378. help
  379. Support for Remote Processor control
  380. config CMD_GPIO
  381. bool "gpio"
  382. help
  383. GPIO support.
  384. config CMD_RIO
  385. bool "rapidio"
  386. select DM_RIO
  387. help
  388. RapidIO support.
  389. endmenu
  390. menu "Shell scripting commands"
  391. config CMD_ECHO
  392. bool "echo"
  393. default y
  394. help
  395. Echo args to console
  396. config CMD_ITEST
  397. bool "itest"
  398. default y
  399. help
  400. Return true/false on integer compare.
  401. config CMD_SOURCE
  402. bool "source"
  403. default y
  404. help
  405. Run script from memory
  406. config CMD_SETEXPR
  407. bool "setexpr"
  408. default y
  409. help
  410. Evaluate boolean and math expressions and store the result in an env
  411. variable.
  412. Also supports loading the value at a memory location into a variable.
  413. If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
  414. endmenu
  415. menu "Network commands"
  416. config CMD_NET
  417. bool "bootp, tftpboot"
  418. select NET
  419. default y
  420. help
  421. Network commands.
  422. bootp - boot image via network using BOOTP/TFTP protocol
  423. tftpboot - boot image via network using TFTP protocol
  424. config CMD_TFTPPUT
  425. bool "tftp put"
  426. help
  427. TFTP put command, for uploading files to a server
  428. config CMD_TFTPSRV
  429. bool "tftpsrv"
  430. help
  431. Act as a TFTP server and boot the first received file
  432. config CMD_RARP
  433. bool "rarpboot"
  434. help
  435. Boot image via network using RARP/TFTP protocol
  436. config CMD_DHCP
  437. bool "dhcp"
  438. help
  439. Boot image via network using DHCP/TFTP protocol
  440. config CMD_PXE
  441. bool "pxe"
  442. select MENU
  443. help
  444. Boot image via network using PXE protocol
  445. config CMD_NFS
  446. bool "nfs"
  447. default y
  448. help
  449. Boot image via network using NFS protocol.
  450. config CMD_MII
  451. bool "mii"
  452. help
  453. Enable MII utility commands.
  454. config CMD_PING
  455. bool "ping"
  456. help
  457. Send ICMP ECHO_REQUEST to network host
  458. config CMD_CDP
  459. bool "cdp"
  460. help
  461. Perform CDP network configuration
  462. config CMD_SNTP
  463. bool "sntp"
  464. help
  465. Synchronize RTC via network
  466. config CMD_DNS
  467. bool "dns"
  468. help
  469. Lookup the IP of a hostname
  470. config CMD_LINK_LOCAL
  471. bool "linklocal"
  472. help
  473. Acquire a network IP address using the link-local protocol
  474. endmenu
  475. menu "Misc commands"
  476. config CMD_AMBAPP
  477. bool "ambapp"
  478. depends on LEON3
  479. default y
  480. help
  481. Lists AMBA Plug-n-Play information.
  482. config SYS_AMBAPP_PRINT_ON_STARTUP
  483. bool "Show AMBA PnP info on startup"
  484. depends on CMD_AMBAPP
  485. default n
  486. help
  487. Show AMBA Plug-n-Play information on startup.
  488. config CMD_BKOPS_ENABLE
  489. bool "mmc bkops enable"
  490. depends on CMD_MMC
  491. default n
  492. help
  493. Enable command for setting manual background operations handshake
  494. on a eMMC device. The feature is optionally available on eMMC devices
  495. conforming to standard >= 4.41.
  496. config CMD_BLOCK_CACHE
  497. bool "blkcache - control and stats for block cache"
  498. depends on BLOCK_CACHE
  499. default y if BLOCK_CACHE
  500. help
  501. Enable the blkcache command, which can be used to control the
  502. operation of the cache functions.
  503. This is most useful when fine-tuning the operation of the cache
  504. during development, but also allows the cache to be disabled when
  505. it might hurt performance (e.g. when using the ums command).
  506. config CMD_CACHE
  507. bool "icache or dcache"
  508. help
  509. Enable the "icache" and "dcache" commands
  510. config CMD_TIME
  511. bool "time"
  512. help
  513. Run commands and summarize execution time.
  514. # TODO: rename to CMD_SLEEP
  515. config CMD_MISC
  516. bool "sleep"
  517. default y
  518. help
  519. Delay execution for some time
  520. config CMD_TIMER
  521. bool "timer"
  522. help
  523. Access the system timer.
  524. config CMD_SETGETDCR
  525. bool "getdcr, setdcr, getidcr, setidcr"
  526. depends on 4xx
  527. default y
  528. help
  529. getdcr - Get an AMCC PPC 4xx DCR's value
  530. setdcr - Set an AMCC PPC 4xx DCR's value
  531. getidcr - Get a register value via indirect DCR addressing
  532. setidcr - Set a register value via indirect DCR addressing
  533. config CMD_SOUND
  534. bool "sound"
  535. depends on SOUND
  536. help
  537. This provides basic access to the U-Boot's sound support. The main
  538. feature is to play a beep.
  539. sound init - set up sound system
  540. sound play - play a sound
  541. config CMD_QFW
  542. bool "qfw"
  543. select QFW
  544. help
  545. This provides access to the QEMU firmware interface. The main
  546. feature is to allow easy loading of files passed to qemu-system
  547. via -kernel / -initrd
  548. source "cmd/mvebu/Kconfig"
  549. endmenu
  550. config CMD_BOOTSTAGE
  551. bool "Enable the 'bootstage' command"
  552. depends on BOOTSTAGE
  553. help
  554. Add a 'bootstage' command which supports printing a report
  555. and un/stashing of bootstage data.
  556. menu "Power commands"
  557. config CMD_PMIC
  558. bool "Enable Driver Model PMIC command"
  559. depends on DM_PMIC
  560. help
  561. This is the pmic command, based on a driver model pmic's API.
  562. Command features are unchanged:
  563. - list - list pmic devices
  564. - pmic dev <id> - show or [set] operating pmic device (NEW)
  565. - pmic dump - dump registers
  566. - pmic read address - read byte of register at address
  567. - pmic write address - write byte to register at address
  568. The only one change for this command is 'dev' subcommand.
  569. config CMD_REGULATOR
  570. bool "Enable Driver Model REGULATOR command"
  571. depends on DM_REGULATOR
  572. help
  573. This command is based on driver model regulator's API.
  574. User interface features:
  575. - list - list regulator devices
  576. - regulator dev <id> - show or [set] operating regulator device
  577. - regulator info - print constraints info
  578. - regulator status - print operating status
  579. - regulator value <val] <-f> - print/[set] voltage value [uV]
  580. - regulator current <val> - print/[set] current value [uA]
  581. - regulator mode <id> - print/[set] operating mode id
  582. - regulator enable - enable the regulator output
  583. - regulator disable - disable the regulator output
  584. The '-f' (force) option can be used for set the value which exceeds
  585. the limits, which are found in device-tree and are kept in regulator's
  586. uclass platdata structure.
  587. endmenu
  588. menu "Security commands"
  589. config CMD_TPM
  590. bool "Enable the 'tpm' command"
  591. depends on TPM
  592. help
  593. This provides a means to talk to a TPM from the command line. A wide
  594. range of commands if provided - see 'tpm help' for details. The
  595. command requires a suitable TPM on your board and the correct driver
  596. must be enabled.
  597. config CMD_TPM_TEST
  598. bool "Enable the 'tpm test' command"
  599. depends on CMD_TPM
  600. help
  601. This provides a a series of tests to confirm that the TPM is working
  602. correctly. The tests cover initialisation, non-volatile RAM, extend,
  603. global lock and checking that timing is within expectations. The
  604. tests pass correctly on Infineon TPMs but may need to be adjusted
  605. for other devices.
  606. endmenu
  607. menu "Firmware commands"
  608. config CMD_CROS_EC
  609. bool "Enable crosec command"
  610. depends on CROS_EC
  611. default y
  612. help
  613. Enable command-line access to the Chrome OS EC (Embedded
  614. Controller). This provides the 'crosec' command which has
  615. a number of sub-commands for performing EC tasks such as
  616. updating its flash, accessing a small saved context area
  617. and talking to the I2C bus behind the EC (if there is one).
  618. endmenu
  619. menu "Filesystem commands"
  620. config CMD_EXT2
  621. bool "ext2 command support"
  622. help
  623. Enables EXT2 FS command
  624. config CMD_EXT4
  625. bool "ext4 command support"
  626. help
  627. Enables EXT4 FS command
  628. config CMD_EXT4_WRITE
  629. depends on CMD_EXT4
  630. bool "ext4 write command support"
  631. help
  632. Enables EXT4 FS write command
  633. config CMD_FAT
  634. bool "FAT command support"
  635. help
  636. Support for the FAT fs
  637. config CMD_FS_GENERIC
  638. bool "filesystem commands"
  639. help
  640. Enables filesystem commands (e.g. load, ls) that work for multiple
  641. fs types.
  642. endmenu
  643. config CMD_UBI
  644. tristate "Enable UBI - Unsorted block images commands"
  645. select CRC32
  646. select MTD_UBI
  647. help
  648. UBI is a software layer above MTD layer which admits use of LVM-like
  649. logical volumes on top of MTD devices, hides some complexities of
  650. flash chips like wear and bad blocks and provides some other useful
  651. capabilities. Please, consult the MTD web site for more details
  652. (www.linux-mtd.infradead.org). Activate this option if you want
  653. to use U-Boot UBI commands.
  654. endmenu