1menu "Library routines" 2 3config 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 10config 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 18config HAVE_PRIVATE_LIBGCC 19 bool 20 21config LIB_UUID 22 bool 23 24config 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 33config 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 41config 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 51config 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 61config 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 71choice 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 80config LIB_RAND 81 bool "Pseudo-random library support" 82 83config LIB_HW_RAND 84 bool "HW Engine for random libray support" 85 86endchoice 87 88config 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 97config 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 106config RBTREE 107 bool 108 109config BITREVERSE 110 bool "Bit reverse library from Linux" 111 112source lib/dhry/Kconfig 113 114menu "Security support" 115 116config 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 125source lib/rsa/Kconfig 126 127config 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 138endmenu 139 140menu "Hashing Support" 141 142config 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 150config 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 158config 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 166config 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 175config MD5 176 bool 177 178config CRC32C 179 bool 180 181endmenu 182 183menu "Compression Support" 184 185config 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 199config 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 207config LZO 208 bool "Enable LZO decompression support" 209 help 210 This enables support for LZO compression algorithm.r 211 212config SPL_LZO 213 bool "Enable LZO decompression support in SPL" 214 help 215 This enables support for LZO compression algorithm in the SPL. 216 217config 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 223config SPL_ZLIB 224 bool 225 help 226 This enables compression lib for SPL boot. 227 228endmenu 229 230config 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 238config 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 248config OF_LIBFDT_OVERLAY 249 bool "Enable the FDT library overlay support" 250 help 251 This enables the FDT library (libfdt) overlay support. 252 253config 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 263config 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 272menu "System tables" 273 depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER) 274 275config 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 287config 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 295config 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 303endmenu 304 305source lib/efi/Kconfig 306source lib/efi_loader/Kconfig 307 308endmenu 309