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