blob: 40bfa6ccd294cdee4b9d11614ad5bfe050237c1e [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 Mitaa5cfc1ec582006-12-08 02:36:25 -080013config BITREVERSE
14 tristate
15
Yalin Wang556d2f02014-11-03 03:01:03 +010016config HAVE_ARCH_BITREVERSE
Christoph Jaeger841c0092015-02-16 16:00:20 -080017 bool
Yalin Wang556d2f02014-11-03 03:01:03 +010018 default n
19 depends on BITREVERSE
20 help
Andrew Morton9e522c02015-04-16 12:49:07 -070021 This option enables the use of hardware bit-reversal instructions on
22 architectures which support such operations.
Yalin Wang556d2f02014-11-03 03:01:03 +010023
Oskar Schirmer8759ef32009-06-11 14:51:15 +010024config RATIONAL
Christoph Jaeger6341e622014-12-20 15:41:11 -050025 bool
Oskar Schirmer8759ef32009-06-11 14:51:15 +010026
David S. Miller29225852012-05-24 13:12:28 -070027config GENERIC_STRNCPY_FROM_USER
28 bool
29
Linus Torvaldsa08c5352012-05-26 11:06:38 -070030config GENERIC_STRNLEN_USER
31 bool
32
Andy Shevchenko4cd57732013-06-04 19:46:26 +030033config GENERIC_NET_UTILS
34 bool
35
Alexander van Heukelum19870de2008-04-25 13:12:53 +020036config GENERIC_FIND_FIRST_BIT
Jan Beulich9ba16082008-10-15 22:01:38 -070037 bool
Alexander van Heukelum19870de2008-04-25 13:12:53 +020038
Michael S. Tsirkinb9236502012-01-30 00:20:48 +020039config NO_GENERIC_PCI_IOPORT_MAP
40 bool
41
Michael S. Tsirkin66eab4d2011-11-24 20:45:20 +020042config GENERIC_PCI_IOMAP
43 bool
44
Michael S. Tsirkin4673ca82011-11-24 14:54:28 +020045config GENERIC_IOMAP
46 bool
Michael S. Tsirkin66eab4d2011-11-24 20:45:20 +020047 select GENERIC_PCI_IOMAP
Michael S. Tsirkin4673ca82011-11-24 14:54:28 +020048
Wolfram Sang4ccf4be2011-08-31 20:35:40 +020049config STMP_DEVICE
50 bool
51
Linus Torvaldsbc08b442013-09-02 12:12:15 -070052config ARCH_USE_CMPXCHG_LOCKREF
53 bool
54
Linus Torvalds72d93102014-09-13 11:14:53 -070055config ARCH_HAS_FAST_MULTIPLIER
56 bool
57
Zhichang Yuan031e3602018-03-15 02:15:50 +080058config INDIRECT_PIO
59 bool "Access I/O in non-MMIO mode"
60 depends on ARM64
61 help
62 On some platforms where no separate I/O space exists, there are I/O
63 hosts which can not be accessed in MMIO mode. Using the logical PIO
64 mechanism, the host-local I/O resource can be mapped into system
65 logic PIO space shared with MMIO hosts, such as PCI/PCIe, then the
66 system can access the I/O devices with the mapped-logic PIO through
67 I/O accessors.
68
69 This way has relatively little I/O performance cost. Please make
70 sure your devices really need this configure item enabled.
71
72 When in doubt, say N.
73
Linus Torvalds1da177e2005-04-16 15:20:36 -070074config CRC_CCITT
75 tristate "CRC-CCITT functions"
76 help
77 This option is provided for the case where no in-kernel-tree
78 modules require CRC-CCITT functions, but a module built outside
79 the kernel tree does. Such modules that use library CRC-CCITT
80 functions require M here.
81
Evgeniy Polyakov7657ec12005-08-17 15:17:26 +040082config CRC16
83 tristate "CRC16 functions"
84 help
85 This option is provided for the case where no in-kernel-tree
86 modules require CRC16 functions, but a module built outside
87 the kernel tree does. Such modules that use library CRC16
88 functions require M here.
89
Martin K. Petersenf11f5942008-06-25 11:22:42 -040090config CRC_T10DIF
91 tristate "CRC calculation for the T10 Data Integrity Field"
Herbert Xu684115212013-09-07 12:56:26 +100092 select CRYPTO
93 select CRYPTO_CRCT10DIF
Martin K. Petersenf11f5942008-06-25 11:22:42 -040094 help
95 This option is only needed if a module that's not in the
96 kernel tree needs to calculate CRC checks for use with the
97 SCSI data integrity subsystem.
98
Ivo van Doorn3e7cbae2006-06-12 16:17:04 +020099config CRC_ITU_T
100 tristate "CRC ITU-T V.41 functions"
101 help
102 This option is provided for the case where no in-kernel-tree
103 modules require CRC ITU-T V.41 functions, but a module built outside
104 the kernel tree does. Such modules that use library CRC ITU-T V.41
105 functions require M here.
106
Linus Torvalds1da177e2005-04-16 15:20:36 -0700107config CRC32
Darrick J. Wong46c58012012-03-23 15:02:25 -0700108 tristate "CRC32/CRC32c functions"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109 default y
Akinobu Mita906d66d2006-12-08 02:36:25 -0800110 select BITREVERSE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111 help
112 This option is provided for the case where no in-kernel-tree
Darrick J. Wong46c58012012-03-23 15:02:25 -0700113 modules require CRC32/CRC32c functions, but a module built outside
114 the kernel tree does. Such modules that use library CRC32/CRC32c
115 functions require M here.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700116
Bob Pearson3863ef32012-03-23 15:02:22 -0700117config CRC32_SELFTEST
Geert Uytterhoeven5fb7f872017-02-24 15:00:49 -0800118 tristate "CRC32 perform self test on init"
Bob Pearson3863ef32012-03-23 15:02:22 -0700119 depends on CRC32
120 help
121 This option enables the CRC32 library functions to perform a
122 self test on initialization. The self test computes crc32_le
123 and crc32_be over byte strings with random alignment and length
124 and computes the total elapsed time and number of bytes processed.
125
Darrick J. Wong5cde7652012-03-23 15:02:26 -0700126choice
127 prompt "CRC32 implementation"
128 depends on CRC32
129 default CRC32_SLICEBY8
Darrick J. Wong82edb4b2012-03-28 14:42:56 -0700130 help
131 This option allows a kernel builder to override the default choice
132 of CRC32 algorithm. Choose the default ("slice by 8") unless you
133 know that you need one of the others.
Darrick J. Wong5cde7652012-03-23 15:02:26 -0700134
135config CRC32_SLICEBY8
136 bool "Slice by 8 bytes"
137 help
138 Calculate checksum 8 bytes at a time with a clever slicing algorithm.
139 This is the fastest algorithm, but comes with a 8KiB lookup table.
140 Most modern processors have enough cache to hold this table without
141 thrashing the cache.
142
143 This is the default implementation choice. Choose this one unless
144 you have a good reason not to.
145
146config CRC32_SLICEBY4
147 bool "Slice by 4 bytes"
148 help
149 Calculate checksum 4 bytes at a time with a clever slicing algorithm.
150 This is a bit slower than slice by 8, but has a smaller 4KiB lookup
151 table.
152
153 Only choose this option if you know what you are doing.
154
155config CRC32_SARWATE
156 bool "Sarwate's Algorithm (one byte at a time)"
157 help
158 Calculate checksum a byte at a time using Sarwate's algorithm. This
159 is not particularly fast, but has a small 256 byte lookup table.
160
161 Only choose this option if you know what you are doing.
162
163config CRC32_BIT
164 bool "Classic Algorithm (one bit at a time)"
165 help
166 Calculate checksum one bit at a time. This is VERY slow, but has
167 no lookup table. This is provided as a debugging option.
168
169 Only choose this option if you are debugging crc32.
170
171endchoice
172
Coly Lifeba04f2018-08-21 21:57:11 -0700173config CRC64
174 tristate "CRC64 functions"
175 help
176 This option is provided for the case where no in-kernel-tree
177 modules require CRC64 functions, but a module built outside
178 the kernel tree does. Such modules that use library CRC64
179 functions require M here.
180
Jeremy Kerr0cbaa442017-06-06 16:08:39 -0500181config CRC4
182 tristate "CRC4 functions"
183 help
184 This option is provided for the case where no in-kernel-tree
185 modules require CRC4 functions, but a module built outside
186 the kernel tree does. Such modules that use library CRC4
187 functions require M here.
188
Jan Nikitenkoad241522007-07-17 04:04:03 -0700189config CRC7
190 tristate "CRC7 functions"
191 help
192 This option is provided for the case where no in-kernel-tree
193 modules require CRC7 functions, but a module built outside
194 the kernel tree does. Such modules that use library CRC7
195 functions require M here.
196
Linus Torvalds1da177e2005-04-16 15:20:36 -0700197config LIBCRC32C
198 tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
Herbert Xu93027352008-11-13 22:05:13 +0800199 select CRYPTO
Herbert Xu69c35ef2008-11-07 15:11:47 +0800200 select CRYPTO_CRC32C
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201 help
202 This option is provided for the case where no in-kernel-tree
203 modules require CRC32c functions, but a module built outside the
204 kernel tree does. Such modules that use library CRC32c functions
205 require M here. See Castagnoli93.
206 Module will be libcrc32c.
207
Arend van Spriel71509622011-05-31 11:22:15 +0200208config CRC8
209 tristate "CRC8 function"
210 help
211 This option provides CRC8 function. Drivers may select this
212 when they need to do cyclic redundancy check according CRC8
213 algorithm. Module will be called crc8.
214
Nick Terrell5d240522017-08-04 13:19:17 -0700215config XXHASH
216 tristate
217
Al Viroe65e1fc2006-09-12 03:04:40 -0400218config AUDIT_GENERIC
219 bool
220 depends on AUDIT && !AUDIT_ARCH
221 default y
222
AKASHI Takahiro4b588412014-03-15 14:48:00 +0900223config AUDIT_ARCH_COMPAT_GENERIC
224 bool
225 default n
226
227config AUDIT_COMPAT_GENERIC
228 bool
229 depends on AUDIT_GENERIC && AUDIT_ARCH_COMPAT_GENERIC && COMPAT
230 default y
231
Daniel Borkmanna6a9c0f2013-11-11 12:20:37 +0100232config RANDOM32_SELFTEST
233 bool "PRNG perform self test on init"
Daniel Borkmanna6a9c0f2013-11-11 12:20:37 +0100234 help
235 This option enables the 32 bit PRNG library functions to perform a
236 self test on initialization.
237
Linus Torvalds1da177e2005-04-16 15:20:36 -0700238#
239# compression support is select'ed if needed
240#
Dan Streetman2da572c2015-05-07 13:49:14 -0400241config 842_COMPRESS
Arnd Bergmann5b571672016-01-13 23:24:02 +0100242 select CRC32
Dan Streetman2da572c2015-05-07 13:49:14 -0400243 tristate
244
245config 842_DECOMPRESS
Arnd Bergmann5b571672016-01-13 23:24:02 +0100246 select CRC32
Dan Streetman2da572c2015-05-07 13:49:14 -0400247 tristate
248
Linus Torvalds1da177e2005-04-16 15:20:36 -0700249config ZLIB_INFLATE
250 tristate
251
252config ZLIB_DEFLATE
253 tristate
Andrew Morton1fd4e5c2015-10-15 15:28:35 -0700254 select BITREVERSE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700255
Richard Purdie64c70b12007-07-10 17:22:24 -0700256config LZO_COMPRESS
257 tristate
258
259config LZO_DECOMPRESS
260 tristate
261
Chanho Minc72ac7a2013-07-08 16:01:49 -0700262config LZ4_COMPRESS
263 tristate
264
265config LZ4HC_COMPRESS
266 tristate
267
Kyungsik Leee76e1fd2013-07-08 16:01:46 -0700268config LZ4_DECOMPRESS
269 tristate
270
Nick Terrell73f3d1b2017-08-09 19:35:53 -0700271config ZSTD_COMPRESS
272 select XXHASH
273 tristate
274
275config ZSTD_DECOMPRESS
276 select XXHASH
277 tristate
278
Lasse Collin24fa0402011-01-12 17:01:22 -0800279source "lib/xz/Kconfig"
280
Linus Torvalds1da177e2005-04-16 15:20:36 -0700281#
H. Peter Anvinc8531ab2009-01-05 13:48:31 -0800282# These all provide a common interface (hence the apparent duplication with
283# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
284#
285config DECOMPRESS_GZIP
H. Peter Anvin7856a16e2009-01-07 00:01:43 -0800286 select ZLIB_INFLATE
H. Peter Anvinc8531ab2009-01-05 13:48:31 -0800287 tristate
288
289config DECOMPRESS_BZIP2
290 tristate
291
292config DECOMPRESS_LZMA
293 tristate
294
Lasse Collin3ebe1242011-01-12 17:01:23 -0800295config DECOMPRESS_XZ
296 select XZ_DEC
297 tristate
298
Albin Tonnerrecacb2462010-01-08 14:42:46 -0800299config DECOMPRESS_LZO
300 select LZO_DECOMPRESS
301 tristate
302
Kyungsik Leee76e1fd2013-07-08 16:01:46 -0700303config DECOMPRESS_LZ4
304 select LZ4_DECOMPRESS
305 tristate
306
H. Peter Anvinc8531ab2009-01-05 13:48:31 -0800307#
Jes Sorensenf14f75b2005-06-21 17:15:02 -0700308# Generic allocator support is selected if needed
309#
310config GENERIC_ALLOCATOR
Christoph Jaeger6341e622014-12-20 15:41:11 -0500311 bool
Jes Sorensenf14f75b2005-06-21 17:15:02 -0700312
313#
Linus Torvalds1da177e2005-04-16 15:20:36 -0700314# reed solomon support is select'ed if needed
315#
316config REED_SOLOMON
317 tristate
318
319config REED_SOLOMON_ENC8
Christoph Jaeger6341e622014-12-20 15:41:11 -0500320 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700321
322config REED_SOLOMON_DEC8
Christoph Jaeger6341e622014-12-20 15:41:11 -0500323 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700324
325config REED_SOLOMON_ENC16
Christoph Jaeger6341e622014-12-20 15:41:11 -0500326 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327
328config REED_SOLOMON_DEC16
Christoph Jaeger6341e622014-12-20 15:41:11 -0500329 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700330
David S. Millerf7704342005-06-24 17:39:03 -0700331#
Ivan Djelic437aa562011-03-11 11:05:32 +0100332# BCH support is selected if needed
333#
334config BCH
335 tristate
336
337config BCH_CONST_PARAMS
Christoph Jaeger6341e622014-12-20 15:41:11 -0500338 bool
Ivan Djelic437aa562011-03-11 11:05:32 +0100339 help
340 Drivers may select this option to force specific constant
341 values for parameters 'm' (Galois field order) and 't'
342 (error correction capability). Those specific values must
343 be set by declaring default values for symbols BCH_CONST_M
344 and BCH_CONST_T.
345 Doing so will enable extra compiler optimizations,
346 improving encoding and decoding performance up to 2x for
347 usual (m,t) values (typically such that m*t < 200).
348 When this option is selected, the BCH library supports
349 only a single (m,t) configuration. This is mainly useful
350 for NAND flash board drivers requiring known, fixed BCH
351 parameters.
352
353config BCH_CONST_M
354 int
355 range 5 15
356 help
357 Constant value for Galois field order 'm'. If 'k' is the
358 number of data bits to protect, 'm' should be chosen such
359 that (k + m*t) <= 2**m - 1.
360 Drivers should declare a default value for this symbol if
361 they select option BCH_CONST_PARAMS.
362
363config BCH_CONST_T
364 int
365 help
366 Constant value for error correction capability in bits 't'.
367 Drivers should declare a default value for this symbol if
368 they select option BCH_CONST_PARAMS.
369
370#
David S. Millerf7704342005-06-24 17:39:03 -0700371# Textsearch support is select'ed if needed
372#
Thomas Graf2de4ff72005-06-23 20:49:30 -0700373config TEXTSEARCH
Christoph Jaeger6341e622014-12-20 15:41:11 -0500374 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700375
Thomas Grafdf3fb932005-06-23 20:58:37 -0700376config TEXTSEARCH_KMP
David S. Millerf7704342005-06-24 17:39:03 -0700377 tristate
Thomas Grafdf3fb932005-06-23 20:58:37 -0700378
Pablo Neira Ayuso8082e4e2005-08-25 16:12:22 -0700379config TEXTSEARCH_BM
David S. Miller29cb9f92005-08-25 16:23:11 -0700380 tristate
Pablo Neira Ayuso8082e4e2005-08-25 16:12:22 -0700381
Thomas Graf6408f792005-06-23 20:59:16 -0700382config TEXTSEARCH_FSM
David S. Millerf7704342005-06-24 17:39:03 -0700383 tristate
Thomas Graf6408f792005-06-23 20:59:16 -0700384
Joern Engel5db53f32009-11-20 20:13:39 +0100385config BTREE
Christoph Jaeger6341e622014-12-20 15:41:11 -0500386 bool
Joern Engel5db53f32009-11-20 20:13:39 +0100387
Chris Wilsona88cc102014-03-17 12:21:54 +0000388config INTERVAL_TREE
Christoph Jaeger6341e622014-12-20 15:41:11 -0500389 bool
Chris Wilsona88cc102014-03-17 12:21:54 +0000390 help
391 Simple, embeddable, interval-tree. Can find the start of an
392 overlapping range in log(n) time and then iterate over all
393 overlapping nodes. The algorithm is implemented as an
394 augmented rbtree.
395
396 See:
397
398 Documentation/rbtree.txt
399
400 for more information.
401
Matthew Wilcox02c02bf2017-11-03 23:09:45 -0400402config XARRAY_MULTI
403 bool
404 help
405 Support entries which occupy multiple consecutive indices in the
406 XArray.
407
Matthew Wilcox57578c22016-05-20 17:01:54 -0700408config RADIX_TREE_MULTIORDER
409 bool
Matthew Wilcox02c02bf2017-11-03 23:09:45 -0400410 select XARRAY_MULTI
Matthew Wilcox57578c22016-05-20 17:01:54 -0700411
David Howells3cb98952013-09-24 10:35:17 +0100412config ASSOCIATIVE_ARRAY
413 bool
414 help
415 Generic associative array. Can be searched and iterated over whilst
416 it is being modified. It is also reasonably quick to search and
417 modify. The algorithms are non-recursive, and the trees are highly
418 capacious.
419
420 See:
421
Mauro Carvalho Chehab5fb94e92018-05-08 15:14:57 -0300422 Documentation/core-api/assoc_array.rst
David Howells3cb98952013-09-24 10:35:17 +0100423
424 for more information.
425
Al Viro5ea81762007-02-11 15:41:31 +0000426config HAS_IOMEM
Christoph Jaeger6341e622014-12-20 15:41:11 -0500427 bool
Al Viro5ea81762007-02-11 15:41:31 +0000428 depends on !NO_IOMEM
Richard Weinberger087fafd2012-02-07 01:22:46 +0100429 select GENERIC_IO
Al Viro5ea81762007-02-11 15:41:31 +0000430 default y
431
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -0700432config HAS_IOPORT_MAP
Christoph Jaeger6341e622014-12-20 15:41:11 -0500433 bool
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -0700434 depends on HAS_IOMEM && !NO_IOPORT_MAP
Al Viroee36c2b2006-12-13 00:35:00 -0800435 default y
436
Christoph Hellwigcf65a0f2018-06-12 19:01:45 +0200437source "kernel/dma/Kconfig"
Heiko Carstens411f0f32007-05-06 14:49:09 -0700438
Bart Van Asschee80a0af2018-01-05 08:26:46 -0800439config SGL_ALLOC
440 bool
441 default n
442
Christoph Hellwiga4ce5a42018-04-03 15:47:59 +0200443config IOMMU_HELPER
444 bool
445
Geert Uytterhoeven928923c2007-08-22 14:01:36 -0700446config CHECK_SIGNATURE
447 bool
448
Rusty Russellaab46da2008-12-13 21:20:27 +1030449config CPUMASK_OFFSTACK
450 bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
451 help
452 Use dynamic allocation for cpumask_var_t, instead of putting
453 them on the stack. This is a bit more expensive, but avoids
454 stack overflow.
455
Ben Hutchingsc39649c2011-01-19 11:03:25 +0000456config CPU_RMAP
457 bool
458 depends on SMP
459
Tom Herbert75957ba2011-11-28 16:32:35 +0000460config DQL
461 bool
462
George Spelvinb0125082014-08-06 16:09:23 -0700463config GLOB
464 bool
465# This actually supports modular compilation, but the module overhead
466# is ridiculous for the amount of code involved. Until an out-of-tree
467# driver asks for it, we'll just link it directly it into the kernel
468# when required. Since we're ignoring out-of-tree users, there's also
469# no need bother prompting for a manual decision:
470# prompt "glob_match() function"
471 help
472 This option provides a glob_match function for performing
473 simple text pattern matching. It originated in the ATA code
474 to blacklist particular drive models, but other device drivers
475 may need similar functionality.
476
477 All drivers in the Linux kernel tree that require this function
478 should automatically select this option. Say N unless you
479 are compiling an out-of tree driver which tells you that it
480 depends on this.
481
George Spelvin5f9be822014-08-06 16:09:25 -0700482config GLOB_SELFTEST
Geert Uytterhoevenba95b042017-02-24 15:00:52 -0800483 tristate "glob self-test on init"
George Spelvin5f9be822014-08-06 16:09:25 -0700484 depends on GLOB
485 help
486 This option enables a simple self-test of the glob_match
487 function on startup. It is primarily useful for people
488 working on the code to ensure they haven't introduced any
489 regressions.
490
491 It only adds a little bit of code and slows kernel boot (or
492 module load) by a small amount, so you're welcome to play with
493 it, but you probably don't need it.
494
Geert Uytterhoevene9cc8bd2009-03-04 14:53:30 +0800495#
496# Netlink attribute parsing support is select'ed if needed
497#
498config NLATTR
499 bool
500
Paul Mackerras09d4e0e2009-06-12 21:10:05 +0000501#
502# Generic 64-bit atomic support is selected if needed
503#
504config GENERIC_ATOMIC64
505 bool
506
Philipp Reisnerb411b362009-09-25 16:07:19 -0700507config LRU_CACHE
508 tristate
509
David Millerc6df4b12012-02-02 00:17:54 +0200510config CLZ_TAB
511 bool
512
Arend van Spriel10f81132011-05-31 11:22:16 +0200513config CORDIC
Michael Wittend89ce932011-07-29 12:59:51 +0000514 tristate "CORDIC algorithm"
Arend van Spriel10f81132011-05-31 11:22:16 +0200515 help
Michael Witten435a95c2011-07-29 13:36:04 +0000516 This option provides an implementation of the CORDIC algorithm;
517 calculations are in fixed point. Module will be called cordic.
Arend van Spriel10f81132011-05-31 11:22:16 +0200518
Aneesh V9c1c21a2012-04-27 17:54:03 +0530519config DDR
520 bool "JEDEC DDR data"
521 help
522 Data from JEDEC specs for DDR SDRAM memories,
523 particularly the AC timing parameters and addressing
524 information. This data is useful for drivers handling
525 DDR SDRAM controllers.
526
Christoph Hellwig511cbce2015-11-10 14:56:14 +0100527config IRQ_POLL
528 bool "IRQ polling library"
529 help
530 Helper library to poll interrupt mitigation using polling.
531
Dmitry Kasatkind9c46b12011-08-31 14:05:16 +0300532config MPILIB
Dmitry Kasatkin2e5f0942012-01-17 17:12:06 +0200533 tristate
David Millerc6df4b12012-02-02 00:17:54 +0200534 select CLZ_TAB
Dmitry Kasatkind9c46b12011-08-31 14:05:16 +0300535 help
536 Multiprecision maths library from GnuPG.
537 It is used to implement RSA digital signature verification,
538 which is used by IMA/EVM digital signature extension.
539
Dmitry Kasatkin5e8898e2012-01-17 17:12:03 +0200540config SIGNATURE
Dmitry Kasatkin2e5f0942012-01-17 17:12:06 +0200541 tristate
Dmitry Kasatkin0d1f64f2014-07-11 18:59:45 +0300542 depends on KEYS
543 select CRYPTO
Dmitry Kasatkinbe440ec2012-01-17 17:12:04 +0200544 select CRYPTO_SHA1
Dmitry Kasatkin051dbb92011-10-14 15:25:16 +0300545 select MPILIB
546 help
547 Digital signature verification. Currently only RSA is supported.
548 Implementation is done using GnuPG MPI library
549
David Daneyab253832012-07-05 18:12:38 +0200550#
551# libfdt files, only selected if needed.
552#
553config LIBFDT
554 bool
555
David Howellsa77ad6e2012-09-21 23:30:46 +0100556config OID_REGISTRY
557 tristate
558 help
559 Enable fast lookup object identifier registry.
560
Matthew Garrett0635eb82013-04-15 13:09:45 -0700561config UCS2_STRING
562 tristate
563
Geert Uytterhoevenee89bd62013-06-09 11:46:43 +0200564source "lib/fonts/Kconfig"
565
Robert Jarzmikf8bcbe62015-08-08 10:44:10 +0200566config SG_SPLIT
567 def_bool n
568 help
Geert Uytterhoeven7f7e92f2015-09-04 12:45:05 +0200569 Provides a helper to split scatterlists into chunks, each chunk being
570 a scatterlist. This should be selected by a driver or an API which
571 whishes to split a scatterlist amongst multiple DMA channels.
Robert Jarzmikf8bcbe62015-08-08 10:44:10 +0200572
Ming Lin9b1d6c82016-04-04 14:48:11 -0700573config SG_POOL
574 def_bool n
575 help
576 Provides a helper to allocate chained scatterlists. This should be
577 selected by a driver or an API which whishes to allocate chained
578 scatterlist.
579
Laura Abbott308c09f2014-08-08 14:23:25 -0700580#
581# sg chaining option
582#
583
584config ARCH_HAS_SG_CHAIN
585 def_bool n
586
Ross Zwisler61031952015-06-25 03:08:39 -0400587config ARCH_HAS_PMEM_API
588 bool
589
Dan Williams0aed55a2017-05-29 12:22:50 -0700590config ARCH_HAS_UACCESS_FLUSHCACHE
591 bool
592
Dan Williams522239b2018-05-22 23:17:03 -0700593config ARCH_HAS_UACCESS_MCSAFE
594 bool
595
Alexander Potapenkocd110162016-03-25 14:22:08 -0700596config STACKDEPOT
597 bool
598 select STACKTRACE
599
Omar Sandoval88459642016-09-17 08:38:44 -0600600config SBITMAP
601 bool
602
Jiri Pirko44091d22017-02-03 10:29:06 +0100603config PARMAN
Geert Uytterhoeven9d25af62017-02-24 11:25:55 +0100604 tristate "parman" if COMPILE_TEST
Jiri Pirko44091d22017-02-03 10:29:06 +0100605
Chris Wilsoncf4a7202016-12-22 14:45:14 +0000606config PRIME_NUMBERS
Dave Airlie64a57712017-02-24 12:11:21 +1000607 tristate
Chris Wilsoncf4a7202016-12-22 14:45:14 +0000608
Matthew Wilcox03270c12017-09-08 16:13:52 -0700609config STRING_SELFTEST
Geert Uytterhoevend6b28e02017-11-17 15:27:56 -0800610 tristate "Test string functions"
Matthew Wilcox03270c12017-09-08 16:13:52 -0700611
Thomas Graf2de4ff72005-06-23 20:49:30 -0700612endmenu
Palmer Dabbeltb35cd982017-05-23 10:28:26 -0700613
Matt Redfearne3d59802018-04-11 08:50:17 +0100614config GENERIC_LIB_ASHLDI3
Palmer Dabbeltb35cd982017-05-23 10:28:26 -0700615 bool
616
Matt Redfearne3d59802018-04-11 08:50:17 +0100617config GENERIC_LIB_ASHRDI3
Palmer Dabbeltb35cd982017-05-23 10:28:26 -0700618 bool
619
Matt Redfearne3d59802018-04-11 08:50:17 +0100620config GENERIC_LIB_LSHRDI3
Palmer Dabbeltb35cd982017-05-23 10:28:26 -0700621 bool
622
Matt Redfearne3d59802018-04-11 08:50:17 +0100623config GENERIC_LIB_MULDI3
Palmer Dabbeltb35cd982017-05-23 10:28:26 -0700624 bool
625
Matt Redfearne3d59802018-04-11 08:50:17 +0100626config GENERIC_LIB_CMPDI2
Palmer Dabbeltb35cd982017-05-23 10:28:26 -0700627 bool
628
Matt Redfearne3d59802018-04-11 08:50:17 +0100629config GENERIC_LIB_UCMPDI2
Palmer Dabbeltb35cd982017-05-23 10:28:26 -0700630 bool