1# 2# Library configuration 3# 4 5config BINARY_PRINTF 6 def_bool n 7 8menu "Library routines" 9 10config RAID6_PQ 11 tristate 12 13config BITREVERSE 14 tristate 15 16config RATIONAL 17 boolean 18 19config GENERIC_STRNCPY_FROM_USER 20 bool 21 22config GENERIC_STRNLEN_USER 23 bool 24 25config GENERIC_FIND_FIRST_BIT 26 bool 27 28config NO_GENERIC_PCI_IOPORT_MAP 29 bool 30 31config GENERIC_PCI_IOMAP 32 bool 33 34config GENERIC_IOMAP 35 bool 36 select GENERIC_PCI_IOMAP 37 38config GENERIC_IO 39 boolean 40 default n 41 42config STMP_DEVICE 43 bool 44 45config PERCPU_RWSEM 46 boolean 47 48config CRC_CCITT 49 tristate "CRC-CCITT functions" 50 help 51 This option is provided for the case where no in-kernel-tree 52 modules require CRC-CCITT functions, but a module built outside 53 the kernel tree does. Such modules that use library CRC-CCITT 54 functions require M here. 55 56config CRC16 57 tristate "CRC16 functions" 58 help 59 This option is provided for the case where no in-kernel-tree 60 modules require CRC16 functions, but a module built outside 61 the kernel tree does. Such modules that use library CRC16 62 functions require M here. 63 64config CRC_T10DIF 65 tristate "CRC calculation for the T10 Data Integrity Field" 66 help 67 This option is only needed if a module that's not in the 68 kernel tree needs to calculate CRC checks for use with the 69 SCSI data integrity subsystem. 70 71config CRC_ITU_T 72 tristate "CRC ITU-T V.41 functions" 73 help 74 This option is provided for the case where no in-kernel-tree 75 modules require CRC ITU-T V.41 functions, but a module built outside 76 the kernel tree does. Such modules that use library CRC ITU-T V.41 77 functions require M here. 78 79config CRC32 80 tristate "CRC32/CRC32c functions" 81 default y 82 select BITREVERSE 83 help 84 This option is provided for the case where no in-kernel-tree 85 modules require CRC32/CRC32c functions, but a module built outside 86 the kernel tree does. Such modules that use library CRC32/CRC32c 87 functions require M here. 88 89config CRC32_SELFTEST 90 bool "CRC32 perform self test on init" 91 default n 92 depends on CRC32 93 help 94 This option enables the CRC32 library functions to perform a 95 self test on initialization. The self test computes crc32_le 96 and crc32_be over byte strings with random alignment and length 97 and computes the total elapsed time and number of bytes processed. 98 99choice 100 prompt "CRC32 implementation" 101 depends on CRC32 102 default CRC32_SLICEBY8 103 help 104 This option allows a kernel builder to override the default choice 105 of CRC32 algorithm. Choose the default ("slice by 8") unless you 106 know that you need one of the others. 107 108config CRC32_SLICEBY8 109 bool "Slice by 8 bytes" 110 help 111 Calculate checksum 8 bytes at a time with a clever slicing algorithm. 112 This is the fastest algorithm, but comes with a 8KiB lookup table. 113 Most modern processors have enough cache to hold this table without 114 thrashing the cache. 115 116 This is the default implementation choice. Choose this one unless 117 you have a good reason not to. 118 119config CRC32_SLICEBY4 120 bool "Slice by 4 bytes" 121 help 122 Calculate checksum 4 bytes at a time with a clever slicing algorithm. 123 This is a bit slower than slice by 8, but has a smaller 4KiB lookup 124 table. 125 126 Only choose this option if you know what you are doing. 127 128config CRC32_SARWATE 129 bool "Sarwate's Algorithm (one byte at a time)" 130 help 131 Calculate checksum a byte at a time using Sarwate's algorithm. This 132 is not particularly fast, but has a small 256 byte lookup table. 133 134 Only choose this option if you know what you are doing. 135 136config CRC32_BIT 137 bool "Classic Algorithm (one bit at a time)" 138 help 139 Calculate checksum one bit at a time. This is VERY slow, but has 140 no lookup table. This is provided as a debugging option. 141 142 Only choose this option if you are debugging crc32. 143 144endchoice 145 146config CRC7 147 tristate "CRC7 functions" 148 help 149 This option is provided for the case where no in-kernel-tree 150 modules require CRC7 functions, but a module built outside 151 the kernel tree does. Such modules that use library CRC7 152 functions require M here. 153 154config LIBCRC32C 155 tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check" 156 select CRYPTO 157 select CRYPTO_CRC32C 158 help 159 This option is provided for the case where no in-kernel-tree 160 modules require CRC32c functions, but a module built outside the 161 kernel tree does. Such modules that use library CRC32c functions 162 require M here. See Castagnoli93. 163 Module will be libcrc32c. 164 165config CRC8 166 tristate "CRC8 function" 167 help 168 This option provides CRC8 function. Drivers may select this 169 when they need to do cyclic redundancy check according CRC8 170 algorithm. Module will be called crc8. 171 172config AUDIT_GENERIC 173 bool 174 depends on AUDIT && !AUDIT_ARCH 175 default y 176 177# 178# compression support is select'ed if needed 179# 180config ZLIB_INFLATE 181 tristate 182 183config ZLIB_DEFLATE 184 tristate 185 186config LZO_COMPRESS 187 tristate 188 189config LZO_DECOMPRESS 190 tristate 191 192source "lib/xz/Kconfig" 193 194# 195# These all provide a common interface (hence the apparent duplication with 196# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.) 197# 198config DECOMPRESS_GZIP 199 select ZLIB_INFLATE 200 tristate 201 202config DECOMPRESS_BZIP2 203 tristate 204 205config DECOMPRESS_LZMA 206 tristate 207 208config DECOMPRESS_XZ 209 select XZ_DEC 210 tristate 211 212config DECOMPRESS_LZO 213 select LZO_DECOMPRESS 214 tristate 215 216# 217# Generic allocator support is selected if needed 218# 219config GENERIC_ALLOCATOR 220 boolean 221 222# 223# reed solomon support is select'ed if needed 224# 225config REED_SOLOMON 226 tristate 227 228config REED_SOLOMON_ENC8 229 boolean 230 231config REED_SOLOMON_DEC8 232 boolean 233 234config REED_SOLOMON_ENC16 235 boolean 236 237config REED_SOLOMON_DEC16 238 boolean 239 240# 241# BCH support is selected if needed 242# 243config BCH 244 tristate 245 246config BCH_CONST_PARAMS 247 boolean 248 help 249 Drivers may select this option to force specific constant 250 values for parameters 'm' (Galois field order) and 't' 251 (error correction capability). Those specific values must 252 be set by declaring default values for symbols BCH_CONST_M 253 and BCH_CONST_T. 254 Doing so will enable extra compiler optimizations, 255 improving encoding and decoding performance up to 2x for 256 usual (m,t) values (typically such that m*t < 200). 257 When this option is selected, the BCH library supports 258 only a single (m,t) configuration. This is mainly useful 259 for NAND flash board drivers requiring known, fixed BCH 260 parameters. 261 262config BCH_CONST_M 263 int 264 range 5 15 265 help 266 Constant value for Galois field order 'm'. If 'k' is the 267 number of data bits to protect, 'm' should be chosen such 268 that (k + m*t) <= 2**m - 1. 269 Drivers should declare a default value for this symbol if 270 they select option BCH_CONST_PARAMS. 271 272config BCH_CONST_T 273 int 274 help 275 Constant value for error correction capability in bits 't'. 276 Drivers should declare a default value for this symbol if 277 they select option BCH_CONST_PARAMS. 278 279# 280# Textsearch support is select'ed if needed 281# 282config TEXTSEARCH 283 boolean 284 285config TEXTSEARCH_KMP 286 tristate 287 288config TEXTSEARCH_BM 289 tristate 290 291config TEXTSEARCH_FSM 292 tristate 293 294config BTREE 295 boolean 296 297config HAS_IOMEM 298 boolean 299 depends on !NO_IOMEM 300 select GENERIC_IO 301 default y 302 303config HAS_IOPORT 304 boolean 305 depends on HAS_IOMEM && !NO_IOPORT 306 default y 307 308config HAS_DMA 309 boolean 310 depends on !NO_DMA 311 default y 312 313config CHECK_SIGNATURE 314 bool 315 316config CPUMASK_OFFSTACK 317 bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS 318 help 319 Use dynamic allocation for cpumask_var_t, instead of putting 320 them on the stack. This is a bit more expensive, but avoids 321 stack overflow. 322 323config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS 324 bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS 325 depends on EXPERIMENTAL && BROKEN 326 327config CPU_RMAP 328 bool 329 depends on SMP 330 331config DQL 332 bool 333 334# 335# Netlink attribute parsing support is select'ed if needed 336# 337config NLATTR 338 bool 339 340# 341# Generic 64-bit atomic support is selected if needed 342# 343config GENERIC_ATOMIC64 344 bool 345 346config ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE 347 def_bool y if GENERIC_ATOMIC64 348 349config LRU_CACHE 350 tristate 351 352config AVERAGE 353 bool "Averaging functions" 354 help 355 This option is provided for the case where no in-kernel-tree 356 modules require averaging functions, but a module built outside 357 the kernel tree does. Such modules that use library averaging 358 functions require Y here. 359 360 If unsure, say N. 361 362config CLZ_TAB 363 bool 364 365config CORDIC 366 tristate "CORDIC algorithm" 367 help 368 This option provides an implementation of the CORDIC algorithm; 369 calculations are in fixed point. Module will be called cordic. 370 371config DDR 372 bool "JEDEC DDR data" 373 help 374 Data from JEDEC specs for DDR SDRAM memories, 375 particularly the AC timing parameters and addressing 376 information. This data is useful for drivers handling 377 DDR SDRAM controllers. 378 379config MPILIB 380 tristate 381 select CLZ_TAB 382 help 383 Multiprecision maths library from GnuPG. 384 It is used to implement RSA digital signature verification, 385 which is used by IMA/EVM digital signature extension. 386 387config SIGNATURE 388 tristate 389 depends on KEYS && CRYPTO 390 select CRYPTO_SHA1 391 select MPILIB 392 help 393 Digital signature verification. Currently only RSA is supported. 394 Implementation is done using GnuPG MPI library 395 396# 397# libfdt files, only selected if needed. 398# 399config LIBFDT 400 bool 401 402config OID_REGISTRY 403 tristate 404 help 405 Enable fast lookup object identifier registry. 406 407endmenu 408