blob: 83c12b67ff4138ea3f623f35dd2f36408bfeba20 [file] [log] [blame]
Eric Andersenc9f20d92002-12-05 08:41:41 +00001#
2# For a description of the syntax of this configuration file,
3# see scripts/kbuild/config-language.txt.
4#
5
Glenn L McGrath1b6dfa72003-03-30 13:57:26 +00006menu "Linux Module Utilities"
Eric Andersenc9f20d92002-12-05 08:41:41 +00007
Denis Vlasenko671691c2008-07-04 10:25:44 +00008config MODPROBE_SMALL
9 bool "Simplified modutils"
10 default n
11 help
12 Simplified modutils.
13
Denis Vlasenko0e2c93f2008-07-10 14:16:11 +000014 With this option modprobe does not require modules.dep file
15 and does not use /etc/modules.conf file.
Denis Vlasenko671691c2008-07-04 10:25:44 +000016 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
Denis Vlasenko0e2c93f2008-07-10 14:16:11 +000022 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
Denis Vlasenko671691c2008-07-04 10:25:44 +000030 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
Denis Vlasenko0e2c93f2008-07-10 14:16:11 +000036 - depmod generates modules.dep.bb
Denis Vlasenko671691c2008-07-04 10:25:44 +000037
Denis Vlasenko3e8fd182008-07-10 23:42:36 +000038 As of 2008-07, this code is experimental. It is 14kb smaller
Denis Vlasenko671691c2008-07-04 10:25:44 +000039 than "non-small" modutils.
40
41config FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
Denis Vlasenkof62ab2d2008-07-09 09:50:33 +000042 bool "Accept module options on modprobe command line"
Denis Vlasenko671691c2008-07-04 10:25:44 +000043 default n
44 depends on MODPROBE_SMALL
45 help
46 Allow insmod and modprobe take module options from command line.
Denis Vlasenko671691c2008-07-04 10:25:44 +000047
48config FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
49 bool "Skip loading of already loaded modules"
50 default n
51 depends on MODPROBE_SMALL
52 help
53 Check if the module is already loaded.
Denis Vlasenko671691c2008-07-04 10:25:44 +000054
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000055config INSMOD
Eric Andersenc9f20d92002-12-05 08:41:41 +000056 bool "insmod"
57 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000058 depends on !MODPROBE_SMALL
Eric Andersenc9f20d92002-12-05 08:41:41 +000059 help
Eric Andersene5642112003-07-14 19:37:08 +000060 insmod is used to load specified modules in the running kernel.
Eric Andersenc9f20d92002-12-05 08:41:41 +000061
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000062config RMMOD
Rob Landley762bb622005-12-11 20:20:05 +000063 bool "rmmod"
64 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000065 depends on !MODPROBE_SMALL
Rob Landley762bb622005-12-11 20:20:05 +000066 help
67 rmmod is used to unload specified modules from the kernel.
68
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000069config LSMOD
Eric Andersenc9f20d92002-12-05 08:41:41 +000070 bool "lsmod"
71 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000072 depends on !MODPROBE_SMALL
Eric Andersenc9f20d92002-12-05 08:41:41 +000073 help
Eric Andersen65e20a32003-07-05 07:52:35 +000074 lsmod is used to display a list of loaded modules.
Eric Andersenc9f20d92002-12-05 08:41:41 +000075
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000076config FEATURE_LSMOD_PRETTY_2_6_OUTPUT
Denis Vlasenkoba1315d2008-09-13 14:59:38 +000077 bool "Pretty output"
Rob Landley15d3f7f2005-05-04 00:25:49 +000078 default n
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000079 depends on LSMOD
Rob Landley15d3f7f2005-05-04 00:25:49 +000080 help
Tim Rikerc1ef7bd2006-01-25 00:08:53 +000081 This option makes output format of lsmod adjusted to
Rob Landley4f653602005-05-04 23:55:06 +000082 the format of module-init-tools for Linux kernel 2.6.
Denis Vlasenkoba1315d2008-09-13 14:59:38 +000083 Increases size somewhat.
Rob Landley15d3f7f2005-05-04 00:25:49 +000084
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000085config MODPROBE
Eric Andersenc9f20d92002-12-05 08:41:41 +000086 bool "modprobe"
87 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000088 depends on !MODPROBE_SMALL
Eric Andersenc9f20d92002-12-05 08:41:41 +000089 help
Mike Frysingerfa6c4842006-05-26 01:48:17 +000090 Handle the loading of modules, and their dependencies on a high
Eric Andersene5642112003-07-14 19:37:08 +000091 level.
Eric Andersenc9f20d92002-12-05 08:41:41 +000092
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +000093config FEATURE_MODPROBE_BLACKLIST
Denys Vlasenkobcbd37d2009-06-18 13:23:58 +020094 bool "Blacklist support"
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +000095 default n
Denis Vlasenkoba1315d2008-09-13 14:59:38 +000096 depends on MODPROBE
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +000097 help
Denis Vlasenkof45c4f42008-06-16 04:09:25 +000098 Say 'y' here to enable support for the 'blacklist' command in
99 modprobe.conf. This prevents the alias resolver to resolve
100 blacklisted modules. This is useful if you want to prevent your
101 hardware autodetection scripts to load modules like evdev, frame
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +0000102 buffer drivers etc.
103
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000104config DEPMOD
105 bool "depmod"
106 default n
107 depends on !MODPROBE_SMALL
108 help
109 depmod generates modules.dep (and potentially modules.alias
110 and modules.symbols) that contain dependency information
111 for modprobe.
112
Rob Landley762bb622005-12-11 20:20:05 +0000113comment "Options common to multiple modutils"
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000114
115config FEATURE_2_4_MODULES
116 bool "Support version 2.2/2.4 Linux kernels"
117 default n
118 depends on INSMOD || RMMOD || LSMOD
119 help
120 Support module loading for 2.2.x and 2.4.x Linux kernels.
121 This increases size considerably. Say N unless you plan
122 to run ancient kernels.
123
Denys Vlasenko77c066e2009-10-25 04:35:22 +0100124config FEATURE_INSMOD_TRY_MMAP
125 bool "Try to load module from a mmap'ed area"
126 default n
127 depends on INSMOD || MODPROBE_SMALL
128 help
129 This option causes module loading code to try to mmap
130 module first. If it does not work (for example,
131 it does not work for compressed modules), module will be read
132 (and unpacked if needed) into a memory block allocated by malloc.
133
134 The only case when mmap works but malloc does not is when
135 you are trying to load a big module on a very memory-constrained
136 machine. Malloc will momentarily need 2x as much memory as mmap.
137
138 Choosing N saves about 250 bytes of code (on 32-bit x86).
139
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000140config FEATURE_INSMOD_VERSION_CHECKING
141 bool "Enable module version checking"
142 default n
143 depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
144 help
145 Support checking of versions for modules. This is used to
146 ensure that the kernel and module are made for each other.
147
148config FEATURE_INSMOD_KSYMOOPS_SYMBOLS
149 bool "Add module symbols to kernel symbol table"
150 default n
151 depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
152 help
153 By adding module symbols to the kernel symbol table, Oops messages
154 occuring within kernel modules can be properly debugged. By enabling
155 this feature, module symbols will always be added to the kernel symbol
Denis Vlasenkoc5741002009-03-05 09:26:17 +0000156 table for proper debugging support. If you are not interested in
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000157 Oops messages from kernel modules, say N.
158
159config FEATURE_INSMOD_LOADINKMEM
160 bool "In kernel memory optimization (uClinux only)"
161 default n
162 depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
163 help
164 This is a special uClinux only memory optimization that lets insmod
165 load the specified kernel module directly into kernel space, reducing
166 memory usage by preventing the need for two copies of the module
167 being loaded into memory.
168
169config FEATURE_INSMOD_LOAD_MAP
170 bool "Enable insmod load map (-m) option"
171 default n
172 depends on FEATURE_2_4_MODULES && INSMOD
173 help
174 Enabling this, one would be able to get a load map
175 output on stdout. This makes kernel module debugging
176 easier.
177 If you don't plan to debug kernel modules, you
178 don't need this option.
179
180config FEATURE_INSMOD_LOAD_MAP_FULL
181 bool "Symbols in load map"
182 default y
183 depends on FEATURE_INSMOD_LOAD_MAP && !MODPROBE_SMALL
184 help
185 Without this option, -m will only output section
186 load map. With this option, -m will also output
187 symbols load map.
Eric Andersenc9f20d92002-12-05 08:41:41 +0000188
Denis Vlasenko7d219aa2006-10-05 10:17:08 +0000189config FEATURE_CHECK_TAINTED_MODULE
Rob Landley2ec922e2006-04-13 23:22:16 +0000190 bool "Support tainted module checking with new kernels"
Eric Andersenc9f20d92002-12-05 08:41:41 +0000191 default y
Denis Vlasenkoe35af562009-01-31 14:22:24 +0000192 depends on (LSMOD || FEATURE_2_4_MODULES) && !MODPROBE_SMALL
Eric Andersenc9f20d92002-12-05 08:41:41 +0000193 help
Bernhard Reutner-Fischer3e8669f2008-07-22 18:27:53 +0000194 Support checking for tainted modules. These are usually binary
Eric Andersen9c3c38d2003-07-22 09:59:34 +0000195 only modules that will make the linux-kernel list ignore your
196 support request.
Glenn L McGrath759d7ec2003-09-03 00:42:58 +0000197 This option is required to support GPLONLY modules.
Eric Andersenc9f20d92002-12-05 08:41:41 +0000198
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000199config FEATURE_MODUTILS_ALIAS
200 bool "Support for module.aliases file"
Rob Landley762bb622005-12-11 20:20:05 +0000201 default y
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000202 depends on DEPMOD || MODPROBE
Rob Landley762bb622005-12-11 20:20:05 +0000203 help
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000204 Generate and parse modules.alias containing aliases for bus
205 identifiers:
206 alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs
Rob Landley762bb622005-12-11 20:20:05 +0000207
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000208 and aliases for logical modules names e.g.:
209 alias padlock_aes aes
210 alias aes_i586 aes
211 alias aes_generic aes
Bernhard Reutner-Fischer94748302008-05-27 08:41:32 +0000212
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000213 Say Y if unsure.
214
215config FEATURE_MODUTILS_SYMBOLS
216 bool "Support for module.symbols file"
Rob Landley762bb622005-12-11 20:20:05 +0000217 default y
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000218 depends on DEPMOD || MODPROBE
Rob Landley762bb622005-12-11 20:20:05 +0000219 help
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000220 Generate and parse modules.symbols containing aliases for
221 symbol_request() kernel calls, such as:
222 alias symbol:usb_sg_init usbcore
Rob Landley762bb622005-12-11 20:20:05 +0000223
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000224 Say Y if unsure.
Rob Landley762bb622005-12-11 20:20:05 +0000225
Denis Vlasenkoe35af562009-01-31 14:22:24 +0000226config DEFAULT_MODULES_DIR
227 string "Default directory containing modules"
228 default "/lib/modules"
229 depends on DEPMOD || MODPROBE || MODPROBE_SMALL
230 help
231 Directory that contains kernel modules.
232 Defaults to "/lib/modules"
233
234config DEFAULT_DEPMOD_FILE
235 string "Default name of modules.dep"
236 default "modules.dep"
237 depends on DEPMOD || MODPROBE || MODPROBE_SMALL
238 help
239 Filename that contains kernel modules dependencies.
240 Defaults to "modules.dep"
241
Eric Andersenc9f20d92002-12-05 08:41:41 +0000242endmenu