Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm...
[cascardo/linux.git] / arch / parisc / Kconfig
1 config PARISC
2         def_bool y
3         select ARCH_MIGHT_HAVE_PC_PARPORT
4         select HAVE_IDE
5         select HAVE_OPROFILE
6         select HAVE_FUNCTION_TRACER
7         select HAVE_FUNCTION_GRAPH_TRACER
8         select HAVE_SYSCALL_TRACEPOINTS
9         select ARCH_WANT_FRAME_POINTERS
10         select RTC_CLASS
11         select RTC_DRV_GENERIC
12         select INIT_ALL_POSSIBLE
13         select HAVE_MEMBLOCK
14         select NO_BOOTMEM
15         select BUG
16         select BUILDTIME_EXTABLE_SORT
17         select HAVE_PERF_EVENTS
18         select GENERIC_ATOMIC64 if !64BIT
19         select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
20         select GENERIC_IRQ_PROBE
21         select GENERIC_PCI_IOMAP
22         select ARCH_HAVE_NMI_SAFE_CMPXCHG
23         select GENERIC_SMP_IDLE_THREAD
24         select GENERIC_STRNCPY_FROM_USER
25         select SYSCTL_ARCH_UNALIGN_ALLOW
26         select SYSCTL_EXCEPTION_TRACE
27         select HAVE_MOD_ARCH_SPECIFIC
28         select HAVE_ARCH_HARDENED_USERCOPY
29         select VIRT_TO_BUS
30         select MODULES_USE_ELF_RELA
31         select CLONE_BACKWARDS
32         select TTY # Needed for pdc_cons.c
33         select HAVE_DEBUG_STACKOVERFLOW
34         select HAVE_ARCH_AUDITSYSCALL
35         select HAVE_ARCH_HASH
36         select HAVE_ARCH_SECCOMP_FILTER
37         select HAVE_ARCH_TRACEHOOK
38         select HAVE_UNSTABLE_SCHED_CLOCK if (SMP || !64BIT)
39         select ARCH_NO_COHERENT_DMA_MMAP
40         select CPU_NO_EFFICIENT_FFS
41
42         help
43           The PA-RISC microprocessor is designed by Hewlett-Packard and used
44           in many of their workstations & servers (HP9000 700 and 800 series,
45           and later HP3000 series).  The PA-RISC Linux project home page is
46           at <http://www.parisc-linux.org/>.
47
48 config MMU
49         def_bool y
50
51 config STACK_GROWSUP
52         def_bool y
53
54 config GENERIC_LOCKBREAK
55         bool
56         default y
57         depends on SMP && PREEMPT
58
59 config RWSEM_GENERIC_SPINLOCK
60         def_bool y
61
62 config RWSEM_XCHGADD_ALGORITHM
63         bool
64
65 config ARCH_HAS_ILOG2_U32
66         bool
67         default n
68
69 config ARCH_HAS_ILOG2_U64
70         bool
71         default n
72
73 config GENERIC_BUG
74         bool
75         default y
76         depends on BUG
77
78 config GENERIC_HWEIGHT
79         bool
80         default y
81
82 config GENERIC_CALIBRATE_DELAY
83         bool
84         default y
85
86 config TIME_LOW_RES
87         bool
88         depends on SMP
89         default y
90
91 # unless you want to implement ACPI on PA-RISC ... ;-)
92 config PM
93         bool
94
95 config STACKTRACE_SUPPORT
96         def_bool y
97
98 config NEED_DMA_MAP_STATE
99         def_bool y
100
101 config NEED_SG_DMA_LENGTH
102         def_bool y
103
104 config ISA_DMA_API
105         bool
106
107 config ARCH_MAY_HAVE_PC_FDC
108         bool
109         depends on BROKEN
110         default y
111
112 config PGTABLE_LEVELS
113         int
114         default 3 if 64BIT && PARISC_PAGE_SIZE_4KB
115         default 2
116
117 config SYS_SUPPORTS_HUGETLBFS
118         def_bool y if PA20
119
120 source "init/Kconfig"
121
122 source "kernel/Kconfig.freezer"
123
124
125 menu "Processor type and features"
126
127 choice
128         prompt "Processor type"
129         default PA7000
130
131 config PA7000
132         bool "PA7000/PA7100"
133         ---help---
134           This is the processor type of your CPU.  This information is
135           used for optimizing purposes.  In order to compile a kernel
136           that can run on all 32-bit PA CPUs (albeit not optimally fast),
137           you can specify "PA7000" here.
138
139           Specifying "PA8000" here will allow you to select a 64-bit kernel
140           which is required on some machines.
141
142 config PA7100LC
143         bool "PA7100LC"
144         help
145           Select this option for the PCX-L processor, as used in the
146           712, 715/64, 715/80, 715/100, 715/100XC, 725/100, 743, 748,
147           D200, D210, D300, D310 and E-class
148
149 config PA7200
150         bool "PA7200"
151         help
152           Select this option for the PCX-T' processor, as used in the
153           C100, C110, J100, J110, J210XC, D250, D260, D350, D360,
154           K100, K200, K210, K220, K400, K410 and K420
155
156 config PA7300LC
157         bool "PA7300LC"
158         help
159           Select this option for the PCX-L2 processor, as used in the
160           744, A180, B132L, B160L, B180L, C132L, C160L, C180L,
161           D220, D230, D320 and D330.
162
163 config PA8X00
164         bool "PA8000 and up"
165         help
166           Select this option for PCX-U to PCX-W2 processors.
167
168 endchoice
169
170 # Define implied options from the CPU selection here
171
172 config PA20
173         def_bool y
174         depends on PA8X00
175
176 config PA11
177         def_bool y
178         depends on PA7000 || PA7100LC || PA7200 || PA7300LC
179
180 config PREFETCH
181         def_bool y
182         depends on PA8X00 || PA7200
183
184 config MLONGCALLS
185         bool "Enable the -mlong-calls compiler option for big kernels"
186         def_bool y if (!MODULES)
187         depends on PA8X00
188         help
189           If you configure the kernel to include many drivers built-in instead
190           as modules, the kernel executable may become too big, so that the
191           linker will not be able to resolve some long branches and fails to link
192           your vmlinux kernel. In that case enabling this option will help you
193           to overcome this limit by using the -mlong-calls compiler option.
194
195           Usually you want to say N here, unless you e.g. want to build
196           a kernel which includes all necessary drivers built-in and which can
197           be used for TFTP booting without the need to have an initrd ramdisk.
198
199           Enabling this option will probably slow down your kernel.
200
201 config 64BIT
202         bool "64-bit kernel"
203         depends on PA8X00
204         help
205           Enable this if you want to support 64bit kernel on PA-RISC platform.
206
207           At the moment, only people willing to use more than 2GB of RAM,
208           or having a 64bit-only capable PA-RISC machine should say Y here.
209
210           Since there is no 64bit userland on PA-RISC, there is no point to
211           enable this option otherwise. The 64bit kernel is significantly bigger
212           and slower than the 32bit one.
213
214 choice
215         prompt "Kernel page size"
216         default PARISC_PAGE_SIZE_4KB
217
218 config PARISC_PAGE_SIZE_4KB
219         bool "4KB"
220         help
221           This lets you select the page size of the kernel.  For best
222           performance, a page size of 16KB is recommended.  For best
223           compatibility with 32bit applications, a page size of 4KB should be
224           selected (the vast majority of 32bit binaries work perfectly fine
225           with a larger page size).
226
227           4KB                For best 32bit compatibility
228           16KB               For best performance
229           64KB               For best performance, might give more overhead.
230
231           If you don't know what to do, choose 4KB.
232
233 config PARISC_PAGE_SIZE_16KB
234         bool "16KB"
235         depends on PA8X00
236
237 config PARISC_PAGE_SIZE_64KB
238         bool "64KB"
239         depends on PA8X00
240
241 endchoice
242
243 config SMP
244         bool "Symmetric multi-processing support"
245         ---help---
246           This enables support for systems with more than one CPU. If you have
247           a system with only one CPU, say N. If you have a system with more
248           than one CPU, say Y.
249
250           If you say N here, the kernel will run on uni- and multiprocessor
251           machines, but will use only one CPU of a multiprocessor machine. If
252           you say Y here, the kernel will run on many, but not all,
253           uniprocessor machines. On a uniprocessor machine, the kernel
254           will run faster if you say N here.
255
256           See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
257           available at <http://www.tldp.org/docs.html#howto>.
258
259           If you don't know what to do here, say N.
260
261 config IRQSTACKS
262         bool "Use separate kernel stacks when processing interrupts"
263         default y
264         help
265           If you say Y here the kernel will use separate kernel stacks
266           for handling hard and soft interrupts.  This can help avoid
267           overflowing the process kernel stacks.
268
269 config HOTPLUG_CPU
270         bool
271         default y if SMP
272
273 config ARCH_SELECT_MEMORY_MODEL
274         def_bool y
275         depends on 64BIT
276
277 config ARCH_DISCONTIGMEM_ENABLE
278         def_bool y
279         depends on 64BIT
280
281 config ARCH_FLATMEM_ENABLE
282         def_bool y
283
284 config ARCH_DISCONTIGMEM_DEFAULT
285         def_bool y
286         depends on ARCH_DISCONTIGMEM_ENABLE
287
288 config NODES_SHIFT
289         int
290         default "3"
291         depends on NEED_MULTIPLE_NODES
292
293 source "kernel/Kconfig.preempt"
294 source "kernel/Kconfig.hz"
295 source "mm/Kconfig"
296
297 config COMPAT
298         def_bool y
299         depends on 64BIT
300
301 config SYSVIPC_COMPAT
302         def_bool y
303         depends on COMPAT && SYSVIPC
304
305 config AUDIT_ARCH
306         def_bool y
307
308 config NR_CPUS
309         int "Maximum number of CPUs (2-32)"
310         range 2 32
311         depends on SMP
312         default "32"
313
314 endmenu
315
316
317 source "drivers/parisc/Kconfig"
318
319
320 menu "Executable file formats"
321
322 source "fs/Kconfig.binfmt"
323
324 endmenu
325
326 source "net/Kconfig"
327
328 source "drivers/Kconfig"
329
330 source "fs/Kconfig"
331
332 source "arch/parisc/Kconfig.debug"
333
334 config SECCOMP
335         def_bool y
336         prompt "Enable seccomp to safely compute untrusted bytecode"
337         ---help---
338           This kernel feature is useful for number crunching applications
339           that may need to compute untrusted bytecode during their
340           execution. By using pipes or other transports made available to
341           the process as file descriptors supporting the read/write
342           syscalls, it's possible to isolate those applications in
343           their own address space using seccomp. Once seccomp is
344           enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
345           and the task is only allowed to execute a few safe syscalls
346           defined by each seccomp mode.
347
348           If unsure, say Y. Only embedded should say N here.
349
350 source "security/Kconfig"
351
352 source "crypto/Kconfig"
353
354 source "lib/Kconfig"