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