Blame view

lib/Kconfig 11.7 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
  #
  # Library configuration
  #
4370aa4aa   Lai Jiangshan   vsprintf: add bin...
4
5
  config BINARY_PRINTF
  	def_bool n
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
6
  menu "Library routines"
f5e70d0fe   David Woodhouse   md: Factor out RA...
7
8
  config RAID6_PQ
  	tristate
a5cfc1ec5   Akinobu Mita   [PATCH] bit rever...
9
10
  config BITREVERSE
  	tristate
8759ef32d   Oskar Schirmer   lib: isolate rati...
11
12
  config RATIONAL
  	boolean
2922585b9   David S. Miller   lib: Sparc's strn...
13
14
  config GENERIC_STRNCPY_FROM_USER
  	bool
a08c5356a   Linus Torvalds   lib: add generic ...
15
16
  config GENERIC_STRNLEN_USER
  	bool
4cd5773a2   Andy Shevchenko   net: core: move m...
17
18
  config GENERIC_NET_UTILS
  	bool
19870def5   Alexander van Heukelum   x86, bitops: sele...
19
  config GENERIC_FIND_FIRST_BIT
9ba16087d   Jan Beulich   Kconfig: eliminat...
20
  	bool
19870def5   Alexander van Heukelum   x86, bitops: sele...
21

b923650b8   Michael S. Tsirkin   lib: add NO_GENER...
22
23
  config NO_GENERIC_PCI_IOPORT_MAP
  	bool
66eab4df2   Michael S. Tsirkin   lib: add GENERIC_...
24
25
  config GENERIC_PCI_IOMAP
  	bool
4673ca8eb   Michael S. Tsirkin   lib: move GENERIC...
26
27
  config GENERIC_IOMAP
  	bool
66eab4df2   Michael S. Tsirkin   lib: add GENERIC_...
28
  	select GENERIC_PCI_IOMAP
4673ca8eb   Michael S. Tsirkin   lib: move GENERIC...
29

087fafd15   Richard Weinberger   Introduce CONFIG_...
30
31
32
  config GENERIC_IO
  	boolean
  	default n
4ccf4beab   Wolfram Sang   lib: add support ...
33
34
  config STMP_DEVICE
  	bool
22b361d1d   Oleg Nesterov   percpu_rw_semapho...
35
36
  config PERCPU_RWSEM
  	boolean
bc08b449e   Linus Torvalds   lockref: implemen...
37
38
  config ARCH_USE_CMPXCHG_LOCKREF
  	bool
72d931046   Linus Torvalds   Make ARCH_HAS_FAS...
39
40
  config ARCH_HAS_FAST_MULTIPLIER
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
41
42
43
44
45
46
47
  config CRC_CCITT
  	tristate "CRC-CCITT functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC-CCITT functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC-CCITT
  	  functions require M here.
7657ec1fc   Evgeniy Polyakov   [PATCH] lib/crc16...
48
49
50
51
52
53
54
  config CRC16
  	tristate "CRC16 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC16 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC16
  	  functions require M here.
f11f594ed   Martin K. Petersen   [SCSI] lib: Add s...
55
56
  config CRC_T10DIF
  	tristate "CRC calculation for the T10 Data Integrity Field"
68411521c   Herbert Xu   Reinstate "crypto...
57
58
  	select CRYPTO
  	select CRYPTO_CRCT10DIF
f11f594ed   Martin K. Petersen   [SCSI] lib: Add s...
59
60
61
62
  	help
  	  This option is only needed if a module that's not in the
  	  kernel tree needs to calculate CRC checks for use with the
  	  SCSI data integrity subsystem.
3e7cbae7c   Ivo van Doorn   CRC ITU-T V.41
63
64
65
66
67
68
69
  config CRC_ITU_T
  	tristate "CRC ITU-T V.41 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC ITU-T V.41 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC ITU-T V.41
  	  functions require M here.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
70
  config CRC32
46c5801ea   Darrick J. Wong   crc32: bolt on cr...
71
  	tristate "CRC32/CRC32c functions"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
72
  	default y
906d66df1   Akinobu Mita   [PATCH] crc32: re...
73
  	select BITREVERSE
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
74
75
  	help
  	  This option is provided for the case where no in-kernel-tree
46c5801ea   Darrick J. Wong   crc32: bolt on cr...
76
77
78
  	  modules require CRC32/CRC32c functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC32/CRC32c
  	  functions require M here.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
79

