Kconfig 15 KB

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