Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[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
c78e0643 44 select GENERIC_KERNEL_THREAD
ab348681 45 select GENERIC_KERNEL_EXECVE
35da3e39 46
35da3e39 47config SPARC32
761b6026 48 def_bool !64BIT
aea1181b 49 select GENERIC_ATOMIC64
c6df4b17 50 select CLZ_TAB
af1839eb 51 select HAVE_UID16
35da3e39 52
26b4c912 53config SPARC64
761b6026 54 def_bool 64BIT
5bc05308 55 select ARCH_SUPPORTS_MSI
26b4c912 56 select HAVE_FUNCTION_TRACER
9960e9e8
DM
57 select HAVE_FUNCTION_GRAPH_TRACER
58 select HAVE_FUNCTION_GRAPH_FP_TEST
63b75495 59 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
26b4c912
SR
60 select HAVE_KRETPROBES
61 select HAVE_KPROBES
4a0100f7 62 select HAVE_RCU_TABLE_FREE if SMP
95f72d1e 63 select HAVE_MEMBLOCK
2a4814df 64 select HAVE_MEMBLOCK_NODE_MAP
67605d68 65 select HAVE_SYSCALL_WRAPPERS
9be12f9b
DM
66 select HAVE_DYNAMIC_FTRACE
67 select HAVE_FTRACE_MCOUNT_RECORD
c658ad1b 68 select HAVE_SYSCALL_TRACEPOINTS
b69ec42b 69 select HAVE_DEBUG_KMEMLEAK
26b4c912
SR
70 select RTC_DRV_CMOS
71 select RTC_DRV_BQ4802
72 select RTC_DRV_SUN4V
73 select RTC_DRV_STARFIRE
cdd6c482 74 select HAVE_PERF_EVENTS
906010b2 75 select PERF_USE_VMALLOC
fcd8d4f4 76 select IRQ_PREFLOW_FASTEOI
df013ffb 77 select ARCH_HAVE_NMI_SAFE_CMPXCHG
178a2960 78 select HAVE_C_RECORDMCOUNT
625d693e 79 select NO_BOOTMEM
26b4c912 80
5e538790
SR
81config ARCH_DEFCONFIG
82 string
83 default "arch/sparc/configs/sparc32_defconfig" if SPARC32
84 default "arch/sparc/configs/sparc64_defconfig" if SPARC64
85
fe6875ec
SR
86# CONFIG_BITS can be used at source level to get 32/64 bits
87config BITS
88 int
89 default 32 if SPARC32
90 default 64 if SPARC64
5e538790 91
26b4c912
SR
92config IOMMU_HELPER
93 bool
94 default y if SPARC64
95
26b4c912
SR
96config STACKTRACE_SUPPORT
97 bool
98 default y if SPARC64
99
100config LOCKDEP_SUPPORT
101 bool
102 default y if SPARC64
103
6a5726dd
DM
104config HAVE_LATENCYTOP_SUPPORT
105 bool
106 default y if SPARC64
107
26b4c912
SR
108config AUDIT_ARCH
109 bool
7e7e93a2 110 default y
26b4c912
SR
111
112config HAVE_SETUP_PER_CPU_AREA
113 def_bool y if SPARC64
114
bcb2107f 115config NEED_PER_CPU_EMBED_FIRST_CHUNK
4fd78a5f
DM
116 def_bool y if SPARC64
117
a70c6913
TH
118config NEED_PER_CPU_PAGE_FIRST_CHUNK
119 def_bool y if SPARC64
120
1da177e4
LT
121config MMU
122 bool
123 default y
124
1da177e4
LT
125config HIGHMEM
126 bool
26b4c912 127 default y if SPARC32
1da177e4 128
5ac6da66
CL
129config ZONE_DMA
130 bool
26b4c912 131 default y if SPARC32
5ac6da66 132
d15b51be
FT
133config NEED_DMA_MAP_STATE
134 def_bool y
135
18e98307
FT
136config NEED_SG_DMA_LENGTH
137 def_bool y
138
1da177e4
LT
139config GENERIC_ISA_DMA
140 bool
26b4c912 141 default y if SPARC32
1da177e4 142
15df0f33
DM
143config GENERIC_GPIO
144 bool
145 help
146 Generic GPIO API support
147
0785b9dc
SR
148config ARCH_NO_VIRT_TO_BUS
149 def_bool y
150
6a11f75b
AM
151config ARCH_SUPPORTS_DEBUG_PAGEALLOC
152 def_bool y if SPARC64
153
1da177e4
LT
154source "init/Kconfig"
155
dc52ddc0
MH
156source "kernel/Kconfig.freezer"
157
26b4c912 158menu "Processor type and features"
1da177e4 159
1da177e4 160config SMP
6b7679dd 161 bool "Symmetric multi-processing support"
1da177e4
LT
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
03502faa
AB
177 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
178 available at <http://www.tldp.org/docs.html#howto>.
1da177e4
LT
179
180 If you don't know what to do here, say N.
181
182config NR_CPUS
26b4c912 183 int "Maximum number of CPUs"
1da177e4 184 depends on SMP
26b4c912
SR
185 range 2 32 if SPARC32
186 range 2 1024 if SPARC64
187 default 32 if SPARC32
188 default 64 if SPARC64
1da177e4 189
26b4c912 190source kernel/Kconfig.hz
1da177e4 191
1da177e4
LT
192config RWSEM_GENERIC_SPINLOCK
193 bool
26b4c912 194 default y if SPARC32
1da177e4
LT
195
196config RWSEM_XCHGADD_ALGORITHM
197 bool
26b4c912 198 default y if SPARC64
1da177e4 199
d59288b7
AM
200config GENERIC_HWEIGHT
201 bool
26b4c912 202 default y if !ULTRA_HAS_POPULATION_COUNT
d59288b7 203
1da177e4
LT
204config GENERIC_CALIBRATE_DELAY
205 bool
206 default y
207
a08b6b79
Z
208config ARCH_MAY_HAVE_PC_FDC
209 bool
210 default y
211
5f81941c
MH
212config EMULATED_CMPXCHG
213 bool
26b4c912 214 default y if SPARC32
5f81941c
MH
215 help
216 Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
217 is emulated, and therefore it is not completely atomic.
218
d670bd4f
SR
219# Makefile helpers
220config SPARC32_SMP
221 bool
222 default y
223 depends on SPARC32 && SMP
224
225config SPARC64_SMP
226 bool
227 default y
228 depends on SPARC64 && SMP
229
c57ec52f
DM
230config 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
26b4c912
SR
237config 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
254config 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
26b4c912
SR
263if SPARC64
264source "drivers/cpufreq/Kconfig"
265
266config 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
277config 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
288endif
289
290config 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.
303config GENERIC_LOCKBREAK
1da177e4
LT
304 bool
305 default y
26b4c912
SR
306 depends on SPARC64 && SMP && PREEMPT
307
26b4c912
SR
308config NUMA
309 bool "NUMA support"
310 depends on SPARC64 && SMP
311
312config 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.
322config NODES_SPAN_OTHER_NODES
323 def_bool y
324 depends on NEED_MULTIPLE_NODES
325
26b4c912
SR
326config ARCH_SELECT_MEMORY_MODEL
327 def_bool y if SPARC64
328
329config ARCH_SPARSEMEM_ENABLE
330 def_bool y if SPARC64
331 select SPARSEMEM_VMEMMAP_ENABLE
332
333config ARCH_SPARSEMEM_DEFAULT
334 def_bool y if SPARC64
335
336source "mm/Kconfig"
337
338config 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
347config 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
26b4c912 356source "kernel/Kconfig.preempt"
26b4c912
SR
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
1da177e4
LT
378 help
379 Enable power management and CPU standby features on supported
380 SPARC platforms.
381
4b27e0e1
SR
382config SPARC_LED
383 tristate "Sun4m LED driver"
26b4c912 384 depends on SPARC32
4b27e0e1
SR
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
26b4c912
SR
391config 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.
4b27e0e1 414
5213a780
KE
415config 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
684151a7
DH
426if SPARC_LEON
427menu "U-Boot options"
428
429config 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
437config 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
446config 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
456endmenu
457endif
458
4b27e0e1
SR
459endmenu
460
461menu "Bus options (PCI etc.)"
4b27e0e1
SR
462config SBUS
463 bool
464 default y
465
466config SBUSCHAR
467 bool
468 default y
469
26b4c912
SR
470config 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
1da177e4
LT
477config PCI
478 bool "Support for PCI and PS/2 keyboard/mouse"
479 help
26b4c912
SR
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
1da177e4
LT
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
26b4c912
SR
489config PCI_DOMAINS
490 def_bool PCI if SPARC64
491
36e23590
MW
492config PCI_SYSCALL
493 def_bool PCI
494
cfe3af5d
DH
495config PCIC_PCI
496 bool
8c47f8d0 497 depends on PCI && SPARC32 && !SPARC_LEON
cfe3af5d
DH
498 default y
499
26893c13
DH
500config LEON_PCI
501 bool
502 depends on PCI && SPARC_LEON
503 default y
504
5d07b786
DH
505config 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
1da177e4
LT
512source "drivers/pci/Kconfig"
513
c6afec5e
DM
514source "drivers/pcmcia/Kconfig"
515
1da177e4
LT
516config 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
1cb85e80 529# Makefile helper
d670bd4f
SR
530config SPARC64_PCI
531 bool
532 default y
533 depends on SPARC64 && PCI
30aaa808
WLII
534
535endmenu
536
12e271a8
SR
537menu "Executable file formats"
538
539source "fs/Kconfig.binfmt"
540
26b4c912
SR
541config COMPAT
542 bool
543 depends on SPARC64
544 default y
545 select COMPAT_BINFMT_ELF
af1839eb 546 select HAVE_UID16
48b25c43 547 select ARCH_WANT_OLD_COMPAT_IPC
26b4c912
SR
548
549config SYSVIPC_COMPAT
550 bool
551 depends on COMPAT && SYSVIPC
552 default y
553
45de6767
DH
554config KEYS_COMPAT
555 def_bool y if COMPAT && KEYS
556
12e271a8
SR
557endmenu
558
d5950b43
SR
559source "net/Kconfig"
560
30aaa808 561source "drivers/Kconfig"
1da177e4 562
1da177e4 563source "drivers/sbus/char/Kconfig"
1da177e4 564
1da177e4
LT
565source "fs/Kconfig"
566
1da177e4
LT
567source "arch/sparc/Kconfig.debug"
568
569source "security/Kconfig"
570
571source "crypto/Kconfig"
572
573source "lib/Kconfig"
This page took 0.581241 seconds and 5 git commands to generate.