3863ef31d   Bob Pearson   crc32: simplify u...
80
81
82
83
84
85
86
87
88
  config CRC32_SELFTEST
  	bool "CRC32 perform self test on init"
  	default n
  	depends on CRC32
  	help
  	  This option enables the CRC32 library functions to perform a
  	  self test on initialization. The self test computes crc32_le
  	  and crc32_be over byte strings with random alignment and length
  	  and computes the total elapsed time and number of bytes processed.
5cde7656d   Darrick J. Wong   crc32: select an ...
89
90
91
92
  choice
  	prompt "CRC32 implementation"
  	depends on CRC32
  	default CRC32_SLICEBY8
82edb4baa   Darrick J. Wong   crc32: add help t...
93
94
95
96
  	help
  	  This option allows a kernel builder to override the default choice
  	  of CRC32 algorithm.  Choose the default ("slice by 8") unless you
  	  know that you need one of the others.
5cde7656d   Darrick J. Wong   crc32: select an ...
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
  
  config CRC32_SLICEBY8
  	bool "Slice by 8 bytes"
  	help
  	  Calculate checksum 8 bytes at a time with a clever slicing algorithm.
  	  This is the fastest algorithm, but comes with a 8KiB lookup table.
  	  Most modern processors have enough cache to hold this table without
  	  thrashing the cache.
  
  	  This is the default implementation choice.  Choose this one unless
  	  you have a good reason not to.
  
  config CRC32_SLICEBY4
  	bool "Slice by 4 bytes"
  	help
  	  Calculate checksum 4 bytes at a time with a clever slicing algorithm.
  	  This is a bit slower than slice by 8, but has a smaller 4KiB lookup
  	  table.
  
  	  Only choose this option if you know what you are doing.
  
  config CRC32_SARWATE
  	bool "Sarwate's Algorithm (one byte at a time)"
  	help
  	  Calculate checksum a byte at a time using Sarwate's algorithm.  This
  	  is not particularly fast, but has a small 256 byte lookup table.
  
  	  Only choose this option if you know what you are doing.
  
  config CRC32_BIT
  	bool "Classic Algorithm (one bit at a time)"
  	help
  	  Calculate checksum one bit at a time.  This is VERY slow, but has
  	  no lookup table.  This is provided as a debugging option.
  
  	  Only choose this option if you are debugging crc32.
  
  endchoice
ad241528c   Jan Nikitenko   CRC7 support
135
136
137
138
139
140
141
  config CRC7
  	tristate "CRC7 functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC7 functions, but a module built outside
  	  the kernel tree does. Such modules that use library CRC7
  	  functions require M here.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
142
143
  config LIBCRC32C
  	tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
93027354d   Herbert Xu   libcrc32c: Select...
144
  	select CRYPTO
69c35efcf   Herbert Xu   libcrc32c: Move i...
145
  	select CRYPTO_CRC32C
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
146
147
148
149
150
151
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require CRC32c functions, but a module built outside the
  	  kernel tree does. Such modules that use library CRC32c functions
  	  require M here.  See Castagnoli93.
  	  Module will be libcrc32c.
7150962d6   Arend van Spriel   lib: crc8: add ne...
152
153
154
155
156
157
  config CRC8
  	tristate "CRC8 function"
  	help
  	  This option provides CRC8 function. Drivers may select this
  	  when they need to do cyclic redundancy check according CRC8
  	  algorithm. Module will be called crc8.
e65e1fc2d   Al Viro   [PATCH] syscall c...
158
159
160
161
  config AUDIT_GENERIC
  	bool
  	depends on AUDIT && !AUDIT_ARCH
  	default y
4b5884114   AKASHI Takahiro   audit: Add generi...
162
163
164
165
166
167
168
169
  config AUDIT_ARCH_COMPAT_GENERIC
  	bool
  	default n
  
  config AUDIT_COMPAT_GENERIC
  	bool
  	depends on AUDIT_GENERIC && AUDIT_ARCH_COMPAT_GENERIC && COMPAT
  	default y
a6a9c0f1b   Daniel Borkmann   random32: add tes...
170
171
172
173
174
175
  config RANDOM32_SELFTEST
  	bool "PRNG perform self test on init"
  	default n
  	help
  	  This option enables the 32 bit PRNG library functions to perform a
  	  self test on initialization.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
176
177
178
179
180
181
182
183
  #
  # compression support is select'ed if needed
  #
  config ZLIB_INFLATE
  	tristate
  
  config ZLIB_DEFLATE
  	tristate
64c70b1cf   Richard Purdie   Add LZO1X algorit...
184
185
186
187
188
  config LZO_COMPRESS
  	tristate
  
  config LZO_DECOMPRESS
  	tristate
