Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus
[deliverable/linux.git] / arch / sparc / Kconfig
1 config 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
12 config SPARC
13 bool
14 default y
15 select OF
16 select OF_PROMTREE
17 select HAVE_IDE
18 select HAVE_OPROFILE
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
24 select RTC_CLASS
25 select RTC_DRV_M48T59
26 select HAVE_IRQ_WORK
27 select HAVE_DMA_ATTRS
28 select HAVE_DMA_API_DEBUG
29 select HAVE_ARCH_JUMP_LABEL
30 select HAVE_GENERIC_HARDIRQS
31 select GENERIC_IRQ_SHOW
32 select ARCH_WANT_IPC_PARSE_VERSION
33 select USE_GENERIC_SMP_HELPERS if SMP
34 select GENERIC_PCI_IOMAP
35 select HAVE_NMI_WATCHDOG if SPARC64
36 select HAVE_BPF_JIT
37 select HAVE_DEBUG_BUGVERBOSE
38 select GENERIC_SMP_IDLE_THREAD
39 select GENERIC_CMOS_UPDATE
40 select GENERIC_CLOCKEVENTS
41 select GENERIC_STRNCPY_FROM_USER
42 select GENERIC_STRNLEN_USER
43 select MODULES_USE_ELF_RELA
44 select GENERIC_KERNEL_THREAD
45 select GENERIC_KERNEL_EXECVE
46
47 config SPARC32
48 def_bool !64BIT
49 select GENERIC_ATOMIC64
50 select CLZ_TAB
51 select HAVE_UID16
52
53 config SPARC64
54 def_bool 64BIT
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
61 select HAVE_KPROBES
62 select HAVE_RCU_TABLE_FREE if SMP
63 select HAVE_MEMBLOCK
64 select HAVE_MEMBLOCK_NODE_MAP
65 select HAVE_SYSCALL_WRAPPERS
66 select HAVE_DYNAMIC_FTRACE
67 select HAVE_FTRACE_MCOUNT_RECORD
68 select HAVE_SYSCALL_TRACEPOINTS
69 select HAVE_DEBUG_KMEMLEAK
70 select RTC_DRV_CMOS
71 select RTC_DRV_BQ4802
72 select RTC_DRV_SUN4V
73 select RTC_DRV_STARFIRE
74 select HAVE_PERF_EVENTS
75 select PERF_USE_VMALLOC
76 select IRQ_PREFLOW_FASTEOI
77 select ARCH_HAVE_NMI_SAFE_CMPXCHG
78 select HAVE_C_RECORDMCOUNT
79 select NO_BOOTMEM
80
81 config ARCH_DEFCONFIG
82 string
83 default "arch/sparc/configs/sparc32_defconfig" if SPARC32
84 default "arch/sparc/configs/sparc64_defconfig" if SPARC64
85
86 # CONFIG_BITS can be used at source level to get 32/64 bits
87 config BITS
88 int
89 default 32 if SPARC32
90 default 64 if SPARC64
91
92 config IOMMU_HELPER
93 bool
94 default y if SPARC64
95
96 config STACKTRACE_SUPPORT
97 bool
98 default y if SPARC64
99
100 config LOCKDEP_SUPPORT
101 bool
102 default y if SPARC64
103
104 config HAVE_LATENCYTOP_SUPPORT
105 bool
106 default y if SPARC64
107
108 config AUDIT_ARCH
109 bool
110 default y
111
112 config HAVE_SETUP_PER_CPU_AREA
113 def_bool y if SPARC64
114
115 config NEED_PER_CPU_EMBED_FIRST_CHUNK
116 def_bool y if SPARC64
117
118 config NEED_PER_CPU_PAGE_FIRST_CHUNK
119 def_bool y if SPARC64
120
121 config MMU
122 bool
123 default y
124
125 config HIGHMEM
126 bool
127 default y if SPARC32
128
129 config ZONE_DMA
130 bool
131 default y if SPARC32
132
133 config NEED_DMA_MAP_STATE
134 def_bool y
135
136 config NEED_SG_DMA_LENGTH
137 def_bool y
138
139 config GENERIC_ISA_DMA
140 bool
141 default y if SPARC32
142
143 config GENERIC_GPIO
144 bool
145 help
146 Generic GPIO API support
147
148 config ARCH_NO_VIRT_TO_BUS
149 def_bool y
150
151 config ARCH_SUPPORTS_DEBUG_PAGEALLOC
152 def_bool y if SPARC64
153
154 source "init/Kconfig"
155
156 source "kernel/Kconfig.freezer"
157
158 menu "Processor type and features"
159
160 config SMP
161 bool "Symmetric multi-processing support"
162 ---help---
163 This enables support for systems with more than one CPU. If you have
164 a system with only one CPU, say N. If you have a system with more
165 than one CPU, say Y.
166
167 If you say N here, the kernel will run on single and multiprocessor
168 machines, but will use only one CPU of a multiprocessor machine. If
169 you say Y here, the kernel will run on many, but not all,
170 singleprocessor machines. On a singleprocessor machine, the kernel
171 will run faster if you say N here.
172
173 People using multiprocessor machines who say Y here should also say
174 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
175 Management" code will be disabled if you say Y here.
176
177 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
178 available at <http://www.tldp.org/docs.html#howto>.
179
180 If you don't know what to do here, say N.
181
182 config NR_CPUS
183 int "Maximum number of CPUs"
184 depends on SMP
185 range 2 32 if SPARC32
186 range 2 1024 if SPARC64
187 default 32 if SPARC32
188 default 64 if SPARC64
189
190 source kernel/Kconfig.hz
191
192 config RWSEM_GENERIC_SPINLOCK
193 bool
194 default y if SPARC32
195
196 config RWSEM_XCHGADD_ALGORITHM
197 bool
198 default y if SPARC64
199
200 config GENERIC_HWEIGHT
201 bool
202 default y if !ULTRA_HAS_POPULATION_COUNT
203
204 config GENERIC_CALIBRATE_DELAY
205 bool
206 default y
207
208 config ARCH_MAY_HAVE_PC_FDC
209 bool
210 default y
211
212 config EMULATED_CMPXCHG
213 bool
214 default y if SPARC32
215 help
216 Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
217 is emulated, and therefore it is not completely atomic.
218
219 # Makefile helpers
220 config SPARC32_SMP
221 bool
222 default y
223 depends on SPARC32 && SMP
224
225 config SPARC64_SMP
226 bool
227 default y
228 depends on SPARC64 && SMP
229
230 config EARLYFB
231 bool "Support for early boot text console"
232 default y
233 depends on SPARC64
234 help
235 Say Y here to enable a faster early framebuffer boot console.
236
237 config SECCOMP
238 bool "Enable seccomp to safely compute untrusted bytecode"
239 depends on SPARC64 && PROC_FS
240 default y
241 help
242 This kernel feature is useful for number crunching applications
243 that may need to compute untrusted bytecode during their
244 execution. By using pipes or other transports made available to
245 the process as file descriptors supporting the read/write
246 syscalls, it's possible to isolate those applications in
247 their own address space using seccomp. Once seccomp is
248 enabled via /proc/<pid>/seccomp, it cannot be disabled
249 and the task is only allowed to execute a few safe syscalls
250 defined by each seccomp mode.
251
252 If unsure, say Y. Only embedded should say N here.
253
254 config HOTPLUG_CPU
255 bool "Support for hot-pluggable CPUs"
256 depends on SPARC64 && SMP
257 select HOTPLUG
258 help
259 Say Y here to experiment with turning CPUs off and on. CPUs
260 can be controlled through /sys/devices/system/cpu/cpu#.
261 Say N if you want to disable CPU hotplug.
262
263 if SPARC64
264 source "drivers/cpufreq/Kconfig"
265
266 config US3_FREQ
267 tristate "UltraSPARC-III CPU Frequency driver"
268 depends on CPU_FREQ
269 select CPU_FREQ_TABLE
270 help
271 This adds the CPUFreq driver for UltraSPARC-III processors.
272
273 For details, take a look at <file:Documentation/cpu-freq>.
274
275 If in doubt, say N.
276
277 config US2E_FREQ
278 tristate "UltraSPARC-IIe CPU Frequency driver"
279 depends on CPU_FREQ
280 select CPU_FREQ_TABLE
281 help
282 This adds the CPUFreq driver for UltraSPARC-IIe processors.
283
284 For details, take a look at <file:Documentation/cpu-freq>.
285
286 If in doubt, say N.
287
288 endif
289
290 config US3_MC
291 tristate "UltraSPARC-III Memory Controller driver"
292 depends on SPARC64
293 default y
294 help
295 This adds a driver for the UltraSPARC-III memory controller.
296 Loading this driver allows exact mnemonic strings to be
297 printed in the event of a memory error, so that the faulty DIMM
298 on the motherboard can be matched to the error.
299
300 If in doubt, say Y, as this information can be very useful.
301
302 # Global things across all Sun machines.
303 config GENERIC_LOCKBREAK
304 bool
305 default y
306 depends on SPARC64 && SMP && PREEMPT
307
308 config NUMA
309 bool "NUMA support"
310 depends on SPARC64 && SMP
311
312 config NODES_SHIFT
313 int
314 default "4"
315 depends on NEED_MULTIPLE_NODES
316
317 # Some NUMA nodes have memory ranges that span
318 # other nodes. Even though a pfn is valid and
319 # between a node's start and end pfns, it may not
320 # reside on that node. See memmap_init_zone()
321 # for details.
322 config NODES_SPAN_OTHER_NODES
323 def_bool y
324 depends on NEED_MULTIPLE_NODES
325
326 config ARCH_SELECT_MEMORY_MODEL
327 def_bool y if SPARC64
328
329 config ARCH_SPARSEMEM_ENABLE
330 def_bool y if SPARC64
331 select SPARSEMEM_VMEMMAP_ENABLE
332
333 config ARCH_SPARSEMEM_DEFAULT
334 def_bool y if SPARC64
335
336 source "mm/Kconfig"
337
338 config SCHED_SMT
339 bool "SMT (Hyperthreading) scheduler support"
340 depends on SPARC64 && SMP
341 default y
342 help
343 SMT scheduler support improves the CPU scheduler's decision making
344 when dealing with SPARC cpus at a cost of slightly increased overhead
345 in some places. If unsure say N here.
346
347 config SCHED_MC
348 bool "Multi-core scheduler support"
349 depends on SPARC64 && SMP
350 default y
351 help
352 Multi-core scheduler support improves the CPU scheduler's decision
353 making when dealing with multi-core CPU chips at a cost of slightly
354 increased overhead in some places. If unsure say N here.
355
356 source "kernel/Kconfig.preempt"
357
358 config CMDLINE_BOOL
359 bool "Default bootloader kernel arguments"
360 depends on SPARC64
361
362 config 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
375 config 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
382 config 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
391 config SERIAL_CONSOLE
392 bool
393 depends on SPARC32
394 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
415 config SPARC_LEON
416 bool "Sparc Leon processor family"
417 depends on SPARC32
418 ---help---
419 If you say Y here if you are running on a SPARC-LEON processor.
420 The LEON processor is a synthesizable VHDL model of the
421 SPARC-v8 standard. LEON is part of the GRLIB collection of
422 IP cores that are distributed under GPL. GRLIB can be downloaded
423 from www.gaisler.com. You can download a sparc-linux cross-compilation
424 toolchain at www.gaisler.com.
425
426 if SPARC_LEON
427 menu "U-Boot options"
428
429 config UBOOT_LOAD_ADDR
430 hex "uImage Load Address"
431 default 0x40004000
432 ---help---
433 U-Boot kernel load address, the address in physical address space
434 where u-boot will place the Linux kernel before booting it.
435 This address is normally the base address of main memory + 0x4000.
436
437 config UBOOT_FLASH_ADDR
438 hex "uImage.o Load Address"
439 default 0x00080000
440 ---help---
441 Optional setting only affecting the uImage.o ELF-image used to
442 download the uImage file to the target using a ELF-loader other than
443 U-Boot. It may for example be used to download an uImage to FLASH with
444 the GRMON utility before even starting u-boot.
445
446 config UBOOT_ENTRY_ADDR
447 hex "uImage Entry Address"
448 default 0xf0004000
449 ---help---
450 Do not change this unless you know what you're doing. This is
451 hardcoded by the SPARC32 and LEON port.
452
453 This is the virtual address u-boot jumps to when booting the Linux
454 Kernel.
455
456 endmenu
457 endif
458
459 endmenu
460
461 menu "Bus options (PCI etc.)"
462 config SBUS
463 bool
464 default y
465
466 config SBUSCHAR
467 bool
468 default y
469
470 config SUN_LDOMS
471 bool "Sun Logical Domains support"
472 depends on SPARC64
473 help
474 Say Y here is you want to support virtual devices via
475 Logical Domains.
476
477 config PCI
478 bool "Support for PCI and PS/2 keyboard/mouse"
479 help
480 Find out whether your system includes a PCI bus. PCI is the name of
481 a bus system, i.e. the way the CPU talks to the other stuff inside
482 your box. If you say Y here, the kernel will include drivers and
483 infrastructure code to support PCI bus devices.
484
485 CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
486 CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
487 All of these platforms are extremely obscure, so say N if unsure.
488
489 config PCI_DOMAINS
490 def_bool PCI if SPARC64
491
492 config PCI_SYSCALL
493 def_bool PCI
494
495 config PCIC_PCI
496 bool
497 depends on PCI && SPARC32 && !SPARC_LEON
498 default y
499
500 config LEON_PCI
501 bool
502 depends on PCI && SPARC_LEON
503 default y
504
505 config GRPCI2
506 bool "GRPCI2 Host Bridge Support"
507 depends on LEON_PCI
508 default y
509 help
510 Say Y here to include the GRPCI2 Host Bridge Driver.
511
512 source "drivers/pci/Kconfig"
513
514 source "drivers/pcmcia/Kconfig"
515
516 config SUN_OPENPROMFS
517 tristate "Openprom tree appears in /proc/openprom"
518 help
519 If you say Y, the OpenPROM device tree will be available as a
520 virtual file system, which you can mount to /proc/openprom by "mount
521 -t openpromfs none /proc/openprom".
522
523 To compile the /proc/openprom support as a module, choose M here: the
524 module will be called openpromfs.
525
526 Only choose N if you know in advance that you will not need to modify
527 OpenPROM settings on the running system.
528
529 # Makefile helper
530 config SPARC64_PCI
531 bool
532 default y
533 depends on SPARC64 && PCI
534
535 endmenu
536
537 menu "Executable file formats"
538
539 source "fs/Kconfig.binfmt"
540
541 config COMPAT
542 bool
543 depends on SPARC64
544 default y
545 select COMPAT_BINFMT_ELF
546 select HAVE_UID16
547 select ARCH_WANT_OLD_COMPAT_IPC
548
549 config SYSVIPC_COMPAT
550 bool
551 depends on COMPAT && SYSVIPC
552 default y
553
554 config KEYS_COMPAT
555 def_bool y if COMPAT && KEYS
556
557 endmenu
558
559 source "net/Kconfig"
560
561 source "drivers/Kconfig"
562
563 source "drivers/sbus/char/Kconfig"
564
565 source "fs/Kconfig"
566
567 source "arch/sparc/Kconfig.debug"
568
569 source "security/Kconfig"
570
571 source "crypto/Kconfig"
572
573 source "lib/Kconfig"
This page took 0.041517 seconds and 6 git commands to generate.