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