Kconfig 9.2 KB

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