Kconfig 48 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774
  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 CMDLINE_EDITING
  23. bool "Enable command line editing"
  24. depends on CMDLINE
  25. default y
  26. help
  27. Enable editing and History functions for interactive command line
  28. input operations
  29. config AUTO_COMPLETE
  30. bool "Enable auto complete using TAB"
  31. depends on CMDLINE
  32. default y
  33. help
  34. Enable auto completion of commands using TAB.
  35. config SYS_LONGHELP
  36. bool "Enable long help messages"
  37. depends on CMDLINE
  38. default y if CMDLINE
  39. help
  40. Defined when you want long help messages included
  41. Do not set this option when short of memory.
  42. config SYS_PROMPT
  43. string "Shell prompt"
  44. default "=> "
  45. help
  46. This string is displayed in the command line to the left of the
  47. cursor.
  48. menu "Autoboot options"
  49. config AUTOBOOT
  50. bool "Autoboot"
  51. default y
  52. help
  53. This enables the autoboot. See doc/README.autoboot for detail.
  54. config AUTOBOOT_KEYED
  55. bool "Stop autobooting via specific input key / string"
  56. default n
  57. help
  58. This option enables stopping (aborting) of the automatic
  59. boot feature only by issuing a specific input key or
  60. string. If not enabled, any input key will abort the
  61. U-Boot automatic booting process and bring the device
  62. to the U-Boot prompt for user input.
  63. config AUTOBOOT_PROMPT
  64. string "Autoboot stop prompt"
  65. depends on AUTOBOOT_KEYED
  66. default "Autoboot in %d seconds\\n"
  67. help
  68. This string is displayed before the boot delay selected by
  69. CONFIG_BOOTDELAY starts. If it is not defined there is no
  70. output indicating that autoboot is in progress.
  71. Note that this define is used as the (only) argument to a
  72. printf() call, so it may contain '%' format specifications,
  73. provided that it also includes, sepearated by commas exactly
  74. like in a printf statement, the required arguments. It is
  75. the responsibility of the user to select only such arguments
  76. that are valid in the given context.
  77. config AUTOBOOT_ENCRYPTION
  78. bool "Enable encryption in autoboot stopping"
  79. depends on AUTOBOOT_KEYED
  80. default n
  81. config AUTOBOOT_DELAY_STR
  82. string "Delay autobooting via specific input key / string"
  83. depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
  84. help
  85. This option delays the automatic boot feature by issuing
  86. a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
  87. or the environment variable "bootdelaykey" is specified
  88. and this string is received from console input before
  89. autoboot starts booting, U-Boot gives a command prompt. The
  90. U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
  91. used, otherwise it never times out.
  92. config AUTOBOOT_STOP_STR
  93. string "Stop autobooting via specific input key / string"
  94. depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
  95. help
  96. This option enables stopping (aborting) of the automatic
  97. boot feature only by issuing a specific input key or
  98. string. If CONFIG_AUTOBOOT_STOP_STR or the environment
  99. variable "bootstopkey" is specified and this string is
  100. received from console input before autoboot starts booting,
  101. U-Boot gives a command prompt. The U-Boot prompt never
  102. times out, even if CONFIG_BOOT_RETRY_TIME is used.
  103. config AUTOBOOT_KEYED_CTRLC
  104. bool "Enable Ctrl-C autoboot interruption"
  105. depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
  106. default n
  107. help
  108. This option allows for the boot sequence to be interrupted
  109. by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
  110. Setting this variable provides an escape sequence from the
  111. limited "password" strings.
  112. config AUTOBOOT_STOP_STR_SHA256
  113. string "Stop autobooting via SHA256 encrypted password"
  114. depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
  115. help
  116. This option adds the feature to only stop the autobooting,
  117. and therefore boot into the U-Boot prompt, when the input
  118. string / password matches a values that is encypted via
  119. a SHA256 hash and saved in the environment.
  120. endmenu
  121. config BUILD_BIN2C
  122. bool
  123. comment "Commands"
  124. menu "Info commands"
  125. config CMD_BDI
  126. bool "bdinfo"
  127. default y
  128. help
  129. Print board info
  130. config CMD_CONFIG
  131. bool "config"
  132. select BUILD_BIN2C
  133. default SANDBOX
  134. help
  135. Print ".config" contents.
  136. If this option is enabled, the ".config" file contents are embedded
  137. in the U-Boot image and can be printed on the console by the "config"
  138. command. This provides information of which options are enabled on
  139. the running U-Boot.
  140. config CMD_CONSOLE
  141. bool "coninfo"
  142. default y
  143. help
  144. Print console devices and information.
  145. config CMD_CPU
  146. bool "cpu"
  147. help
  148. Print information about available CPUs. This normally shows the
  149. number of CPUs, type (e.g. manufacturer, architecture, product or
  150. internal name) and clock frequency. Other information may be
  151. available depending on the CPU driver.
  152. config CMD_LICENSE
  153. bool "license"
  154. select BUILD_BIN2C
  155. help
  156. Print GPL license text
  157. config CMD_REGINFO
  158. bool "reginfo"
  159. depends on PPC
  160. help
  161. Register dump
  162. endmenu
  163. menu "Boot commands"
  164. config CMD_BOOTD
  165. bool "bootd"
  166. default y
  167. help
  168. Run the command stored in the environment "bootcmd", i.e.
  169. "bootd" does the same thing as "run bootcmd".
  170. config CMD_BOOTM
  171. bool "bootm"
  172. default y
  173. help
  174. Boot an application image from the memory.
  175. config CMD_BOOTZ
  176. bool "bootz"
  177. help
  178. Boot the Linux zImage
  179. config CMD_BOOTI
  180. bool "booti"
  181. depends on ARM64
  182. default y
  183. help
  184. Boot an AArch64 Linux Kernel image from memory.
  185. config CMD_BOOTEFI
  186. bool "bootefi"
  187. depends on EFI_LOADER
  188. default y
  189. help
  190. Boot an EFI image from memory.
  191. config CMD_BOOTEFI_HELLO_COMPILE
  192. bool "Compile a standard EFI hello world binary for testing"
  193. depends on CMD_BOOTEFI && (ARM || X86)
  194. default y
  195. help
  196. This compiles a standard EFI hello world application with U-Boot so
  197. that it can be used with the test/py testing framework. This is useful
  198. for testing that EFI is working at a basic level, and for bringing
  199. up EFI support on a new architecture.
  200. No additional space will be required in the resulting U-Boot binary
  201. when this option is enabled.
  202. config CMD_BOOTEFI_HELLO
  203. bool "Allow booting a standard EFI hello world for testing"
  204. depends on CMD_BOOTEFI_HELLO_COMPILE
  205. help
  206. This adds a standard EFI hello world application to U-Boot so that
  207. it can be used with the 'bootefi hello' command. This is useful
  208. for testing that EFI is working at a basic level, and for bringing
  209. up EFI support on a new architecture.
  210. source lib/efi_selftest/Kconfig
  211. config CMD_BOOTMENU
  212. bool "bootmenu"
  213. select MENU
  214. help
  215. Add an ANSI terminal boot menu command.
  216. config CMD_ELF
  217. bool "bootelf, bootvx"
  218. default y
  219. help
  220. Boot an ELF/vxWorks image from the memory.
  221. config CMD_FDT
  222. bool "Flattened Device Tree utility commands"
  223. default y
  224. depends on OF_LIBFDT
  225. help
  226. Do FDT related setup before booting into the Operating System.
  227. config CMD_GO
  228. bool "go"
  229. default y
  230. help
  231. Start an application at a given address.
  232. config CMD_RUN
  233. bool "run"
  234. default y
  235. help
  236. Run the command in the given environment variable.
  237. config CMD_IMI
  238. bool "iminfo"
  239. default y
  240. help
  241. Print header information for application image.
  242. config CMD_IMLS
  243. bool "imls"
  244. help
  245. List all images found in flash
  246. config CMD_XIMG
  247. bool "imxtract"
  248. default y
  249. help
  250. Extract a part of a multi-image.
  251. config CMD_POWEROFF
  252. bool "poweroff"
  253. help
  254. Poweroff/Shutdown the system
  255. config CMD_SPL
  256. bool "spl export - Export boot information for Falcon boot"
  257. depends on SPL
  258. help
  259. Falcon mode allows booting directly from SPL into an Operating
  260. System such as Linux, thus skipping U-Boot proper. See
  261. doc/README.falcon for full information about how to use this
  262. command.
  263. config CMD_SPL_NAND_OFS
  264. hex "Offset of OS command line args for Falcon-mode NAND boot"
  265. depends on CMD_SPL
  266. default 0
  267. help
  268. This provides the offset of the command line arguments for Linux
  269. when booting from NAND in Falcon mode. See doc/README.falcon
  270. for full information about how to use this option (and also see
  271. board/gateworks/gw_ventana/README for an example).
  272. config CMD_SPL_WRITE_SIZE
  273. hex "Size of argument area"
  274. depends on CMD_SPL
  275. default 0x2000
  276. help
  277. This provides the size of the command-line argument area in NAND
  278. flash used by Falcon-mode boot. See the documentation until CMD_SPL
  279. for detail.
  280. config CMD_FITUPD
  281. bool "fitImage update command"
  282. help
  283. Implements the 'fitupd' command, which allows to automatically
  284. store software updates present on a TFTP server in NOR Flash
  285. config CMD_THOR_DOWNLOAD
  286. bool "thor - TIZEN 'thor' download"
  287. help
  288. Implements the 'thor' download protocol. This is a way of
  289. downloading a software update over USB from an attached host.
  290. There is no documentation about this within the U-Boot source code
  291. but you should be able to find something on the interwebs.
  292. config CMD_ZBOOT
  293. bool "zboot - x86 boot command"
  294. help
  295. With x86 machines it is common to boot a bzImage file which
  296. contains both a kernel and a setup.bin file. The latter includes
  297. configuration information from the dark ages which x86 boards still
  298. need to pick things out of.
  299. Consider using FIT in preference to this since it supports directly
  300. booting both 32- and 64-bit kernels, as well as secure boot.
  301. Documentation is available in doc/uImage.FIT/x86-fit-boot.txt
  302. endmenu
  303. menu "Environment commands"
  304. config CMD_ASKENV
  305. bool "ask for env variable"
  306. help
  307. Ask for environment variable
  308. config CMD_EXPORTENV
  309. bool "env export"
  310. default y
  311. help
  312. Export environments.
  313. config CMD_IMPORTENV
  314. bool "env import"
  315. default y
  316. help
  317. Import environments.
  318. config CMD_EDITENV
  319. bool "editenv"
  320. default y
  321. help
  322. Edit environment variable.
  323. config CMD_GREPENV
  324. bool "search env"
  325. help
  326. Allow for searching environment variables
  327. config CMD_SAVEENV
  328. bool "saveenv"
  329. default y
  330. help
  331. Save all environment variables into the compiled-in persistent
  332. storage.
  333. config CMD_ENV_EXISTS
  334. bool "env exists"
  335. default y
  336. help
  337. Check if a variable is defined in the environment for use in
  338. shell scripting.
  339. config CMD_ENV_CALLBACK
  340. bool "env callbacks - print callbacks and their associated variables"
  341. help
  342. Some environment variable have callbacks defined by
  343. U_BOOT_ENV_CALLBACK. These are called when the variable changes.
  344. For example changing "baudrate" adjust the serial baud rate. This
  345. command lists the currently defined callbacks.
  346. config CMD_ENV_FLAGS
  347. bool "env flags -print variables that have non-default flags"
  348. help
  349. Some environment variables have special flags that control their
  350. behaviour. For example, serial# can only be written once and cannot
  351. be deleted. This command shows the variables that have special
  352. flags.
  353. endmenu
  354. menu "Memory commands"
  355. config CMD_BINOP
  356. bool "binop"
  357. help
  358. Compute binary operations (xor, or, and) of byte arrays of arbitrary
  359. size from memory and store the result in memory or the environment.
  360. config CMD_CRC32
  361. bool "crc32"
  362. select HASH
  363. default y
  364. help
  365. Compute CRC32.
  366. config CRC32_VERIFY
  367. bool "crc32 -v"
  368. depends on CMD_CRC32
  369. help
  370. Add -v option to verify data against a crc32 checksum.
  371. config CMD_EEPROM
  372. bool "eeprom - EEPROM subsystem"
  373. help
  374. (deprecated, needs conversion to driver model)
  375. Provides commands to read and write EEPROM (Electrically Erasable
  376. Programmable Read Only Memory) chips that are connected over an
  377. I2C bus.
  378. config CMD_EEPROM_LAYOUT
  379. bool "Enable layout-aware eeprom commands"
  380. depends on CMD_EEPROM
  381. help
  382. (deprecated, needs conversion to driver model)
  383. When enabled, additional eeprom sub-commands become available.
  384. eeprom print - prints the contents of the eeprom in a human-readable
  385. way (eeprom layout fields, and data formatted to be fit for human
  386. consumption).
  387. eeprom update - allows user to update eeprom fields by specifying
  388. the field name, and providing the new data in a human readable format
  389. (same format as displayed by the eeprom print command).
  390. Both commands can either auto detect the layout, or be told which
  391. layout to use.
  392. Feature API:
  393. __weak int parse_layout_version(char *str)
  394. - override to provide your own layout name parsing
  395. __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
  396. int layout_version);
  397. - override to setup the layout metadata based on the version
  398. __weak int eeprom_layout_detect(unsigned char *data)
  399. - override to provide your own algorithm for detecting layout
  400. version
  401. eeprom_field.c
  402. - contains various printing and updating functions for common
  403. types of eeprom fields. Can be used for defining
  404. custom layouts.
  405. config EEPROM_LAYOUT_HELP_STRING
  406. string "Tells user what layout names are supported"
  407. depends on CMD_EEPROM_LAYOUT
  408. default "<not defined>"
  409. help
  410. Help printed with the LAYOUT VERSIONS part of the 'eeprom'
  411. command's help.
  412. config LOOPW
  413. bool "loopw"
  414. help
  415. Infinite write loop on address range
  416. config CMD_MD5SUM
  417. bool "md5sum"
  418. default n
  419. select MD5
  420. help
  421. Compute MD5 checksum.
  422. config MD5SUM_VERIFY
  423. bool "md5sum -v"
  424. default n
  425. depends on CMD_MD5SUM
  426. help
  427. Add -v option to verify data against an MD5 checksum.
  428. config CMD_MEMINFO
  429. bool "meminfo"
  430. help
  431. Display memory information.
  432. config CMD_MEMORY
  433. bool "md, mm, nm, mw, cp, cmp, base, loop"
  434. default y
  435. help
  436. Memory commands.
  437. md - memory display
  438. mm - memory modify (auto-incrementing address)
  439. nm - memory modify (constant address)
  440. mw - memory write (fill)
  441. cp - memory copy
  442. cmp - memory compare
  443. base - print or set address offset
  444. loop - initialize loop on address range
  445. config CMD_MEMTEST
  446. bool "memtest"
  447. help
  448. Simple RAM read/write test.
  449. if CMD_MEMTEST
  450. config SYS_ALT_MEMTEST
  451. bool "Alternative test"
  452. help
  453. Use a more complete alternative memory test.
  454. endif
  455. config CMD_MX_CYCLIC
  456. bool "mdc, mwc"
  457. help
  458. mdc - memory display cyclic
  459. mwc - memory write cyclic
  460. config CMD_SHA1SUM
  461. bool "sha1sum"
  462. select SHA1
  463. help
  464. Compute SHA1 checksum.
  465. config SHA1SUM_VERIFY
  466. bool "sha1sum -v"
  467. depends on CMD_SHA1SUM
  468. help
  469. Add -v option to verify data against a SHA1 checksum.
  470. config CMD_STRINGS
  471. bool "strings - display strings in memory"
  472. help
  473. This works similarly to the Unix 'strings' command except that it
  474. works with a memory range. String of printable characters found
  475. within the range are displayed. The minimum number of characters
  476. for a sequence to be considered a string can be provided.
  477. endmenu
  478. menu "Compression commands"
  479. config CMD_LZMADEC
  480. bool "lzmadec"
  481. default y if CMD_BOOTI
  482. select LZMA
  483. help
  484. Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
  485. image from memory.
  486. config CMD_UNZIP
  487. bool "unzip"
  488. default y if CMD_BOOTI
  489. help
  490. Uncompress a zip-compressed memory region.
  491. config CMD_ZIP
  492. bool "zip"
  493. help
  494. Compress a memory region with zlib deflate method.
  495. endmenu
  496. menu "Device access commands"
  497. config CMD_ARMFLASH
  498. #depends on FLASH_CFI_DRIVER
  499. bool "armflash"
  500. help
  501. ARM Ltd reference designs flash partition access
  502. config CMD_ADC
  503. bool "adc - Access Analog to Digital Converters info and data"
  504. select ADC
  505. select DM_REGULATOR
  506. help
  507. Shows ADC device info and permit printing one-shot analog converted
  508. data from a named Analog to Digital Converter.
  509. config CMD_CLK
  510. bool "clk - Show clock frequencies"
  511. help
  512. (deprecated)
  513. Shows clock frequences by calling a sock_clk_dump() hook function.
  514. This is depreated in favour of using the CLK uclass and accessing
  515. clock values from associated drivers. However currently no command
  516. exists for this.
  517. config CMD_DEMO
  518. bool "demo - Demonstration commands for driver model"
  519. depends on DM
  520. help
  521. Provides a 'demo' command which can be used to play around with
  522. driver model. To use this properly you will need to enable one or
  523. both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
  524. Otherwise you will always get an empty list of devices. The demo
  525. devices are defined in the sandbox device tree, so the easiest
  526. option is to use sandbox and pass the -d point to sandbox's
  527. u-boot.dtb file.
  528. config CMD_DFU
  529. bool "dfu"
  530. select DFU
  531. help
  532. Enables the command "dfu" which is used to have U-Boot create a DFU
  533. class device via USB. This command requires that the "dfu_alt_info"
  534. environment variable be set and define the alt settings to expose to
  535. the host.
  536. config CMD_DM
  537. bool "dm - Access to driver model information"
  538. depends on DM
  539. default y
  540. help
  541. Provides access to driver model data structures and information,
  542. such as a list of devices, list of uclasses and the state of each
  543. device (e.g. activated). This is not required for operation, but
  544. can be useful to see the state of driver model for debugging or
  545. interest.
  546. config CMD_FASTBOOT
  547. bool "fastboot - Android fastboot support"
  548. depends on FASTBOOT
  549. help
  550. This enables the command "fastboot" which enables the Android
  551. fastboot mode for the platform. Fastboot is a protocol for
  552. downloading images, flashing and device control used on
  553. Android devices. Fastboot requires either the network stack
  554. enabled or support for acting as a USB device.
  555. See doc/README.android-fastboot for more information.
  556. config CMD_FDC
  557. bool "fdcboot - Boot from floppy device"
  558. help
  559. The 'fdtboot' command allows booting an image from a floppy disk.
  560. config CMD_FLASH
  561. bool "flinfo, erase, protect"
  562. default y
  563. help
  564. NOR flash support.
  565. flinfo - print FLASH memory information
  566. erase - FLASH memory
  567. protect - enable or disable FLASH write protection
  568. config CMD_FPGA
  569. bool "fpga"
  570. depends on FPGA
  571. default y
  572. help
  573. FPGA support.
  574. config CMD_FPGA_LOADBP
  575. bool "fpga loadbp - load partial bitstream (Xilinx only)"
  576. depends on CMD_FPGA
  577. help
  578. Supports loading an FPGA device from a bitstream buffer containing
  579. a partial bitstream.
  580. config CMD_FPGA_LOADFS
  581. bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
  582. depends on CMD_FPGA
  583. help
  584. Supports loading an FPGA device from a FAT filesystem.
  585. config CMD_FPGA_LOADMK
  586. bool "fpga loadmk - load bitstream from image"
  587. depends on CMD_FPGA
  588. help
  589. Supports loading an FPGA device from a image generated by mkimage.
  590. config CMD_FPGA_LOADP
  591. bool "fpga loadp - load partial bitstream"
  592. depends on CMD_FPGA
  593. help
  594. Supports loading an FPGA device from a bitstream buffer containing
  595. a partial bitstream.
  596. config CMD_FPGAD
  597. bool "fpgad - dump FPGA registers"
  598. help
  599. (legacy, needs conversion to driver model)
  600. Provides a way to dump FPGA registers by calling the board-specific
  601. fpga_get_reg() function. This functions similarly to the 'md'
  602. command.
  603. config CMD_FUSE
  604. bool "fuse - support for the fuse subssystem"
  605. help
  606. (deprecated - needs conversion to driver model)
  607. This allows reading, sensing, programming or overriding fuses
  608. which control the behaviour of the device. The command uses the
  609. fuse_...() API.
  610. config CMD_GPIO
  611. bool "gpio"
  612. help
  613. GPIO support.
  614. config CMD_GPT
  615. bool "GPT (GUID Partition Table) command"
  616. select PARTITION_UUIDS
  617. select EFI_PARTITION
  618. select HAVE_BLOCK_DEVICE
  619. imply RANDOM_UUID
  620. help
  621. Enable the 'gpt' command to ready and write GPT style partition
  622. tables.
  623. config RANDOM_UUID
  624. bool "GPT Random UUID generation"
  625. select LIB_UUID
  626. help
  627. Enable the generation of partitions with random UUIDs if none
  628. are provided.
  629. config CMD_GPT_RENAME
  630. bool "GPT partition renaming commands"
  631. depends on CMD_GPT
  632. help
  633. Enables the 'gpt' command to interchange names on two GPT
  634. partitions via the 'gpt swap' command or to rename single
  635. partitions via the 'rename' command.
  636. config CMD_IDE
  637. bool "ide - Support for IDE drivers"
  638. select IDE
  639. help
  640. Provides an 'ide' command which allows accessing the IDE drive,
  641. reseting the IDE interface, printing the partition table and
  642. geting device info. It also enables the 'diskboot' command which
  643. permits booting from an IDE drive.
  644. config CMD_IO
  645. bool "io - Support for performing I/O accesses"
  646. help
  647. Provides an 'iod' command to display I/O space and an 'iow' command
  648. to write values to the I/O space. This can be useful for manually
  649. checking the state of devices during boot when debugging device
  650. drivers, etc.
  651. config CMD_IOTRACE
  652. bool "iotrace - Support for tracing I/O activity"
  653. help
  654. Provides an 'iotrace' command which supports recording I/O reads and
  655. writes in a trace buffer in memory . It also maintains a checksum
  656. of the trace records (even if space is exhausted) so that the
  657. sequence of I/O accesses can be verified.
  658. When debugging drivers it is useful to see what I/O accesses were
  659. done and in what order.
  660. Even if the individual accesses are of little interest it can be
  661. useful to verify that the access pattern is consistent each time
  662. an operation is performed. In this case a checksum can be used to
  663. characterise the operation of a driver. The checksum can be compared
  664. across different runs of the operation to verify that the driver is
  665. working properly.
  666. In particular, when performing major refactoring of the driver, where
  667. the access pattern should not change, the checksum provides assurance
  668. that the refactoring work has not broken the driver.
  669. This works by sneaking into the io.h heder for an architecture and
  670. redirecting I/O accesses through iotrace's tracing mechanism.
  671. For now no commands are provided to examine the trace buffer. The
  672. format is fairly simple, so 'md' is a reasonable substitute.
  673. Note: The checksum feature is only useful for I/O regions where the
  674. contents do not change outside of software control. Where this is not
  675. suitable you can fall back to manually comparing the addresses. It
  676. might be useful to enhance tracing to only checksum the accesses and
  677. not the data read/written.
  678. config CMD_I2C
  679. bool "i2c"
  680. help
  681. I2C support.
  682. config CMD_LOADB
  683. bool "loadb"
  684. default y
  685. help
  686. Load a binary file over serial line.
  687. config CMD_LOADS
  688. bool "loads"
  689. default y
  690. help
  691. Load an S-Record file over serial line
  692. config CMD_MMC
  693. bool "mmc"
  694. help
  695. MMC memory mapped support.
  696. config CMD_MMC_RPMB
  697. bool "Enable support for RPMB in the mmc command"
  698. depends on CMD_MMC
  699. help
  700. Enable the commands for reading, writing and programming the
  701. key for the Replay Protection Memory Block partition in eMMC.
  702. config CMD_MMC_SWRITE
  703. bool "mmc swrite"
  704. depends on CMD_MMC && MMC_WRITE
  705. select IMAGE_SPARSE
  706. help
  707. Enable support for the "mmc swrite" command to write Android sparse
  708. images to eMMC.
  709. config CMD_NAND
  710. bool "nand"
  711. default y if NAND_SUNXI
  712. help
  713. NAND support.
  714. if CMD_NAND
  715. config CMD_NAND_TRIMFFS
  716. bool "nand write.trimffs"
  717. default y if ARCH_SUNXI
  718. help
  719. Allows one to skip empty pages when flashing something on a NAND.
  720. config CMD_NAND_LOCK_UNLOCK
  721. bool "nand lock/unlock"
  722. help
  723. NAND locking support.
  724. config CMD_NAND_TORTURE
  725. bool "nand torture"
  726. help
  727. NAND torture support.
  728. endif # CMD_NAND
  729. config CMD_NVME
  730. bool "nvme"
  731. depends on NVME
  732. default y if NVME
  733. help
  734. NVM Express device support
  735. config CMD_MMC_SPI
  736. bool "mmc_spi - Set up MMC SPI device"
  737. help
  738. Provides a way to set up an MMC (Multimedia Card) SPI (Serial
  739. Peripheral Interface) device. The device provides a means of
  740. accessing an MMC device via SPI using a single data line, limited
  741. to 20MHz. It is useful since it reduces the amount of protocol code
  742. required.
  743. config CMD_ONENAND
  744. bool "onenand - access to onenand device"
  745. help
  746. OneNAND is a brand of NAND ('Not AND' gate) flash which provides
  747. various useful features. This command allows reading, writing,
  748. and erasing blocks. It allso provides a way to show and change
  749. bad blocks, and test the device.
  750. config CMD_PART
  751. bool "part"
  752. select PARTITION_UUIDS
  753. select HAVE_BLOCK_DEVICE
  754. help
  755. Read and display information about the partition table on
  756. various media.
  757. config CMD_PCI
  758. bool "pci - Access PCI devices"
  759. help
  760. Provide access to PCI (Peripheral Interconnect Bus), a type of bus
  761. used on some devices to allow the CPU to communicate with its
  762. peripherals. Sub-commands allow bus enumeration, displaying and
  763. changing configuration space and a few other features.
  764. config CMD_PCMCIA
  765. bool "pinit - Set up PCMCIA device"
  766. help
  767. Provides a means to initialise a PCMCIA (Personal Computer Memory
  768. Card International Association) device. This is an old standard from
  769. about 1990. These devices are typically removable memory or network
  770. cards using a standard 68-pin connector.
  771. config CMD_READ
  772. bool "read - Read binary data from a partition"
  773. help
  774. Provides low-level access to the data in a partition.
  775. config CMD_REMOTEPROC
  776. bool "remoteproc"
  777. depends on REMOTEPROC
  778. help
  779. Support for Remote Processor control
  780. config CMD_SATA
  781. bool "sata - Access SATA subsystem"
  782. select SATA
  783. help
  784. SATA (Serial Advanced Technology Attachment) is a serial bus
  785. standard for connecting to hard drives and other storage devices.
  786. This command provides information about attached devices and allows
  787. reading, writing and other operations.
  788. SATA replaces PATA (originally just ATA), which stands for Parallel AT
  789. Attachment, where AT refers to an IBM AT (Advanced Technology)
  790. computer released in 1984.
  791. config CMD_SAVES
  792. bool "saves - Save a file over serial in S-Record format"
  793. help
  794. Provides a way to save a binary file using the Motorola S-Record
  795. format over the serial line.
  796. config CMD_SCSI
  797. bool "scsi - Access to SCSI devices"
  798. default y if SCSI
  799. help
  800. This provides a 'scsi' command which provides access to SCSI (Small
  801. Computer System Interface) devices. The command provides a way to
  802. scan the bus, reset the bus, read and write data and get information
  803. about devices.
  804. config CMD_SDRAM
  805. bool "sdram - Print SDRAM configuration information"
  806. help
  807. Provides information about attached SDRAM. This assumed that the
  808. SDRAM has an EEPROM with information that can be read using the
  809. I2C bus. This is only available on some boards.
  810. config CMD_SF
  811. bool "sf"
  812. help
  813. SPI Flash support
  814. config CMD_SF_TEST
  815. bool "sf test - Allow testing of SPI flash"
  816. help
  817. Provides a way to test that SPI flash is working correctly. The
  818. test is destructive, in that an area of SPI flash must be provided
  819. for the test to use. Performance information is also provided,
  820. measuring the performance of reading, writing and erasing in
  821. Mbps (Million Bits Per Second). This value should approximately
  822. equal the SPI bus speed for a single-bit-wide SPI bus, assuming
  823. everything is working properly.
  824. config CMD_SPI
  825. bool "sspi"
  826. help
  827. SPI utility command.
  828. config CMD_TSI148
  829. bool "tsi148 - Command to access tsi148 device"
  830. help
  831. This provides various sub-commands to initialise and configure the
  832. Turndra tsi148 device. See the command help for full details.
  833. config CMD_UNIVERSE
  834. bool "universe - Command to set up the Turndra Universe controller"
  835. help
  836. This allows setting up the VMEbus provided by this controller.
  837. See the command help for full details.
  838. config CMD_USB
  839. bool "usb"
  840. select HAVE_BLOCK_DEVICE
  841. help
  842. USB support.
  843. config CMD_USB_SDP
  844. bool "sdp"
  845. select USB_FUNCTION_SDP
  846. help
  847. Enables the command "sdp" which is used to have U-Boot emulating the
  848. Serial Download Protocol (SDP) via USB.
  849. config CMD_ROCKUSB
  850. bool "rockusb"
  851. depends on USB_FUNCTION_ROCKUSB
  852. help
  853. Rockusb protocol is widely used by Rockchip SoC based devices. It can
  854. read/write info, image to/from devices. This enable rockusb command
  855. support to communication with rockusb device. for more detail about
  856. this command, please read doc/README.rockusb.
  857. config CMD_USB_MASS_STORAGE
  858. bool "UMS usb mass storage"
  859. select USB_FUNCTION_MASS_STORAGE
  860. help
  861. USB mass storage support
  862. endmenu
  863. menu "Shell scripting commands"
  864. config CMD_ECHO
  865. bool "echo"
  866. default y
  867. help
  868. Echo args to console
  869. config CMD_ITEST
  870. bool "itest"
  871. default y
  872. help
  873. Return true/false on integer compare.
  874. config CMD_SOURCE
  875. bool "source"
  876. default y
  877. help
  878. Run script from memory
  879. config CMD_SETEXPR
  880. bool "setexpr"
  881. default y
  882. help
  883. Evaluate boolean and math expressions and store the result in an env
  884. variable.
  885. Also supports loading the value at a memory location into a variable.
  886. If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
  887. endmenu
  888. if NET
  889. menuconfig CMD_NET
  890. bool "Network commands"
  891. default y
  892. if CMD_NET
  893. config CMD_BOOTP
  894. bool "bootp"
  895. default y
  896. help
  897. bootp - boot image via network using BOOTP/TFTP protocol
  898. config CMD_DHCP
  899. bool "dhcp"
  900. depends on CMD_BOOTP
  901. help
  902. Boot image via network using DHCP/TFTP protocol
  903. config BOOTP_BOOTPATH
  904. bool "Request & store 'rootpath' from BOOTP/DHCP server"
  905. default y
  906. depends on CMD_BOOTP
  907. help
  908. Even though the config is called BOOTP_BOOTPATH, it stores the
  909. path in the variable 'rootpath'.
  910. config BOOTP_DNS
  911. bool "Request & store 'dnsip' from BOOTP/DHCP server"
  912. default y
  913. depends on CMD_BOOTP
  914. help
  915. The primary DNS server is stored as 'dnsip'. If two servers are
  916. returned, you must set BOOTP_DNS2 to store that second server IP
  917. also.
  918. config BOOTP_DNS2
  919. bool "Store 'dnsip2' from BOOTP/DHCP server"
  920. depends on BOOTP_DNS
  921. help
  922. If a DHCP client requests the DNS server IP from a DHCP server,
  923. it is possible that more than one DNS serverip is offered to the
  924. client. If CONFIG_BOOTP_DNS2 is enabled, the secondary DNS
  925. server IP will be stored in the additional environment
  926. variable "dnsip2". The first DNS serverip is always
  927. stored in the variable "dnsip", when BOOTP_DNS is defined.
  928. config BOOTP_GATEWAY
  929. bool "Request & store 'gatewayip' from BOOTP/DHCP server"
  930. default y
  931. depends on CMD_BOOTP
  932. config BOOTP_HOSTNAME
  933. bool "Request & store 'hostname' from BOOTP/DHCP server"
  934. default y
  935. depends on CMD_BOOTP
  936. help
  937. The name may or may not be qualified with the local domain name.
  938. config BOOTP_SUBNETMASK
  939. bool "Request & store 'netmask' from BOOTP/DHCP server"
  940. default y
  941. depends on CMD_BOOTP
  942. config BOOTP_NTPSERVER
  943. bool "Request & store 'ntpserverip' from BOOTP/DHCP server"
  944. depends on CMD_BOOTP
  945. config BOOTP_PXE
  946. bool "Send PXE client arch to BOOTP/DHCP server"
  947. default y
  948. depends on CMD_BOOTP && CMD_PXE
  949. help
  950. Supported for ARM, ARM64, and x86 for now.
  951. config BOOTP_PXE_CLIENTARCH
  952. hex
  953. depends on BOOTP_PXE
  954. default 0x16 if ARM64
  955. default 0x15 if ARM
  956. default 0 if X86
  957. config BOOTP_VCI_STRING
  958. string
  959. depends on CMD_BOOTP
  960. default "U-Boot.armv7" if CPU_V7A || CPU_V7M || CPU_V7R
  961. default "U-Boot.armv8" if ARM64
  962. default "U-Boot.arm" if ARM
  963. default "U-Boot"
  964. config CMD_TFTPBOOT
  965. bool "tftpboot"
  966. default y
  967. help
  968. tftpboot - boot image via network using TFTP protocol
  969. config CMD_TFTPPUT
  970. bool "tftp put"
  971. depends on CMD_TFTPBOOT
  972. help
  973. TFTP put command, for uploading files to a server
  974. config CMD_TFTPSRV
  975. bool "tftpsrv"
  976. depends on CMD_TFTPBOOT
  977. help
  978. Act as a TFTP server and boot the first received file
  979. config NET_TFTP_VARS
  980. bool "Control TFTP timeout and count through environment"
  981. depends on CMD_TFTPBOOT
  982. default y
  983. help
  984. If set, allows controlling the TFTP timeout through the
  985. environment variable tftptimeout, and the TFTP maximum
  986. timeout count through the variable tftptimeoutcountmax.
  987. If unset, timeout and maximum are hard-defined as 1 second
  988. and 10 timouts per TFTP transfer.
  989. config CMD_RARP
  990. bool "rarpboot"
  991. help
  992. Boot image via network using RARP/TFTP protocol
  993. config CMD_NFS
  994. bool "nfs"
  995. default y
  996. help
  997. Boot image via network using NFS protocol.
  998. config CMD_MII
  999. bool "mii"
  1000. help
  1001. Enable MII utility commands.
  1002. config CMD_PING
  1003. bool "ping"
  1004. help
  1005. Send ICMP ECHO_REQUEST to network host
  1006. config CMD_CDP
  1007. bool "cdp"
  1008. help
  1009. Perform CDP network configuration
  1010. config CMD_SNTP
  1011. bool "sntp"
  1012. help
  1013. Synchronize RTC via network
  1014. config CMD_DNS
  1015. bool "dns"
  1016. help
  1017. Lookup the IP of a hostname
  1018. config CMD_LINK_LOCAL
  1019. bool "linklocal"
  1020. help
  1021. Acquire a network IP address using the link-local protocol
  1022. endif
  1023. config CMD_ETHSW
  1024. bool "ethsw"
  1025. help
  1026. Allow control of L2 Ethernet switch commands. These are supported
  1027. by the vsc9953 Ethernet driver at present. Sub-commands allow
  1028. operations such as enabling / disabling a port and
  1029. viewing/maintaining the filtering database (FDB)
  1030. config CMD_PXE
  1031. bool "pxe"
  1032. select MENU
  1033. help
  1034. Boot image via network using PXE protocol
  1035. endif
  1036. menu "Misc commands"
  1037. config CMD_BMP
  1038. bool "Enable 'bmp' command"
  1039. depends on LCD || DM_VIDEO || VIDEO
  1040. help
  1041. This provides a way to obtain information about a BMP-format iamge
  1042. and to display it. BMP (which presumably stands for BitMaP) is a
  1043. file format defined by Microsoft which supports images of various
  1044. depths, formats and compression methods. Headers on the file
  1045. determine the formats used. This command can be used by first loading
  1046. the image into RAM, then using this command to look at it or display
  1047. it.
  1048. config CMD_BOOTCOUNT
  1049. bool "bootcount"
  1050. depends on BOOTCOUNT_LIMIT
  1051. help
  1052. Enable the bootcount command, which allows interrogation and
  1053. reset of the bootcounter.
  1054. config CMD_BSP
  1055. bool "Enable board-specific commands"
  1056. help
  1057. (deprecated: instead, please define a Kconfig option for each command)
  1058. Some boards have board-specific commands which are only enabled
  1059. during developemnt and need to be turned off for production. This
  1060. option provides a way to control this. The commands that are enabled
  1061. vary depending on the board.
  1062. config CMD_BKOPS_ENABLE
  1063. bool "mmc bkops enable"
  1064. depends on CMD_MMC
  1065. default n
  1066. help
  1067. Enable command for setting manual background operations handshake
  1068. on a eMMC device. The feature is optionally available on eMMC devices
  1069. conforming to standard >= 4.41.
  1070. config CMD_BLOCK_CACHE
  1071. bool "blkcache - control and stats for block cache"
  1072. depends on BLOCK_CACHE
  1073. default y if BLOCK_CACHE
  1074. help
  1075. Enable the blkcache command, which can be used to control the
  1076. operation of the cache functions.
  1077. This is most useful when fine-tuning the operation of the cache
  1078. during development, but also allows the cache to be disabled when
  1079. it might hurt performance (e.g. when using the ums command).
  1080. config CMD_CACHE
  1081. bool "icache or dcache"
  1082. help
  1083. Enable the "icache" and "dcache" commands
  1084. config CMD_DISPLAY
  1085. bool "Enable the 'display' command, for character displays"
  1086. help
  1087. (this needs porting to driver model)
  1088. This enables the 'display' command which allows a string to be
  1089. displayed on a simple board-specific display. Implement
  1090. display_putc() to use it.
  1091. config CMD_LED
  1092. bool "led"
  1093. default y if LED
  1094. help
  1095. Enable the 'led' command which allows for control of LEDs supported
  1096. by the board. The LEDs can be listed with 'led list' and controlled
  1097. with led on/off/togle/blink. Any LED drivers can be controlled with
  1098. this command, e.g. led_gpio.
  1099. config CMD_DATE
  1100. bool "date"
  1101. default y if DM_RTC
  1102. help
  1103. Enable the 'date' command for getting/setting the time/date in RTC
  1104. devices.
  1105. config CMD_TIME
  1106. bool "time"
  1107. help
  1108. Run commands and summarize execution time.
  1109. config CMD_GETTIME
  1110. bool "gettime - read elapsed time"
  1111. help
  1112. Enable the 'gettime' command which reads the elapsed time since
  1113. U-Boot started running. This shows the time in seconds and
  1114. milliseconds. See also the 'bootstage' command which provides more
  1115. flexibility for boot timing.
  1116. # TODO: rename to CMD_SLEEP
  1117. config CMD_MISC
  1118. bool "sleep"
  1119. default y
  1120. help
  1121. Delay execution for some time
  1122. config CMD_TIMER
  1123. bool "timer"
  1124. help
  1125. Access the system timer.
  1126. config CMD_SOUND
  1127. bool "sound"
  1128. depends on SOUND
  1129. help
  1130. This provides basic access to the U-Boot's sound support. The main
  1131. feature is to play a beep.
  1132. sound init - set up sound system
  1133. sound play - play a sound
  1134. config CMD_QFW
  1135. bool "qfw"
  1136. select QFW
  1137. help
  1138. This provides access to the QEMU firmware interface. The main
  1139. feature is to allow easy loading of files passed to qemu-system
  1140. via -kernel / -initrd
  1141. source "cmd/mvebu/Kconfig"
  1142. config CMD_TERMINAL
  1143. bool "terminal - provides a way to attach a serial terminal"
  1144. help
  1145. Provides a 'cu'-like serial terminal command. This can be used to
  1146. access other serial ports from the system console. The terminal
  1147. is very simple with no special processing of characters. As with
  1148. cu, you can press ~. (tilde followed by period) to exit.
  1149. config CMD_UUID
  1150. bool "uuid, guid - generation of unique IDs"
  1151. select LIB_UUID
  1152. help
  1153. This enables two commands:
  1154. uuid - generate random Universally Unique Identifier
  1155. guid - generate Globally Unique Identifier based on random UUID
  1156. The two commands are very similar except for the endianness of the
  1157. output.
  1158. endmenu
  1159. source "cmd/ti/Kconfig"
  1160. config CMD_BOOTSTAGE
  1161. bool "Enable the 'bootstage' command"
  1162. depends on BOOTSTAGE
  1163. help
  1164. Add a 'bootstage' command which supports printing a report
  1165. and un/stashing of bootstage data.
  1166. menu "Power commands"
  1167. config CMD_PMIC
  1168. bool "Enable Driver Model PMIC command"
  1169. depends on DM_PMIC
  1170. help
  1171. This is the pmic command, based on a driver model pmic's API.
  1172. Command features are unchanged:
  1173. - list - list pmic devices
  1174. - pmic dev <id> - show or [set] operating pmic device (NEW)
  1175. - pmic dump - dump registers
  1176. - pmic read address - read byte of register at address
  1177. - pmic write address - write byte to register at address
  1178. The only one change for this command is 'dev' subcommand.
  1179. config CMD_REGULATOR
  1180. bool "Enable Driver Model REGULATOR command"
  1181. depends on DM_REGULATOR
  1182. help
  1183. This command is based on driver model regulator's API.
  1184. User interface features:
  1185. - list - list regulator devices
  1186. - regulator dev <id> - show or [set] operating regulator device
  1187. - regulator info - print constraints info
  1188. - regulator status - print operating status
  1189. - regulator value <val] <-f> - print/[set] voltage value [uV]
  1190. - regulator current <val> - print/[set] current value [uA]
  1191. - regulator mode <id> - print/[set] operating mode id
  1192. - regulator enable - enable the regulator output
  1193. - regulator disable - disable the regulator output
  1194. The '-f' (force) option can be used for set the value which exceeds
  1195. the limits, which are found in device-tree and are kept in regulator's
  1196. uclass platdata structure.
  1197. endmenu
  1198. menu "Security commands"
  1199. config CMD_AES
  1200. bool "Enable the 'aes' command"
  1201. select AES
  1202. help
  1203. This provides a means to encrypt and decrypt data using the AES
  1204. (Advanced Encryption Standard). This algorithm uses a symetric key
  1205. and is widely used as a streaming cipher. Different key lengths are
  1206. supported by the algorithm but this command only supports 128 bits
  1207. at present.
  1208. config CMD_BLOB
  1209. bool "Enable the 'blob' command"
  1210. help
  1211. This is used with the Freescale secure boot mechanism.
  1212. Freescale's SEC block has built-in Blob Protocol which provides
  1213. a method for protecting user-defined data across system power
  1214. cycles. SEC block protects data in a data structure called a Blob,
  1215. which provides both confidentiality and integrity protection.
  1216. Encapsulating data as a blob
  1217. Each time that the Blob Protocol is used to protect data, a
  1218. different randomly generated key is used to encrypt the data.
  1219. This random key is itself encrypted using a key which is derived
  1220. from SoC's non-volatile secret key and a 16 bit Key identifier.
  1221. The resulting encrypted key along with encrypted data is called a
  1222. blob. The non-volatile secure key is available for use only during
  1223. secure boot.
  1224. During decapsulation, the reverse process is performed to get back
  1225. the original data.
  1226. Sub-commands:
  1227. blob enc - encapsulating data as a cryptgraphic blob
  1228. blob dec - decapsulating cryptgraphic blob to get the data
  1229. Syntax:
  1230. blob enc src dst len km
  1231. Encapsulate and create blob of data $len bytes long
  1232. at address $src and store the result at address $dst.
  1233. $km is the 16 byte key modifier is also required for
  1234. generation/use as key for cryptographic operation. Key
  1235. modifier should be 16 byte long.
  1236. blob dec src dst len km
  1237. Decapsulate the blob of data at address $src and
  1238. store result of $len byte at addr $dst.
  1239. $km is the 16 byte key modifier is also required for
  1240. generation/use as key for cryptographic operation. Key
  1241. modifier should be 16 byte long.
  1242. config CMD_HASH
  1243. bool "Support 'hash' command"
  1244. select HASH
  1245. help
  1246. This provides a way to hash data in memory using various supported
  1247. algorithms (such as SHA1, MD5, CRC32). The computed digest can be
  1248. saved to memory or to an environment variable. It is also possible
  1249. to verify a hash against data in memory.
  1250. config CMD_HVC
  1251. bool "Support the 'hvc' command"
  1252. depends on ARM_SMCCC
  1253. help
  1254. Allows issuing Hypervisor Calls (HVCs). Mostly useful for
  1255. development and testing.
  1256. config CMD_SMC
  1257. bool "Support the 'smc' command"
  1258. depends on ARM_SMCCC
  1259. help
  1260. Allows issuing Secure Monitor Calls (SMCs). Mostly useful for
  1261. development and testing.
  1262. config HASH_VERIFY
  1263. bool "hash -v"
  1264. depends on CMD_HASH
  1265. help
  1266. Add -v option to verify data against a hash.
  1267. config CMD_TPM_V1
  1268. bool
  1269. config CMD_TPM_V2
  1270. bool
  1271. config CMD_TPM
  1272. bool "Enable the 'tpm' command"
  1273. depends on TPM_V1 || TPM_V2
  1274. select CMD_TPM_V1 if TPM_V1
  1275. select CMD_TPM_V2 if TPM_V2
  1276. help
  1277. This provides a means to talk to a TPM from the command line. A wide
  1278. range of commands if provided - see 'tpm help' for details. The
  1279. command requires a suitable TPM on your board and the correct driver
  1280. must be enabled.
  1281. if CMD_TPM
  1282. config CMD_TPM_TEST
  1283. bool "Enable the 'tpm test' command"
  1284. depends on TPM_V1
  1285. help
  1286. This provides a a series of tests to confirm that the TPMv1.x is
  1287. working correctly. The tests cover initialisation, non-volatile RAM,
  1288. extend, global lock and checking that timing is within expectations.
  1289. The tests pass correctly on Infineon TPMs but may need to be adjusted
  1290. for other devices.
  1291. endif
  1292. endmenu
  1293. menu "Firmware commands"
  1294. config CMD_CROS_EC
  1295. bool "Enable crosec command"
  1296. depends on CROS_EC
  1297. default y
  1298. help
  1299. Enable command-line access to the Chrome OS EC (Embedded
  1300. Controller). This provides the 'crosec' command which has
  1301. a number of sub-commands for performing EC tasks such as
  1302. updating its flash, accessing a small saved context area
  1303. and talking to the I2C bus behind the EC (if there is one).
  1304. endmenu
  1305. menu "Filesystem commands"
  1306. config CMD_BTRFS
  1307. bool "Enable the 'btrsubvol' command"
  1308. select FS_BTRFS
  1309. help
  1310. This enables the 'btrsubvol' command to list subvolumes
  1311. of a BTRFS filesystem. There are no special commands for
  1312. listing BTRFS directories or loading BTRFS files - this
  1313. can be done by the generic 'fs' commands (see CMD_FS_GENERIC)
  1314. when BTRFS is enabled (see FS_BTRFS).
  1315. config CMD_CBFS
  1316. bool "Enable the 'cbfs' command"
  1317. depends on FS_CBFS
  1318. help
  1319. Define this to enable support for reading from a Coreboot
  1320. filesystem. This is a ROM-based filesystem used for accessing files
  1321. on systems that use coreboot as the first boot-loader and then load
  1322. U-Boot to actually boot the Operating System. Available commands are
  1323. cbfsinit, cbfsinfo, cbfsls and cbfsload.
  1324. config CMD_CRAMFS
  1325. bool "Enable the 'cramfs' command"
  1326. depends on FS_CRAMFS
  1327. help
  1328. This provides commands for dealing with CRAMFS (Compressed ROM
  1329. filesystem). CRAMFS is useful when space is tight since files are
  1330. compressed. Two commands are provided:
  1331. cramfsls - lists files in a cramfs image
  1332. cramfsload - loads a file from a cramfs image
  1333. config CMD_EXT2
  1334. bool "ext2 command support"
  1335. select FS_EXT4
  1336. help
  1337. Enables EXT2 FS command
  1338. config CMD_EXT4
  1339. bool "ext4 command support"
  1340. select FS_EXT4
  1341. help
  1342. Enables EXT4 FS command
  1343. config CMD_EXT4_WRITE
  1344. depends on CMD_EXT4
  1345. bool "ext4 write command support"
  1346. select EXT4_WRITE
  1347. help
  1348. Enables EXT4 FS write command
  1349. config CMD_FAT
  1350. bool "FAT command support"
  1351. select FS_FAT
  1352. help
  1353. Support for the FAT fs
  1354. config CMD_FS_GENERIC
  1355. bool "filesystem commands"
  1356. help
  1357. Enables filesystem commands (e.g. load, ls) that work for multiple
  1358. fs types.
  1359. config CMD_FS_UUID
  1360. bool "fsuuid command"
  1361. help
  1362. Enables fsuuid command for filesystem UUID.
  1363. config CMD_JFFS2
  1364. bool "jffs2 command"
  1365. select FS_JFFS2
  1366. help
  1367. Enables commands to support the JFFS2 (Journalling Flash File System
  1368. version 2) filesystem. This enables fsload, ls and fsinfo which
  1369. provide the ability to load files, list directories and obtain
  1370. filesystem information.
  1371. config CMD_MTDPARTS
  1372. bool "MTD partition support"
  1373. help
  1374. MTD partition support
  1375. config MTDIDS_DEFAULT
  1376. string "Default MTD IDs"
  1377. depends on CMD_MTDPARTS || CMD_NAND || CMD_FLASH
  1378. help
  1379. Defines a default MTD IDs list for use with MTD partitions in the
  1380. Linux MTD command line partitions format.
  1381. config MTDPARTS_DEFAULT
  1382. string "Default MTD partition scheme"
  1383. depends on CMD_MTDPARTS || CMD_NAND || CMD_FLASH
  1384. help
  1385. Defines a default MTD partitioning scheme in the Linux MTD command
  1386. line partitions format
  1387. config CMD_MTDPARTS_SPREAD
  1388. bool "Padd partition size to take account of bad blocks"
  1389. depends on CMD_MTDPARTS
  1390. help
  1391. This enables the 'spread' sub-command of the mtdparts command.
  1392. This command will modify the existing mtdparts variable by increasing
  1393. the size of the partitions such that 1) each partition's net size is
  1394. at least as large as the size specified in the mtdparts variable and
  1395. 2) each partition starts on a good block.
  1396. config CMD_REISER
  1397. bool "reiser - Access to reiserfs filesystems"
  1398. help
  1399. This provides two commands which operate on a resierfs filesystem,
  1400. commonly used some years ago:
  1401. reiserls - list files
  1402. reiserload - load a file
  1403. config CMD_YAFFS2
  1404. bool "yaffs2 - Access of YAFFS2 filesystem"
  1405. depends on YAFFS2
  1406. default y
  1407. help
  1408. This provides commands for accessing a YAFFS2 filesystem. Yet
  1409. Another Flash Filesystem 2 is a filesystem designed specifically
  1410. for NAND flash. It incorporates bad-block management and ensures
  1411. that device writes are sequential regardless of filesystem
  1412. activity.
  1413. config CMD_ZFS
  1414. bool "zfs - Access of ZFS filesystem"
  1415. help
  1416. This provides commands to accessing a ZFS filesystem, commonly used
  1417. on Solaris systems. Two sub-commands are provided:
  1418. zfsls - list files in a directory
  1419. zfsload - load a file
  1420. See doc/README.zfs for more details.
  1421. endmenu
  1422. menu "Debug commands"
  1423. config CMD_BEDBUG
  1424. bool "bedbug"
  1425. help
  1426. The bedbug (emBEDded deBUGger) command provides debugging features
  1427. for some PowerPC processors. For details please see the
  1428. docuemntation in doc/README.beddbug
  1429. config CMD_DIAG
  1430. bool "diag - Board diagnostics"
  1431. help
  1432. This command provides access to board diagnostic tests. These are
  1433. called Power-on Self Tests (POST). The command allows listing of
  1434. available tests and running either all the tests, or specific tests
  1435. identified by name.
  1436. config CMD_IRQ
  1437. bool "irq - Show information about interrupts"
  1438. depends on !ARM && !MIPS && !SH
  1439. help
  1440. This enables two commands:
  1441. interrupts - enable or disable interrupts
  1442. irqinfo - print device-specific interrupt information
  1443. config CMD_KGDB
  1444. bool "kgdb - Allow debugging of U-Boot with gdb"
  1445. help
  1446. This enables a 'kgdb' command which allows gdb to connect to U-Boot
  1447. over a serial link for debugging purposes. This allows
  1448. single-stepping, inspecting variables, etc. This is supported only
  1449. on PowerPC at present.
  1450. config CMD_LOG
  1451. bool "log - Generation, control and access to logging"
  1452. select LOG
  1453. help
  1454. This provides access to logging features. It allows the output of
  1455. log data to be controlled to a limited extent (setting up the default
  1456. maximum log level for emitting of records). It also provides access
  1457. to a command used for testing the log system.
  1458. config CMD_TRACE
  1459. bool "trace - Support tracing of function calls and timing"
  1460. help
  1461. Enables a command to control using of function tracing within
  1462. U-Boot. This allows recording of call traces including timing
  1463. information. The command can write data to memory for exporting
  1464. for analsys (e.g. using bootchart). See doc/README.trace for full
  1465. details.
  1466. endmenu
  1467. config CMD_UBI
  1468. tristate "Enable UBI - Unsorted block images commands"
  1469. select CRC32
  1470. select MTD_UBI
  1471. select CMD_MTDPARTS
  1472. default y if NAND_SUNXI
  1473. help
  1474. UBI is a software layer above MTD layer which admits use of LVM-like
  1475. logical volumes on top of MTD devices, hides some complexities of
  1476. flash chips like wear and bad blocks and provides some other useful
  1477. capabilities. Please, consult the MTD web site for more details
  1478. (www.linux-mtd.infradead.org). Activate this option if you want
  1479. to use U-Boot UBI commands.
  1480. config CMD_UBIFS
  1481. tristate "Enable UBIFS - Unsorted block images filesystem commands"
  1482. depends on CMD_UBI
  1483. select CRC32
  1484. select LZO
  1485. default y if CMD_UBI
  1486. help
  1487. UBIFS is a file system for flash devices which works on top of UBI.
  1488. endmenu