xref: /openbmc/u-boot/cmd/Kconfig (revision 0af49b95)
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_BOOTEFI
164	bool "bootefi"
165	depends on EFI_LOADER
166	default y
167	help
168	  Boot an EFI image from memory.
169
170config CMD_ELF
171	bool "bootelf, bootvx"
172	default y
173	help
174	  Boot an ELF/vxWorks image from the memory.
175
176config CMD_GO
177	bool "go"
178	default y
179	help
180	  Start an application at a given address.
181
182config CMD_RUN
183	bool "run"
184	default y
185	help
186	  Run the command in the given environment variable.
187
188config CMD_IMI
189	bool "iminfo"
190	default y
191	help
192	  Print header information for application image.
193
194config CMD_IMLS
195	bool "imls"
196	default y
197	help
198	  List all images found in flash
199
200config CMD_XIMG
201	bool "imxtract"
202	default y
203	help
204	  Extract a part of a multi-image.
205
206config CMD_POWEROFF
207	bool
208
209endmenu
210
211menu "Environment commands"
212
213config CMD_EXPORTENV
214	bool "env export"
215	default y
216	help
217	  Export environments.
218
219config CMD_IMPORTENV
220	bool "env import"
221	default y
222	help
223	  Import environments.
224
225config CMD_EDITENV
226	bool "editenv"
227	default y
228	help
229	  Edit environment variable.
230
231config CMD_SAVEENV
232	bool "saveenv"
233	default y
234	help
235	  Save all environment variables into the compiled-in persistent
236	  storage.
237
238config CMD_ENV_EXISTS
239	bool "env exists"
240	default y
241	help
242	  Check if a variable is defined in the environment for use in
243	  shell scripting.
244
245endmenu
246
247menu "Memory commands"
248
249config CMD_MEMORY
250	bool "md, mm, nm, mw, cp, cmp, base, loop"
251	default y
252	help
253	  Memeory commands.
254	    md - memory display
255	    mm - memory modify (auto-incrementing address)
256	    nm - memory modify (constant address)
257	    mw - memory write (fill)
258	    cp - memory copy
259	    cmp - memory compare
260	    base - print or set address offset
261	    loop - initinite loop on address range
262
263config CMD_CRC32
264	bool "crc32"
265	default y
266	help
267	  Compute CRC32.
268
269config LOOPW
270	bool "loopw"
271	help
272	  Infinite write loop on address range
273
274config CMD_MEMTEST
275	bool "memtest"
276	help
277	  Simple RAM read/write test.
278
279config CMD_MX_CYCLIC
280	bool "mdc, mwc"
281	help
282	  mdc - memory display cyclic
283	  mwc - memory write cyclic
284
285config CMD_MEMINFO
286	bool "meminfo"
287	help
288	  Display memory information.
289
290endmenu
291
292menu "Device access commands"
293
294config CMD_DM
295	bool "dm - Access to driver model information"
296	depends on DM
297	default y
298	help
299	  Provides access to driver model data structures and information,
300	  such as a list of devices, list of uclasses and the state of each
301	  device (e.g. activated). This is not required for operation, but
302	  can be useful to see the state of driver model for debugging or
303	  interest.
304
305config CMD_DEMO
306	bool "demo - Demonstration commands for driver model"
307	depends on DM
308	help
309	  Provides a 'demo' command which can be used to play around with
310	  driver model. To use this properly you will need to enable one or
311	  both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
312	  Otherwise you will always get an empty list of devices. The demo
313	  devices are defined in the sandbox device tree, so the easiest
314	  option is to use sandbox and pass the -d point to sandbox's
315	  u-boot.dtb file.
316
317config CMD_LOADB
318	bool "loadb"
319	default y
320	help
321	  Load a binary file over serial line.
322
323config CMD_LOADS
324	bool "loads"
325	default y
326	help
327	  Load an S-Record file over serial line
328
329config CMD_FLASH
330	bool "flinfo, erase, protect"
331	default y
332	help
333	  NOR flash support.
334	    flinfo - print FLASH memory information
335	    erase - FLASH memory
336	    protect - enable or disable FLASH write protection
337
338config CMD_ARMFLASH
339	depends on FLASH_CFI_DRIVER
340	bool "armflash"
341	help
342	  ARM Ltd reference designs flash partition access
343
344config CMD_NAND
345	bool "nand"
346	help
347	  NAND support.
348
349config CMD_SF
350	bool "sf"
351	help
352	  SPI Flash support
353
354config CMD_SPI
355	bool "sspi"
356	help
357	  SPI utility command.
358
359config CMD_I2C
360	bool "i2c"
361	help
362	  I2C support.
363
364config CMD_USB
365	bool "usb"
366	help
367	  USB support.
368
369config CMD_FPGA
370	bool "fpga"
371	default y
372	help
373	  FPGA support.
374
375config CMD_REMOTEPROC
376	bool "remoteproc"
377	depends on REMOTEPROC
378	help
379	  Support for Remote Processor control
380
381config CMD_GPIO
382	bool "gpio"
383	help
384	  GPIO support.
385
386endmenu
387
388
389menu "Shell scripting commands"
390
391config CMD_ECHO
392	bool "echo"
393	default y
394	help
395	  Echo args to console
396
397config CMD_ITEST
398	bool "itest"
399	default y
400	help
401	  Return true/false on integer compare.
402
403config CMD_SOURCE
404	bool "source"
405	default y
406	help
407	  Run script from memory
408
409config CMD_SETEXPR
410	bool "setexpr"
411	default y
412	help
413	  Evaluate boolean and math expressions and store the result in an env
414	    variable.
415	  Also supports loading the value at a memory location into a variable.
416	  If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
417
418endmenu
419
420menu "Network commands"
421
422config CMD_NET
423	bool "bootp, tftpboot"
424        select NET
425	default y
426	help
427	  Network commands.
428	  bootp - boot image via network using BOOTP/TFTP protocol
429	  tftpboot - boot image via network using TFTP protocol
430
431config CMD_TFTPPUT
432	bool "tftp put"
433	help
434	  TFTP put command, for uploading files to a server
435
436config CMD_TFTPSRV
437	bool "tftpsrv"
438	help
439	  Act as a TFTP server and boot the first received file
440
441config CMD_RARP
442	bool "rarpboot"
443	help
444	  Boot image via network using RARP/TFTP protocol
445
446config CMD_DHCP
447	bool "dhcp"
448	help
449	  Boot image via network using DHCP/TFTP protocol
450
451config CMD_NFS
452	bool "nfs"
453	default y
454	help
455	  Boot image via network using NFS protocol.
456
457config CMD_PING
458	bool "ping"
459	help
460	  Send ICMP ECHO_REQUEST to network host
461
462config CMD_CDP
463	bool "cdp"
464	help
465	  Perform CDP network configuration
466
467config CMD_SNTP
468	bool "sntp"
469	help
470	  Synchronize RTC via network
471
472config CMD_DNS
473	bool "dns"
474	help
475	  Lookup the IP of a hostname
476
477config CMD_LINK_LOCAL
478	bool "linklocal"
479	help
480	  Acquire a network IP address using the link-local protocol
481
482endmenu
483
484menu "Misc commands"
485
486config CMD_AMBAPP
487	bool "ambapp"
488	depends on LEON3
489	default y
490	help
491	  Lists AMBA Plug-n-Play information.
492
493config SYS_AMBAPP_PRINT_ON_STARTUP
494	bool "Show AMBA PnP info on startup"
495	depends on CMD_AMBAPP
496	default n
497	help
498	  Show AMBA Plug-n-Play information on startup.
499
500config CMD_TIME
501	bool "time"
502	help
503	  Run commands and summarize execution time.
504
505# TODO: rename to CMD_SLEEP
506config CMD_MISC
507	bool "sleep"
508	default y
509	help
510	  Delay execution for some time
511
512config CMD_TIMER
513	bool "timer"
514	help
515	  Access the system timer.
516
517config CMD_SETGETDCR
518	bool "getdcr, setdcr, getidcr, setidcr"
519	depends on 4xx
520	default y
521	help
522	  getdcr - Get an AMCC PPC 4xx DCR's value
523	  setdcr - Set an AMCC PPC 4xx DCR's value
524	  getidcr - Get a register value via indirect DCR addressing
525	  setidcr - Set a register value via indirect DCR addressing
526
527config CMD_SOUND
528	bool "sound"
529	depends on SOUND
530	help
531	  This provides basic access to the U-Boot's sound support. The main
532	  feature is to play a beep.
533
534	     sound init   - set up sound system
535	     sound play   - play a sound
536
537endmenu
538
539config CMD_BOOTSTAGE
540	bool "Enable the 'bootstage' command"
541	depends on BOOTSTAGE
542	help
543	  Add a 'bootstage' command which supports printing a report
544	  and un/stashing of bootstage data.
545
546menu "Power commands"
547config CMD_PMIC
548	bool "Enable Driver Model PMIC command"
549	depends on DM_PMIC
550	help
551	  This is the pmic command, based on a driver model pmic's API.
552	  Command features are unchanged:
553	  - list               - list pmic devices
554	  - pmic dev <id>      - show or [set] operating pmic device (NEW)
555	  - pmic dump          - dump registers
556	  - pmic read address  - read byte of register at address
557	  - pmic write address - write byte to register at address
558	  The only one change for this command is 'dev' subcommand.
559
560config CMD_REGULATOR
561	bool "Enable Driver Model REGULATOR command"
562	depends on DM_REGULATOR
563	help
564	  This command is based on driver model regulator's API.
565	  User interface features:
566	  - list               - list regulator devices
567	  - regulator dev <id> - show or [set] operating regulator device
568	  - regulator info     - print constraints info
569	  - regulator status   - print operating status
570	  - regulator value <val] <-f> - print/[set] voltage value [uV]
571	  - regulator current <val>    - print/[set] current value [uA]
572	  - regulator mode <id>        - print/[set] operating mode id
573	  - regulator enable           - enable the regulator output
574	  - regulator disable          - disable the regulator output
575
576	  The '-f' (force) option can be used for set the value which exceeds
577	  the limits, which are found in device-tree and are kept in regulator's
578	  uclass platdata structure.
579
580endmenu
581
582menu "Security commands"
583config CMD_TPM
584	bool "Enable the 'tpm' command"
585	depends on TPM
586	help
587	  This provides a means to talk to a TPM from the command line. A wide
588	  range of commands if provided - see 'tpm help' for details. The
589	  command requires a suitable TPM on your board and the correct driver
590	  must be enabled.
591
592config CMD_TPM_TEST
593	bool "Enable the 'tpm test' command"
594	depends on CMD_TPM
595	help
596	  This provides a a series of tests to confirm that the TPM is working
597	  correctly. The tests cover initialisation, non-volatile RAM, extend,
598	  global lock and checking that timing is within expectations. The
599	  tests pass correctly on Infineon TPMs but may need to be adjusted
600	  for other devices.
601
602endmenu
603
604endmenu
605