Merge branch 'drm-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied...
[pandora-kernel.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 64BIT
23         def_bool y
24
25 config MMU
26         bool
27         default y
28
29 config TIME_INTERPOLATION
30         bool
31         default y
32
33 config ARCH_MAY_HAVE_PC_FDC
34         bool
35         default y
36
37 config ARCH_HAS_ILOG2_U32
38         bool
39         default n
40
41 config ARCH_HAS_ILOG2_U64
42         bool
43         default n
44
45 config AUDIT_ARCH
46         bool
47         default y
48
49 choice
50         prompt "Kernel page size"
51         default SPARC64_PAGE_SIZE_8KB
52
53 config SPARC64_PAGE_SIZE_8KB
54         bool "8KB"
55         help
56           This lets you select the page size of the kernel.
57
58           8KB and 64KB work quite well, since Sparc ELF sections
59           provide for up to 64KB alignment.
60
61           Therefore, 512KB and 4MB are for expert hackers only.
62
63           If you don't know what to do, choose 8KB.
64
65 config SPARC64_PAGE_SIZE_64KB
66         bool "64KB"
67
68 config SPARC64_PAGE_SIZE_512KB
69         bool "512KB"
70
71 config SPARC64_PAGE_SIZE_4MB
72         bool "4MB"
73
74 endchoice
75
76 config SECCOMP
77         bool "Enable seccomp to safely compute untrusted bytecode"
78         depends on PROC_FS
79         default y
80         help
81           This kernel feature is useful for number crunching applications
82           that may need to compute untrusted bytecode during their
83           execution. By using pipes or other transports made available to
84           the process as file descriptors supporting the read/write
85           syscalls, it's possible to isolate those applications in
86           their own address space using seccomp. Once seccomp is
87           enabled via /proc/<pid>/seccomp, it cannot be disabled
88           and the task is only allowed to execute a few safe syscalls
89           defined by each seccomp mode.
90
91           If unsure, say Y. Only embedded should say N here.
92
93 source kernel/Kconfig.hz
94
95 source "init/Kconfig"
96
97 config SYSVIPC_COMPAT
98         bool
99         depends on COMPAT && SYSVIPC
100         default y
101
102 config GENERIC_HARDIRQS
103         bool
104         default y
105
106 menu "General machine setup"
107
108 config SMP
109         bool "Symmetric multi-processing support"
110         ---help---
111           This enables support for systems with more than one CPU. If you have
112           a system with only one CPU, say N. If you have a system with more than
113           one CPU, say Y.
114
115           If you say N here, the kernel will run on single and multiprocessor
116           machines, but will use only one CPU of a multiprocessor machine. If
117           you say Y here, the kernel will run on many, but not all,
118           singleprocessor machines. On a singleprocessor machine, the kernel
119           will run faster if you say N here.
120
121           People using multiprocessor machines who say Y here should also say
122           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
123           Management" code will be disabled if you say Y here.
124
125           See also the <file:Documentation/smp.txt>,
126           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
127           <http://www.tldp.org/docs.html#howto>.
128
129           If you don't know what to do here, say N.
130
131 config PREEMPT
132         bool "Preemptible Kernel"
133         help
134           This option reduces the latency of the kernel when reacting to
135           real-time or interactive events by allowing a low priority process to
136           be preempted even if it is in kernel mode executing a system call.
137           This allows applications to run more reliably even when the system is
138           under load.
139
140           Say Y here if you are building a kernel for a desktop, embedded
141           or real-time system.  Say N if you are unsure.
142
143 config NR_CPUS
144         int "Maximum number of CPUs (2-64)"
145         range 2 64
146         depends on SMP
147         default "32"
148
149 source "drivers/cpufreq/Kconfig"
150
151 config US3_FREQ
152         tristate "UltraSPARC-III CPU Frequency driver"
153         depends on CPU_FREQ
154         select CPU_FREQ_TABLE
155         help
156           This adds the CPUFreq driver for UltraSPARC-III processors.
157
158           For details, take a look at <file:Documentation/cpu-freq>.
159
160           If in doubt, say N.
161
162 config US2E_FREQ
163         tristate "UltraSPARC-IIe CPU Frequency driver"
164         depends on CPU_FREQ
165         select CPU_FREQ_TABLE
166         help
167           This adds the CPUFreq driver for UltraSPARC-IIe processors.
168
169           For details, take a look at <file:Documentation/cpu-freq>.
170
171           If in doubt, say N.
172
173 # Global things across all Sun machines.
174 config RWSEM_GENERIC_SPINLOCK
175         bool
176
177 config RWSEM_XCHGADD_ALGORITHM
178         bool
179         default y
180
181 config GENERIC_FIND_NEXT_BIT
182         bool
183         default y
184
185 config GENERIC_HWEIGHT
186         bool
187         default y if !ULTRA_HAS_POPULATION_COUNT
188
189 config GENERIC_CALIBRATE_DELAY
190         bool
191         default y
192
193 choice
194         prompt "SPARC64 Huge TLB Page Size"
195         depends on HUGETLB_PAGE
196         default HUGETLB_PAGE_SIZE_4MB
197
198 config HUGETLB_PAGE_SIZE_4MB
199         bool "4MB"
200
201 config HUGETLB_PAGE_SIZE_512K
202         depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512KB
203         bool "512K"
204
205 config HUGETLB_PAGE_SIZE_64K
206         depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512KB && !SPARC64_PAGE_SIZE_64KB
207         bool "64K"
208
209 endchoice
210
211 endmenu
212
213 config ARCH_SELECT_MEMORY_MODEL
214         def_bool y
215
216 config ARCH_SPARSEMEM_ENABLE
217         def_bool y
218
219 config ARCH_SPARSEMEM_DEFAULT
220         def_bool y
221
222 config LARGE_ALLOCS
223         def_bool y
224
225 source "mm/Kconfig"
226
227 config GENERIC_ISA_DMA
228         bool
229         default y
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 PCI
309         bool "PCI support"
310         help
311           Find out whether you have a PCI motherboard. PCI is the name of a
312           bus system, i.e. the way the CPU talks to the other stuff inside
313           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
314           VESA. If you have PCI, say Y, otherwise N.
315
316           The PCI-HOWTO, available from
317           <http://www.tldp.org/docs.html#howto>, contains valuable
318           information about which PCI hardware does work under Linux and which
319           doesn't.
320
321 config PCI_DOMAINS
322         bool
323         default PCI
324
325 source "drivers/pci/Kconfig"
326
327 config SUN_OPENPROMFS
328         tristate "Openprom tree appears in /proc/openprom"
329         help
330           If you say Y, the OpenPROM device tree will be available as a
331           virtual file system, which you can mount to /proc/openprom by "mount
332           -t openpromfs none /proc/openprom".
333
334           To compile the /proc/openprom support as a module, choose M here: the
335           module will be called openpromfs.  If unsure, choose M.
336
337 config SPARC32_COMPAT
338         bool "Kernel support for Linux/Sparc 32bit binary compatibility"
339         help
340           This allows you to run 32-bit binaries on your Ultra.
341           Everybody wants this; say Y.
342
343 config COMPAT
344         bool
345         depends on SPARC32_COMPAT
346         default y
347
348 config BINFMT_ELF32
349         bool "Kernel support for 32-bit ELF binaries"
350         depends on SPARC32_COMPAT
351         help
352           This allows you to run 32-bit Linux/ELF binaries on your Ultra.
353           Everybody wants this; say Y.
354
355 config BINFMT_AOUT32
356         bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
357         depends on SPARC32_COMPAT
358         help
359           This allows you to run 32-bit a.out format binaries on your Ultra.
360           If you want to run SunOS binaries (see SunOS binary emulation below)
361           or other a.out binaries, say Y. If unsure, say N.
362
363 menu "Executable file formats"
364
365 source "fs/Kconfig.binfmt"
366
367 config SUNOS_EMUL
368         bool "SunOS binary emulation"
369         depends on BINFMT_AOUT32
370         help
371           This allows you to run most SunOS binaries.  If you want to do this,
372           say Y here and place appropriate files in /usr/gnemul/sunos. See
373           <http://www.ultralinux.org/faq.html> for more information.  If you
374           want to run SunOS binaries on an Ultra you must also say Y to
375           "Kernel support for 32-bit a.out binaries" above.
376
377 config SOLARIS_EMUL
378         tristate "Solaris binary emulation (EXPERIMENTAL)"
379         depends on SPARC32_COMPAT && EXPERIMENTAL
380         help
381           This is experimental code which will enable you to run (many)
382           Solaris binaries on your SPARC Linux machine.
383
384           To compile this code as a module, choose M here: the
385           module will be called solaris.
386
387 endmenu
388
389 config SCHED_SMT
390         bool "SMT (Hyperthreading) scheduler support"
391         depends on SMP
392         default y
393         help
394           SMT scheduler support improves the CPU scheduler's decision making
395           when dealing with UltraSPARC cpus at a cost of slightly increased
396           overhead in some places. If unsure say N here.
397
398 config CMDLINE_BOOL
399         bool "Default bootloader kernel arguments"
400
401 config CMDLINE
402         string "Initial kernel command string"
403         depends on CMDLINE_BOOL
404         default "console=ttyS0,9600 root=/dev/sda1"
405         help
406           Say Y here if you want to be able to pass default arguments to
407           the kernel. This will be overridden by the bootloader, if you
408           use one (such as SILO). This is most useful if you want to boot
409           a kernel from TFTP, and want default options to be available
410           with having them passed on the command line.
411
412           NOTE: This option WILL override the PROM bootargs setting!
413
414 source "net/Kconfig"
415
416 source "drivers/Kconfig"
417
418 source "drivers/sbus/char/Kconfig"
419
420 source "drivers/fc4/Kconfig"
421
422 source "fs/Kconfig"
423
424 menu "Instrumentation Support"
425         depends on EXPERIMENTAL
426
427 source "arch/sparc64/oprofile/Kconfig"
428
429 config KPROBES
430         bool "Kprobes (EXPERIMENTAL)"
431         depends on KALLSYMS && EXPERIMENTAL && MODULES
432         help
433           Kprobes allows you to trap at almost any kernel address and
434           execute a callback function.  register_kprobe() establishes
435           a probepoint and specifies the callback.  Kprobes is useful
436           for kernel debugging, non-intrusive instrumentation and testing.
437           If in doubt, say "N".
438 endmenu
439
440 source "arch/sparc64/Kconfig.debug"
441
442 source "security/Kconfig"
443
444 source "crypto/Kconfig"
445
446 source "lib/Kconfig"