Kconfig 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430
  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_COMPRESS
  158. tristate
  159. config LZ4HC_COMPRESS
  160. tristate
  161. config LZ4_DECOMPRESS
  162. tristate
  163. source "lib/xz/Kconfig"
  164. #
  165. # These all provide a common interface (hence the apparent duplication with
  166. # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
  167. #
  168. config DECOMPRESS_GZIP
  169. select ZLIB_INFLATE
  170. tristate
  171. config DECOMPRESS_BZIP2
  172. tristate
  173. config DECOMPRESS_LZMA
  174. tristate
  175. config DECOMPRESS_XZ
  176. select XZ_DEC
  177. tristate
  178. config DECOMPRESS_LZO
  179. select LZO_DECOMPRESS
  180. tristate
  181. config DECOMPRESS_LZ4
  182. select LZ4_DECOMPRESS
  183. tristate
  184. #
  185. # Generic allocator support is selected if needed
  186. #
  187. config GENERIC_ALLOCATOR
  188. boolean
  189. #
  190. # reed solomon support is select'ed if needed
  191. #
  192. config REED_SOLOMON
  193. tristate
  194. config REED_SOLOMON_ENC8
  195. boolean
  196. config REED_SOLOMON_DEC8
  197. boolean
  198. config REED_SOLOMON_ENC16
  199. boolean
  200. config REED_SOLOMON_DEC16
  201. boolean
  202. #
  203. # BCH support is selected if needed
  204. #
  205. config BCH
  206. tristate
  207. config BCH_CONST_PARAMS
  208. boolean
  209. help
  210. Drivers may select this option to force specific constant
  211. values for parameters 'm' (Galois field order) and 't'
  212. (error correction capability). Those specific values must
  213. be set by declaring default values for symbols BCH_CONST_M
  214. and BCH_CONST_T.
  215. Doing so will enable extra compiler optimizations,
  216. improving encoding and decoding performance up to 2x for
  217. usual (m,t) values (typically such that m*t < 200).
  218. When this option is selected, the BCH library supports
  219. only a single (m,t) configuration. This is mainly useful
  220. for NAND flash board drivers requiring known, fixed BCH
  221. parameters.
  222. config BCH_CONST_M
  223. int
  224. range 5 15
  225. help
  226. Constant value for Galois field order 'm'. If 'k' is the
  227. number of data bits to protect, 'm' should be chosen such
  228. that (k + m*t) <= 2**m - 1.
  229. Drivers should declare a default value for this symbol if
  230. they select option BCH_CONST_PARAMS.
  231. config BCH_CONST_T
  232. int
  233. help
  234. Constant value for error correction capability in bits 't'.
  235. Drivers should declare a default value for this symbol if
  236. they select option BCH_CONST_PARAMS.
  237. #
  238. # Textsearch support is select'ed if needed
  239. #
  240. config TEXTSEARCH
  241. boolean
  242. config TEXTSEARCH_KMP
  243. tristate
  244. config TEXTSEARCH_BM
  245. tristate
  246. config TEXTSEARCH_FSM
  247. tristate
  248. config BTREE
  249. boolean
  250. config HAS_IOMEM
  251. boolean
  252. depends on !NO_IOMEM
  253. select GENERIC_IO
  254. default y
  255. config HAS_IOPORT
  256. boolean
  257. depends on HAS_IOMEM && !NO_IOPORT
  258. default y
  259. config HAS_DMA
  260. boolean
  261. depends on !NO_DMA
  262. default y
  263. config CHECK_SIGNATURE
  264. bool
  265. config CPUMASK_OFFSTACK
  266. bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
  267. help
  268. Use dynamic allocation for cpumask_var_t, instead of putting
  269. them on the stack. This is a bit more expensive, but avoids
  270. stack overflow.
  271. config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
  272. bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
  273. depends on BROKEN
  274. config CPU_RMAP
  275. bool
  276. depends on SMP
  277. config DQL
  278. bool
  279. #
  280. # Netlink attribute parsing support is select'ed if needed
  281. #
  282. config NLATTR
  283. bool
  284. #
  285. # Generic 64-bit atomic support is selected if needed
  286. #
  287. config GENERIC_ATOMIC64
  288. bool
  289. config ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
  290. def_bool y if GENERIC_ATOMIC64
  291. config LRU_CACHE
  292. tristate
  293. config AVERAGE
  294. bool "Averaging functions"
  295. help
  296. This option is provided for the case where no in-kernel-tree
  297. modules require averaging functions, but a module built outside
  298. the kernel tree does. Such modules that use library averaging
  299. functions require Y here.
  300. If unsure, say N.
  301. config CLZ_TAB
  302. bool
  303. config CORDIC
  304. tristate "CORDIC algorithm"
  305. help
  306. This option provides an implementation of the CORDIC algorithm;
  307. calculations are in fixed point. Module will be called cordic.
  308. config DDR
  309. bool "JEDEC DDR data"
  310. help
  311. Data from JEDEC specs for DDR SDRAM memories,
  312. particularly the AC timing parameters and addressing
  313. information. This data is useful for drivers handling
  314. DDR SDRAM controllers.
  315. config MPILIB
  316. tristate
  317. select CLZ_TAB
  318. help
  319. Multiprecision maths library from GnuPG.
  320. It is used to implement RSA digital signature verification,
  321. which is used by IMA/EVM digital signature extension.
  322. config SIGNATURE
  323. tristate
  324. depends on KEYS && CRYPTO
  325. select CRYPTO_SHA1
  326. select MPILIB
  327. help
  328. Digital signature verification. Currently only RSA is supported.
  329. Implementation is done using GnuPG MPI library
  330. #
  331. # libfdt files, only selected if needed.
  332. #
  333. config LIBFDT
  334. bool
  335. config OID_REGISTRY
  336. tristate
  337. help
  338. Enable fast lookup object identifier registry.
  339. config UCS2_STRING
  340. tristate
  341. source "lib/fonts/Kconfig"
  342. endmenu