blob: 10945c344304a1636222265fc688ae305a83a923 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001# For a description of the syntax of this configuration file,
2# see Documentation/kbuild/kconfig-language.txt.
3#
4
5mainmenu "Linux/SPARC Kernel Configuration"
6
Sam Ravnborg35da3e32008-11-15 13:40:12 -08007config SPARC
8 bool
9 default y
10 select HAVE_IDE
11 select HAVE_OPROFILE
Sam Ravnborg26b4c912008-11-16 20:01:17 -080012 select HAVE_ARCH_KGDB if !SMP || SPARC64
Sam Ravnborg35da3e32008-11-15 13:40:12 -080013 select HAVE_ARCH_TRACEHOOK
14 select ARCH_WANT_OPTIONAL_GPIOLIB
15 select RTC_CLASS
16 select RTC_DRV_M48T59
17
18# Identify this as a Sparc32 build
19config SPARC32
20 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -080021 default y if ARCH = "sparc"
Sam Ravnborg35da3e32008-11-15 13:40:12 -080022 help
23 SPARC is a family of RISC microprocessors designed and marketed by
24 Sun Microsystems, incorporated. They are very widely found in Sun
25 workstations and clones. This port covers the original 32-bit SPARC;
26 it is old and stable and usually considered one of the "big three"
27 along with the Intel and Alpha ports. The UltraLinux project
28 maintains both the SPARC32 and SPARC64 ports; its web page is
29 available at <http://www.ultralinux.org/>.
30
Sam Ravnborg26b4c912008-11-16 20:01:17 -080031config SPARC64
32 bool
33 default y if ARCH = "sparc64"
34 select HAVE_FUNCTION_TRACER
35 select HAVE_KRETPROBES
36 select HAVE_KPROBES
37 select HAVE_LMB
38 select USE_GENERIC_SMP_HELPERS if SMP
39 select RTC_DRV_CMOS
40 select RTC_DRV_BQ4802
41 select RTC_DRV_SUN4V
42 select RTC_DRV_STARFIRE
43
44config 64BIT
45 def_bool y if SPARC64
46
47config GENERIC_TIME
48 bool
49 default y if SPARC64
50
51config GENERIC_CMOS_UPDATE
52 bool
53 default y if SPARC64
54
55config GENERIC_CLOCKEVENTS
56 bool
57 default y if SPARC64
58
59config IOMMU_HELPER
60 bool
61 default y if SPARC64
62
63config QUICKLIST
64 bool
65 default y if SPARC64
66
67config STACKTRACE_SUPPORT
68 bool
69 default y if SPARC64
70
71config LOCKDEP_SUPPORT
72 bool
73 default y if SPARC64
74
75config AUDIT_ARCH
76 bool
77 default y if SPARC64
78
79config HAVE_SETUP_PER_CPU_AREA
80 def_bool y if SPARC64
81
82config GENERIC_HARDIRQS_NO__DO_IRQ
83 bool
84 def_bool y if SPARC64
85
Linus Torvalds1da177e2005-04-16 15:20:36 -070086config MMU
87 bool
88 default y
89
Linus Torvalds1da177e2005-04-16 15:20:36 -070090config HIGHMEM
91 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -080092 default y if SPARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -070093
Christoph Lameter5ac6da62007-02-10 01:43:14 -080094config ZONE_DMA
95 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -080096 default y if SPARC32
Christoph Lameter5ac6da62007-02-10 01:43:14 -080097
Linus Torvalds1da177e2005-04-16 15:20:36 -070098config GENERIC_ISA_DMA
99 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800100 default y if SPARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700101
David S. Miller15df0f32008-08-20 23:03:24 -0700102config GENERIC_GPIO
103 bool
104 help
105 Generic GPIO API support
106
Stephen Rothwell0785b9d2007-07-18 00:09:30 -0700107config ARCH_NO_VIRT_TO_BUS
108 def_bool y
109
Stephen Rothwell97e873e2007-05-01 16:26:07 +1000110config OF
111 def_bool y
112
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113source "init/Kconfig"
114
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700115source "kernel/Kconfig.freezer"
116
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800117menu "Processor type and features"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700118
Linus Torvalds1da177e2005-04-16 15:20:36 -0700119config SMP
120 bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700121 ---help---
122 This enables support for systems with more than one CPU. If you have
123 a system with only one CPU, say N. If you have a system with more
124 than one CPU, say Y.
125
126 If you say N here, the kernel will run on single and multiprocessor
127 machines, but will use only one CPU of a multiprocessor machine. If
128 you say Y here, the kernel will run on many, but not all,
129 singleprocessor machines. On a singleprocessor machine, the kernel
130 will run faster if you say N here.
131
132 People using multiprocessor machines who say Y here should also say
133 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
134 Management" code will be disabled if you say Y here.
135
Adrian Bunk03502fa2008-02-03 15:50:21 +0200136 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
137 available at <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700138
139 If you don't know what to do here, say N.
140
141config NR_CPUS
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800142 int "Maximum number of CPUs"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700143 depends on SMP
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800144 range 2 32 if SPARC32
145 range 2 1024 if SPARC64
146 default 32 if SPARC32
147 default 64 if SPARC64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700148
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800149source kernel/Kconfig.hz
150
151config RWSEM_GENERIC_SPINLOCK
152 bool
153 default y if SPARC32
154
155config RWSEM_XCHGADD_ALGORITHM
156 bool
157 default y if SPARC64
158
159config GENERIC_FIND_NEXT_BIT
160 bool
161 default y
162
163config GENERIC_HWEIGHT
164 bool
165 default y if !ULTRA_HAS_POPULATION_COUNT
166
167config GENERIC_CALIBRATE_DELAY
168 bool
169 default y
170
171config ARCH_MAY_HAVE_PC_FDC
172 bool
173 default y
174
175config ARCH_HAS_ILOG2_U32
176 bool
177 default n
178
179config ARCH_HAS_ILOG2_U64
180 bool
181 default n
182
183config EMULATED_CMPXCHG
184 bool
185 default y if SPARC32
186 help
187 Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
188 is emulated, and therefore it is not completely atomic.
189
190choice
191 prompt "Kernel page size" if SPARC64
192 default SPARC64_PAGE_SIZE_8KB
193
194config SPARC64_PAGE_SIZE_8KB
195 bool "8KB"
196 help
197 This lets you select the page size of the kernel.
198
199 8KB and 64KB work quite well, since SPARC ELF sections
200 provide for up to 64KB alignment.
201
202 If you don't know what to do, choose 8KB.
203
204config SPARC64_PAGE_SIZE_64KB
205 bool "64KB"
206
207endchoice
208
209config SECCOMP
210 bool "Enable seccomp to safely compute untrusted bytecode"
211 depends on SPARC64 && PROC_FS
212 default y
213 help
214 This kernel feature is useful for number crunching applications
215 that may need to compute untrusted bytecode during their
216 execution. By using pipes or other transports made available to
217 the process as file descriptors supporting the read/write
218 syscalls, it's possible to isolate those applications in
219 their own address space using seccomp. Once seccomp is
220 enabled via /proc/<pid>/seccomp, it cannot be disabled
221 and the task is only allowed to execute a few safe syscalls
222 defined by each seccomp mode.
223
224 If unsure, say Y. Only embedded should say N here.
225
226config HOTPLUG_CPU
227 bool "Support for hot-pluggable CPUs"
228 depends on SPARC64 && SMP
229 select HOTPLUG
230 help
231 Say Y here to experiment with turning CPUs off and on. CPUs
232 can be controlled through /sys/devices/system/cpu/cpu#.
233 Say N if you want to disable CPU hotplug.
234
235config GENERIC_HARDIRQS
236 bool
237 default y if SPARC64
238
239source "kernel/time/Kconfig"
240
241if SPARC64
242source "drivers/cpufreq/Kconfig"
243
244config US3_FREQ
245 tristate "UltraSPARC-III CPU Frequency driver"
246 depends on CPU_FREQ
247 select CPU_FREQ_TABLE
248 help
249 This adds the CPUFreq driver for UltraSPARC-III processors.
250
251 For details, take a look at <file:Documentation/cpu-freq>.
252
253 If in doubt, say N.
254
255config US2E_FREQ
256 tristate "UltraSPARC-IIe CPU Frequency driver"
257 depends on CPU_FREQ
258 select CPU_FREQ_TABLE
259 help
260 This adds the CPUFreq driver for UltraSPARC-IIe processors.
261
262 For details, take a look at <file:Documentation/cpu-freq>.
263
264 If in doubt, say N.
265
266endif
267
268config US3_MC
269 tristate "UltraSPARC-III Memory Controller driver"
270 depends on SPARC64
271 default y
272 help
273 This adds a driver for the UltraSPARC-III memory controller.
274 Loading this driver allows exact mnemonic strings to be
275 printed in the event of a memory error, so that the faulty DIMM
276 on the motherboard can be matched to the error.
277
278 If in doubt, say Y, as this information can be very useful.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700279
280# Global things across all Sun machines.
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800281config GENERIC_LOCKBREAK
282 bool
283 default y
284 depends on SPARC64 && SMP && PREEMPT
285
286choice
287 prompt "SPARC64 Huge TLB Page Size"
288 depends on SPARC64 && HUGETLB_PAGE
289 default HUGETLB_PAGE_SIZE_4MB
290
291config HUGETLB_PAGE_SIZE_4MB
292 bool "4MB"
293
294config HUGETLB_PAGE_SIZE_512K
295 bool "512K"
296
297config HUGETLB_PAGE_SIZE_64K
298 depends on !SPARC64_PAGE_SIZE_64KB
299 bool "64K"
300
301endchoice
302
303config NUMA
304 bool "NUMA support"
305 depends on SPARC64 && SMP
306
307config NODES_SHIFT
308 int
309 default "4"
310 depends on NEED_MULTIPLE_NODES
311
312# Some NUMA nodes have memory ranges that span
313# other nodes. Even though a pfn is valid and
314# between a node's start and end pfns, it may not
315# reside on that node. See memmap_init_zone()
316# for details.
317config NODES_SPAN_OTHER_NODES
318 def_bool y
319 depends on NEED_MULTIPLE_NODES
320
321config ARCH_POPULATES_NODE_MAP
322 def_bool y if SPARC64
323
324config ARCH_SELECT_MEMORY_MODEL
325 def_bool y if SPARC64
326
327config ARCH_SPARSEMEM_ENABLE
328 def_bool y if SPARC64
329 select SPARSEMEM_VMEMMAP_ENABLE
330
331config ARCH_SPARSEMEM_DEFAULT
332 def_bool y if SPARC64
333
334source "mm/Kconfig"
335
336config SCHED_SMT
337 bool "SMT (Hyperthreading) scheduler support"
338 depends on SPARC64 && SMP
339 default y
340 help
341 SMT scheduler support improves the CPU scheduler's decision making
342 when dealing with SPARC cpus at a cost of slightly increased overhead
343 in some places. If unsure say N here.
344
345config SCHED_MC
346 bool "Multi-core scheduler support"
347 depends on SPARC64 && SMP
348 default y
349 help
350 Multi-core scheduler support improves the CPU scheduler's decision
351 making when dealing with multi-core CPU chips at a cost of slightly
352 increased overhead in some places. If unsure say N here.
353
354if SPARC64
355source "kernel/Kconfig.preempt"
356endif
357
358config CMDLINE_BOOL
359 bool "Default bootloader kernel arguments"
360 depends on SPARC64
361
362config CMDLINE
363 string "Initial kernel command string"
364 depends on CMDLINE_BOOL
365 default "console=ttyS0,9600 root=/dev/sda1"
366 help
367 Say Y here if you want to be able to pass default arguments to
368 the kernel. This will be overridden by the bootloader, if you
369 use one (such as SILO). This is most useful if you want to boot
370 a kernel from TFTP, and want default options to be available
371 with having them passed on the command line.
372
373 NOTE: This option WILL override the PROM bootargs setting!
374
375config SUN_PM
376 bool
377 default y if SPARC32
378 help
379 Enable power management and CPU standby features on supported
380 SPARC platforms.
381
382config SPARC_LED
383 tristate "Sun4m LED driver"
384 depends on SPARC32
385 help
386 This driver toggles the front-panel LED on sun4m systems
387 in a user-specifiable manner. Its state can be probed
388 by reading /proc/led and its blinking mode can be changed
389 via writes to /proc/led
390
Linus Torvalds1da177e2005-04-16 15:20:36 -0700391config SERIAL_CONSOLE
392 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800393 depends on SPARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700394 default y
395 ---help---
396 If you say Y here, it will be possible to use a serial port as the
397 system console (the system console is the device which receives all
398 kernel messages and warnings and which allows logins in single user
399 mode). This could be useful if some terminal or printer is connected
400 to that serial port.
401
402 Even if you say Y here, the currently visible virtual console
403 (/dev/tty0) will still be used as the system console by default, but
404 you can alter that using a kernel command line option such as
405 "console=ttyS1". (Try "man bootparam" or see the documentation of
406 your boot loader (silo) about how to pass options to the kernel at
407 boot time.)
408
409 If you don't have a graphics card installed and you say Y here, the
410 kernel will automatically use the first serial line, /dev/ttyS0, as
411 system console.
412
413 If unsure, say N.
414
Sam Ravnborg4b27e0e2008-11-15 13:44:31 -0800415endmenu
416
417menu "Bus options (PCI etc.)"
418config ISA
419 bool
420 help
421 ISA is found on Espresso only and is not supported currently.
422
423config ISAPNP
424 bool
425 help
426 ISAPNP is not supported
427
428config EISA
429 bool
430 help
431 EISA is not supported.
432
433config MCA
434 bool
435 help
436 MCA is not supported.
437
Sam Ravnborg4b27e0e2008-11-15 13:44:31 -0800438config SBUS
439 bool
440 default y
441
442config SBUSCHAR
443 bool
444 default y
445
446config SUN_AUXIO
447 bool
448 default y
449
450config SUN_IO
451 bool
452 default y
453
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800454config SUN_LDOMS
455 bool "Sun Logical Domains support"
456 depends on SPARC64
457 help
458 Say Y here is you want to support virtual devices via
459 Logical Domains.
460
Linus Torvalds1da177e2005-04-16 15:20:36 -0700461config PCI
462 bool "Support for PCI and PS/2 keyboard/mouse"
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800463 select ARCH_SUPPORTS_MSI if SPARC64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700464 help
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800465 Find out whether your system includes a PCI bus. PCI is the name of
466 a bus system, i.e. the way the CPU talks to the other stuff inside
467 your box. If you say Y here, the kernel will include drivers and
468 infrastructure code to support PCI bus devices.
469
Linus Torvalds1da177e2005-04-16 15:20:36 -0700470 CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
471 CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
472 All of these platforms are extremely obscure, so say N if unsure.
473
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800474config PCI_DOMAINS
475 def_bool PCI if SPARC64
476
Matthew Wilcox36e23592007-07-10 10:54:40 -0600477config PCI_SYSCALL
478 def_bool PCI
479
Linus Torvalds1da177e2005-04-16 15:20:36 -0700480source "drivers/pci/Kconfig"
481
David S. Millerc6afec52008-11-23 21:50:16 -0800482source "drivers/pcmcia/Kconfig"
483
Linus Torvalds1da177e2005-04-16 15:20:36 -0700484config SUN_OPENPROMFS
485 tristate "Openprom tree appears in /proc/openprom"
486 help
487 If you say Y, the OpenPROM device tree will be available as a
488 virtual file system, which you can mount to /proc/openprom by "mount
489 -t openpromfs none /proc/openprom".
490
491 To compile the /proc/openprom support as a module, choose M here: the
492 module will be called openpromfs.
493
494 Only choose N if you know in advance that you will not need to modify
495 OpenPROM settings on the running system.
496
William Lee Irwin III30aaa802005-06-23 00:10:18 -0700497
498endmenu
499
Sam Ravnborg12e271a2008-11-15 13:43:49 -0800500menu "Executable file formats"
501
502source "fs/Kconfig.binfmt"
503
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800504config COMPAT
505 bool
506 depends on SPARC64
507 default y
508 select COMPAT_BINFMT_ELF
509
510config SYSVIPC_COMPAT
511 bool
512 depends on COMPAT && SYSVIPC
513 default y
514
Sam Ravnborg12e271a2008-11-15 13:43:49 -0800515endmenu
516
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700517source "net/Kconfig"
518
William Lee Irwin III30aaa802005-06-23 00:10:18 -0700519source "drivers/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700520
Linus Torvalds1da177e2005-04-16 15:20:36 -0700521source "drivers/sbus/char/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700522
Linus Torvalds1da177e2005-04-16 15:20:36 -0700523source "fs/Kconfig"
524
Linus Torvalds1da177e2005-04-16 15:20:36 -0700525source "arch/sparc/Kconfig.debug"
526
527source "security/Kconfig"
528
529source "crypto/Kconfig"
530
531source "lib/Kconfig"