summaryrefslogtreecommitdiff
path: root/package/busybox/config/modutils/Config.in
blob: 141e5ea856089cf86c6cb9fa1ee5785725891657 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
# DO NOT EDIT. This file is generated from Config.src
#
# For a description of the syntax of this configuration file,
# see docs/Kconfig-language.txt.
#

menu "Linux Module Utilities"

config BUSYBOX_MODPROBE_SMALL
	bool "Simplified modutils"
	default y
	help
	Build smaller (~1.5 kbytes), simplified module tools.

	This option by itself does not enable any applets -
	you need to select applets individually below.

	With this option modprobe does not require modules.dep file
	and does not use /etc/modules.conf file.
	It scans module files in /lib/modules/`uname -r` and
	determines dependencies and module alias names on the fly.
	This may make module loading slower, most notably
	when one needs to load module by alias (this requires
	scanning through module _bodies_).

	At the first attempt to load a module by alias modprobe
	will try to generate modules.dep.bb file in order to speed up
	future loads by alias. Failure to do so (read-only /lib/modules,
	etc) is not reported, and future modprobes will be slow too.

	NB: modules.dep.bb file format is not compatible
	with modules.dep file as created/used by standard module tools.

	Additional module parameters can be stored in
	/etc/modules/$module_name files.

config BUSYBOX_DEPMOD
	bool "depmod (27 kb)"
	default y
	select BUSYBOX_PLATFORM_LINUX
	help
	depmod generates modules.dep (and potentially modules.alias
	and modules.symbols) that contain dependency information
	for modprobe.
config BUSYBOX_INSMOD
	bool "insmod (22 kb)"
	default y
	select BUSYBOX_PLATFORM_LINUX
	help
	insmod is used to load specified modules in the running kernel.
config BUSYBOX_LSMOD
	bool "lsmod (1.9 kb)"
	default y
	select BUSYBOX_PLATFORM_LINUX
	help
	lsmod is used to display a list of loaded modules.

config BUSYBOX_FEATURE_LSMOD_PRETTY_2_6_OUTPUT
	bool "Pretty output"
	default y
	depends on BUSYBOX_LSMOD && !BUSYBOX_MODPROBE_SMALL
	help
	This option makes output format of lsmod adjusted to
	the format of module-init-tools for Linux kernel 2.6.
	Increases size somewhat.
config BUSYBOX_MODINFO
	bool "modinfo (24 kb)"
	default y
	select BUSYBOX_PLATFORM_LINUX
	help
	Show information about a Linux Kernel module
config BUSYBOX_MODPROBE
	bool "modprobe (28 kb)"
	default y
	select BUSYBOX_PLATFORM_LINUX
	help
	Handle the loading of modules, and their dependencies on a high
	level.

config BUSYBOX_FEATURE_MODPROBE_BLACKLIST
	bool "Blacklist support"
	default y
	depends on BUSYBOX_MODPROBE && !BUSYBOX_MODPROBE_SMALL
	help
	Say 'y' here to enable support for the 'blacklist' command in
	modprobe.conf. This prevents the alias resolver to resolve
	blacklisted modules. This is useful if you want to prevent your
	hardware autodetection scripts to load modules like evdev, frame
	buffer drivers etc.
config BUSYBOX_RMMOD
	bool "rmmod (3.3 kb)"
	default y
	select BUSYBOX_PLATFORM_LINUX
	help
	rmmod is used to unload specified modules from the kernel.

comment "Options common to multiple modutils"

config BUSYBOX_FEATURE_CMDLINE_MODULE_OPTIONS
	bool "Accept module options on modprobe command line"
	default y
	depends on BUSYBOX_INSMOD || BUSYBOX_MODPROBE
	help
	Allow insmod and modprobe take module options from the applets'
	command line.

config BUSYBOX_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
	bool "Skip loading of already loaded modules"
	default y
	depends on BUSYBOX_MODPROBE_SMALL && (BUSYBOX_DEPMOD || BUSYBOX_INSMOD || BUSYBOX_MODPROBE)
	help
	Check if the module is already loaded.

config BUSYBOX_FEATURE_2_4_MODULES
	bool "Support version 2.2/2.4 Linux kernels"
	default n
	depends on (BUSYBOX_INSMOD || BUSYBOX_LSMOD || BUSYBOX_MODPROBE || BUSYBOX_RMMOD) && !BUSYBOX_MODPROBE_SMALL
	help
	Support module loading for 2.2.x and 2.4.x Linux kernels.
	This increases size considerably. Say N unless you plan
	to run ancient kernels.

config BUSYBOX_FEATURE_INSMOD_VERSION_CHECKING
	bool "Enable module version checking"
	default n
	depends on BUSYBOX_FEATURE_2_4_MODULES && (BUSYBOX_INSMOD || BUSYBOX_MODPROBE)
	help
	Support checking of versions for modules. This is used to
	ensure that the kernel and module are made for each other.

