Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux...
[firefly-linux-kernel-4.4.55.git] / lib / Kconfig
1 #
2 # Library configuration
3 #
4
5 config BINARY_PRINTF
6         def_bool n
7
8 menu "Library routines"
9
10 config RAID6_PQ
11         tristate
12
13 config BITREVERSE
14         tristate
15
16 config RATIONAL
17         boolean
18
19 config GENERIC_FIND_FIRST_BIT
20         bool
21
22 config CRC_CCITT
23         tristate "CRC-CCITT functions"
24         help
25           This option is provided for the case where no in-kernel-tree
26           modules require CRC-CCITT functions, but a module built outside
27           the kernel tree does. Such modules that use library CRC-CCITT
28           functions require M here.
29
30 config CRC16
31         tristate "CRC16 functions"
32         help
33           This option is provided for the case where no in-kernel-tree
34           modules require CRC16 functions, but a module built outside
35           the kernel tree does. Such modules that use library CRC16
36           functions require M here.
37
38 config CRC_T10DIF
39         tristate "CRC calculation for the T10 Data Integrity Field"
40         help
41           This option is only needed if a module that's not in the
42           kernel tree needs to calculate CRC checks for use with the
43           SCSI data integrity subsystem.
44
45 config CRC_ITU_T
46         tristate "CRC ITU-T V.41 functions"
47         help
48           This option is provided for the case where no in-kernel-tree
49           modules require CRC ITU-T V.41 functions, but a module built outside
50           the kernel tree does. Such modules that use library CRC ITU-T V.41
51           functions require M here.
52
53 config CRC32
54         tristate "CRC32 functions"
55         default y
56         select BITREVERSE
57         help
58           This option is provided for the case where no in-kernel-tree
59           modules require CRC32 functions, but a module built outside the
60           kernel tree does. Such modules that use library CRC32 functions
61           require M here.
62
63 config CRC7
64         tristate "CRC7 functions"
65         help
66           This option is provided for the case where no in-kernel-tree
67           modules require CRC7 functions, but a module built outside
68           the kernel tree does. Such modules that use library CRC7
69           functions require M here.
70
71 config LIBCRC32C
72         tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check"
73         select CRYPTO
74         select CRYPTO_CRC32C
75         help
76           This option is provided for the case where no in-kernel-tree
77           modules require CRC32c functions, but a module built outside the
78           kernel tree does. Such modules that use library CRC32c functions
79           require M here.  See Castagnoli93.
80           Module will be libcrc32c.
81
82 config CRC8
83         tristate "CRC8 function"
84         help
85           This option provides CRC8 function. Drivers may select this
86           when they need to do cyclic redundancy check according CRC8
87           algorithm. Module will be called crc8.
88
89 config AUDIT_GENERIC
90         bool
91         depends on AUDIT && !AUDIT_ARCH
92         default y
93
94 #
95 # compression support is select'ed if needed
96 #
97 config ZLIB_INFLATE
98         tristate
99
100 config ZLIB_DEFLATE
101         tristate
102
103 config LZO_COMPRESS
104         tristate
105
106 config LZO_DECOMPRESS
107         tristate
108
109 source "lib/xz/Kconfig"
110
111 #
112 # These all provide a common interface (hence the apparent duplication with
113 # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
114 #
115 config DECOMPRESS_GZIP
116         select ZLIB_INFLATE
117         tristate
118
119 config DECOMPRESS_BZIP2
120         tristate
121
122 config DECOMPRESS_LZMA
123         tristate
124
125 config DECOMPRESS_XZ
126         select XZ_DEC
127         tristate
128
129 config DECOMPRESS_LZO
130         select LZO_DECOMPRESS
131         tristate
132
133 #
134 # Generic allocator support is selected if needed
135 #
136 config GENERIC_ALLOCATOR
137         boolean
138
139 #
140 # reed solomon support is select'ed if needed
141 #
142 config REED_SOLOMON
143         tristate
144         
145 config REED_SOLOMON_ENC8
146         boolean
147
148 config REED_SOLOMON_DEC8
149         boolean
150
151 config REED_SOLOMON_ENC16
152         boolean
153
154 config REED_SOLOMON_DEC16
155         boolean
156
157 #
158 # BCH support is selected if needed
159 #
160 config BCH
161         tristate
162
163 config BCH_CONST_PARAMS
164         boolean
165         help
166           Drivers may select this option to force specific constant
167           values for parameters 'm' (Galois field order) and 't'
168           (error correction capability). Those specific values must
169           be set by declaring default values for symbols BCH_CONST_M
170           and BCH_CONST_T.
171           Doing so will enable extra compiler optimizations,
172           improving encoding and decoding performance up to 2x for
173           usual (m,t) values (typically such that m*t < 200).
174           When this option is selected, the BCH library supports
175           only a single (m,t) configuration. This is mainly useful
176           for NAND flash board drivers requiring known, fixed BCH
177           parameters.
178
179 config BCH_CONST_M
180         int
181         range 5 15
182         help
183           Constant value for Galois field order 'm'. If 'k' is the
184           number of data bits to protect, 'm' should be chosen such
185           that (k + m*t) <= 2**m - 1.
186           Drivers should declare a default value for this symbol if
187           they select option BCH_CONST_PARAMS.
188
189 config BCH_CONST_T
190         int
191         help
192           Constant value for error correction capability in bits 't'.
193           Drivers should declare a default value for this symbol if
194           they select option BCH_CONST_PARAMS.
195
196 #
197 # Textsearch support is select'ed if needed
198 #
199 config TEXTSEARCH
200         boolean
201
202 config TEXTSEARCH_KMP
203         tristate
204
205 config TEXTSEARCH_BM
206         tristate
207
208 config TEXTSEARCH_FSM
209         tristate
210
211 config BTREE
212         boolean
213
214 config HAS_IOMEM
215         boolean
216         depends on !NO_IOMEM
217         default y
218
219 config HAS_IOPORT
220         boolean
221         depends on HAS_IOMEM && !NO_IOPORT
222         default y
223
224 config HAS_DMA
225         boolean
226         depends on !NO_DMA
227         default y
228
229 config CHECK_SIGNATURE
230         bool
231
232 config CPUMASK_OFFSTACK
233         bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
234         help
235           Use dynamic allocation for cpumask_var_t, instead of putting
236           them on the stack.  This is a bit more expensive, but avoids
237           stack overflow.
238
239 config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS
240        bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
241        depends on EXPERIMENTAL && BROKEN
242
243 config CPU_RMAP
244         bool
245         depends on SMP
246
247 #
248 # Netlink attribute parsing support is select'ed if needed
249 #
250 config NLATTR
251         bool
252
253 #
254 # Generic 64-bit atomic support is selected if needed
255 #
256 config GENERIC_ATOMIC64
257        bool
258
259 config LRU_CACHE
260         tristate
261
262 config AVERAGE
263         bool "Averaging functions"
264         help
265           This option is provided for the case where no in-kernel-tree
266           modules require averaging functions, but a module built outside
267           the kernel tree does. Such modules that use library averaging
268           functions require Y here.
269
270           If unsure, say N.
271
272 config CORDIC
273         tristate "Cordic function"
274         help
275           The option provides arithmetic function using cordic algorithm
276           so its calculations are in fixed point. Modules can select this
277           when they require this function. Module will be called cordic.
278
279 endmenu