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