sparc: switch to use of generic old sigaction
[deliverable/linux.git] / arch / sparc / Kconfig
CommitLineData
761b6026
BB
1config 64BIT
2 bool "64-bit kernel" if ARCH = "sparc"
3 default ARCH = "sparc64"
4 help
5 SPARC is a family of RISC microprocessors designed and marketed by
6 Sun Microsystems, incorporated. They are very widely found in Sun
7 workstations and clones.
8
9 Say yes to build a 64-bit kernel - formerly known as sparc64
10 Say no to build a 32-bit kernel - formerly known as sparc
11
35da3e39
SR
12config SPARC
13 bool
14 default y
7b14c647 15 select OF
3cfc535c 16 select OF_PROMTREE
35da3e39
SR
17 select HAVE_IDE
18 select HAVE_OPROFILE
26b4c912 19 select HAVE_ARCH_KGDB if !SMP || SPARC64
35da3e39 20 select HAVE_ARCH_TRACEHOOK
7ac57a89 21 select SYSCTL_EXCEPTION_TRACE
35da3e39 22 select ARCH_WANT_OPTIONAL_GPIOLIB
193d2aad 23 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
35da3e39
SR
24 select RTC_CLASS
25 select RTC_DRV_M48T59
e360adbe 26 select HAVE_IRQ_WORK
02f7a189 27 select HAVE_DMA_ATTRS
451d7400 28 select HAVE_DMA_API_DEBUG
46eb3b64 29 select HAVE_ARCH_JUMP_LABEL
6baa9b20 30 select HAVE_GENERIC_HARDIRQS
6baa9b20 31 select GENERIC_IRQ_SHOW
c1d7e01d 32 select ARCH_WANT_IPC_PARSE_VERSION
d6d04819 33 select USE_GENERIC_SMP_HELPERS if SMP
a21a2fd4 34 select GENERIC_PCI_IOMAP
d314d74c 35 select HAVE_NMI_WATCHDOG if SPARC64
e47b65b0 36 select HAVE_BPF_JIT
9b2a60c4 37 select HAVE_DEBUG_BUGVERBOSE
f0a2bc7e 38 select GENERIC_SMP_IDLE_THREAD
ded1cc5c 39 select GENERIC_CMOS_UPDATE
c7523a7c 40 select GENERIC_CLOCKEVENTS
2922585b 41 select GENERIC_STRNCPY_FROM_USER
2c66f623 42 select GENERIC_STRNLEN_USER
786d35d4 43 select MODULES_USE_ELF_RELA
eaca6eae 44 select ODD_RT_SIGACTION
99b06feb 45 select GENERIC_SIGALTSTACK
8d65681d 46 select GENERIC_COMPAT_RT_SIGQUEUEINFO
826c8772 47 select GENERIC_COMPAT_RT_SIGPROCMASK
55bb5a1e 48 select GENERIC_COMPAT_RT_SIGPENDING
bdc40abf 49 select GENERIC_COMPAT_RT_SIGACTION
35da3e39 50
35da3e39 51config SPARC32
761b6026 52 def_bool !64BIT
aea1181b 53 select GENERIC_ATOMIC64
c6df4b17 54 select CLZ_TAB
af1839eb 55 select HAVE_UID16
a274bd49 56 select OLD_SIGACTION
35da3e39 57
26b4c912 58config SPARC64
761b6026 59 def_bool 64BIT
5bc05308 60 select ARCH_SUPPORTS_MSI
26b4c912 61 select HAVE_FUNCTION_TRACER
9960e9e8
DM
62 select HAVE_FUNCTION_GRAPH_TRACER
63 select HAVE_FUNCTION_GRAPH_FP_TEST
63b75495 64 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
26b4c912
SR
65 select HAVE_KRETPROBES
66 select HAVE_KPROBES
4a0100f7 67 select HAVE_RCU_TABLE_FREE if SMP
95f72d1e 68 select HAVE_MEMBLOCK
2a4814df 69 select HAVE_MEMBLOCK_NODE_MAP
67605d68 70 select HAVE_SYSCALL_WRAPPERS
9be12f9b
DM
71 select HAVE_DYNAMIC_FTRACE
72 select HAVE_FTRACE_MCOUNT_RECORD
c658ad1b 73 select HAVE_SYSCALL_TRACEPOINTS
b69ec42b 74 select HAVE_DEBUG_KMEMLEAK
26b4c912
SR
75 select RTC_DRV_CMOS
76 select RTC_DRV_BQ4802
77 select RTC_DRV_SUN4V
78 select RTC_DRV_STARFIRE
cdd6c482 79 select HAVE_PERF_EVENTS
906010b2 80 select PERF_USE_VMALLOC
fcd8d4f4 81 select IRQ_PREFLOW_FASTEOI
df013ffb 82 select ARCH_HAVE_NMI_SAFE_CMPXCHG
178a2960 83 select HAVE_C_RECORDMCOUNT
625d693e 84 select NO_BOOTMEM
26b4c912 85
5e538790
SR
86config ARCH_DEFCONFIG
87 string
88 default "arch/sparc/configs/sparc32_defconfig" if SPARC32
89 default "arch/sparc/configs/sparc64_defconfig" if SPARC64
90
fe6875ec
SR
91# CONFIG_BITS can be used at source level to get 32/64 bits
92config BITS
93 int
94 default 32 if SPARC32
95 default 64 if SPARC64
5e538790 96
26b4c912
SR
97config IOMMU_HELPER
98 bool
99 default y if SPARC64
100
26b4c912
SR
101config STACKTRACE_SUPPORT
102 bool
103 default y if SPARC64
104
105config LOCKDEP_SUPPORT
106 bool
107 default y if SPARC64
108
6a5726dd
DM
109config HAVE_LATENCYTOP_SUPPORT
110 bool
111 default y if SPARC64
112
26b4c912
SR
113config AUDIT_ARCH
114 bool
7e7e93a2 115 default y
26b4c912
SR
116
117config HAVE_SETUP_PER_CPU_AREA
118 def_bool y if SPARC64
119
bcb2107f 120config NEED_PER_CPU_EMBED_FIRST_CHUNK
4fd78a5f
DM
121 def_bool y if SPARC64
122
a70c6913
TH
123config NEED_PER_CPU_PAGE_FIRST_CHUNK
124 def_bool y if SPARC64
125
1da177e4
LT
126config MMU
127 bool
128 default y
129
1da177e4
LT
130config HIGHMEM
131 bool
26b4c912 132 default y if SPARC32
1da177e4 133
5ac6da66
CL
134config ZONE_DMA
135 bool
26b4c912 136 default y if SPARC32
5ac6da66 137
d15b51be
FT
138config NEED_DMA_MAP_STATE
139 def_bool y
140
18e98307
FT
141config NEED_SG_DMA_LENGTH
142 def_bool y
143
1da177e4
LT
144config GENERIC_ISA_DMA
145 bool
26b4c912 146 default y if SPARC32
1da177e4 147
15df0f33
DM
148config GENERIC_GPIO
149 bool
150 help
151 Generic GPIO API support
152
0785b9dc
SR
153config ARCH_NO_VIRT_TO_BUS
154 def_bool y
155
6a11f75b
AM
156config ARCH_SUPPORTS_DEBUG_PAGEALLOC
157 def_bool y if SPARC64
158
1da177e4
LT
159source "init/Kconfig"
160
dc52ddc0
MH
161source "kernel/Kconfig.freezer"
162
26b4c912 163menu "Processor type and features"
1da177e4 164
1da177e4 165config SMP
6b7679dd 166 bool "Symmetric multi-processing support"
1da177e4
LT
167 ---help---
168 This enables support for systems with more than one CPU. If you have
169 a system with only one CPU, say N. If you have a system with more
170 than one CPU, say Y.
171
172 If you say N here, the kernel will run on single and multiprocessor
173 machines, but will use only one CPU of a multiprocessor machine. If
174 you say Y here, the kernel will run on many, but not all,
175 singleprocessor machines. On a singleprocessor machine, the kernel
176 will run faster if you say N here.
177
178 People using multiprocessor machines who say Y here should also say
179 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
180 Management" code will be disabled if you say Y here.
181
03502faa
AB
182 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
183 available at <http://www.tldp.org/docs.html#howto>.
1da177e4
LT
184
185 If you don't know what to do here, say N.
186
187config NR_CPUS
26b4c912 188 int "Maximum number of CPUs"
1da177e4 189 depends on SMP
26b4c912
SR
190 range 2 32 if SPARC32
191 range 2 1024 if SPARC64
192 default 32 if SPARC32
193 default 64 if SPARC64
1da177e4 194
26b4c912 195source kernel/Kconfig.hz
1da177e4 196
1da177e4
LT
197config RWSEM_GENERIC_SPINLOCK
198 bool
26b4c912 199 default y if SPARC32
1da177e4
LT
200
201config RWSEM_XCHGADD_ALGORITHM
202 bool
26b4c912 203 default y if SPARC64
1da177e4 204
d59288b7
AM
205config GENERIC_HWEIGHT
206 bool
26b4c912 207 default y if !ULTRA_HAS_POPULATION_COUNT
d59288b7 208
1da177e4
LT
209config GENERIC_CALIBRATE_DELAY
210 bool
211 default y
212
a08b6b79
Z
213config ARCH_MAY_HAVE_PC_FDC
214 bool
215 default y
216
5f81941c
MH
217config EMULATED_CMPXCHG
218 bool
26b4c912 219 default y if SPARC32
5f81941c
MH
220 help
221 Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
222 is emulated, and therefore it is not completely atomic.
223
d670bd4f
SR
224# Makefile helpers
225config SPARC32_SMP
226 bool
227 default y
228 depends on SPARC32 && SMP
229
230config SPARC64_SMP
231 bool
232 default y
233 depends on SPARC64 && SMP
234
c57ec52f
DM
235config EARLYFB
236 bool "Support for early boot text console"
237 default y
238 depends on SPARC64
239 help
240 Say Y here to enable a faster early framebuffer boot console.
241
26b4c912
SR
242config SECCOMP
243 bool "Enable seccomp to safely compute untrusted bytecode"
244 depends on SPARC64 && PROC_FS
245 default y
246 help
247 This kernel feature is useful for number crunching applications
248 that may need to compute untrusted bytecode during their
249 execution. By using pipes or other transports made available to
250 the process as file descriptors supporting the read/write
251 syscalls, it's possible to isolate those applications in
252 their own address space using seccomp. Once seccomp is
253 enabled via /proc/<pid>/seccomp, it cannot be disabled
254 and the task is only allowed to execute a few safe syscalls
255 defined by each seccomp mode.
256
257 If unsure, say Y. Only embedded should say N here.
258
259config HOTPLUG_CPU
260 bool "Support for hot-pluggable CPUs"
261 depends on SPARC64 && SMP
262 select HOTPLUG
263 help
264 Say Y here to experiment with turning CPUs off and on. CPUs
265 can be controlled through /sys/devices/system/cpu/cpu#.
266 Say N if you want to disable CPU hotplug.
267
26b4c912
SR
268if SPARC64
269source "drivers/cpufreq/Kconfig"
270
271config US3_FREQ
272 tristate "UltraSPARC-III CPU Frequency driver"
273 depends on CPU_FREQ
274 select CPU_FREQ_TABLE
275 help
276 This adds the CPUFreq driver for UltraSPARC-III processors.
277
278 For details, take a look at <file:Documentation/cpu-freq>.
279
280 If in doubt, say N.
281
282config US2E_FREQ
283 tristate "UltraSPARC-IIe CPU Frequency driver"
284 depends on CPU_FREQ
285 select CPU_FREQ_TABLE
286 help
287 This adds the CPUFreq driver for UltraSPARC-IIe processors.
288
289 For details, take a look at <file:Documentation/cpu-freq>.
290
291 If in doubt, say N.
292
293endif
294
295config US3_MC
296 tristate "UltraSPARC-III Memory Controller driver"
297 depends on SPARC64
298 default y
299 help
300 This adds a driver for the UltraSPARC-III memory controller.
301 Loading this driver allows exact mnemonic strings to be
302 printed in the event of a memory error, so that the faulty DIMM
303 on the motherboard can be matched to the error.
304
305 If in doubt, say Y, as this information can be very useful.
306
307# Global things across all Sun machines.
308config GENERIC_LOCKBREAK
1da177e4
LT
309 bool
310 default y
26b4c912
SR
311 depends on SPARC64 && SMP && PREEMPT
312
26b4c912
SR
313config NUMA
314 bool "NUMA support"
315 depends on SPARC64 && SMP
316
317config NODES_SHIFT
318 int
319 default "4"
320 depends on NEED_MULTIPLE_NODES
321
322# Some NUMA nodes have memory ranges that span
323# other nodes. Even though a pfn is valid and
324# between a node's start and end pfns, it may not
325# reside on that node. See memmap_init_zone()
326# for details.
327config NODES_SPAN_OTHER_NODES
328 def_bool y
329 depends on NEED_MULTIPLE_NODES
330
26b4c912
SR
331config ARCH_SELECT_MEMORY_MODEL
332 def_bool y if SPARC64
333
334config ARCH_SPARSEMEM_ENABLE
335 def_bool y if SPARC64
336 select SPARSEMEM_VMEMMAP_ENABLE
337
338config ARCH_SPARSEMEM_DEFAULT
339 def_bool y if SPARC64
340
341source "mm/Kconfig"
342
343config SCHED_SMT
344 bool "SMT (Hyperthreading) scheduler support"
345 depends on SPARC64 && SMP
346 default y
347 help
348 SMT scheduler support improves the CPU scheduler's decision making
349 when dealing with SPARC cpus at a cost of slightly increased overhead
350 in some places. If unsure say N here.
351
352config SCHED_MC
353 bool "Multi-core scheduler support"
354 depends on SPARC64 && SMP
355 default y
356 help
357 Multi-core scheduler support improves the CPU scheduler's decision
358 making when dealing with multi-core CPU chips at a cost of slightly
359 increased overhead in some places. If unsure say N here.
360
26b4c912 361source "kernel/Kconfig.preempt"
26b4c912
SR
362
363config CMDLINE_BOOL
364 bool "Default bootloader kernel arguments"
365 depends on SPARC64
366
367config CMDLINE
368 string "Initial kernel command string"
369 depends on CMDLINE_BOOL
370 default "console=ttyS0,9600 root=/dev/sda1"
371 help
372 Say Y here if you want to be able to pass default arguments to
373 the kernel. This will be overridden by the bootloader, if you
374 use one (such as SILO). This is most useful if you want to boot
375 a kernel from TFTP, and want default options to be available
376 with having them passed on the command line.
377
378 NOTE: This option WILL override the PROM bootargs setting!
379
380config SUN_PM
381 bool
382 default y if SPARC32
1da177e4
LT
383 help
384 Enable power management and CPU standby features on supported
385 SPARC platforms.
386
4b27e0e1
SR
387config SPARC_LED
388 tristate "Sun4m LED driver"
26b4c912 389 depends on SPARC32
4b27e0e1
SR
390 help
391 This driver toggles the front-panel LED on sun4m systems
392 in a user-specifiable manner. Its state can be probed
393 by reading /proc/led and its blinking mode can be changed
394 via writes to /proc/led
395
26b4c912
SR
396config SERIAL_CONSOLE
397 bool
398 depends on SPARC32
399 default y
400 ---help---
401 If you say Y here, it will be possible to use a serial port as the
402 system console (the system console is the device which receives all
403 kernel messages and warnings and which allows logins in single user
404 mode). This could be useful if some terminal or printer is connected
405 to that serial port.
406
407 Even if you say Y here, the currently visible virtual console
408 (/dev/tty0) will still be used as the system console by default, but
409 you can alter that using a kernel command line option such as
410 "console=ttyS1". (Try "man bootparam" or see the documentation of
411 your boot loader (silo) about how to pass options to the kernel at
412 boot time.)
413
414 If you don't have a graphics card installed and you say Y here, the
415 kernel will automatically use the first serial line, /dev/ttyS0, as
416 system console.
417
418 If unsure, say N.
4b27e0e1 419
5213a780
KE
420config SPARC_LEON
421 bool "Sparc Leon processor family"
422 depends on SPARC32
423 ---help---
424 If you say Y here if you are running on a SPARC-LEON processor.
425 The LEON processor is a synthesizable VHDL model of the
426 SPARC-v8 standard. LEON is part of the GRLIB collection of
427 IP cores that are distributed under GPL. GRLIB can be downloaded
428 from www.gaisler.com. You can download a sparc-linux cross-compilation
429 toolchain at www.gaisler.com.
430
684151a7
DH
431if SPARC_LEON
432menu "U-Boot options"
433
434config UBOOT_LOAD_ADDR
435 hex "uImage Load Address"
436 default 0x40004000
437 ---help---
438 U-Boot kernel load address, the address in physical address space
439 where u-boot will place the Linux kernel before booting it.
440 This address is normally the base address of main memory + 0x4000.
441
442config UBOOT_FLASH_ADDR
443 hex "uImage.o Load Address"
444 default 0x00080000
445 ---help---
446 Optional setting only affecting the uImage.o ELF-image used to
447 download the uImage file to the target using a ELF-loader other than
448 U-Boot. It may for example be used to download an uImage to FLASH with
449 the GRMON utility before even starting u-boot.
450
451config UBOOT_ENTRY_ADDR
452 hex "uImage Entry Address"
453 default 0xf0004000
454 ---help---
455 Do not change this unless you know what you're doing. This is
456 hardcoded by the SPARC32 and LEON port.
457
458 This is the virtual address u-boot jumps to when booting the Linux
459 Kernel.
460
461endmenu
462endif
463
4b27e0e1
SR
464endmenu
465
466menu "Bus options (PCI etc.)"
4b27e0e1
SR
467config SBUS
468 bool
469 default y
470
471config SBUSCHAR
472 bool
473 default y
474
26b4c912
SR
475config SUN_LDOMS
476 bool "Sun Logical Domains support"
477 depends on SPARC64
478 help
479 Say Y here is you want to support virtual devices via
480 Logical Domains.
481
1da177e4
LT
482config PCI
483 bool "Support for PCI and PS/2 keyboard/mouse"
484 help
26b4c912
SR
485 Find out whether your system includes a PCI bus. PCI is the name of
486 a bus system, i.e. the way the CPU talks to the other stuff inside
487 your box. If you say Y here, the kernel will include drivers and
488 infrastructure code to support PCI bus devices.
489
1da177e4
LT
490 CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
491 CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
492 All of these platforms are extremely obscure, so say N if unsure.
493
26b4c912
SR
494config PCI_DOMAINS
495 def_bool PCI if SPARC64
496
36e23590
MW
497config PCI_SYSCALL
498 def_bool PCI
499
cfe3af5d
DH
500config PCIC_PCI
501 bool
8c47f8d0 502 depends on PCI && SPARC32 && !SPARC_LEON
cfe3af5d
DH
503 default y
504
26893c13
DH
505config LEON_PCI
506 bool
507 depends on PCI && SPARC_LEON
508 default y
509
5d07b786
DH
510config GRPCI2
511 bool "GRPCI2 Host Bridge Support"
512 depends on LEON_PCI
513 default y
514 help
515 Say Y here to include the GRPCI2 Host Bridge Driver.
516
1da177e4
LT
517source "drivers/pci/Kconfig"
518
c6afec5e
DM
519source "drivers/pcmcia/Kconfig"
520
1da177e4
LT
521config SUN_OPENPROMFS
522 tristate "Openprom tree appears in /proc/openprom"
523 help
524 If you say Y, the OpenPROM device tree will be available as a
525 virtual file system, which you can mount to /proc/openprom by "mount
526 -t openpromfs none /proc/openprom".
527
528 To compile the /proc/openprom support as a module, choose M here: the
529 module will be called openpromfs.
530
531 Only choose N if you know in advance that you will not need to modify
532 OpenPROM settings on the running system.
533
1cb85e80 534# Makefile helper
d670bd4f
SR
535config SPARC64_PCI
536 bool
537 default y
538 depends on SPARC64 && PCI
30aaa808
WLII
539
540endmenu
541
12e271a8
SR
542menu "Executable file formats"
543
544source "fs/Kconfig.binfmt"
545
26b4c912
SR
546config COMPAT
547 bool
548 depends on SPARC64
549 default y
550 select COMPAT_BINFMT_ELF
af1839eb 551 select HAVE_UID16
48b25c43 552 select ARCH_WANT_OLD_COMPAT_IPC
a274bd49 553 select COMPAT_OLD_SIGACTION
26b4c912
SR
554
555config SYSVIPC_COMPAT
556 bool
557 depends on COMPAT && SYSVIPC
558 default y
559
45de6767
DH
560config KEYS_COMPAT
561 def_bool y if COMPAT && KEYS
562
12e271a8
SR
563endmenu
564
d5950b43
SR
565source "net/Kconfig"
566
30aaa808 567source "drivers/Kconfig"
1da177e4 568
1da177e4 569source "drivers/sbus/char/Kconfig"
1da177e4 570
1da177e4
LT
571source "fs/Kconfig"
572
1da177e4
LT
573source "arch/sparc/Kconfig.debug"
574
575source "security/Kconfig"
576
577source "crypto/Kconfig"
578
579source "lib/Kconfig"
This page took 0.625668 seconds and 5 git commands to generate.