[package] busybox: update to v1.12.4 (partially closes: #4279)
[openwrt.git] / package / busybox / config / 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 BUSYBOX_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 BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
42         bool "Accept module options on modprobe command line"
43         default n
44         depends on BUSYBOX_CONFIG_MODPROBE_SMALL
45         help
46           Allow insmod and modprobe take module options from command line.
47           N.B. Very bloaty.
48
49 config BUSYBOX_CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
50         bool "Skip loading of already loaded modules"
51         default n
52         depends on BUSYBOX_CONFIG_MODPROBE_SMALL
53         help
54           Check if the module is already loaded.
55           N.B. It's racy.
56
57 config BUSYBOX_CONFIG_DEPMOD
58         bool "depmod"
59         default n
60         depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
61         help
62           depmod generates modules.dep (FIXME: elaborate)
63
64 config BUSYBOX_CONFIG_FEATURE_DEPMOD_PRUNE_FANCY
65         bool "Fancy dependency pruning"
66         default n
67         depends on BUSYBOX_CONFIG_DEPMOD
68         help
69           By default modules.dep contains all dependencies as listed by
70           the modules.
71           If you enable this option then we remove implied modules from
72           the dependencies.
73           This makes depmod somewhat bigger but generates a smaller
74           modules.dep file.
75
76           If unsure, say N.
77
78 config BUSYBOX_CONFIG_FEATURE_DEPMOD_ALIAS
79         bool "Alias support"
80         default n
81         depends on BUSYBOX_CONFIG_DEPMOD
82         help
83           By default modules.dep does not contain alias information.
84           Enable this to emit aliases of the form:
85
86             alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs
87
88 config BUSYBOX_CONFIG_INSMOD
89         bool "insmod"
90         default y
91         depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
92         help
93           insmod is used to load specified modules in the running kernel.
94
95 config BUSYBOX_CONFIG_FEATURE_INSMOD_VERSION_CHECKING
96         bool "Module version checking"
97         default n
98         depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES
99         help
100           Support checking of versions for modules. This is used to
101           ensure that the kernel and module are made for each other.
102
103 config BUSYBOX_CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS
104         bool "Add module symbols to kernel symbol table"
105         default n
106         depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES
107         help
108           By adding module symbols to the kernel symbol table, Oops messages
109           occuring within kernel modules can be properly debugged. By enabling
110           this feature, module symbols will always be added to the kernel symbol
111           table for properly debugging support. If you are not interested in
112           Oops messages from kernel modules, say N.
113
114 config BUSYBOX_CONFIG_FEATURE_INSMOD_LOADINKMEM
115         bool "In kernel memory optimization (uClinux only)"
116         default n
117         depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES
118         help
119           This is a special uClinux only memory optimization that lets insmod
120           load the specified kernel module directly into kernel space, reducing
121           memory usage by preventing the need for two copies of the module
122           being loaded into memory.
123
124 config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP
125         bool "Enable load map (-m) option"
126         default n
127         depends on BUSYBOX_CONFIG_INSMOD && ( BUSYBOX_CONFIG_FEATURE_2_4_MODULES || BUSYBOX_CONFIG_FEATURE_2_6_MODULES )
128         help
129           Enabling this, one would be able to get a load map
130           output on stdout. This makes kernel module debugging
131           easier.
132           If you don't plan to debug kernel modules, you
133           don't need this option.
134
135 config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL
136         bool "Symbols in load map"
137         default n
138         depends on BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP
139         help
140           Without this option, -m will only output section
141           load map. With this option, -m will also output
142           symbols load map.
143
144 config BUSYBOX_CONFIG_RMMOD
145         bool "rmmod"
146         default y
147         depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
148         help
149           rmmod is used to unload specified modules from the kernel.
150
151 config BUSYBOX_CONFIG_LSMOD
152         bool "lsmod"
153         default y
154         depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
155         help
156           lsmod is used to display a list of loaded modules.
157
158 config BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT
159         bool "Pretty output for 2.6.x Linux kernels"
160         default y
161         depends on BUSYBOX_CONFIG_LSMOD
162         help
163           This option makes output format of lsmod adjusted to
164           the format of module-init-tools for Linux kernel 2.6.
165
166 config BUSYBOX_CONFIG_MODPROBE
167         bool "modprobe"
168         default n
169         depends on !BUSYBOX_CONFIG_MODPROBE_SMALL
170         help
171           Handle the loading of modules, and their dependencies on a high
172           level.
173
174           Note that in the state, modprobe does not understand multiple
175           module options from the configuration file. See option below.
176
177 config BUSYBOX_CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS
178         bool
179         prompt "Multiple options parsing"
180         default n
181         depends on BUSYBOX_CONFIG_MODPROBE
182         help
183           Allow modprobe to understand more than one option to pass to
184           modules.
185
186           This is a WIP, while waiting for a common argument parsing
187           common amongst all BB applets (shell, modprobe, etc...) and
188           adds around 600 bytes on x86, 700 bytes on ARM. The code is
189           biggish and uggly, but just works.
190
191           Saying Y here is not a bad idea if you're not that short
192           on storage capacity.
193
194 config BUSYBOX_CONFIG_FEATURE_MODPROBE_FANCY_ALIAS
195         bool
196         prompt "Fancy alias parsing"
197         default n
198         depends on BUSYBOX_CONFIG_MODPROBE && BUSYBOX_CONFIG_FEATURE_2_6_MODULES
199         help
200           Say 'y' here to enable parsing of aliases with underscore/dash
201           mismatch between module name and file name, along with bus-specific
202           aliases (such as pci:... or usb:... aliases).
203
204 config BUSYBOX_CONFIG_FEATURE_MODPROBE_BLACKLIST
205         bool
206         prompt "Blacklist support"
207         default n
208         depends on BUSYBOX_CONFIG_MODPROBE && BUSYBOX_CONFIG_FEATURE_2_6_MODULES
209         help
210           Say 'y' here to enable support for the 'blacklist' command in
211           modprobe.conf. This prevents the alias resolver to resolve
212           blacklisted modules. This is useful if you want to prevent your
213           hardware autodetection scripts to load modules like evdev, frame
214           buffer drivers etc.
215
216 comment "Options common to multiple modutils"
217         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_LSMOD || BUSYBOX_CONFIG_DEPMOD
218
219 config BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE
220         # Simulate indentation
221         bool "Support tainted module checking with new kernels"
222         default y
223         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_LSMOD
224         help
225           Support checking for tainted modules. These are usually binary
226           only modules that will make the linux-kernel list ignore your
227           support request.
228           This option is required to support GPLONLY modules.
229
230 config BUSYBOX_CONFIG_FEATURE_2_4_MODULES
231         # Simulate indentation
232         bool "Support version 2.2.x to 2.4.x Linux kernels"
233         default n
234         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE
235         help
236           Support module loading for 2.2.x and 2.4.x Linux kernels.
237
238           Note:
239           This is automatically enabled if 2.6 modules are not enabled.
240
241 config BUSYBOX_CONFIG_FEATURE_2_6_MODULES
242         # Simulate indentation
243         bool "Support version 2.6.x Linux kernels"
244         default y
245         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE
246         help
247           Support module loading for newer 2.6.x Linux kernels.
248
249 config BUSYBOX_CONFIG_DEFAULT_MODULES_DIR
250         # Simulate indentation
251         string "Default directory containing modules"
252         default "/lib/modules"
253         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_MODPROBE_SMALL || BUSYBOX_CONFIG_DEPMOD
254         help
255           Directory that contains kernel modules.
256           Defaults to "/lib/modules"
257
258 config BUSYBOX_CONFIG_DEFAULT_DEPMOD_FILE
259         # Simulate indentation
260         string "Default name of modules.dep"
261         default "modules.dep"
262         depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_MODPROBE_SMALL || BUSYBOX_CONFIG_DEPMOD
263         help
264           Filename that contains kernel modules dependencies.
265           Defaults to "modules.dep"
266
267 config BUSYBOX_CONFIG_FEATURE_QUERY_MODULE_INTERFACE
268         bool
269         default n
270         depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && !BUSYBOX_CONFIG_FEATURE_2_6_MODULES
271
272 endmenu