blob: 0b11832bca98931beb3bcc9a36ac64ae07ba3272 [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
Pascal Bellard22bdf902010-06-06 04:55:13 +02008INSERT
9
Denis Vlasenko671691c2008-07-04 10:25:44 +000010config MODPROBE_SMALL
11 bool "Simplified modutils"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020012 default y
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +010013 select PLATFORM_LINUX
Denis Vlasenko671691c2008-07-04 10:25:44 +000014 help
15 Simplified modutils.
16
Denis Vlasenko0e2c93f2008-07-10 14:16:11 +000017 With this option modprobe does not require modules.dep file
18 and does not use /etc/modules.conf file.
Denis Vlasenko671691c2008-07-04 10:25:44 +000019 It scans module files in /lib/modules/`uname -r` and
20 determines dependencies and module alias names on the fly.
21 This may make module loading slower, most notably
22 when one needs to load module by alias (this requires
23 scanning through module _bodies_).
24
Denis Vlasenko0e2c93f2008-07-10 14:16:11 +000025 At the first attempt to load a module by alias modprobe
26 will try to generate modules.dep.bb file in order to speed up
27 future loads by alias. Failure to do so (read-only /lib/modules,
28 etc) is not reported, and future modprobes will be slow too.
29
30 NB: modules.dep.bb file format is not compatible
31 with modules.dep file as created/used by standard module tools.
32
Denis Vlasenko671691c2008-07-04 10:25:44 +000033 Additional module parameters can be stored in
34 /etc/modules/$module_name files.
35
36 Apart from modprobe, other utilities are also provided:
37 - insmod is an alias to modprobe
38 - rmmod is an alias to modprobe -r
Denis Vlasenko0e2c93f2008-07-10 14:16:11 +000039 - depmod generates modules.dep.bb
Denis Vlasenko671691c2008-07-04 10:25:44 +000040
Denis Vlasenko671691c2008-07-04 10:25:44 +000041config FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
Denis Vlasenkof62ab2d2008-07-09 09:50:33 +000042 bool "Accept module options on modprobe command line"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020043 default y
Denis Vlasenko671691c2008-07-04 10:25:44 +000044 depends on MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +010045 select PLATFORM_LINUX
Denis Vlasenko671691c2008-07-04 10:25:44 +000046 help
47 Allow insmod and modprobe take module options from command line.
Denis Vlasenko671691c2008-07-04 10:25:44 +000048
49config FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
50 bool "Skip loading of already loaded modules"
Denys Vlasenko2f32bf82010-06-06 04:14:28 +020051 default y
Denis Vlasenko671691c2008-07-04 10:25:44 +000052 depends on MODPROBE_SMALL
53 help
54 Check if the module is already loaded.
Denis Vlasenko671691c2008-07-04 10:25:44 +000055
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000056config INSMOD
Eric Andersenc9f20d92002-12-05 08:41:41 +000057 bool "insmod"
58 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000059 depends on !MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +010060 select PLATFORM_LINUX
Eric Andersenc9f20d92002-12-05 08:41:41 +000061 help
Eric Andersene5642112003-07-14 19:37:08 +000062 insmod is used to load specified modules in the running kernel.
Eric Andersenc9f20d92002-12-05 08:41:41 +000063
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000064config RMMOD
Rob Landley762bb622005-12-11 20:20:05 +000065 bool "rmmod"
66 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000067 depends on !MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +010068 select PLATFORM_LINUX
Rob Landley762bb622005-12-11 20:20:05 +000069 help
70 rmmod is used to unload specified modules from the kernel.
71
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000072config LSMOD
Eric Andersenc9f20d92002-12-05 08:41:41 +000073 bool "lsmod"
74 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000075 depends on !MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +010076 select PLATFORM_LINUX
Eric Andersenc9f20d92002-12-05 08:41:41 +000077 help
Eric Andersen65e20a32003-07-05 07:52:35 +000078 lsmod is used to display a list of loaded modules.
Eric Andersenc9f20d92002-12-05 08:41:41 +000079
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000080config FEATURE_LSMOD_PRETTY_2_6_OUTPUT
Denis Vlasenkoba1315d2008-09-13 14:59:38 +000081 bool "Pretty output"
Rob Landley15d3f7f2005-05-04 00:25:49 +000082 default n
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000083 depends on LSMOD
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +010084 select PLATFORM_LINUX
Rob Landley15d3f7f2005-05-04 00:25:49 +000085 help
Tim Rikerc1ef7bd2006-01-25 00:08:53 +000086 This option makes output format of lsmod adjusted to
Rob Landley4f653602005-05-04 23:55:06 +000087 the format of module-init-tools for Linux kernel 2.6.
Denis Vlasenkoba1315d2008-09-13 14:59:38 +000088 Increases size somewhat.
Rob Landley15d3f7f2005-05-04 00:25:49 +000089
Denis Vlasenko7d219aa2006-10-05 10:17:08 +000090config MODPROBE
Eric Andersenc9f20d92002-12-05 08:41:41 +000091 bool "modprobe"
92 default n
Denis Vlasenko671691c2008-07-04 10:25:44 +000093 depends on !MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +010094 select PLATFORM_LINUX
Eric Andersenc9f20d92002-12-05 08:41:41 +000095 help
Mike Frysingerfa6c4842006-05-26 01:48:17 +000096 Handle the loading of modules, and their dependencies on a high
Eric Andersene5642112003-07-14 19:37:08 +000097 level.
Eric Andersenc9f20d92002-12-05 08:41:41 +000098
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +000099config FEATURE_MODPROBE_BLACKLIST
Denys Vlasenkobcbd37d2009-06-18 13:23:58 +0200100 bool "Blacklist support"
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +0000101 default n
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000102 depends on MODPROBE
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100103 select PLATFORM_LINUX
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +0000104 help
Denis Vlasenkof45c4f42008-06-16 04:09:25 +0000105 Say 'y' here to enable support for the 'blacklist' command in
106 modprobe.conf. This prevents the alias resolver to resolve
107 blacklisted modules. This is useful if you want to prevent your
108 hardware autodetection scripts to load modules like evdev, frame
Denis Vlasenko9ddc8d52008-05-18 14:39:43 +0000109 buffer drivers etc.
110
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000111config DEPMOD
112 bool "depmod"
113 default n
114 depends on !MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100115 select PLATFORM_LINUX
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000116 help
117 depmod generates modules.dep (and potentially modules.alias
118 and modules.symbols) that contain dependency information
119 for modprobe.
120
Rob Landley762bb622005-12-11 20:20:05 +0000121comment "Options common to multiple modutils"
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000122
123config FEATURE_2_4_MODULES
124 bool "Support version 2.2/2.4 Linux kernels"
125 default n
126 depends on INSMOD || RMMOD || LSMOD
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100127 select PLATFORM_LINUX
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000128 help
129 Support module loading for 2.2.x and 2.4.x Linux kernels.
130 This increases size considerably. Say N unless you plan
131 to run ancient kernels.
132
Denys Vlasenko77c066e2009-10-25 04:35:22 +0100133config FEATURE_INSMOD_TRY_MMAP
134 bool "Try to load module from a mmap'ed area"
135 default n
136 depends on INSMOD || MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100137 select PLATFORM_LINUX
Denys Vlasenko77c066e2009-10-25 04:35:22 +0100138 help
139 This option causes module loading code to try to mmap
140 module first. If it does not work (for example,
141 it does not work for compressed modules), module will be read
142 (and unpacked if needed) into a memory block allocated by malloc.
143
144 The only case when mmap works but malloc does not is when
145 you are trying to load a big module on a very memory-constrained
146 machine. Malloc will momentarily need 2x as much memory as mmap.
147
148 Choosing N saves about 250 bytes of code (on 32-bit x86).
149
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000150config FEATURE_INSMOD_VERSION_CHECKING
151 bool "Enable module version checking"
152 default n
153 depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100154 select PLATFORM_LINUX
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000155 help
156 Support checking of versions for modules. This is used to
157 ensure that the kernel and module are made for each other.
158
159config FEATURE_INSMOD_KSYMOOPS_SYMBOLS
160 bool "Add module symbols to kernel symbol table"
161 default n
162 depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100163 select PLATFORM_LINUX
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000164 help
165 By adding module symbols to the kernel symbol table, Oops messages
166 occuring within kernel modules can be properly debugged. By enabling
167 this feature, module symbols will always be added to the kernel symbol
Denis Vlasenkoc5741002009-03-05 09:26:17 +0000168 table for proper debugging support. If you are not interested in
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000169 Oops messages from kernel modules, say N.
170
171config FEATURE_INSMOD_LOADINKMEM
172 bool "In kernel memory optimization (uClinux only)"
173 default n
174 depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100175 select PLATFORM_LINUX
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000176 help
177 This is a special uClinux only memory optimization that lets insmod
178 load the specified kernel module directly into kernel space, reducing
179 memory usage by preventing the need for two copies of the module
180 being loaded into memory.
181
182config FEATURE_INSMOD_LOAD_MAP
183 bool "Enable insmod load map (-m) option"
184 default n
185 depends on FEATURE_2_4_MODULES && INSMOD
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100186 select PLATFORM_LINUX
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000187 help
188 Enabling this, one would be able to get a load map
189 output on stdout. This makes kernel module debugging
190 easier.
191 If you don't plan to debug kernel modules, you
192 don't need this option.
193
194config FEATURE_INSMOD_LOAD_MAP_FULL
195 bool "Symbols in load map"
196 default y
197 depends on FEATURE_INSMOD_LOAD_MAP && !MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100198 select PLATFORM_LINUX
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000199 help
200 Without this option, -m will only output section
201 load map. With this option, -m will also output
202 symbols load map.
Eric Andersenc9f20d92002-12-05 08:41:41 +0000203
Denis Vlasenko7d219aa2006-10-05 10:17:08 +0000204config FEATURE_CHECK_TAINTED_MODULE
Rob Landley2ec922e2006-04-13 23:22:16 +0000205 bool "Support tainted module checking with new kernels"
Eric Andersenc9f20d92002-12-05 08:41:41 +0000206 default y
Denis Vlasenkoe35af562009-01-31 14:22:24 +0000207 depends on (LSMOD || FEATURE_2_4_MODULES) && !MODPROBE_SMALL
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100208 select PLATFORM_LINUX
Eric Andersenc9f20d92002-12-05 08:41:41 +0000209 help
Bernhard Reutner-Fischer3e8669f2008-07-22 18:27:53 +0000210 Support checking for tainted modules. These are usually binary
Eric Andersen9c3c38d2003-07-22 09:59:34 +0000211 only modules that will make the linux-kernel list ignore your
212 support request.
Glenn L McGrath759d7ec2003-09-03 00:42:58 +0000213 This option is required to support GPLONLY modules.
Eric Andersenc9f20d92002-12-05 08:41:41 +0000214
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000215config FEATURE_MODUTILS_ALIAS
216 bool "Support for module.aliases file"
Rob Landley762bb622005-12-11 20:20:05 +0000217 default y
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000218 depends on DEPMOD || MODPROBE
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100219 select PLATFORM_LINUX
Rob Landley762bb622005-12-11 20:20:05 +0000220 help
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000221 Generate and parse modules.alias containing aliases for bus
222 identifiers:
223 alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs
Rob Landley762bb622005-12-11 20:20:05 +0000224
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000225 and aliases for logical modules names e.g.:
226 alias padlock_aes aes
227 alias aes_i586 aes
228 alias aes_generic aes
Bernhard Reutner-Fischer94748302008-05-27 08:41:32 +0000229
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000230 Say Y if unsure.
231
232config FEATURE_MODUTILS_SYMBOLS
233 bool "Support for module.symbols file"
Rob Landley762bb622005-12-11 20:20:05 +0000234 default y
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000235 depends on DEPMOD || MODPROBE
Denys Vlasenkoe3b1a1f2011-02-26 22:24:08 +0100236 select PLATFORM_LINUX
Rob Landley762bb622005-12-11 20:20:05 +0000237 help
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000238 Generate and parse modules.symbols containing aliases for
239 symbol_request() kernel calls, such as:
240 alias symbol:usb_sg_init usbcore
Rob Landley762bb622005-12-11 20:20:05 +0000241
Denis Vlasenkoba1315d2008-09-13 14:59:38 +0000242 Say Y if unsure.
Rob Landley762bb622005-12-11 20:20:05 +0000243
Denis Vlasenkoe35af562009-01-31 14:22:24 +0000244config DEFAULT_MODULES_DIR
245 string "Default directory containing modules"
246 default "/lib/modules"
Lauri Kasanenf6464002010-06-26 13:41:35 +0300247 depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO
Denis Vlasenkoe35af562009-01-31 14:22:24 +0000248 help
249 Directory that contains kernel modules.
250 Defaults to "/lib/modules"
251
252config DEFAULT_DEPMOD_FILE
253 string "Default name of modules.dep"
254 default "modules.dep"
Lauri Kasanenf6464002010-06-26 13:41:35 +0300255 depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO
Denis Vlasenkoe35af562009-01-31 14:22:24 +0000256 help
257 Filename that contains kernel modules dependencies.
258 Defaults to "modules.dep"
259
Eric Andersenc9f20d92002-12-05 08:41:41 +0000260endmenu