Kconfig 39 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444
  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_CONFIG
  110. bool "config"
  111. select BUILD_BIN2C
  112. default SANDBOX
  113. help
  114. Print ".config" contents.
  115. If this option is enabled, the ".config" file contents are embedded
  116. in the U-Boot image and can be printed on the console by the "config"
  117. command. This provides information of which options are enabled on
  118. the running U-Boot.
  119. config CMD_CONSOLE
  120. bool "coninfo"
  121. default y
  122. help
  123. Print console devices and information.
  124. config CMD_CPU
  125. bool "cpu"
  126. help
  127. Print information about available CPUs. This normally shows the
  128. number of CPUs, type (e.g. manufacturer, architecture, product or
  129. internal name) and clock frequency. Other information may be
  130. available depending on the CPU driver.
  131. config CMD_LICENSE
  132. bool "license"
  133. select BUILD_BIN2C
  134. help
  135. Print GPL license text
  136. config CMD_REGINFO
  137. bool "reginfo"
  138. depends on PPC
  139. help
  140. Register dump
  141. endmenu
  142. menu "Boot commands"
  143. config CMD_BOOTD
  144. bool "bootd"
  145. default y
  146. help
  147. Run the command stored in the environment "bootcmd", i.e.
  148. "bootd" does the same thing as "run bootcmd".
  149. config CMD_BOOTM
  150. bool "bootm"
  151. default y
  152. help
  153. Boot an application image from the memory.
  154. config CMD_BOOTZ
  155. bool "bootz"
  156. help
  157. Boot the Linux zImage
  158. config CMD_BOOTI
  159. bool "booti"
  160. depends on ARM64
  161. default y
  162. help
  163. Boot an AArch64 Linux Kernel image from memory.
  164. config CMD_BOOTEFI
  165. bool "bootefi"
  166. depends on EFI_LOADER
  167. default y
  168. help
  169. Boot an EFI image from memory.
  170. config CMD_BOOTEFI_HELLO_COMPILE
  171. bool "Compile a standard EFI hello world binary for testing"
  172. depends on CMD_BOOTEFI && (ARM || X86)
  173. default y
  174. help
  175. This compiles a standard EFI hello world application with U-Boot so
  176. that it can be used with the test/py testing framework. This is useful
  177. for testing that EFI is working at a basic level, and for bringing
  178. up EFI support on a new architecture.
  179. No additional space will be required in the resulting U-Boot binary
  180. when this option is enabled.
  181. config CMD_BOOTEFI_HELLO
  182. bool "Allow booting a standard EFI hello world for testing"
  183. depends on CMD_BOOTEFI_HELLO_COMPILE
  184. help
  185. This adds a standard EFI hello world application to U-Boot so that
  186. it can be used with the 'bootefi hello' command. This is useful
  187. for testing that EFI is working at a basic level, and for bringing
  188. up EFI support on a new architecture.
  189. config CMD_BOOTMENU
  190. bool "bootmenu"
  191. select MENU
  192. help
  193. Add an ANSI terminal boot menu command.
  194. config CMD_ELF
  195. bool "bootelf, bootvx"
  196. default y
  197. help
  198. Boot an ELF/vxWorks image from the memory.
  199. config CMD_FDT
  200. bool "Flattened Device Tree utility commands"
  201. default y
  202. depends on OF_LIBFDT
  203. help
  204. Do FDT related setup before booting into the Operating System.
  205. config CMD_GO
  206. bool "go"
  207. default y
  208. help
  209. Start an application at a given address.
  210. config CMD_RUN
  211. bool "run"
  212. default y
  213. help
  214. Run the command in the given environment variable.
  215. config CMD_IMI
  216. bool "iminfo"
  217. default y
  218. help
  219. Print header information for application image.
  220. config CMD_IMLS
  221. bool "imls"
  222. default y
  223. help
  224. List all images found in flash
  225. config CMD_XIMG
  226. bool "imxtract"
  227. default y
  228. help
  229. Extract a part of a multi-image.
  230. config CMD_POWEROFF
  231. bool "poweroff"
  232. help
  233. Poweroff/Shutdown the system
  234. config CMD_SPL
  235. bool "spl export - Export boot information for Falcon boot"
  236. depends on SPL
  237. help
  238. Falcon mode allows booting directly from SPL into an Operating
  239. System such as Linux, thus skipping U-Boot proper. See
  240. doc/README.falcon for full information about how to use this
  241. command.
  242. config CMD_SPL_NAND_OFS
  243. hex "Offset of OS command line args for Falcon-mode NAND boot"
  244. depends on CMD_SPL
  245. default 0
  246. help
  247. This provides the offset of the command line arguments for Linux
  248. when booting from NAND in Falcon mode. See doc/README.falcon
  249. for full information about how to use this option (and also see
  250. board/gateworks/gw_ventana/README for an example).
  251. config CMD_SPL_WRITE_SIZE
  252. hex "Size of argument area"
  253. depends on CMD_SPL
  254. default 0x2000
  255. help
  256. This provides the size of the command-line argument area in NAND
  257. flash used by Falcon-mode boot. See the documentation until CMD_SPL
  258. for detail.
  259. config CMD_THOR_DOWNLOAD
  260. bool "thor - TIZEN 'thor' download"
  261. help
  262. Implements the 'thor' download protocol. This is a way of
  263. downloading a software update over USB from an attached host.
  264. There is no documentation about this within the U-Boot source code
  265. but you should be able to find something on the interwebs.
  266. endmenu
  267. menu "Environment commands"
  268. config CMD_ASKENV
  269. bool "ask for env variable"
  270. help
  271. Ask for environment variable
  272. config CMD_EXPORTENV
  273. bool "env export"
  274. default y
  275. help
  276. Export environments.
  277. config CMD_IMPORTENV
  278. bool "env import"
  279. default y
  280. help
  281. Import environments.
  282. config CMD_EDITENV
  283. bool "editenv"
  284. default y
  285. help
  286. Edit environment variable.
  287. config CMD_GREPENV
  288. bool "search env"
  289. help
  290. Allow for searching environment variables
  291. config CMD_SAVEENV
  292. bool "saveenv"
  293. default y
  294. help
  295. Save all environment variables into the compiled-in persistent
  296. storage.
  297. config CMD_ENV_EXISTS
  298. bool "env exists"
  299. default y
  300. help
  301. Check if a variable is defined in the environment for use in
  302. shell scripting.
  303. config CMD_ENV_CALLBACK
  304. bool "env callbacks - print callbacks and their associated variables"
  305. help
  306. Some environment variable have callbacks defined by
  307. U_BOOT_ENV_CALLBACK. These are called when the variable changes.
  308. For example changing "baudrate" adjust the serial baud rate. This
  309. command lists the currently defined callbacks.
  310. config CMD_ENV_FLAGS
  311. bool "env flags -print variables that have non-default flags"
  312. help
  313. Some environment variables have special flags that control their
  314. behaviour. For example, serial# can only be written once and cannot
  315. be deleted. This command shows the variables that have special
  316. flags.
  317. endmenu
  318. menu "Memory commands"
  319. config CMD_CRC32
  320. bool "crc32"
  321. select HASH
  322. default y
  323. help
  324. Compute CRC32.
  325. config CRC32_VERIFY
  326. bool "crc32 -v"
  327. depends on CMD_CRC32
  328. help
  329. Add -v option to verify data against a crc32 checksum.
  330. config CMD_EEPROM
  331. bool "eeprom - EEPROM subsystem"
  332. help
  333. (deprecated, needs conversion to driver model)
  334. Provides commands to read and write EEPROM (Electrically Erasable
  335. Programmable Read Only Memory) chips that are connected over an
  336. I2C bus.
  337. config CMD_EEPROM_LAYOUT
  338. bool "Enable layout-aware eeprom commands"
  339. depends on CMD_EEPROM
  340. help
  341. (deprecated, needs conversion to driver model)
  342. When enabled, additional eeprom sub-commands become available.
  343. eeprom print - prints the contents of the eeprom in a human-readable
  344. way (eeprom layout fields, and data formatted to be fit for human
  345. consumption).
  346. eeprom update - allows user to update eeprom fields by specifying
  347. the field name, and providing the new data in a human readable format
  348. (same format as displayed by the eeprom print command).
  349. Both commands can either auto detect the layout, or be told which
  350. layout to use.
  351. Feature API:
  352. __weak int parse_layout_version(char *str)
  353. - override to provide your own layout name parsing
  354. __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
  355. int layout_version);
  356. - override to setup the layout metadata based on the version
  357. __weak int eeprom_layout_detect(unsigned char *data)
  358. - override to provide your own algorithm for detecting layout
  359. version
  360. eeprom_field.c
  361. - contains various printing and updating functions for common
  362. types of eeprom fields. Can be used for defining
  363. custom layouts.
  364. config EEPROM_LAYOUT_HELP_STRING
  365. string "Tells user what layout names are supported"
  366. depends on CMD_EEPROM_LAYOUT
  367. default "<not defined>"
  368. help
  369. Help printed with the LAYOUT VERSIONS part of the 'eeprom'
  370. command's help.
  371. config LOOPW
  372. bool "loopw"
  373. help
  374. Infinite write loop on address range
  375. config CMD_MD5SUM
  376. bool "md5sum"
  377. default n
  378. select MD5
  379. help
  380. Compute MD5 checksum.
  381. config MD5SUM_VERIFY
  382. bool "md5sum -v"
  383. default n
  384. depends on CMD_MD5SUM
  385. help
  386. Add -v option to verify data against an MD5 checksum.
  387. config CMD_MEMINFO
  388. bool "meminfo"
  389. help
  390. Display memory information.
  391. config CMD_MEMORY
  392. bool "md, mm, nm, mw, cp, cmp, base, loop"
  393. default y
  394. help
  395. Memory commands.
  396. md - memory display
  397. mm - memory modify (auto-incrementing address)
  398. nm - memory modify (constant address)
  399. mw - memory write (fill)
  400. cp - memory copy
  401. cmp - memory compare
  402. base - print or set address offset
  403. loop - initialize loop on address range
  404. config CMD_MEMTEST
  405. bool "memtest"
  406. help
  407. Simple RAM read/write test.
  408. config CMD_MX_CYCLIC
  409. bool "mdc, mwc"
  410. help
  411. mdc - memory display cyclic
  412. mwc - memory write cyclic
  413. config CMD_SHA1SUM
  414. bool "sha1sum"
  415. select SHA1
  416. help
  417. Compute SHA1 checksum.
  418. config SHA1SUM_VERIFY
  419. bool "sha1sum -v"
  420. depends on CMD_SHA1SUM
  421. help
  422. Add -v option to verify data against a SHA1 checksum.
  423. config CMD_STRINGS
  424. bool "strings - display strings in memory"
  425. help
  426. This works similarly to the Unix 'strings' command except that it
  427. works with a memory range. String of printable characters found
  428. within the range are displayed. The minimum number of characters
  429. for a sequence to be considered a string can be provided.
  430. endmenu
  431. menu "Compression commands"
  432. config CMD_LZMADEC
  433. bool "lzmadec"
  434. select LZMA
  435. help
  436. Support decompressing an LZMA (Lempel-Ziv-Markov chain algorithm)
  437. image from memory.
  438. config CMD_UNZIP
  439. bool "unzip"
  440. help
  441. Uncompress a zip-compressed memory region.
  442. config CMD_ZIP
  443. bool "zip"
  444. help
  445. Compress a memory region with zlib deflate method.
  446. endmenu
  447. menu "Device access commands"
  448. config CMD_ARMFLASH
  449. #depends on FLASH_CFI_DRIVER
  450. bool "armflash"
  451. help
  452. ARM Ltd reference designs flash partition access
  453. config CMD_CLK
  454. bool "clk - Show clock frequencies"
  455. help
  456. (deprecated)
  457. Shows clock frequences by calling a sock_clk_dump() hook function.
  458. This is depreated in favour of using the CLK uclass and accessing
  459. clock values from associated drivers. However currently no command
  460. exists for this.
  461. config CMD_DEMO
  462. bool "demo - Demonstration commands for driver model"
  463. depends on DM
  464. help
  465. Provides a 'demo' command which can be used to play around with
  466. driver model. To use this properly you will need to enable one or
  467. both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
  468. Otherwise you will always get an empty list of devices. The demo
  469. devices are defined in the sandbox device tree, so the easiest
  470. option is to use sandbox and pass the -d point to sandbox's
  471. u-boot.dtb file.
  472. config CMD_DFU
  473. bool "dfu"
  474. select USB_FUNCTION_DFU
  475. help
  476. Enables the command "dfu" which is used to have U-Boot create a DFU
  477. class device via USB.
  478. config CMD_DM
  479. bool "dm - Access to driver model information"
  480. depends on DM
  481. default y
  482. help
  483. Provides access to driver model data structures and information,
  484. such as a list of devices, list of uclasses and the state of each
  485. device (e.g. activated). This is not required for operation, but
  486. can be useful to see the state of driver model for debugging or
  487. interest.
  488. config CMD_FDC
  489. bool "fdcboot - Boot from floppy device"
  490. help
  491. The 'fdtboot' command allows booting an image from a floppy disk.
  492. config CMD_FLASH
  493. bool "flinfo, erase, protect"
  494. default y
  495. help
  496. NOR flash support.
  497. flinfo - print FLASH memory information
  498. erase - FLASH memory
  499. protect - enable or disable FLASH write protection
  500. config CMD_FPGA
  501. bool "fpga"
  502. default y
  503. help
  504. FPGA support.
  505. config CMD_FPGA_LOADBP
  506. bool "fpga loadbp - load partial bitstream (Xilinx only)"
  507. depends on CMD_FPGA
  508. help
  509. Supports loading an FPGA device from a bitstream buffer containing
  510. a partial bitstream.
  511. config CMD_FPGA_LOADFS
  512. bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
  513. depends on CMD_FPGA
  514. help
  515. Supports loading an FPGA device from a FAT filesystem.
  516. config CMD_FPGA_LOADMK
  517. bool "fpga loadmk - load bitstream from image"
  518. depends on CMD_FPGA
  519. help
  520. Supports loading an FPGA device from a image generated by mkimage.
  521. config CMD_FPGA_LOADP
  522. bool "fpga loadp - load partial bitstream"
  523. depends on CMD_FPGA
  524. help
  525. Supports loading an FPGA device from a bitstream buffer containing
  526. a partial bitstream.
  527. config CMD_FPGAD
  528. bool "fpgad - dump FPGA registers"
  529. help
  530. (legacy, needs conversion to driver model)
  531. Provides a way to dump FPGA registers by calling the board-specific
  532. fpga_get_reg() function. This functions similarly to the 'md'
  533. command.
  534. config CMD_FUSE
  535. bool "fuse - support for the fuse subssystem"
  536. help
  537. (deprecated - needs conversion to driver model)
  538. This allows reading, sensing, programming or overriding fuses
  539. which control the behaviour of the device. The command uses the
  540. fuse_...() API.
  541. config CMD_GPIO
  542. bool "gpio"
  543. help
  544. GPIO support.
  545. config CMD_GPT
  546. bool "GPT (GUID Partition Table) command"
  547. select PARTITION_UUIDS
  548. select EFI_PARTITION
  549. help
  550. Enable the 'gpt' command to ready and write GPT style partition
  551. tables.
  552. config CMD_GPT_RENAME
  553. bool "GPT partition renaming commands"
  554. depends on CMD_GPT
  555. help
  556. Enables the 'gpt' command to interchange names on two GPT
  557. partitions via the 'gpt swap' command or to rename single
  558. partitions via the 'rename' command.
  559. config CMD_IDE
  560. bool "ide - Support for IDE drivers"
  561. select IDE
  562. help
  563. Provides an 'ide' command which allows accessing the IDE drive,
  564. reseting the IDE interface, printing the partition table and
  565. geting device info. It also enables the 'diskboot' command which
  566. permits booting from an IDE drive.
  567. config CMD_IO
  568. bool "io - Support for performing I/O accesses"
  569. help
  570. Provides an 'iod' command to display I/O space and an 'iow' command
  571. to write values to the I/O space. This can be useful for manually
  572. checking the state of devices during boot when debugging device
  573. drivers, etc.
  574. config CMD_IOTRACE
  575. bool "iotrace - Support for tracing I/O activity"
  576. help
  577. Provides an 'iotrace' command which supports recording I/O reads and
  578. writes in a trace buffer in memory . It also maintains a checksum
  579. of the trace records (even if space is exhausted) so that the
  580. sequence of I/O accesses can be verified.
  581. When debugging drivers it is useful to see what I/O accesses were
  582. done and in what order.
  583. Even if the individual accesses are of little interest it can be
  584. useful to verify that the access pattern is consistent each time
  585. an operation is performed. In this case a checksum can be used to
  586. characterise the operation of a driver. The checksum can be compared
  587. across different runs of the operation to verify that the driver is
  588. working properly.
  589. In particular, when performing major refactoring of the driver, where
  590. the access pattern should not change, the checksum provides assurance
  591. that the refactoring work has not broken the driver.
  592. This works by sneaking into the io.h heder for an architecture and
  593. redirecting I/O accesses through iotrace's tracing mechanism.
  594. For now no commands are provided to examine the trace buffer. The
  595. format is fairly simple, so 'md' is a reasonable substitute.
  596. Note: The checksum feature is only useful for I/O regions where the
  597. contents do not change outside of software control. Where this is not
  598. suitable you can fall back to manually comparing the addresses. It
  599. might be useful to enhance tracing to only checksum the accesses and
  600. not the data read/written.
  601. config CMD_I2C
  602. bool "i2c"
  603. help
  604. I2C support.
  605. config CMD_LOADB
  606. bool "loadb"
  607. default y
  608. help
  609. Load a binary file over serial line.
  610. config CMD_LOADS
  611. bool "loads"
  612. default y
  613. help
  614. Load an S-Record file over serial line
  615. config CMD_MMC
  616. bool "mmc"
  617. help
  618. MMC memory mapped support.
  619. config CMD_NAND
  620. bool "nand"
  621. default y if NAND_SUNXI
  622. help
  623. NAND support.
  624. if CMD_NAND
  625. config CMD_NAND_TRIMFFS
  626. bool "nand write.trimffs"
  627. default y if ARCH_SUNXI
  628. help
  629. Allows one to skip empty pages when flashing something on a NAND.
  630. config CMD_NAND_LOCK_UNLOCK
  631. bool "nand lock/unlock"
  632. help
  633. NAND locking support.
  634. config CMD_NAND_TORTURE
  635. bool "nand torture"
  636. help
  637. NAND torture support.
  638. endif # CMD_NAND
  639. config CMD_MMC_SPI
  640. bool "mmc_spi - Set up MMC SPI device"
  641. help
  642. Provides a way to set up an MMC (Multimedia Card) SPI (Serial
  643. Peripheral Interface) device. The device provides a means of
  644. accessing an MMC device via SPI using a single data line, limited
  645. to 20MHz. It is useful since it reduces the amount of protocol code
  646. required.
  647. config CMD_ONENAND
  648. bool "onenand - access to onenand device"
  649. help
  650. OneNAND is a brand of NAND ('Not AND' gate) flash which provides
  651. various useful features. This command allows reading, writing,
  652. and erasing blocks. It allso provides a way to show and change
  653. bad blocks, and test the device.
  654. config CMD_PART
  655. bool "part"
  656. select PARTITION_UUIDS
  657. help
  658. Read and display information about the partition table on
  659. various media.
  660. config CMD_PCI
  661. bool "pci - Access PCI devices"
  662. help
  663. Provide access to PCI (Peripheral Interconnect Bus), a type of bus
  664. used on some devices to allow the CPU to communicate with its
  665. peripherals. Sub-commands allow bus enumeration, displaying and
  666. changing configuration space and a few other features.
  667. config CMD_PCMCIA
  668. bool "pinit - Set up PCMCIA device"
  669. help
  670. Provides a means to initialise a PCMCIA (Personal Computer Memory
  671. Card International Association) device. This is an old standard from
  672. about 1990. These devices are typically removable memory or network
  673. cards using a standard 68-pin connector.
  674. config CMD_READ
  675. bool "read - Read binary data from a partition"
  676. help
  677. Provides low-level access to the data in a partition.
  678. config CMD_REMOTEPROC
  679. bool "remoteproc"
  680. depends on REMOTEPROC
  681. help
  682. Support for Remote Processor control
  683. config CMD_SATA
  684. bool "sata - Access SATA subsystem"
  685. select SATA
  686. help
  687. SATA (Serial Advanced Technology Attachment) is a serial bus
  688. standard for connecting to hard drives and other storage devices.
  689. This command provides information about attached devices and allows
  690. reading, writing and other operations.
  691. SATA replaces PATA (originally just ATA), which stands for Parallel AT
  692. Attachment, where AT refers to an IBM AT (Advanced Technology)
  693. computer released in 1984.
  694. config CMD_SAVES
  695. bool "saves - Save a file over serial in S-Record format"
  696. help
  697. Provides a way to save a binary file using the Motorola S-Record
  698. format over the serial line.
  699. config CMD_SDRAM
  700. bool "sdram - Print SDRAM configuration information"
  701. help
  702. Provides information about attached SDRAM. This assumed that the
  703. SDRAM has an EEPROM with information that can be read using the
  704. I2C bus. This is only available on some boards.
  705. config CMD_SF
  706. bool "sf"
  707. help
  708. SPI Flash support
  709. config CMD_SF_TEST
  710. bool "sf test - Allow testing of SPI flash"
  711. help
  712. Provides a way to test that SPI flash is working correctly. The
  713. test is destructive, in that an area of SPI flash must be provided
  714. for the test to use. Performance information is also provided,
  715. measuring the performance of reading, writing and erasing in
  716. Mbps (Million Bits Per Second). This value should approximately
  717. equal the SPI bus speed for a single-bit-wide SPI bus, assuming
  718. everything is working properly.
  719. config CMD_SPI
  720. bool "sspi"
  721. help
  722. SPI utility command.
  723. config CMD_USB
  724. bool "usb"
  725. help
  726. USB support.
  727. config CMD_USB_MASS_STORAGE
  728. bool "UMS usb mass storage"
  729. help
  730. USB mass storage support
  731. endmenu
  732. menu "Shell scripting commands"
  733. config CMD_ECHO
  734. bool "echo"
  735. default y
  736. help
  737. Echo args to console
  738. config CMD_ITEST
  739. bool "itest"
  740. default y
  741. help
  742. Return true/false on integer compare.
  743. config CMD_SOURCE
  744. bool "source"
  745. default y
  746. help
  747. Run script from memory
  748. config CMD_SETEXPR
  749. bool "setexpr"
  750. default y
  751. help
  752. Evaluate boolean and math expressions and store the result in an env
  753. variable.
  754. Also supports loading the value at a memory location into a variable.
  755. If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
  756. endmenu
  757. menu "Network commands"
  758. config CMD_NET
  759. bool "bootp, tftpboot"
  760. select NET
  761. default y
  762. help
  763. Network commands.
  764. bootp - boot image via network using BOOTP/TFTP protocol
  765. tftpboot - boot image via network using TFTP protocol
  766. config CMD_TFTPPUT
  767. bool "tftp put"
  768. help
  769. TFTP put command, for uploading files to a server
  770. config CMD_TFTPSRV
  771. bool "tftpsrv"
  772. help
  773. Act as a TFTP server and boot the first received file
  774. config CMD_RARP
  775. bool "rarpboot"
  776. help
  777. Boot image via network using RARP/TFTP protocol
  778. config CMD_DHCP
  779. bool "dhcp"
  780. help
  781. Boot image via network using DHCP/TFTP protocol
  782. config CMD_PXE
  783. bool "pxe"
  784. select MENU
  785. help
  786. Boot image via network using PXE protocol
  787. config CMD_NFS
  788. bool "nfs"
  789. default y
  790. help
  791. Boot image via network using NFS protocol.
  792. config CMD_MII
  793. bool "mii"
  794. help
  795. Enable MII utility commands.
  796. config CMD_PING
  797. bool "ping"
  798. help
  799. Send ICMP ECHO_REQUEST to network host
  800. config CMD_CDP
  801. bool "cdp"
  802. help
  803. Perform CDP network configuration
  804. config CMD_SNTP
  805. bool "sntp"
  806. help
  807. Synchronize RTC via network
  808. config CMD_DNS
  809. bool "dns"
  810. help
  811. Lookup the IP of a hostname
  812. config CMD_LINK_LOCAL
  813. bool "linklocal"
  814. help
  815. Acquire a network IP address using the link-local protocol
  816. config CMD_ETHSW
  817. bool "ethsw"
  818. help
  819. Allow control of L2 Ethernet switch commands. These are supported
  820. by the vsc9953 Ethernet driver at present. Sub-commands allow
  821. operations such as enabling / disabling a port and
  822. viewing/maintaining the filtering database (FDB)
  823. endmenu
  824. menu "Misc commands"
  825. config CMD_BMP
  826. bool "Enable 'bmp' command"
  827. depends on LCD || DM_VIDEO || VIDEO
  828. help
  829. This provides a way to obtain information about a BMP-format iamge
  830. and to display it. BMP (which presumably stands for BitMaP) is a
  831. file format defined by Microsoft which supports images of various
  832. depths, formats and compression methods. Headers on the file
  833. determine the formats used. This command can be used by first loading
  834. the image into RAM, then using this command to look at it or display
  835. it.
  836. config CMD_BSP
  837. bool "Enable board-specific commands"
  838. help
  839. (deprecated: instead, please define a Kconfig option for each command)
  840. Some boards have board-specific commands which are only enabled
  841. during developemnt and need to be turned off for production. This
  842. option provides a way to control this. The commands that are enabled
  843. vary depending on the board.
  844. config CMD_BKOPS_ENABLE
  845. bool "mmc bkops enable"
  846. depends on CMD_MMC
  847. default n
  848. help
  849. Enable command for setting manual background operations handshake
  850. on a eMMC device. The feature is optionally available on eMMC devices
  851. conforming to standard >= 4.41.
  852. config CMD_BLOCK_CACHE
  853. bool "blkcache - control and stats for block cache"
  854. depends on BLOCK_CACHE
  855. default y if BLOCK_CACHE
  856. help
  857. Enable the blkcache command, which can be used to control the
  858. operation of the cache functions.
  859. This is most useful when fine-tuning the operation of the cache
  860. during development, but also allows the cache to be disabled when
  861. it might hurt performance (e.g. when using the ums command).
  862. config CMD_CACHE
  863. bool "icache or dcache"
  864. help
  865. Enable the "icache" and "dcache" commands
  866. config CMD_DISPLAY
  867. bool "Enable the 'display' command, for character displays"
  868. help
  869. (this needs porting to driver model)
  870. This enables the 'display' command which allows a string to be
  871. displayed on a simple board-specific display. Implement
  872. display_putc() to use it.
  873. config CMD_LED
  874. bool "led"
  875. default y if LED
  876. help
  877. Enable the 'led' command which allows for control of LEDs supported
  878. by the board. The LEDs can be listed with 'led list' and controlled
  879. with led on/off/togle/blink. Any LED drivers can be controlled with
  880. this command, e.g. led_gpio.
  881. config CMD_DATE
  882. bool "date"
  883. default y if DM_RTC
  884. help
  885. Enable the 'date' command for getting/setting the time/date in RTC
  886. devices.
  887. config CMD_TIME
  888. bool "time"
  889. help
  890. Run commands and summarize execution time.
  891. config CMD_GETTIME
  892. bool "gettime - read elapsed time"
  893. help
  894. Enable the 'gettime' command which reads the elapsed time since
  895. U-Boot started running. This shows the time in seconds and
  896. milliseconds. See also the 'bootstage' command which provides more
  897. flexibility for boot timing.
  898. # TODO: rename to CMD_SLEEP
  899. config CMD_MISC
  900. bool "sleep"
  901. default y
  902. help
  903. Delay execution for some time
  904. config CMD_TIMER
  905. bool "timer"
  906. help
  907. Access the system timer.
  908. config CMD_SOUND
  909. bool "sound"
  910. depends on SOUND
  911. help
  912. This provides basic access to the U-Boot's sound support. The main
  913. feature is to play a beep.
  914. sound init - set up sound system
  915. sound play - play a sound
  916. config CMD_QFW
  917. bool "qfw"
  918. select QFW
  919. help
  920. This provides access to the QEMU firmware interface. The main
  921. feature is to allow easy loading of files passed to qemu-system
  922. via -kernel / -initrd
  923. source "cmd/mvebu/Kconfig"
  924. config CMD_TERMINAL
  925. bool "terminal - provides a way to attach a serial terminal"
  926. help
  927. Provides a 'cu'-like serial terminal command. This can be used to
  928. access other serial ports from the system console. The terminal
  929. is very simple with no special processing of characters. As with
  930. cu, you can press ~. (tilde followed by period) to exit.
  931. endmenu
  932. config CMD_BOOTSTAGE
  933. bool "Enable the 'bootstage' command"
  934. depends on BOOTSTAGE
  935. help
  936. Add a 'bootstage' command which supports printing a report
  937. and un/stashing of bootstage data.
  938. menu "Power commands"
  939. config CMD_PMIC
  940. bool "Enable Driver Model PMIC command"
  941. depends on DM_PMIC
  942. help
  943. This is the pmic command, based on a driver model pmic's API.
  944. Command features are unchanged:
  945. - list - list pmic devices
  946. - pmic dev <id> - show or [set] operating pmic device (NEW)
  947. - pmic dump - dump registers
  948. - pmic read address - read byte of register at address
  949. - pmic write address - write byte to register at address
  950. The only one change for this command is 'dev' subcommand.
  951. config CMD_REGULATOR
  952. bool "Enable Driver Model REGULATOR command"
  953. depends on DM_REGULATOR
  954. help
  955. This command is based on driver model regulator's API.
  956. User interface features:
  957. - list - list regulator devices
  958. - regulator dev <id> - show or [set] operating regulator device
  959. - regulator info - print constraints info
  960. - regulator status - print operating status
  961. - regulator value <val] <-f> - print/[set] voltage value [uV]
  962. - regulator current <val> - print/[set] current value [uA]
  963. - regulator mode <id> - print/[set] operating mode id
  964. - regulator enable - enable the regulator output
  965. - regulator disable - disable the regulator output
  966. The '-f' (force) option can be used for set the value which exceeds
  967. the limits, which are found in device-tree and are kept in regulator's
  968. uclass platdata structure.
  969. endmenu
  970. menu "Security commands"
  971. config CMD_AES
  972. bool "Enable the 'aes' command"
  973. select AES
  974. help
  975. This provides a means to encrypt and decrypt data using the AES
  976. (Advanced Encryption Standard). This algorithm uses a symetric key
  977. and is widely used as a streaming cipher. Different key lengths are
  978. supported by the algorithm but this command only supports 128 bits
  979. at present.
  980. config CMD_BLOB
  981. bool "Enable the 'blob' command"
  982. help
  983. This is used with the Freescale secure boot mechanism.
  984. Freescale's SEC block has built-in Blob Protocol which provides
  985. a method for protecting user-defined data across system power
  986. cycles. SEC block protects data in a data structure called a Blob,
  987. which provides both confidentiality and integrity protection.
  988. Encapsulating data as a blob
  989. Each time that the Blob Protocol is used to protect data, a
  990. different randomly generated key is used to encrypt the data.
  991. This random key is itself encrypted using a key which is derived
  992. from SoC's non-volatile secret key and a 16 bit Key identifier.
  993. The resulting encrypted key along with encrypted data is called a
  994. blob. The non-volatile secure key is available for use only during
  995. secure boot.
  996. During decapsulation, the reverse process is performed to get back
  997. the original data.
  998. Sub-commands:
  999. blob enc - encapsulating data as a cryptgraphic blob
  1000. blob dec - decapsulating cryptgraphic blob to get the data
  1001. Syntax:
  1002. blob enc src dst len km
  1003. Encapsulate and create blob of data $len bytes long
  1004. at address $src and store the result at address $dst.
  1005. $km is the 16 byte key modifier is also required for
  1006. generation/use as key for cryptographic operation. Key
  1007. modifier should be 16 byte long.
  1008. blob dec src dst len km
  1009. Decapsulate the blob of data at address $src and
  1010. store result of $len byte at addr $dst.
  1011. $km is the 16 byte key modifier is also required for
  1012. generation/use as key for cryptographic operation. Key
  1013. modifier should be 16 byte long.
  1014. config CMD_HASH
  1015. bool "Support 'hash' command"
  1016. select HASH
  1017. help
  1018. This provides a way to hash data in memory using various supported
  1019. algorithms (such as SHA1, MD5, CRC32). The computed digest can be
  1020. saved to memory or to an environment variable. It is also possible
  1021. to verify a hash against data in memory.
  1022. config HASH_VERIFY
  1023. bool "hash -v"
  1024. depends on CMD_HASH
  1025. help
  1026. Add -v option to verify data against a hash.
  1027. config CMD_TPM
  1028. bool "Enable the 'tpm' command"
  1029. depends on TPM
  1030. help
  1031. This provides a means to talk to a TPM from the command line. A wide
  1032. range of commands if provided - see 'tpm help' for details. The
  1033. command requires a suitable TPM on your board and the correct driver
  1034. must be enabled.
  1035. config CMD_TPM_TEST
  1036. bool "Enable the 'tpm test' command"
  1037. depends on CMD_TPM
  1038. help
  1039. This provides a a series of tests to confirm that the TPM is working
  1040. correctly. The tests cover initialisation, non-volatile RAM, extend,
  1041. global lock and checking that timing is within expectations. The
  1042. tests pass correctly on Infineon TPMs but may need to be adjusted
  1043. for other devices.
  1044. endmenu
  1045. menu "Firmware commands"
  1046. config CMD_CROS_EC
  1047. bool "Enable crosec command"
  1048. depends on CROS_EC
  1049. default y
  1050. help
  1051. Enable command-line access to the Chrome OS EC (Embedded
  1052. Controller). This provides the 'crosec' command which has
  1053. a number of sub-commands for performing EC tasks such as
  1054. updating its flash, accessing a small saved context area
  1055. and talking to the I2C bus behind the EC (if there is one).
  1056. endmenu
  1057. menu "Filesystem commands"
  1058. config CMD_CBFS
  1059. bool "Enable the 'cbfs' command"
  1060. depends on FS_CBFS
  1061. help
  1062. Define this to enable support for reading from a Coreboot
  1063. filesystem. This is a ROM-based filesystem used for accessing files
  1064. on systems that use coreboot as the first boot-loader and then load
  1065. U-Boot to actually boot the Operating System. Available commands are
  1066. cbfsinit, cbfsinfo, cbfsls and cbfsload.
  1067. config CMD_CRAMFS
  1068. bool "Enable the 'cramfs' command"
  1069. depends on FS_CRAMFS
  1070. help
  1071. This provides commands for dealing with CRAMFS (Compressed ROM
  1072. filesystem). CRAMFS is useful when space is tight since files are
  1073. compressed. Two commands are provided:
  1074. cramfsls - lists files in a cramfs image
  1075. cramfsload - loads a file from a cramfs image
  1076. config CMD_EXT2
  1077. bool "ext2 command support"
  1078. help
  1079. Enables EXT2 FS command
  1080. config CMD_EXT4
  1081. bool "ext4 command support"
  1082. help
  1083. Enables EXT4 FS command
  1084. config CMD_EXT4_WRITE
  1085. depends on CMD_EXT4
  1086. bool "ext4 write command support"
  1087. help
  1088. Enables EXT4 FS write command
  1089. config CMD_FAT
  1090. bool "FAT command support"
  1091. select FS_FAT
  1092. help
  1093. Support for the FAT fs
  1094. config CMD_FS_GENERIC
  1095. bool "filesystem commands"
  1096. help
  1097. Enables filesystem commands (e.g. load, ls) that work for multiple
  1098. fs types.
  1099. config CMD_FS_UUID
  1100. bool "fsuuid command"
  1101. help
  1102. Enables fsuuid command for filesystem UUID.
  1103. config CMD_JFFS2
  1104. bool "jffs2 command"
  1105. select FS_JFFS2
  1106. help
  1107. Enables commands to support the JFFS2 (Journalling Flash File System
  1108. version 2) filesystem. This enables fsload, ls and fsinfo which
  1109. provide the ability to load files, list directories and obtain
  1110. filesystem information.
  1111. config CMD_MTDPARTS
  1112. bool "MTD partition support"
  1113. help
  1114. MTD partition support
  1115. config MTDIDS_DEFAULT
  1116. string "Default MTD IDs"
  1117. depends on CMD_MTDPARTS
  1118. help
  1119. Defines a default MTD ID
  1120. config MTDPARTS_DEFAULT
  1121. string "Default MTD partition scheme"
  1122. depends on CMD_MTDPARTS
  1123. help
  1124. Defines a default MTD partitioning scheme in the Linux MTD command
  1125. line partitions format
  1126. config CMD_MTDPARTS_SPREAD
  1127. bool "Padd partition size to take account of bad blocks"
  1128. depends on CMD_MTDPARTS
  1129. help
  1130. This enables the 'spread' sub-command of the mtdparts command.
  1131. This command will modify the existing mtdparts variable by increasing
  1132. the size of the partitions such that 1) each partition's net size is
  1133. at least as large as the size specified in the mtdparts variable and
  1134. 2) each partition starts on a good block.
  1135. config CMD_REISER
  1136. bool "reiser - Access to reiserfs filesystems"
  1137. help
  1138. This provides two commands which operate on a resierfs filesystem,
  1139. commonly used some years ago:
  1140. reiserls - list files
  1141. reiserload - load a file
  1142. config CMD_SCSI
  1143. bool "scsi - Access to SCSI devices"
  1144. default y if SCSI
  1145. help
  1146. This provides a 'scsi' command which provides access to SCSI (Small
  1147. Computer System Interface) devices. The command provides a way to
  1148. scan the bus, reset the bus, read and write data and get information
  1149. about devices.
  1150. config CMD_YAFFS2
  1151. bool "yaffs2 - Access of YAFFS2 filesystem"
  1152. depends on YAFFS2
  1153. default y
  1154. help
  1155. This provides commands for accessing a YAFFS2 filesystem. Yet
  1156. Another Flash Filesystem 2 is a filesystem designed specifically
  1157. for NAND flash. It incorporates bad-block management and ensures
  1158. that device writes are sequential regardless of filesystem
  1159. activity.
  1160. endmenu
  1161. menu "Debug commands"
  1162. config CMD_BEDBUG
  1163. bool "bedbug"
  1164. help
  1165. The bedbug (emBEDded deBUGger) command provides debugging features
  1166. for some PowerPC processors. For details please see the
  1167. docuemntation in doc/README.beddbug
  1168. config CMD_DIAG
  1169. bool "diag - Board diagnostics"
  1170. help
  1171. This command provides access to board diagnostic tests. These are
  1172. called Power-on Self Tests (POST). The command allows listing of
  1173. available tests and running either all the tests, or specific tests
  1174. identified by name.
  1175. config CMD_IRQ
  1176. bool "irq - Show information about interrupts"
  1177. depends on !ARM && !MIPS && !SH
  1178. help
  1179. This enables two commands:
  1180. interrupts - enable or disable interrupts
  1181. irqinfo - print device-specific interrupt information
  1182. config CMD_KGDB
  1183. bool "kgdb - Allow debugging of U-Boot with gdb"
  1184. help
  1185. This enables a 'kgdb' command which allows gdb to connect to U-Boot
  1186. over a serial link for debugging purposes. This allows
  1187. single-stepping, inspecting variables, etc. This is supported only
  1188. on PowerPC at present.
  1189. endmenu
  1190. config CMD_UBI
  1191. tristate "Enable UBI - Unsorted block images commands"
  1192. select CRC32
  1193. select MTD_UBI
  1194. select CMD_MTDPARTS
  1195. default y if NAND_SUNXI
  1196. help
  1197. UBI is a software layer above MTD layer which admits use of LVM-like
  1198. logical volumes on top of MTD devices, hides some complexities of
  1199. flash chips like wear and bad blocks and provides some other useful
  1200. capabilities. Please, consult the MTD web site for more details
  1201. (www.linux-mtd.infradead.org). Activate this option if you want
  1202. to use U-Boot UBI commands.
  1203. config CMD_UBIFS
  1204. tristate "Enable UBIFS - Unsorted block images filesystem commands"
  1205. depends on CMD_UBI
  1206. select CRC32
  1207. select LZO
  1208. default y if CMD_UBI
  1209. help
  1210. UBIFS is a file system for flash devices which works on top of UBI.
  1211. endmenu