blob: c1a89185fe6bab54f058b920a34ef142e001335e [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# Library configuration
3#
4
Lai Jiangshan4370aa42009-03-06 17:21:46 +01005config BINARY_PRINTF
6 def_bool n
7
Linus Torvalds1da177e2005-04-16 15:20:36 -07008menu "Library routines"
9
David Woodhousef5e70d02009-07-13 11:35:12 +010010config RAID6_PQ
11 tristate
12
Akinobu Mitaa5cfc1e2006-12-08 02:36:25 -080013config BITREVERSE
14 tristate
15
Oskar Schirmer8759ef32009-06-11 14:51:15 +010016config RATIONAL
17 boolean
18
Alexander van Heukelum19870de2008-04-25 13:12:53 +020019config GENERIC_FIND_FIRST_BIT
Jan Beulich9ba16082008-10-15 22:01:38 -070020 bool
Alexander van Heukelum19870de2008-04-25 13:12:53 +020021
Linus Torvalds1da177e2005-04-16 15:20:36 -070022config CRC_CCITT
23 tristate "CRC-CCITT functions"
24 help
25 This option is provided for the case where no in-kernel-tree
26 modules require CRC-CCITT functions, but a module built outside
27 the kernel tree does. Such modules that use library CRC-CCITT
28 functions require M here.
29
Evgeniy Polyakov7657ec12005-08-17 15:17:26 +040030config CRC16
31 tristate "CRC16 functions"
32 help
33 This option is provided for the case where no in-kernel-tree
34 modules require CRC16 functions, but a module built outside
35 the kernel tree does. Such modules that use library CRC16
36 functions require M here.
37
Martin K. Petersenf11f5942008-06-25 11:22:42 -040038config CRC_T10DIF
39 tristate "CRC calculation for the T10 Data Integrity Field"
40 help
41 This option is only needed if a module that's not in the
42 kernel tree needs to calculate CRC checks for use with the
43 SCSI data integrity subsystem.
44
Ivo van Doorn3e7cbae2006-06-12 16:17:04 +020045config CRC_ITU_T
46 tristate "CRC ITU-T V.41 functions"
47 help
48 This option is provided for the case where no in-kernel-tree
49 modules require CRC ITU-T V.41 functions, but a module built outside
50 the kernel tree does. Such modules that use library CRC ITU-T V.41
51 functions require M here.
52
Linus Torvalds1da177e2005-04-16 15:20:36 -070053config CRC32
54 tristate "CRC32 functions"
55 default y
Akinobu Mita906d66d2006-12-08 02:36:25 -080056 select BITREVERSE
Linus Torvalds1da177e2005-04-16 15:20:36 -070057 help
58 This option is provided for the case where no in-kernel-tree
59 modules require CRC32 functions, but a module built outside the
60 kernel tree does. Such modules that use library CRC32 functions
61 require M here.
62
Jan Nikitenkoad241522007-07-17 04:04:03 -070063config CRC7
64 tristate "CRC7 functions"
65 help
66 This option is provided for the case where no in-kernel-tree
67 modules require CRC7 functions, but a module built outside
68 the kernel tree does. Such modules that use library CRC7
69 functions require M here.
70
Linus Torvalds1da177e2005-04-16 15:20:36 -070071config LIBCRC32C
72 tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
Herbert Xu93027352008-11-13 22:05:13 +080073 select CRYPTO
Herbert Xu69c35ef2008-11-07 15:11:47 +080074 select CRYPTO_CRC32C
Linus Torvalds1da177e2005-04-16 15:20:36 -070075 help
76 This option is provided for the case where no in-kernel-tree
77 modules require CRC32c functions, but a module built outside the
78 kernel tree does. Such modules that use library CRC32c functions
79 require M here. See Castagnoli93.
80 Module will be libcrc32c.
81
Arend van Spriel71509622011-05-31 11:22:15 +020082config CRC8
83 tristate "CRC8 function"
84 help
85 This option provides CRC8 function. Drivers may select this
86 when they need to do cyclic redundancy check according CRC8
87 algorithm. Module will be called crc8.
88
Al Viroe65e1fc2006-09-12 03:04:40 -040089config AUDIT_GENERIC
90 bool
91 depends on AUDIT && !AUDIT_ARCH
92 default y
93
Linus Torvalds1da177e2005-04-16 15:20:36 -070094#
95# compression support is select'ed if needed
96#
97config ZLIB_INFLATE
98 tristate
99
100config ZLIB_DEFLATE
101 tristate
102
Richard Purdie64c70b12007-07-10 17:22:24 -0700103config LZO_COMPRESS
104 tristate
105
106config LZO_DECOMPRESS
107 tristate
108
Lasse Collin24fa0402011-01-12 17:01:22 -0800109source "lib/xz/Kconfig"
110
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111#
H. Peter Anvinc8531ab2009-01-05 13:48:31 -0800112# These all provide a common interface (hence the apparent duplication with
113# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
114#
115config DECOMPRESS_GZIP
H. Peter Anvin7856a16e2009-01-07 00:01:43 -0800116 select ZLIB_INFLATE
H. Peter Anvinc8531ab2009-01-05 13:48:31 -0800117 tristate
118
119config DECOMPRESS_BZIP2
120 tristate
121
122config DECOMPRESS_LZMA
123 tristate
124
Lasse Collin3ebe1242011-01-12 17:01:23 -0800125config DECOMPRESS_XZ
126 select XZ_DEC
127 tristate
128
Albin Tonnerrecacb2462010-01-08 14:42:46 -0800129config DECOMPRESS_LZO
130 select LZO_DECOMPRESS
131 tristate
132
H. Peter Anvinc8531ab2009-01-05 13:48:31 -0800133#
Jes Sorensenf14f75b2005-06-21 17:15:02 -0700134# Generic allocator support is selected if needed
135#
136config GENERIC_ALLOCATOR
137 boolean
138
139#
Linus Torvalds1da177e2005-04-16 15:20:36 -0700140# reed solomon support is select'ed if needed
141#
142config REED_SOLOMON
143 tristate
144
145config REED_SOLOMON_ENC8
146 boolean
147
148config REED_SOLOMON_DEC8
149 boolean
150
151config REED_SOLOMON_ENC16
152 boolean
153
154config REED_SOLOMON_DEC16
155 boolean
156
David S. Millerf7704342005-06-24 17:39:03 -0700157#
Ivan Djelic437aa562011-03-11 11:05:32 +0100158# BCH support is selected if needed
159#
160config BCH
161 tristate
162
163config BCH_CONST_PARAMS
164 boolean
165 help
166 Drivers may select this option to force specific constant
167 values for parameters 'm' (Galois field order) and 't'
168 (error correction capability). Those specific values must
169 be set by declaring default values for symbols BCH_CONST_M
170 and BCH_CONST_T.
171 Doing so will enable extra compiler optimizations,
172 improving encoding and decoding performance up to 2x for
173 usual (m,t) values (typically such that m*t < 200).
174 When this option is selected, the BCH library supports
175 only a single (m,t) configuration. This is mainly useful
176 for NAND flash board drivers requiring known, fixed BCH
177 parameters.
178
179config BCH_CONST_M
180 int
181 range 5 15
182 help
183 Constant value for Galois field order 'm'. If 'k' is the
184 number of data bits to protect, 'm' should be chosen such
185 that (k + m*t) <= 2**m - 1.
186 Drivers should declare a default value for this symbol if
187 they select option BCH_CONST_PARAMS.
188
189config BCH_CONST_T
190 int
191 help
192 Constant value for error correction capability in bits 't'.
193 Drivers should declare a default value for this symbol if
194 they select option BCH_CONST_PARAMS.
195
196#
David S. Millerf7704342005-06-24 17:39:03 -0700197# Textsearch support is select'ed if needed
198#
Thomas Graf2de4ff72005-06-23 20:49:30 -0700199config TEXTSEARCH
David S. Millerf7704342005-06-24 17:39:03 -0700200 boolean
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201
Thomas Grafdf3fb932005-06-23 20:58:37 -0700202config TEXTSEARCH_KMP
David S. Millerf7704342005-06-24 17:39:03 -0700203 tristate
Thomas Grafdf3fb932005-06-23 20:58:37 -0700204
Pablo Neira Ayuso8082e4e2005-08-25 16:12:22 -0700205config TEXTSEARCH_BM
David S. Miller29cb9f92005-08-25 16:23:11 -0700206 tristate
Pablo Neira Ayuso8082e4e2005-08-25 16:12:22 -0700207
Thomas Graf6408f792005-06-23 20:59:16 -0700208config TEXTSEARCH_FSM
David S. Millerf7704342005-06-24 17:39:03 -0700209 tristate
Thomas Graf6408f792005-06-23 20:59:16 -0700210
Joern Engel5db53f32009-11-20 20:13:39 +0100211config BTREE
212 boolean
213
Al Viro5ea81762007-02-11 15:41:31 +0000214config HAS_IOMEM
Al Viroee36c2b2006-12-13 00:35:00 -0800215 boolean
Al Viro5ea81762007-02-11 15:41:31 +0000216 depends on !NO_IOMEM
217 default y
218
219config HAS_IOPORT
220 boolean
221 depends on HAS_IOMEM && !NO_IOPORT
Al Viroee36c2b2006-12-13 00:35:00 -0800222 default y
223
Heiko Carstens411f0f32007-05-06 14:49:09 -0700224config HAS_DMA
225 boolean
226 depends on !NO_DMA
227 default y
228
Geert Uytterhoeven928923c2007-08-22 14:01:36 -0700229config CHECK_SIGNATURE
230 bool
231
Rusty Russellaab46da2008-12-13 21:20:27 +1030232config CPUMASK_OFFSTACK
233 bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
234 help
235 Use dynamic allocation for cpumask_var_t, instead of putting
236 them on the stack. This is a bit more expensive, but avoids
237 stack overflow.
238
Rusty Russell8c384cd2009-01-01 10:12:30 +1030239config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
240 bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
241 depends on EXPERIMENTAL && BROKEN
242
Ben Hutchingsc39649c2011-01-19 11:03:25 +0000243config CPU_RMAP
244 bool
245 depends on SMP
246
Geert Uytterhoevene9cc8bd2009-03-04 14:53:30 +0800247#
248# Netlink attribute parsing support is select'ed if needed
249#
250config NLATTR
251 bool
252
Paul Mackerras09d4e0e2009-06-12 21:10:05 +0000253#
254# Generic 64-bit atomic support is selected if needed
255#
256config GENERIC_ATOMIC64
257 bool
258
Philipp Reisnerb411b362009-09-25 16:07:19 -0700259config LRU_CACHE
260 tristate
261
Bruno Randolfc5485a72010-11-16 10:58:37 +0900262config AVERAGE
Michael Buescha7a9a242011-03-01 20:03:05 +0100263 bool "Averaging functions"
264 help
265 This option is provided for the case where no in-kernel-tree
266 modules require averaging functions, but a module built outside
267 the kernel tree does. Such modules that use library averaging
268 functions require Y here.
269
270 If unsure, say N.
Bruno Randolfc5485a72010-11-16 10:58:37 +0900271
Arend van Spriel10f81132011-05-31 11:22:16 +0200272config CORDIC
273 tristate "Cordic function"
274 help
275 The option provides arithmetic function using cordic algorithm
276 so its calculations are in fixed point. Modules can select this
277 when they require this function. Module will be called cordic.
278
Dmitry Kasatkind9c46b12011-08-31 14:05:16 +0300279config MPILIB
280 tristate "Multiprecision maths library"
281 help
282 Multiprecision maths library from GnuPG.
283 It is used to implement RSA digital signature verification,
284 which is used by IMA/EVM digital signature extension.
285
Dmitry Kasatkin7e8dec92011-11-07 15:16:37 +0200286config MPILIB_EXTRA
287 bool "Multiprecision maths library - additional sources"
288 depends on MPILIB
289 help
290 Multiprecision maths library from GnuPG.
291 It is used to implement RSA digital signature verification,
292 which is used by IMA/EVM digital signature extension.
293 This code in unnecessary for RSA digital signature verification,
294 and can be compiled if needed.
295
Dmitry Kasatkin051dbb92011-10-14 15:25:16 +0300296config DIGSIG
297 tristate "In-kernel signature checker"
298 depends on CRYPTO
299 select MPILIB
300 help
301 Digital signature verification. Currently only RSA is supported.
302 Implementation is done using GnuPG MPI library
303
Thomas Graf2de4ff72005-06-23 20:49:30 -0700304endmenu