modprobe-small: fix failure to load when no arguments are given
[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 DEFAULT_MODULES_DIR
9         string "Default directory containing modules"
10         default "/lib/modules"
11         help
12           Directory that contains kernel modules.
13           Defaults to "/lib/modules"
14
15 config DEFAULT_DEPMOD_FILE
16         string "Default name of modules.dep"
17         default "modules.dep"
18         help
19           Filename that contains kernel modules dependencies.
20           Defaults to "modules.dep"
21
22 config MODPROBE_SMALL
23         bool "Simplified modutils"
24         default n
25         help
26           Simplified modutils.
27
28           With this option modprobe does not require modules.dep file
29           and does not use /etc/modules.conf file.
30           It scans module files in /lib/modules/`uname -r` and
31           determines dependencies and module alias names on the fly.
32           This may make module loading slower, most notably
33           when one needs to load module by alias (this requires
34           scanning through module _bodies_).
35
36           At the first attempt to load a module by alias modprobe
37           will try to generate modules.dep.bb file in order to speed up
38           future loads by alias. Failure to do so (read-only /lib/modules,
39           etc) is not reported, and future modprobes will be slow too.
40
41           NB: modules.dep.bb file format is not compatible
42           with modules.dep file as created/used by standard module tools.
43
44           Additional module parameters can be stored in
45           /etc/modules/$module_name files.
46
47           Apart from modprobe, other utilities are also provided:
48           - insmod is an alias to modprobe
49           - rmmod is an alias to modprobe -r
50           - depmod generates modules.dep.bb
51
52           As of 2008-07, this code is experimental. It is 14kb smaller
53           than "non-small" modutils.
54
55 config FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
56         bool "Accept module options on modprobe command line"
57         default n
58         depends on MODPROBE_SMALL
59         help
60           Allow insmod and modprobe take module options from command line.
61           N.B. Very bloaty.
62
63 config FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
64         bool "Skip loading of already loaded modules"
65         default n
66         depends on MODPROBE_SMALL
67         help
68           Check if the module is already loaded.
69           N.B. It's racy.
70
71 config INSMOD
72         bool "insmod"
73         default n
74         depends on !MODPROBE_SMALL
75         help
76           insmod is used to load specified modules in the running kernel.
77
78 config RMMOD
79         bool "rmmod"
80         default n
81         depends on !MODPROBE_SMALL
82         help
83           rmmod is used to unload specified modules from the kernel.
84
85 config LSMOD
86         bool "lsmod"
87         default n
88         depends on !MODPROBE_SMALL
89         help
90           lsmod is used to display a list of loaded modules.
91
92 config FEATURE_LSMOD_PRETTY_2_6_OUTPUT
93         bool "Pretty output"
94         default n
95         depends on LSMOD
96         help
97           This option makes output format of lsmod adjusted to
98           the format of module-init-tools for Linux kernel 2.6.
99           Increases size somewhat.
100
101 config MODPROBE
102         bool "modprobe"
103         default n
104         depends on !MODPROBE_SMALL
105         help
106           Handle the loading of modules, and their dependencies on a high
107           level.
108
109           Note that in the state, modprobe does not understand multiple
110           module options from the configuration file. See option below.
111
112 config FEATURE_MODPROBE_BLACKLIST
113         bool
114         prompt "Blacklist support"
115         default n
116         depends on MODPROBE
117         help
118           Say 'y' here to enable support for the 'blacklist' command in
119           modprobe.conf. This prevents the alias resolver to resolve
120           blacklisted modules. This is useful if you want to prevent your
121           hardware autodetection scripts to load modules like evdev, frame
122           buffer drivers etc.
123
124 config DEPMOD
125         bool "depmod"
126         default n
127         depends on !MODPROBE_SMALL
128         help
129           depmod generates modules.dep (and potentially modules.alias
130           and modules.symbols) that contain dependency information
131           for modprobe.
132
133 comment "Options common to multiple modutils"
134
135 config FEATURE_2_4_MODULES
136         bool "Support version 2.2/2.4 Linux kernels"
137         default n
138         depends on INSMOD || RMMOD || LSMOD
139         help
140           Support module loading for 2.2.x and 2.4.x Linux kernels.
141           This increases size considerably. Say N unless you plan
142           to run ancient kernels.
143
144 config FEATURE_INSMOD_VERSION_CHECKING
145         bool "Enable module version checking"
146         default n
147         depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
148         help
149           Support checking of versions for modules. This is used to
150           ensure that the kernel and module are made for each other.
151
152 config FEATURE_INSMOD_KSYMOOPS_SYMBOLS
153         bool "Add module symbols to kernel symbol table"
154         default n
155         depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
156         help
157           By adding module symbols to the kernel symbol table, Oops messages
158           occuring within kernel modules can be properly debugged. By enabling
159           this feature, module symbols will always be added to the kernel symbol
160           table for properly debugging support. If you are not interested in
161           Oops messages from kernel modules, say N.
162
163 config FEATURE_INSMOD_LOADINKMEM
164         bool "In kernel memory optimization (uClinux only)"
165         default n
166         depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
167         help
168           This is a special uClinux only memory optimization that lets insmod
169           load the specified kernel module directly into kernel space, reducing
170           memory usage by preventing the need for two copies of the module
171           being loaded into memory.
172
173 config FEATURE_INSMOD_LOAD_MAP
174         bool "Enable insmod load map (-m) option"
175         default n
176         depends on FEATURE_2_4_MODULES && INSMOD
177         help
178           Enabling this, one would be able to get a load map
179           output on stdout. This makes kernel module debugging
180           easier.
181           If you don't plan to debug kernel modules, you
182           don't need this option.
183
184 config FEATURE_INSMOD_LOAD_MAP_FULL
185         bool "Symbols in load map"
186         default y
187         depends on FEATURE_INSMOD_LOAD_MAP && !MODPROBE_SMALL
188         help
189           Without this option, -m will only output section
190           load map. With this option, -m will also output
191           symbols load map.
192
193 config FEATURE_CHECK_TAINTED_MODULE
194         bool "Support tainted module checking with new kernels"
195         default y
196         depends on !MODPROBE_SMALL
197         help
198           Support checking for tainted modules. These are usually binary
199           only modules that will make the linux-kernel list ignore your
200           support request.
201           This option is required to support GPLONLY modules.
202
203 config FEATURE_MODUTILS_ALIAS
204         bool "Support for module.aliases file"
205         default y
206         depends on DEPMOD || MODPROBE
207         help
208           Generate and parse modules.alias containing aliases for bus
209           identifiers:
210             alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs
211
212           and aliases for logical modules names e.g.:
213             alias padlock_aes aes
214             alias aes_i586 aes
215             alias aes_generic aes
216
217           Say Y if unsure.
218
219 config FEATURE_MODUTILS_SYMBOLS
220         bool "Support for module.symbols file"
221         default y
222         depends on DEPMOD || MODPROBE
223         help
224           Generate and parse modules.symbols containing aliases for
225           symbol_request() kernel calls, such as:
226             alias symbol:usb_sg_init usbcore
227
228           Say Y if unsure.
229
230 endmenu