Merge branch 'master'
[linux-2.6] / arch / sparc64 / Kconfig
1 # $Id: config.in,v 1.158 2002/01/24 22:14:44 davem Exp $
2 # For a description of the syntax of this configuration file,
3 # see the Configure script.
4 #
5
6 mainmenu "Linux/UltraSPARC Kernel Configuration"
7
8 config SPARC64
9         bool
10         default y
11         help
12           SPARC is a family of RISC microprocessors designed and marketed by
13           Sun Microsystems, incorporated.  This port covers the newer 64-bit
14           UltraSPARC.  The UltraLinux project maintains both the SPARC32 and
15           SPARC64 ports; its web page is available at
16           <http://www.ultralinux.org/>.
17
18 config 64BIT
19         def_bool y
20
21 config MMU
22         bool
23         default y
24
25 config TIME_INTERPOLATION
26         bool
27         default y
28
29 config ARCH_MAY_HAVE_PC_FDC
30         bool
31         default y
32
33 choice
34         prompt "Kernel page size"
35         default SPARC64_PAGE_SIZE_8KB
36
37 config SPARC64_PAGE_SIZE_8KB
38         bool "8KB"
39         help
40           This lets you select the page size of the kernel.
41
42           8KB and 64KB work quite well, since Sparc ELF sections
43           provide for up to 64KB alignment.
44
45           Therefore, 512KB and 4MB are for expert hackers only.
46
47           If you don't know what to do, choose 8KB.
48
49 config SPARC64_PAGE_SIZE_64KB
50         bool "64KB"
51
52 config SPARC64_PAGE_SIZE_512KB
53         bool "512KB"
54
55 config SPARC64_PAGE_SIZE_4MB
56         bool "4MB"
57
58 endchoice
59
60 config SECCOMP
61         bool "Enable seccomp to safely compute untrusted bytecode"
62         depends on PROC_FS
63         default y
64         help
65           This kernel feature is useful for number crunching applications
66           that may need to compute untrusted bytecode during their
67           execution. By using pipes or other transports made available to
68           the process as file descriptors supporting the read/write
69           syscalls, it's possible to isolate those applications in
70           their own address space using seccomp. Once seccomp is
71           enabled via /proc/<pid>/seccomp, it cannot be disabled
72           and the task is only allowed to execute a few safe syscalls
73           defined by each seccomp mode.
74
75           If unsure, say Y. Only embedded should say N here.
76
77 source kernel/Kconfig.hz
78
79 source "init/Kconfig"
80
81 config SYSVIPC_COMPAT
82         bool
83         depends on COMPAT && SYSVIPC
84         default y
85
86 menu "General machine setup"
87
88 config SMP
89         bool "Symmetric multi-processing support"
90         ---help---
91           This enables support for systems with more than one CPU. If you have
92           a system with only one CPU, say N. If you have a system with more than
93           one CPU, say Y.
94
95           If you say N here, the kernel will run on single and multiprocessor
96           machines, but will use only one CPU of a multiprocessor machine. If
97           you say Y here, the kernel will run on many, but not all,
98           singleprocessor machines. On a singleprocessor machine, the kernel
99           will run faster if you say N here.
100
101           People using multiprocessor machines who say Y here should also say
102           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
103           Management" code will be disabled if you say Y here.
104
105           See also the <file:Documentation/smp.txt>,
106           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
107           <http://www.tldp.org/docs.html#howto>.
108
109           If you don't know what to do here, say N.
110
111 config PREEMPT
112         bool "Preemptible Kernel"
113         help
114           This option reduces the latency of the kernel when reacting to
115           real-time or interactive events by allowing a low priority process to
116           be preempted even if it is in kernel mode executing a system call.
117           This allows applications to run more reliably even when the system is
118           under load.
119
120           Say Y here if you are building a kernel for a desktop, embedded
121           or real-time system.  Say N if you are unsure.
122
123 config NR_CPUS
124         int "Maximum number of CPUs (2-64)"
125         range 2 64
126         depends on SMP
127         default "32"
128
129 source "drivers/cpufreq/Kconfig"
130
131 config US3_FREQ
132         tristate "UltraSPARC-III CPU Frequency driver"
133         depends on CPU_FREQ
134         select CPU_FREQ_TABLE
135         help
136           This adds the CPUFreq driver for UltraSPARC-III processors.
137
138           For details, take a look at <file:Documentation/cpu-freq>.
139
140           If in doubt, say N.
141
142 config US2E_FREQ
143         tristate "UltraSPARC-IIe CPU Frequency driver"
144         depends on CPU_FREQ
145         select CPU_FREQ_TABLE
146         help
147           This adds the CPUFreq driver for UltraSPARC-IIe processors.
148
149           For details, take a look at <file:Documentation/cpu-freq>.
150
151           If in doubt, say N.
152
153 # Global things across all Sun machines.
154 config RWSEM_GENERIC_SPINLOCK
155         bool
156
157 config RWSEM_XCHGADD_ALGORITHM
158         bool
159         default y
160
161 config GENERIC_CALIBRATE_DELAY
162         bool
163         default y
164
165 choice
166         prompt "SPARC64 Huge TLB Page Size"
167         depends on HUGETLB_PAGE
168         default HUGETLB_PAGE_SIZE_4MB
169
170 config HUGETLB_PAGE_SIZE_4MB
171         bool "4MB"
172
173 config HUGETLB_PAGE_SIZE_512K
174         depends on !SPARC64_PAGE_SIZE_4MB
175         bool "512K"
176
177 config HUGETLB_PAGE_SIZE_64K
178         depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512K
179         bool "64K"
180
181 endchoice
182
183 endmenu
184
185 source "mm/Kconfig"
186
187 config GENERIC_ISA_DMA
188         bool
189         default y
190
191 config ISA
192         bool
193         help
194           Find out whether you have ISA slots on your motherboard.  ISA is the
195           name of a bus system, i.e. the way the CPU talks to the other stuff
196           inside your box.  Other bus systems are PCI, EISA, MicroChannel
197           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
198           newer boards don't support it.  If you have ISA, say Y, otherwise N.
199
200 config ISAPNP
201         bool
202         help
203           Say Y here if you would like support for ISA Plug and Play devices.
204           Some information is in <file:Documentation/isapnp.txt>.
205
206           To compile this driver as a module, choose M here: the
207           module will be called isapnp.
208
209           If unsure, say Y.
210
211 config EISA
212         bool
213         ---help---
214           The Extended Industry Standard Architecture (EISA) bus was
215           developed as an open alternative to the IBM MicroChannel bus.
216
217           The EISA bus provided some of the features of the IBM MicroChannel
218           bus while maintaining backward compatibility with cards made for
219           the older ISA bus.  The EISA bus saw limited use between 1988 and
220           1995 when it was made obsolete by the PCI bus.
221
222           Say Y here if you are building a kernel for an EISA-based machine.
223
224           Otherwise, say N.
225
226 config MCA
227         bool
228         help
229           MicroChannel Architecture is found in some IBM PS/2 machines and
230           laptops.  It is a bus system similar to PCI or ISA. See
231           <file:Documentation/mca.txt> (and especially the web page given
232           there) before attempting to build an MCA bus kernel.
233
234 config PCMCIA
235         tristate
236         ---help---
237           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
238           computer.  These are credit-card size devices such as network cards,
239           modems or hard drives often used with laptops computers.  There are
240           actually two varieties of these cards: the older 16 bit PCMCIA cards
241           and the newer 32 bit CardBus cards.  If you want to use CardBus
242           cards, you need to say Y here and also to "CardBus support" below.
243
244           To use your PC-cards, you will need supporting software from David
245           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
246           for location).  Please also read the PCMCIA-HOWTO, available from
247           <http://www.tldp.org/docs.html#howto>.
248
249           To compile this driver as modules, choose M here: the
250           modules will be called pcmcia_core and ds.
251
252 config SBUS
253         bool
254         default y
255
256 config SBUSCHAR
257         bool
258         default y
259
260 config SUN_AUXIO
261         bool
262         default y
263
264 config SUN_IO
265         bool
266         default y
267
268 config PCI
269         bool "PCI support"
270         help
271           Find out whether you have a PCI motherboard. PCI is the name of a
272           bus system, i.e. the way the CPU talks to the other stuff inside
273           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
274           VESA. If you have PCI, say Y, otherwise N.
275
276           The PCI-HOWTO, available from
277           <http://www.tldp.org/docs.html#howto>, contains valuable
278           information about which PCI hardware does work under Linux and which
279           doesn't.
280
281 config PCI_DOMAINS
282         bool
283         default PCI
284
285 source "drivers/pci/Kconfig"
286
287 config SUN_OPENPROMFS
288         tristate "Openprom tree appears in /proc/openprom"
289         help
290           If you say Y, the OpenPROM device tree will be available as a
291           virtual file system, which you can mount to /proc/openprom by "mount
292           -t openpromfs none /proc/openprom".
293
294           To compile the /proc/openprom support as a module, choose M here: the
295           module will be called openpromfs.  If unsure, choose M.
296
297 config SPARC32_COMPAT
298         bool "Kernel support for Linux/Sparc 32bit binary compatibility"
299         help
300           This allows you to run 32-bit binaries on your Ultra.
301           Everybody wants this; say Y.
302
303 config COMPAT
304         bool
305         depends on SPARC32_COMPAT
306         default y
307
308 config UID16
309         bool
310         depends on SPARC32_COMPAT
311         default y
312
313 config BINFMT_ELF32
314         tristate "Kernel support for 32-bit ELF binaries"
315         depends on SPARC32_COMPAT
316         help
317           This allows you to run 32-bit Linux/ELF binaries on your Ultra.
318           Everybody wants this; say Y.
319
320 config BINFMT_AOUT32
321         bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
322         depends on SPARC32_COMPAT
323         help
324           This allows you to run 32-bit a.out format binaries on your Ultra.
325           If you want to run SunOS binaries (see SunOS binary emulation below)
326           or other a.out binaries, say Y. If unsure, say N.
327
328 menu "Executable file formats"
329
330 source "fs/Kconfig.binfmt"
331
332 config SUNOS_EMUL
333         bool "SunOS binary emulation"
334         depends on BINFMT_AOUT32
335         help
336           This allows you to run most SunOS binaries.  If you want to do this,
337           say Y here and place appropriate files in /usr/gnemul/sunos. See
338           <http://www.ultralinux.org/faq.html> for more information.  If you
339           want to run SunOS binaries on an Ultra you must also say Y to
340           "Kernel support for 32-bit a.out binaries" above.
341
342 config SOLARIS_EMUL
343         tristate "Solaris binary emulation (EXPERIMENTAL)"
344         depends on SPARC32_COMPAT && EXPERIMENTAL
345         help
346           This is experimental code which will enable you to run (many)
347           Solaris binaries on your SPARC Linux machine.
348
349           To compile this code as a module, choose M here: the
350           module will be called solaris.
351
352 endmenu
353
354 config CMDLINE_BOOL
355         bool "Default bootloader kernel arguments"
356
357 config CMDLINE
358         string "Initial kernel command string"
359         depends on CMDLINE_BOOL
360         default "console=ttyS0,9600 root=/dev/sda1"
361         help
362           Say Y here if you want to be able to pass default arguments to
363           the kernel. This will be overridden by the bootloader, if you
364           use one (such as SILO). This is most useful if you want to boot
365           a kernel from TFTP, and want default options to be available
366           with having them passed on the command line.
367
368           NOTE: This option WILL override the PROM bootargs setting!
369
370 source "net/Kconfig"
371
372 source "drivers/Kconfig"
373
374 source "drivers/sbus/char/Kconfig"
375
376 source "drivers/fc4/Kconfig"
377
378 source "fs/Kconfig"
379
380 menu "Instrumentation Support"
381         depends on EXPERIMENTAL
382
383 source "arch/sparc64/oprofile/Kconfig"
384
385 config KPROBES
386         bool "Kprobes (EXPERIMENTAL)"
387         help
388           Kprobes allows you to trap at almost any kernel address and
389           execute a callback function.  register_kprobe() establishes
390           a probepoint and specifies the callback.  Kprobes is useful
391           for kernel debugging, non-intrusive instrumentation and testing.
392           If in doubt, say "N".
393 endmenu
394
395 source "arch/sparc64/Kconfig.debug"
396
397 source "security/Kconfig"
398
399 source "crypto/Kconfig"
400
401 source "lib/Kconfig"