Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
[linux/fpc-iii.git] / lib / Kconfig
blobbb94c1ba616a4213bc11521adef4310387032353
2 # Library configuration
5 config BINARY_PRINTF
6         def_bool n
8 menu "Library routines"
10 config RAID6_PQ
11         tristate
13 config BITREVERSE
14         tristate
16 config RATIONAL
17         boolean
19 config GENERIC_STRNCPY_FROM_USER
20         bool
22 config GENERIC_STRNLEN_USER
23         bool
25 config GENERIC_FIND_FIRST_BIT
26         bool
28 config NO_GENERIC_PCI_IOPORT_MAP
29         bool
31 config GENERIC_PCI_IOMAP
32         bool
34 config GENERIC_IOMAP
35         bool
36         select GENERIC_PCI_IOMAP
38 config GENERIC_IO
39         boolean
40         default n
42 config STMP_DEVICE
43         bool
45 config CRC_CCITT
46         tristate "CRC-CCITT functions"
47         help
48           This option is provided for the case where no in-kernel-tree
49           modules require CRC-CCITT functions, but a module built outside
50           the kernel tree does. Such modules that use library CRC-CCITT
51           functions require M here.
53 config CRC16
54         tristate "CRC16 functions"
55         help
56           This option is provided for the case where no in-kernel-tree
57           modules require CRC16 functions, but a module built outside
58           the kernel tree does. Such modules that use library CRC16
59           functions require M here.
61 config CRC_T10DIF
62         tristate "CRC calculation for the T10 Data Integrity Field"
63         help
64           This option is only needed if a module that's not in the
65           kernel tree needs to calculate CRC checks for use with the
66           SCSI data integrity subsystem.
68 config CRC_ITU_T
69         tristate "CRC ITU-T V.41 functions"
70         help
71           This option is provided for the case where no in-kernel-tree
72           modules require CRC ITU-T V.41 functions, but a module built outside
73           the kernel tree does. Such modules that use library CRC ITU-T V.41
74           functions require M here.
76 config CRC32
77         tristate "CRC32/CRC32c functions"
78         default y
79         select BITREVERSE
80         help
81           This option is provided for the case where no in-kernel-tree
82           modules require CRC32/CRC32c functions, but a module built outside
83           the kernel tree does. Such modules that use library CRC32/CRC32c
84           functions require M here.
86 config CRC32_SELFTEST
87         bool "CRC32 perform self test on init"
88         default n
89         depends on CRC32
90         help
91           This option enables the CRC32 library functions to perform a
92           self test on initialization. The self test computes crc32_le
93           and crc32_be over byte strings with random alignment and length
94           and computes the total elapsed time and number of bytes processed.
96 choice
97         prompt "CRC32 implementation"
98         depends on CRC32
99         default CRC32_SLICEBY8
100         help
101           This option allows a kernel builder to override the default choice
102           of CRC32 algorithm.  Choose the default ("slice by 8") unless you
103           know that you need one of the others.
105 config CRC32_SLICEBY8
106         bool "Slice by 8 bytes"
107         help
108           Calculate checksum 8 bytes at a time with a clever slicing algorithm.
109           This is the fastest algorithm, but comes with a 8KiB lookup table.
110           Most modern processors have enough cache to hold this table without
111           thrashing the cache.
113           This is the default implementation choice.  Choose this one unless
114           you have a good reason not to.
116 config CRC32_SLICEBY4
117         bool "Slice by 4 bytes"
118         help
119           Calculate checksum 4 bytes at a time with a clever slicing algorithm.
120           This is a bit slower than slice by 8, but has a smaller 4KiB lookup
121           table.
123           Only choose this option if you know what you are doing.
125 config CRC32_SARWATE
126         bool "Sarwate's Algorithm (one byte at a time)"
127         help
128           Calculate checksum a byte at a time using Sarwate's algorithm.  This
129           is not particularly fast, but has a small 256 byte lookup table.
131           Only choose this option if you know what you are doing.
133 config CRC32_BIT
134         bool "Classic Algorithm (one bit at a time)"
135         help
136           Calculate checksum one bit at a time.  This is VERY slow, but has
137           no lookup table.  This is provided as a debugging option.
139           Only choose this option if you are debugging crc32.
141 endchoice
143 config CRC7
144         tristate "CRC7 functions"
145         help
146           This option is provided for the case where no in-kernel-tree
147           modules require CRC7 functions, but a module built outside
148           the kernel tree does. Such modules that use library CRC7
149           functions require M here.
151 config LIBCRC32C
152         tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
153         select CRYPTO
154         select CRYPTO_CRC32C
155         help
156           This option is provided for the case where no in-kernel-tree
157           modules require CRC32c functions, but a module built outside the
158           kernel tree does. Such modules that use library CRC32c functions
159           require M here.  See Castagnoli93.
160           Module will be libcrc32c.
162 config CRC8
163         tristate "CRC8 function"
164         help
165           This option provides CRC8 function. Drivers may select this
166           when they need to do cyclic redundancy check according CRC8
167           algorithm. Module will be called crc8.
169 config AUDIT_GENERIC
170         bool
171         depends on AUDIT && !AUDIT_ARCH
172         default y
175 # compression support is select'ed if needed
177 config ZLIB_INFLATE
178         tristate
180 config ZLIB_DEFLATE
181         tristate
183 config LZO_COMPRESS
184         tristate
186 config LZO_DECOMPRESS
187         tristate
189 source "lib/xz/Kconfig"
192 # These all provide a common interface (hence the apparent duplication with
193 # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
195 config DECOMPRESS_GZIP
196         select ZLIB_INFLATE
197         tristate
199 config DECOMPRESS_BZIP2
200         tristate
202 config DECOMPRESS_LZMA
203         tristate
205 config DECOMPRESS_XZ
206         select XZ_DEC
207         tristate
209 config DECOMPRESS_LZO
210         select LZO_DECOMPRESS
211         tristate
214 # Generic allocator support is selected if needed
216 config GENERIC_ALLOCATOR
217         boolean
220 # reed solomon support is select'ed if needed
222 config REED_SOLOMON
223         tristate
224         
225 config REED_SOLOMON_ENC8
226         boolean
228 config REED_SOLOMON_DEC8
229         boolean
231 config REED_SOLOMON_ENC16
232         boolean
234 config REED_SOLOMON_DEC16
235         boolean
238 # BCH support is selected if needed
240 config BCH
241         tristate
243 config BCH_CONST_PARAMS
244         boolean
245         help
246           Drivers may select this option to force specific constant
247           values for parameters 'm' (Galois field order) and 't'
248           (error correction capability). Those specific values must
249           be set by declaring default values for symbols BCH_CONST_M
250           and BCH_CONST_T.
251           Doing so will enable extra compiler optimizations,
252           improving encoding and decoding performance up to 2x for
253           usual (m,t) values (typically such that m*t < 200).
254           When this option is selected, the BCH library supports
255           only a single (m,t) configuration. This is mainly useful
256           for NAND flash board drivers requiring known, fixed BCH
257           parameters.
259 config BCH_CONST_M
260         int
261         range 5 15
262         help
263           Constant value for Galois field order 'm'. If 'k' is the
264           number of data bits to protect, 'm' should be chosen such
265           that (k + m*t) <= 2**m - 1.
266           Drivers should declare a default value for this symbol if
267           they select option BCH_CONST_PARAMS.
269 config BCH_CONST_T
270         int
271         help
272           Constant value for error correction capability in bits 't'.
273           Drivers should declare a default value for this symbol if
274           they select option BCH_CONST_PARAMS.
277 # Textsearch support is select'ed if needed
279 config TEXTSEARCH
280         boolean
282 config TEXTSEARCH_KMP
283         tristate
285 config TEXTSEARCH_BM
286         tristate
288 config TEXTSEARCH_FSM
289         tristate
291 config BTREE
292         boolean
294 config HAS_IOMEM
295         boolean
296         depends on !NO_IOMEM
297         select GENERIC_IO
298         default y
300 config HAS_IOPORT
301         boolean
302         depends on HAS_IOMEM && !NO_IOPORT
303         default y
305 config HAS_DMA
306         boolean
307         depends on !NO_DMA
308         default y
310 config CHECK_SIGNATURE
311         bool
313 config CPUMASK_OFFSTACK
314         bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
315         help
316           Use dynamic allocation for cpumask_var_t, instead of putting
317           them on the stack.  This is a bit more expensive, but avoids
318           stack overflow.
320 config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
321        bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
322        depends on EXPERIMENTAL && BROKEN
324 config CPU_RMAP
325         bool
326         depends on SMP
328 config DQL
329         bool
332 # Netlink attribute parsing support is select'ed if needed
334 config NLATTR
335         bool
338 # Generic 64-bit atomic support is selected if needed
340 config GENERIC_ATOMIC64
341        bool
343 config ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
344         def_bool y if GENERIC_ATOMIC64
346 config LRU_CACHE
347         tristate
349 config AVERAGE
350         bool "Averaging functions"
351         help
352           This option is provided for the case where no in-kernel-tree
353           modules require averaging functions, but a module built outside
354           the kernel tree does. Such modules that use library averaging
355           functions require Y here.
357           If unsure, say N.
359 config CLZ_TAB
360         bool
362 config CORDIC
363         tristate "CORDIC algorithm"
364         help
365           This option provides an implementation of the CORDIC algorithm;
366           calculations are in fixed point. Module will be called cordic.
368 config DDR
369         bool "JEDEC DDR data"
370         help
371           Data from JEDEC specs for DDR SDRAM memories,
372           particularly the AC timing parameters and addressing
373           information. This data is useful for drivers handling
374           DDR SDRAM controllers.
376 config MPILIB
377         tristate
378         select CLZ_TAB
379         help
380           Multiprecision maths library from GnuPG.
381           It is used to implement RSA digital signature verification,
382           which is used by IMA/EVM digital signature extension.
384 config SIGNATURE
385         tristate
386         depends on KEYS && CRYPTO
387         select CRYPTO_SHA1
388         select MPILIB
389         help
390           Digital signature verification. Currently only RSA is supported.
391           Implementation is done using GnuPG MPI library
394 # libfdt files, only selected if needed.
396 config LIBFDT
397         bool
399 endmenu