summaryrefslogtreecommitdiff
path: root/common/Kconfig
blob: 5d7e48a5b633e89a913fe7b0eda424db153b7e08 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
menu "Command line interface"

config HUSH_PARSER
	bool "Use hush shell"
	select SYS_HUSH_PARSER
	help
	  This option enables the "hush" shell (from Busybox) as command line
	  interpreter, thus enabling powerful command line syntax like
	  if...then...else...fi conditionals or `&&' and '||'
	  constructs ("shell scripts").

	  If disabled, you get the old, much simpler behaviour with a somewhat
	  smaller memory footprint.

config SYS_HUSH_PARSER
	bool
	help
	  Backward compatibility.

comment "Commands"

menu "Info commands"

config CMD_BDI
	bool "bdinfo"
	help
	  Print board info

config CMD_CONSOLE
	bool "coninfo"
	help
	  Print console devices and information.

config CMD_LICENSE
	bool "license"
	help
	  Print GPL license text

endmenu

menu "Boot commands"

config CMD_BOOTD
	bool "bootd"
	help
	  Run the command stored in the environment "bootcmd", i.e.
	  "bootd" does the same thing as "run bootcmd".

config CMD_BOOTM
	bool "bootm"
	default y
	help
	  Boot an application image from the memory.

config CMD_GO
	bool "go"
	default y
	help
	  Start an application at a given address.

config CMD_RUN
	bool "run"
	help
	  Run the command in the given environment variable.

config CMD_IMI
	bool "iminfo"
	help
	  Print header information for application image.

config CMD_IMLS
	bool "imls"
	help
	  List all images found in flash

config CMD_XIMG
	bool "imxtract"
	help
	  Extract a part of a multi-image.

endmenu

menu "Environment commands"

config CMD_EXPORTENV
	bool "env export"
	default y
	help
	  Export environments.

config CMD_IMPORTENV
	bool "env import"
	default y
	help
	  Import environments.

config CMD_EDITENV
	bool "editenv"
	help
	  Edit environment variable.

config CMD_SAVEENV
	bool "saveenv"
	help
	  Run the command in the given environment variable.

endmenu

menu "Memory commands"

config CMD_MEMORY
	bool "md, mm, nm, mw, cp, cmp, base, loop"
	help
	  Memeory commands.
	    md - memory display
	    mm - memory modify (auto-incrementing address)
	    nm - memory modify (constant address)
	    mw - memory write (fill)
	    cp - memory copy
	    cmp - memory compare
	    base - print or set address offset
	    loop - initinite loop on address range

config CMD_CRC32
	bool "crc32"
	default y
	help
	  Compute CRC32.

config LOOPW
	bool "loopw"
	help
	  Infinite write loop on address range

config CMD_MEMTEST
	bool "memtest"
	help
	  Simple RAM read/write test.

config CMD_MX_CYCLIC
	bool "mdc, mwc"
	help
	  mdc - memory display cyclic
	  mwc - memory write cyclic

config CMD_MEMINFO
	bool "meminfo"
	help
	  Display memory information.

endmenu

menu "Device access commands"

config CMD_DM
	bool "dm - Access to driver model information"
	depends on DM
	default y
	help
	  Provides access to driver model data structures and information,
	  such as a list of devices, list of uclasses and the state of each
	  device (e.g. activated). This is not required for operation, but
	  can be useful to see the state of driver model for debugging or
	  interest.

config CMD_DEMO
	bool "demo - Demonstration commands for driver model"
	depends on DM
	help
	  Provides a 'demo' command which can be used to play around with
	  driver model. To use this properly you will need to enable one or
	  both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
	  Otherwise you will always get an empty list of devices. The demo
	  devices are defined in the sandbox device tree, so the easiest
	  option is to use sandbox and pass the -d point to sandbox's
	  u-boot.dtb file.

config CMD_LOADB
	bool "loadb"
	help
	  Load a binary file over serial line.

config CMD_LOADS
	bool "loads"
	help
	  Load an S-Record file over serial line

config CMD_FLASH
	bool "flinfo, erase, protect"
	help
	  NOR flash support.
	    flinfo - print FLASH memory information
	    erase - FLASH memory
	    protect - enable or disable FLASH write protection

config CMD_ARMFLASH
	depends on FLASH_CFI_DRIVER
	bool "armflash"
	help
	  ARM Ltd reference designs flash partition access

config CMD_NAND
	bool "nand"
	help
	  NAND support.

config CMD_SPI
	bool "sspi"
	help
	  SPI utility command.

config CMD_I2C
	bool "i2c"
	help
	  I2C support.

config CMD_USB
	bool "usb"
	help
	  USB support.

config CMD_FPGA
	bool "fpga"
	help
	  FPGA support.

endmenu


menu "Shell scripting commands"

config CMD_ECHO
	bool "echo"
	help
	  Echo args to console

config CMD_ITEST
	bool "itest"
	help
	  Return true/false on integer compare.

config CMD_SOURCE
	bool "source"
	help
	  Run script from memory

endmenu

menu "Network commands"

config CMD_NET
	bool "bootp, tftpboot"
	help
	  Network commands.
	  bootp - boot image via network using BOOTP/TFTP protocol
	  tftpboot - boot image via network using TFTP protocol

config CMD_TFTPPUT
	bool "tftp put"
	help
	  TFTP put command, for uploading files to a server

config CMD_TFTPSRV
	bool "tftpsrv"
	help
	  Act as a TFTP server and boot the first received file

config CMD_RARP
	bool "rarpboot"
	help
	  Boot image via network using RARP/TFTP protocol

config CMD_DHCP
	bool "dhcp"
	help
	  Boot image via network using DHCP/TFTP protocol

config CMD_NFS
	bool "nfs"
	help
	  Boot image via network using NFS protocol.

config CMD_PING
	bool "ping"
	help
	  Send ICMP ECHO_REQUEST to network host

config CMD_CDP
	bool "cdp"
	help
	  Perform CDP network configuration

config CMD_SNTP
	bool "sntp"
	help
	  Synchronize RTC via network

config CMD_DNS
	bool "dns"
	help
	  Lookup the IP of a hostname

config CMD_LINK_LOCAL
	bool "linklocal"
	help
	  Acquire a network IP address using the link-local protocol

endmenu

menu "Misc commands"

config CMD_TIME
	bool "time"
	help
	  Run commands and summarize execution time.

# TODO: rename to CMD_SLEEP
config CMD_MISC
	bool "sleep"
	help
	  Delay execution for some time

config CMD_TIMER
	bool "timer"
	help
	  Access the system timer.

config CMD_SETGETDCR
	bool "getdcr, setdcr, getidcr, setidcr"
	depends on 4xx
	help
	  getdcr - Get an AMCC PPC 4xx DCR's value
	  setdcr - Set an AMCC PPC 4xx DCR's value
	  getidcr - Get a register value via indirect DCR addressing
	  setidcr - Set a register value via indirect DCR addressing

config CMD_SOUND
	bool "sound"
	depends on SOUND
	help
	  This provides basic access to the U-Boot's sound support. The main
	  feature is to play a beep.

	     sound init   - set up sound system
	     sound play   - play a sound

endmenu

menu "Boot timing"

config BOOTSTAGE
	bool "Boot timing and reporting"
	help
	  Enable recording of boot time while booting. To use it, insert
	  calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
	  bootstage.h. Only a single entry is recorded for each ID. You can
	  give the entry a name with bootstage_mark_name(). You can also
	  record elapsed time in a particular stage using bootstage_start()
	  before starting and bootstage_accum() when finished. Bootstage will
	  add up all the accumated time and report it.

	  Normally, IDs are defined in bootstage.h but a small number of
	  additional 'user' IDs can be used but passing BOOTSTAGE_ID_ALLOC
	  as the ID.

	  Calls to show_boot_progress() wil also result in log entries but
	  these will not have names.

config BOOTSTAGE_REPORT
	bool "Display a detailed boot timing report before booting the OS"
	depends on BOOTSTAGE
	help
	  Enable output of a boot time report just before the OS is booted.
	  This shows how long it took U-Boot to go through each stage of the
	  boot process. The report looks something like this:

		Timer summary in microseconds:
		       Mark    Elapsed  Stage
			  0          0  reset
		  3,575,678  3,575,678  board_init_f start
		  3,575,695         17  arch_cpu_init A9
		  3,575,777         82  arch_cpu_init done
		  3,659,598     83,821  board_init_r start
		  3,910,375    250,777  main_loop
		 29,916,167 26,005,792  bootm_start
		 30,361,327    445,160  start_kernel

config BOOTSTAGE_USER_COUNT
	hex "Number of boot ID numbers available for user use"
	default 20
	help
	  This is the number of available user bootstage records.
	  Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
	  a new ID will be allocated from this stash. If you exceed
	  the limit, recording will stop.

config CMD_BOOTSTAGE
	bool "Enable the 'bootstage' command"
	depends on BOOTSTAGE
	help
	  Add a 'bootstage' command which supports printing a report
	  and un/stashing of bootstage data.

config BOOTSTAGE_FDT
	bool "Store boot timing information in the OS device tree"
	depends on BOOTSTAGE
	help
	  Stash the bootstage information in the FDT. A root 'bootstage'
	  node is created with each bootstage id as a child. Each child
	  has a 'name' property and either 'mark' containing the
	  mark time in microsecond, or 'accum' containing the
	  accumulated time for that bootstage id in microseconds.
	  For example:

		bootstage {
			154 {
				name = "board_init_f";
				mark = <3575678>;
			};
			170 {
				name = "lcd";
				accum = <33482>;
			};
		};

	  Code in the Linux kernel can find this in /proc/devicetree.

config BOOTSTAGE_STASH
	bool "Stash the boot timing information in memory before booting OS"
	depends on BOOTSTAGE
	help
	  Some OSes do not support device tree. Bootstage can instead write
	  the boot timing information in a binary format at a given address.
	  This happens through a call to bootstage_stash(), typically in
	  the CPU's cleanup_before_linux() function. You can use the
	  'bootstage stash' and 'bootstage unstash' commands to do this on
	  the command line.

config BOOTSTAGE_STASH_ADDR
	hex "Address to stash boot timing information"
	default 0
	help
	  Provide an address which will not be overwritten by the OS when it
	  starts, so that it can read this information when ready.

config BOOTSTAGE_STASH_SIZE
	hex "Size of boot timing stash region"
	default 4096
	help
	  This should be large enough to hold the bootstage stash. A value of
	  4096 (4KiB) is normally plenty.

endmenu

endmenu