1#
2# For a description of the syntax of this configuration file,
3# see docs/Kconfig-language.txt.
4#
5
6menu "Linux Module Utilities"
7
8config MODPROBE_SMALL
9	bool "Simplified modutils"
10	default y
11	help
12	Build smaller (~1.5 kbytes), simplified module tools.
13
14	This option by itself does not enable any applets -
15	you need to select applets individually below.
16
17	With this option modprobe does not require modules.dep file
18	and does not use /etc/modules.conf file.
19	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
25	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
33	Additional module parameters can be stored in
34	/etc/modules/$module_name files.
35
36INSERT
37
38comment "Options common to multiple modutils"
39
40config FEATURE_CMDLINE_MODULE_OPTIONS
41	bool "Accept module options on modprobe command line"
42	default y
43	depends on INSMOD || MODPROBE
44	help
45	Allow insmod and modprobe take module options from the applets'
46	command line.
47
48config FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
49	bool "Skip loading of already loaded modules"
50	default y
51	depends on MODPROBE_SMALL && (DEPMOD || INSMOD || MODPROBE)
52	help
53	Check if the module is already loaded.
54
55config FEATURE_2_4_MODULES
56	bool "Support version 2.2/2.4 Linux kernels"
57	default n
58	depends on (INSMOD || LSMOD || MODPROBE || RMMOD) && !MODPROBE_SMALL
59	help
60	Support module loading for 2.2.x and 2.4.x Linux kernels.
61	This increases size considerably. Say N unless you plan
62	to run ancient kernels.
63
64config FEATURE_INSMOD_VERSION_CHECKING
65	bool "Enable module version checking"
66	default n
67	depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
68	help
69	Support checking of versions for modules. This is used to
70	ensure that the kernel and module are made for each other.
71
72config FEATURE_INSMOD_KSYMOOPS_SYMBOLS
73	bool "Add module symbols to kernel symbol table"
74	default n
75	depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
76	help
77	By adding module symbols to the kernel symbol table, Oops messages
78	occurring within kernel modules can be properly debugged. By enabling
79	this feature, module symbols will always be added to the kernel symbol
80	table for proper debugging support. If you are not interested in
81	Oops messages from kernel modules, say N.
82
83config FEATURE_INSMOD_LOADINKMEM
84	bool "In kernel memory optimization (uClinux only)"
85	default n
86	depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE)
87	help
88	This is a special uClinux only memory optimization that lets insmod
89	load the specified kernel module directly into kernel space, reducing
90	memory usage by preventing the need for two copies of the module
91	being loaded into memory.
92
93config FEATURE_INSMOD_LOAD_MAP
94	bool "Enable insmod load map (-m) option"
95	default n
96	depends on FEATURE_2_4_MODULES && INSMOD
97	help
98	Enabling this, one would be able to get a load map
99	output on stdout. This makes kernel module debugging
100	easier.
101	If you don't plan to debug kernel modules, you
102	don't need this option.
103
104config FEATURE_INSMOD_LOAD_MAP_FULL
105	bool "Symbols in load map"
106	default y
107	depends on FEATURE_INSMOD_LOAD_MAP
108	help
109	Without this option, -m will only output section
110	load map. With this option, -m will also output
111	symbols load map.
112
113config FEATURE_CHECK_TAINTED_MODULE
114	bool "Support tainted module checking with new kernels"
115	default y
116	depends on (LSMOD || FEATURE_2_4_MODULES) && !MODPROBE_SMALL
117	help
118	Support checking for tainted modules. These are usually binary
119	only modules that will make the linux-kernel list ignore your
120	support request.
121	This option is required to support GPLONLY modules.
122
123config FEATURE_INSMOD_TRY_MMAP
124	bool "Try to load module from a mmap'ed area"
125	default n
126	depends on (INSMOD || MODPROBE) && !MODPROBE_SMALL
127	help
128	This option causes module loading code to try to mmap
129	module first. If it does not work (for example,
130	it does not work for compressed modules), module will be read
131	(and unpacked if needed) into a memory block allocated by malloc.
132
133	The only case when mmap works but malloc does not is when
134	you are trying to load a big module on a very memory-constrained
135	machine. Malloc will momentarily need 2x as much memory as mmap.
136
137	Choosing N saves about 250 bytes of code (on 32-bit x86).
138
139config FEATURE_MODUTILS_ALIAS
140	bool "Support module.aliases file"
141	default y
142	depends on (DEPMOD || MODPROBE) && !MODPROBE_SMALL
143	help
144	Generate and parse modules.alias containing aliases for bus
145	identifiers:
146		alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs
147
148	and aliases for logical modules names e.g.:
149		alias padlock_aes aes
150		alias aes_i586 aes
151		alias aes_generic aes
152
153	Say Y if unsure.
154
155config FEATURE_MODUTILS_SYMBOLS
156	bool "Support module.symbols file"
157	default y
158	depends on (DEPMOD || MODPROBE) && !MODPROBE_SMALL
159	help
160	Generate and parse modules.symbols containing aliases for
161	symbol_request() kernel calls, such as:
162		alias symbol:usb_sg_init usbcore
163
164	Say Y if unsure.
165
166config DEFAULT_MODULES_DIR
167	string "Default directory containing modules"
168	default "/lib/modules"
169	depends on DEPMOD || MODPROBE || MODINFO
170	help
171	Directory that contains kernel modules.
172	Defaults to "/lib/modules"
173
174config DEFAULT_DEPMOD_FILE
175	string "Default name of modules.dep"
176	default "modules.dep"
177	depends on DEPMOD || MODPROBE || MODINFO
178	help
179	Filename that contains kernel modules dependencies.
180	Defaults to "modules.dep".
181	If you configured the "simplified modutils" (MODPROBE_SMALL), a
182	".bb" suffix will be added after this name. Do not specify ".bb"
183	here unless you intend your depmod or modprobe to work on
184	"modules.dep.bb.bb" or such.
185
186endmenu
187