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