]> git.sur5r.net Git - u-boot/blob - lib/Kconfig
spl: fit: move fdt_record_loadable out of ARCH_FIXUP_FDT_MEMORY guard
[u-boot] / lib / Kconfig
1 menu "Library routines"
2
3 config BCH
4         bool "Enable Software based BCH ECC"
5         help
6           Enables software based BCH ECC algorithm present in lib/bch.c
7           This is used by SoC platforms which do not have built-in ELM
8           hardware engine required for BCH ECC correction.
9
10 config CC_OPTIMIZE_LIBS_FOR_SPEED
11         bool "Optimize libraries for speed"
12         help
13           Enabling this option will pass "-O2" to gcc when compiling
14           under "lib" directory.
15
16           If unsure, say N.
17
18 config HAVE_PRIVATE_LIBGCC
19         bool
20
21 config LIB_UUID
22         bool
23
24 config USE_PRIVATE_LIBGCC
25         bool "Use private libgcc"
26         depends on HAVE_PRIVATE_LIBGCC
27         default y if HAVE_PRIVATE_LIBGCC && ((ARM && !ARM64) || MIPS)
28         help
29           This option allows you to use the built-in libgcc implementation
30           of U-Boot instead of the one provided by the compiler.
31           If unsure, say N.
32
33 config SYS_HZ
34         int
35         default 1000
36         help
37           The frequency of the timer returned by get_timer().
38           get_timer() must operate in milliseconds and this option must be
39           set to 1000.
40
41 config USE_TINY_PRINTF
42         bool "Enable tiny printf() version"
43         help
44           This option enables a tiny, stripped down printf version.
45           This should only be used in space limited environments,
46           like SPL versions with hard memory limits. This version
47           reduces the code size by about 2.5KiB on armv7.
48
49           The supported format specifiers are %c, %s, %u/%d and %x.
50
51 config PANIC_HANG
52         bool "Do not reset the system on fatal error"
53         help
54           Define this option to stop the system in case of a fatal error,
55           so that you have to reset it manually. This is probably NOT a good
56           idea for an embedded system where you want the system to reboot
57           automatically as fast as possible, but it may be useful during
58           development since you can try to debug the conditions that lead to
59           the situation.
60
61 config REGEX
62         bool "Enable regular expression support"
63         default n if ARCH_SUNXI
64         default y if NET
65         help
66           If this variable is defined, U-Boot is linked against the
67           SLRE (Super Light Regular Expression) library, which adds
68           regex support to some commands, for example "env grep" and
69           "setexpr".
70
71 choice
72         prompt "Pseudo-random library support type"
73         depends on NET_RANDOM_ETHADDR || RANDOM_UUID || CMD_UUID
74         default LIB_RAND
75         help
76           Select the library to provide pseudo-random number generator
77           functions.  LIB_HW_RAND supports certain hardware engines that
78           provide this functionality.  If in doubt, select LIB_RAND.
79
80 config LIB_RAND
81         bool "Pseudo-random library support"
82
83 config LIB_HW_RAND
84         bool "HW Engine for random libray support"
85
86 endchoice
87
88 config SPL_TINY_MEMSET
89         bool "Use a very small memset() in SPL"
90         help
91           The faster memset() is the arch-specific one (if available) enabled
92           by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get
93           better performance by writing a word at a time. But in very
94           size-constrained envrionments even this may be too big. Enable this
95           option to reduce code size slightly at the cost of some speed.
96
97 config TPL_TINY_MEMSET
98         bool "Use a very small memset() in TPL"
99         help
100           The faster memset() is the arch-specific one (if available) enabled
101           by CONFIG_USE_ARCH_MEMSET. If that is not enabled, we can still get
102           better performance by writing a word at a time. But in very
103           size-constrained envrionments even this may be too big. Enable this
104           option to reduce code size slightly at the cost of some speed.
105
106 config RBTREE
107         bool
108
109 config BITREVERSE
110         bool "Bit reverse library from Linux"
111
112 source lib/dhry/Kconfig
113
114 menu "Security support"
115
116 config AES
117         bool "Support the AES algorithm"
118         help
119           This provides a means to encrypt and decrypt data using the AES
120           (Advanced Encryption Standard). This algorithm uses a symetric key
121           and is widely used as a streaming cipher. Different key lengths are
122           supported by the algorithm but only a 128-bit key is supported at
123           present.
124
125 source lib/rsa/Kconfig
126
127 config TPM
128         bool "Trusted Platform Module (TPM) Support"
129         depends on DM
130         help
131           This enables support for TPMs which can be used to provide security
132           features for your board. The TPM can be connected via LPC or I2C
133           and a sandbox TPM is provided for testing purposes. Use the 'tpm'
134           command to interactive the TPM. Driver model support is provided
135           for the low-level TPM interface, but only one TPM is supported at
136           a time by the TPM library.
137
138 endmenu
139
140 menu "Hashing Support"
141
142 config SHA1
143         bool "Enable SHA1 support"
144         help
145           This option enables support of hashing using SHA1 algorithm.
146           The hash is calculated in software.
147           The SHA1 algorithm produces a 160-bit (20-byte) hash value
148           (digest).
149
150 config SHA256
151         bool "Enable SHA256 support"
152         help
153           This option enables support of hashing using SHA256 algorithm.
154           The hash is calculated in software.
155           The SHA256 algorithm produces a 256-bit (32-byte) hash value
156           (digest).
157
158 config SHA_HW_ACCEL
159         bool "Enable hashing using hardware"
160         help
161           This option enables hardware acceleration
162           for SHA1/SHA256 hashing.
163           This affects the 'hash' command and also the
164           hash_lookup_algo() function.
165
166 config SHA_PROG_HW_ACCEL
167         bool "Enable Progressive hashing support using hardware"
168         depends on SHA_HW_ACCEL
169         help
170           This option enables hardware-acceleration for
171           SHA1/SHA256 progressive hashing.
172           Data can be streamed in a block at a time and the hashing
173           is performed in hardware.
174
175 config MD5
176         bool
177
178 config CRC32C
179         bool
180
181 endmenu
182
183 menu "Compression Support"
184
185 config LZ4
186         bool "Enable LZ4 decompression support"
187         help
188           If this option is set, support for LZ4 compressed images
189           is included. The LZ4 algorithm can run in-place as long as the
190           compressed image is loaded to the end of the output buffer, and
191           trades lower compression ratios for much faster decompression.
192           
193           NOTE: This implements the release version of the LZ4 frame
194           format as generated by default by the 'lz4' command line tool.
195           This is not the same as the outdated, less efficient legacy
196           frame format currently (2015) implemented in the Linux kernel
197           (generated by 'lz4 -l'). The two formats are incompatible.
198
199 config LZMA
200         bool "Enable LZMA decompression support"
201         help
202           This enables support for LZMA (Lempel-Ziv-Markov chain algorithm),
203           a dictionary compression algorithm that provides a high compression
204           ratio and fairly fast decompression speed. See also
205           CONFIG_CMD_LZMADEC which provides a decode command.
206
207 config LZO
208         bool "Enable LZO decompression support"
209         help
210           This enables support for LZO compression algorithm.r
211
212 config SPL_LZO
213         bool "Enable LZO decompression support in SPL"
214         help
215           This enables support for LZO compression algorithm in the SPL.
216
217 config SPL_GZIP
218         bool "Enable gzip decompression support for SPL build"
219         select SPL_ZLIB
220         help
221           This enables support for GZIP compression altorithm for SPL boot.
222
223 config SPL_ZLIB
224         bool
225         help
226           This enables compression lib for SPL boot.
227
228 endmenu
229
230 config ERRNO_STR
231         bool "Enable function for getting errno-related string message"
232         help
233           The function errno_str(int errno), returns a pointer to the errno
234           corresponding text message:
235           - if errno is null or positive number - a pointer to "Success" message
236           - if errno is negative - a pointer to errno related message
237
238 config OF_LIBFDT
239         bool "Enable the FDT library"
240         default y if OF_CONTROL
241         help
242           This enables the FDT library (libfdt). It provides functions for
243           accessing binary device tree images in memory, such as adding and
244           removing nodes and properties, scanning through the tree and finding
245           particular compatible nodes. The library operates on a flattened
246           version of the device tree.
247
248 config OF_LIBFDT_OVERLAY
249         bool "Enable the FDT library overlay support"
250         help
251           This enables the FDT library (libfdt) overlay support.
252
253 config SPL_OF_LIBFDT
254         bool "Enable the FDT library for SPL"
255         default y if SPL_OF_CONTROL
256         help
257           This enables the FDT library (libfdt). It provides functions for
258           accessing binary device tree images in memory, such as adding and
259           removing nodes and properties, scanning through the tree and finding
260           particular compatible nodes. The library operates on a flattened
261           version of the device tree.
262
263 config FDT_FIXUP_PARTITIONS
264         bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
265         depends on OF_LIBFDT
266         default n
267         help
268           Allow overwriting defined partitions in the device tree blob
269           using partition info defined in the 'mtdparts' environment
270           variable.
271
272 menu "System tables"
273         depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER)
274
275 config GENERATE_SMBIOS_TABLE
276         bool "Generate an SMBIOS (System Management BIOS) table"
277         default y
278         depends on X86 || EFI_LOADER
279         help
280           The System Management BIOS (SMBIOS) specification addresses how
281           motherboard and system vendors present management information about
282           their products in a standard format by extending the BIOS interface
283           on Intel architecture systems.
284
285           Check http://www.dmtf.org/standards/smbios for details.
286
287 config SMBIOS_MANUFACTURER
288         string "SMBIOS Manufacturer"
289         depends on GENERATE_SMBIOS_TABLE
290         default SYS_VENDOR
291         help
292           The board manufacturer to store in SMBIOS structures.
293           Change this to override the default one (CONFIG_SYS_VENDOR).
294
295 config SMBIOS_PRODUCT_NAME
296         string "SMBIOS Product Name"
297         depends on GENERATE_SMBIOS_TABLE
298         default SYS_BOARD
299         help
300           The product name to store in SMBIOS structures.
301           Change this to override the default one (CONFIG_SYS_BOARD).
302
303 endmenu
304
305 source lib/efi/Kconfig
306 source lib/efi_loader/Kconfig
307
308 endmenu