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