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