[PATCH] v4l: videobuf update
[linux-2.6/history.git] / init / Kconfig
blob205e0ccbde31bff9255d9185d6280dff48c8c3c2
2 menu "Code maturity level options"
4 config EXPERIMENTAL
5         bool "Prompt for development and/or incomplete code/drivers"
6         ---help---
7           Some of the various things that Linux supports (such as network
8           drivers, file systems, network protocols, etc.) can be in a state
9           of development where the functionality, stability, or the level of
10           testing is not yet high enough for general use. This is usually
11           known as the "alpha-test" phase among developers. If a feature is
12           currently in alpha-test, then the developers usually discourage
13           uninformed widespread use of this feature by the general public to
14           avoid "Why doesn't this work?" type mail messages. However, active
15           testing and use of these systems is welcomed. Just be aware that it
16           may not meet the normal level of reliability or it may fail to work
17           in some special cases. Detailed bug reports from people familiar
18           with the kernel internals are usually welcomed by the developers
19           (before submitting bug reports, please read the documents
20           <file:README>, <file:MAINTAINERS>, <file:REPORTING-BUGS>,
21           <file:Documentation/BUG-HUNTING>, and
22           <file:Documentation/oops-tracing.txt> in the kernel source).
24           This option will also make obsoleted drivers available. These are
25           drivers that have been replaced by something else, and/or are
26           scheduled to be removed in a future kernel release.
28           Unless you intend to help test and develop a feature or driver that
29           falls into this category, or you have a situation that requires
30           using these features, you should probably say N here, which will
31           cause the configurator to present you with fewer choices. If
32           you say Y here, you will be offered the choice of using features or
33           drivers that are currently considered to be in the alpha-test phase.
35 config CLEAN_COMPILE
36         bool "Select only drivers expected to compile cleanly" if EXPERIMENTAL
37         default y
38         help
39           Select this option if you don't even want to see the option
40           to configure known-broken drivers.
42           If unsure, say Y
44 config STANDALONE
45         bool "Select only drivers that don't need compile-time external firmware" if EXPERIMENTAL
46         default y
47         help
48           Select this option if you don't have magic firmware for drivers that
49           need it.
51           If unsure, say Y.
53 config BROKEN
54         bool
55         depends on !CLEAN_COMPILE
56         default y
58 config BROKEN_ON_SMP
59         bool
60         depends on BROKEN || !SMP
61         default y
63 endmenu
66 menu "General setup"
68 config SWAP
69         bool "Support for paging of anonymous memory"
70         depends on MMU
71         default y
72         help
73           This option allows you to choose whether you want to have support
74           for socalled swap devices or swap files in your kernel that are
75           used to provide more virtual memory than the actual RAM present
76           in your computer.  If unsure say Y.
78 config SYSVIPC
79         bool "System V IPC"
80         ---help---
81           Inter Process Communication is a suite of library functions and
82           system calls which let processes (running programs) synchronize and
83           exchange information. It is generally considered to be a good thing,
84           and some programs won't run unless you say Y here. In particular, if
85           you want to run the DOS emulator dosemu under Linux (read the
86           DOSEMU-HOWTO, available from
87           <http://www.tldp.org/docs.html#howto>), you'll need to say Y
88           here.
90           You can find documentation about IPC with "info ipc" and also in
91           section 6.4 of the Linux Programmer's Guide, available from
92           <http://www.tldp.org/docs.html#guide>.
94 config BSD_PROCESS_ACCT
95         bool "BSD Process Accounting"
96         help
97           If you say Y here, a user level program will be able to instruct the
98           kernel (via a special system call) to write process accounting
99           information to a file: whenever a process exits, information about
100           that process will be appended to the file by the kernel.  The
101           information includes things such as creation time, owning user,
102           command name, memory usage, controlling terminal etc. (the complete
103           list is in the struct acct in <file:include/linux/acct.h>).  It is
104           up to the user level program to do useful things with this
105           information.  This is generally a good idea, so say Y.
107 config SYSCTL
108         bool "Sysctl support"
109         ---help---
110           The sysctl interface provides a means of dynamically changing
111           certain kernel parameters and variables on the fly without requiring
112           a recompile of the kernel or reboot of the system.  The primary
113           interface consists of a system call, but if you say Y to "/proc
114           file system support", a tree of modifiable sysctl entries will be
115           generated beneath the /proc/sys directory. They are explained in the
116           files in <file:Documentation/sysctl/>.  Note that enabling this
117           option will enlarge the kernel by at least 8 KB.
119           As it is generally a good thing, you should say Y here unless
120           building a kernel for install/rescue disks or your system is very
121           limited in memory.
123 config LOG_BUF_SHIFT
124         int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" if DEBUG_KERNEL
125         range 12 20
126         default 17 if ARCH_S390
127         default 16 if X86_NUMAQ || IA64
128         default 15 if SMP
129         default 14
130         help
131           Select kernel log buffer size as a power of 2.
132           Defaults and Examples:
133                      17 => 128 KB for S/390
134                      16 => 64 KB for x86 NUMAQ or IA-64
135                      15 => 32 KB for SMP
136                      14 => 16 KB for uniprocessor
137                      13 =>  8 KB
138                      12 =>  4 KB
140 config IKCONFIG
141         bool "Kernel .config support"
142         ---help---
143           This option enables the complete Linux kernel ".config" file
144           contents, information on compiler used to build the kernel,
145           kernel running when this kernel was built and kernel version
146           from Makefile to be saved in the kernel. It provides documentation
147           of which kernel options are used in a running kernel or in an
148           on-disk kernel.  This information can be extracted from the kernel
149           image file with the script scripts/extract-ikconfig and used as
150           input to rebuild the current kernel or to build another kernel.
151           It can also be extracted from a running kernel by reading
152           /proc/config.gz and /proc/config_built_with, if enabled (below).
153           /proc/config.gz will list the configuration that was used
154           to build the kernel and /proc/config_built_with will list
155           information on the compiler and host machine that was used to
156           build the kernel.
158 config IKCONFIG_PROC
159         bool "Enable access to .config through /proc/config.gz"
160         depends on IKCONFIG && PROC_FS
161         ---help---
162           This option enables access to kernel configuration file and build
163           information through /proc/config.gz.
166 menuconfig EMBEDDED
167         bool "Remove kernel features (for embedded systems)"
168         help
169           This option allows certain base kernel features to be removed from
170           the build.  This is for specialized environments which can tolerate
171           a "non-standard" kernel.  Only use this if you really know what you
172           are doing.
174 config KALLSYMS
175          bool "Load all symbols for debugging/kksymoops" if EMBEDDED
176          default y
177          help
178            Say Y here to let the kernel print out symbolic crash information and
179            symbolic stack backtraces. This increases the size of the kernel
180            somewhat, as all symbols have to be loaded into the kernel image.
182 config FUTEX
183         bool "Enable futex support" if EMBEDDED
184         default y
185         help
186           Disabling this option will cause the kernel to be built without
187           support for "fast userspace mutexes".  The resulting kernel may not
188           run glibc-based applications correctly.
190 config EPOLL
191         bool "Enable eventpoll support" if EMBEDDED
192         default y
193         help
194           Disabling this option will cause the kernel to be built without
195           support for epoll family of system calls.
197 source "drivers/block/Kconfig.iosched"
199 endmenu         # General setup
202 menu "Loadable module support"
204 config MODULES
205         bool "Enable loadable module support"
206         help
207           Kernel modules are small pieces of compiled code which can
208           be inserted in the running kernel, rather than being
209           permanently built into the kernel.  You use the "modprobe"
210           tool to add (and sometimes remove) them.  If you say Y here,
211           many parts of the kernel can be built as modules (by
212           answering M instead of Y where indicated): this is most
213           useful for infrequently used options which are not required
214           for booting.  For more information, see the man pages for
215           modprobe, lsmod, modinfo, insmod and rmmod.
217           If you say Y here, you will need to run "make
218           modules_install" to put the modules under /lib/modules/
219           where modprobe can find them (you may need to be root to do
220           this).
222           If unsure, say Y.
224 config MODULE_UNLOAD
225         bool "Module unloading"
226         depends on MODULES
227         help
228           Without this option you will not be able to unload any
229           modules (note that some modules may not be unloadable
230           anyway), which makes your kernel slightly smaller and
231           simpler.  If unsure, say Y.
233 config MODULE_FORCE_UNLOAD
234         bool "Forced module unloading"
235         depends on MODULE_UNLOAD && EXPERIMENTAL
236         help
237           This option allows you to force a module to unload, even if the
238           kernel believes it is unsafe: the kernel will remove the module
239           without waiting for anyone to stop using it (using the -f option to
240           rmmod).  This is mainly for kernel developers and desperate users.
241           If unsure, say N.
243 config OBSOLETE_MODPARM
244         bool
245         default y
246         depends on MODULES
247         help
248           You need this option to use module parameters on modules which
249           have not been converted to the new module parameter system yet.
250           If unsure, say Y.
252 config MODVERSIONS
253         bool "Module versioning support (EXPERIMENTAL)"
254         depends on MODULES && EXPERIMENTAL
255         help
256           Usually, you have to use modules compiled with your kernel.
257           Saying Y here makes it sometimes possible to use modules
258           compiled for different kernels, by adding enough information
259           to the modules to (hopefully) spot any changes which would
260           make them incompatible with the kernel you are running.  If
261           unsure, say N.
263 config KMOD
264         bool "Automatic kernel module loading"
265         depends on MODULES
266         help
267           Normally when you have selected some parts of the kernel to
268           be created as kernel modules, you must load them (using the
269           "modprobe" command) before you can use them. If you say Y
270           here, some parts of the kernel will be able to load modules
271           automatically: when a part of the kernel needs a module, it
272           runs modprobe with the appropriate arguments, thereby
273           loading the module if it is available.  If unsure, say Y.
275 endmenu