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