# SPDX-License-Identifier: GPL-2.0
config [31mCONFIG_PARISC[0m
def_bool y
select [31mCONFIG_ARCH_32BIT_OFF_T[0m if ![31mCONFIG_64BIT[0m
select [31mCONFIG_ARCH_MIGHT_HAVE_PC_PARPORT[0m
select [31mCONFIG_HAVE_IDE[0m
select [31mCONFIG_HAVE_OPROFILE[0m
select [31mCONFIG_HAVE_FUNCTION_TRACER[0m
select [31mCONFIG_HAVE_FUNCTION_GRAPH_TRACER[0m
select [31mCONFIG_HAVE_SYSCALL_TRACEPOINTS[0m
select [31mCONFIG_ARCH_WANT_FRAME_POINTERS[0m
select [31mCONFIG_ARCH_HAS_ELF_RANDOMIZE[0m
select [31mCONFIG_ARCH_HAS_STRICT_KERNEL_RWX[0m
select [31mCONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL[0m
select [31mCONFIG_ARCH_NO_SG_CHAIN[0m
select [31mCONFIG_ARCH_SUPPORTS_MEMORY_FAILURE[0m
select [31mCONFIG_RTC_CLASS[0m
select [31mCONFIG_RTC_DRV_GENERIC[0m
select [31mCONFIG_INIT_ALL_POSSIBLE[0m
select [31mCONFIG_BUG[0m
select [31mCONFIG_BUILDTIME_EXTABLE_SORT[0m
select [31mCONFIG_HAVE_PCI[0m
select [31mCONFIG_HAVE_PERF_EVENTS[0m
select [31mCONFIG_HAVE_KERNEL_BZIP2[0m
select [31mCONFIG_HAVE_KERNEL_GZIP[0m
select [31mCONFIG_HAVE_KERNEL_LZ4[0m
select [31mCONFIG_HAVE_KERNEL_LZMA[0m
select [31mCONFIG_HAVE_KERNEL_LZO[0m
select [31mCONFIG_HAVE_KERNEL_XZ[0m
select [31mCONFIG_GENERIC_ATOMIC64[0m if ![31mCONFIG_64BIT[0m
select [31mCONFIG_GENERIC_IRQ_PROBE[0m
select [31mCONFIG_GENERIC_PCI_IOMAP[0m
select [31mCONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG[0m
select [31mCONFIG_GENERIC_SMP_IDLE_THREAD[0m
select [31mCONFIG_GENERIC_CPU_DEVICES[0m
select [31mCONFIG_GENERIC_STRNCPY_FROM_USER[0m
select [31mCONFIG_SYSCTL_ARCH_UNALIGN_ALLOW[0m
select [31mCONFIG_SYSCTL_EXCEPTION_TRACE[0m
select [31mCONFIG_HAVE_MOD_ARCH_SPECIFIC[0m
select [31mCONFIG_VIRT_TO_BUS[0m
select [31mCONFIG_MODULES_USE_ELF_RELA[0m
select [31mCONFIG_CLONE_BACKWARDS[0m
select [31mCONFIG_TTY[0m # Needed for pdc_cons.c
select [31mCONFIG_HAVE_DEBUG_STACKOVERFLOW[0m
select [31mCONFIG_HAVE_ARCH_AUDITSYSCALL[0m
select [31mCONFIG_HAVE_ARCH_HASH[0m
select [31mCONFIG_HAVE_ARCH_JUMP_LABEL[0m
select [31mCONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE[0m
select [31mCONFIG_HAVE_ARCH_SECCOMP_FILTER[0m
select [31mCONFIG_HAVE_ARCH_TRACEHOOK[0m
select [31mCONFIG_HAVE_REGS_AND_STACK_ACCESS_API[0m
select [31mCONFIG_GENERIC_SCHED_CLOCK[0m
select [31mCONFIG_HAVE_UNSTABLE_SCHED_CLOCK[0m if [31mCONFIG_SMP[0m
select [31mCONFIG_GENERIC_CLOCKEVENTS[0m
select [31mCONFIG_CPU_NO_EFFICIENT_FFS[0m
select [31mCONFIG_NEED_DMA_MAP_STATE[0m
select [31mCONFIG_NEED_SG_DMA_LENGTH[0m
select [31mCONFIG_HAVE_ARCH_KGDB[0m
select [31mCONFIG_HAVE_KPROBES[0m
select [31mCONFIG_HAVE_KRETPROBES[0m
select [31mCONFIG_HAVE_DYNAMIC_FTRACE[0m if $(cc-option,-fpatchable-function-entry=1,1)
select [31mCONFIG_HAVE_FTRACE_MCOUNT_RECORD[0m if [31mCONFIG_HAVE_DYNAMIC_FTRACE[0m
select [31mCONFIG_HAVE_KPROBES_ON_FTRACE[0m
select [31mCONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS[0m
help
The PA-RISC microprocessor is designed by Hewlett-Packard and used
in many of their workstations & servers (HP9000 700 and 800 series,
and later HP3000 series). The PA-RISC Linux project home page is
at <http://www.parisc-linux.org/>.
config [31mCONFIG_CPU_BIG_ENDIAN[0m
def_bool y
config [31mCONFIG_MMU[0m
def_bool y
config [31mCONFIG_STACK_GROWSUP[0m
def_bool y
config [31mCONFIG_GENERIC_LOCKBREAK[0m
bool
default y
depends on [31mCONFIG_SMP[0m && [31mCONFIG_PREEMPT[0m
config [31mCONFIG_ARCH_HAS_ILOG2_U32[0m
bool
default n
config [31mCONFIG_ARCH_HAS_ILOG2_U64[0m
bool
default n
config [31mCONFIG_GENERIC_BUG[0m
bool
default y
depends on [31mCONFIG_BUG[0m
config [31mCONFIG_GENERIC_HWEIGHT[0m
bool
default y
config [31mCONFIG_GENERIC_CALIBRATE_DELAY[0m
bool
default y
config [31mCONFIG_TIME_LOW_RES[0m
bool
depends on [31mCONFIG_SMP[0m
default y
# unless you want to implement [31mCONFIG_ACPI[0m on PA-RISC ... ;-)
config [31mCONFIG_PM[0m
bool
config [31mCONFIG_STACKTRACE_SUPPORT[0m
def_bool y
config [31mCONFIG_ISA_DMA_API[0m
bool
config [31mCONFIG_ARCH_MAY_HAVE_PC_FDC[0m
bool
depends on [31mCONFIG_BROKEN[0m
default y
config [31mCONFIG_PGTABLE_LEVELS[0m
int
default 3 if [31mCONFIG_64BIT[0m && [31mCONFIG_PARISC_PAGE_SIZE_4KB[0m
default 2
config [31mCONFIG_SYS_SUPPORTS_HUGETLBFS[0m
def_bool y if [31mCONFIG_PA20[0m
menu "Processor type and features"
choice
prompt "Processor type"
default [31mCONFIG_PA7000[0m
config [31mCONFIG_PA7000[0m
bool "PA7000/PA7100"
---help---
This is the processor type of your CPU. This information is
used for optimizing purposes. In order to compile a kernel
that can run on all 32-bit PA CPUs (albeit not optimally fast),
you can specify "PA7000" here.
Specifying "PA8000" here will allow you to select a 64-bit kernel
which is required on some machines.
config [31mCONFIG_PA7100LC[0m
bool "PA7100LC"
help
Select this option for the PCX-L processor, as used in the
712, 715/64, 715/80, 715/100, 715/100XC, 725/100, 743, 748,
D200, D210, D300, D310 and [31mCONFIG_E[0m-class
config [31mCONFIG_PA7200[0m
bool "PA7200"
help
Select this option for the PCX-T' processor, as used in the
C100, C110, J100, J110, J210XC, D250, D260, D350, D360,
K100, K200, K210, K220, K400, K410 and K420
config [31mCONFIG_PA7300LC[0m
bool "PA7300LC"
help
Select this option for the PCX-L2 processor, as used in the
744, A180, B132L, B160L, B180L, C132L, C160L, C180L,
D220, D230, D320 and D330.
config [31mCONFIG_PA8X00[0m
bool "PA8000 and up"
help
Select this option for PCX-U to PCX-W2 processors.
endchoice
# Define implied options from the CPU selection here
config [31mCONFIG_PA20[0m
def_bool y
depends on [31mCONFIG_PA8X00[0m
config [31mCONFIG_PA11[0m
def_bool y
depends on [31mCONFIG_PA7000[0m || [31mCONFIG_PA7100LC[0m || [31mCONFIG_PA7200[0m || [31mCONFIG_PA7300LC[0m
select [31mCONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU[0m
select [31mCONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE[0m
select [31mCONFIG_DMA_NONCOHERENT_CACHE_SYNC[0m
config [31mCONFIG_PREFETCH[0m
def_bool y
depends on [31mCONFIG_PA8X00[0m || [31mCONFIG_PA7200[0m
config [31mCONFIG_MLONGCALLS[0m
bool "Enable the -mlong-calls compiler option for big kernels"
default y if ![31mCONFIG_MODULES[0m || [31mCONFIG_UBSAN[0m || [31mCONFIG_FTRACE[0m
default n
depends on [31mCONFIG_PA8X00[0m
help
If you configure the kernel to include many drivers built-in instead
as modules, the kernel executable may become too big, so that the
linker will not be able to resolve some long branches and fails to link
your vmlinux kernel. In that case enabling this option will help you
to overcome this limit by using the -mlong-calls compiler option.
Usually you want to say N here, unless you e.g. want to build
a kernel which includes all necessary drivers built-in and which can
be used for TFTP booting without the need to have an initrd ramdisk.
Enabling this option will probably slow down your kernel.
config [31mCONFIG_64BIT[0m
bool "64-bit kernel"
depends on [31mCONFIG_PA8X00[0m
help
Enable this if you want to support 64bit kernel on PA-RISC platform.
At the moment, only people willing to use more than 2GB of RAM,
or having a 64bit-only capable PA-RISC machine should say Y here.
Since there is no 64bit userland on PA-RISC, there is no point to
enable this option otherwise. The 64bit kernel is significantly bigger
and slower than the 32bit one.
choice
prompt "Kernel page size"
default [31mCONFIG_PARISC_PAGE_SIZE_4KB[0m
config [31mCONFIG_PARISC_PAGE_SIZE_4KB[0m
bool "4KB"
help
This lets you select the page size of the kernel. For best
performance, a page size of 16KB is recommended. For best
compatibility with 32bit applications, a page size of 4KB should be
selected (the vast majority of 32bit binaries work perfectly fine
with a larger page size).
4KB For best 32bit compatibility
16KB For best performance
64KB For best performance, might give more overhead.
If you don't know what to do, choose 4KB.
config [31mCONFIG_PARISC_PAGE_SIZE_16KB[0m
bool "16KB"
depends on [31mCONFIG_PA8X00[0m && [31mCONFIG_BROKEN[0m
config [31mCONFIG_PARISC_PAGE_SIZE_64KB[0m
bool "64KB"
depends on [31mCONFIG_PA8X00[0m && [31mCONFIG_BROKEN[0m
endchoice
config [31mCONFIG_PARISC_SELF_EXTRACT[0m
bool "Build kernel as self-extracting executable"
default y
help
Say Y if you want to build the parisc kernel as a kind of
self-extracting executable.
If you say N here, the kernel will be compressed with gzip
which can be loaded by the palo bootloader directly too.
If you don't know what to do here, say Y.
config [31mCONFIG_SMP[0m
bool "Symmetric multi-processing support"
---help---
This enables support for systems with more than one CPU. If you have
a system with only one CPU, say N. If you have a system with more
than one CPU, say Y.
If you say N here, the kernel will run on uni- and multiprocessor
machines, but will use only one CPU of a multiprocessor machine.
On a uniprocessor machine, the kernel will run faster if you say N.
See also <file:Documentation/admin-guide/lockup-watchdogs.rst> and the [31mCONFIG_SMP[0m-HOWTO
available at <http://www.tldp.org/docs.html#howto>.
If you don't know what to do here, say N.
config [31mCONFIG_PARISC_CPU_TOPOLOGY[0m
bool "Support cpu topology definition"
depends on [31mCONFIG_SMP[0m
default y
help
Support [31mCONFIG_PARISC[0m cpu topology definition.
config [31mCONFIG_SCHED_MC[0m
bool "Multi-core scheduler support"
depends on [31mCONFIG_PARISC_CPU_TOPOLOGY[0m && [31mCONFIG_PA8X00[0m
help
Multi-core scheduler support improves the CPU scheduler's decision
making when dealing with multi-core CPU chips at a cost of slightly
increased overhead in some places. If unsure say N here.
config [31mCONFIG_IRQSTACKS[0m
bool "Use separate kernel stacks when processing interrupts"
default y
help
If you say Y here the kernel will use separate kernel stacks
for handling hard and soft interrupts. This can help avoid
overflowing the process kernel stacks.
config [31mCONFIG_HOTPLUG_CPU[0m
bool
default y if [31mCONFIG_SMP[0m
config [31mCONFIG_ARCH_SELECT_MEMORY_MODEL[0m
def_bool y
depends on [31mCONFIG_64BIT[0m
config [31mCONFIG_ARCH_SPARSEMEM_ENABLE[0m
def_bool y
depends on [31mCONFIG_64BIT[0m
config [31mCONFIG_ARCH_FLATMEM_ENABLE[0m
def_bool y
config [31mCONFIG_ARCH_SPARSEMEM_DEFAULT[0m
def_bool y
depends on [31mCONFIG_ARCH_SPARSEMEM_ENABLE[0m
source "kernel/Kconfig.hz"
config [31mCONFIG_COMPAT[0m
def_bool y
depends on [31mCONFIG_64BIT[0m
select [31mCONFIG_COMPAT_BINFMT_ELF[0m if [31mCONFIG_BINFMT_ELF[0m
config [31mCONFIG_SYSVIPC_COMPAT[0m
def_bool y
depends on [31mCONFIG_COMPAT[0m && [31mCONFIG_SYSVIPC[0m
config [31mCONFIG_AUDIT_ARCH[0m
def_bool y
config [31mCONFIG_NR_CPUS[0m
int "Maximum number of CPUs (2-32)"
range 2 32
depends on [31mCONFIG_SMP[0m
default "4"
config [31mCONFIG_KEXEC[0m
bool "Kexec system call"
select [31mCONFIG_KEXEC_CORE[0m
help
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
but it is independent of the system firmware. And like a reboot
you can start any kernel with it, not just Linux.
It is an ongoing process to be certain the hardware in a machine
shutdown, so do not be surprised if this code does not
initially work for you.
config [31mCONFIG_KEXEC_FILE[0m
bool "kexec file based system call"
select [31mCONFIG_KEXEC_CORE[0m
select [31mCONFIG_KEXEC_ELF[0m
help
This enables the kexec_file_load() System call. This is
file based and takes file descriptors as system call argument
for kernel and initramfs as opposed to list of segments as
accepted by previous system call.
endmenu
source "drivers/parisc/Kconfig"
config [31mCONFIG_SECCOMP[0m
def_bool y
prompt "Enable seccomp to safely compute untrusted bytecode"
---help---
This kernel feature is useful for number crunching applications
that may need to compute untrusted bytecode during their
execution. By using pipes or other transports made available to
the process as file descriptors supporting the read/write
syscalls, it's possible to isolate those applications in
their own address space using seccomp. Once seccomp is
enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
and the task is only allowed to execute a few safe syscalls
defined by each seccomp mode.
If unsure, say Y. Only embedded should say N here.