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