c72ac7a1a   Chanho Min   lib: add lz4 comp...
189
190
191
192
193
  config LZ4_COMPRESS
  	tristate
  
  config LZ4HC_COMPRESS
  	tristate
e76e1fdfa   Kyungsik Lee   lib: add support ...
194
195
  config LZ4_DECOMPRESS
  	tristate
24fa0402a   Lasse Collin   decompressors: ad...
196
  source "lib/xz/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
197
  #
c8531ab34   H. Peter Anvin   bzip2/lzma: prope...
198
199
200
201
  # These all provide a common interface (hence the apparent duplication with
  # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
  #
  config DECOMPRESS_GZIP
7856a16ea   H. Peter Anvin   bzip2/lzma: DECOM...
202
  	select ZLIB_INFLATE
c8531ab34   H. Peter Anvin   bzip2/lzma: prope...
203
204
205
206
207
208
209
  	tristate
  
  config DECOMPRESS_BZIP2
  	tristate
  
  config DECOMPRESS_LZMA
  	tristate
3ebe12439   Lasse Collin   decompressors: ad...
210
211
212
  config DECOMPRESS_XZ
  	select XZ_DEC
  	tristate
cacb246f8   Albin Tonnerre   Add LZO compressi...
213
214
215
  config DECOMPRESS_LZO
  	select LZO_DECOMPRESS
  	tristate
e76e1fdfa   Kyungsik Lee   lib: add support ...
216
217
218
  config DECOMPRESS_LZ4
  	select LZ4_DECOMPRESS
  	tristate
c8531ab34   H. Peter Anvin   bzip2/lzma: prope...
219
  #
f14f75b81   Jes Sorensen   [PATCH] ia64 unca...
220
221
222
223
224
225
  # Generic allocator support is selected if needed
  #
  config GENERIC_ALLOCATOR
  	boolean
  
  #
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
  # reed solomon support is select'ed if needed
  #
  config REED_SOLOMON
  	tristate
  	
  config REED_SOLOMON_ENC8
  	boolean
  
  config REED_SOLOMON_DEC8
  	boolean
  
  config REED_SOLOMON_ENC16
  	boolean
  
  config REED_SOLOMON_DEC16
  	boolean
f7704347a   David S. Miller   [PKT_SCHED]: Make...
242
  #
437aa565e   Ivan Djelic   lib: add shared B...
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
  # BCH support is selected if needed
  #
  config BCH
  	tristate
  
  config BCH_CONST_PARAMS
  	boolean
  	help
  	  Drivers may select this option to force specific constant
  	  values for parameters 'm' (Galois field order) and 't'
  	  (error correction capability). Those specific values must
  	  be set by declaring default values for symbols BCH_CONST_M
  	  and BCH_CONST_T.
  	  Doing so will enable extra compiler optimizations,
  	  improving encoding and decoding performance up to 2x for
  	  usual (m,t) values (typically such that m*t < 200).
  	  When this option is selected, the BCH library supports
  	  only a single (m,t) configuration. This is mainly useful
  	  for NAND flash board drivers requiring known, fixed BCH
  	  parameters.
  
  config BCH_CONST_M
  	int
  	range 5 15
  	help
  	  Constant value for Galois field order 'm'. If 'k' is the
  	  number of data bits to protect, 'm' should be chosen such
  	  that (k + m*t) <= 2**m - 1.
  	  Drivers should declare a default value for this symbol if
  	  they select option BCH_CONST_PARAMS.
  
  config BCH_CONST_T
  	int
  	help
  	  Constant value for error correction capability in bits 't'.
  	  Drivers should declare a default value for this symbol if
  	  they select option BCH_CONST_PARAMS.
  
  #
f7704347a   David S. Miller   [PKT_SCHED]: Make...
282
283
  # Textsearch support is select'ed if needed
  #
2de4ff7bd   Thomas Graf   [LIB]: Textsearch...
284
  config TEXTSEARCH
f7704347a   David S. Miller   [PKT_SCHED]: Make...
285
  	boolean
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
286

df3fb93ad   Thomas Graf   [LIB]: Knuth-Morr...
287
  config TEXTSEARCH_KMP
f7704347a   David S. Miller   [PKT_SCHED]: Make...
288
  	tristate
df3fb93ad   Thomas Graf   [LIB]: Knuth-Morr...
289

8082e4ed0   Pablo Neira Ayuso   [LIB]: Boyer-Moor...
290
  config TEXTSEARCH_BM
29cb9f9c5   David S. Miller   [LIB]: Make TEXTS...
291
  	tristate
8082e4ed0   Pablo Neira Ayuso   [LIB]: Boyer-Moor...
292

