2 # Library configuration
8 menu "Library routines"
19 config GENERIC_FIND_FIRST_BIT
22 config NO_GENERIC_PCI_IOPORT_MAP
25 config GENERIC_PCI_IOMAP
30 select GENERIC_PCI_IOMAP
33 tristate "CRC-CCITT functions"
35 This option is provided for the case where no in-kernel-tree
36 modules require CRC-CCITT functions, but a module built outside
37 the kernel tree does. Such modules that use library CRC-CCITT
38 functions require M here.
41 tristate "CRC16 functions"
43 This option is provided for the case where no in-kernel-tree
44 modules require CRC16 functions, but a module built outside
45 the kernel tree does. Such modules that use library CRC16
46 functions require M here.
49 tristate "CRC calculation for the T10 Data Integrity Field"
51 This option is only needed if a module that's not in the
52 kernel tree needs to calculate CRC checks for use with the
53 SCSI data integrity subsystem.
56 tristate "CRC ITU-T V.41 functions"
58 This option is provided for the case where no in-kernel-tree
59 modules require CRC ITU-T V.41 functions, but a module built outside
60 the kernel tree does. Such modules that use library CRC ITU-T V.41
61 functions require M here.
64 tristate "CRC32/CRC32c functions"
68 This option is provided for the case where no in-kernel-tree
69 modules require CRC32/CRC32c functions, but a module built outside
70 the kernel tree does. Such modules that use library CRC32/CRC32c
71 functions require M here.
74 bool "CRC32 perform self test on init"
78 This option enables the CRC32 library functions to perform a
79 self test on initialization. The self test computes crc32_le
80 and crc32_be over byte strings with random alignment and length
81 and computes the total elapsed time and number of bytes processed.
84 tristate "CRC7 functions"
86 This option is provided for the case where no in-kernel-tree
87 modules require CRC7 functions, but a module built outside
88 the kernel tree does. Such modules that use library CRC7
89 functions require M here.
92 tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
96 This option is provided for the case where no in-kernel-tree
97 modules require CRC32c functions, but a module built outside the
98 kernel tree does. Such modules that use library CRC32c functions
99 require M here. See Castagnoli93.
100 Module will be libcrc32c.
103 tristate "CRC8 function"
105 This option provides CRC8 function. Drivers may select this
106 when they need to do cyclic redundancy check according CRC8
107 algorithm. Module will be called crc8.
111 depends on AUDIT && !AUDIT_ARCH
115 # compression support is select'ed if needed
126 config LZO_DECOMPRESS
129 source "lib/xz/Kconfig"
132 # These all provide a common interface (hence the apparent duplication with
133 # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
135 config DECOMPRESS_GZIP
139 config DECOMPRESS_BZIP2
142 config DECOMPRESS_LZMA
149 config DECOMPRESS_LZO
150 select LZO_DECOMPRESS
154 # Generic allocator support is selected if needed
156 config GENERIC_ALLOCATOR
160 # reed solomon support is select'ed if needed
165 config REED_SOLOMON_ENC8
168 config REED_SOLOMON_DEC8
171 config REED_SOLOMON_ENC16
174 config REED_SOLOMON_DEC16
178 # BCH support is selected if needed
183 config BCH_CONST_PARAMS
186 Drivers may select this option to force specific constant
187 values for parameters 'm' (Galois field order) and 't'
188 (error correction capability). Those specific values must
189 be set by declaring default values for symbols BCH_CONST_M
191 Doing so will enable extra compiler optimizations,
192 improving encoding and decoding performance up to 2x for
193 usual (m,t) values (typically such that m*t < 200).
194 When this option is selected, the BCH library supports
195 only a single (m,t) configuration. This is mainly useful
196 for NAND flash board drivers requiring known, fixed BCH
203 Constant value for Galois field order 'm'. If 'k' is the
204 number of data bits to protect, 'm' should be chosen such
205 that (k + m*t) <= 2**m - 1.
206 Drivers should declare a default value for this symbol if
207 they select option BCH_CONST_PARAMS.
212 Constant value for error correction capability in bits 't'.
213 Drivers should declare a default value for this symbol if
214 they select option BCH_CONST_PARAMS.
217 # Textsearch support is select'ed if needed
222 config TEXTSEARCH_KMP
228 config TEXTSEARCH_FSM
241 depends on HAS_IOMEM && !NO_IOPORT
249 config CHECK_SIGNATURE
252 config CPUMASK_OFFSTACK
253 bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
255 Use dynamic allocation for cpumask_var_t, instead of putting
256 them on the stack. This is a bit more expensive, but avoids
259 config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
260 bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
261 depends on EXPERIMENTAL && BROKEN
271 # Netlink attribute parsing support is select'ed if needed
277 # Generic 64-bit atomic support is selected if needed
279 config GENERIC_ATOMIC64
286 bool "Averaging functions"
288 This option is provided for the case where no in-kernel-tree
289 modules require averaging functions, but a module built outside
290 the kernel tree does. Such modules that use library averaging
291 functions require Y here.
299 tristate "CORDIC algorithm"
301 This option provides an implementation of the CORDIC algorithm;
302 calculations are in fixed point. Module will be called cordic.
308 Multiprecision maths library from GnuPG.
309 It is used to implement RSA digital signature verification,
310 which is used by IMA/EVM digital signature extension.
316 Additional sources of multiprecision maths library from GnuPG.
317 This code is unnecessary for RSA digital signature verification,
318 but can be compiled if needed.
322 depends on KEYS && CRYPTO
326 Digital signature verification. Currently only RSA is supported.
327 Implementation is done using GnuPG MPI library