blob: b2ba492abd3b075543e4bf4758b1987afc60faf6 [file] [log] [blame]
Simon Glass11bde1c2016-09-13 07:05:23 -06001menu "SPL / TPL"
2
Simon Glassc2ae7d82016-09-12 23:18:22 -06003config SUPPORT_SPL
4 bool
5
6config SUPPORT_TPL
7 bool
8
9config SPL
10 bool
11 depends on SUPPORT_SPL
12 prompt "Enable SPL"
13 help
14 If you want to build SPL as well as the normal image, say Y.
15
16config SPL_SYS_MALLOC_SIMPLE
17 bool
18 depends on SPL
19 prompt "Only use malloc_simple functions in the SPL"
20 help
21 Say Y here to only use the *_simple malloc functions from
22 malloc_simple.c, rather then using the versions from dlmalloc.c;
23 this will make the SPL binary smaller at the cost of more heap
24 usage as the *_simple malloc functions do not re-use free-ed mem.
25
26config SPL_STACK_R
27 depends on SPL
28 bool "Enable SDRAM location for SPL stack"
29 help
30 SPL starts off execution in SRAM and thus typically has only a small
31 stack available. Since SPL sets up DRAM while in its board_init_f()
32 function, it is possible for the stack to move there before
33 board_init_r() is reached. This option enables a special SDRAM
34 location for the SPL stack. U-Boot SPL switches to this after
35 board_init_f() completes, and before board_init_r() starts.
36
37config SPL_STACK_R_ADDR
38 depends on SPL_STACK_R
39 hex "SDRAM location for SPL stack"
40 help
41 Specify the address in SDRAM for the SPL stack. This will be set up
42 before board_init_r() is called.
43
44config SPL_STACK_R_MALLOC_SIMPLE_LEN
45 depends on SPL_STACK_R && SPL_SYS_MALLOC_SIMPLE
46 hex "Size of malloc_simple heap after switching to DRAM SPL stack"
47 default 0x100000
48 help
49 Specify the amount of the stack to use as memory pool for
50 malloc_simple after switching the stack to DRAM. This may be set
51 to give board_init_r() a larger heap then the initial heap in
52 SRAM which is limited to SYS_MALLOC_F_LEN bytes.
53
54config SPL_SEPARATE_BSS
55 depends on SPL
56 bool "BSS section is in a different memory region from text"
57 help
58 Some platforms need a large BSS region in SPL and can provide this
59 because RAM is already set up. In this case BSS can be moved to RAM.
60 This option should then be enabled so that the correct device tree
61 location is used. Normally we put the device tree at the end of BSS
62 but with this option enabled, it goes at _image_binary_end.
63
Simon Glassa807ab32016-09-24 18:19:56 -060064config SPL_DISPLAY_PRINT
65 depends on SPL
66 bool "Display a board-specific message in SPL"
67 help
68 If this option is enabled, U-Boot will call the function
69 spl_display_print() immediately after displaying the SPL console
70 banner ("U-Boot SPL ..."). This function should be provided by
71 the board.
72
Semen Protsenko38fed8a2016-11-16 19:19:05 +020073config SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
74 bool "MMC raw mode: by sector"
75 depends on SPL
76 default y if ARCH_SUNXI || ARCH_DAVINCI || ARCH_UNIPHIER ||ARCH_MX6 || \
77 ARCH_ROCKCHIP || ARCH_MVEBU || ARCH_SOCFPGA || \
78 ARCH_AT91 || ARCH_ZYNQ || ARCH_KEYSTONE || OMAP34XX || \
79 OMAP44XX || OMAP54XX || AM33XX || AM43XX
80 help
81 Use sector number for specifying U-Boot location on MMC/SD in
82 raw mode.
83
84config SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
85 hex "Address on the MMC to load U-Boot from"
86 depends on SPL && SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
87 default 0x50 if ARCH_SUNXI
88 default 0x75 if ARCH_DAVINCI
Semen Protsenko38fed8a2016-11-16 19:19:05 +020089 default 0x8a if ARCH_MX6
Masahiro Yamadac0efc312017-01-28 06:53:53 +090090 default 0x100 if ARCH_ROCKCHIP || ARCH_UNIPHIER
Semen Protsenko38fed8a2016-11-16 19:19:05 +020091 default 0x140 if ARCH_MVEBU
92 default 0x200 if ARCH_SOCFPGA || ARCH_AT91
93 default 0x300 if ARCH_ZYNQ || ARCH_KEYSTONE || OMAP34XX || OMAP44XX || \
94 OMAP54XX || AM33XX || AM43XX
95 help
96 Address on the MMC to load U-Boot from, when the MMC is being used
97 in raw mode. Units: MMC sectors (1 sector = 512 bytes).
98
Simon Glassc2ae7d82016-09-12 23:18:22 -060099config TPL
100 bool
101 depends on SPL && SUPPORT_TPL
102 prompt "Enable TPL"
103 help
104 If you want to build TPL as well as the normal image and SPL, say Y.
Simon Glass11bde1c2016-09-13 07:05:23 -0600105
106config SPL_CRC32_SUPPORT
107 bool "Support CRC32"
108 depends on SPL_FIT
109 help
110 Enable this to support CRC32 in FIT images within SPL. This is a
111 32-bit checksum value that can be used to verify images. This is
112 the least secure type of checksum, suitable for detected
113 accidental image corruption. For secure applications you should
114 consider SHA1 or SHA256.
115
116config SPL_MD5_SUPPORT
117 bool "Support MD5"
118 depends on SPL_FIT
119 help
120 Enable this to support MD5 in FIT images within SPL. An MD5
121 checksum is a 128-bit hash value used to check that the image
122 contents have not been corrupted. Note that MD5 is not considered
123 secure as it is possible (with a brute-force attack) to adjust the
124 image while still retaining the same MD5 hash value. For secure
125 applications where images may be changed maliciously, you should
126 consider SHA1 or SHA256.
127
128config SPL_SHA1_SUPPORT
129 bool "Support SHA1"
130 depends on SPL_FIT
131 help
132 Enable this to support SHA1 in FIT images within SPL. A SHA1
133 checksum is a 160-bit (20-byte) hash value used to check that the
134 image contents have not been corrupted or maliciously altered.
135 While SHA1 is fairly secure it is coming to the end of its life
136 due to the expanding computing power avaiable to brute-force
137 attacks. For more security, consider SHA256.
138
139config SPL_SHA256_SUPPORT
140 bool "Support SHA256"
141 depends on SPL_FIT
142 help
143 Enable this to support SHA256 in FIT images within SPL. A SHA256
144 checksum is a 256-bit (32-byte) hash value used to check that the
145 image contents have not been corrupted. SHA256 is recommended for
146 use in secure applications since (as at 2016) there is no known
147 feasible attack that could produce a 'collision' with differing
148 input data. Use this for the highest security. Note that only the
149 SHA256 variant is supported: SHA512 and others are not currently
150 supported in U-Boot.
151
152config SPL_CRYPTO_SUPPORT
153 bool "Support crypto drivers"
154 depends on SPL
155 help
156 Enable crypto drivers in SPL. These drivers can be used to
157 accelerate secure boot processing in secure applications. Enable
158 this option to build the drivers in drivers/crypto as part of an
159 SPL build.
160
161config SPL_HASH_SUPPORT
162 bool "Support hashing drivers"
163 depends on SPL
164 help
165 Enable hashing drivers in SPL. These drivers can be used to
166 accelerate secure boot processing in secure applications. Enable
167 this option to build system-specific drivers for hash acceleration
168 as part of an SPL build.
169
170config SPL_DMA_SUPPORT
171 bool "Support DMA drivers"
172 depends on SPL
173 help
174 Enable DMA (direct-memory-access) drivers in SPL. These drivers
175 can be used to handle memory-to-peripheral data transfer without
176 the CPU moving the data. Enable this option to build the drivers
177 in drivers/dma as part of an SPL build.
178
179config SPL_DRIVERS_MISC_SUPPORT
180 bool "Support misc drivers"
181 depends on SPL
182 help
183 Enable miscellaneous drivers in SPL. These drivers perform various
184 tasks that don't fall nicely into other categories, Enable this
185 option to build the drivers in drivers/misc as part of an SPL
186 build, for those that support building in SPL (not all drivers do).
187
188config SPL_ENV_SUPPORT
189 bool "Support an environment"
190 depends on SPL
191 help
192 Enable environment support in SPL. The U-Boot environment provides
193 a number of settings (essentially name/value pairs) which can
194 control many aspects of U-Boot's operation. Normally this is not
195 needed in SPL as it has a much simpler task with less
196 configuration. But some boards use this to support 'Falcon' boot
197 on EXT2 and FAT, where SPL boots directly into Linux without
198 starting U-Boot first. Enabling this option will make getenv()
199 and setenv() available in SPL.
200
B, Ravid2d9bdf2016-09-28 14:46:18 +0530201config SPL_SAVEENV
202 bool "Support save environment"
203 depends on SPL && SPL_ENV_SUPPORT
204 help
205 Enable save environment support in SPL after setenv. By default
206 the saveenv option is not provided in SPL, but some boards need
207 this support in 'Falcon' boot, where SPL need to boot from
208 different images based on environment variable set by OS. For
209 example OS may set "reboot_image" environment variable to
210 "recovery" inorder to boot recovery image by SPL. The SPL read
211 "reboot_image" and act accordingly and change the reboot_image
212 to default mode using setenv and save the environemnt.
213
Simon Glass11bde1c2016-09-13 07:05:23 -0600214config SPL_ETH_SUPPORT
215 bool "Support Ethernet"
216 depends on SPL_ENV_SUPPORT
217 help
218 Enable access to the network subsystem and associated Ethernet
219 drivers in SPL. This permits SPL to load U-Boot over an Ethernet
220 link rather than from an on-board peripheral. Environment support
221 is required since the network stack uses a number of environment
222 variables. See also SPL_NET_SUPPORT.
223
224config SPL_EXT_SUPPORT
225 bool "Support EXT filesystems"
226 depends on SPL
227 help
228 Enable support for EXT2/3/4 filesystems with SPL. This permits
229 U-Boot (or Linux in Falcon mode) to be loaded from an EXT
230 filesystem from within SPL. Support for the underlying block
231 device (e.g. MMC or USB) must be enabled separately.
232
233config SPL_FAT_SUPPORT
234 bool "Support FAT filesystems"
235 depends on SPL
236 help
237 Enable support for FAT and VFAT filesystems with SPL. This
238 permits U-Boot (or Linux in Falcon mode) to be loaded from a FAT
239 filesystem from within SPL. Support for the underlying block
240 device (e.g. MMC or USB) must be enabled separately.
241
242config SPL_FPGA_SUPPORT
243 bool "Support FPGAs"
244 depends on SPL
245 help
246 Enable support for FPGAs in SPL. Field-programmable Gate Arrays
247 provide software-configurable hardware which is typically used to
248 implement peripherals (such as UARTs, LCD displays, MMC) or
249 accelerate custom processing functions, such as image processing
250 or machine learning. Sometimes it is useful to program the FPGA
251 as early as possible during boot, and this option can enable that
252 within SPL.
253
254config SPL_GPIO_SUPPORT
255 bool "Support GPIO"
256 depends on SPL
257 help
258 Enable support for GPIOs (General-purpose Input/Output) in SPL.
259 GPIOs allow U-Boot to read the state of an input line (high or
260 low) and set the state of an output line. This can be used to
261 drive LEDs, control power to various system parts and read user
262 input. GPIOs can be useful in SPL to enable a 'sign-of-life' LED,
263 for example. Enable this option to build the drivers in
264 drivers/gpio as part of an SPL build.
265
266config SPL_I2C_SUPPORT
267 bool "Support I2C"
268 depends on SPL
269 help
270 Enable support for the I2C (Inter-Integrated Circuit) bus in SPL.
271 I2C works with a clock and data line which can be driven by a
272 one or more masters or slaves. It is a fairly complex bus but is
273 widely used as it only needs two lines for communication. Speeds of
274 400kbps are typical but up to 3.4Mbps is supported by some
275 hardware. I2C can be useful in SPL to configure power management
276 ICs (PMICs) before raising the CPU clock speed, for example.
277 Enable this option to build the drivers in drivers/i2c as part of
278 an SPL build.
279
280config SPL_LIBCOMMON_SUPPORT
281 bool "Support common libraries"
282 depends on SPL
283 help
284 Enable support for common U-Boot libraries within SPL. These
285 libraries include common code to deal with U-Boot images,
286 environment and USB, for example. This option is enabled on many
287 boards. Enable this option to build the code in common/ as part of
288 an SPL build.
289
290config SPL_LIBDISK_SUPPORT
291 bool "Support disk paritions"
292 depends on SPL
293 help
294 Enable support for disk partitions within SPL. 'Disk' is something
295 of a misnomer as it includes non-spinning media such as flash (as
296 used in MMC and USB sticks). Partitions provide a way for a disk
297 to be split up into separate regions, with a partition table placed
298 at the start or end which describes the location and size of each
299 'partition'. These partitions are typically uses as individual block
300 devices, typically with an EXT2 or FAT filesystem in each. This
301 option enables whatever partition support has been enabled in
302 U-Boot to also be used in SPL. It brings in the code in disk/.
303
304config SPL_LIBGENERIC_SUPPORT
305 bool "Support generic libraries"
306 depends on SPL
307 help
308 Enable support for generic U-Boot libraries within SPL. These
309 libraries include generic code to deal with device tree, hashing,
310 printf(), compression and the like. This option is enabled on many
311 boards. Enable this option to build the code in lib/ as part of an
312 SPL build.
313
314config SPL_MMC_SUPPORT
315 bool "Support MMC"
316 depends on SPL
317 help
318 Enable support for MMC (Multimedia Card) within SPL. This enables
319 the MMC protocol implementation and allows any enabled drivers to
320 be used within SPL. MMC can be used with or without disk partition
321 support depending on the application (SPL_LIBDISK_SUPPORT). Enable
322 this option to build the drivers in drivers/mmc as part of an SPL
323 build.
324
325config SPL_MPC8XXX_INIT_DDR_SUPPORT
326 bool "Support MPC8XXX DDR init"
327 depends on SPL
328 help
329 Enable support for DDR-SDRAM (double-data-rate synchronous dynamic
330 random-access memory) on the MPC8XXX family within SPL. This
331 allows DRAM to be set up before loading U-Boot into that DRAM,
332 where it can run.
333
334config SPL_MTD_SUPPORT
335 bool "Support MTD drivers"
336 depends on SPL
337 help
338 Enable support for MTD (Memory Technology Device) within SPL. MTD
339 provides a block interface over raw NAND and can also be used with
340 SPI flash. This allows SPL to load U-Boot from supported MTD
341 devices. See SPL_NAND_SUPPORT and SPL_ONENAND_SUPPORT for how
342 to enable specific MTD drivers.
343
344config SPL_MUSB_NEW_SUPPORT
345 bool "Support new Mentor Graphics USB"
346 depends on SPL
347 help
348 Enable support for Mentor Graphics USB in SPL. This is a new
349 driver used by some boards. Enable this option to build
350 the drivers in drivers/usb/musb-new as part of an SPL build. The
351 old drivers are in drivers/usb/musb.
352
353config SPL_NAND_SUPPORT
354 bool "Support NAND flash"
355 depends on SPL
356 help
357 Enable support for NAND (Negative AND) flash in SPL. NAND flash
358 can be used to allow SPL to load U-Boot from supported devices.
359 This enables the drivers in drivers/mtd/nand as part of an SPL
360 build.
361
362config SPL_NET_SUPPORT
363 bool "Support networking"
364 depends on SPL
365 help
366 Enable support for network devices (such as Ethernet) in SPL.
367 This permits SPL to load U-Boot over a network link rather than
368 from an on-board peripheral. Environment support is required since
369 the network stack uses a number of environment variables. See also
370 SPL_ETH_SUPPORT.
371
372if SPL_NET_SUPPORT
373config SPL_NET_VCI_STRING
374 string "BOOTP Vendor Class Identifier string sent by SPL"
375 help
376 As defined by RFC 2132 the vendor class identifier field can be
377 sent by the client to identify the vendor type and configuration
378 of a client. This is often used in practice to allow for the DHCP
379 server to specify different files to load depending on if the ROM,
380 SPL or U-Boot itself makes the request
381endif # if SPL_NET_SUPPORT
382
383config SPL_NO_CPU_SUPPORT
384 bool "Drop CPU code in SPL"
385 depends on SPL
386 help
387 This is specific to the ARM926EJ-S CPU. It disables the standard
388 start.S start-up code, presumably so that a replacement can be
389 used on that CPU. You should not enable it unless you know what
390 you are doing.
391
392config SPL_NOR_SUPPORT
393 bool "Support NOR flash"
394 depends on SPL
395 help
396 Enable support for loading U-Boot from memory-mapped NOR (Negative
397 OR) flash in SPL. NOR flash is slow to write but fast to read, and
398 a memory-mapped device makes it very easy to access. Loading from
399 NOR is typically achieved with just a memcpy().
400
401config SPL_ONENAND_SUPPORT
402 bool "Support OneNAND flash"
403 depends on SPL
404 help
405 Enable support for OneNAND (Negative AND) flash in SPL. OneNAND is
406 a type of NAND flash and therefore can be used to allow SPL to
407 load U-Boot from supported devices. This enables the drivers in
408 drivers/mtd/onenand as part of an SPL build.
409
Heiko Schocherc20ae2f2016-10-06 07:55:15 +0200410config SPL_OS_BOOT
411 bool "Activate Falcon Mode"
412 depends on SPL && !TI_SECURE_DEVICE
413 default n
414 help
415 Enable booting directly to an OS from SPL.
416 for more info read doc/README.falcon
417
Heiko Schocher29d3bc72016-10-06 07:55:16 +0200418if SPL_OS_BOOT
419config SYS_OS_BASE
420 hex "addr, where OS is found"
421 depends on SPL && SPL_NOR_SUPPORT
422 help
423 Specify the address, where the OS image is found, which
424 gets booted.
425
426endif # SPL_OS_BOOT
427
Simon Glass11bde1c2016-09-13 07:05:23 -0600428config SPL_POST_MEM_SUPPORT
429 bool "Support POST drivers"
430 depends on SPL
431 help
432 Enable support for POST (Power-on Self Test) in SPL. POST is a
433 procedure that checks that the hardware (CPU or board) appears to
434 be functionally correctly. It is a sanity check that can be
435 performed before booting. This enables the drivers in post/drivers
436 as part of an SPL build.
437
438config SPL_POWER_SUPPORT
439 bool "Support power drivers"
440 depends on SPL
441 help
442 Enable support for power control in SPL. This includes support
443 for PMICs (Power-management Integrated Circuits) and some of the
444 features provided by PMICs. In particular, voltage regulators can
445 be used to enable/disable power and vary its voltage. That can be
446 useful in SPL to turn on boot peripherals and adjust CPU voltage
447 so that the clock speed can be increased. This enables the drivers
448 in drivers/power, drivers/power/pmic and drivers/power/regulator
449 as part of an SPL build.
450
Stefan Agner22802f42016-12-23 07:51:53 +0100451config SPL_RAM_SUPPORT
452 bool "Support booting from RAM"
453 depends on SPL
454 default y if MICROBLAZE || ARCH_SOCFPGA || TEGRA || ARCH_ZYNQ
455 help
456 Enable booting of an image in RAM. The image can be preloaded or
457 it can be loaded by SPL directly into RAM (e.g. using USB).
458
Stefan Agnerf417d402016-12-23 07:51:52 +0100459config SPL_RAM_DEVICE
460 bool "Support booting from preloaded image in RAM"
Stefan Agner22802f42016-12-23 07:51:53 +0100461 depends on SPL_RAM_SUPPORT
Stefan Agnerf417d402016-12-23 07:51:52 +0100462 default y if MICROBLAZE || ARCH_SOCFPGA || TEGRA || ARCH_ZYNQ
463 help
464 Enable booting of an image already loaded in RAM. The image has to
465 be already in memory when SPL takes over, e.g. loaded by the boot
466 ROM.
467
Simon Glass11bde1c2016-09-13 07:05:23 -0600468config SPL_SATA_SUPPORT
469 bool "Support loading from SATA"
470 depends on SPL
471 help
472 Enable support for SATA (Serial AT attachment) in SPL. This allows
473 use of SATA devices such as hard drives and flash drivers for
474 loading U-Boot. SATA is used in higher-end embedded systems and
475 can provide higher performance than MMC , at somewhat higher
476 expense and power consumption. This enables loading from SATA
477 using a configured device.
478
479config SPL_SERIAL_SUPPORT
480 bool "Support serial"
481 depends on SPL
482 help
483 Enable support for serial in SPL. This allows use of a serial UART
484 for displaying messages while SPL is running. It also brings in
485 printf() and panic() functions. This should normally be enabled
486 unless there are space reasons not to. Even then, consider
487 enabling USE_TINY_PRINTF which is a small printf() version.
488
489config SPL_SPI_FLASH_SUPPORT
490 bool "Support SPI flash drivers"
491 depends on SPL
492 help
493 Enable support for using SPI flash in SPL, and loading U-Boot from
494 SPI flash. SPI flash (Serial Peripheral Bus flash) is named after
495 the SPI bus that is used to connect it to a system. It is a simple
496 but fast bidirectional 4-wire bus (clock, chip select and two data
497 lines). This enables the drivers in drivers/mtd/spi as part of an
498 SPL build. This normally requires SPL_SPI_SUPPORT.
499
500config SPL_SPI_SUPPORT
501 bool "Support SPI drivers"
502 depends on SPL
503 help
504 Enable support for using SPI in SPL. This is used for connecting
505 to SPI flash for loading U-Boot. See SPL_SPI_FLASH_SUPPORT for
506 more details on that. The SPI driver provides the transport for
507 data between the SPI flash and the CPU. This option can be used to
508 enable SPI drivers that are needed for other purposes also, such
509 as a SPI PMIC.
510
Simon Glass11bde1c2016-09-13 07:05:23 -0600511config SPL_USB_HOST_SUPPORT
512 bool "Support USB host drivers"
513 depends on SPL
514 help
515 Enable access to USB (Universal Serial Bus) host devices so that
516 SPL can load U-Boot from a connected USB peripheral, such as a USB
517 flash stick. While USB takes a little longer to start up than most
518 buses, it is very flexible since many different types of storage
519 device can be attached. This option enables the drivers in
520 drivers/usb/host as part of an SPL build.
521
522config SPL_USB_SUPPORT
523 bool "Support loading from USB"
524 depends on SPL_USB_HOST_SUPPORT
525 help
526 Enable support for USB devices in SPL. This allows use of USB
527 devices such as hard drives and flash drivers for loading U-Boot.
528 The actual drivers are enabled separately using the normal U-Boot
529 config options. This enables loading from USB using a configured
530 device.
531
Stefan Agnere94793c2016-11-21 10:58:53 -0800532config SPL_USB_GADGET_SUPPORT
533 bool "Suppport USB Gadget drivers"
534 depends on SPL
535 help
536 Enable USB Gadget API which allows to enable USB device functions
537 in SPL.
538
539if SPL_USB_GADGET_SUPPORT
540
541config SPL_USBETH_SUPPORT
542 bool "Support USB Ethernet drivers"
543 help
544 Enable access to the USB network subsystem and associated
545 drivers in SPL. This permits SPL to load U-Boot over a
546 USB-connected Ethernet link (such as a USB Ethernet dongle) rather
547 than from an onboard peripheral. Environment support is required
548 since the network stack uses a number of environment variables.
549 See also SPL_NET_SUPPORT and SPL_ETH_SUPPORT.
550
Stefan Agner59917032016-11-21 10:58:52 -0800551config SPL_DFU_SUPPORT
552 bool "Support DFU (Device Firmware Upgarde)"
Stefan Agner59917032016-11-21 10:58:52 -0800553 select SPL_HASH_SUPPORT
554 help
555 This feature enables the DFU (Device Firmware Upgarde) in SPL with
556 RAM memory device support. The ROM code will load and execute
557 the SPL built with dfu. The user can load binaries (u-boot/kernel) to
558 selected device partition from host-pc using dfu-utils.
559 This feature is useful to flash the binaries to factory or bare-metal
560 boards using USB interface.
561
562choice
563 bool "DFU device selection"
564 depends on SPL_DFU_SUPPORT
565
566config SPL_DFU_RAM
567 bool "RAM device"
Stefan Agner22802f42016-12-23 07:51:53 +0100568 depends on SPL_DFU_SUPPORT && SPL_RAM_SUPPORT
Stefan Agner59917032016-11-21 10:58:52 -0800569 help
570 select RAM/DDR memory device for loading binary images
571 (u-boot/kernel) to the selected device partition using
572 DFU and execute the u-boot/kernel from RAM.
573
574endchoice
575
Stefan Agnere94793c2016-11-21 10:58:53 -0800576endif
577
Simon Glass11bde1c2016-09-13 07:05:23 -0600578config SPL_WATCHDOG_SUPPORT
579 bool "Support watchdog drivers"
580 depends on SPL
581 help
582 Enable support for watchdog drivers in SPL. A watchdog is
583 typically a hardware peripheral which can reset the system when it
584 detects no activity for a while (such as a software crash). This
585 enables the drivers in drivers/watchdog as part of an SPL build.
586
587config SPL_YMODEM_SUPPORT
588 bool "Support loading using Ymodem"
589 depends on SPL
590 help
591 While loading from serial is slow it can be a useful backup when
592 there is no other option. The Ymodem protocol provides a reliable
593 means of transmitting U-Boot over a serial line for using in SPL,
594 with a checksum to ensure correctness.
595
Simon Glassf73329e2016-09-12 23:18:27 -0600596config TPL_ENV_SUPPORT
597 bool "Support an environment"
598 depends on TPL
599 help
600 Enable environment support in TPL. See SPL_ENV_SUPPORT for details.
601
602config TPL_I2C_SUPPORT
603 bool "Support I2C"
604 depends on TPL
605 help
606 Enable support for the I2C bus in SPL. See SPL_I2C_SUPPORT for
607 details.
608
609config TPL_LIBCOMMON_SUPPORT
610 bool "Support common libraries"
611 depends on TPL
612 help
613 Enable support for common U-Boot libraries within TPL. See
614 SPL_LIBCOMMON_SUPPORT for details.
615
616config TPL_LIBGENERIC_SUPPORT
617 bool "Support generic libraries"
618 depends on TPL
619 help
620 Enable support for generic U-Boot libraries within TPL. See
621 SPL_LIBGENERIC_SUPPORT for details.
622
623config TPL_MPC8XXX_INIT_DDR_SUPPORT
624 bool "Support MPC8XXX DDR init"
625 depends on TPL
626 help
627 Enable support for DDR-SDRAM on the MPC8XXX family within TPL. See
628 SPL_MPC8XXX_INIT_DDR_SUPPORT for details.
629
630config TPL_MMC_SUPPORT
631 bool "Support MMC"
632 depends on TPL
633 help
634 Enable support for MMC within TPL. See SPL_MMC_SUPPORT for details.
635
636config TPL_NAND_SUPPORT
637 bool "Support NAND flash"
638 depends on TPL
639 help
640 Enable support for NAND in SPL. See SPL_NAND_SUPPORT for details.
641
642config TPL_SERIAL_SUPPORT
643 bool "Support serial"
644 depends on TPL
645 help
646 Enable support for serial in SPL. See SPL_SERIAL_SUPPORT for
647 details.
648
649config TPL_SPI_FLASH_SUPPORT
650 bool "Support SPI flash drivers"
651 depends on TPL
652 help
653 Enable support for using SPI flash in SPL. See SPL_SPI_FLASH_SUPPORT
654 for details.
655
656config TPL_SPI_SUPPORT
657 bool "Support SPI drivers"
658 depends on TPL
659 help
660 Enable support for using SPI in SPL. See SPL_SPI_SUPPORT for
661 details.
662
Simon Glass11bde1c2016-09-13 07:05:23 -0600663endmenu