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