xref: /openbmc/u-boot/cmd/Kconfig (revision 6f967856)
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	select SYS_HUSH_PARSER
17	depends on CMDLINE
18	help
19	  This option enables the "hush" shell (from Busybox) as command line
20	  interpreter, thus enabling powerful command line syntax like
21	  if...then...else...fi conditionals or `&&' and '||'
22	  constructs ("shell scripts").
23
24	  If disabled, you get the old, much simpler behaviour with a somewhat
25	  smaller memory footprint.
26
27config SYS_HUSH_PARSER
28	bool
29	help
30	  Backward compatibility.
31
32config SYS_PROMPT
33	string "Shell prompt"
34	default "=> "
35	help
36	  This string is displayed in the command line to the left of the
37	  cursor.
38
39menu "Autoboot options"
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
117comment "Commands"
118
119menu "Info commands"
120
121config CMD_BDI
122	bool "bdinfo"
123	default y
124	help
125	  Print board info
126
127config CMD_CONSOLE
128	bool "coninfo"
129	default y
130	help
131	  Print console devices and information.
132
133config CMD_CPU
134	bool "cpu"
135	help
136	  Print information about available CPUs. This normally shows the
137	  number of CPUs, type (e.g. manufacturer, architecture, product or
138	  internal name) and clock frequency. Other information may be
139	  available depending on the CPU driver.
140
141config CMD_LICENSE
142	bool "license"
143	help
144	  Print GPL license text
145
146endmenu
147
148menu "Boot commands"
149
150config CMD_BOOTD
151	bool "bootd"
152	default y
153	help
154	  Run the command stored in the environment "bootcmd", i.e.
155	  "bootd" does the same thing as "run bootcmd".
156
157config CMD_BOOTM
158	bool "bootm"
159	default y
160	help
161	  Boot an application image from the memory.
162
163config CMD_BOOTZ
164	bool "bootz"
165	help
166	  Boot the Linux zImage
167
168config CMD_BOOTEFI
169	bool "bootefi"
170	depends on EFI_LOADER
171	default y
172	help
173	  Boot an EFI image from memory.
174
175config CMD_ELF
176	bool "bootelf, bootvx"
177	default y
178	help
179	  Boot an ELF/vxWorks image from the memory.
180
181config CMD_FDT
182	bool "Flattened Device Tree utility commands"
183	default y
184	depends on OF_LIBFDT
185	help
186	  Do FDT related setup before booting into the Operating System.
187
188config CMD_GO
189	bool "go"
190	default y
191	help
192	  Start an application at a given address.
193
194config CMD_RUN
195	bool "run"
196	default y
197	help
198	  Run the command in the given environment variable.
199
200config CMD_IMI
201	bool "iminfo"
202	default y
203	help
204	  Print header information for application image.
205
206config CMD_IMLS
207	bool "imls"
208	default y
209	help
210	  List all images found in flash
211
212config CMD_XIMG
213	bool "imxtract"
214	default y
215	help
216	  Extract a part of a multi-image.
217
218config CMD_POWEROFF
219	bool
220
221endmenu
222
223menu "Environment commands"
224
225config CMD_ASKENV
226	bool "ask for env variable"
227	help
228	  Ask for environment variable
229
230config CMD_EXPORTENV
231	bool "env export"
232	default y
233	help
234	  Export environments.
235
236config CMD_IMPORTENV
237	bool "env import"
238	default y
239	help
240	  Import environments.
241
242config CMD_EDITENV
243	bool "editenv"
244	default y
245	help
246	  Edit environment variable.
247
248config CMD_GREPENV
249	bool "search env"
250	help
251	  Allow for searching environment variables
252
253config CMD_SAVEENV
254	bool "saveenv"
255	default y
256	help
257	  Save all environment variables into the compiled-in persistent
258	  storage.
259
260config CMD_ENV_EXISTS
261	bool "env exists"
262	default y
263	help
264	  Check if a variable is defined in the environment for use in
265	  shell scripting.
266
267endmenu
268
269menu "Memory commands"
270
271config CMD_MEMORY
272	bool "md, mm, nm, mw, cp, cmp, base, loop"
273	default y
274	help
275	  Memeory commands.
276	    md - memory display
277	    mm - memory modify (auto-incrementing address)
278	    nm - memory modify (constant address)
279	    mw - memory write (fill)
280	    cp - memory copy
281	    cmp - memory compare
282	    base - print or set address offset
283	    loop - initinite loop on address range
284
285config CMD_CRC32
286	bool "crc32"
287	default y
288	help
289	  Compute CRC32.
290
291config LOOPW
292	bool "loopw"
293	help
294	  Infinite write loop on address range
295
296config CMD_MEMTEST
297	bool "memtest"
298	help
299	  Simple RAM read/write test.
300
301config CMD_MX_CYCLIC
302	bool "mdc, mwc"
303	help
304	  mdc - memory display cyclic
305	  mwc - memory write cyclic
306
307config CMD_MEMINFO
308	bool "meminfo"
309	help
310	  Display memory information.
311
312endmenu
313
314menu "Device access commands"
315
316config CMD_DM
317	bool "dm - Access to driver model information"
318	depends on DM
319	default y
320	help
321	  Provides access to driver model data structures and information,
322	  such as a list of devices, list of uclasses and the state of each
323	  device (e.g. activated). This is not required for operation, but
324	  can be useful to see the state of driver model for debugging or
325	  interest.
326
327config CMD_DEMO
328	bool "demo - Demonstration commands for driver model"
329	depends on DM
330	help
331	  Provides a 'demo' command which can be used to play around with
332	  driver model. To use this properly you will need to enable one or
333	  both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
334	  Otherwise you will always get an empty list of devices. The demo
335	  devices are defined in the sandbox device tree, so the easiest
336	  option is to use sandbox and pass the -d point to sandbox's
337	  u-boot.dtb file.
338
339config CMD_LOADB
340	bool "loadb"
341	default y
342	help
343	  Load a binary file over serial line.
344
345config CMD_LOADS
346	bool "loads"
347	default y
348	help
349	  Load an S-Record file over serial line
350
351config CMD_FLASH
352	bool "flinfo, erase, protect"
353	default y
354	help
355	  NOR flash support.
356	    flinfo - print FLASH memory information
357	    erase - FLASH memory
358	    protect - enable or disable FLASH write protection
359
360config CMD_ARMFLASH
361	#depends on FLASH_CFI_DRIVER
362	bool "armflash"
363	help
364	  ARM Ltd reference designs flash partition access
365
366config CMD_MMC
367	bool "mmc"
368	help
369	  MMC memory mapped support.
370
371config CMD_NAND
372	bool "nand"
373	help
374	  NAND support.
375
376config CMD_SF
377	bool "sf"
378	help
379	  SPI Flash support
380
381config CMD_SPI
382	bool "sspi"
383	help
384	  SPI utility command.
385
386config CMD_I2C
387	bool "i2c"
388	help
389	  I2C support.
390
391config CMD_USB
392	bool "usb"
393	help
394	  USB support.
395
396config CMD_DFU
397	bool "dfu"
398	help
399	  Enables the command "dfu" which is used to have U-Boot create a DFU
400	  class device via USB.
401
402config CMD_USB_MASS_STORAGE
403	bool "UMS usb mass storage"
404	help
405	  USB mass storage support
406
407config CMD_FPGA
408	bool "fpga"
409	default y
410	help
411	  FPGA support.
412
413config CMD_REMOTEPROC
414	bool "remoteproc"
415	depends on REMOTEPROC
416	help
417	  Support for Remote Processor control
418
419config CMD_GPIO
420	bool "gpio"
421	help
422	  GPIO support.
423
424endmenu
425
426
427menu "Shell scripting commands"
428
429config CMD_ECHO
430	bool "echo"
431	default y
432	help
433	  Echo args to console
434
435config CMD_ITEST
436	bool "itest"
437	default y
438	help
439	  Return true/false on integer compare.
440
441config CMD_SOURCE
442	bool "source"
443	default y
444	help
445	  Run script from memory
446
447config CMD_SETEXPR
448	bool "setexpr"
449	default y
450	help
451	  Evaluate boolean and math expressions and store the result in an env
452	    variable.
453	  Also supports loading the value at a memory location into a variable.
454	  If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
455
456endmenu
457
458menu "Network commands"
459
460config CMD_NET
461	bool "bootp, tftpboot"
462        select NET
463	default y
464	help
465	  Network commands.
466	  bootp - boot image via network using BOOTP/TFTP protocol
467	  tftpboot - boot image via network using TFTP protocol
468
469config CMD_TFTPPUT
470	bool "tftp put"
471	help
472	  TFTP put command, for uploading files to a server
473
474config CMD_TFTPSRV
475	bool "tftpsrv"
476	help
477	  Act as a TFTP server and boot the first received file
478
479config CMD_RARP
480	bool "rarpboot"
481	help
482	  Boot image via network using RARP/TFTP protocol
483
484config CMD_DHCP
485	bool "dhcp"
486	help
487	  Boot image via network using DHCP/TFTP protocol
488
489config CMD_NFS
490	bool "nfs"
491	default y
492	help
493	  Boot image via network using NFS protocol.
494
495config CMD_MII
496	bool "mii"
497	help
498	  Enable MII utility commands.
499
500config CMD_PING
501	bool "ping"
502	help
503	  Send ICMP ECHO_REQUEST to network host
504
505config CMD_CDP
506	bool "cdp"
507	help
508	  Perform CDP network configuration
509
510config CMD_SNTP
511	bool "sntp"
512	help
513	  Synchronize RTC via network
514
515config CMD_DNS
516	bool "dns"
517	help
518	  Lookup the IP of a hostname
519
520config CMD_LINK_LOCAL
521	bool "linklocal"
522	help
523	  Acquire a network IP address using the link-local protocol
524
525endmenu
526
527menu "Misc commands"
528
529config CMD_AMBAPP
530	bool "ambapp"
531	depends on LEON3
532	default y
533	help
534	  Lists AMBA Plug-n-Play information.
535
536config SYS_AMBAPP_PRINT_ON_STARTUP
537	bool "Show AMBA PnP info on startup"
538	depends on CMD_AMBAPP
539	default n
540	help
541	  Show AMBA Plug-n-Play information on startup.
542
543config CMD_BLOCK_CACHE
544	bool "blkcache - control and stats for block cache"
545	depends on BLOCK_CACHE
546	default y if BLOCK_CACHE
547	help
548	  Enable the blkcache command, which can be used to control the
549	  operation of the cache functions.
550	  This is most useful when fine-tuning the operation of the cache
551	  during development, but also allows the cache to be disabled when
552	  it might hurt performance (e.g. when using the ums command).
553
554config CMD_CACHE
555	bool "icache or dcache"
556	help
557	  Enable the "icache" and "dcache" commands
558
559config CMD_TIME
560	bool "time"
561	help
562	  Run commands and summarize execution time.
563
564# TODO: rename to CMD_SLEEP
565config CMD_MISC
566	bool "sleep"
567	default y
568	help
569	  Delay execution for some time
570
571config CMD_TIMER
572	bool "timer"
573	help
574	  Access the system timer.
575
576config CMD_SETGETDCR
577	bool "getdcr, setdcr, getidcr, setidcr"
578	depends on 4xx
579	default y
580	help
581	  getdcr - Get an AMCC PPC 4xx DCR's value
582	  setdcr - Set an AMCC PPC 4xx DCR's value
583	  getidcr - Get a register value via indirect DCR addressing
584	  setidcr - Set a register value via indirect DCR addressing
585
586config CMD_SOUND
587	bool "sound"
588	depends on SOUND
589	help
590	  This provides basic access to the U-Boot's sound support. The main
591	  feature is to play a beep.
592
593	     sound init   - set up sound system
594	     sound play   - play a sound
595
596config CMD_QFW
597	bool "qfw"
598	select QFW
599	help
600	  This provides access to the QEMU firmware interface.  The main
601	  feature is to allow easy loading of files passed to qemu-system
602	  via -kernel / -initrd
603endmenu
604
605config CMD_BOOTSTAGE
606	bool "Enable the 'bootstage' command"
607	depends on BOOTSTAGE
608	help
609	  Add a 'bootstage' command which supports printing a report
610	  and un/stashing of bootstage data.
611
612menu "Power commands"
613config CMD_PMIC
614	bool "Enable Driver Model PMIC command"
615	depends on DM_PMIC
616	help
617	  This is the pmic command, based on a driver model pmic's API.
618	  Command features are unchanged:
619	  - list               - list pmic devices
620	  - pmic dev <id>      - show or [set] operating pmic device (NEW)
621	  - pmic dump          - dump registers
622	  - pmic read address  - read byte of register at address
623	  - pmic write address - write byte to register at address
624	  The only one change for this command is 'dev' subcommand.
625
626config CMD_REGULATOR
627	bool "Enable Driver Model REGULATOR command"
628	depends on DM_REGULATOR
629	help
630	  This command is based on driver model regulator's API.
631	  User interface features:
632	  - list               - list regulator devices
633	  - regulator dev <id> - show or [set] operating regulator device
634	  - regulator info     - print constraints info
635	  - regulator status   - print operating status
636	  - regulator value <val] <-f> - print/[set] voltage value [uV]
637	  - regulator current <val>    - print/[set] current value [uA]
638	  - regulator mode <id>        - print/[set] operating mode id
639	  - regulator enable           - enable the regulator output
640	  - regulator disable          - disable the regulator output
641
642	  The '-f' (force) option can be used for set the value which exceeds
643	  the limits, which are found in device-tree and are kept in regulator's
644	  uclass platdata structure.
645
646endmenu
647
648menu "Security commands"
649config CMD_TPM
650	bool "Enable the 'tpm' command"
651	depends on TPM
652	help
653	  This provides a means to talk to a TPM from the command line. A wide
654	  range of commands if provided - see 'tpm help' for details. The
655	  command requires a suitable TPM on your board and the correct driver
656	  must be enabled.
657
658config CMD_TPM_TEST
659	bool "Enable the 'tpm test' command"
660	depends on CMD_TPM
661	help
662	  This provides a a series of tests to confirm that the TPM is working
663	  correctly. The tests cover initialisation, non-volatile RAM, extend,
664	  global lock and checking that timing is within expectations. The
665	  tests pass correctly on Infineon TPMs but may need to be adjusted
666	  for other devices.
667
668endmenu
669
670menu "Filesystem commands"
671config CMD_EXT2
672	bool "ext2 command support"
673	help
674	  Enables EXT2 FS command
675
676config CMD_EXT4
677	bool "ext4 command support"
678	help
679	  Enables EXT4 FS command
680
681config CMD_EXT4_WRITE
682	depends on CMD_EXT4
683	bool "ext4 write command support"
684	help
685	  Enables EXT4 FS write command
686
687config CMD_FAT
688	bool "FAT command support"
689	help
690	  Support for the FAT fs
691
692config CMD_FS_GENERIC
693	bool "filesystem commands"
694	help
695	  Enables filesystem commands (e.g. load, ls) that work for multiple
696	  fs types.
697endmenu
698
699endmenu
700