11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# Library configuration 31da177e4SLinus Torvalds# 41da177e4SLinus Torvalds 54370aa4aSLai Jiangshanconfig BINARY_PRINTF 64370aa4aSLai Jiangshan def_bool n 74370aa4aSLai Jiangshan 81da177e4SLinus Torvaldsmenu "Library routines" 91da177e4SLinus Torvalds 10f5e70d0fSDavid Woodhouseconfig RAID6_PQ 11f5e70d0fSDavid Woodhouse tristate 12f5e70d0fSDavid Woodhouse 13a5cfc1ecSAkinobu Mitaconfig BITREVERSE 14a5cfc1ecSAkinobu Mita tristate 15a5cfc1ecSAkinobu Mita 16556d2f05SYalin Wangconfig HAVE_ARCH_BITREVERSE 17841c0090SChristoph Jaeger bool 18556d2f05SYalin Wang default n 19556d2f05SYalin Wang depends on BITREVERSE 20556d2f05SYalin Wang help 219e522c0dSAndrew Morton This option enables the use of hardware bit-reversal instructions on 229e522c0dSAndrew Morton architectures which support such operations. 23556d2f05SYalin Wang 248759ef32SOskar Schirmerconfig RATIONAL 256341e62bSChristoph Jaeger bool 268759ef32SOskar Schirmer 272922585bSDavid S. Millerconfig GENERIC_STRNCPY_FROM_USER 282922585bSDavid S. Miller bool 292922585bSDavid S. Miller 30a08c5356SLinus Torvaldsconfig GENERIC_STRNLEN_USER 31a08c5356SLinus Torvalds bool 32a08c5356SLinus Torvalds 334cd5773aSAndy Shevchenkoconfig GENERIC_NET_UTILS 344cd5773aSAndy Shevchenko bool 354cd5773aSAndy Shevchenko 3619870defSAlexander van Heukelumconfig GENERIC_FIND_FIRST_BIT 379ba16087SJan Beulich bool 3819870defSAlexander van Heukelum 39b923650bSMichael S. Tsirkinconfig NO_GENERIC_PCI_IOPORT_MAP 40b923650bSMichael S. Tsirkin bool 41b923650bSMichael S. Tsirkin 4266eab4dfSMichael S. Tsirkinconfig GENERIC_PCI_IOMAP 4366eab4dfSMichael S. Tsirkin bool 4466eab4dfSMichael S. Tsirkin 454673ca8eSMichael S. Tsirkinconfig GENERIC_IOMAP 464673ca8eSMichael S. Tsirkin bool 4766eab4dfSMichael S. Tsirkin select GENERIC_PCI_IOMAP 484673ca8eSMichael S. Tsirkin 49087fafd1SRichard Weinbergerconfig GENERIC_IO 506341e62bSChristoph Jaeger bool 51087fafd1SRichard Weinberger default n 52087fafd1SRichard Weinberger 534ccf4beaSWolfram Sangconfig STMP_DEVICE 544ccf4beaSWolfram Sang bool 554ccf4beaSWolfram Sang 56bc08b449SLinus Torvaldsconfig ARCH_USE_CMPXCHG_LOCKREF 57bc08b449SLinus Torvalds bool 58bc08b449SLinus Torvalds 5972d93104SLinus Torvaldsconfig ARCH_HAS_FAST_MULTIPLIER 6072d93104SLinus Torvalds bool 6172d93104SLinus Torvalds 621da177e4SLinus Torvaldsconfig CRC_CCITT 631da177e4SLinus Torvalds tristate "CRC-CCITT functions" 641da177e4SLinus Torvalds help 651da177e4SLinus Torvalds This option is provided for the case where no in-kernel-tree 661da177e4SLinus Torvalds modules require CRC-CCITT functions, but a module built outside 671da177e4SLinus Torvalds the kernel tree does. Such modules that use library CRC-CCITT 681da177e4SLinus Torvalds functions require M here. 691da177e4SLinus Torvalds 707657ec1fSEvgeniy Polyakovconfig CRC16 717657ec1fSEvgeniy Polyakov tristate "CRC16 functions" 727657ec1fSEvgeniy Polyakov help 737657ec1fSEvgeniy Polyakov This option is provided for the case where no in-kernel-tree 747657ec1fSEvgeniy Polyakov modules require CRC16 functions, but a module built outside 757657ec1fSEvgeniy Polyakov the kernel tree does. Such modules that use library CRC16 767657ec1fSEvgeniy Polyakov functions require M here. 777657ec1fSEvgeniy Polyakov 78f11f594eSMartin K. Petersenconfig CRC_T10DIF 79f11f594eSMartin K. Petersen tristate "CRC calculation for the T10 Data Integrity Field" 8068411521SHerbert Xu select CRYPTO 8168411521SHerbert Xu select CRYPTO_CRCT10DIF 82f11f594eSMartin K. Petersen help 83f11f594eSMartin K. Petersen This option is only needed if a module that's not in the 84f11f594eSMartin K. Petersen kernel tree needs to calculate CRC checks for use with the 85f11f594eSMartin K. Petersen SCSI data integrity subsystem. 86f11f594eSMartin K. Petersen 873e7cbae7SIvo van Doornconfig CRC_ITU_T 883e7cbae7SIvo van Doorn tristate "CRC ITU-T V.41 functions" 893e7cbae7SIvo van Doorn help 903e7cbae7SIvo van Doorn This option is provided for the case where no in-kernel-tree 913e7cbae7SIvo van Doorn modules require CRC ITU-T V.41 functions, but a module built outside 923e7cbae7SIvo van Doorn the kernel tree does. Such modules that use library CRC ITU-T V.41 933e7cbae7SIvo van Doorn functions require M here. 943e7cbae7SIvo van Doorn 951da177e4SLinus Torvaldsconfig CRC32 9646c5801eSDarrick J. Wong tristate "CRC32/CRC32c functions" 971da177e4SLinus Torvalds default y 98906d66dfSAkinobu Mita select BITREVERSE 991da177e4SLinus Torvalds help 1001da177e4SLinus Torvalds This option is provided for the case where no in-kernel-tree 10146c5801eSDarrick J. Wong modules require CRC32/CRC32c functions, but a module built outside 10246c5801eSDarrick J. Wong the kernel tree does. Such modules that use library CRC32/CRC32c 10346c5801eSDarrick J. Wong functions require M here. 1041da177e4SLinus Torvalds 1053863ef31SBob Pearsonconfig CRC32_SELFTEST 1065fb7f874SGeert Uytterhoeven tristate "CRC32 perform self test on init" 1073863ef31SBob Pearson depends on CRC32 1083863ef31SBob Pearson help 1093863ef31SBob Pearson This option enables the CRC32 library functions to perform a 1103863ef31SBob Pearson self test on initialization. The self test computes crc32_le 1113863ef31SBob Pearson and crc32_be over byte strings with random alignment and length 1123863ef31SBob Pearson and computes the total elapsed time and number of bytes processed. 1133863ef31SBob Pearson 1145cde7656SDarrick J. Wongchoice 1155cde7656SDarrick J. Wong prompt "CRC32 implementation" 1165cde7656SDarrick J. Wong depends on CRC32 1175cde7656SDarrick J. Wong default CRC32_SLICEBY8 11882edb4baSDarrick J. Wong help 11982edb4baSDarrick J. Wong This option allows a kernel builder to override the default choice 12082edb4baSDarrick J. Wong of CRC32 algorithm. Choose the default ("slice by 8") unless you 12182edb4baSDarrick J. Wong know that you need one of the others. 1225cde7656SDarrick J. Wong 1235cde7656SDarrick J. Wongconfig CRC32_SLICEBY8 1245cde7656SDarrick J. Wong bool "Slice by 8 bytes" 1255cde7656SDarrick J. Wong help 1265cde7656SDarrick J. Wong Calculate checksum 8 bytes at a time with a clever slicing algorithm. 1275cde7656SDarrick J. Wong This is the fastest algorithm, but comes with a 8KiB lookup table. 1285cde7656SDarrick J. Wong Most modern processors have enough cache to hold this table without 1295cde7656SDarrick J. Wong thrashing the cache. 1305cde7656SDarrick J. Wong 1315cde7656SDarrick J. Wong This is the default implementation choice. Choose this one unless 1325cde7656SDarrick J. Wong you have a good reason not to. 1335cde7656SDarrick J. Wong 1345cde7656SDarrick J. Wongconfig CRC32_SLICEBY4 1355cde7656SDarrick J. Wong bool "Slice by 4 bytes" 1365cde7656SDarrick J. Wong help 1375cde7656SDarrick J. Wong Calculate checksum 4 bytes at a time with a clever slicing algorithm. 1385cde7656SDarrick J. Wong This is a bit slower than slice by 8, but has a smaller 4KiB lookup 1395cde7656SDarrick J. Wong table. 1405cde7656SDarrick J. Wong 1415cde7656SDarrick J. Wong Only choose this option if you know what you are doing. 1425cde7656SDarrick J. Wong 1435cde7656SDarrick J. Wongconfig CRC32_SARWATE 1445cde7656SDarrick J. Wong bool "Sarwate's Algorithm (one byte at a time)" 1455cde7656SDarrick J. Wong help 1465cde7656SDarrick J. Wong Calculate checksum a byte at a time using Sarwate's algorithm. This 1475cde7656SDarrick J. Wong is not particularly fast, but has a small 256 byte lookup table. 1485cde7656SDarrick J. Wong 1495cde7656SDarrick J. Wong Only choose this option if you know what you are doing. 1505cde7656SDarrick J. Wong 1515cde7656SDarrick J. Wongconfig CRC32_BIT 1525cde7656SDarrick J. Wong bool "Classic Algorithm (one bit at a time)" 1535cde7656SDarrick J. Wong help 1545cde7656SDarrick J. Wong Calculate checksum one bit at a time. This is VERY slow, but has 1555cde7656SDarrick J. Wong no lookup table. This is provided as a debugging option. 1565cde7656SDarrick J. Wong 1575cde7656SDarrick J. Wong Only choose this option if you are debugging crc32. 1585cde7656SDarrick J. Wong 1595cde7656SDarrick J. Wongendchoice 1605cde7656SDarrick J. Wong 1610cbaa448SJeremy Kerrconfig CRC4 1620cbaa448SJeremy Kerr tristate "CRC4 functions" 1630cbaa448SJeremy Kerr help 1640cbaa448SJeremy Kerr This option is provided for the case where no in-kernel-tree 1650cbaa448SJeremy Kerr modules require CRC4 functions, but a module built outside 1660cbaa448SJeremy Kerr the kernel tree does. Such modules that use library CRC4 1670cbaa448SJeremy Kerr functions require M here. 1680cbaa448SJeremy Kerr 169ad241528SJan Nikitenkoconfig CRC7 170ad241528SJan Nikitenko tristate "CRC7 functions" 171ad241528SJan Nikitenko help 172ad241528SJan Nikitenko This option is provided for the case where no in-kernel-tree 173ad241528SJan Nikitenko modules require CRC7 functions, but a module built outside 174ad241528SJan Nikitenko the kernel tree does. Such modules that use library CRC7 175ad241528SJan Nikitenko functions require M here. 176ad241528SJan Nikitenko 1771da177e4SLinus Torvaldsconfig LIBCRC32C 1781da177e4SLinus Torvalds tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check" 17993027354SHerbert Xu select CRYPTO 18069c35efcSHerbert Xu select CRYPTO_CRC32C 1811da177e4SLinus Torvalds help 1821da177e4SLinus Torvalds This option is provided for the case where no in-kernel-tree 1831da177e4SLinus Torvalds modules require CRC32c functions, but a module built outside the 1841da177e4SLinus Torvalds kernel tree does. Such modules that use library CRC32c functions 1851da177e4SLinus Torvalds require M here. See Castagnoli93. 1861da177e4SLinus Torvalds Module will be libcrc32c. 1871da177e4SLinus Torvalds 1887150962dSArend van Sprielconfig CRC8 1897150962dSArend van Spriel tristate "CRC8 function" 1907150962dSArend van Spriel help 1917150962dSArend van Spriel This option provides CRC8 function. Drivers may select this 1927150962dSArend van Spriel when they need to do cyclic redundancy check according CRC8 1937150962dSArend van Spriel algorithm. Module will be called crc8. 1947150962dSArend van Spriel 1955d240522SNick Terrellconfig XXHASH 1965d240522SNick Terrell tristate 1975d240522SNick Terrell 198e65e1fc2SAl Viroconfig AUDIT_GENERIC 199e65e1fc2SAl Viro bool 200e65e1fc2SAl Viro depends on AUDIT && !AUDIT_ARCH 201e65e1fc2SAl Viro default y 202e65e1fc2SAl Viro 2034b588411SAKASHI Takahiroconfig AUDIT_ARCH_COMPAT_GENERIC 2044b588411SAKASHI Takahiro bool 2054b588411SAKASHI Takahiro default n 2064b588411SAKASHI Takahiro 2074b588411SAKASHI Takahiroconfig AUDIT_COMPAT_GENERIC 2084b588411SAKASHI Takahiro bool 2094b588411SAKASHI Takahiro depends on AUDIT_GENERIC && AUDIT_ARCH_COMPAT_GENERIC && COMPAT 2104b588411SAKASHI Takahiro default y 2114b588411SAKASHI Takahiro 212a6a9c0f1SDaniel Borkmannconfig RANDOM32_SELFTEST 213a6a9c0f1SDaniel Borkmann bool "PRNG perform self test on init" 214a6a9c0f1SDaniel Borkmann default n 215a6a9c0f1SDaniel Borkmann help 216a6a9c0f1SDaniel Borkmann This option enables the 32 bit PRNG library functions to perform a 217a6a9c0f1SDaniel Borkmann self test on initialization. 218a6a9c0f1SDaniel Borkmann 2191da177e4SLinus Torvalds# 2201da177e4SLinus Torvalds# compression support is select'ed if needed 2211da177e4SLinus Torvalds# 2222da572c9SDan Streetmanconfig 842_COMPRESS 2235b571677SArnd Bergmann select CRC32 2242da572c9SDan Streetman tristate 2252da572c9SDan Streetman 2262da572c9SDan Streetmanconfig 842_DECOMPRESS 2275b571677SArnd Bergmann select CRC32 2282da572c9SDan Streetman tristate 2292da572c9SDan Streetman 2301da177e4SLinus Torvaldsconfig ZLIB_INFLATE 2311da177e4SLinus Torvalds tristate 2321da177e4SLinus Torvalds 2331da177e4SLinus Torvaldsconfig ZLIB_DEFLATE 2341da177e4SLinus Torvalds tristate 2351fd4e5c3SAndrew Morton select BITREVERSE 2361da177e4SLinus Torvalds 23764c70b1cSRichard Purdieconfig LZO_COMPRESS 23864c70b1cSRichard Purdie tristate 23964c70b1cSRichard Purdie 24064c70b1cSRichard Purdieconfig LZO_DECOMPRESS 24164c70b1cSRichard Purdie tristate 24264c70b1cSRichard Purdie 243c72ac7a1SChanho Minconfig LZ4_COMPRESS 244c72ac7a1SChanho Min tristate 245c72ac7a1SChanho Min 246c72ac7a1SChanho Minconfig LZ4HC_COMPRESS 247c72ac7a1SChanho Min tristate 248c72ac7a1SChanho Min 249e76e1fdfSKyungsik Leeconfig LZ4_DECOMPRESS 250e76e1fdfSKyungsik Lee tristate 251e76e1fdfSKyungsik Lee 25273f3d1b4SNick Terrellconfig ZSTD_COMPRESS 25373f3d1b4SNick Terrell select XXHASH 25473f3d1b4SNick Terrell tristate 25573f3d1b4SNick Terrell 25673f3d1b4SNick Terrellconfig ZSTD_DECOMPRESS 25773f3d1b4SNick Terrell select XXHASH 25873f3d1b4SNick Terrell tristate 25973f3d1b4SNick Terrell 26024fa0402SLasse Collinsource "lib/xz/Kconfig" 26124fa0402SLasse Collin 2621da177e4SLinus Torvalds# 263c8531ab3SH. Peter Anvin# These all provide a common interface (hence the apparent duplication with 264c8531ab3SH. Peter Anvin# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.) 265c8531ab3SH. Peter Anvin# 266c8531ab3SH. Peter Anvinconfig DECOMPRESS_GZIP 2677856a16eSH. Peter Anvin select ZLIB_INFLATE 268c8531ab3SH. Peter Anvin tristate 269c8531ab3SH. Peter Anvin 270c8531ab3SH. Peter Anvinconfig DECOMPRESS_BZIP2 271c8531ab3SH. Peter Anvin tristate 272c8531ab3SH. Peter Anvin 273c8531ab3SH. Peter Anvinconfig DECOMPRESS_LZMA 274c8531ab3SH. Peter Anvin tristate 275c8531ab3SH. Peter Anvin 2763ebe1243SLasse Collinconfig DECOMPRESS_XZ 2773ebe1243SLasse Collin select XZ_DEC 2783ebe1243SLasse Collin tristate 2793ebe1243SLasse Collin 280cacb246fSAlbin Tonnerreconfig DECOMPRESS_LZO 281cacb246fSAlbin Tonnerre select LZO_DECOMPRESS 282cacb246fSAlbin Tonnerre tristate 283cacb246fSAlbin Tonnerre 284e76e1fdfSKyungsik Leeconfig DECOMPRESS_LZ4 285e76e1fdfSKyungsik Lee select LZ4_DECOMPRESS 286e76e1fdfSKyungsik Lee tristate 287e76e1fdfSKyungsik Lee 288c8531ab3SH. Peter Anvin# 289f14f75b8SJes Sorensen# Generic allocator support is selected if needed 290f14f75b8SJes Sorensen# 291f14f75b8SJes Sorensenconfig GENERIC_ALLOCATOR 2926341e62bSChristoph Jaeger bool 293f14f75b8SJes Sorensen 294f14f75b8SJes Sorensen# 2951da177e4SLinus Torvalds# reed solomon support is select'ed if needed 2961da177e4SLinus Torvalds# 2971da177e4SLinus Torvaldsconfig REED_SOLOMON 2981da177e4SLinus Torvalds tristate 2991da177e4SLinus Torvalds 3001da177e4SLinus Torvaldsconfig REED_SOLOMON_ENC8 3016341e62bSChristoph Jaeger bool 3021da177e4SLinus Torvalds 3031da177e4SLinus Torvaldsconfig REED_SOLOMON_DEC8 3046341e62bSChristoph Jaeger bool 3051da177e4SLinus Torvalds 3061da177e4SLinus Torvaldsconfig REED_SOLOMON_ENC16 3076341e62bSChristoph Jaeger bool 3081da177e4SLinus Torvalds 3091da177e4SLinus Torvaldsconfig REED_SOLOMON_DEC16 3106341e62bSChristoph Jaeger bool 3111da177e4SLinus Torvalds 312f7704347SDavid S. Miller# 313437aa565SIvan Djelic# BCH support is selected if needed 314437aa565SIvan Djelic# 315437aa565SIvan Djelicconfig BCH 316437aa565SIvan Djelic tristate 317437aa565SIvan Djelic 318437aa565SIvan Djelicconfig BCH_CONST_PARAMS 3196341e62bSChristoph Jaeger bool 320437aa565SIvan Djelic help 321437aa565SIvan Djelic Drivers may select this option to force specific constant 322437aa565SIvan Djelic values for parameters 'm' (Galois field order) and 't' 323437aa565SIvan Djelic (error correction capability). Those specific values must 324437aa565SIvan Djelic be set by declaring default values for symbols BCH_CONST_M 325437aa565SIvan Djelic and BCH_CONST_T. 326437aa565SIvan Djelic Doing so will enable extra compiler optimizations, 327437aa565SIvan Djelic improving encoding and decoding performance up to 2x for 328437aa565SIvan Djelic usual (m,t) values (typically such that m*t < 200). 329437aa565SIvan Djelic When this option is selected, the BCH library supports 330437aa565SIvan Djelic only a single (m,t) configuration. This is mainly useful 331437aa565SIvan Djelic for NAND flash board drivers requiring known, fixed BCH 332437aa565SIvan Djelic parameters. 333437aa565SIvan Djelic 334437aa565SIvan Djelicconfig BCH_CONST_M 335437aa565SIvan Djelic int 336437aa565SIvan Djelic range 5 15 337437aa565SIvan Djelic help 338437aa565SIvan Djelic Constant value for Galois field order 'm'. If 'k' is the 339437aa565SIvan Djelic number of data bits to protect, 'm' should be chosen such 340437aa565SIvan Djelic that (k + m*t) <= 2**m - 1. 341437aa565SIvan Djelic Drivers should declare a default value for this symbol if 342437aa565SIvan Djelic they select option BCH_CONST_PARAMS. 343437aa565SIvan Djelic 344437aa565SIvan Djelicconfig BCH_CONST_T 345437aa565SIvan Djelic int 346437aa565SIvan Djelic help 347437aa565SIvan Djelic Constant value for error correction capability in bits 't'. 348437aa565SIvan Djelic Drivers should declare a default value for this symbol if 349437aa565SIvan Djelic they select option BCH_CONST_PARAMS. 350437aa565SIvan Djelic 351437aa565SIvan Djelic# 352f7704347SDavid S. Miller# Textsearch support is select'ed if needed 353f7704347SDavid S. Miller# 3542de4ff7bSThomas Grafconfig TEXTSEARCH 3556341e62bSChristoph Jaeger bool 3561da177e4SLinus Torvalds 357df3fb93aSThomas Grafconfig TEXTSEARCH_KMP 358f7704347SDavid S. Miller tristate 359df3fb93aSThomas Graf 3608082e4edSPablo Neira Ayusoconfig TEXTSEARCH_BM 36129cb9f9cSDavid S. Miller tristate 3628082e4edSPablo Neira Ayuso 3636408f79cSThomas Grafconfig TEXTSEARCH_FSM 364f7704347SDavid S. Miller tristate 3656408f79cSThomas Graf 3665db53f3eSJoern Engelconfig BTREE 3676341e62bSChristoph Jaeger bool 3685db53f3eSJoern Engel 369a88cc108SChris Wilsonconfig INTERVAL_TREE 3706341e62bSChristoph Jaeger bool 371a88cc108SChris Wilson help 372a88cc108SChris Wilson Simple, embeddable, interval-tree. Can find the start of an 373a88cc108SChris Wilson overlapping range in log(n) time and then iterate over all 374a88cc108SChris Wilson overlapping nodes. The algorithm is implemented as an 375a88cc108SChris Wilson augmented rbtree. 376a88cc108SChris Wilson 377a88cc108SChris Wilson See: 378a88cc108SChris Wilson 379a88cc108SChris Wilson Documentation/rbtree.txt 380a88cc108SChris Wilson 381a88cc108SChris Wilson for more information. 382a88cc108SChris Wilson 38357578c2eSMatthew Wilcoxconfig RADIX_TREE_MULTIORDER 38457578c2eSMatthew Wilcox bool 38557578c2eSMatthew Wilcox 3863cb98950SDavid Howellsconfig ASSOCIATIVE_ARRAY 3873cb98950SDavid Howells bool 3883cb98950SDavid Howells help 3893cb98950SDavid Howells Generic associative array. Can be searched and iterated over whilst 3903cb98950SDavid Howells it is being modified. It is also reasonably quick to search and 3913cb98950SDavid Howells modify. The algorithms are non-recursive, and the trees are highly 3923cb98950SDavid Howells capacious. 3933cb98950SDavid Howells 3943cb98950SDavid Howells See: 3953cb98950SDavid Howells 3963cb98950SDavid Howells Documentation/assoc_array.txt 3973cb98950SDavid Howells 3983cb98950SDavid Howells for more information. 3993cb98950SDavid Howells 4005ea81769SAl Viroconfig HAS_IOMEM 4016341e62bSChristoph Jaeger bool 4025ea81769SAl Viro depends on !NO_IOMEM 403087fafd1SRichard Weinberger select GENERIC_IO 4045ea81769SAl Viro default y 4055ea81769SAl Viro 406ce816fa8SUwe Kleine-Königconfig HAS_IOPORT_MAP 4076341e62bSChristoph Jaeger bool 408ce816fa8SUwe Kleine-König depends on HAS_IOMEM && !NO_IOPORT_MAP 409ee36c2bfSAl Viro default y 410ee36c2bfSAl Viro 411411f0f3eSHeiko Carstensconfig HAS_DMA 4126341e62bSChristoph Jaeger bool 413411f0f3eSHeiko Carstens depends on !NO_DMA 414411f0f3eSHeiko Carstens default y 415411f0f3eSHeiko Carstens 4167844572cSBart Van Asscheconfig DMA_NOOP_OPS 4177844572cSBart Van Assche bool 4187844572cSBart Van Assche depends on HAS_DMA && (!64BIT || ARCH_DMA_ADDR_T_64BIT) 4197844572cSBart Van Assche default n 4207844572cSBart Van Assche 421551199acSBart Van Asscheconfig DMA_VIRT_OPS 422551199acSBart Van Assche bool 423551199acSBart Van Assche depends on HAS_DMA && (!64BIT || ARCH_DMA_ADDR_T_64BIT) 424551199acSBart Van Assche default n 425551199acSBart Van Assche 426928923c7SGeert Uytterhoevenconfig CHECK_SIGNATURE 427928923c7SGeert Uytterhoeven bool 428928923c7SGeert Uytterhoeven 429aab46da0SRusty Russellconfig CPUMASK_OFFSTACK 430aab46da0SRusty Russell bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS 431aab46da0SRusty Russell help 432aab46da0SRusty Russell Use dynamic allocation for cpumask_var_t, instead of putting 433aab46da0SRusty Russell them on the stack. This is a bit more expensive, but avoids 434aab46da0SRusty Russell stack overflow. 435aab46da0SRusty Russell 436c39649c3SBen Hutchingsconfig CPU_RMAP 437c39649c3SBen Hutchings bool 438c39649c3SBen Hutchings depends on SMP 439c39649c3SBen Hutchings 44075957ba3STom Herbertconfig DQL 44175957ba3STom Herbert bool 44275957ba3STom Herbert 443b0125085SGeorge Spelvinconfig GLOB 444b0125085SGeorge Spelvin bool 445b0125085SGeorge Spelvin# This actually supports modular compilation, but the module overhead 446b0125085SGeorge Spelvin# is ridiculous for the amount of code involved. Until an out-of-tree 447b0125085SGeorge Spelvin# driver asks for it, we'll just link it directly it into the kernel 448b0125085SGeorge Spelvin# when required. Since we're ignoring out-of-tree users, there's also 449b0125085SGeorge Spelvin# no need bother prompting for a manual decision: 450b0125085SGeorge Spelvin# prompt "glob_match() function" 451b0125085SGeorge Spelvin help 452b0125085SGeorge Spelvin This option provides a glob_match function for performing 453b0125085SGeorge Spelvin simple text pattern matching. It originated in the ATA code 454b0125085SGeorge Spelvin to blacklist particular drive models, but other device drivers 455b0125085SGeorge Spelvin may need similar functionality. 456b0125085SGeorge Spelvin 457b0125085SGeorge Spelvin All drivers in the Linux kernel tree that require this function 458b0125085SGeorge Spelvin should automatically select this option. Say N unless you 459b0125085SGeorge Spelvin are compiling an out-of tree driver which tells you that it 460b0125085SGeorge Spelvin depends on this. 461b0125085SGeorge Spelvin 4625f9be824SGeorge Spelvinconfig GLOB_SELFTEST 463ba95b045SGeert Uytterhoeven tristate "glob self-test on init" 4645f9be824SGeorge Spelvin depends on GLOB 4655f9be824SGeorge Spelvin help 4665f9be824SGeorge Spelvin This option enables a simple self-test of the glob_match 4675f9be824SGeorge Spelvin function on startup. It is primarily useful for people 4685f9be824SGeorge Spelvin working on the code to ensure they haven't introduced any 4695f9be824SGeorge Spelvin regressions. 4705f9be824SGeorge Spelvin 4715f9be824SGeorge Spelvin It only adds a little bit of code and slows kernel boot (or 4725f9be824SGeorge Spelvin module load) by a small amount, so you're welcome to play with 4735f9be824SGeorge Spelvin it, but you probably don't need it. 4745f9be824SGeorge Spelvin 475e9cc8bddSGeert Uytterhoeven# 476e9cc8bddSGeert Uytterhoeven# Netlink attribute parsing support is select'ed if needed 477e9cc8bddSGeert Uytterhoeven# 478e9cc8bddSGeert Uytterhoevenconfig NLATTR 479e9cc8bddSGeert Uytterhoeven bool 480e9cc8bddSGeert Uytterhoeven 48109d4e0edSPaul Mackerras# 48209d4e0edSPaul Mackerras# Generic 64-bit atomic support is selected if needed 48309d4e0edSPaul Mackerras# 48409d4e0edSPaul Mackerrasconfig GENERIC_ATOMIC64 48509d4e0edSPaul Mackerras bool 48609d4e0edSPaul Mackerras 487b411b363SPhilipp Reisnerconfig LRU_CACHE 488b411b363SPhilipp Reisner tristate 489b411b363SPhilipp Reisner 490c6df4b17SDavid Millerconfig CLZ_TAB 491c6df4b17SDavid Miller bool 492c6df4b17SDavid Miller 49310f8113eSArend van Sprielconfig CORDIC 494d89ce936SMichael Witten tristate "CORDIC algorithm" 49510f8113eSArend van Spriel help 496435a95c5SMichael Witten This option provides an implementation of the CORDIC algorithm; 497435a95c5SMichael Witten calculations are in fixed point. Module will be called cordic. 49810f8113eSArend van Spriel 4999c1c21a0SAneesh Vconfig DDR 5009c1c21a0SAneesh V bool "JEDEC DDR data" 5019c1c21a0SAneesh V help 5029c1c21a0SAneesh V Data from JEDEC specs for DDR SDRAM memories, 5039c1c21a0SAneesh V particularly the AC timing parameters and addressing 5049c1c21a0SAneesh V information. This data is useful for drivers handling 5059c1c21a0SAneesh V DDR SDRAM controllers. 5069c1c21a0SAneesh V 507511cbce2SChristoph Hellwigconfig IRQ_POLL 508511cbce2SChristoph Hellwig bool "IRQ polling library" 509511cbce2SChristoph Hellwig help 510511cbce2SChristoph Hellwig Helper library to poll interrupt mitigation using polling. 511511cbce2SChristoph Hellwig 512d9c46b18SDmitry Kasatkinconfig MPILIB 5132e5f094bSDmitry Kasatkin tristate 514c6df4b17SDavid Miller select CLZ_TAB 515d9c46b18SDmitry Kasatkin help 516d9c46b18SDmitry Kasatkin Multiprecision maths library from GnuPG. 517d9c46b18SDmitry Kasatkin It is used to implement RSA digital signature verification, 518d9c46b18SDmitry Kasatkin which is used by IMA/EVM digital signature extension. 519d9c46b18SDmitry Kasatkin 5205e8898e9SDmitry Kasatkinconfig SIGNATURE 5212e5f094bSDmitry Kasatkin tristate 5220d1f64f6SDmitry Kasatkin depends on KEYS 5230d1f64f6SDmitry Kasatkin select CRYPTO 524be440ec7SDmitry Kasatkin select CRYPTO_SHA1 525051dbb91SDmitry Kasatkin select MPILIB 526051dbb91SDmitry Kasatkin help 527051dbb91SDmitry Kasatkin Digital signature verification. Currently only RSA is supported. 528051dbb91SDmitry Kasatkin Implementation is done using GnuPG MPI library 529051dbb91SDmitry Kasatkin 530ab253839SDavid Daney# 531ab253839SDavid Daney# libfdt files, only selected if needed. 532ab253839SDavid Daney# 533ab253839SDavid Daneyconfig LIBFDT 534ab253839SDavid Daney bool 535ab253839SDavid Daney 536a77ad6eaSDavid Howellsconfig OID_REGISTRY 537a77ad6eaSDavid Howells tristate 538a77ad6eaSDavid Howells help 539a77ad6eaSDavid Howells Enable fast lookup object identifier registry. 540a77ad6eaSDavid Howells 5410635eb8aSMatthew Garrettconfig UCS2_STRING 5420635eb8aSMatthew Garrett tristate 5430635eb8aSMatthew Garrett 544ee89bd6bSGeert Uytterhoevensource "lib/fonts/Kconfig" 545ee89bd6bSGeert Uytterhoeven 546f8bcbe62SRobert Jarzmikconfig SG_SPLIT 547f8bcbe62SRobert Jarzmik def_bool n 548f8bcbe62SRobert Jarzmik help 5497f7e92f7SGeert Uytterhoeven Provides a helper to split scatterlists into chunks, each chunk being 5507f7e92f7SGeert Uytterhoeven a scatterlist. This should be selected by a driver or an API which 5517f7e92f7SGeert Uytterhoeven whishes to split a scatterlist amongst multiple DMA channels. 552f8bcbe62SRobert Jarzmik 5539b1d6c89SMing Linconfig SG_POOL 5549b1d6c89SMing Lin def_bool n 5559b1d6c89SMing Lin help 5569b1d6c89SMing Lin Provides a helper to allocate chained scatterlists. This should be 5579b1d6c89SMing Lin selected by a driver or an API which whishes to allocate chained 5589b1d6c89SMing Lin scatterlist. 5599b1d6c89SMing Lin 560308c09f1SLaura Abbott# 561308c09f1SLaura Abbott# sg chaining option 562308c09f1SLaura Abbott# 563308c09f1SLaura Abbott 564308c09f1SLaura Abbottconfig ARCH_HAS_SG_CHAIN 565308c09f1SLaura Abbott def_bool n 566308c09f1SLaura Abbott 56761031952SRoss Zwislerconfig ARCH_HAS_PMEM_API 56861031952SRoss Zwisler bool 56961031952SRoss Zwisler 5700aed55afSDan Williamsconfig ARCH_HAS_UACCESS_FLUSHCACHE 5710aed55afSDan Williams bool 5720aed55afSDan Williams 573cd11016eSAlexander Potapenkoconfig STACKDEPOT 574cd11016eSAlexander Potapenko bool 575cd11016eSAlexander Potapenko select STACKTRACE 576cd11016eSAlexander Potapenko 57788459642SOmar Sandovalconfig SBITMAP 57888459642SOmar Sandoval bool 57988459642SOmar Sandoval 58044091d29SJiri Pirkoconfig PARMAN 5819d25af69SGeert Uytterhoeven tristate "parman" if COMPILE_TEST 58244091d29SJiri Pirko 583cf4a7207SChris Wilsonconfig PRIME_NUMBERS 58464a57719SDave Airlie tristate 585cf4a7207SChris Wilson 58603270c13SMatthew Wilcoxconfig STRING_SELFTEST 587*d6b28e09SGeert Uytterhoeven tristate "Test string functions" 58803270c13SMatthew Wilcox 5892de4ff7bSThomas Grafendmenu 590b35cd988SPalmer Dabbelt 591b35cd988SPalmer Dabbeltconfig GENERIC_ASHLDI3 592b35cd988SPalmer Dabbelt bool 593b35cd988SPalmer Dabbelt 594b35cd988SPalmer Dabbeltconfig GENERIC_ASHRDI3 595b35cd988SPalmer Dabbelt bool 596b35cd988SPalmer Dabbelt 597b35cd988SPalmer Dabbeltconfig GENERIC_LSHRDI3 598b35cd988SPalmer Dabbelt bool 599b35cd988SPalmer Dabbelt 600b35cd988SPalmer Dabbeltconfig GENERIC_MULDI3 601b35cd988SPalmer Dabbelt bool 602b35cd988SPalmer Dabbelt 603b35cd988SPalmer Dabbeltconfig GENERIC_CMPDI2 604b35cd988SPalmer Dabbelt bool 605b35cd988SPalmer Dabbelt 606b35cd988SPalmer Dabbeltconfig GENERIC_UCMPDI2 607b35cd988SPalmer Dabbelt bool 608