2 bool "64-bit kernel" if ARCH = "sparc"
3 default ARCH = "sparc64"
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.
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
19 select HAVE_ARCH_KGDB if !SMP || SPARC64
20 select HAVE_ARCH_TRACEHOOK
21 select SYSCTL_EXCEPTION_TRACE
22 select ARCH_WANT_OPTIONAL_GPIOLIB
23 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
27 select HAVE_DMA_API_DEBUG
28 select HAVE_ARCH_JUMP_LABEL
29 select HAVE_GENERIC_HARDIRQS
30 select GENERIC_IRQ_SHOW
31 select ARCH_WANT_IPC_PARSE_VERSION
32 select USE_GENERIC_SMP_HELPERS if SMP
33 select GENERIC_PCI_IOMAP
34 select HAVE_NMI_WATCHDOG if SPARC64
36 select HAVE_DEBUG_BUGVERBOSE
37 select GENERIC_SMP_IDLE_THREAD
38 select GENERIC_CMOS_UPDATE
39 select GENERIC_CLOCKEVENTS
40 select GENERIC_STRNCPY_FROM_USER
41 select GENERIC_STRNLEN_USER
42 select MODULES_USE_ELF_RELA
43 select ODD_RT_SIGACTION
48 select GENERIC_ATOMIC64
55 select ARCH_SUPPORTS_MSI
56 select HAVE_FUNCTION_TRACER
57 select HAVE_FUNCTION_GRAPH_TRACER
58 select HAVE_FUNCTION_GRAPH_FP_TEST
59 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
60 select HAVE_KRETPROBES
62 select HAVE_RCU_TABLE_FREE if SMP
64 select HAVE_MEMBLOCK_NODE_MAP
65 select HAVE_SYSCALL_WRAPPERS
66 select HAVE_ARCH_TRANSPARENT_HUGEPAGE
67 select HAVE_DYNAMIC_FTRACE
68 select HAVE_FTRACE_MCOUNT_RECORD
69 select HAVE_SYSCALL_TRACEPOINTS
70 select HAVE_DEBUG_KMEMLEAK
74 select RTC_DRV_STARFIRE
75 select HAVE_PERF_EVENTS
76 select PERF_USE_VMALLOC
77 select IRQ_PREFLOW_FASTEOI
78 select ARCH_HAVE_NMI_SAFE_CMPXCHG
79 select HAVE_C_RECORDMCOUNT
84 default "arch/sparc/configs/sparc32_defconfig" if SPARC32
85 default "arch/sparc/configs/sparc64_defconfig" if SPARC64
87 # CONFIG_BITS can be used at source level to get 32/64 bits
97 config STACKTRACE_SUPPORT
101 config LOCKDEP_SUPPORT
105 config HAVE_LATENCYTOP_SUPPORT
113 config HAVE_SETUP_PER_CPU_AREA
114 def_bool y if SPARC64
116 config NEED_PER_CPU_EMBED_FIRST_CHUNK
117 def_bool y if SPARC64
119 config NEED_PER_CPU_PAGE_FIRST_CHUNK
120 def_bool y if SPARC64
134 config NEED_DMA_MAP_STATE
137 config NEED_SG_DMA_LENGTH
140 config GENERIC_ISA_DMA
147 Generic GPIO API support
149 config ARCH_NO_VIRT_TO_BUS
152 config ARCH_SUPPORTS_DEBUG_PAGEALLOC
153 def_bool y if SPARC64
155 source "init/Kconfig"
157 source "kernel/Kconfig.freezer"
159 menu "Processor type and features"
162 bool "Symmetric multi-processing support"
164 This enables support for systems with more than one CPU. If you have
165 a system with only one CPU, say N. If you have a system with more
168 If you say N here, the kernel will run on single and multiprocessor
169 machines, but will use only one CPU of a multiprocessor machine. If
170 you say Y here, the kernel will run on many, but not all,
171 singleprocessor machines. On a singleprocessor machine, the kernel
172 will run faster if you say N here.
174 People using multiprocessor machines who say Y here should also say
175 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
176 Management" code will be disabled if you say Y here.
178 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
179 available at <http://www.tldp.org/docs.html#howto>.
181 If you don't know what to do here, say N.
184 int "Maximum number of CPUs"
186 range 2 32 if SPARC32
187 range 2 1024 if SPARC64
188 default 32 if SPARC32
189 default 64 if SPARC64
191 source kernel/Kconfig.hz
193 config RWSEM_GENERIC_SPINLOCK
197 config RWSEM_XCHGADD_ALGORITHM
201 config GENERIC_HWEIGHT
203 default y if !ULTRA_HAS_POPULATION_COUNT
205 config GENERIC_CALIBRATE_DELAY
209 config ARCH_MAY_HAVE_PC_FDC
213 config EMULATED_CMPXCHG
217 Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
218 is emulated, and therefore it is not completely atomic.
224 depends on SPARC32 && SMP
229 depends on SPARC64 && SMP
232 bool "Support for early boot text console"
236 Say Y here to enable a faster early framebuffer boot console.
239 bool "Enable seccomp to safely compute untrusted bytecode"
240 depends on SPARC64 && PROC_FS
243 This kernel feature is useful for number crunching applications
244 that may need to compute untrusted bytecode during their
245 execution. By using pipes or other transports made available to
246 the process as file descriptors supporting the read/write
247 syscalls, it's possible to isolate those applications in
248 their own address space using seccomp. Once seccomp is
249 enabled via /proc/<pid>/seccomp, it cannot be disabled
250 and the task is only allowed to execute a few safe syscalls
251 defined by each seccomp mode.
253 If unsure, say Y. Only embedded should say N here.
256 bool "Support for hot-pluggable CPUs"
257 depends on SPARC64 && SMP
260 Say Y here to experiment with turning CPUs off and on. CPUs
261 can be controlled through /sys/devices/system/cpu/cpu#.
262 Say N if you want to disable CPU hotplug.
265 source "drivers/cpufreq/Kconfig"
268 tristate "UltraSPARC-III CPU Frequency driver"
270 select CPU_FREQ_TABLE
272 This adds the CPUFreq driver for UltraSPARC-III processors.
274 For details, take a look at <file:Documentation/cpu-freq>.
279 tristate "UltraSPARC-IIe CPU Frequency driver"
281 select CPU_FREQ_TABLE
283 This adds the CPUFreq driver for UltraSPARC-IIe processors.
285 For details, take a look at <file:Documentation/cpu-freq>.
292 tristate "UltraSPARC-III Memory Controller driver"
296 This adds a driver for the UltraSPARC-III memory controller.
297 Loading this driver allows exact mnemonic strings to be
298 printed in the event of a memory error, so that the faulty DIMM
299 on the motherboard can be matched to the error.
301 If in doubt, say Y, as this information can be very useful.
303 # Global things across all Sun machines.
304 config GENERIC_LOCKBREAK
307 depends on SPARC64 && SMP && PREEMPT
311 depends on SPARC64 && SMP
316 depends on NEED_MULTIPLE_NODES
318 # Some NUMA nodes have memory ranges that span
319 # other nodes. Even though a pfn is valid and
320 # between a node's start and end pfns, it may not
321 # reside on that node. See memmap_init_zone()
323 config NODES_SPAN_OTHER_NODES
325 depends on NEED_MULTIPLE_NODES
327 config ARCH_SELECT_MEMORY_MODEL
328 def_bool y if SPARC64
330 config ARCH_SPARSEMEM_ENABLE
331 def_bool y if SPARC64
332 select SPARSEMEM_VMEMMAP_ENABLE
334 config ARCH_SPARSEMEM_DEFAULT
335 def_bool y if SPARC64
340 bool "SMT (Hyperthreading) scheduler support"
341 depends on SPARC64 && SMP
344 SMT scheduler support improves the CPU scheduler's decision making
345 when dealing with SPARC cpus at a cost of slightly increased overhead
346 in some places. If unsure say N here.
349 bool "Multi-core scheduler support"
350 depends on SPARC64 && SMP
353 Multi-core scheduler support improves the CPU scheduler's decision
354 making when dealing with multi-core CPU chips at a cost of slightly
355 increased overhead in some places. If unsure say N here.
357 source "kernel/Kconfig.preempt"
360 bool "Default bootloader kernel arguments"
364 string "Initial kernel command string"
365 depends on CMDLINE_BOOL
366 default "console=ttyS0,9600 root=/dev/sda1"
368 Say Y here if you want to be able to pass default arguments to
369 the kernel. This will be overridden by the bootloader, if you
370 use one (such as SILO). This is most useful if you want to boot
371 a kernel from TFTP, and want default options to be available
372 with having them passed on the command line.
374 NOTE: This option WILL override the PROM bootargs setting!
380 Enable power management and CPU standby features on supported
384 tristate "Sun4m LED driver"
387 This driver toggles the front-panel LED on sun4m systems
388 in a user-specifiable manner. Its state can be probed
389 by reading /proc/led and its blinking mode can be changed
390 via writes to /proc/led
392 config SERIAL_CONSOLE
397 If you say Y here, it will be possible to use a serial port as the
398 system console (the system console is the device which receives all
399 kernel messages and warnings and which allows logins in single user
400 mode). This could be useful if some terminal or printer is connected
403 Even if you say Y here, the currently visible virtual console
404 (/dev/tty0) will still be used as the system console by default, but
405 you can alter that using a kernel command line option such as
406 "console=ttyS1". (Try "man bootparam" or see the documentation of
407 your boot loader (silo) about how to pass options to the kernel at
410 If you don't have a graphics card installed and you say Y here, the
411 kernel will automatically use the first serial line, /dev/ttyS0, as
417 bool "Sparc Leon processor family"
420 If you say Y here if you are running on a SPARC-LEON processor.
421 The LEON processor is a synthesizable VHDL model of the
422 SPARC-v8 standard. LEON is part of the GRLIB collection of
423 IP cores that are distributed under GPL. GRLIB can be downloaded
424 from www.gaisler.com. You can download a sparc-linux cross-compilation
425 toolchain at www.gaisler.com.
428 menu "U-Boot options"
430 config UBOOT_LOAD_ADDR
431 hex "uImage Load Address"
434 U-Boot kernel load address, the address in physical address space
435 where u-boot will place the Linux kernel before booting it.
436 This address is normally the base address of main memory + 0x4000.
438 config UBOOT_FLASH_ADDR
439 hex "uImage.o Load Address"
442 Optional setting only affecting the uImage.o ELF-image used to
443 download the uImage file to the target using a ELF-loader other than
444 U-Boot. It may for example be used to download an uImage to FLASH with
445 the GRMON utility before even starting u-boot.
447 config UBOOT_ENTRY_ADDR
448 hex "uImage Entry Address"
451 Do not change this unless you know what you're doing. This is
452 hardcoded by the SPARC32 and LEON port.
454 This is the virtual address u-boot jumps to when booting the Linux
462 menu "Bus options (PCI etc.)"
472 bool "Sun Logical Domains support"
475 Say Y here is you want to support virtual devices via
479 bool "Support for PCI and PS/2 keyboard/mouse"
481 Find out whether your system includes a PCI bus. PCI is the name of
482 a bus system, i.e. the way the CPU talks to the other stuff inside
483 your box. If you say Y here, the kernel will include drivers and
484 infrastructure code to support PCI bus devices.
486 CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
487 CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
488 All of these platforms are extremely obscure, so say N if unsure.
491 def_bool PCI if SPARC64
498 depends on PCI && SPARC32 && !SPARC_LEON
503 depends on PCI && SPARC_LEON
507 bool "GRPCI2 Host Bridge Support"
511 Say Y here to include the GRPCI2 Host Bridge Driver.
513 source "drivers/pci/Kconfig"
515 source "drivers/pcmcia/Kconfig"
517 config SUN_OPENPROMFS
518 tristate "Openprom tree appears in /proc/openprom"
520 If you say Y, the OpenPROM device tree will be available as a
521 virtual file system, which you can mount to /proc/openprom by "mount
522 -t openpromfs none /proc/openprom".
524 To compile the /proc/openprom support as a module, choose M here: the
525 module will be called openpromfs.
527 Only choose N if you know in advance that you will not need to modify
528 OpenPROM settings on the running system.
534 depends on SPARC64 && PCI
538 menu "Executable file formats"
540 source "fs/Kconfig.binfmt"
546 select COMPAT_BINFMT_ELF
548 select ARCH_WANT_OLD_COMPAT_IPC
549 select COMPAT_OLD_SIGACTION
551 config SYSVIPC_COMPAT
553 depends on COMPAT && SYSVIPC
557 def_bool y if COMPAT && KEYS
563 source "drivers/Kconfig"
565 source "drivers/sbus/char/Kconfig"
569 source "arch/sparc/Kconfig.debug"
571 source "security/Kconfig"
573 source "crypto/Kconfig"