Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
[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 SPARC
9         bool
10         default y
11         select HAVE_OPROFILE
12         select HAVE_KPROBES
13         select HAVE_KRETPROBES
14
15 config SPARC64
16         bool
17         default y
18         select HAVE_IDE
19         help
20           SPARC is a family of RISC microprocessors designed and marketed by
21           Sun Microsystems, incorporated.  This port covers the newer 64-bit
22           UltraSPARC.  The UltraLinux project maintains both the SPARC32 and
23           SPARC64 ports; its web page is available at
24           <http://www.ultralinux.org/>.
25
26 config GENERIC_TIME
27         bool
28         default y
29
30 config GENERIC_CMOS_UPDATE
31         bool
32         default y
33
34 config GENERIC_CLOCKEVENTS
35         bool
36         default y
37
38 config 64BIT
39         def_bool y
40
41 config MMU
42         bool
43         default y
44
45 config IOMMU_HELPER
46         bool
47         default y
48
49 config QUICKLIST
50         bool
51         default y
52
53 config STACKTRACE_SUPPORT
54         bool
55         default y
56
57 config LOCKDEP_SUPPORT
58         bool
59         default y
60
61 config ARCH_MAY_HAVE_PC_FDC
62         bool
63         default y
64
65 config ARCH_HAS_ILOG2_U32
66         bool
67         default n
68
69 config ARCH_HAS_ILOG2_U64
70         bool
71         default n
72
73 config AUDIT_ARCH
74         bool
75         default y
76
77 config HAVE_SETUP_PER_CPU_AREA
78         def_bool y
79
80 config ARCH_NO_VIRT_TO_BUS
81         def_bool y
82
83 config OF
84         def_bool y
85
86 config GENERIC_HARDIRQS_NO__DO_IRQ
87         bool
88         def_bool y
89
90 config ARCH_SUPPORTS_AOUT
91         def_bool y
92
93 choice
94         prompt "Kernel page size"
95         default SPARC64_PAGE_SIZE_8KB
96
97 config SPARC64_PAGE_SIZE_8KB
98         bool "8KB"
99         help
100           This lets you select the page size of the kernel.
101
102           8KB and 64KB work quite well, since Sparc ELF sections
103           provide for up to 64KB alignment.
104
105           Therefore, 512KB and 4MB are for expert hackers only.
106
107           If you don't know what to do, choose 8KB.
108
109 config SPARC64_PAGE_SIZE_64KB
110         bool "64KB"
111
112 config SPARC64_PAGE_SIZE_512KB
113         bool "512KB"
114
115 config SPARC64_PAGE_SIZE_4MB
116         bool "4MB"
117
118 endchoice
119
120 config SECCOMP
121         bool "Enable seccomp to safely compute untrusted bytecode"
122         depends on PROC_FS
123         default y
124         help
125           This kernel feature is useful for number crunching applications
126           that may need to compute untrusted bytecode during their
127           execution. By using pipes or other transports made available to
128           the process as file descriptors supporting the read/write
129           syscalls, it's possible to isolate those applications in
130           their own address space using seccomp. Once seccomp is
131           enabled via /proc/<pid>/seccomp, it cannot be disabled
132           and the task is only allowed to execute a few safe syscalls
133           defined by each seccomp mode.
134
135           If unsure, say Y. Only embedded should say N here.
136
137 source kernel/Kconfig.hz
138
139 config HOTPLUG_CPU
140         bool "Support for hot-pluggable CPUs"
141         depends on SMP
142         select HOTPLUG
143         ---help---
144           Say Y here to experiment with turning CPUs off and on.  CPUs
145           can be controlled through /sys/devices/system/cpu/cpu#.
146           Say N if you want to disable CPU hotplug.
147
148 source "init/Kconfig"
149
150 config SYSVIPC_COMPAT
151         bool
152         depends on COMPAT && SYSVIPC
153         default y
154
155 config GENERIC_HARDIRQS
156         bool
157         default y
158
159 menu "General machine setup"
160
161 source "kernel/time/Kconfig"
162
163 config SMP
164         bool "Symmetric multi-processing support"
165         ---help---
166           This enables support for systems with more than one CPU. If you have
167           a system with only one CPU, say N. If you have a system with more than
168           one CPU, say Y.
169
170           If you say N here, the kernel will run on single and multiprocessor
171           machines, but will use only one CPU of a multiprocessor machine. If
172           you say Y here, the kernel will run on many, but not all,
173           singleprocessor machines. On a singleprocessor machine, the kernel
174           will run faster if you say N here.
175
176           People using multiprocessor machines who say Y here should also say
177           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
178           Management" code will be disabled if you say Y here.
179
180           See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
181           available at <http://www.tldp.org/docs.html#howto>.
182
183           If you don't know what to do here, say N.
184
185 config NR_CPUS
186         int "Maximum number of CPUs (2-1024)"
187         range 2 1024
188         depends on SMP
189         default "64"
190
191 source "drivers/cpufreq/Kconfig"
192
193 config US3_FREQ
194         tristate "UltraSPARC-III CPU Frequency driver"
195         depends on CPU_FREQ
196         select CPU_FREQ_TABLE
197         help
198           This adds the CPUFreq driver for UltraSPARC-III processors.
199
200           For details, take a look at <file:Documentation/cpu-freq>.
201
202           If in doubt, say N.
203
204 config US2E_FREQ
205         tristate "UltraSPARC-IIe CPU Frequency driver"
206         depends on CPU_FREQ
207         select CPU_FREQ_TABLE
208         help
209           This adds the CPUFreq driver for UltraSPARC-IIe processors.
210
211           For details, take a look at <file:Documentation/cpu-freq>.
212
213           If in doubt, say N.
214
215 # Global things across all Sun machines.
216 config GENERIC_LOCKBREAK
217         bool
218         default y
219         depends on SMP && PREEMPT
220
221 config RWSEM_GENERIC_SPINLOCK
222         bool
223
224 config RWSEM_XCHGADD_ALGORITHM
225         bool
226         default y
227
228 config GENERIC_FIND_NEXT_BIT
229         bool
230         default y
231
232 config GENERIC_HWEIGHT
233         bool
234         default y if !ULTRA_HAS_POPULATION_COUNT
235
236 config GENERIC_CALIBRATE_DELAY
237         bool
238         default y
239
240 choice
241         prompt "SPARC64 Huge TLB Page Size"
242         depends on HUGETLB_PAGE
243         default HUGETLB_PAGE_SIZE_4MB
244
245 config HUGETLB_PAGE_SIZE_4MB
246         bool "4MB"
247
248 config HUGETLB_PAGE_SIZE_512K
249         depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512KB
250         bool "512K"
251
252 config HUGETLB_PAGE_SIZE_64K
253         depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512KB && !SPARC64_PAGE_SIZE_64KB
254         bool "64K"
255
256 endchoice
257
258 endmenu
259
260 config ARCH_SELECT_MEMORY_MODEL
261         def_bool y
262
263 config ARCH_SPARSEMEM_ENABLE
264         def_bool y
265         select SPARSEMEM_VMEMMAP_ENABLE
266
267 config ARCH_SPARSEMEM_DEFAULT
268         def_bool y
269
270 source "mm/Kconfig"
271
272 config ISA
273         bool
274         help
275           Find out whether you have ISA slots on your motherboard.  ISA is the
276           name of a bus system, i.e. the way the CPU talks to the other stuff
277           inside your box.  Other bus systems are PCI, EISA, MicroChannel
278           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
279           newer boards don't support it.  If you have ISA, say Y, otherwise N.
280
281 config ISAPNP
282         bool
283         help
284           Say Y here if you would like support for ISA Plug and Play devices.
285           Some information is in <file:Documentation/isapnp.txt>.
286
287           To compile this driver as a module, choose M here: the
288           module will be called isapnp.
289
290           If unsure, say Y.
291
292 config EISA
293         bool
294         ---help---
295           The Extended Industry Standard Architecture (EISA) bus was
296           developed as an open alternative to the IBM MicroChannel bus.
297
298           The EISA bus provided some of the features of the IBM MicroChannel
299           bus while maintaining backward compatibility with cards made for
300           the older ISA bus.  The EISA bus saw limited use between 1988 and
301           1995 when it was made obsolete by the PCI bus.
302
303           Say Y here if you are building a kernel for an EISA-based machine.
304
305           Otherwise, say N.
306
307 config MCA
308         bool
309         help
310           MicroChannel Architecture is found in some IBM PS/2 machines and
311           laptops.  It is a bus system similar to PCI or ISA. See
312           <file:Documentation/mca.txt> (and especially the web page given
313           there) before attempting to build an MCA bus kernel.
314
315 config PCMCIA
316         tristate
317         ---help---
318           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
319           computer.  These are credit-card size devices such as network cards,
320           modems or hard drives often used with laptops computers.  There are
321           actually two varieties of these cards: the older 16 bit PCMCIA cards
322           and the newer 32 bit CardBus cards.  If you want to use CardBus
323           cards, you need to say Y here and also to "CardBus support" below.
324
325           To use your PC-cards, you will need supporting software from David
326           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
327           for location).  Please also read the PCMCIA-HOWTO, available from
328           <http://www.tldp.org/docs.html#howto>.
329
330           To compile this driver as modules, choose M here: the
331           modules will be called pcmcia_core and ds.
332
333 config SBUS
334         bool
335         default y
336
337 config SBUSCHAR
338         bool
339         default y
340
341 config SUN_AUXIO
342         bool
343         default y
344
345 config SUN_IO
346         bool
347         default y
348
349 config SUN_LDOMS
350         bool "Sun Logical Domains support"
351         help
352           Say Y here is you want to support virtual devices via
353           Logical Domains.
354
355 config PCI
356         bool "PCI support"
357         select ARCH_SUPPORTS_MSI
358         help
359           Find out whether you have a PCI motherboard. PCI is the name of a
360           bus system, i.e. the way the CPU talks to the other stuff inside
361           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
362           VESA. If you have PCI, say Y, otherwise N.
363
364 config PCI_DOMAINS
365         def_bool PCI
366
367 config PCI_SYSCALL
368         def_bool PCI
369
370 source "drivers/pci/Kconfig"
371
372 config SUN_OPENPROMFS
373         tristate "Openprom tree appears in /proc/openprom"
374         help
375           If you say Y, the OpenPROM device tree will be available as a
376           virtual file system, which you can mount to /proc/openprom by "mount
377           -t openpromfs none /proc/openprom".
378
379           To compile the /proc/openprom support as a module, choose M here: the
380           module will be called openpromfs.  If unsure, choose M.
381
382 config SPARC32_COMPAT
383         bool "Kernel support for Linux/Sparc 32bit binary compatibility"
384         help
385           This allows you to run 32-bit binaries on your Ultra.
386           Everybody wants this; say Y.
387
388 config COMPAT
389         bool
390         depends on SPARC32_COMPAT
391         default y
392         select COMPAT_BINFMT_ELF
393
394 config BINFMT_AOUT32
395         bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
396         depends on SPARC32_COMPAT && ARCH_SUPPORTS_AOUT
397         help
398           This allows you to run 32-bit a.out format binaries on your Ultra.
399           If you want to run SunOS binaries (see SunOS binary emulation below)
400           or other a.out binaries, say Y. If unsure, say N.
401
402 menu "Executable file formats"
403
404 source "fs/Kconfig.binfmt"
405
406 config SUNOS_EMUL
407         bool "SunOS binary emulation"
408         depends on BINFMT_AOUT32
409         help
410           This allows you to run most SunOS binaries.  If you want to do this,
411           say Y here and place appropriate files in /usr/gnemul/sunos. See
412           <http://www.ultralinux.org/faq.html> for more information.  If you
413           want to run SunOS binaries on an Ultra you must also say Y to
414           "Kernel support for 32-bit a.out binaries" above.
415
416 config SOLARIS_EMUL
417         tristate "Solaris binary emulation (EXPERIMENTAL)"
418         depends on SPARC32_COMPAT && NET && EXPERIMENTAL
419         help
420           This is experimental code which will enable you to run (many)
421           Solaris binaries on your SPARC Linux machine.
422
423           To compile this code as a module, choose M here: the
424           module will be called solaris.
425
426 endmenu
427
428 config SCHED_SMT
429         bool "SMT (Hyperthreading) scheduler support"
430         depends on SMP
431         default y
432         help
433           SMT scheduler support improves the CPU scheduler's decision making
434           when dealing with UltraSPARC cpus at a cost of slightly increased
435           overhead in some places. If unsure say N here.
436
437 config SCHED_MC
438         bool "Multi-core scheduler support"
439         depends on SMP
440         default y
441         help
442           Multi-core scheduler support improves the CPU scheduler's decision
443           making when dealing with multi-core CPU chips at a cost of slightly
444           increased overhead in some places. If unsure say N here.
445
446 source "kernel/Kconfig.preempt"
447
448 config CMDLINE_BOOL
449         bool "Default bootloader kernel arguments"
450
451 config CMDLINE
452         string "Initial kernel command string"
453         depends on CMDLINE_BOOL
454         default "console=ttyS0,9600 root=/dev/sda1"
455         help
456           Say Y here if you want to be able to pass default arguments to
457           the kernel. This will be overridden by the bootloader, if you
458           use one (such as SILO). This is most useful if you want to boot
459           a kernel from TFTP, and want default options to be available
460           with having them passed on the command line.
461
462           NOTE: This option WILL override the PROM bootargs setting!
463
464 source "net/Kconfig"
465
466 source "drivers/Kconfig"
467
468 source "drivers/sbus/char/Kconfig"
469
470 source "fs/Kconfig"
471
472 source "arch/sparc64/Kconfig.debug"
473
474 source "security/Kconfig"
475
476 source "crypto/Kconfig"
477
478 source "lib/Kconfig"