added 2.6.29.6 aldebaran kernel
[nao-ulib.git] / kernel / 2.6.29.6-aldebaran-rt / arch / sparc / Kconfig
blobc3ea215334f60cd372b158efded8bb87502d1cfb
1 # For a description of the syntax of this configuration file,
2 # see Documentation/kbuild/kconfig-language.txt.
5 mainmenu "Linux/SPARC Kernel Configuration"
7 config 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.
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
18 config SPARC
19         bool
20         default y
21         select HAVE_IDE
22         select HAVE_OPROFILE
23         select HAVE_ARCH_KGDB if !SMP || SPARC64
24         select HAVE_ARCH_TRACEHOOK
25         select ARCH_WANT_OPTIONAL_GPIOLIB
26         select RTC_CLASS
27         select RTC_DRV_M48T59
29 config SPARC32
30         def_bool !64BIT
32 config SPARC64
33         def_bool 64BIT
34         select ARCH_SUPPORTS_MSI
35         select HAVE_FUNCTION_TRACER
36         select HAVE_KRETPROBES
37         select HAVE_KPROBES
38         select HAVE_LMB
39         select HAVE_SYSCALL_WRAPPERS
40         select USE_GENERIC_SMP_HELPERS if SMP
41         select RTC_DRV_CMOS
42         select RTC_DRV_BQ4802
43         select RTC_DRV_SUN4V
44         select RTC_DRV_STARFIRE
46 config ARCH_DEFCONFIG
47         string
48         default "arch/sparc/configs/sparc32_defconfig" if SPARC32
49         default "arch/sparc/configs/sparc64_defconfig" if SPARC64
51 # CONFIG_BITS can be used at source level to get 32/64 bits
52 config BITS
53         int
54         default 32 if SPARC32
55         default 64 if SPARC64
57 config GENERIC_TIME
58         bool
59         default y if SPARC64
61 config GENERIC_CMOS_UPDATE
62         bool
63         default y if SPARC64
65 config GENERIC_CLOCKEVENTS
66         bool
67         default y if SPARC64
69 config IOMMU_HELPER
70         bool
71         default y if SPARC64
73 config QUICKLIST
74         bool
75         default y if SPARC64
77 config STACKTRACE_SUPPORT
78         bool
79         default y if SPARC64
81 config LOCKDEP_SUPPORT
82         bool
83         default y if SPARC64
85 config HAVE_LATENCYTOP_SUPPORT
86         bool
87         default y if SPARC64
89 config AUDIT_ARCH
90         bool
91         default y
93 config HAVE_SETUP_PER_CPU_AREA
94         def_bool y if SPARC64
96 config GENERIC_HARDIRQS_NO__DO_IRQ
97         bool
98         def_bool y if SPARC64
100 config MMU
101         bool
102         default y
104 config HIGHMEM
105         bool
106         default y if SPARC32
108 config ZONE_DMA
109         bool
110         default y if SPARC32
112 config GENERIC_ISA_DMA
113         bool
114         default y if SPARC32
116 config GENERIC_GPIO
117         bool
118         help
119           Generic GPIO API support
121 config ARCH_NO_VIRT_TO_BUS
122         def_bool y
124 config OF
125         def_bool y
127 source "init/Kconfig"
129 source "kernel/Kconfig.freezer"
131 menu "Processor type and features"
133 config SMP
134         bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
135         ---help---
136           This enables support for systems with more than one CPU. If you have
137           a system with only one CPU, say N. If you have a system with more
138           than one CPU, say Y.
140           If you say N here, the kernel will run on single and multiprocessor
141           machines, but will use only one CPU of a multiprocessor machine. If
142           you say Y here, the kernel will run on many, but not all,
143           singleprocessor machines. On a singleprocessor machine, the kernel
144           will run faster if you say N here.
146           People using multiprocessor machines who say Y here should also say
147           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
148           Management" code will be disabled if you say Y here.
150           See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
151           available at <http://www.tldp.org/docs.html#howto>.
153           If you don't know what to do here, say N.
155 config NR_CPUS
156         int "Maximum number of CPUs"
157         depends on SMP
158         range 2 32 if SPARC32
159         range 2 1024 if SPARC64
160         default 32 if SPARC32
161         default 64 if SPARC64
163 source kernel/Kconfig.hz
165 config RWSEM_GENERIC_SPINLOCK
166         bool
167         default y if SPARC32
169 config RWSEM_XCHGADD_ALGORITHM
170         bool
171         default y if SPARC64
173 config GENERIC_FIND_NEXT_BIT
174         bool
175         default y
177 config GENERIC_HWEIGHT
178         bool
179         default y if !ULTRA_HAS_POPULATION_COUNT
181 config GENERIC_CALIBRATE_DELAY
182         bool
183         default y
185 config ARCH_MAY_HAVE_PC_FDC
186         bool
187         default y
189 config EMULATED_CMPXCHG
190         bool
191         default y if SPARC32
192         help
193           Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
194           is emulated, and therefore it is not completely atomic.
196 # Makefile helpers
197 config SPARC32_SMP
198         bool
199         default y
200         depends on SPARC32 && SMP
202 config SPARC64_SMP
203         bool
204         default y
205         depends on SPARC64 && SMP
207 choice
208         prompt "Kernel page size" if SPARC64
209         default SPARC64_PAGE_SIZE_8KB
211 config SPARC64_PAGE_SIZE_8KB
212         bool "8KB"
213         help
214           This lets you select the page size of the kernel.
216           8KB and 64KB work quite well, since SPARC ELF sections
217           provide for up to 64KB alignment.
219           If you don't know what to do, choose 8KB.
221 config SPARC64_PAGE_SIZE_64KB
222         bool "64KB"
224 endchoice
226 config SECCOMP
227         bool "Enable seccomp to safely compute untrusted bytecode"
228         depends on SPARC64 && PROC_FS
229         default y
230         help
231           This kernel feature is useful for number crunching applications
232           that may need to compute untrusted bytecode during their
233           execution. By using pipes or other transports made available to
234           the process as file descriptors supporting the read/write
235           syscalls, it's possible to isolate those applications in
236           their own address space using seccomp. Once seccomp is
237           enabled via /proc/<pid>/seccomp, it cannot be disabled
238           and the task is only allowed to execute a few safe syscalls
239           defined by each seccomp mode.
241           If unsure, say Y. Only embedded should say N here.
243 config HOTPLUG_CPU
244         bool "Support for hot-pluggable CPUs"
245         depends on SPARC64 && SMP
246         select HOTPLUG
247         help
248           Say Y here to experiment with turning CPUs off and on.  CPUs
249           can be controlled through /sys/devices/system/cpu/cpu#.
250           Say N if you want to disable CPU hotplug.
252 config GENERIC_HARDIRQS
253         bool
254         default y if SPARC64
256 source "kernel/time/Kconfig"
258 if SPARC64
259 source "drivers/cpufreq/Kconfig"
261 config US3_FREQ
262         tristate "UltraSPARC-III CPU Frequency driver"
263         depends on CPU_FREQ
264         select CPU_FREQ_TABLE
265         help
266           This adds the CPUFreq driver for UltraSPARC-III processors.
268           For details, take a look at <file:Documentation/cpu-freq>.
270           If in doubt, say N.
272 config US2E_FREQ
273         tristate "UltraSPARC-IIe CPU Frequency driver"
274         depends on CPU_FREQ
275         select CPU_FREQ_TABLE
276         help
277           This adds the CPUFreq driver for UltraSPARC-IIe processors.
279           For details, take a look at <file:Documentation/cpu-freq>.
281           If in doubt, say N.
283 endif
285 config US3_MC
286         tristate "UltraSPARC-III Memory Controller driver"
287         depends on SPARC64
288         default y
289         help
290           This adds a driver for the UltraSPARC-III memory controller.
291           Loading this driver allows exact mnemonic strings to be
292           printed in the event of a memory error, so that the faulty DIMM
293           on the motherboard can be matched to the error.
295           If in doubt, say Y, as this information can be very useful.
297 # Global things across all Sun machines.
298 config GENERIC_LOCKBREAK
299         bool
300         default y
301         depends on SPARC64 && SMP && PREEMPT
303 choice
304         prompt "SPARC64 Huge TLB Page Size"
305         depends on SPARC64 && HUGETLB_PAGE
306         default HUGETLB_PAGE_SIZE_4MB
308 config HUGETLB_PAGE_SIZE_4MB
309         bool "4MB"
311 config HUGETLB_PAGE_SIZE_512K
312         bool "512K"
314 config HUGETLB_PAGE_SIZE_64K
315         depends on !SPARC64_PAGE_SIZE_64KB
316         bool "64K"
318 endchoice
320 config NUMA
321         bool "NUMA support"
322         depends on SPARC64 && SMP
324 config NODES_SHIFT
325         int
326         default "4"
327         depends on NEED_MULTIPLE_NODES
329 # Some NUMA nodes have memory ranges that span
330 # other nodes.  Even though a pfn is valid and
331 # between a node's start and end pfns, it may not
332 # reside on that node.  See memmap_init_zone()
333 # for details.
334 config NODES_SPAN_OTHER_NODES
335         def_bool y
336         depends on NEED_MULTIPLE_NODES
338 config ARCH_POPULATES_NODE_MAP
339         def_bool y if SPARC64
341 config ARCH_SELECT_MEMORY_MODEL
342         def_bool y if SPARC64
344 config ARCH_SPARSEMEM_ENABLE
345         def_bool y if SPARC64
346         select SPARSEMEM_VMEMMAP_ENABLE
348 config ARCH_SPARSEMEM_DEFAULT
349         def_bool y if SPARC64
351 source "mm/Kconfig"
353 config SCHED_SMT
354         bool "SMT (Hyperthreading) scheduler support"
355         depends on SPARC64 && SMP
356         default y
357         help
358           SMT scheduler support improves the CPU scheduler's decision making
359           when dealing with SPARC cpus at a cost of slightly increased overhead
360           in some places. If unsure say N here.
362 config SCHED_MC
363         bool "Multi-core scheduler support"
364         depends on SPARC64 && SMP
365         default y
366         help
367           Multi-core scheduler support improves the CPU scheduler's decision
368           making when dealing with multi-core CPU chips at a cost of slightly
369           increased overhead in some places. If unsure say N here.
371 if SPARC64
372 source "kernel/Kconfig.preempt"
373 endif
375 config CMDLINE_BOOL
376         bool "Default bootloader kernel arguments"
377         depends on SPARC64
379 config CMDLINE
380         string "Initial kernel command string"
381         depends on CMDLINE_BOOL
382         default "console=ttyS0,9600 root=/dev/sda1"
383         help
384           Say Y here if you want to be able to pass default arguments to
385           the kernel. This will be overridden by the bootloader, if you
386           use one (such as SILO). This is most useful if you want to boot
387           a kernel from TFTP, and want default options to be available
388           with having them passed on the command line.
390           NOTE: This option WILL override the PROM bootargs setting!
392 config SUN_PM
393         bool
394         default y if SPARC32
395         help
396           Enable power management and CPU standby features on supported
397           SPARC platforms.
399 config SPARC_LED
400         tristate "Sun4m LED driver"
401         depends on SPARC32
402         help
403           This driver toggles the front-panel LED on sun4m systems
404           in a user-specifiable manner.  Its state can be probed
405           by reading /proc/led and its blinking mode can be changed
406           via writes to /proc/led
408 config SERIAL_CONSOLE
409         bool
410         depends on SPARC32
411         default y
412         ---help---
413           If you say Y here, it will be possible to use a serial port as the
414           system console (the system console is the device which receives all
415           kernel messages and warnings and which allows logins in single user
416           mode). This could be useful if some terminal or printer is connected
417           to that serial port.
419           Even if you say Y here, the currently visible virtual console
420           (/dev/tty0) will still be used as the system console by default, but
421           you can alter that using a kernel command line option such as
422           "console=ttyS1". (Try "man bootparam" or see the documentation of
423           your boot loader (silo) about how to pass options to the kernel at
424           boot time.)
426           If you don't have a graphics card installed and you say Y here, the
427           kernel will automatically use the first serial line, /dev/ttyS0, as
428           system console.
430           If unsure, say N.
432 endmenu
434 menu "Bus options (PCI etc.)"
435 config SBUS
436         bool
437         default y
439 config SBUSCHAR
440         bool
441         default y
443 config SUN_LDOMS
444         bool "Sun Logical Domains support"
445         depends on SPARC64
446         help
447           Say Y here is you want to support virtual devices via
448           Logical Domains.
450 config PCI
451         bool "Support for PCI and PS/2 keyboard/mouse"
452         help
453           Find out whether your system includes a PCI bus. PCI is the name of
454           a bus system, i.e. the way the CPU talks to the other stuff inside
455           your box.  If you say Y here, the kernel will include drivers and
456           infrastructure code to support PCI bus devices.
458           CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
459           CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
460           All of these platforms are extremely obscure, so say N if unsure.
462 config PCI_DOMAINS
463         def_bool PCI if SPARC64
465 config PCI_SYSCALL
466         def_bool PCI
468 source "drivers/pci/Kconfig"
470 source "drivers/pcmcia/Kconfig"
472 config SUN_OPENPROMFS
473         tristate "Openprom tree appears in /proc/openprom"
474         help
475           If you say Y, the OpenPROM device tree will be available as a
476           virtual file system, which you can mount to /proc/openprom by "mount
477           -t openpromfs none /proc/openprom".
479           To compile the /proc/openprom support as a module, choose M here: the
480           module will be called openpromfs.
482           Only choose N if you know in advance that you will not need to modify
483           OpenPROM settings on the running system.
485 # Makefile helpers
486 config SPARC32_PCI
487         bool
488         default y
489         depends on SPARC32 && PCI
491 config SPARC64_PCI
492         bool
493         default y
494         depends on SPARC64 && PCI
496 endmenu
498 menu "Executable file formats"
500 source "fs/Kconfig.binfmt"
502 config COMPAT
503         bool
504         depends on SPARC64
505         default y
506         select COMPAT_BINFMT_ELF
508 config SYSVIPC_COMPAT
509         bool
510         depends on COMPAT && SYSVIPC
511         default y
513 endmenu
515 source "net/Kconfig"
517 source "drivers/Kconfig"
519 source "drivers/sbus/char/Kconfig"
521 source "fs/Kconfig"
523 source "arch/sparc/Kconfig.debug"
525 source "security/Kconfig"
527 source "crypto/Kconfig"
529 source "lib/Kconfig"