6408f79cc   Thomas Graf   [LIB]: Naive fini...
293
  config TEXTSEARCH_FSM
f7704347a   David S. Miller   [PKT_SCHED]: Make...
294
  	tristate
6408f79cc   Thomas Graf   [LIB]: Naive fini...
295

5db53f3e8   Joern Engel   [LogFS] add new f...
296
297
  config BTREE
  	boolean
a88cc108f   Chris Wilson   lib: Export inter...
298
299
300
301
302
303
304
305
306
307
308
309
310
  config INTERVAL_TREE
  	boolean
  	help
  	  Simple, embeddable, interval-tree. Can find the start of an
  	  overlapping range in log(n) time and then iterate over all
  	  overlapping nodes. The algorithm is implemented as an
  	  augmented rbtree.
  
  	  See:
  
  		Documentation/rbtree.txt
  
  	  for more information.
3cb989501   David Howells   Add a generic ass...
311
312
313
314
315
316
317
318
319
320
321
322
323
  config ASSOCIATIVE_ARRAY
  	bool
  	help
  	  Generic associative array.  Can be searched and iterated over whilst
  	  it is being modified.  It is also reasonably quick to search and
  	  modify.  The algorithms are non-recursive, and the trees are highly
  	  capacious.
  
  	  See:
  
  		Documentation/assoc_array.txt
  
  	  for more information.
5ea817699   Al Viro   [PATCH] sort the ...
324
  config HAS_IOMEM
ee36c2bf8   Al Viro   [PATCH] uml probl...
325
  	boolean
5ea817699   Al Viro   [PATCH] sort the ...
326
  	depends on !NO_IOMEM
087fafd15   Richard Weinberger   Introduce CONFIG_...
327
  	select GENERIC_IO
5ea817699   Al Viro   [PATCH] sort the ...
328
  	default y
ce816fa88   Uwe Kleine-König   Kconfig: rename H...
329
  config HAS_IOPORT_MAP
5ea817699   Al Viro   [PATCH] sort the ...
330
  	boolean
ce816fa88   Uwe Kleine-König   Kconfig: rename H...
331
  	depends on HAS_IOMEM && !NO_IOPORT_MAP
ee36c2bf8   Al Viro   [PATCH] uml probl...
332
  	default y
411f0f3ed   Heiko Carstens   Introduce CONFIG_...
333
334
335
336
  config HAS_DMA
  	boolean
  	depends on !NO_DMA
  	default y
928923c76   Geert Uytterhoeven   Introduce CONFIG_...
337
338
  config CHECK_SIGNATURE
  	bool
aab46da05   Rusty Russell   cpumask: Add CONF...
339
340
341
342
343
344
  config CPUMASK_OFFSTACK
  	bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
  	help
  	  Use dynamic allocation for cpumask_var_t, instead of putting
  	  them on the stack.  This is a bit more expensive, but avoids
  	  stack overflow.
8c384cdee   Rusty Russell   cpumask: CONFIG_D...
345
346
  config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
         bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
525c1f920   Kees Cook   lib: remove depen...
347
         depends on BROKEN
8c384cdee   Rusty Russell   cpumask: CONFIG_D...
348

c39649c33   Ben Hutchings   lib: cpu_rmap: CP...
349
350
351
  config CPU_RMAP
  	bool
  	depends on SMP
75957ba36   Tom Herbert   dql: Dynamic queu...
352
353
  config DQL
  	bool
b01250856   George Spelvin   lib: add lib/glob.c
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
  config GLOB
  	bool
  #	This actually supports modular compilation, but the module overhead
  #	is ridiculous for the amount of code involved.	Until an out-of-tree
  #	driver asks for it, we'll just link it directly it into the kernel
  #	when required.  Since we're ignoring out-of-tree users,	there's also
  #	no need bother prompting for a manual decision:
  #	prompt "glob_match() function"
  	help
  	  This option provides a glob_match function for performing
  	  simple text pattern matching.  It originated in the ATA code
  	  to blacklist particular drive models, but other device drivers
  	  may need similar functionality.
  
  	  All drivers in the Linux kernel tree that require this function
  	  should automatically select this option.  Say N unless you
  	  are compiling an out-of tree driver which tells you that it
  	  depends on this.
5f9be8248   George Spelvin   lib/glob.c: add C...
372
373
374
375
376
377
378
379
380
381
382
383
384
  config GLOB_SELFTEST
  	bool "glob self-test on init"
  	default n
  	depends on GLOB
  	help
  	  This option enables a simple self-test of the glob_match
  	  function on startup.	It is primarily useful for people
  	  working on the code to ensure they haven't introduced any
  	  regressions.
  
  	  It only adds a little bit of code and slows kernel boot (or
  	  module load) by a small amount, so you're welcome to play with
  	  it, but you probably don't need it.
