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