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