blob: 5f2df99645c9d7aa3028538e8c027ec192cb8c2c [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
Bastian Blank761b6022009-01-04 23:03:10 -08007config 64BIT
8 bool "64-bit kernel" if ARCH = "sparc"
9 default ARCH = "sparc64"
10 help
11 SPARC is a family of RISC microprocessors designed and marketed by
12 Sun Microsystems, incorporated. They are very widely found in Sun
13 workstations and clones.
14
15 Say yes to build a 64-bit kernel - formerly known as sparc64
16 Say no to build a 32-bit kernel - formerly known as sparc
17
Sam Ravnborg35da3e32008-11-15 13:40:12 -080018config SPARC
19 bool
20 default y
21 select HAVE_IDE
22 select HAVE_OPROFILE
Sam Ravnborg26b4c912008-11-16 20:01:17 -080023 select HAVE_ARCH_KGDB if !SMP || SPARC64
Sam Ravnborg35da3e32008-11-15 13:40:12 -080024 select HAVE_ARCH_TRACEHOOK
25 select ARCH_WANT_OPTIONAL_GPIOLIB
26 select RTC_CLASS
27 select RTC_DRV_M48T59
FUJITA Tomonori02f7a182009-08-10 11:53:13 +090028 select HAVE_DMA_ATTRS
Sam Ravnborg35da3e32008-11-15 13:40:12 -080029
Sam Ravnborg35da3e32008-11-15 13:40:12 -080030config SPARC32
Bastian Blank761b6022009-01-04 23:03:10 -080031 def_bool !64BIT
Sam Ravnborg35da3e32008-11-15 13:40:12 -080032
Sam Ravnborg26b4c912008-11-16 20:01:17 -080033config SPARC64
Bastian Blank761b6022009-01-04 23:03:10 -080034 def_bool 64BIT
Sam Ravnborg5bc05302008-12-27 00:56:29 -080035 select ARCH_SUPPORTS_MSI
Sam Ravnborg26b4c912008-11-16 20:01:17 -080036 select HAVE_FUNCTION_TRACER
37 select HAVE_KRETPROBES
38 select HAVE_KPROBES
39 select HAVE_LMB
Christian Borntraeger67605d62009-01-19 20:21:49 -080040 select HAVE_SYSCALL_WRAPPERS
David S. Miller9be12f92009-06-13 01:03:24 -070041 select HAVE_DYNAMIC_FTRACE
42 select HAVE_FTRACE_MCOUNT_RECORD
Sam Ravnborg26b4c912008-11-16 20:01:17 -080043 select USE_GENERIC_SMP_HELPERS if SMP
44 select RTC_DRV_CMOS
45 select RTC_DRV_BQ4802
46 select RTC_DRV_SUN4V
47 select RTC_DRV_STARFIRE
48
Sam Ravnborg5e538792008-12-02 23:17:12 -080049config ARCH_DEFCONFIG
50 string
51 default "arch/sparc/configs/sparc32_defconfig" if SPARC32
52 default "arch/sparc/configs/sparc64_defconfig" if SPARC64
53
Sam Ravnborgfe6875e2008-12-26 15:35:16 -080054# CONFIG_BITS can be used at source level to get 32/64 bits
55config BITS
56 int
57 default 32 if SPARC32
58 default 64 if SPARC64
Sam Ravnborg5e538792008-12-02 23:17:12 -080059
Sam Ravnborg26b4c912008-11-16 20:01:17 -080060config GENERIC_TIME
61 bool
62 default y if SPARC64
63
64config GENERIC_CMOS_UPDATE
65 bool
66 default y if SPARC64
67
68config GENERIC_CLOCKEVENTS
69 bool
70 default y if SPARC64
71
72config IOMMU_HELPER
73 bool
74 default y if SPARC64
75
76config QUICKLIST
77 bool
78 default y if SPARC64
79
80config STACKTRACE_SUPPORT
81 bool
82 default y if SPARC64
83
84config LOCKDEP_SUPPORT
85 bool
86 default y if SPARC64
87
David S. Miller6a5726d2008-11-28 01:19:41 -080088config HAVE_LATENCYTOP_SUPPORT
89 bool
90 default y if SPARC64
91
Sam Ravnborg26b4c912008-11-16 20:01:17 -080092config AUDIT_ARCH
93 bool
David S. Miller7e7e93a2008-12-05 22:18:40 -080094 default y
Sam Ravnborg26b4c912008-11-16 20:01:17 -080095
96config HAVE_SETUP_PER_CPU_AREA
97 def_bool y if SPARC64
98
David S. Miller4fd78a52009-04-08 20:32:02 -070099config HAVE_DYNAMIC_PER_CPU_AREA
100 def_bool y if SPARC64
101
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800102config GENERIC_HARDIRQS_NO__DO_IRQ
103 bool
104 def_bool y if SPARC64
105
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106config MMU
107 bool
108 default y
109
Linus Torvalds1da177e2005-04-16 15:20:36 -0700110config HIGHMEM
111 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800112 default y if SPARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800114config ZONE_DMA
115 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800116 default y if SPARC32
Christoph Lameter5ac6da62007-02-10 01:43:14 -0800117
Linus Torvalds1da177e2005-04-16 15:20:36 -0700118config GENERIC_ISA_DMA
119 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800120 default y if SPARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700121
David S. Miller15df0f32008-08-20 23:03:24 -0700122config GENERIC_GPIO
123 bool
124 help
125 Generic GPIO API support
126
Stephen Rothwell0785b9d2007-07-18 00:09:30 -0700127config ARCH_NO_VIRT_TO_BUS
128 def_bool y
129
Stephen Rothwell97e873e2007-05-01 16:26:07 +1000130config OF
131 def_bool y
132
Akinobu Mita6a11f752009-03-31 15:23:17 -0700133config ARCH_SUPPORTS_DEBUG_PAGEALLOC
134 def_bool y if SPARC64
135
Linus Torvalds1da177e2005-04-16 15:20:36 -0700136source "init/Kconfig"
137
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700138source "kernel/Kconfig.freezer"
139
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800140menu "Processor type and features"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700141
Linus Torvalds1da177e2005-04-16 15:20:36 -0700142config SMP
143 bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700144 ---help---
145 This enables support for systems with more than one CPU. If you have
146 a system with only one CPU, say N. If you have a system with more
147 than one CPU, say Y.
148
149 If you say N here, the kernel will run on single and multiprocessor
150 machines, but will use only one CPU of a multiprocessor machine. If
151 you say Y here, the kernel will run on many, but not all,
152 singleprocessor machines. On a singleprocessor machine, the kernel
153 will run faster if you say N here.
154
155 People using multiprocessor machines who say Y here should also say
156 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
157 Management" code will be disabled if you say Y here.
158
Adrian Bunk03502fa2008-02-03 15:50:21 +0200159 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
160 available at <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161
162 If you don't know what to do here, say N.
163
164config NR_CPUS
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800165 int "Maximum number of CPUs"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700166 depends on SMP
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800167 range 2 32 if SPARC32
168 range 2 1024 if SPARC64
169 default 32 if SPARC32
170 default 64 if SPARC64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800172source kernel/Kconfig.hz
173
174config RWSEM_GENERIC_SPINLOCK
175 bool
176 default y if SPARC32
177
178config RWSEM_XCHGADD_ALGORITHM
179 bool
180 default y if SPARC64
181
182config GENERIC_FIND_NEXT_BIT
183 bool
184 default y
185
186config GENERIC_HWEIGHT
187 bool
188 default y if !ULTRA_HAS_POPULATION_COUNT
189
190config GENERIC_CALIBRATE_DELAY
191 bool
192 default y
193
194config ARCH_MAY_HAVE_PC_FDC
195 bool
196 default y
197
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800198config EMULATED_CMPXCHG
199 bool
200 default y if SPARC32
201 help
202 Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
203 is emulated, and therefore it is not completely atomic.
204
Sam Ravnborgd670bd42008-12-03 03:08:37 -0800205# Makefile helpers
206config SPARC32_SMP
207 bool
208 default y
209 depends on SPARC32 && SMP
210
211config SPARC64_SMP
212 bool
213 default y
214 depends on SPARC64 && SMP
215
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800216choice
217 prompt "Kernel page size" if SPARC64
218 default SPARC64_PAGE_SIZE_8KB
219
220config SPARC64_PAGE_SIZE_8KB
221 bool "8KB"
222 help
223 This lets you select the page size of the kernel.
224
225 8KB and 64KB work quite well, since SPARC ELF sections
226 provide for up to 64KB alignment.
227
228 If you don't know what to do, choose 8KB.
229
230config SPARC64_PAGE_SIZE_64KB
231 bool "64KB"
232
233endchoice
234
235config SECCOMP
236 bool "Enable seccomp to safely compute untrusted bytecode"
237 depends on SPARC64 && PROC_FS
238 default y
239 help
240 This kernel feature is useful for number crunching applications
241 that may need to compute untrusted bytecode during their
242 execution. By using pipes or other transports made available to
243 the process as file descriptors supporting the read/write
244 syscalls, it's possible to isolate those applications in
245 their own address space using seccomp. Once seccomp is
246 enabled via /proc/<pid>/seccomp, it cannot be disabled
247 and the task is only allowed to execute a few safe syscalls
248 defined by each seccomp mode.
249
250 If unsure, say Y. Only embedded should say N here.
251
252config HOTPLUG_CPU
253 bool "Support for hot-pluggable CPUs"
254 depends on SPARC64 && SMP
255 select HOTPLUG
256 help
257 Say Y here to experiment with turning CPUs off and on. CPUs
258 can be controlled through /sys/devices/system/cpu/cpu#.
259 Say N if you want to disable CPU hotplug.
260
261config GENERIC_HARDIRQS
262 bool
263 default y if SPARC64
264
265source "kernel/time/Kconfig"
266
267if SPARC64
268source "drivers/cpufreq/Kconfig"
269
270config US3_FREQ
271 tristate "UltraSPARC-III CPU Frequency driver"
272 depends on CPU_FREQ
273 select CPU_FREQ_TABLE
274 help
275 This adds the CPUFreq driver for UltraSPARC-III processors.
276
277 For details, take a look at <file:Documentation/cpu-freq>.
278
279 If in doubt, say N.
280
281config US2E_FREQ
282 tristate "UltraSPARC-IIe CPU Frequency driver"
283 depends on CPU_FREQ
284 select CPU_FREQ_TABLE
285 help
286 This adds the CPUFreq driver for UltraSPARC-IIe processors.
287
288 For details, take a look at <file:Documentation/cpu-freq>.
289
290 If in doubt, say N.
291
292endif
293
294config US3_MC
295 tristate "UltraSPARC-III Memory Controller driver"
296 depends on SPARC64
297 default y
298 help
299 This adds a driver for the UltraSPARC-III memory controller.
300 Loading this driver allows exact mnemonic strings to be
301 printed in the event of a memory error, so that the faulty DIMM
302 on the motherboard can be matched to the error.
303
304 If in doubt, say Y, as this information can be very useful.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700305
306# Global things across all Sun machines.
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800307config GENERIC_LOCKBREAK
308 bool
309 default y
310 depends on SPARC64 && SMP && PREEMPT
311
312choice
313 prompt "SPARC64 Huge TLB Page Size"
314 depends on SPARC64 && HUGETLB_PAGE
315 default HUGETLB_PAGE_SIZE_4MB
316
317config HUGETLB_PAGE_SIZE_4MB
318 bool "4MB"
319
320config HUGETLB_PAGE_SIZE_512K
321 bool "512K"
322
323config HUGETLB_PAGE_SIZE_64K
324 depends on !SPARC64_PAGE_SIZE_64KB
325 bool "64K"
326
327endchoice
328
329config NUMA
330 bool "NUMA support"
331 depends on SPARC64 && SMP
332
333config NODES_SHIFT
334 int
335 default "4"
336 depends on NEED_MULTIPLE_NODES
337
338# Some NUMA nodes have memory ranges that span
339# other nodes. Even though a pfn is valid and
340# between a node's start and end pfns, it may not
341# reside on that node. See memmap_init_zone()
342# for details.
343config NODES_SPAN_OTHER_NODES
344 def_bool y
345 depends on NEED_MULTIPLE_NODES
346
347config ARCH_POPULATES_NODE_MAP
348 def_bool y if SPARC64
349
350config ARCH_SELECT_MEMORY_MODEL
351 def_bool y if SPARC64
352
353config ARCH_SPARSEMEM_ENABLE
354 def_bool y if SPARC64
355 select SPARSEMEM_VMEMMAP_ENABLE
356
357config ARCH_SPARSEMEM_DEFAULT
358 def_bool y if SPARC64
359
360source "mm/Kconfig"
361
362config SCHED_SMT
363 bool "SMT (Hyperthreading) scheduler support"
364 depends on SPARC64 && SMP
365 default y
366 help
367 SMT scheduler support improves the CPU scheduler's decision making
368 when dealing with SPARC cpus at a cost of slightly increased overhead
369 in some places. If unsure say N here.
370
371config SCHED_MC
372 bool "Multi-core scheduler support"
373 depends on SPARC64 && SMP
374 default y
375 help
376 Multi-core scheduler support improves the CPU scheduler's decision
377 making when dealing with multi-core CPU chips at a cost of slightly
378 increased overhead in some places. If unsure say N here.
379
380if SPARC64
381source "kernel/Kconfig.preempt"
382endif
383
384config CMDLINE_BOOL
385 bool "Default bootloader kernel arguments"
386 depends on SPARC64
387
388config CMDLINE
389 string "Initial kernel command string"
390 depends on CMDLINE_BOOL
391 default "console=ttyS0,9600 root=/dev/sda1"
392 help
393 Say Y here if you want to be able to pass default arguments to
394 the kernel. This will be overridden by the bootloader, if you
395 use one (such as SILO). This is most useful if you want to boot
396 a kernel from TFTP, and want default options to be available
397 with having them passed on the command line.
398
399 NOTE: This option WILL override the PROM bootargs setting!
400
401config SUN_PM
402 bool
403 default y if SPARC32
404 help
405 Enable power management and CPU standby features on supported
406 SPARC platforms.
407
408config SPARC_LED
409 tristate "Sun4m LED driver"
410 depends on SPARC32
411 help
412 This driver toggles the front-panel LED on sun4m systems
413 in a user-specifiable manner. Its state can be probed
414 by reading /proc/led and its blinking mode can be changed
415 via writes to /proc/led
416
Linus Torvalds1da177e2005-04-16 15:20:36 -0700417config SERIAL_CONSOLE
418 bool
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800419 depends on SPARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700420 default y
421 ---help---
422 If you say Y here, it will be possible to use a serial port as the
423 system console (the system console is the device which receives all
424 kernel messages and warnings and which allows logins in single user
425 mode). This could be useful if some terminal or printer is connected
426 to that serial port.
427
428 Even if you say Y here, the currently visible virtual console
429 (/dev/tty0) will still be used as the system console by default, but
430 you can alter that using a kernel command line option such as
431 "console=ttyS1". (Try "man bootparam" or see the documentation of
432 your boot loader (silo) about how to pass options to the kernel at
433 boot time.)
434
435 If you don't have a graphics card installed and you say Y here, the
436 kernel will automatically use the first serial line, /dev/ttyS0, as
437 system console.
438
439 If unsure, say N.
440
Sam Ravnborg4b27e0e2008-11-15 13:44:31 -0800441endmenu
442
443menu "Bus options (PCI etc.)"
Sam Ravnborg4b27e0e2008-11-15 13:44:31 -0800444config SBUS
445 bool
446 default y
447
448config SBUSCHAR
449 bool
450 default y
451
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800452config SUN_LDOMS
453 bool "Sun Logical Domains support"
454 depends on SPARC64
455 help
456 Say Y here is you want to support virtual devices via
457 Logical Domains.
458
Linus Torvalds1da177e2005-04-16 15:20:36 -0700459config PCI
460 bool "Support for PCI and PS/2 keyboard/mouse"
461 help
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800462 Find out whether your system includes a PCI bus. PCI is the name of
463 a bus system, i.e. the way the CPU talks to the other stuff inside
464 your box. If you say Y here, the kernel will include drivers and
465 infrastructure code to support PCI bus devices.
466
Linus Torvalds1da177e2005-04-16 15:20:36 -0700467 CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
468 CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
469 All of these platforms are extremely obscure, so say N if unsure.
470
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800471config PCI_DOMAINS
472 def_bool PCI if SPARC64
473
Matthew Wilcox36e23592007-07-10 10:54:40 -0600474config PCI_SYSCALL
475 def_bool PCI
476
Linus Torvalds1da177e2005-04-16 15:20:36 -0700477source "drivers/pci/Kconfig"
478
David S. Millerc6afec52008-11-23 21:50:16 -0800479source "drivers/pcmcia/Kconfig"
480
Linus Torvalds1da177e2005-04-16 15:20:36 -0700481config SUN_OPENPROMFS
482 tristate "Openprom tree appears in /proc/openprom"
483 help
484 If you say Y, the OpenPROM device tree will be available as a
485 virtual file system, which you can mount to /proc/openprom by "mount
486 -t openpromfs none /proc/openprom".
487
488 To compile the /proc/openprom support as a module, choose M here: the
489 module will be called openpromfs.
490
491 Only choose N if you know in advance that you will not need to modify
492 OpenPROM settings on the running system.
493
Sam Ravnborgd670bd42008-12-03 03:08:37 -0800494# Makefile helpers
495config SPARC32_PCI
496 bool
497 default y
498 depends on SPARC32 && PCI
499
500config SPARC64_PCI
501 bool
502 default y
503 depends on SPARC64 && PCI
William Lee Irwin III30aaa802005-06-23 00:10:18 -0700504
505endmenu
506
Sam Ravnborg12e271a2008-11-15 13:43:49 -0800507menu "Executable file formats"
508
509source "fs/Kconfig.binfmt"
510
Sam Ravnborg26b4c912008-11-16 20:01:17 -0800511config COMPAT
512 bool
513 depends on SPARC64
514 default y
515 select COMPAT_BINFMT_ELF
516
517config SYSVIPC_COMPAT
518 bool
519 depends on COMPAT && SYSVIPC
520 default y
521
Sam Ravnborg12e271a2008-11-15 13:43:49 -0800522endmenu
523
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700524source "net/Kconfig"
525
William Lee Irwin III30aaa802005-06-23 00:10:18 -0700526source "drivers/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700527
Linus Torvalds1da177e2005-04-16 15:20:36 -0700528source "drivers/sbus/char/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700529
Linus Torvalds1da177e2005-04-16 15:20:36 -0700530source "fs/Kconfig"
531
Linus Torvalds1da177e2005-04-16 15:20:36 -0700532source "arch/sparc/Kconfig.debug"
533
534source "security/Kconfig"
535
536source "crypto/Kconfig"
537
538source "lib/Kconfig"