Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
[linux-2.6] / arch / sparc64 / Kconfig
1 # sparc64 configuration
2 mainmenu "Linux Kernel Configuration for 64-bit SPARC"
3
4 config SPARC
5         bool
6         default y
7         select HAVE_OPROFILE
8         select HAVE_KPROBES
9         select HAVE_KRETPROBES
10
11 config SPARC64
12         bool
13         default y
14         select HAVE_DYNAMIC_FTRACE
15         select HAVE_FTRACE
16         select HAVE_IDE
17         select HAVE_LMB
18         select HAVE_ARCH_KGDB
19         select USE_GENERIC_SMP_HELPERS if SMP
20         select HAVE_ARCH_TRACEHOOK
21         select ARCH_WANT_OPTIONAL_GPIOLIB
22         select RTC_CLASS
23         select RTC_DRV_M48T59
24         select RTC_DRV_CMOS
25         select RTC_DRV_BQ4802
26         select RTC_DRV_SUN4V
27         select RTC_DRV_STARFIRE
28
29 config GENERIC_TIME
30         bool
31         default y
32
33 config GENERIC_CMOS_UPDATE
34         bool
35         default y
36
37 config GENERIC_CLOCKEVENTS
38         bool
39         default y
40
41 config GENERIC_GPIO
42         bool
43         help
44           Generic GPIO API support
45
46 config 64BIT
47         def_bool y
48
49 config MMU
50         bool
51         default y
52
53 config IOMMU_HELPER
54         bool
55         default y
56
57 config QUICKLIST
58         bool
59         default y
60
61 config STACKTRACE_SUPPORT
62         bool
63         default y
64
65 config LOCKDEP_SUPPORT
66         bool
67         default y
68
69 config ARCH_MAY_HAVE_PC_FDC
70         bool
71         default y
72
73 config ARCH_HAS_ILOG2_U32
74         bool
75         default n
76
77 config ARCH_HAS_ILOG2_U64
78         bool
79         default n
80
81 config AUDIT_ARCH
82         bool
83         default y
84
85 config HAVE_SETUP_PER_CPU_AREA
86         def_bool y
87
88 config ARCH_NO_VIRT_TO_BUS
89         def_bool y
90
91 config OF
92         def_bool y
93
94 config GENERIC_HARDIRQS_NO__DO_IRQ
95         bool
96         def_bool y
97
98 source "init/Kconfig"
99
100 menu "Processor type and features"
101
102 choice
103         prompt "Kernel page size"
104         default SPARC64_PAGE_SIZE_8KB
105
106 config SPARC64_PAGE_SIZE_8KB
107         bool "8KB"
108         help
109           This lets you select the page size of the kernel.
110
111           8KB and 64KB work quite well, since SPARC ELF sections
112           provide for up to 64KB alignment.
113
114           If you don't know what to do, choose 8KB.
115
116 config SPARC64_PAGE_SIZE_64KB
117         bool "64KB"
118
119 endchoice
120
121 config SECCOMP
122         bool "Enable seccomp to safely compute untrusted bytecode"
123         depends on PROC_FS
124         default y
125         help
126           This kernel feature is useful for number crunching applications
127           that may need to compute untrusted bytecode during their
128           execution. By using pipes or other transports made available to
129           the process as file descriptors supporting the read/write
130           syscalls, it's possible to isolate those applications in
131           their own address space using seccomp. Once seccomp is
132           enabled via /proc/<pid>/seccomp, it cannot be disabled
133           and the task is only allowed to execute a few safe syscalls
134           defined by each seccomp mode.
135
136           If unsure, say Y. Only embedded should say N here.
137
138 source kernel/Kconfig.hz
139
140 config HOTPLUG_CPU
141         bool "Support for hot-pluggable CPUs"
142         depends on SMP
143         select HOTPLUG
144         help
145           Say Y here to experiment with turning CPUs off and on.  CPUs
146           can be controlled through /sys/devices/system/cpu/cpu#.
147           Say N if you want to disable CPU hotplug.
148
149 config GENERIC_HARDIRQS
150         bool
151         default y
152
153 source "kernel/time/Kconfig"
154
155 config SMP
156         bool "Symmetric multi-processing support"
157         help
158           This enables support for systems with more than one CPU. If you have
159           a system with only one CPU, say N. If you have a system with more than
160           one CPU, say Y.
161
162           If you say N here, the kernel will run on single and multiprocessor
163           machines, but will use only one CPU of a multiprocessor machine. If
164           you say Y here, the kernel will run on single-processor machines.
165           On a single-processor machine, the kernel will run faster if you say
166           N here.
167
168           If you don't know what to do here, say N.
169
170 config NR_CPUS
171         int "Maximum number of CPUs (2-1024)"
172         range 2 1024
173         depends on SMP
174         default "64"
175
176 source "drivers/cpufreq/Kconfig"
177
178 config US3_FREQ
179         tristate "UltraSPARC-III CPU Frequency driver"
180         depends on CPU_FREQ
181         select CPU_FREQ_TABLE
182         help
183           This adds the CPUFreq driver for UltraSPARC-III processors.
184
185           For details, take a look at <file:Documentation/cpu-freq>.
186
187           If in doubt, say N.
188
189 config US2E_FREQ
190         tristate "UltraSPARC-IIe CPU Frequency driver"
191         depends on CPU_FREQ
192         select CPU_FREQ_TABLE
193         help
194           This adds the CPUFreq driver for UltraSPARC-IIe processors.
195
196           For details, take a look at <file:Documentation/cpu-freq>.
197
198           If in doubt, say N.
199
200 config US3_MC
201         tristate "UltraSPARC-III Memory Controller driver"
202         default y
203         help
204           This adds a driver for the UltraSPARC-III memory controller.
205           Loading this driver allows exact mnemonic strings to be
206           printed in the event of a memory error, so that the faulty DIMM
207           on the motherboard can be matched to the error.
208
209           If in doubt, say Y, as this information can be very useful.
210
211 # Global things across all Sun machines.
212 config GENERIC_LOCKBREAK
213         bool
214         default y
215         depends on SMP && PREEMPT
216
217 config RWSEM_GENERIC_SPINLOCK
218         bool
219
220 config RWSEM_XCHGADD_ALGORITHM
221         bool
222         default y
223
224 config GENERIC_FIND_NEXT_BIT
225         bool
226         default y
227
228 config GENERIC_HWEIGHT
229         bool
230         default y if !ULTRA_HAS_POPULATION_COUNT
231
232 config GENERIC_CALIBRATE_DELAY
233         bool
234         default y
235
236 choice
237         prompt "SPARC64 Huge TLB Page Size"
238         depends on HUGETLB_PAGE
239         default HUGETLB_PAGE_SIZE_4MB
240
241 config HUGETLB_PAGE_SIZE_4MB
242         bool "4MB"
243
244 config HUGETLB_PAGE_SIZE_512K
245         bool "512K"
246
247 config HUGETLB_PAGE_SIZE_64K
248         depends on !SPARC64_PAGE_SIZE_64KB
249         bool "64K"
250
251 endchoice
252
253 endmenu
254
255 config NUMA
256         bool "NUMA support"
257         depends on SMP
258
259 config NODES_SHIFT
260         int
261         default "4"
262         depends on NEED_MULTIPLE_NODES
263
264 # Some NUMA nodes have memory ranges that span
265 # other nodes.  Even though a pfn is valid and
266 # between a node's start and end pfns, it may not
267 # reside on that node.  See memmap_init_zone()
268 # for details.
269 config NODES_SPAN_OTHER_NODES
270         def_bool y
271         depends on NEED_MULTIPLE_NODES
272
273 config ARCH_POPULATES_NODE_MAP
274         def_bool y
275
276 config ARCH_SELECT_MEMORY_MODEL
277         def_bool y
278
279 config ARCH_SPARSEMEM_ENABLE
280         def_bool y
281         select SPARSEMEM_VMEMMAP_ENABLE
282
283 config ARCH_SPARSEMEM_DEFAULT
284         def_bool y
285
286 source "mm/Kconfig"
287
288 config ISA
289         bool
290
291 config ISAPNP
292         bool
293
294 config EISA
295         bool
296
297 config MCA
298         bool
299
300 config PCMCIA
301         tristate
302         help
303           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
304           computer.  These are credit-card size devices such as network cards,
305           modems or hard drives often used with laptops computers.  There are
306           actually two varieties of these cards: the older 16 bit PCMCIA cards
307           and the newer 32 bit CardBus cards.  If you want to use CardBus
308           cards, you need to say Y here and also to "CardBus support" below.
309
310           To use your PC-cards, you will need supporting software from David
311           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
312           for location).  Please also read the PCMCIA-HOWTO, available from
313           <http://www.tldp.org/docs.html#howto>.
314
315           To compile this driver as modules, choose M here: the
316           modules will be called pcmcia_core and ds.
317
318 config SBUS
319         bool
320         default y
321
322 config SBUSCHAR
323         bool
324         default y
325
326 config SUN_AUXIO
327         bool
328         default y
329
330 config SUN_IO
331         bool
332         default y
333
334 config SUN_LDOMS
335         bool "Sun Logical Domains support"
336         help
337           Say Y here is you want to support virtual devices via
338           Logical Domains.
339
340 config PCI
341         bool "PCI support"
342         select ARCH_SUPPORTS_MSI
343         help
344           Find out whether your system includes a PCI bus. PCI is the name of
345           a bus system, i.e. the way the CPU talks to the other stuff inside
346           your box.  If you say Y here, the kernel will include drivers and
347           infrastructure code to support PCI bus devices.
348
349 config PCI_DOMAINS
350         def_bool PCI
351
352 config PCI_SYSCALL
353         def_bool PCI
354
355 source "drivers/pci/Kconfig"
356
357 config SUN_OPENPROMFS
358         tristate "Openprom tree appears in /proc/openprom"
359         help
360           If you say Y, the OpenPROM device tree will be available as a
361           virtual file system, which you can mount to /proc/openprom by "mount
362           -t openpromfs none /proc/openprom".
363
364           To compile the /proc/openprom support as a module, choose M here: the
365           module will be called openpromfs.  If unsure, choose M.
366
367 menu "Executable file formats"
368
369 source "fs/Kconfig.binfmt"
370
371 config COMPAT
372         bool
373         default y
374         select COMPAT_BINFMT_ELF
375
376 config SYSVIPC_COMPAT
377         bool
378         depends on COMPAT && SYSVIPC
379         default y
380
381 endmenu
382
383 config SCHED_SMT
384         bool "SMT (Hyperthreading) scheduler support"
385         depends on SMP
386         default y
387         help
388           SMT scheduler support improves the CPU scheduler's decision making
389           when dealing with SPARC cpus at a cost of slightly increased overhead
390           in some places. If unsure say N here.
391
392 config SCHED_MC
393         bool "Multi-core scheduler support"
394         depends on SMP
395         default y
396         help
397           Multi-core scheduler support improves the CPU scheduler's decision
398           making when dealing with multi-core CPU chips at a cost of slightly
399           increased overhead in some places. If unsure say N here.
400
401 source "kernel/Kconfig.preempt"
402
403 config CMDLINE_BOOL
404         bool "Default bootloader kernel arguments"
405
406 config CMDLINE
407         string "Initial kernel command string"
408         depends on CMDLINE_BOOL
409         default "console=ttyS0,9600 root=/dev/sda1"
410         help
411           Say Y here if you want to be able to pass default arguments to
412           the kernel. This will be overridden by the bootloader, if you
413           use one (such as SILO). This is most useful if you want to boot
414           a kernel from TFTP, and want default options to be available
415           with having them passed on the command line.
416
417           NOTE: This option WILL override the PROM bootargs setting!
418
419 source "net/Kconfig"
420
421 source "drivers/Kconfig"
422
423 source "drivers/sbus/char/Kconfig"
424
425 source "fs/Kconfig"
426
427 source "arch/sparc64/Kconfig.debug"
428
429 source "security/Kconfig"
430
431 source "crypto/Kconfig"
432
433 source "lib/Kconfig"