Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[linux-3.10.git] / lib / Kconfig
1 #
2 # Library configuration
3 #
4
5 config BINARY_PRINTF
6         def_bool n
7
8 menu "Library routines"
9
10 config RAID6_PQ
11         tristate
12
13 config BITREVERSE
14         tristate
15
16 config RATIONAL
17         boolean
18
19 config GENERIC_FIND_FIRST_BIT
20         bool
21
22 config NO_GENERIC_PCI_IOPORT_MAP
23         bool
24
25 config GENERIC_PCI_IOMAP
26         bool
27
28 config GENERIC_IOMAP
29         bool
30         select GENERIC_PCI_IOMAP
31
32 config CRC_CCITT
33         tristate "CRC-CCITT functions"
34         help
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.
39
40 config CRC16
41         tristate "CRC16 functions"
42         help
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.
47
48 config CRC_T10DIF
49         tristate "CRC calculation for the T10 Data Integrity Field"
50         help
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.
54
55 config CRC_ITU_T
56         tristate "CRC ITU-T V.41 functions"
57         help
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.
62
63 config CRC32
64         tristate "CRC32 functions"
65         default y
66         select BITREVERSE
67         help
68           This option is provided for the case where no in-kernel-tree
69           modules require CRC32 functions, but a module built outside the
70           kernel tree does. Such modules that use library CRC32 functions
71           require M here.
72
73 config CRC7
74         tristate "CRC7 functions"
75         help
76           This option is provided for the case where no in-kernel-tree
77           modules require CRC7 functions, but a module built outside
78           the kernel tree does. Such modules that use library CRC7
79           functions require M here.
80
81 config LIBCRC32C
82         tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
83         select CRYPTO
84         select CRYPTO_CRC32C
85         help
86           This option is provided for the case where no in-kernel-tree
87           modules require CRC32c functions, but a module built outside the
88           kernel tree does. Such modules that use library CRC32c functions
89           require M here.  See Castagnoli93.
90           Module will be libcrc32c.
91
92 config CRC8
93         tristate "CRC8 function"
94         help
95           This option provides CRC8 function. Drivers may select this
96           when they need to do cyclic redundancy check according CRC8
97           algorithm. Module will be called crc8.
98
99 config AUDIT_GENERIC
100         bool
101         depends on AUDIT && !AUDIT_ARCH
102         default y
103
104 #
105 # compression support is select'ed if needed
106 #
107 config ZLIB_INFLATE
108         tristate
109
110 config ZLIB_DEFLATE
111         tristate
112
113 config LZO_COMPRESS
114         tristate
115
116 config LZO_DECOMPRESS
117         tristate
118
119 source "lib/xz/Kconfig"
120
121 #
122 # These all provide a common interface (hence the apparent duplication with
123 # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
124 #
125 config DECOMPRESS_GZIP
126         select ZLIB_INFLATE
127         tristate
128
129 config DECOMPRESS_BZIP2
130         tristate
131
132 config DECOMPRESS_LZMA
133         tristate
134
135 config DECOMPRESS_XZ
136         select XZ_DEC
137         tristate
138
139 config DECOMPRESS_LZO
140         select LZO_DECOMPRESS
141         tristate
142
143 #
144 # Generic allocator support is selected if needed
145 #
146 config GENERIC_ALLOCATOR
147         boolean
148
149 #
150 # reed solomon support is select'ed if needed
151 #
152 config REED_SOLOMON
153         tristate
154         
155 config REED_SOLOMON_ENC8
156         boolean
157
158 config REED_SOLOMON_DEC8
159         boolean
160
161 config REED_SOLOMON_ENC16
162         boolean
163
164 config REED_SOLOMON_DEC16
165         boolean
166
167 #
168 # BCH support is selected if needed
169 #
170 config BCH
171         tristate
172
173 config BCH_CONST_PARAMS
174         boolean
175         help
176           Drivers may select this option to force specific constant
177           values for parameters 'm' (Galois field order) and 't'
178           (error correction capability). Those specific values must
179           be set by declaring default values for symbols BCH_CONST_M
180           and BCH_CONST_T.
181           Doing so will enable extra compiler optimizations,
182           improving encoding and decoding performance up to 2x for
183           usual (m,t) values (typically such that m*t < 200).
184           When this option is selected, the BCH library supports
185           only a single (m,t) configuration. This is mainly useful
186           for NAND flash board drivers requiring known, fixed BCH
187           parameters.
188
189 config BCH_CONST_M
190         int
191         range 5 15
192         help
193           Constant value for Galois field order 'm'. If 'k' is the
194           number of data bits to protect, 'm' should be chosen such
195           that (k + m*t) <= 2**m - 1.
196           Drivers should declare a default value for this symbol if
197           they select option BCH_CONST_PARAMS.
198
199 config BCH_CONST_T
200         int
201         help
202           Constant value for error correction capability in bits 't'.
203           Drivers should declare a default value for this symbol if
204           they select option BCH_CONST_PARAMS.
205
206 #
207 # Textsearch support is select'ed if needed
208 #
209 config TEXTSEARCH
210         boolean
211
212 config TEXTSEARCH_KMP
213         tristate
214
215 config TEXTSEARCH_BM
216         tristate
217
218 config TEXTSEARCH_FSM
219         tristate
220
221 config BTREE
222         boolean
223
224 config HAS_IOMEM
225         boolean
226         depends on !NO_IOMEM
227         default y
228
229 config HAS_IOPORT
230         boolean
231         depends on HAS_IOMEM && !NO_IOPORT
232         default y
233
234 config HAS_DMA
235         boolean
236         depends on !NO_DMA
237         default y
238
239 config CHECK_SIGNATURE
240         bool
241
242 config CPUMASK_OFFSTACK
243         bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
244         help
245           Use dynamic allocation for cpumask_var_t, instead of putting
246           them on the stack.  This is a bit more expensive, but avoids
247           stack overflow.
248
249 config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
250        bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
251        depends on EXPERIMENTAL && BROKEN
252
253 config CPU_RMAP
254         bool
255         depends on SMP
256
257 config DQL
258         bool
259
260 #
261 # Netlink attribute parsing support is select'ed if needed
262 #
263 config NLATTR
264         bool
265
266 #
267 # Generic 64-bit atomic support is selected if needed
268 #
269 config GENERIC_ATOMIC64
270        bool
271
272 config LRU_CACHE
273         tristate
274
275 config AVERAGE
276         bool "Averaging functions"
277         help
278           This option is provided for the case where no in-kernel-tree
279           modules require averaging functions, but a module built outside
280           the kernel tree does. Such modules that use library averaging
281           functions require Y here.
282
283           If unsure, say N.
284
285 config CLZ_TAB
286         bool
287
288 config CORDIC
289         tristate "CORDIC algorithm"
290         help
291           This option provides an implementation of the CORDIC algorithm;
292           calculations are in fixed point. Module will be called cordic.
293
294 config MPILIB
295         tristate
296         select CLZ_TAB
297         help
298           Multiprecision maths library from GnuPG.
299           It is used to implement RSA digital signature verification,
300           which is used by IMA/EVM digital signature extension.
301
302 config MPILIB_EXTRA
303         bool
304         depends on MPILIB
305         help
306           Additional sources of multiprecision maths library from GnuPG.
307           This code is unnecessary for RSA digital signature verification,
308           but can be compiled if needed.
309
310 config SIGNATURE
311         tristate
312         depends on KEYS && CRYPTO
313         select CRYPTO_SHA1
314         select MPILIB
315         help
316           Digital signature verification. Currently only RSA is supported.
317           Implementation is done using GnuPG MPI library
318
319 endmenu