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