xref: /openbmc/linux/arch/parisc/Kconfig (revision 503ccc3f)
1config PARISC
2	def_bool y
3	select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
4	select ARCH_MIGHT_HAVE_PC_PARPORT
5	select HAVE_IDE
6	select HAVE_OPROFILE
7	select HAVE_FUNCTION_TRACER if 64BIT
8	select HAVE_FUNCTION_GRAPH_TRACER if 64BIT
9	select ARCH_WANT_FRAME_POINTERS
10	select RTC_CLASS
11	select RTC_DRV_GENERIC
12	select INIT_ALL_POSSIBLE
13	select BUG
14	select HAVE_PERF_EVENTS
15	select GENERIC_ATOMIC64 if !64BIT
16	select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
17	select BROKEN_RODATA
18	select GENERIC_IRQ_PROBE
19	select GENERIC_PCI_IOMAP
20	select ARCH_HAVE_NMI_SAFE_CMPXCHG
21	select GENERIC_SMP_IDLE_THREAD
22	select GENERIC_STRNCPY_FROM_USER
23	select SYSCTL_ARCH_UNALIGN_ALLOW
24	select SYSCTL_EXCEPTION_TRACE
25	select HAVE_MOD_ARCH_SPECIFIC
26	select VIRT_TO_BUS
27	select MODULES_USE_ELF_RELA
28	select CLONE_BACKWARDS
29	select TTY # Needed for pdc_cons.c
30	select HAVE_DEBUG_STACKOVERFLOW
31	select HAVE_ARCH_AUDITSYSCALL
32
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
45config GENERIC_LOCKBREAK
46	bool
47	default y
48	depends on SMP && PREEMPT
49
50config RWSEM_GENERIC_SPINLOCK
51	def_bool y
52
53config RWSEM_XCHGADD_ALGORITHM
54	bool
55
56config ARCH_HAS_ILOG2_U32
57	bool
58	default n
59
60config ARCH_HAS_ILOG2_U64
61	bool
62	default n
63
64config GENERIC_BUG
65	bool
66	default y
67	depends on BUG
68
69config GENERIC_HWEIGHT
70	bool
71	default y
72
73config GENERIC_CALIBRATE_DELAY
74	bool
75	default y
76
77config TIME_LOW_RES
78	bool
79	depends on SMP
80	default y
81
82config HAVE_LATENCYTOP_SUPPORT
83        def_bool y
84
85# unless you want to implement ACPI on PA-RISC ... ;-)
86config PM
87	bool
88
89config STACKTRACE_SUPPORT
90	def_bool y
91
92config NEED_DMA_MAP_STATE
93	def_bool y
94
95config NEED_SG_DMA_LENGTH
96	def_bool y
97
98config ISA_DMA_API
99	bool
100
101config ARCH_MAY_HAVE_PC_FDC
102	bool
103	depends on BROKEN
104	default y
105
106source "init/Kconfig"
107
108source "kernel/Kconfig.freezer"
109
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
168	depends on PA8X00 || PA7200
169
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
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
200choice
201	prompt "Kernel page size"
202	default PARISC_PAGE_SIZE_4KB
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
220	bool "16KB"
221	depends on PA8X00
222
223config PARISC_PAGE_SIZE_64KB
224	bool "64KB"
225	depends on PA8X00
226
227endchoice
228
229config SMP
230	bool "Symmetric multi-processing support"
231	---help---
232	  This enables support for systems with more than one CPU. If you have
233	  a system with only one CPU, say N. If you have a system with more
234	  than one CPU, say Y.
235
236	  If you say N here, the kernel will run on uni- and multiprocessor
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,
239	  uniprocessor machines. On a uniprocessor machine, the kernel
240	  will run faster if you say N here.
241
242	  See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
243	  available at <http://www.tldp.org/docs.html#howto>.
244
245	  If you don't know what to do here, say N.
246
247config IRQSTACKS
248	bool "Use separate kernel stacks when processing interrupts"
249	default y
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.
254
255config HOTPLUG_CPU
256	bool
257	default y if SMP
258
259config ARCH_SELECT_MEMORY_MODEL
260	def_bool y
261	depends on 64BIT
262
263config ARCH_DISCONTIGMEM_ENABLE
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
273
274config NODES_SHIFT
275	int
276	default "3"
277	depends on NEED_MULTIPLE_NODES
278
279source "kernel/Kconfig.preempt"
280source "kernel/Kconfig.hz"
281source "mm/Kconfig"
282
283config COMPAT
284	def_bool y
285	depends on 64BIT
286
287config SYSVIPC_COMPAT
288	def_bool y
289	depends on COMPAT && SYSVIPC
290
291config AUDIT_ARCH
292	def_bool y
293
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
316source "net/Kconfig"
317
318source "drivers/Kconfig"
319
320source "fs/Kconfig"
321
322source "arch/parisc/Kconfig.debug"
323
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
340source "security/Kconfig"
341
342source "crypto/Kconfig"
343
344source "lib/Kconfig"
345