microblaze: use asm-generic for seccomp.h
[linux-2.6-block.git] / lib / Kconfig
CommitLineData
1da177e4
LT
1#
2# Library configuration
3#
4
4370aa4a
LJ
5config BINARY_PRINTF
6 def_bool n
7
1da177e4
LT
8menu "Library routines"
9
f5e70d0f
DW
10config RAID6_PQ
11 tristate
12
a5cfc1ec
AM
13config BITREVERSE
14 tristate
15
556d2f05 16config HAVE_ARCH_BITREVERSE
841c0090 17 bool
556d2f05
YW
18 default n
19 depends on BITREVERSE
20 help
21 This option provides an config for the architecture which have instruction
22 can do bitreverse operation, we use the hardware instruction if the architecture
23 have this capability.
24
8759ef32 25config RATIONAL
6341e62b 26 bool
8759ef32 27
2922585b
DM
28config GENERIC_STRNCPY_FROM_USER
29 bool
30
a08c5356
LT
31config GENERIC_STRNLEN_USER
32 bool
33
4cd5773a
AS
34config GENERIC_NET_UTILS
35 bool
36
19870def 37config GENERIC_FIND_FIRST_BIT
9ba16087 38 bool
19870def 39
b923650b
MT
40config NO_GENERIC_PCI_IOPORT_MAP
41 bool
42
66eab4df
MT
43config GENERIC_PCI_IOMAP
44 bool
45
4673ca8e
MT
46config GENERIC_IOMAP
47 bool
66eab4df 48 select GENERIC_PCI_IOMAP
4673ca8e 49
087fafd1 50config GENERIC_IO
6341e62b 51 bool
087fafd1
RW
52 default n
53
4ccf4bea
WS
54config STMP_DEVICE
55 bool
56
22b361d1 57config PERCPU_RWSEM
6341e62b 58 bool
22b361d1 59
bc08b449
LT
60config ARCH_USE_CMPXCHG_LOCKREF
61 bool
62
72d93104
LT
63config ARCH_HAS_FAST_MULTIPLIER
64 bool
65
1da177e4
LT
66config CRC_CCITT
67 tristate "CRC-CCITT functions"
68 help
69 This option is provided for the case where no in-kernel-tree
70 modules require CRC-CCITT functions, but a module built outside
71 the kernel tree does. Such modules that use library CRC-CCITT
72 functions require M here.
73
7657ec1f
EP
74config CRC16
75 tristate "CRC16 functions"
76 help
77 This option is provided for the case where no in-kernel-tree
78 modules require CRC16 functions, but a module built outside
79 the kernel tree does. Such modules that use library CRC16
80 functions require M here.
81
f11f594e
MP
82config CRC_T10DIF
83 tristate "CRC calculation for the T10 Data Integrity Field"
68411521
HX
84 select CRYPTO
85 select CRYPTO_CRCT10DIF
f11f594e
MP
86 help
87 This option is only needed if a module that's not in the
88 kernel tree needs to calculate CRC checks for use with the
89 SCSI data integrity subsystem.
90
3e7cbae7
ID
91config CRC_ITU_T
92 tristate "CRC ITU-T V.41 functions"
93 help
94 This option is provided for the case where no in-kernel-tree
95 modules require CRC ITU-T V.41 functions, but a module built outside
96 the kernel tree does. Such modules that use library CRC ITU-T V.41
97 functions require M here.
98
1da177e4 99config CRC32
46c5801e 100 tristate "CRC32/CRC32c functions"
1da177e4 101 default y
906d66df 102 select BITREVERSE
1da177e4
LT
103 help
104 This option is provided for the case where no in-kernel-tree
46c5801e
DW
105 modules require CRC32/CRC32c functions, but a module built outside
106 the kernel tree does. Such modules that use library CRC32/CRC32c
107 functions require M here.
1da177e4 108
3863ef31
BP
109config CRC32_SELFTEST
110 bool "CRC32 perform self test on init"
111 default n
112 depends on CRC32
113 help
114 This option enables the CRC32 library functions to perform a
115 self test on initialization. The self test computes crc32_le
116 and crc32_be over byte strings with random alignment and length
117 and computes the total elapsed time and number of bytes processed.
118
5cde7656
DW
119choice
120 prompt "CRC32 implementation"
121 depends on CRC32
122 default CRC32_SLICEBY8
82edb4ba
DW
123 help
124 This option allows a kernel builder to override the default choice
125 of CRC32 algorithm. Choose the default ("slice by 8") unless you
126 know that you need one of the others.
5cde7656
DW
127
128config CRC32_SLICEBY8
129 bool "Slice by 8 bytes"
130 help
131 Calculate checksum 8 bytes at a time with a clever slicing algorithm.
132 This is the fastest algorithm, but comes with a 8KiB lookup table.
133 Most modern processors have enough cache to hold this table without
134 thrashing the cache.
135
136 This is the default implementation choice. Choose this one unless
137 you have a good reason not to.
138
139config CRC32_SLICEBY4
140 bool "Slice by 4 bytes"
141 help
142 Calculate checksum 4 bytes at a time with a clever slicing algorithm.
143 This is a bit slower than slice by 8, but has a smaller 4KiB lookup
144 table.
145
146 Only choose this option if you know what you are doing.
147
148config CRC32_SARWATE
149 bool "Sarwate's Algorithm (one byte at a time)"
150 help
151 Calculate checksum a byte at a time using Sarwate's algorithm. This
152 is not particularly fast, but has a small 256 byte lookup table.
153
154 Only choose this option if you know what you are doing.
155
156config CRC32_BIT
157 bool "Classic Algorithm (one bit at a time)"
158 help
159 Calculate checksum one bit at a time. This is VERY slow, but has
160 no lookup table. This is provided as a debugging option.
161
162 Only choose this option if you are debugging crc32.
163
164endchoice
165
ad241528
JN
166config CRC7
167 tristate "CRC7 functions"
168 help
169 This option is provided for the case where no in-kernel-tree
170 modules require CRC7 functions, but a module built outside
171 the kernel tree does. Such modules that use library CRC7
172 functions require M here.
173
1da177e4
LT
174config LIBCRC32C
175 tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
93027354 176 select CRYPTO
69c35efc 177 select CRYPTO_CRC32C
1da177e4
LT
178 help
179 This option is provided for the case where no in-kernel-tree
180 modules require CRC32c functions, but a module built outside the
181 kernel tree does. Such modules that use library CRC32c functions
182 require M here. See Castagnoli93.
183 Module will be libcrc32c.
184
7150962d
AS
185config CRC8
186 tristate "CRC8 function"
187 help
188 This option provides CRC8 function. Drivers may select this
189 when they need to do cyclic redundancy check according CRC8
190 algorithm. Module will be called crc8.
191
e65e1fc2
AV
192config AUDIT_GENERIC
193 bool
194 depends on AUDIT && !AUDIT_ARCH
195 default y
196
4b588411
AT
197config AUDIT_ARCH_COMPAT_GENERIC
198 bool
199 default n
200
201config AUDIT_COMPAT_GENERIC
202 bool
203 depends on AUDIT_GENERIC && AUDIT_ARCH_COMPAT_GENERIC && COMPAT
204 default y
205
a6a9c0f1
DB
206config RANDOM32_SELFTEST
207 bool "PRNG perform self test on init"
208 default n
209 help
210 This option enables the 32 bit PRNG library functions to perform a
211 self test on initialization.
212
1da177e4
LT
213#
214# compression support is select'ed if needed
215#
216config ZLIB_INFLATE
217 tristate
218
219config ZLIB_DEFLATE
220 tristate
221
64c70b1c
RP
222config LZO_COMPRESS
223 tristate
224
225config LZO_DECOMPRESS
226 tristate
227
c72ac7a1
CM
228config LZ4_COMPRESS
229 tristate
230
231config LZ4HC_COMPRESS
232 tristate
233
e76e1fdf
KL
234config LZ4_DECOMPRESS
235 tristate
236
24fa0402
LC
237source "lib/xz/Kconfig"
238
c8531ab3
PA
239#
240# These all provide a common interface (hence the apparent duplication with
241# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
242#
243config DECOMPRESS_GZIP
7856a16e 244 select ZLIB_INFLATE
c8531ab3
PA
245 tristate
246
247config DECOMPRESS_BZIP2
248 tristate
249
250config DECOMPRESS_LZMA
251 tristate
252
3ebe1243
LC
253config DECOMPRESS_XZ
254 select XZ_DEC
255 tristate
256
cacb246f
AT
257config DECOMPRESS_LZO
258 select LZO_DECOMPRESS
259 tristate
260
e76e1fdf
KL
261config DECOMPRESS_LZ4
262 select LZ4_DECOMPRESS
263 tristate
264
f14f75b8
JS
265#
266# Generic allocator support is selected if needed
267#
268config GENERIC_ALLOCATOR
6341e62b 269 bool
f14f75b8 270
1da177e4
LT
271#
272# reed solomon support is select'ed if needed
273#
274config REED_SOLOMON
275 tristate
276
277config REED_SOLOMON_ENC8
6341e62b 278 bool
1da177e4
LT
279
280config REED_SOLOMON_DEC8
6341e62b 281 bool
1da177e4
LT
282
283config REED_SOLOMON_ENC16
6341e62b 284 bool
1da177e4
LT
285
286config REED_SOLOMON_DEC16
6341e62b 287 bool
1da177e4 288
437aa565
ID
289#
290# BCH support is selected if needed
291#
292config BCH
293 tristate
294
295config BCH_CONST_PARAMS
6341e62b 296 bool
437aa565
ID
297 help
298 Drivers may select this option to force specific constant
299 values for parameters 'm' (Galois field order) and 't'
300 (error correction capability). Those specific values must
301 be set by declaring default values for symbols BCH_CONST_M
302 and BCH_CONST_T.
303 Doing so will enable extra compiler optimizations,
304 improving encoding and decoding performance up to 2x for
305 usual (m,t) values (typically such that m*t < 200).
306 When this option is selected, the BCH library supports
307 only a single (m,t) configuration. This is mainly useful
308 for NAND flash board drivers requiring known, fixed BCH
309 parameters.
310
311config BCH_CONST_M
312 int
313 range 5 15
314 help
315 Constant value for Galois field order 'm'. If 'k' is the
316 number of data bits to protect, 'm' should be chosen such
317 that (k + m*t) <= 2**m - 1.
318 Drivers should declare a default value for this symbol if
319 they select option BCH_CONST_PARAMS.
320
321config BCH_CONST_T
322 int
323 help
324 Constant value for error correction capability in bits 't'.
325 Drivers should declare a default value for this symbol if
326 they select option BCH_CONST_PARAMS.
327
f7704347
DM
328#
329# Textsearch support is select'ed if needed
330#
2de4ff7b 331config TEXTSEARCH
6341e62b 332 bool
1da177e4 333
df3fb93a 334config TEXTSEARCH_KMP
f7704347 335 tristate
df3fb93a 336
8082e4ed 337config TEXTSEARCH_BM
29cb9f9c 338 tristate
8082e4ed 339
6408f79c 340config TEXTSEARCH_FSM
f7704347 341 tristate
6408f79c 342
5db53f3e 343config BTREE
6341e62b 344 bool
5db53f3e 345
a88cc108 346config INTERVAL_TREE
6341e62b 347 bool
a88cc108
CW
348 help
349 Simple, embeddable, interval-tree. Can find the start of an
350 overlapping range in log(n) time and then iterate over all
351 overlapping nodes. The algorithm is implemented as an
352 augmented rbtree.
353
354 See:
355
356 Documentation/rbtree.txt
357
358 for more information.
359
3cb98950
DH
360config ASSOCIATIVE_ARRAY
361 bool
362 help
363 Generic associative array. Can be searched and iterated over whilst
364 it is being modified. It is also reasonably quick to search and
365 modify. The algorithms are non-recursive, and the trees are highly
366 capacious.
367
368 See:
369
370 Documentation/assoc_array.txt
371
372 for more information.
373
5ea81769 374config HAS_IOMEM
6341e62b 375 bool
5ea81769 376 depends on !NO_IOMEM
087fafd1 377 select GENERIC_IO
5ea81769
AV
378 default y
379
ce816fa8 380config HAS_IOPORT_MAP
6341e62b 381 bool
ce816fa8 382 depends on HAS_IOMEM && !NO_IOPORT_MAP
ee36c2bf
AV
383 default y
384
411f0f3e 385config HAS_DMA
6341e62b 386 bool
411f0f3e
HC
387 depends on !NO_DMA
388 default y
389
928923c7
GU
390config CHECK_SIGNATURE
391 bool
392
aab46da0
RR
393config CPUMASK_OFFSTACK
394 bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
395 help
396 Use dynamic allocation for cpumask_var_t, instead of putting
397 them on the stack. This is a bit more expensive, but avoids
398 stack overflow.
399
8c384cde
RR
400config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
401 bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
525c1f92 402 depends on BROKEN
8c384cde 403
c39649c3
BH
404config CPU_RMAP
405 bool
406 depends on SMP
407
75957ba3
TH
408config DQL
409 bool
410
b0125085
GS
411config GLOB
412 bool
413# This actually supports modular compilation, but the module overhead
414# is ridiculous for the amount of code involved. Until an out-of-tree
415# driver asks for it, we'll just link it directly it into the kernel
416# when required. Since we're ignoring out-of-tree users, there's also
417# no need bother prompting for a manual decision:
418# prompt "glob_match() function"
419 help
420 This option provides a glob_match function for performing
421 simple text pattern matching. It originated in the ATA code
422 to blacklist particular drive models, but other device drivers
423 may need similar functionality.
424
425 All drivers in the Linux kernel tree that require this function
426 should automatically select this option. Say N unless you
427 are compiling an out-of tree driver which tells you that it
428 depends on this.
429
5f9be824
GS
430config GLOB_SELFTEST
431 bool "glob self-test on init"
432 default n
433 depends on GLOB
434 help
435 This option enables a simple self-test of the glob_match
436 function on startup. It is primarily useful for people
437 working on the code to ensure they haven't introduced any
438 regressions.
439
440 It only adds a little bit of code and slows kernel boot (or
441 module load) by a small amount, so you're welcome to play with
442 it, but you probably don't need it.
443
e9cc8bdd
GU
444#
445# Netlink attribute parsing support is select'ed if needed
446#
447config NLATTR
448 bool
449
09d4e0ed
PM
450#
451# Generic 64-bit atomic support is selected if needed
452#
453config GENERIC_ATOMIC64
454 bool
455
7463449b
CM
456config ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
457 def_bool y if GENERIC_ATOMIC64
458
b411b363
PR
459config LRU_CACHE
460 tristate
461
c5485a7e 462config AVERAGE
a7a9a24d
MB
463 bool "Averaging functions"
464 help
465 This option is provided for the case where no in-kernel-tree
466 modules require averaging functions, but a module built outside
467 the kernel tree does. Such modules that use library averaging
468 functions require Y here.
469
470 If unsure, say N.
c5485a7e 471
c6df4b17
DM
472config CLZ_TAB
473 bool
474
10f8113e 475config CORDIC
d89ce936 476 tristate "CORDIC algorithm"
10f8113e 477 help
435a95c5
MW
478 This option provides an implementation of the CORDIC algorithm;
479 calculations are in fixed point. Module will be called cordic.
10f8113e 480
9c1c21a0
A
481config DDR
482 bool "JEDEC DDR data"
483 help
484 Data from JEDEC specs for DDR SDRAM memories,
485 particularly the AC timing parameters and addressing
486 information. This data is useful for drivers handling
487 DDR SDRAM controllers.
488
d9c46b18 489config MPILIB
2e5f094b 490 tristate
c6df4b17 491 select CLZ_TAB
d9c46b18
DK
492 help
493 Multiprecision maths library from GnuPG.
494 It is used to implement RSA digital signature verification,
495 which is used by IMA/EVM digital signature extension.
496
5e8898e9 497config SIGNATURE
2e5f094b 498 tristate
0d1f64f6
DK
499 depends on KEYS
500 select CRYPTO
be440ec7 501 select CRYPTO_SHA1
051dbb91
DK
502 select MPILIB
503 help
504 Digital signature verification. Currently only RSA is supported.
505 Implementation is done using GnuPG MPI library
506
ab253839
DD
507#
508# libfdt files, only selected if needed.
509#
510config LIBFDT
511 bool
512
a77ad6ea
DH
513config OID_REGISTRY
514 tristate
515 help
516 Enable fast lookup object identifier registry.
517
0635eb8a
MG
518config UCS2_STRING
519 tristate
520
ee89bd6b
GU
521source "lib/fonts/Kconfig"
522
308c09f1
LA
523#
524# sg chaining option
525#
526
527config ARCH_HAS_SG_CHAIN
528 def_bool n
529
2de4ff7b 530endmenu