.. | .. |
---|
1 | 1 | # SPDX-License-Identifier: GPL-2.0 |
---|
2 | 2 | config PARISC |
---|
3 | 3 | def_bool y |
---|
| 4 | + select ARCH_32BIT_OFF_T if !64BIT |
---|
4 | 5 | select ARCH_MIGHT_HAVE_PC_PARPORT |
---|
5 | 6 | select HAVE_IDE |
---|
6 | 7 | select HAVE_OPROFILE |
---|
.. | .. |
---|
10 | 11 | select ARCH_WANT_FRAME_POINTERS |
---|
11 | 12 | select ARCH_HAS_ELF_RANDOMIZE |
---|
12 | 13 | select ARCH_HAS_STRICT_KERNEL_RWX |
---|
| 14 | + select ARCH_HAS_STRICT_MODULE_RWX |
---|
13 | 15 | select ARCH_HAS_UBSAN_SANITIZE_ALL |
---|
| 16 | + select ARCH_NO_SG_CHAIN |
---|
14 | 17 | select ARCH_SUPPORTS_MEMORY_FAILURE |
---|
| 18 | + select DMA_OPS |
---|
15 | 19 | select RTC_CLASS |
---|
16 | 20 | select RTC_DRV_GENERIC |
---|
17 | 21 | select INIT_ALL_POSSIBLE |
---|
18 | | - select HAVE_MEMBLOCK |
---|
19 | | - select NO_BOOTMEM |
---|
20 | 22 | select BUG |
---|
21 | | - select BUILDTIME_EXTABLE_SORT |
---|
| 23 | + select BUILDTIME_TABLE_SORT |
---|
| 24 | + select HAVE_PCI |
---|
22 | 25 | select HAVE_PERF_EVENTS |
---|
23 | 26 | select HAVE_KERNEL_BZIP2 |
---|
24 | 27 | select HAVE_KERNEL_GZIP |
---|
.. | .. |
---|
35 | 38 | select GENERIC_STRNCPY_FROM_USER |
---|
36 | 39 | select SYSCTL_ARCH_UNALIGN_ALLOW |
---|
37 | 40 | select SYSCTL_EXCEPTION_TRACE |
---|
38 | | - select ARCH_DISCARD_MEMBLOCK |
---|
39 | 41 | select HAVE_MOD_ARCH_SPECIFIC |
---|
40 | 42 | select VIRT_TO_BUS |
---|
41 | 43 | select MODULES_USE_ELF_RELA |
---|
.. | .. |
---|
44 | 46 | select HAVE_DEBUG_STACKOVERFLOW |
---|
45 | 47 | select HAVE_ARCH_AUDITSYSCALL |
---|
46 | 48 | select HAVE_ARCH_HASH |
---|
| 49 | + select HAVE_ARCH_JUMP_LABEL |
---|
| 50 | + select HAVE_ARCH_JUMP_LABEL_RELATIVE |
---|
47 | 51 | select HAVE_ARCH_SECCOMP_FILTER |
---|
48 | 52 | select HAVE_ARCH_TRACEHOOK |
---|
49 | 53 | select HAVE_REGS_AND_STACK_ACCESS_API |
---|
50 | 54 | select GENERIC_SCHED_CLOCK |
---|
51 | 55 | select HAVE_UNSTABLE_SCHED_CLOCK if SMP |
---|
52 | 56 | select GENERIC_CLOCKEVENTS |
---|
53 | | - select ARCH_NO_COHERENT_DMA_MMAP |
---|
54 | 57 | select CPU_NO_EFFICIENT_FFS |
---|
55 | 58 | select NEED_DMA_MAP_STATE |
---|
56 | 59 | select NEED_SG_DMA_LENGTH |
---|
| 60 | + select HAVE_ARCH_KGDB |
---|
| 61 | + select HAVE_KPROBES |
---|
| 62 | + select HAVE_KRETPROBES |
---|
| 63 | + select HAVE_DYNAMIC_FTRACE if $(cc-option,-fpatchable-function-entry=1,1) |
---|
| 64 | + select HAVE_FTRACE_MCOUNT_RECORD if HAVE_DYNAMIC_FTRACE |
---|
| 65 | + select FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY if DYNAMIC_FTRACE |
---|
| 66 | + select HAVE_KPROBES_ON_FTRACE |
---|
| 67 | + select HAVE_DYNAMIC_FTRACE_WITH_REGS |
---|
| 68 | + select SET_FS |
---|
57 | 69 | |
---|
58 | 70 | help |
---|
59 | 71 | The PA-RISC microprocessor is designed by Hewlett-Packard and used |
---|
60 | 72 | in many of their workstations & servers (HP9000 700 and 800 series, |
---|
61 | 73 | and later HP3000 series). The PA-RISC Linux project home page is |
---|
62 | | - at <http://www.parisc-linux.org/>. |
---|
| 74 | + at <https://parisc.wiki.kernel.org>. |
---|
63 | 75 | |
---|
64 | 76 | config CPU_BIG_ENDIAN |
---|
65 | 77 | def_bool y |
---|
.. | .. |
---|
70 | 82 | config STACK_GROWSUP |
---|
71 | 83 | def_bool y |
---|
72 | 84 | |
---|
| 85 | +config ARCH_DEFCONFIG |
---|
| 86 | + string |
---|
| 87 | + default "arch/parisc/configs/generic-32bit_defconfig" if !64BIT |
---|
| 88 | + default "arch/parisc/configs/generic-64bit_defconfig" if 64BIT |
---|
| 89 | + |
---|
73 | 90 | config GENERIC_LOCKBREAK |
---|
74 | 91 | bool |
---|
75 | 92 | default y |
---|
76 | | - depends on SMP && PREEMPT |
---|
77 | | - |
---|
78 | | -config RWSEM_GENERIC_SPINLOCK |
---|
79 | | - def_bool y |
---|
80 | | - |
---|
81 | | -config RWSEM_XCHGADD_ALGORITHM |
---|
82 | | - bool |
---|
| 93 | + depends on SMP && PREEMPTION |
---|
83 | 94 | |
---|
84 | 95 | config ARCH_HAS_ILOG2_U32 |
---|
85 | 96 | bool |
---|
.. | .. |
---|
139 | 150 | |
---|
140 | 151 | config PA7000 |
---|
141 | 152 | bool "PA7000/PA7100" |
---|
142 | | - ---help--- |
---|
| 153 | + help |
---|
143 | 154 | This is the processor type of your CPU. This information is |
---|
144 | 155 | used for optimizing purposes. In order to compile a kernel |
---|
145 | 156 | that can run on all 32-bit PA CPUs (albeit not optimally fast), |
---|
.. | .. |
---|
187 | 198 | depends on PA7000 || PA7100LC || PA7200 || PA7300LC |
---|
188 | 199 | select ARCH_HAS_SYNC_DMA_FOR_CPU |
---|
189 | 200 | select ARCH_HAS_SYNC_DMA_FOR_DEVICE |
---|
190 | | - select DMA_NONCOHERENT_OPS |
---|
191 | | - select DMA_NONCOHERENT_CACHE_SYNC |
---|
192 | 201 | |
---|
193 | 202 | config PREFETCH |
---|
194 | 203 | def_bool y |
---|
195 | 204 | depends on PA8X00 || PA7200 |
---|
196 | 205 | |
---|
| 206 | +config PARISC_HUGE_KERNEL |
---|
| 207 | + def_bool y if !MODULES || UBSAN || FTRACE || COMPILE_TEST |
---|
| 208 | + |
---|
197 | 209 | config MLONGCALLS |
---|
198 | | - bool "Enable the -mlong-calls compiler option for big kernels" |
---|
199 | | - default y |
---|
| 210 | + def_bool y if PARISC_HUGE_KERNEL |
---|
| 211 | + bool "Enable the -mlong-calls compiler option for big kernels" if !PARISC_HUGE_KERNEL |
---|
200 | 212 | depends on PA8X00 |
---|
201 | 213 | help |
---|
202 | 214 | If you configure the kernel to include many drivers built-in instead |
---|
.. | .. |
---|
267 | 279 | |
---|
268 | 280 | config SMP |
---|
269 | 281 | bool "Symmetric multi-processing support" |
---|
270 | | - ---help--- |
---|
| 282 | + help |
---|
271 | 283 | This enables support for systems with more than one CPU. If you have |
---|
272 | 284 | a system with only one CPU, say N. If you have a system with more |
---|
273 | 285 | than one CPU, say Y. |
---|
.. | .. |
---|
276 | 288 | machines, but will use only one CPU of a multiprocessor machine. |
---|
277 | 289 | On a uniprocessor machine, the kernel will run faster if you say N. |
---|
278 | 290 | |
---|
279 | | - See also <file:Documentation/lockup-watchdogs.txt> and the SMP-HOWTO |
---|
280 | | - available at <http://www.tldp.org/docs.html#howto>. |
---|
| 291 | + See also <file:Documentation/admin-guide/lockup-watchdogs.rst> and the SMP-HOWTO |
---|
| 292 | + available at <https://www.tldp.org/docs.html#howto>. |
---|
281 | 293 | |
---|
282 | 294 | If you don't know what to do here, say N. |
---|
283 | 295 | |
---|
.. | .. |
---|
303 | 315 | If you say Y here the kernel will use separate kernel stacks |
---|
304 | 316 | for handling hard and soft interrupts. This can help avoid |
---|
305 | 317 | overflowing the process kernel stacks. |
---|
| 318 | + |
---|
| 319 | +config TLB_PTLOCK |
---|
| 320 | + bool "Use page table locks in TLB fault handler" |
---|
| 321 | + depends on SMP |
---|
| 322 | + default n |
---|
| 323 | + help |
---|
| 324 | + Select this option to enable page table locking in the TLB |
---|
| 325 | + fault handler. This ensures that page table entries are |
---|
| 326 | + updated consistently on SMP machines at the expense of some |
---|
| 327 | + loss in performance. |
---|
306 | 328 | |
---|
307 | 329 | config HOTPLUG_CPU |
---|
308 | 330 | bool |
---|
.. | .. |
---|
343 | 365 | depends on SMP |
---|
344 | 366 | default "4" |
---|
345 | 367 | |
---|
| 368 | +config KEXEC |
---|
| 369 | + bool "Kexec system call" |
---|
| 370 | + select KEXEC_CORE |
---|
| 371 | + help |
---|
| 372 | + kexec is a system call that implements the ability to shutdown your |
---|
| 373 | + current kernel, and to start another kernel. It is like a reboot |
---|
| 374 | + but it is independent of the system firmware. And like a reboot |
---|
| 375 | + you can start any kernel with it, not just Linux. |
---|
| 376 | + |
---|
| 377 | + It is an ongoing process to be certain the hardware in a machine |
---|
| 378 | + shutdown, so do not be surprised if this code does not |
---|
| 379 | + initially work for you. |
---|
| 380 | + |
---|
| 381 | +config KEXEC_FILE |
---|
| 382 | + bool "kexec file based system call" |
---|
| 383 | + select KEXEC_CORE |
---|
| 384 | + select KEXEC_ELF |
---|
| 385 | + help |
---|
| 386 | + This enables the kexec_file_load() System call. This is |
---|
| 387 | + file based and takes file descriptors as system call argument |
---|
| 388 | + for kernel and initramfs as opposed to list of segments as |
---|
| 389 | + accepted by previous system call. |
---|
| 390 | + |
---|
346 | 391 | endmenu |
---|
347 | 392 | |
---|
| 393 | +source "drivers/firmware/Kconfig" |
---|
348 | 394 | |
---|
349 | 395 | source "drivers/parisc/Kconfig" |
---|
350 | | - |
---|
351 | | -config SECCOMP |
---|
352 | | - def_bool y |
---|
353 | | - prompt "Enable seccomp to safely compute untrusted bytecode" |
---|
354 | | - ---help--- |
---|
355 | | - This kernel feature is useful for number crunching applications |
---|
356 | | - that may need to compute untrusted bytecode during their |
---|
357 | | - execution. By using pipes or other transports made available to |
---|
358 | | - the process as file descriptors supporting the read/write |
---|
359 | | - syscalls, it's possible to isolate those applications in |
---|
360 | | - their own address space using seccomp. Once seccomp is |
---|
361 | | - enabled via prctl(PR_SET_SECCOMP), it cannot be disabled |
---|
362 | | - and the task is only allowed to execute a few safe syscalls |
---|
363 | | - defined by each seccomp mode. |
---|
364 | | - |
---|
365 | | - If unsure, say Y. Only embedded should say N here. |
---|