e9cc8bdda   Geert Uytterhoeven   netlink: Move net...
385
386
387
388
389
  #
  # Netlink attribute parsing support is select'ed if needed
  #
  config NLATTR
  	bool
09d4e0edd   Paul Mackerras   lib: Provide gene...
390
391
392
393
394
  #
  # Generic 64-bit atomic support is selected if needed
  #
  config GENERIC_ATOMIC64
         bool
7463449b8   Catalin Marinas   atomic64_test: si...
395
396
  config ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
  	def_bool y if GENERIC_ATOMIC64
b411b3637   Philipp Reisner   The DRBD driver
397
398
  config LRU_CACHE
  	tristate
c5485a7e7   Bruno Randolf   lib: Add generic ...
399
  config AVERAGE
a7a9a24dc   Michael Buesch   lib-average: Make...
400
401
402
403
404
405
406
407
  	bool "Averaging functions"
  	help
  	  This option is provided for the case where no in-kernel-tree
  	  modules require averaging functions, but a module built outside
  	  the kernel tree does. Such modules that use library averaging
  	  functions require Y here.
  
  	  If unsure, say N.
c5485a7e7   Bruno Randolf   lib: Add generic ...
408

c6df4b17c   David Miller   lib: Fix multiple...
409
410
  config CLZ_TAB
  	bool
10f8113ec   Arend van Spriel   lib: cordic: add ...
411
  config CORDIC
d89ce936b   Michael Witten   Docs: wording: fu...
412
  	tristate "CORDIC algorithm"
10f8113ec   Arend van Spriel   lib: cordic: add ...
413
  	help
435a95c5c   Michael Witten   Docs: Kconfig: CO...
414
415
  	  This option provides an implementation of the CORDIC algorithm;
  	  calculations are in fixed point. Module will be called cordic.
10f8113ec   Arend van Spriel   lib: cordic: add ...
416

9c1c21a05   Aneesh V   ddr: add LPDDR2 d...
417
418
419
420
421
422
423
  config DDR
  	bool "JEDEC DDR data"
  	help
  	  Data from JEDEC specs for DDR SDRAM memories,
  	  particularly the AC timing parameters and addressing
  	  information. This data is useful for drivers handling
  	  DDR SDRAM controllers.
d9c46b184   Dmitry Kasatkin   crypto: GnuPG bas...
424
  config MPILIB
2e5f094b9   Dmitry Kasatkin   lib: Removed MPIL...
425
  	tristate
c6df4b17c   David Miller   lib: Fix multiple...
426
  	select CLZ_TAB
d9c46b184   Dmitry Kasatkin   crypto: GnuPG bas...
427
428
429
430
  	help
  	  Multiprecision maths library from GnuPG.
  	  It is used to implement RSA digital signature verification,
  	  which is used by IMA/EVM digital signature extension.
5e8898e97   Dmitry Kasatkin   lib: digital sign...
431
  config SIGNATURE
2e5f094b9   Dmitry Kasatkin   lib: Removed MPIL...
432
  	tristate
0d1f64f60   Dmitry Kasatkin   digsig: make cryp...
433
434
  	depends on KEYS
  	select CRYPTO
be440ec77   Dmitry Kasatkin   lib: digital sign...
435
  	select CRYPTO_SHA1
051dbb918   Dmitry Kasatkin   crypto: digital s...
436
437
438
439
  	select MPILIB
  	help
  	  Digital signature verification. Currently only RSA is supported.
  	  Implementation is done using GnuPG MPI library
ab2538398   David Daney   of/lib: Allow scr...
440
441
442
443
444
  #
  # libfdt files, only selected if needed.
  #
  config LIBFDT
  	bool
a77ad6ea0   David Howells   X.509: Implement ...
445
446
447
448
  config OID_REGISTRY
  	tristate
  	help
  	  Enable fast lookup object identifier registry.
0635eb8a5   Matthew Garrett   Move utf16 functi...
449
450
  config UCS2_STRING
          tristate
ee89bd6bc   Geert Uytterhoeven   lib: Move fonts f...
451
  source "lib/fonts/Kconfig"
308c09f17   Laura Abbott   lib/scatterlist: ...
452
453
454
455
456
457
  #
  # sg chaining option
  #
  
  config ARCH_HAS_SG_CHAIN
  	def_bool n
2de4ff7bd   Thomas Graf   [LIB]: Textsearch...
458
  endmenu