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 192config LZ4_COMPRESS 193 tristate 194 195config LZ4HC_COMPRESS 196 tristate 197 198config LZ4_DECOMPRESS 199 tristate 200 201source "lib/xz/Kconfig" 202 203# 204# These all provide a common interface (hence the apparent duplication with 205# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.) 206# 207config DECOMPRESS_GZIP 208 select ZLIB_INFLATE 209 tristate 210 211config DECOMPRESS_BZIP2 212 tristate 213 214config DECOMPRESS_LZMA 215 tristate 216 217config DECOMPRESS_XZ 218 select XZ_DEC 219 tristate 220 221config DECOMPRESS_LZO 222 select LZO_DECOMPRESS 223 tristate 224 225# 226# Generic allocator support is selected if needed 227# 228config GENERIC_ALLOCATOR 229 boolean 230 231# 232# reed solomon support is select'ed if needed 233# 234config REED_SOLOMON 235 tristate 236 237config REED_SOLOMON_ENC8 238 boolean 239 240config REED_SOLOMON_DEC8 241 boolean 242 243config REED_SOLOMON_ENC16 244 boolean 245 246config REED_SOLOMON_DEC16 247 boolean 248 249# 250# BCH support is selected if needed 251# 252config BCH 253 tristate 254 255config BCH_CONST_PARAMS 256 boolean 257 help 258 Drivers may select this option to force specific constant 259 values for parameters 'm' (Galois field order) and 't' 260 (error correction capability). Those specific values must 261 be set by declaring default values for symbols BCH_CONST_M 262 and BCH_CONST_T. 263 Doing so will enable extra compiler optimizations, 264 improving encoding and decoding performance up to 2x for 265 usual (m,t) values (typically such that m*t < 200). 266 When this option is selected, the BCH library supports 267 only a single (m,t) configuration. This is mainly useful 268 for NAND flash board drivers requiring known, fixed BCH 269 parameters. 270 271config BCH_CONST_M 272 int 273 range 5 15 274 help 275 Constant value for Galois field order 'm'. If 'k' is the 276 number of data bits to protect, 'm' should be chosen such 277 that (k + m*t) <= 2**m - 1. 278 Drivers should declare a default value for this symbol if 279 they select option BCH_CONST_PARAMS. 280 281config BCH_CONST_T 282 int 283 help 284 Constant value for error correction capability in bits 't'. 285 Drivers should declare a default value for this symbol if 286 they select option BCH_CONST_PARAMS. 287 288# 289# Textsearch support is select'ed if needed 290# 291config TEXTSEARCH 292 boolean 293 294config TEXTSEARCH_KMP 295 tristate 296 297config TEXTSEARCH_BM 298 tristate 299 300config TEXTSEARCH_FSM 301 tristate 302 303config BTREE 304 boolean 305 306config HAS_IOMEM 307 boolean 308 depends on !NO_IOMEM 309 select GENERIC_IO 310 default y 311 312config HAS_IOPORT 313 boolean 314 depends on HAS_IOMEM && !NO_IOPORT 315 default y 316 317config HAS_DMA 318 boolean 319 depends on !NO_DMA 320 default y 321 322config CHECK_SIGNATURE 323 bool 324 325config CPUMASK_OFFSTACK 326 bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS 327 help 328 Use dynamic allocation for cpumask_var_t, instead of putting 329 them on the stack. This is a bit more expensive, but avoids 330 stack overflow. 331 332config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS 333 bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS 334 depends on BROKEN 335 336config CPU_RMAP 337 bool 338 depends on SMP 339 340config DQL 341 bool 342 343# 344# Netlink attribute parsing support is select'ed if needed 345# 346config NLATTR 347 bool 348 349# 350# Generic 64-bit atomic support is selected if needed 351# 352config GENERIC_ATOMIC64 353 bool 354 355config ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE 356 def_bool y if GENERIC_ATOMIC64 357 358config LRU_CACHE 359 tristate 360 361config AVERAGE 362 bool "Averaging functions" 363 help 364 This option is provided for the case where no in-kernel-tree 365 modules require averaging functions, but a module built outside 366 the kernel tree does. Such modules that use library averaging 367 functions require Y here. 368 369 If unsure, say N. 370 371config CLZ_TAB 372 bool 373 374config CORDIC 375 tristate "CORDIC algorithm" 376 help 377 This option provides an implementation of the CORDIC algorithm; 378 calculations are in fixed point. Module will be called cordic. 379 380config DDR 381 bool "JEDEC DDR data" 382 help 383 Data from JEDEC specs for DDR SDRAM memories, 384 particularly the AC timing parameters and addressing 385 information. This data is useful for drivers handling 386 DDR SDRAM controllers. 387 388config MPILIB 389 tristate 390 select CLZ_TAB 391 help 392 Multiprecision maths library from GnuPG. 393 It is used to implement RSA digital signature verification, 394 which is used by IMA/EVM digital signature extension. 395 396config SIGNATURE 397 tristate 398 depends on KEYS && CRYPTO 399 select CRYPTO_SHA1 400 select MPILIB 401 help 402 Digital signature verification. Currently only RSA is supported. 403 Implementation is done using GnuPG MPI library 404 405# 406# libfdt files, only selected if needed. 407# 408config LIBFDT 409 bool 410 411config OID_REGISTRY 412 tristate 413 help 414 Enable fast lookup object identifier registry. 415 416config UCS2_STRING 417 tristate 418 419endmenu 420