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 494ccf4beaSWolfram Sangconfig STMP_DEVICE 504ccf4beaSWolfram Sang bool 514ccf4beaSWolfram Sang 52bc08b449SLinus Torvaldsconfig ARCH_USE_CMPXCHG_LOCKREF 53bc08b449SLinus Torvalds bool 54bc08b449SLinus Torvalds 5572d93104SLinus Torvaldsconfig ARCH_HAS_FAST_MULTIPLIER 5672d93104SLinus Torvalds bool 5772d93104SLinus Torvalds 58031e3601SZhichang Yuanconfig INDIRECT_PIO 59031e3601SZhichang Yuan bool "Access I/O in non-MMIO mode" 60031e3601SZhichang Yuan depends on ARM64 61031e3601SZhichang Yuan help 62031e3601SZhichang Yuan On some platforms where no separate I/O space exists, there are I/O 63031e3601SZhichang Yuan hosts which can not be accessed in MMIO mode. Using the logical PIO 64031e3601SZhichang Yuan mechanism, the host-local I/O resource can be mapped into system 65031e3601SZhichang Yuan logic PIO space shared with MMIO hosts, such as PCI/PCIe, then the 66031e3601SZhichang Yuan system can access the I/O devices with the mapped-logic PIO through 67031e3601SZhichang Yuan I/O accessors. 68031e3601SZhichang Yuan 69031e3601SZhichang Yuan This way has relatively little I/O performance cost. Please make 70031e3601SZhichang Yuan sure your devices really need this configure item enabled. 71031e3601SZhichang Yuan 72031e3601SZhichang Yuan When in doubt, say N. 73031e3601SZhichang Yuan 741da177e4SLinus Torvaldsconfig CRC_CCITT 751da177e4SLinus Torvalds tristate "CRC-CCITT functions" 761da177e4SLinus Torvalds help 771da177e4SLinus Torvalds This option is provided for the case where no in-kernel-tree 781da177e4SLinus Torvalds modules require CRC-CCITT functions, but a module built outside 791da177e4SLinus Torvalds the kernel tree does. Such modules that use library CRC-CCITT 801da177e4SLinus Torvalds functions require M here. 811da177e4SLinus Torvalds 827657ec1fSEvgeniy Polyakovconfig CRC16 837657ec1fSEvgeniy Polyakov tristate "CRC16 functions" 847657ec1fSEvgeniy Polyakov help 857657ec1fSEvgeniy Polyakov This option is provided for the case where no in-kernel-tree 867657ec1fSEvgeniy Polyakov modules require CRC16 functions, but a module built outside 877657ec1fSEvgeniy Polyakov the kernel tree does. Such modules that use library CRC16 887657ec1fSEvgeniy Polyakov functions require M here. 897657ec1fSEvgeniy Polyakov 90f11f594eSMartin K. Petersenconfig CRC_T10DIF 91f11f594eSMartin K. Petersen tristate "CRC calculation for the T10 Data Integrity Field" 9268411521SHerbert Xu select CRYPTO 9368411521SHerbert Xu select CRYPTO_CRCT10DIF 94f11f594eSMartin K. Petersen help 95f11f594eSMartin K. Petersen This option is only needed if a module that's not in the 96f11f594eSMartin K. Petersen kernel tree needs to calculate CRC checks for use with the 97f11f594eSMartin K. Petersen SCSI data integrity subsystem. 98f11f594eSMartin K. Petersen 993e7cbae7SIvo van Doornconfig CRC_ITU_T 1003e7cbae7SIvo van Doorn tristate "CRC ITU-T V.41 functions" 1013e7cbae7SIvo van Doorn help 1023e7cbae7SIvo van Doorn This option is provided for the case where no in-kernel-tree 1033e7cbae7SIvo van Doorn modules require CRC ITU-T V.41 functions, but a module built outside 1043e7cbae7SIvo van Doorn the kernel tree does. Such modules that use library CRC ITU-T V.41 1053e7cbae7SIvo van Doorn functions require M here. 1063e7cbae7SIvo van Doorn 1071da177e4SLinus Torvaldsconfig CRC32 10846c5801eSDarrick J. Wong tristate "CRC32/CRC32c functions" 1091da177e4SLinus Torvalds default y 110906d66dfSAkinobu Mita select BITREVERSE 1111da177e4SLinus Torvalds help 1121da177e4SLinus Torvalds This option is provided for the case where no in-kernel-tree 11346c5801eSDarrick J. Wong modules require CRC32/CRC32c functions, but a module built outside 11446c5801eSDarrick J. Wong the kernel tree does. Such modules that use library CRC32/CRC32c 11546c5801eSDarrick J. Wong functions require M here. 1161da177e4SLinus Torvalds 1173863ef31SBob Pearsonconfig CRC32_SELFTEST 1185fb7f874SGeert Uytterhoeven tristate "CRC32 perform self test on init" 1193863ef31SBob Pearson depends on CRC32 1203863ef31SBob Pearson help 1213863ef31SBob Pearson This option enables the CRC32 library functions to perform a 1223863ef31SBob Pearson self test on initialization. The self test computes crc32_le 1233863ef31SBob Pearson and crc32_be over byte strings with random alignment and length 1243863ef31SBob Pearson and computes the total elapsed time and number of bytes processed. 1253863ef31SBob Pearson 1265cde7656SDarrick J. Wongchoice 1275cde7656SDarrick J. Wong prompt "CRC32 implementation" 1285cde7656SDarrick J. Wong depends on CRC32 1295cde7656SDarrick J. Wong default CRC32_SLICEBY8 13082edb4baSDarrick J. Wong help 13182edb4baSDarrick J. Wong This option allows a kernel builder to override the default choice 13282edb4baSDarrick J. Wong of CRC32 algorithm. Choose the default ("slice by 8") unless you 13382edb4baSDarrick J. Wong know that you need one of the others. 1345cde7656SDarrick J. Wong 1355cde7656SDarrick J. Wongconfig CRC32_SLICEBY8 1365cde7656SDarrick J. Wong bool "Slice by 8 bytes" 1375cde7656SDarrick J. Wong help 1385cde7656SDarrick J. Wong Calculate checksum 8 bytes at a time with a clever slicing algorithm. 1395cde7656SDarrick J. Wong This is the fastest algorithm, but comes with a 8KiB lookup table. 1405cde7656SDarrick J. Wong Most modern processors have enough cache to hold this table without 1415cde7656SDarrick J. Wong thrashing the cache. 1425cde7656SDarrick J. Wong 1435cde7656SDarrick J. Wong This is the default implementation choice. Choose this one unless 1445cde7656SDarrick J. Wong you have a good reason not to. 1455cde7656SDarrick J. Wong 1465cde7656SDarrick J. Wongconfig CRC32_SLICEBY4 1475cde7656SDarrick J. Wong bool "Slice by 4 bytes" 1485cde7656SDarrick J. Wong help 1495cde7656SDarrick J. Wong Calculate checksum 4 bytes at a time with a clever slicing algorithm. 1505cde7656SDarrick J. Wong This is a bit slower than slice by 8, but has a smaller 4KiB lookup 1515cde7656SDarrick J. Wong table. 1525cde7656SDarrick J. Wong 1535cde7656SDarrick J. Wong Only choose this option if you know what you are doing. 1545cde7656SDarrick J. Wong 1555cde7656SDarrick J. Wongconfig CRC32_SARWATE 1565cde7656SDarrick J. Wong bool "Sarwate's Algorithm (one byte at a time)" 1575cde7656SDarrick J. Wong help 1585cde7656SDarrick J. Wong Calculate checksum a byte at a time using Sarwate's algorithm. This 1595cde7656SDarrick J. Wong is not particularly fast, but has a small 256 byte lookup table. 1605cde7656SDarrick J. Wong 1615cde7656SDarrick J. Wong Only choose this option if you know what you are doing. 1625cde7656SDarrick J. Wong 1635cde7656SDarrick J. Wongconfig CRC32_BIT 1645cde7656SDarrick J. Wong bool "Classic Algorithm (one bit at a time)" 1655cde7656SDarrick J. Wong help 1665cde7656SDarrick J. Wong Calculate checksum one bit at a time. This is VERY slow, but has 1675cde7656SDarrick J. Wong no lookup table. This is provided as a debugging option. 1685cde7656SDarrick J. Wong 1695cde7656SDarrick J. Wong Only choose this option if you are debugging crc32. 1705cde7656SDarrick J. Wong 1715cde7656SDarrick J. Wongendchoice 1725cde7656SDarrick J. Wong 173*feba04fdSColy Liconfig CRC64 174*feba04fdSColy Li tristate "CRC64 functions" 175*feba04fdSColy Li help 176*feba04fdSColy Li This option is provided for the case where no in-kernel-tree 177*feba04fdSColy Li modules require CRC64 functions, but a module built outside 178*feba04fdSColy Li the kernel tree does. Such modules that use library CRC64 179*feba04fdSColy Li functions require M here. 180*feba04fdSColy Li 1810cbaa448SJeremy Kerrconfig CRC4 1820cbaa448SJeremy Kerr tristate "CRC4 functions" 1830cbaa448SJeremy Kerr help 1840cbaa448SJeremy Kerr This option is provided for the case where no in-kernel-tree 1850cbaa448SJeremy Kerr modules require CRC4 functions, but a module built outside 1860cbaa448SJeremy Kerr the kernel tree does. Such modules that use library CRC4 1870cbaa448SJeremy Kerr functions require M here. 1880cbaa448SJeremy Kerr 189ad241528SJan Nikitenkoconfig CRC7 190ad241528SJan Nikitenko tristate "CRC7 functions" 191ad241528SJan Nikitenko help 192ad241528SJan Nikitenko This option is provided for the case where no in-kernel-tree 193ad241528SJan Nikitenko modules require CRC7 functions, but a module built outside 194ad241528SJan Nikitenko the kernel tree does. Such modules that use library CRC7 195ad241528SJan Nikitenko functions require M here. 196ad241528SJan Nikitenko 1971da177e4SLinus Torvaldsconfig LIBCRC32C 1981da177e4SLinus Torvalds tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check" 19993027354SHerbert Xu select CRYPTO 20069c35efcSHerbert Xu select CRYPTO_CRC32C 2011da177e4SLinus Torvalds help 2021da177e4SLinus Torvalds This option is provided for the case where no in-kernel-tree 2031da177e4SLinus Torvalds modules require CRC32c functions, but a module built outside the 2041da177e4SLinus Torvalds kernel tree does. Such modules that use library CRC32c functions 2051da177e4SLinus Torvalds require M here. See Castagnoli93. 2061da177e4SLinus Torvalds Module will be libcrc32c. 2071da177e4SLinus Torvalds 2087150962dSArend van Sprielconfig CRC8 2097150962dSArend van Spriel tristate "CRC8 function" 2107150962dSArend van Spriel help 2117150962dSArend van Spriel This option provides CRC8 function. Drivers may select this 2127150962dSArend van Spriel when they need to do cyclic redundancy check according CRC8 2137150962dSArend van Spriel algorithm. Module will be called crc8. 2147150962dSArend van Spriel 2155d240522SNick Terrellconfig XXHASH 2165d240522SNick Terrell tristate 2175d240522SNick Terrell 218e65e1fc2SAl Viroconfig AUDIT_GENERIC 219e65e1fc2SAl Viro bool 220e65e1fc2SAl Viro depends on AUDIT && !AUDIT_ARCH 221e65e1fc2SAl Viro default y 222e65e1fc2SAl Viro 2234b588411SAKASHI Takahiroconfig AUDIT_ARCH_COMPAT_GENERIC 2244b588411SAKASHI Takahiro bool 2254b588411SAKASHI Takahiro default n 2264b588411SAKASHI Takahiro 2274b588411SAKASHI Takahiroconfig AUDIT_COMPAT_GENERIC 2284b588411SAKASHI Takahiro bool 2294b588411SAKASHI Takahiro depends on AUDIT_GENERIC && AUDIT_ARCH_COMPAT_GENERIC && COMPAT 2304b588411SAKASHI Takahiro default y 2314b588411SAKASHI Takahiro 232a6a9c0f1SDaniel Borkmannconfig RANDOM32_SELFTEST 233a6a9c0f1SDaniel Borkmann bool "PRNG perform self test on init" 234a6a9c0f1SDaniel Borkmann default n 235a6a9c0f1SDaniel Borkmann help 236a6a9c0f1SDaniel Borkmann This option enables the 32 bit PRNG library functions to perform a 237a6a9c0f1SDaniel Borkmann self test on initialization. 238a6a9c0f1SDaniel Borkmann 2391da177e4SLinus Torvalds# 2401da177e4SLinus Torvalds# compression support is select'ed if needed 2411da177e4SLinus Torvalds# 2422da572c9SDan Streetmanconfig 842_COMPRESS 2435b571677SArnd Bergmann select CRC32 2442da572c9SDan Streetman tristate 2452da572c9SDan Streetman 2462da572c9SDan Streetmanconfig 842_DECOMPRESS 2475b571677SArnd Bergmann select CRC32 2482da572c9SDan Streetman tristate 2492da572c9SDan Streetman 2501da177e4SLinus Torvaldsconfig ZLIB_INFLATE 2511da177e4SLinus Torvalds tristate 2521da177e4SLinus Torvalds 2531da177e4SLinus Torvaldsconfig ZLIB_DEFLATE 2541da177e4SLinus Torvalds tristate 2551fd4e5c3SAndrew Morton select BITREVERSE 2561da177e4SLinus Torvalds 25764c70b1cSRichard Purdieconfig LZO_COMPRESS 25864c70b1cSRichard Purdie tristate 25964c70b1cSRichard Purdie 26064c70b1cSRichard Purdieconfig LZO_DECOMPRESS 26164c70b1cSRichard Purdie tristate 26264c70b1cSRichard Purdie 263c72ac7a1SChanho Minconfig LZ4_COMPRESS 264c72ac7a1SChanho Min tristate 265c72ac7a1SChanho Min 266c72ac7a1SChanho Minconfig LZ4HC_COMPRESS 267c72ac7a1SChanho Min tristate 268c72ac7a1SChanho Min 269e76e1fdfSKyungsik Leeconfig LZ4_DECOMPRESS 270e76e1fdfSKyungsik Lee tristate 271e76e1fdfSKyungsik Lee 27273f3d1b4SNick Terrellconfig ZSTD_COMPRESS 27373f3d1b4SNick Terrell select XXHASH 27473f3d1b4SNick Terrell tristate 27573f3d1b4SNick Terrell 27673f3d1b4SNick Terrellconfig ZSTD_DECOMPRESS 27773f3d1b4SNick Terrell select XXHASH 27873f3d1b4SNick Terrell tristate 27973f3d1b4SNick Terrell 28024fa0402SLasse Collinsource "lib/xz/Kconfig" 28124fa0402SLasse Collin 2821da177e4SLinus Torvalds# 283c8531ab3SH. Peter Anvin# These all provide a common interface (hence the apparent duplication with 284c8531ab3SH. Peter Anvin# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.) 285c8531ab3SH. Peter Anvin# 286c8531ab3SH. Peter Anvinconfig DECOMPRESS_GZIP 2877856a16eSH. Peter Anvin select ZLIB_INFLATE 288c8531ab3SH. Peter Anvin tristate 289c8531ab3SH. Peter Anvin 290c8531ab3SH. Peter Anvinconfig DECOMPRESS_BZIP2 291c8531ab3SH. Peter Anvin tristate 292c8531ab3SH. Peter Anvin 293c8531ab3SH. Peter Anvinconfig DECOMPRESS_LZMA 294c8531ab3SH. Peter Anvin tristate 295c8531ab3SH. Peter Anvin 2963ebe1243SLasse Collinconfig DECOMPRESS_XZ 2973ebe1243SLasse Collin select XZ_DEC 2983ebe1243SLasse Collin tristate 2993ebe1243SLasse Collin 300cacb246fSAlbin Tonnerreconfig DECOMPRESS_LZO 301cacb246fSAlbin Tonnerre select LZO_DECOMPRESS 302cacb246fSAlbin Tonnerre tristate 303cacb246fSAlbin Tonnerre 304e76e1fdfSKyungsik Leeconfig DECOMPRESS_LZ4 305e76e1fdfSKyungsik Lee select LZ4_DECOMPRESS 306e76e1fdfSKyungsik Lee tristate 307e76e1fdfSKyungsik Lee 308c8531ab3SH. Peter Anvin# 309f14f75b8SJes Sorensen# Generic allocator support is selected if needed 310f14f75b8SJes Sorensen# 311f14f75b8SJes Sorensenconfig GENERIC_ALLOCATOR 3126341e62bSChristoph Jaeger bool 313f14f75b8SJes Sorensen 314f14f75b8SJes Sorensen# 3151da177e4SLinus Torvalds# reed solomon support is select'ed if needed 3161da177e4SLinus Torvalds# 3171da177e4SLinus Torvaldsconfig REED_SOLOMON 3181da177e4SLinus Torvalds tristate 3191da177e4SLinus Torvalds 3201da177e4SLinus Torvaldsconfig REED_SOLOMON_ENC8 3216341e62bSChristoph Jaeger bool 3221da177e4SLinus Torvalds 3231da177e4SLinus Torvaldsconfig REED_SOLOMON_DEC8 3246341e62bSChristoph Jaeger bool 3251da177e4SLinus Torvalds 3261da177e4SLinus Torvaldsconfig REED_SOLOMON_ENC16 3276341e62bSChristoph Jaeger bool 3281da177e4SLinus Torvalds 3291da177e4SLinus Torvaldsconfig REED_SOLOMON_DEC16 3306341e62bSChristoph Jaeger bool 3311da177e4SLinus Torvalds 332f7704347SDavid S. Miller# 333437aa565SIvan Djelic# BCH support is selected if needed 334437aa565SIvan Djelic# 335437aa565SIvan Djelicconfig BCH 336437aa565SIvan Djelic tristate 337437aa565SIvan Djelic 338437aa565SIvan Djelicconfig BCH_CONST_PARAMS 3396341e62bSChristoph Jaeger bool 340437aa565SIvan Djelic help 341437aa565SIvan Djelic Drivers may select this option to force specific constant 342437aa565SIvan Djelic values for parameters 'm' (Galois field order) and 't' 343437aa565SIvan Djelic (error correction capability). Those specific values must 344437aa565SIvan Djelic be set by declaring default values for symbols BCH_CONST_M 345437aa565SIvan Djelic and BCH_CONST_T. 346437aa565SIvan Djelic Doing so will enable extra compiler optimizations, 347437aa565SIvan Djelic improving encoding and decoding performance up to 2x for 348437aa565SIvan Djelic usual (m,t) values (typically such that m*t < 200). 349437aa565SIvan Djelic When this option is selected, the BCH library supports 350437aa565SIvan Djelic only a single (m,t) configuration. This is mainly useful 351437aa565SIvan Djelic for NAND flash board drivers requiring known, fixed BCH 352437aa565SIvan Djelic parameters. 353437aa565SIvan Djelic 354437aa565SIvan Djelicconfig BCH_CONST_M 355437aa565SIvan Djelic int 356437aa565SIvan Djelic range 5 15 357437aa565SIvan Djelic help 358437aa565SIvan Djelic Constant value for Galois field order 'm'. If 'k' is the 359437aa565SIvan Djelic number of data bits to protect, 'm' should be chosen such 360437aa565SIvan Djelic that (k + m*t) <= 2**m - 1. 361437aa565SIvan Djelic Drivers should declare a default value for this symbol if 362437aa565SIvan Djelic they select option BCH_CONST_PARAMS. 363437aa565SIvan Djelic 364437aa565SIvan Djelicconfig BCH_CONST_T 365437aa565SIvan Djelic int 366437aa565SIvan Djelic help 367437aa565SIvan Djelic Constant value for error correction capability in bits 't'. 368437aa565SIvan Djelic Drivers should declare a default value for this symbol if 369437aa565SIvan Djelic they select option BCH_CONST_PARAMS. 370437aa565SIvan Djelic 371437aa565SIvan Djelic# 372f7704347SDavid S. Miller# Textsearch support is select'ed if needed 373f7704347SDavid S. Miller# 3742de4ff7bSThomas Grafconfig TEXTSEARCH 3756341e62bSChristoph Jaeger bool 3761da177e4SLinus Torvalds 377df3fb93aSThomas Grafconfig TEXTSEARCH_KMP 378f7704347SDavid S. Miller tristate 379df3fb93aSThomas Graf 3808082e4edSPablo Neira Ayusoconfig TEXTSEARCH_BM 38129cb9f9cSDavid S. Miller tristate 3828082e4edSPablo Neira Ayuso 3836408f79cSThomas Grafconfig TEXTSEARCH_FSM 384f7704347SDavid S. Miller tristate 3856408f79cSThomas Graf 3865db53f3eSJoern Engelconfig BTREE 3876341e62bSChristoph Jaeger bool 3885db53f3eSJoern Engel 389a88cc108SChris Wilsonconfig INTERVAL_TREE 3906341e62bSChristoph Jaeger bool 391a88cc108SChris Wilson help 392a88cc108SChris Wilson Simple, embeddable, interval-tree. Can find the start of an 393a88cc108SChris Wilson overlapping range in log(n) time and then iterate over all 394a88cc108SChris Wilson overlapping nodes. The algorithm is implemented as an 395a88cc108SChris Wilson augmented rbtree. 396a88cc108SChris Wilson 397a88cc108SChris Wilson See: 398a88cc108SChris Wilson 399a88cc108SChris Wilson Documentation/rbtree.txt 400a88cc108SChris Wilson 401a88cc108SChris Wilson for more information. 402a88cc108SChris Wilson 40357578c2eSMatthew Wilcoxconfig RADIX_TREE_MULTIORDER 40457578c2eSMatthew Wilcox bool 40557578c2eSMatthew Wilcox 4063cb98950SDavid Howellsconfig ASSOCIATIVE_ARRAY 4073cb98950SDavid Howells bool 4083cb98950SDavid Howells help 4093cb98950SDavid Howells Generic associative array. Can be searched and iterated over whilst 4103cb98950SDavid Howells it is being modified. It is also reasonably quick to search and 4113cb98950SDavid Howells modify. The algorithms are non-recursive, and the trees are highly 4123cb98950SDavid Howells capacious. 4133cb98950SDavid Howells 4143cb98950SDavid Howells See: 4153cb98950SDavid Howells 4165fb94e9cSMauro Carvalho Chehab Documentation/core-api/assoc_array.rst 4173cb98950SDavid Howells 4183cb98950SDavid Howells for more information. 4193cb98950SDavid Howells 4205ea81769SAl Viroconfig HAS_IOMEM 4216341e62bSChristoph Jaeger bool 4225ea81769SAl Viro depends on !NO_IOMEM 423087fafd1SRichard Weinberger select GENERIC_IO 4245ea81769SAl Viro default y 4255ea81769SAl Viro 426ce816fa8SUwe Kleine-Königconfig HAS_IOPORT_MAP 4276341e62bSChristoph Jaeger bool 428ce816fa8SUwe Kleine-König depends on HAS_IOMEM && !NO_IOPORT_MAP 429ee36c2bfSAl Viro default y 430ee36c2bfSAl Viro 431cf65a0f6SChristoph Hellwigsource "kernel/dma/Kconfig" 432411f0f3eSHeiko Carstens 433e80a0af4SBart Van Asscheconfig SGL_ALLOC 434e80a0af4SBart Van Assche bool 435e80a0af4SBart Van Assche default n 436e80a0af4SBart Van Assche 437a4ce5a48SChristoph Hellwigconfig IOMMU_HELPER 438a4ce5a48SChristoph Hellwig bool 439a4ce5a48SChristoph Hellwig 440928923c7SGeert Uytterhoevenconfig CHECK_SIGNATURE 441928923c7SGeert Uytterhoeven bool 442928923c7SGeert Uytterhoeven 443aab46da0SRusty Russellconfig CPUMASK_OFFSTACK 444aab46da0SRusty Russell bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS 445aab46da0SRusty Russell help 446aab46da0SRusty Russell Use dynamic allocation for cpumask_var_t, instead of putting 447aab46da0SRusty Russell them on the stack. This is a bit more expensive, but avoids 448aab46da0SRusty Russell stack overflow. 449aab46da0SRusty Russell 450c39649c3SBen Hutchingsconfig CPU_RMAP 451c39649c3SBen Hutchings bool 452c39649c3SBen Hutchings depends on SMP 453c39649c3SBen Hutchings 45475957ba3STom Herbertconfig DQL 45575957ba3STom Herbert bool 45675957ba3STom Herbert 457b0125085SGeorge Spelvinconfig GLOB 458b0125085SGeorge Spelvin bool 459b0125085SGeorge Spelvin# This actually supports modular compilation, but the module overhead 460b0125085SGeorge Spelvin# is ridiculous for the amount of code involved. Until an out-of-tree 461b0125085SGeorge Spelvin# driver asks for it, we'll just link it directly it into the kernel 462b0125085SGeorge Spelvin# when required. Since we're ignoring out-of-tree users, there's also 463b0125085SGeorge Spelvin# no need bother prompting for a manual decision: 464b0125085SGeorge Spelvin# prompt "glob_match() function" 465b0125085SGeorge Spelvin help 466b0125085SGeorge Spelvin This option provides a glob_match function for performing 467b0125085SGeorge Spelvin simple text pattern matching. It originated in the ATA code 468b0125085SGeorge Spelvin to blacklist particular drive models, but other device drivers 469b0125085SGeorge Spelvin may need similar functionality. 470b0125085SGeorge Spelvin 471b0125085SGeorge Spelvin All drivers in the Linux kernel tree that require this function 472b0125085SGeorge Spelvin should automatically select this option. Say N unless you 473b0125085SGeorge Spelvin are compiling an out-of tree driver which tells you that it 474b0125085SGeorge Spelvin depends on this. 475b0125085SGeorge Spelvin 4765f9be824SGeorge Spelvinconfig GLOB_SELFTEST 477ba95b045SGeert Uytterhoeven tristate "glob self-test on init" 4785f9be824SGeorge Spelvin depends on GLOB 4795f9be824SGeorge Spelvin help 4805f9be824SGeorge Spelvin This option enables a simple self-test of the glob_match 4815f9be824SGeorge Spelvin function on startup. It is primarily useful for people 4825f9be824SGeorge Spelvin working on the code to ensure they haven't introduced any 4835f9be824SGeorge Spelvin regressions. 4845f9be824SGeorge Spelvin 4855f9be824SGeorge Spelvin It only adds a little bit of code and slows kernel boot (or 4865f9be824SGeorge Spelvin module load) by a small amount, so you're welcome to play with 4875f9be824SGeorge Spelvin it, but you probably don't need it. 4885f9be824SGeorge Spelvin 489e9cc8bddSGeert Uytterhoeven# 490e9cc8bddSGeert Uytterhoeven# Netlink attribute parsing support is select'ed if needed 491e9cc8bddSGeert Uytterhoeven# 492e9cc8bddSGeert Uytterhoevenconfig NLATTR 493e9cc8bddSGeert Uytterhoeven bool 494e9cc8bddSGeert Uytterhoeven 49509d4e0edSPaul Mackerras# 49609d4e0edSPaul Mackerras# Generic 64-bit atomic support is selected if needed 49709d4e0edSPaul Mackerras# 49809d4e0edSPaul Mackerrasconfig GENERIC_ATOMIC64 49909d4e0edSPaul Mackerras bool 50009d4e0edSPaul Mackerras 501b411b363SPhilipp Reisnerconfig LRU_CACHE 502b411b363SPhilipp Reisner tristate 503b411b363SPhilipp Reisner 504c6df4b17SDavid Millerconfig CLZ_TAB 505c6df4b17SDavid Miller bool 506c6df4b17SDavid Miller 50710f8113eSArend van Sprielconfig CORDIC 508d89ce936SMichael Witten tristate "CORDIC algorithm" 50910f8113eSArend van Spriel help 510435a95c5SMichael Witten This option provides an implementation of the CORDIC algorithm; 511435a95c5SMichael Witten calculations are in fixed point. Module will be called cordic. 51210f8113eSArend van Spriel 5139c1c21a0SAneesh Vconfig DDR 5149c1c21a0SAneesh V bool "JEDEC DDR data" 5159c1c21a0SAneesh V help 5169c1c21a0SAneesh V Data from JEDEC specs for DDR SDRAM memories, 5179c1c21a0SAneesh V particularly the AC timing parameters and addressing 5189c1c21a0SAneesh V information. This data is useful for drivers handling 5199c1c21a0SAneesh V DDR SDRAM controllers. 5209c1c21a0SAneesh V 521511cbce2SChristoph Hellwigconfig IRQ_POLL 522511cbce2SChristoph Hellwig bool "IRQ polling library" 523511cbce2SChristoph Hellwig help 524511cbce2SChristoph Hellwig Helper library to poll interrupt mitigation using polling. 525511cbce2SChristoph Hellwig 526d9c46b18SDmitry Kasatkinconfig MPILIB 5272e5f094bSDmitry Kasatkin tristate 528c6df4b17SDavid Miller select CLZ_TAB 529d9c46b18SDmitry Kasatkin help 530d9c46b18SDmitry Kasatkin Multiprecision maths library from GnuPG. 531d9c46b18SDmitry Kasatkin It is used to implement RSA digital signature verification, 532d9c46b18SDmitry Kasatkin which is used by IMA/EVM digital signature extension. 533d9c46b18SDmitry Kasatkin 5345e8898e9SDmitry Kasatkinconfig SIGNATURE 5352e5f094bSDmitry Kasatkin tristate 5360d1f64f6SDmitry Kasatkin depends on KEYS 5370d1f64f6SDmitry Kasatkin select CRYPTO 538be440ec7SDmitry Kasatkin select CRYPTO_SHA1 539051dbb91SDmitry Kasatkin select MPILIB 540051dbb91SDmitry Kasatkin help 541051dbb91SDmitry Kasatkin Digital signature verification. Currently only RSA is supported. 542051dbb91SDmitry Kasatkin Implementation is done using GnuPG MPI library 543051dbb91SDmitry Kasatkin 544ab253839SDavid Daney# 545ab253839SDavid Daney# libfdt files, only selected if needed. 546ab253839SDavid Daney# 547ab253839SDavid Daneyconfig LIBFDT 548ab253839SDavid Daney bool 549ab253839SDavid Daney 550a77ad6eaSDavid Howellsconfig OID_REGISTRY 551a77ad6eaSDavid Howells tristate 552a77ad6eaSDavid Howells help 553a77ad6eaSDavid Howells Enable fast lookup object identifier registry. 554a77ad6eaSDavid Howells 5550635eb8aSMatthew Garrettconfig UCS2_STRING 5560635eb8aSMatthew Garrett tristate 5570635eb8aSMatthew Garrett 558ee89bd6bSGeert Uytterhoevensource "lib/fonts/Kconfig" 559ee89bd6bSGeert Uytterhoeven 560f8bcbe62SRobert Jarzmikconfig SG_SPLIT 561f8bcbe62SRobert Jarzmik def_bool n 562f8bcbe62SRobert Jarzmik help 5637f7e92f7SGeert Uytterhoeven Provides a helper to split scatterlists into chunks, each chunk being 5647f7e92f7SGeert Uytterhoeven a scatterlist. This should be selected by a driver or an API which 5657f7e92f7SGeert Uytterhoeven whishes to split a scatterlist amongst multiple DMA channels. 566f8bcbe62SRobert Jarzmik 5679b1d6c89SMing Linconfig SG_POOL 5689b1d6c89SMing Lin def_bool n 5699b1d6c89SMing Lin help 5709b1d6c89SMing Lin Provides a helper to allocate chained scatterlists. This should be 5719b1d6c89SMing Lin selected by a driver or an API which whishes to allocate chained 5729b1d6c89SMing Lin scatterlist. 5739b1d6c89SMing Lin 574308c09f1SLaura Abbott# 575308c09f1SLaura Abbott# sg chaining option 576308c09f1SLaura Abbott# 577308c09f1SLaura Abbott 578308c09f1SLaura Abbottconfig ARCH_HAS_SG_CHAIN 579308c09f1SLaura Abbott def_bool n 580308c09f1SLaura Abbott 58161031952SRoss Zwislerconfig ARCH_HAS_PMEM_API 58261031952SRoss Zwisler bool 58361031952SRoss Zwisler 5840aed55afSDan Williamsconfig ARCH_HAS_UACCESS_FLUSHCACHE 5850aed55afSDan Williams bool 5860aed55afSDan Williams 587522239b4SDan Williamsconfig ARCH_HAS_UACCESS_MCSAFE 588522239b4SDan Williams bool 589522239b4SDan Williams 590cd11016eSAlexander Potapenkoconfig STACKDEPOT 591cd11016eSAlexander Potapenko bool 592cd11016eSAlexander Potapenko select STACKTRACE 593cd11016eSAlexander Potapenko 59488459642SOmar Sandovalconfig SBITMAP 59588459642SOmar Sandoval bool 59688459642SOmar Sandoval 59744091d29SJiri Pirkoconfig PARMAN 5989d25af69SGeert Uytterhoeven tristate "parman" if COMPILE_TEST 59944091d29SJiri Pirko 600cf4a7207SChris Wilsonconfig PRIME_NUMBERS 60164a57719SDave Airlie tristate 602cf4a7207SChris Wilson 60303270c13SMatthew Wilcoxconfig STRING_SELFTEST 604d6b28e09SGeert Uytterhoeven tristate "Test string functions" 60503270c13SMatthew Wilcox 6062de4ff7bSThomas Grafendmenu 607b35cd988SPalmer Dabbelt 608e3d59805SMatt Redfearnconfig GENERIC_LIB_ASHLDI3 609b35cd988SPalmer Dabbelt bool 610b35cd988SPalmer Dabbelt 611e3d59805SMatt Redfearnconfig GENERIC_LIB_ASHRDI3 612b35cd988SPalmer Dabbelt bool 613b35cd988SPalmer Dabbelt 614e3d59805SMatt Redfearnconfig GENERIC_LIB_LSHRDI3 615b35cd988SPalmer Dabbelt bool 616b35cd988SPalmer Dabbelt 617e3d59805SMatt Redfearnconfig GENERIC_LIB_MULDI3 618b35cd988SPalmer Dabbelt bool 619b35cd988SPalmer Dabbelt 620e3d59805SMatt Redfearnconfig GENERIC_LIB_CMPDI2 621b35cd988SPalmer Dabbelt bool 622b35cd988SPalmer Dabbelt 623e3d59805SMatt Redfearnconfig GENERIC_LIB_UCMPDI2 624b35cd988SPalmer Dabbelt bool 625