- wrap overlong lines (Cristian Ionescu-Idbohrn)
[oweals/busybox.git] / modutils / Config.in
1 #
2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
4 #
5
6 menu "Linux Module Utilities"
7
8 config MODPROBE_SMALL
9         bool "Simplified modutils"
10         default n
11         help
12           Simplified modutils.
13
14           With this option modprobe does not require modules.dep file
15           and does not use /etc/modules.conf file.
16           It scans module files in /lib/modules/`uname -r` and
17           determines dependencies and module alias names on the fly.
18           This may make module loading slower, most notably
19           when one needs to load module by alias (this requires
20           scanning through module _bodies_).
21
22           At the first attempt to load a module by alias modprobe
23           will try to generate modules.dep.bb file in order to speed up
24           future loads by alias. Failure to do so (read-only /lib/modules,
25           etc) is not reported, and future modprobes will be slow too.
26
27           NB: modules.dep.bb file format is not compatible
28           with modules.dep file as created/used by standard module tools.
29
30           Additional module parameters can be stored in
31           /etc/modules/$module_name files.
32
33           Apart from modprobe, other utilities are also provided:
34           - insmod is an alias to modprobe
35           - rmmod is an alias to modprobe -r
36           - depmod generates modules.dep.bb
37
38           As of 2008-07, this code is experimental. It is 14kb smaller
39           than "non-small" modutils.
40
41 config FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
42         bool "Accept module options on modprobe command line"
43         default n
44         depends on MODPROBE_SMALL
45         help
46           Allow insmod and modprobe take module options from command line.
47           N.B. Very bloaty.
48
49 config FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
50         bool "Skip loading of already loaded modules"
51         default n
52         depends on MODPROBE_SMALL
53         help
54           Check if the module is already loaded.
55           N.B. It's racy.
56
57 config FEATURE_MODPROBE_SMALL_ZIPPED
58         bool "Handle gzipped or bzipped modules"
59         default n
60         depends on MODPROBE_SMALL
61         help
62           Handle compressed modules. Bloaty. Sloooow.
63
64 config DEPMOD
65         bool "depmod"
66         default n
67         depends on !MODPROBE_SMALL
68         help
69           depmod generates modules.dep (FIXME: elaborate)
70
71 config FEATURE_DEPMOD_PRUNE_FANCY
72         bool "Fancy dependency pruning"
73         default n
74         depends on DEPMOD
75         help
76           By default modules.dep contains all dependencies as listed by
77           the modules.
78           If you enable this option then we remove implied modules from
79           the dependencies.
80           This makes depmod somewhat bigger but generates a smaller
81           modules.dep file.
82
83           If unsure, say N.
84
85 config FEATURE_DEPMOD_ALIAS
86         bool "Alias support"
87         default n
88         depends on DEPMOD
89         help
90           By default modules.dep does not contain alias information.
91           Enable this to emit aliases of the form:
92
93             alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs
94
95 config INSMOD
96         bool "insmod"
97         default n
98         depends on !MODPROBE_SMALL
99         help
100           insmod is used to load specified modules in the running kernel.
101
102 config FEATURE_INSMOD_VERSION_CHECKING
103         bool "Module version checking"
104         default n
105         depends on INSMOD && FEATURE_2_4_MODULES
106         help
107           Support checking of versions for modules. This is used to
108           ensure that the kernel and module are made for each other.
109
110 config FEATURE_INSMOD_KSYMOOPS_SYMBOLS
111         bool "Add module symbols to kernel symbol table"
112         default n
113         depends on INSMOD && FEATURE_2_4_MODULES
114         help
115           By adding module symbols to the kernel symbol table, Oops messages
116           occuring within kernel modules can be properly debugged. By enabling
117           this feature, module symbols will always be added to the kernel symbol
118           table for properly debugging support. If you are not interested in
119           Oops messages from kernel modules, say N.
120
121 config FEATURE_INSMOD_LOADINKMEM
122         bool "In kernel memory optimization (uClinux only)"
123         default n
124         depends on INSMOD && FEATURE_2_4_MODULES
125         help
126           This is a special uClinux only memory optimization that lets insmod
127           load the specified kernel module directly into kernel space, reducing
128           memory usage by preventing the need for two copies of the module
129           being loaded into memory.
130
131 config FEATURE_INSMOD_LOAD_MAP
132         bool "Enable load map (-m) option"
133         default n
134         depends on INSMOD && ( FEATURE_2_4_MODULES || FEATURE_2_6_MODULES )
135         help
136           Enabling this, one would be able to get a load map
137           output on stdout. This makes kernel module debugging
138           easier.
139           If you don't plan to debug kernel modules, you
140           don't need this option.
141
142 config FEATURE_INSMOD_LOAD_MAP_FULL
143         bool "Symbols in load map"
144         default y
145         depends on FEATURE_INSMOD_LOAD_MAP
146         help
147           Without this option, -m will only output section
148           load map. With this option, -m will also output
149           symbols load map.
150
151 config RMMOD
152         bool "rmmod"
153         default n
154         depends on !MODPROBE_SMALL
155         help
156           rmmod is used to unload specified modules from the kernel.
157
158 config LSMOD
159         bool "lsmod"
160         default n
161         depends on !MODPROBE_SMALL
162         help
163           lsmod is used to display a list of loaded modules.
164
165 config FEATURE_LSMOD_PRETTY_2_6_OUTPUT
166         bool "Pretty output for 2.6.x Linux kernels"
167         default n
168         depends on LSMOD
169         help
170           This option makes output format of lsmod adjusted to
171           the format of module-init-tools for Linux kernel 2.6.
172
173 config MODPROBE
174         bool "modprobe"
175         default n
176         depends on !MODPROBE_SMALL
177         help
178           Handle the loading of modules, and their dependencies on a high
179           level.
180
181           Note that in the state, modprobe does not understand multiple
182           module options from the configuration file. See option below.
183
184 config FEATURE_MODPROBE_MULTIPLE_OPTIONS
185         bool
186         prompt "Multiple options parsing"
187         default y
188         depends on MODPROBE
189         help
190           Allow modprobe to understand more than one option to pass to
191           modules.
192
193           This is a WIP, while waiting for a common argument parsing
194           common amongst all BB applets (shell, modprobe, etc...) and
195           adds around 600 bytes on x86, 700 bytes on ARM. The code is
196           biggish and uggly, but just works.
197
198           Saying Y here is not a bad idea if you're not that short
199           on storage capacity.
200
201 config FEATURE_MODPROBE_FANCY_ALIAS
202         bool
203         prompt "Fancy alias parsing"
204         default y
205         depends on MODPROBE && FEATURE_2_6_MODULES
206         help
207           Say 'y' here to enable parsing of aliases with underscore/dash
208           mismatch between module name and file name, along with bus-specific
209           aliases (such as pci:... or usb:... aliases).
210
211 config FEATURE_MODPROBE_BLACKLIST
212         bool
213         prompt "Blacklist support"
214         default n
215         depends on MODPROBE && FEATURE_2_6_MODULES
216         help
217           Say 'y' here to enable support for the 'blacklist' command in
218           modprobe.conf. This prevents the alias resolver to resolve
219           blacklisted modules. This is useful if you want to prevent your
220           hardware autodetection scripts to load modules like evdev, frame
221           buffer drivers etc.
222
223 comment "Options common to multiple modutils"
224         depends on INSMOD || RMMOD || MODPROBE || LSMOD || DEPMOD
225
226 config FEATURE_CHECK_TAINTED_MODULE
227         # Simulate indentation
228         bool "Support tainted module checking with new kernels"
229         default y
230         depends on INSMOD || LSMOD
231         help
232           Support checking for tainted modules. These are usually binary
233           only modules that will make the linux-kernel list ignore your
234           support request.
235           This option is required to support GPLONLY modules.
236
237 config FEATURE_2_4_MODULES
238         # Simulate indentation
239         bool "Support version 2.2.x to 2.4.x Linux kernels"
240         default y
241         depends on INSMOD || RMMOD || MODPROBE
242         help
243           Support module loading for 2.2.x and 2.4.x Linux kernels.
244
245           Note:
246           This is automatically enabled if 2.6 modules are not enabled.
247
248 config FEATURE_2_6_MODULES
249         # Simulate indentation
250         bool "Support version 2.6.x Linux kernels"
251         default y
252         depends on INSMOD || RMMOD || MODPROBE
253         help
254           Support module loading for newer 2.6.x Linux kernels.
255
256 config DEFAULT_MODULES_DIR
257         # Simulate indentation
258         string "Default directory containing modules"
259         default "/lib/modules"
260         depends on INSMOD || RMMOD || MODPROBE || MODPROBE_SMALL || DEPMOD
261         help
262           Directory that contains kernel modules.
263           Defaults to "/lib/modules"
264
265 config DEFAULT_DEPMOD_FILE
266         # Simulate indentation
267         string "Default name of modules.dep"
268         default "modules.dep"
269         depends on INSMOD || RMMOD || MODPROBE || MODPROBE_SMALL || DEPMOD
270         help
271           Filename that contains kernel modules dependencies.
272           Defaults to "modules.dep"
273
274 config FEATURE_QUERY_MODULE_INTERFACE
275         bool
276         default y
277         depends on FEATURE_2_4_MODULES && !FEATURE_2_6_MODULES
278
279 endmenu