config BUSYBOX_FEATURE_INSMOD_KSYMOOPS_SYMBOLS
	bool "Add module symbols to kernel symbol table"
	default n
	depends on BUSYBOX_FEATURE_2_4_MODULES && (BUSYBOX_INSMOD || BUSYBOX_MODPROBE)
	help
	By adding module symbols to the kernel symbol table, Oops messages
	occurring within kernel modules can be properly debugged. By enabling
	this feature, module symbols will always be added to the kernel symbol
	table for proper debugging support. If you are not interested in
	Oops messages from kernel modules, say N.

config BUSYBOX_FEATURE_INSMOD_LOADINKMEM
	bool "In kernel memory optimization (uClinux only)"
	default n
	depends on BUSYBOX_FEATURE_2_4_MODULES && (BUSYBOX_INSMOD || BUSYBOX_MODPROBE)
	help
	This is a special uClinux only memory optimization that lets insmod
	load the specified kernel module directly into kernel space, reducing
	memory usage by preventing the need for two copies of the module
	being loaded into memory.

config BUSYBOX_FEATURE_INSMOD_LOAD_MAP
	bool "Enable insmod load map (-m) option"
	default n
	depends on BUSYBOX_FEATURE_2_4_MODULES && BUSYBOX_INSMOD
	help
	Enabling this, one would be able to get a load map
	output on stdout. This makes kernel module debugging
	easier.
	If you don't plan to debug kernel modules, you
	don't need this option.

config BUSYBOX_FEATURE_INSMOD_LOAD_MAP_FULL
	bool "Symbols in load map"
	default y
	depends on BUSYBOX_FEATURE_INSMOD_LOAD_MAP
	help
	Without this option, -m will only output section
	load map. With this option, -m will also output
	symbols load map.

config BUSYBOX_FEATURE_CHECK_TAINTED_MODULE
	bool "Support tainted module checking with new kernels"
	default y
	depends on (BUSYBOX_LSMOD || BUSYBOX_FEATURE_2_4_MODULES) && !BUSYBOX_MODPROBE_SMALL
	help
	Support checking for tainted modules. These are usually binary
	only modules that will make the linux-kernel list ignore your
	support request.
	This option is required to support GPLONLY modules.

config BUSYBOX_FEATURE_INSMOD_TRY_MMAP
	bool "Try to load module from a mmap'ed area"
	default n
	depends on (BUSYBOX_INSMOD || BUSYBOX_MODPROBE) && !BUSYBOX_MODPROBE_SMALL
	help
	This option causes module loading code to try to mmap
	module first. If it does not work (for example,
	it does not work for compressed modules), module will be read
	(and unpacked if needed) into a memory block allocated by malloc.

	The only case when mmap works but malloc does not is when
	you are trying to load a big module on a very memory-constrained
	machine. Malloc will momentarily need 2x as much memory as mmap.

	Choosing N saves about 250 bytes of code (on 32-bit x86).

config BUSYBOX_FEATURE_MODUTILS_ALIAS
	bool "Support module.aliases file"
	default y
	depends on (BUSYBOX_DEPMOD || BUSYBOX_MODPROBE) && !BUSYBOX_MODPROBE_SMALL
	help
	Generate and parse modules.alias containing aliases for bus
	identifiers:
		alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs

	and aliases for logical modules names e.g.:
		alias padlock_aes aes
		alias aes_i586 aes
		alias aes_generic aes

	Say Y if unsure.

config BUSYBOX_FEATURE_MODUTILS_SYMBOLS
	bool "Support module.symbols file"
	default y
	depends on (BUSYBOX_DEPMOD || BUSYBOX_MODPROBE) && !BUSYBOX_MODPROBE_SMALL
	help
	Generate and parse modules.symbols containing aliases for
	symbol_request() kernel calls, such as:
		alias symbol:usb_sg_init usbcore

	Say Y if unsure.

config BUSYBOX_DEFAULT_MODULES_DIR
	string "Default directory containing modules"
	default "/lib/modules"
	depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE || BUSYBOX_MODINFO
	help
	Directory that contains kernel modules.
	Defaults to "/lib/modules"

config BUSYBOX_DEFAULT_DEPMOD_FILE
	string "Default name of modules.dep"
	default "modules.dep"
	depends on BUSYBOX_DEPMOD || BUSYBOX_MODPROBE || BUSYBOX_MODINFO
	help
	Filename that contains kernel modules dependencies.
	Defaults to "modules.dep".
	If you configured the "simplified modutils" (BUSYBOX_MODPROBE_SMALL), a
	".bb" suffix will be added after this name. Do not specify ".bb"
	here unless you intend your depmod or modprobe to work on
	"modules.dep.bb.bb" or such.

endmenu