162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ciconfig MMU 362306a36Sopenharmony_ci def_bool y 462306a36Sopenharmony_ci 562306a36Sopenharmony_ciconfig CPU_BIG_ENDIAN 662306a36Sopenharmony_ci def_bool y 762306a36Sopenharmony_ci 862306a36Sopenharmony_ciconfig LOCKDEP_SUPPORT 962306a36Sopenharmony_ci def_bool y 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ciconfig STACKTRACE_SUPPORT 1262306a36Sopenharmony_ci def_bool y 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ciconfig ARCH_HAS_ILOG2_U32 1562306a36Sopenharmony_ci def_bool n 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciconfig ARCH_HAS_ILOG2_U64 1862306a36Sopenharmony_ci def_bool n 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciconfig GENERIC_HWEIGHT 2162306a36Sopenharmony_ci def_bool y 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciconfig GENERIC_BUG 2462306a36Sopenharmony_ci def_bool y if BUG 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ciconfig GENERIC_BUG_RELATIVE_POINTERS 2762306a36Sopenharmony_ci def_bool y 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ciconfig GENERIC_LOCKBREAK 3062306a36Sopenharmony_ci def_bool y if PREEMPTION 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ciconfig PGSTE 3362306a36Sopenharmony_ci def_bool y if KVM 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ciconfig AUDIT_ARCH 3662306a36Sopenharmony_ci def_bool y 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ciconfig NO_IOPORT_MAP 3962306a36Sopenharmony_ci def_bool y 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ciconfig PCI_QUIRKS 4262306a36Sopenharmony_ci def_bool n 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ciconfig ARCH_SUPPORTS_UPROBES 4562306a36Sopenharmony_ci def_bool y 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ciconfig KASAN_SHADOW_OFFSET 4862306a36Sopenharmony_ci hex 4962306a36Sopenharmony_ci depends on KASAN 5062306a36Sopenharmony_ci default 0x1C000000000000 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ciconfig S390 5362306a36Sopenharmony_ci def_bool y 5462306a36Sopenharmony_ci # 5562306a36Sopenharmony_ci # Note: keep this list sorted alphabetically 5662306a36Sopenharmony_ci # 5762306a36Sopenharmony_ci imply IMA_SECURE_AND_OR_TRUSTED_BOOT 5862306a36Sopenharmony_ci select ALTERNATE_USER_ADDRESS_SPACE 5962306a36Sopenharmony_ci select ARCH_32BIT_USTAT_F_TINODE 6062306a36Sopenharmony_ci select ARCH_BINFMT_ELF_STATE 6162306a36Sopenharmony_ci select ARCH_CORRECT_STACKTRACE_ON_KRETPROBE 6262306a36Sopenharmony_ci select ARCH_ENABLE_MEMORY_HOTPLUG if SPARSEMEM 6362306a36Sopenharmony_ci select ARCH_ENABLE_MEMORY_HOTREMOVE 6462306a36Sopenharmony_ci select ARCH_ENABLE_SPLIT_PMD_PTLOCK if PGTABLE_LEVELS > 2 6562306a36Sopenharmony_ci select ARCH_HAS_CURRENT_STACK_POINTER 6662306a36Sopenharmony_ci select ARCH_HAS_DEBUG_VM_PGTABLE 6762306a36Sopenharmony_ci select ARCH_HAS_DEBUG_WX 6862306a36Sopenharmony_ci select ARCH_HAS_DEVMEM_IS_ALLOWED 6962306a36Sopenharmony_ci select ARCH_HAS_ELF_RANDOMIZE 7062306a36Sopenharmony_ci select ARCH_HAS_FORCE_DMA_UNENCRYPTED 7162306a36Sopenharmony_ci select ARCH_HAS_FORTIFY_SOURCE 7262306a36Sopenharmony_ci select ARCH_HAS_GCOV_PROFILE_ALL 7362306a36Sopenharmony_ci select ARCH_HAS_GIGANTIC_PAGE 7462306a36Sopenharmony_ci select ARCH_HAS_KCOV 7562306a36Sopenharmony_ci select ARCH_HAS_MEMBARRIER_SYNC_CORE 7662306a36Sopenharmony_ci select ARCH_HAS_MEM_ENCRYPT 7762306a36Sopenharmony_ci select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS 7862306a36Sopenharmony_ci select ARCH_HAS_PTE_SPECIAL 7962306a36Sopenharmony_ci select ARCH_HAS_SCALED_CPUTIME 8062306a36Sopenharmony_ci select ARCH_HAS_SET_DIRECT_MAP 8162306a36Sopenharmony_ci select ARCH_HAS_SET_MEMORY 8262306a36Sopenharmony_ci select ARCH_HAS_STRICT_KERNEL_RWX 8362306a36Sopenharmony_ci select ARCH_HAS_STRICT_MODULE_RWX 8462306a36Sopenharmony_ci select ARCH_HAS_SYSCALL_WRAPPER 8562306a36Sopenharmony_ci select ARCH_HAS_UBSAN_SANITIZE_ALL 8662306a36Sopenharmony_ci select ARCH_HAS_VDSO_DATA 8762306a36Sopenharmony_ci select ARCH_HAVE_NMI_SAFE_CMPXCHG 8862306a36Sopenharmony_ci select ARCH_INLINE_READ_LOCK 8962306a36Sopenharmony_ci select ARCH_INLINE_READ_LOCK_BH 9062306a36Sopenharmony_ci select ARCH_INLINE_READ_LOCK_IRQ 9162306a36Sopenharmony_ci select ARCH_INLINE_READ_LOCK_IRQSAVE 9262306a36Sopenharmony_ci select ARCH_INLINE_READ_TRYLOCK 9362306a36Sopenharmony_ci select ARCH_INLINE_READ_UNLOCK 9462306a36Sopenharmony_ci select ARCH_INLINE_READ_UNLOCK_BH 9562306a36Sopenharmony_ci select ARCH_INLINE_READ_UNLOCK_IRQ 9662306a36Sopenharmony_ci select ARCH_INLINE_READ_UNLOCK_IRQRESTORE 9762306a36Sopenharmony_ci select ARCH_INLINE_SPIN_LOCK 9862306a36Sopenharmony_ci select ARCH_INLINE_SPIN_LOCK_BH 9962306a36Sopenharmony_ci select ARCH_INLINE_SPIN_LOCK_IRQ 10062306a36Sopenharmony_ci select ARCH_INLINE_SPIN_LOCK_IRQSAVE 10162306a36Sopenharmony_ci select ARCH_INLINE_SPIN_TRYLOCK 10262306a36Sopenharmony_ci select ARCH_INLINE_SPIN_TRYLOCK_BH 10362306a36Sopenharmony_ci select ARCH_INLINE_SPIN_UNLOCK 10462306a36Sopenharmony_ci select ARCH_INLINE_SPIN_UNLOCK_BH 10562306a36Sopenharmony_ci select ARCH_INLINE_SPIN_UNLOCK_IRQ 10662306a36Sopenharmony_ci select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE 10762306a36Sopenharmony_ci select ARCH_INLINE_WRITE_LOCK 10862306a36Sopenharmony_ci select ARCH_INLINE_WRITE_LOCK_BH 10962306a36Sopenharmony_ci select ARCH_INLINE_WRITE_LOCK_IRQ 11062306a36Sopenharmony_ci select ARCH_INLINE_WRITE_LOCK_IRQSAVE 11162306a36Sopenharmony_ci select ARCH_INLINE_WRITE_TRYLOCK 11262306a36Sopenharmony_ci select ARCH_INLINE_WRITE_UNLOCK 11362306a36Sopenharmony_ci select ARCH_INLINE_WRITE_UNLOCK_BH 11462306a36Sopenharmony_ci select ARCH_INLINE_WRITE_UNLOCK_IRQ 11562306a36Sopenharmony_ci select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE 11662306a36Sopenharmony_ci select ARCH_STACKWALK 11762306a36Sopenharmony_ci select ARCH_SUPPORTS_ATOMIC_RMW 11862306a36Sopenharmony_ci select ARCH_SUPPORTS_DEBUG_PAGEALLOC 11962306a36Sopenharmony_ci select ARCH_SUPPORTS_HUGETLBFS 12062306a36Sopenharmony_ci select ARCH_SUPPORTS_INT128 if CC_HAS_INT128 && CC_IS_CLANG 12162306a36Sopenharmony_ci select ARCH_SUPPORTS_NUMA_BALANCING 12262306a36Sopenharmony_ci select ARCH_SUPPORTS_PER_VMA_LOCK 12362306a36Sopenharmony_ci select ARCH_USE_BUILTIN_BSWAP 12462306a36Sopenharmony_ci select ARCH_USE_CMPXCHG_LOCKREF 12562306a36Sopenharmony_ci select ARCH_USE_SYM_ANNOTATIONS 12662306a36Sopenharmony_ci select ARCH_WANTS_DYNAMIC_TASK_STRUCT 12762306a36Sopenharmony_ci select ARCH_WANTS_NO_INSTR 12862306a36Sopenharmony_ci select ARCH_WANT_DEFAULT_BPF_JIT 12962306a36Sopenharmony_ci select ARCH_WANT_IPC_PARSE_VERSION 13062306a36Sopenharmony_ci select ARCH_WANT_KERNEL_PMD_MKWRITE 13162306a36Sopenharmony_ci select ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP 13262306a36Sopenharmony_ci select BUILDTIME_TABLE_SORT 13362306a36Sopenharmony_ci select CLONE_BACKWARDS2 13462306a36Sopenharmony_ci select DMA_OPS if PCI 13562306a36Sopenharmony_ci select DYNAMIC_FTRACE if FUNCTION_TRACER 13662306a36Sopenharmony_ci select FUNCTION_ALIGNMENT_8B if CC_IS_GCC 13762306a36Sopenharmony_ci select FUNCTION_ALIGNMENT_16B if !CC_IS_GCC 13862306a36Sopenharmony_ci select GENERIC_ALLOCATOR 13962306a36Sopenharmony_ci select GENERIC_CPU_AUTOPROBE 14062306a36Sopenharmony_ci select GENERIC_CPU_VULNERABILITIES 14162306a36Sopenharmony_ci select GENERIC_ENTRY 14262306a36Sopenharmony_ci select GENERIC_GETTIMEOFDAY 14362306a36Sopenharmony_ci select GENERIC_PTDUMP 14462306a36Sopenharmony_ci select GENERIC_SMP_IDLE_THREAD 14562306a36Sopenharmony_ci select GENERIC_TIME_VSYSCALL 14662306a36Sopenharmony_ci select GENERIC_VDSO_TIME_NS 14762306a36Sopenharmony_ci select GENERIC_IOREMAP if PCI 14862306a36Sopenharmony_ci select HAVE_ALIGNED_STRUCT_PAGE if SLUB 14962306a36Sopenharmony_ci select HAVE_ARCH_AUDITSYSCALL 15062306a36Sopenharmony_ci select HAVE_ARCH_JUMP_LABEL 15162306a36Sopenharmony_ci select HAVE_ARCH_JUMP_LABEL_RELATIVE 15262306a36Sopenharmony_ci select HAVE_ARCH_KASAN 15362306a36Sopenharmony_ci select HAVE_ARCH_KASAN_VMALLOC 15462306a36Sopenharmony_ci select HAVE_ARCH_KCSAN 15562306a36Sopenharmony_ci select HAVE_ARCH_KFENCE 15662306a36Sopenharmony_ci select HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET 15762306a36Sopenharmony_ci select HAVE_ARCH_SECCOMP_FILTER 15862306a36Sopenharmony_ci select HAVE_ARCH_SOFT_DIRTY 15962306a36Sopenharmony_ci select HAVE_ARCH_STACKLEAK 16062306a36Sopenharmony_ci select HAVE_ARCH_TRACEHOOK 16162306a36Sopenharmony_ci select HAVE_ARCH_TRANSPARENT_HUGEPAGE 16262306a36Sopenharmony_ci select HAVE_ARCH_VMAP_STACK 16362306a36Sopenharmony_ci select HAVE_ASM_MODVERSIONS 16462306a36Sopenharmony_ci select HAVE_CMPXCHG_DOUBLE 16562306a36Sopenharmony_ci select HAVE_CMPXCHG_LOCAL 16662306a36Sopenharmony_ci select HAVE_DEBUG_KMEMLEAK 16762306a36Sopenharmony_ci select HAVE_DMA_CONTIGUOUS 16862306a36Sopenharmony_ci select HAVE_DYNAMIC_FTRACE 16962306a36Sopenharmony_ci select HAVE_DYNAMIC_FTRACE_WITH_ARGS 17062306a36Sopenharmony_ci select HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS 17162306a36Sopenharmony_ci select HAVE_DYNAMIC_FTRACE_WITH_REGS 17262306a36Sopenharmony_ci select HAVE_EBPF_JIT if HAVE_MARCH_Z196_FEATURES 17362306a36Sopenharmony_ci select HAVE_EFFICIENT_UNALIGNED_ACCESS 17462306a36Sopenharmony_ci select HAVE_FAST_GUP 17562306a36Sopenharmony_ci select HAVE_FENTRY 17662306a36Sopenharmony_ci select HAVE_FTRACE_MCOUNT_RECORD 17762306a36Sopenharmony_ci select HAVE_FUNCTION_ARG_ACCESS_API 17862306a36Sopenharmony_ci select HAVE_FUNCTION_ERROR_INJECTION 17962306a36Sopenharmony_ci select HAVE_FUNCTION_GRAPH_RETVAL 18062306a36Sopenharmony_ci select HAVE_FUNCTION_GRAPH_TRACER 18162306a36Sopenharmony_ci select HAVE_FUNCTION_TRACER 18262306a36Sopenharmony_ci select HAVE_GCC_PLUGINS 18362306a36Sopenharmony_ci select HAVE_GENERIC_VDSO 18462306a36Sopenharmony_ci select HAVE_IOREMAP_PROT if PCI 18562306a36Sopenharmony_ci select HAVE_KERNEL_BZIP2 18662306a36Sopenharmony_ci select HAVE_KERNEL_GZIP 18762306a36Sopenharmony_ci select HAVE_KERNEL_LZ4 18862306a36Sopenharmony_ci select HAVE_KERNEL_LZMA 18962306a36Sopenharmony_ci select HAVE_KERNEL_LZO 19062306a36Sopenharmony_ci select HAVE_KERNEL_UNCOMPRESSED 19162306a36Sopenharmony_ci select HAVE_KERNEL_XZ 19262306a36Sopenharmony_ci select HAVE_KERNEL_ZSTD 19362306a36Sopenharmony_ci select HAVE_KPROBES 19462306a36Sopenharmony_ci select HAVE_KPROBES_ON_FTRACE 19562306a36Sopenharmony_ci select HAVE_KRETPROBES 19662306a36Sopenharmony_ci select HAVE_KVM 19762306a36Sopenharmony_ci select HAVE_LIVEPATCH 19862306a36Sopenharmony_ci select HAVE_MEMBLOCK_PHYS_MAP 19962306a36Sopenharmony_ci select HAVE_MOD_ARCH_SPECIFIC 20062306a36Sopenharmony_ci select HAVE_NMI 20162306a36Sopenharmony_ci select HAVE_NOP_MCOUNT 20262306a36Sopenharmony_ci select HAVE_PCI 20362306a36Sopenharmony_ci select HAVE_PERF_EVENTS 20462306a36Sopenharmony_ci select HAVE_PERF_REGS 20562306a36Sopenharmony_ci select HAVE_PERF_USER_STACK_DUMP 20662306a36Sopenharmony_ci select HAVE_REGS_AND_STACK_ACCESS_API 20762306a36Sopenharmony_ci select HAVE_RELIABLE_STACKTRACE 20862306a36Sopenharmony_ci select HAVE_RETHOOK 20962306a36Sopenharmony_ci select HAVE_RSEQ 21062306a36Sopenharmony_ci select HAVE_SAMPLE_FTRACE_DIRECT 21162306a36Sopenharmony_ci select HAVE_SAMPLE_FTRACE_DIRECT_MULTI 21262306a36Sopenharmony_ci select HAVE_SETUP_PER_CPU_AREA 21362306a36Sopenharmony_ci select HAVE_SOFTIRQ_ON_OWN_STACK 21462306a36Sopenharmony_ci select HAVE_SYSCALL_TRACEPOINTS 21562306a36Sopenharmony_ci select HAVE_VIRT_CPU_ACCOUNTING 21662306a36Sopenharmony_ci select HAVE_VIRT_CPU_ACCOUNTING_IDLE 21762306a36Sopenharmony_ci select IOMMU_HELPER if PCI 21862306a36Sopenharmony_ci select IOMMU_SUPPORT if PCI 21962306a36Sopenharmony_ci select KEXEC 22062306a36Sopenharmony_ci select MMU_GATHER_MERGE_VMAS 22162306a36Sopenharmony_ci select MMU_GATHER_NO_GATHER 22262306a36Sopenharmony_ci select MMU_GATHER_RCU_TABLE_FREE 22362306a36Sopenharmony_ci select MODULES_USE_ELF_RELA 22462306a36Sopenharmony_ci select NEED_DMA_MAP_STATE if PCI 22562306a36Sopenharmony_ci select NEED_PER_CPU_EMBED_FIRST_CHUNK 22662306a36Sopenharmony_ci select NEED_SG_DMA_LENGTH if PCI 22762306a36Sopenharmony_ci select OLD_SIGACTION 22862306a36Sopenharmony_ci select OLD_SIGSUSPEND3 22962306a36Sopenharmony_ci select PCI_DOMAINS if PCI 23062306a36Sopenharmony_ci select PCI_MSI if PCI 23162306a36Sopenharmony_ci select PCI_MSI_ARCH_FALLBACKS if PCI_MSI 23262306a36Sopenharmony_ci select SPARSE_IRQ 23362306a36Sopenharmony_ci select SWIOTLB 23462306a36Sopenharmony_ci select SYSCTL_EXCEPTION_TRACE 23562306a36Sopenharmony_ci select THREAD_INFO_IN_TASK 23662306a36Sopenharmony_ci select TRACE_IRQFLAGS_SUPPORT 23762306a36Sopenharmony_ci select TTY 23862306a36Sopenharmony_ci select VIRT_CPU_ACCOUNTING 23962306a36Sopenharmony_ci select ZONE_DMA 24062306a36Sopenharmony_ci # Note: keep the above list sorted alphabetically 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ciconfig SCHED_OMIT_FRAME_POINTER 24362306a36Sopenharmony_ci def_bool y 24462306a36Sopenharmony_ci 24562306a36Sopenharmony_ciconfig PGTABLE_LEVELS 24662306a36Sopenharmony_ci int 24762306a36Sopenharmony_ci default 5 24862306a36Sopenharmony_ci 24962306a36Sopenharmony_cisource "kernel/livepatch/Kconfig" 25062306a36Sopenharmony_ci 25162306a36Sopenharmony_ciconfig ARCH_SUPPORTS_KEXEC 25262306a36Sopenharmony_ci def_bool y 25362306a36Sopenharmony_ci 25462306a36Sopenharmony_ciconfig ARCH_SUPPORTS_KEXEC_FILE 25562306a36Sopenharmony_ci def_bool y 25662306a36Sopenharmony_ci 25762306a36Sopenharmony_ciconfig ARCH_SUPPORTS_KEXEC_SIG 25862306a36Sopenharmony_ci def_bool MODULE_SIG_FORMAT 25962306a36Sopenharmony_ci 26062306a36Sopenharmony_ciconfig ARCH_SUPPORTS_KEXEC_PURGATORY 26162306a36Sopenharmony_ci def_bool y 26262306a36Sopenharmony_ci 26362306a36Sopenharmony_ciconfig ARCH_SUPPORTS_CRASH_DUMP 26462306a36Sopenharmony_ci def_bool y 26562306a36Sopenharmony_ci help 26662306a36Sopenharmony_ci Refer to <file:Documentation/arch/s390/zfcpdump.rst> for more details on this. 26762306a36Sopenharmony_ci This option also enables s390 zfcpdump. 26862306a36Sopenharmony_ci See also <file:Documentation/arch/s390/zfcpdump.rst> 26962306a36Sopenharmony_ci 27062306a36Sopenharmony_cimenu "Processor type and features" 27162306a36Sopenharmony_ci 27262306a36Sopenharmony_ciconfig HAVE_MARCH_Z10_FEATURES 27362306a36Sopenharmony_ci def_bool n 27462306a36Sopenharmony_ci 27562306a36Sopenharmony_ciconfig HAVE_MARCH_Z196_FEATURES 27662306a36Sopenharmony_ci def_bool n 27762306a36Sopenharmony_ci select HAVE_MARCH_Z10_FEATURES 27862306a36Sopenharmony_ci 27962306a36Sopenharmony_ciconfig HAVE_MARCH_ZEC12_FEATURES 28062306a36Sopenharmony_ci def_bool n 28162306a36Sopenharmony_ci select HAVE_MARCH_Z196_FEATURES 28262306a36Sopenharmony_ci 28362306a36Sopenharmony_ciconfig HAVE_MARCH_Z13_FEATURES 28462306a36Sopenharmony_ci def_bool n 28562306a36Sopenharmony_ci select HAVE_MARCH_ZEC12_FEATURES 28662306a36Sopenharmony_ci 28762306a36Sopenharmony_ciconfig HAVE_MARCH_Z14_FEATURES 28862306a36Sopenharmony_ci def_bool n 28962306a36Sopenharmony_ci select HAVE_MARCH_Z13_FEATURES 29062306a36Sopenharmony_ci 29162306a36Sopenharmony_ciconfig HAVE_MARCH_Z15_FEATURES 29262306a36Sopenharmony_ci def_bool n 29362306a36Sopenharmony_ci select HAVE_MARCH_Z14_FEATURES 29462306a36Sopenharmony_ci 29562306a36Sopenharmony_ciconfig HAVE_MARCH_Z16_FEATURES 29662306a36Sopenharmony_ci def_bool n 29762306a36Sopenharmony_ci select HAVE_MARCH_Z15_FEATURES 29862306a36Sopenharmony_ci 29962306a36Sopenharmony_cichoice 30062306a36Sopenharmony_ci prompt "Processor type" 30162306a36Sopenharmony_ci default MARCH_Z196 30262306a36Sopenharmony_ci 30362306a36Sopenharmony_ciconfig MARCH_Z10 30462306a36Sopenharmony_ci bool "IBM System z10" 30562306a36Sopenharmony_ci select HAVE_MARCH_Z10_FEATURES 30662306a36Sopenharmony_ci depends on $(cc-option,-march=z10) 30762306a36Sopenharmony_ci help 30862306a36Sopenharmony_ci Select this to enable optimizations for IBM System z10 (2097 and 2098 30962306a36Sopenharmony_ci series). This is the oldest machine generation currently supported. 31062306a36Sopenharmony_ci 31162306a36Sopenharmony_ciconfig MARCH_Z196 31262306a36Sopenharmony_ci bool "IBM zEnterprise 114 and 196" 31362306a36Sopenharmony_ci select HAVE_MARCH_Z196_FEATURES 31462306a36Sopenharmony_ci depends on $(cc-option,-march=z196) 31562306a36Sopenharmony_ci help 31662306a36Sopenharmony_ci Select this to enable optimizations for IBM zEnterprise 114 and 196 31762306a36Sopenharmony_ci (2818 and 2817 series). The kernel will be slightly faster but will 31862306a36Sopenharmony_ci not work on older machines. 31962306a36Sopenharmony_ci 32062306a36Sopenharmony_ciconfig MARCH_ZEC12 32162306a36Sopenharmony_ci bool "IBM zBC12 and zEC12" 32262306a36Sopenharmony_ci select HAVE_MARCH_ZEC12_FEATURES 32362306a36Sopenharmony_ci depends on $(cc-option,-march=zEC12) 32462306a36Sopenharmony_ci help 32562306a36Sopenharmony_ci Select this to enable optimizations for IBM zBC12 and zEC12 (2828 and 32662306a36Sopenharmony_ci 2827 series). The kernel will be slightly faster but will not work on 32762306a36Sopenharmony_ci older machines. 32862306a36Sopenharmony_ci 32962306a36Sopenharmony_ciconfig MARCH_Z13 33062306a36Sopenharmony_ci bool "IBM z13s and z13" 33162306a36Sopenharmony_ci select HAVE_MARCH_Z13_FEATURES 33262306a36Sopenharmony_ci depends on $(cc-option,-march=z13) 33362306a36Sopenharmony_ci help 33462306a36Sopenharmony_ci Select this to enable optimizations for IBM z13s and z13 (2965 and 33562306a36Sopenharmony_ci 2964 series). The kernel will be slightly faster but will not work on 33662306a36Sopenharmony_ci older machines. 33762306a36Sopenharmony_ci 33862306a36Sopenharmony_ciconfig MARCH_Z14 33962306a36Sopenharmony_ci bool "IBM z14 ZR1 and z14" 34062306a36Sopenharmony_ci select HAVE_MARCH_Z14_FEATURES 34162306a36Sopenharmony_ci depends on $(cc-option,-march=z14) 34262306a36Sopenharmony_ci help 34362306a36Sopenharmony_ci Select this to enable optimizations for IBM z14 ZR1 and z14 (3907 34462306a36Sopenharmony_ci and 3906 series). The kernel will be slightly faster but will not 34562306a36Sopenharmony_ci work on older machines. 34662306a36Sopenharmony_ci 34762306a36Sopenharmony_ciconfig MARCH_Z15 34862306a36Sopenharmony_ci bool "IBM z15" 34962306a36Sopenharmony_ci select HAVE_MARCH_Z15_FEATURES 35062306a36Sopenharmony_ci depends on $(cc-option,-march=z15) 35162306a36Sopenharmony_ci help 35262306a36Sopenharmony_ci Select this to enable optimizations for IBM z15 (8562 35362306a36Sopenharmony_ci and 8561 series). The kernel will be slightly faster but will not 35462306a36Sopenharmony_ci work on older machines. 35562306a36Sopenharmony_ci 35662306a36Sopenharmony_ciconfig MARCH_Z16 35762306a36Sopenharmony_ci bool "IBM z16" 35862306a36Sopenharmony_ci select HAVE_MARCH_Z16_FEATURES 35962306a36Sopenharmony_ci depends on $(cc-option,-march=z16) 36062306a36Sopenharmony_ci help 36162306a36Sopenharmony_ci Select this to enable optimizations for IBM z16 (3931 and 36262306a36Sopenharmony_ci 3932 series). 36362306a36Sopenharmony_ci 36462306a36Sopenharmony_ciendchoice 36562306a36Sopenharmony_ci 36662306a36Sopenharmony_ciconfig MARCH_Z10_TUNE 36762306a36Sopenharmony_ci def_bool TUNE_Z10 || MARCH_Z10 && TUNE_DEFAULT 36862306a36Sopenharmony_ci 36962306a36Sopenharmony_ciconfig MARCH_Z196_TUNE 37062306a36Sopenharmony_ci def_bool TUNE_Z196 || MARCH_Z196 && TUNE_DEFAULT 37162306a36Sopenharmony_ci 37262306a36Sopenharmony_ciconfig MARCH_ZEC12_TUNE 37362306a36Sopenharmony_ci def_bool TUNE_ZEC12 || MARCH_ZEC12 && TUNE_DEFAULT 37462306a36Sopenharmony_ci 37562306a36Sopenharmony_ciconfig MARCH_Z13_TUNE 37662306a36Sopenharmony_ci def_bool TUNE_Z13 || MARCH_Z13 && TUNE_DEFAULT 37762306a36Sopenharmony_ci 37862306a36Sopenharmony_ciconfig MARCH_Z14_TUNE 37962306a36Sopenharmony_ci def_bool TUNE_Z14 || MARCH_Z14 && TUNE_DEFAULT 38062306a36Sopenharmony_ci 38162306a36Sopenharmony_ciconfig MARCH_Z15_TUNE 38262306a36Sopenharmony_ci def_bool TUNE_Z15 || MARCH_Z15 && TUNE_DEFAULT 38362306a36Sopenharmony_ci 38462306a36Sopenharmony_ciconfig MARCH_Z16_TUNE 38562306a36Sopenharmony_ci def_bool TUNE_Z16 || MARCH_Z16 && TUNE_DEFAULT 38662306a36Sopenharmony_ci 38762306a36Sopenharmony_cichoice 38862306a36Sopenharmony_ci prompt "Tune code generation" 38962306a36Sopenharmony_ci default TUNE_DEFAULT 39062306a36Sopenharmony_ci help 39162306a36Sopenharmony_ci Cause the compiler to tune (-mtune) the generated code for a machine. 39262306a36Sopenharmony_ci This will make the code run faster on the selected machine but 39362306a36Sopenharmony_ci somewhat slower on other machines. 39462306a36Sopenharmony_ci This option only changes how the compiler emits instructions, not the 39562306a36Sopenharmony_ci selection of instructions itself, so the resulting kernel will run on 39662306a36Sopenharmony_ci all other machines. 39762306a36Sopenharmony_ci 39862306a36Sopenharmony_ciconfig TUNE_DEFAULT 39962306a36Sopenharmony_ci bool "Default" 40062306a36Sopenharmony_ci help 40162306a36Sopenharmony_ci Tune the generated code for the target processor for which the kernel 40262306a36Sopenharmony_ci will be compiled. 40362306a36Sopenharmony_ci 40462306a36Sopenharmony_ciconfig TUNE_Z10 40562306a36Sopenharmony_ci bool "IBM System z10" 40662306a36Sopenharmony_ci 40762306a36Sopenharmony_ciconfig TUNE_Z196 40862306a36Sopenharmony_ci bool "IBM zEnterprise 114 and 196" 40962306a36Sopenharmony_ci depends on $(cc-option,-mtune=z196) 41062306a36Sopenharmony_ci 41162306a36Sopenharmony_ciconfig TUNE_ZEC12 41262306a36Sopenharmony_ci bool "IBM zBC12 and zEC12" 41362306a36Sopenharmony_ci depends on $(cc-option,-mtune=zEC12) 41462306a36Sopenharmony_ci 41562306a36Sopenharmony_ciconfig TUNE_Z13 41662306a36Sopenharmony_ci bool "IBM z13s and z13" 41762306a36Sopenharmony_ci depends on $(cc-option,-mtune=z13) 41862306a36Sopenharmony_ci 41962306a36Sopenharmony_ciconfig TUNE_Z14 42062306a36Sopenharmony_ci bool "IBM z14 ZR1 and z14" 42162306a36Sopenharmony_ci depends on $(cc-option,-mtune=z14) 42262306a36Sopenharmony_ci 42362306a36Sopenharmony_ciconfig TUNE_Z15 42462306a36Sopenharmony_ci bool "IBM z15" 42562306a36Sopenharmony_ci depends on $(cc-option,-mtune=z15) 42662306a36Sopenharmony_ci 42762306a36Sopenharmony_ciconfig TUNE_Z16 42862306a36Sopenharmony_ci bool "IBM z16" 42962306a36Sopenharmony_ci depends on $(cc-option,-mtune=z16) 43062306a36Sopenharmony_ci 43162306a36Sopenharmony_ciendchoice 43262306a36Sopenharmony_ci 43362306a36Sopenharmony_ciconfig 64BIT 43462306a36Sopenharmony_ci def_bool y 43562306a36Sopenharmony_ci 43662306a36Sopenharmony_ciconfig COMMAND_LINE_SIZE 43762306a36Sopenharmony_ci int "Maximum size of kernel command line" 43862306a36Sopenharmony_ci default 4096 43962306a36Sopenharmony_ci range 896 1048576 44062306a36Sopenharmony_ci help 44162306a36Sopenharmony_ci This allows you to specify the maximum length of the kernel command 44262306a36Sopenharmony_ci line. 44362306a36Sopenharmony_ci 44462306a36Sopenharmony_ciconfig COMPAT 44562306a36Sopenharmony_ci def_bool y 44662306a36Sopenharmony_ci prompt "Kernel support for 31 bit emulation" 44762306a36Sopenharmony_ci select ARCH_WANT_OLD_COMPAT_IPC 44862306a36Sopenharmony_ci select COMPAT_OLD_SIGACTION 44962306a36Sopenharmony_ci select HAVE_UID16 45062306a36Sopenharmony_ci depends on MULTIUSER 45162306a36Sopenharmony_ci depends on !CC_IS_CLANG 45262306a36Sopenharmony_ci help 45362306a36Sopenharmony_ci Select this option if you want to enable your system kernel to 45462306a36Sopenharmony_ci handle system-calls from ELF binaries for 31 bit ESA. This option 45562306a36Sopenharmony_ci (and some other stuff like libraries and such) is needed for 45662306a36Sopenharmony_ci executing 31 bit applications. It is safe to say "Y". 45762306a36Sopenharmony_ci 45862306a36Sopenharmony_ciconfig SMP 45962306a36Sopenharmony_ci def_bool y 46062306a36Sopenharmony_ci 46162306a36Sopenharmony_ciconfig NR_CPUS 46262306a36Sopenharmony_ci int "Maximum number of CPUs (2-512)" 46362306a36Sopenharmony_ci range 2 512 46462306a36Sopenharmony_ci default "64" 46562306a36Sopenharmony_ci help 46662306a36Sopenharmony_ci This allows you to specify the maximum number of CPUs which this 46762306a36Sopenharmony_ci kernel will support. The maximum supported value is 512 and the 46862306a36Sopenharmony_ci minimum value which makes sense is 2. 46962306a36Sopenharmony_ci 47062306a36Sopenharmony_ci This is purely to save memory - each supported CPU adds 47162306a36Sopenharmony_ci approximately sixteen kilobytes to the kernel image. 47262306a36Sopenharmony_ci 47362306a36Sopenharmony_ciconfig HOTPLUG_CPU 47462306a36Sopenharmony_ci def_bool y 47562306a36Sopenharmony_ci 47662306a36Sopenharmony_ciconfig NUMA 47762306a36Sopenharmony_ci bool "NUMA support" 47862306a36Sopenharmony_ci depends on SCHED_TOPOLOGY 47962306a36Sopenharmony_ci default n 48062306a36Sopenharmony_ci help 48162306a36Sopenharmony_ci Enable NUMA support 48262306a36Sopenharmony_ci 48362306a36Sopenharmony_ci This option adds NUMA support to the kernel. 48462306a36Sopenharmony_ci 48562306a36Sopenharmony_ciconfig NODES_SHIFT 48662306a36Sopenharmony_ci int 48762306a36Sopenharmony_ci depends on NUMA 48862306a36Sopenharmony_ci default "1" 48962306a36Sopenharmony_ci 49062306a36Sopenharmony_ciconfig SCHED_SMT 49162306a36Sopenharmony_ci def_bool n 49262306a36Sopenharmony_ci 49362306a36Sopenharmony_ciconfig SCHED_MC 49462306a36Sopenharmony_ci def_bool n 49562306a36Sopenharmony_ci 49662306a36Sopenharmony_ciconfig SCHED_TOPOLOGY 49762306a36Sopenharmony_ci def_bool y 49862306a36Sopenharmony_ci prompt "Topology scheduler support" 49962306a36Sopenharmony_ci select SCHED_SMT 50062306a36Sopenharmony_ci select SCHED_MC 50162306a36Sopenharmony_ci help 50262306a36Sopenharmony_ci Topology scheduler support improves the CPU scheduler's decision 50362306a36Sopenharmony_ci making when dealing with machines that have multi-threading, 50462306a36Sopenharmony_ci multiple cores or multiple books. 50562306a36Sopenharmony_ci 50662306a36Sopenharmony_cisource "kernel/Kconfig.hz" 50762306a36Sopenharmony_ci 50862306a36Sopenharmony_ciconfig CERT_STORE 50962306a36Sopenharmony_ci bool "Get user certificates via DIAG320" 51062306a36Sopenharmony_ci depends on KEYS 51162306a36Sopenharmony_ci select CRYPTO_LIB_SHA256 51262306a36Sopenharmony_ci help 51362306a36Sopenharmony_ci Enable this option if you want to access user-provided secure boot 51462306a36Sopenharmony_ci certificates via DIAG 0x320. 51562306a36Sopenharmony_ci 51662306a36Sopenharmony_ci These certificates will be made available via the keyring named 51762306a36Sopenharmony_ci 'cert_store'. 51862306a36Sopenharmony_ci 51962306a36Sopenharmony_ciconfig KERNEL_NOBP 52062306a36Sopenharmony_ci def_bool n 52162306a36Sopenharmony_ci prompt "Enable modified branch prediction for the kernel by default" 52262306a36Sopenharmony_ci help 52362306a36Sopenharmony_ci If this option is selected the kernel will switch to a modified 52462306a36Sopenharmony_ci branch prediction mode if the firmware interface is available. 52562306a36Sopenharmony_ci The modified branch prediction mode improves the behaviour in 52662306a36Sopenharmony_ci regard to speculative execution. 52762306a36Sopenharmony_ci 52862306a36Sopenharmony_ci With the option enabled the kernel parameter "nobp=0" or "nospec" 52962306a36Sopenharmony_ci can be used to run the kernel in the normal branch prediction mode. 53062306a36Sopenharmony_ci 53162306a36Sopenharmony_ci With the option disabled the modified branch prediction mode is 53262306a36Sopenharmony_ci enabled with the "nobp=1" kernel parameter. 53362306a36Sopenharmony_ci 53462306a36Sopenharmony_ci If unsure, say N. 53562306a36Sopenharmony_ci 53662306a36Sopenharmony_ciconfig EXPOLINE 53762306a36Sopenharmony_ci def_bool n 53862306a36Sopenharmony_ci depends on $(cc-option,-mindirect-branch=thunk) 53962306a36Sopenharmony_ci prompt "Avoid speculative indirect branches in the kernel" 54062306a36Sopenharmony_ci help 54162306a36Sopenharmony_ci Compile the kernel with the expoline compiler options to guard 54262306a36Sopenharmony_ci against kernel-to-user data leaks by avoiding speculative indirect 54362306a36Sopenharmony_ci branches. 54462306a36Sopenharmony_ci Requires a compiler with -mindirect-branch=thunk support for full 54562306a36Sopenharmony_ci protection. The kernel may run slower. 54662306a36Sopenharmony_ci 54762306a36Sopenharmony_ci If unsure, say N. 54862306a36Sopenharmony_ci 54962306a36Sopenharmony_ciconfig EXPOLINE_EXTERN 55062306a36Sopenharmony_ci def_bool n 55162306a36Sopenharmony_ci depends on EXPOLINE 55262306a36Sopenharmony_ci depends on CC_IS_GCC && GCC_VERSION >= 110200 55362306a36Sopenharmony_ci depends on $(success,$(srctree)/arch/s390/tools/gcc-thunk-extern.sh $(CC)) 55462306a36Sopenharmony_ci prompt "Generate expolines as extern functions." 55562306a36Sopenharmony_ci help 55662306a36Sopenharmony_ci This option is required for some tooling like kpatch. The kernel is 55762306a36Sopenharmony_ci compiled with -mindirect-branch=thunk-extern and requires a newer 55862306a36Sopenharmony_ci compiler. 55962306a36Sopenharmony_ci 56062306a36Sopenharmony_ci If unsure, say N. 56162306a36Sopenharmony_ci 56262306a36Sopenharmony_cichoice 56362306a36Sopenharmony_ci prompt "Expoline default" 56462306a36Sopenharmony_ci depends on EXPOLINE 56562306a36Sopenharmony_ci default EXPOLINE_FULL 56662306a36Sopenharmony_ci 56762306a36Sopenharmony_ciconfig EXPOLINE_OFF 56862306a36Sopenharmony_ci bool "spectre_v2=off" 56962306a36Sopenharmony_ci 57062306a36Sopenharmony_ciconfig EXPOLINE_AUTO 57162306a36Sopenharmony_ci bool "spectre_v2=auto" 57262306a36Sopenharmony_ci 57362306a36Sopenharmony_ciconfig EXPOLINE_FULL 57462306a36Sopenharmony_ci bool "spectre_v2=on" 57562306a36Sopenharmony_ci 57662306a36Sopenharmony_ciendchoice 57762306a36Sopenharmony_ci 57862306a36Sopenharmony_ciconfig RELOCATABLE 57962306a36Sopenharmony_ci def_bool y 58062306a36Sopenharmony_ci help 58162306a36Sopenharmony_ci This builds a kernel image that retains relocation information 58262306a36Sopenharmony_ci so it can be loaded at an arbitrary address. 58362306a36Sopenharmony_ci The kernel is linked as a position-independent executable (PIE) 58462306a36Sopenharmony_ci and contains dynamic relocations which are processed early in the 58562306a36Sopenharmony_ci bootup process. 58662306a36Sopenharmony_ci The relocations make the kernel image about 15% larger (compressed 58762306a36Sopenharmony_ci 10%), but are discarded at runtime. 58862306a36Sopenharmony_ci Note: this option exists only for documentation purposes, please do 58962306a36Sopenharmony_ci not remove it. 59062306a36Sopenharmony_ci 59162306a36Sopenharmony_ciconfig RANDOMIZE_BASE 59262306a36Sopenharmony_ci bool "Randomize the address of the kernel image (KASLR)" 59362306a36Sopenharmony_ci default y 59462306a36Sopenharmony_ci help 59562306a36Sopenharmony_ci In support of Kernel Address Space Layout Randomization (KASLR), 59662306a36Sopenharmony_ci this randomizes the address at which the kernel image is loaded, 59762306a36Sopenharmony_ci as a security feature that deters exploit attempts relying on 59862306a36Sopenharmony_ci knowledge of the location of kernel internals. 59962306a36Sopenharmony_ci 60062306a36Sopenharmony_ciendmenu 60162306a36Sopenharmony_ci 60262306a36Sopenharmony_cimenu "Memory setup" 60362306a36Sopenharmony_ci 60462306a36Sopenharmony_ciconfig ARCH_SPARSEMEM_ENABLE 60562306a36Sopenharmony_ci def_bool y 60662306a36Sopenharmony_ci select SPARSEMEM_VMEMMAP_ENABLE 60762306a36Sopenharmony_ci select SPARSEMEM_VMEMMAP 60862306a36Sopenharmony_ci 60962306a36Sopenharmony_ciconfig ARCH_SPARSEMEM_DEFAULT 61062306a36Sopenharmony_ci def_bool y 61162306a36Sopenharmony_ci 61262306a36Sopenharmony_ciconfig MAX_PHYSMEM_BITS 61362306a36Sopenharmony_ci int "Maximum size of supported physical memory in bits (42-53)" 61462306a36Sopenharmony_ci range 42 53 61562306a36Sopenharmony_ci default "46" 61662306a36Sopenharmony_ci help 61762306a36Sopenharmony_ci This option specifies the maximum supported size of physical memory 61862306a36Sopenharmony_ci in bits. Supported is any size between 2^42 (4TB) and 2^53 (8PB). 61962306a36Sopenharmony_ci Increasing the number of bits also increases the kernel image size. 62062306a36Sopenharmony_ci By default 46 bits (64TB) are supported. 62162306a36Sopenharmony_ci 62262306a36Sopenharmony_ciconfig CHECK_STACK 62362306a36Sopenharmony_ci def_bool y 62462306a36Sopenharmony_ci depends on !VMAP_STACK 62562306a36Sopenharmony_ci prompt "Detect kernel stack overflow" 62662306a36Sopenharmony_ci help 62762306a36Sopenharmony_ci This option enables the compiler option -mstack-guard and 62862306a36Sopenharmony_ci -mstack-size if they are available. If the compiler supports them 62962306a36Sopenharmony_ci it will emit additional code to each function prolog to trigger 63062306a36Sopenharmony_ci an illegal operation if the kernel stack is about to overflow. 63162306a36Sopenharmony_ci 63262306a36Sopenharmony_ci Say N if you are unsure. 63362306a36Sopenharmony_ci 63462306a36Sopenharmony_ciconfig STACK_GUARD 63562306a36Sopenharmony_ci int "Size of the guard area (128-1024)" 63662306a36Sopenharmony_ci range 128 1024 63762306a36Sopenharmony_ci depends on CHECK_STACK 63862306a36Sopenharmony_ci default "256" 63962306a36Sopenharmony_ci help 64062306a36Sopenharmony_ci This allows you to specify the size of the guard area at the lower 64162306a36Sopenharmony_ci end of the kernel stack. If the kernel stack points into the guard 64262306a36Sopenharmony_ci area on function entry an illegal operation is triggered. The size 64362306a36Sopenharmony_ci needs to be a power of 2. Please keep in mind that the size of an 64462306a36Sopenharmony_ci interrupt frame is 184 bytes for 31 bit and 328 bytes on 64 bit. 64562306a36Sopenharmony_ci The minimum size for the stack guard should be 256 for 31 bit and 64662306a36Sopenharmony_ci 512 for 64 bit. 64762306a36Sopenharmony_ci 64862306a36Sopenharmony_ciendmenu 64962306a36Sopenharmony_ci 65062306a36Sopenharmony_cimenu "I/O subsystem" 65162306a36Sopenharmony_ci 65262306a36Sopenharmony_ciconfig QDIO 65362306a36Sopenharmony_ci def_tristate y 65462306a36Sopenharmony_ci prompt "QDIO support" 65562306a36Sopenharmony_ci help 65662306a36Sopenharmony_ci This driver provides the Queued Direct I/O base support for 65762306a36Sopenharmony_ci IBM System z. 65862306a36Sopenharmony_ci 65962306a36Sopenharmony_ci To compile this driver as a module, choose M here: the 66062306a36Sopenharmony_ci module will be called qdio. 66162306a36Sopenharmony_ci 66262306a36Sopenharmony_ci If unsure, say Y. 66362306a36Sopenharmony_ci 66462306a36Sopenharmony_ciif PCI 66562306a36Sopenharmony_ci 66662306a36Sopenharmony_ciconfig PCI_NR_FUNCTIONS 66762306a36Sopenharmony_ci int "Maximum number of PCI functions (1-4096)" 66862306a36Sopenharmony_ci range 1 4096 66962306a36Sopenharmony_ci default "512" 67062306a36Sopenharmony_ci help 67162306a36Sopenharmony_ci This allows you to specify the maximum number of PCI functions which 67262306a36Sopenharmony_ci this kernel will support. 67362306a36Sopenharmony_ci 67462306a36Sopenharmony_ciendif # PCI 67562306a36Sopenharmony_ci 67662306a36Sopenharmony_ciconfig HAS_IOMEM 67762306a36Sopenharmony_ci def_bool PCI 67862306a36Sopenharmony_ci 67962306a36Sopenharmony_ciconfig CHSC_SCH 68062306a36Sopenharmony_ci def_tristate m 68162306a36Sopenharmony_ci prompt "Support for CHSC subchannels" 68262306a36Sopenharmony_ci help 68362306a36Sopenharmony_ci This driver allows usage of CHSC subchannels. A CHSC subchannel 68462306a36Sopenharmony_ci is usually present on LPAR only. 68562306a36Sopenharmony_ci The driver creates a device /dev/chsc, which may be used to 68662306a36Sopenharmony_ci obtain I/O configuration information about the machine and 68762306a36Sopenharmony_ci to issue asynchronous chsc commands (DANGEROUS). 68862306a36Sopenharmony_ci You will usually only want to use this interface on a special 68962306a36Sopenharmony_ci LPAR designated for system management. 69062306a36Sopenharmony_ci 69162306a36Sopenharmony_ci To compile this driver as a module, choose M here: the 69262306a36Sopenharmony_ci module will be called chsc_sch. 69362306a36Sopenharmony_ci 69462306a36Sopenharmony_ci If unsure, say N. 69562306a36Sopenharmony_ci 69662306a36Sopenharmony_ciconfig SCM_BUS 69762306a36Sopenharmony_ci def_bool y 69862306a36Sopenharmony_ci prompt "SCM bus driver" 69962306a36Sopenharmony_ci help 70062306a36Sopenharmony_ci Bus driver for Storage Class Memory. 70162306a36Sopenharmony_ci 70262306a36Sopenharmony_ciconfig EADM_SCH 70362306a36Sopenharmony_ci def_tristate m 70462306a36Sopenharmony_ci prompt "Support for EADM subchannels" 70562306a36Sopenharmony_ci depends on SCM_BUS 70662306a36Sopenharmony_ci help 70762306a36Sopenharmony_ci This driver allows usage of EADM subchannels. EADM subchannels act 70862306a36Sopenharmony_ci as a communication vehicle for SCM increments. 70962306a36Sopenharmony_ci 71062306a36Sopenharmony_ci To compile this driver as a module, choose M here: the 71162306a36Sopenharmony_ci module will be called eadm_sch. 71262306a36Sopenharmony_ci 71362306a36Sopenharmony_ciconfig VFIO_CCW 71462306a36Sopenharmony_ci def_tristate n 71562306a36Sopenharmony_ci prompt "Support for VFIO-CCW subchannels" 71662306a36Sopenharmony_ci depends on VFIO 71762306a36Sopenharmony_ci select VFIO_MDEV 71862306a36Sopenharmony_ci help 71962306a36Sopenharmony_ci This driver allows usage of I/O subchannels via VFIO-CCW. 72062306a36Sopenharmony_ci 72162306a36Sopenharmony_ci To compile this driver as a module, choose M here: the 72262306a36Sopenharmony_ci module will be called vfio_ccw. 72362306a36Sopenharmony_ci 72462306a36Sopenharmony_ciconfig VFIO_AP 72562306a36Sopenharmony_ci def_tristate n 72662306a36Sopenharmony_ci prompt "VFIO support for AP devices" 72762306a36Sopenharmony_ci depends on KVM 72862306a36Sopenharmony_ci depends on VFIO 72962306a36Sopenharmony_ci depends on ZCRYPT 73062306a36Sopenharmony_ci select VFIO_MDEV 73162306a36Sopenharmony_ci help 73262306a36Sopenharmony_ci This driver grants access to Adjunct Processor (AP) devices 73362306a36Sopenharmony_ci via the VFIO mediated device interface. 73462306a36Sopenharmony_ci 73562306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 73662306a36Sopenharmony_ci will be called vfio_ap. 73762306a36Sopenharmony_ci 73862306a36Sopenharmony_ciendmenu 73962306a36Sopenharmony_ci 74062306a36Sopenharmony_ciconfig CCW 74162306a36Sopenharmony_ci def_bool y 74262306a36Sopenharmony_ci 74362306a36Sopenharmony_ciconfig HAVE_PNETID 74462306a36Sopenharmony_ci tristate 74562306a36Sopenharmony_ci default (SMC || CCWGROUP) 74662306a36Sopenharmony_ci 74762306a36Sopenharmony_cimenu "Virtualization" 74862306a36Sopenharmony_ci 74962306a36Sopenharmony_ciconfig PROTECTED_VIRTUALIZATION_GUEST 75062306a36Sopenharmony_ci def_bool n 75162306a36Sopenharmony_ci prompt "Protected virtualization guest support" 75262306a36Sopenharmony_ci help 75362306a36Sopenharmony_ci Select this option, if you want to be able to run this 75462306a36Sopenharmony_ci kernel as a protected virtualization KVM guest. 75562306a36Sopenharmony_ci Protected virtualization capable machines have a mini hypervisor 75662306a36Sopenharmony_ci located at machine level (an ultravisor). With help of the 75762306a36Sopenharmony_ci Ultravisor, KVM will be able to run "protected" VMs, special 75862306a36Sopenharmony_ci VMs whose memory and management data are unavailable to KVM. 75962306a36Sopenharmony_ci 76062306a36Sopenharmony_ciconfig PFAULT 76162306a36Sopenharmony_ci def_bool y 76262306a36Sopenharmony_ci prompt "Pseudo page fault support" 76362306a36Sopenharmony_ci help 76462306a36Sopenharmony_ci Select this option, if you want to use PFAULT pseudo page fault 76562306a36Sopenharmony_ci handling under VM. If running native or in LPAR, this option 76662306a36Sopenharmony_ci has no effect. If your VM does not support PFAULT, PAGEEX 76762306a36Sopenharmony_ci pseudo page fault handling will be used. 76862306a36Sopenharmony_ci Note that VM 4.2 supports PFAULT but has a bug in its 76962306a36Sopenharmony_ci implementation that causes some problems. 77062306a36Sopenharmony_ci Everybody who wants to run Linux under VM != VM4.2 should select 77162306a36Sopenharmony_ci this option. 77262306a36Sopenharmony_ci 77362306a36Sopenharmony_ciconfig CMM 77462306a36Sopenharmony_ci def_tristate n 77562306a36Sopenharmony_ci prompt "Cooperative memory management" 77662306a36Sopenharmony_ci help 77762306a36Sopenharmony_ci Select this option, if you want to enable the kernel interface 77862306a36Sopenharmony_ci to reduce the memory size of the system. This is accomplished 77962306a36Sopenharmony_ci by allocating pages of memory and put them "on hold". This only 78062306a36Sopenharmony_ci makes sense for a system running under VM where the unused pages 78162306a36Sopenharmony_ci will be reused by VM for other guest systems. The interface 78262306a36Sopenharmony_ci allows an external monitor to balance memory of many systems. 78362306a36Sopenharmony_ci Everybody who wants to run Linux under VM should select this 78462306a36Sopenharmony_ci option. 78562306a36Sopenharmony_ci 78662306a36Sopenharmony_ciconfig CMM_IUCV 78762306a36Sopenharmony_ci def_bool y 78862306a36Sopenharmony_ci prompt "IUCV special message interface to cooperative memory management" 78962306a36Sopenharmony_ci depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV) 79062306a36Sopenharmony_ci help 79162306a36Sopenharmony_ci Select this option to enable the special message interface to 79262306a36Sopenharmony_ci the cooperative memory management. 79362306a36Sopenharmony_ci 79462306a36Sopenharmony_ciconfig APPLDATA_BASE 79562306a36Sopenharmony_ci def_bool n 79662306a36Sopenharmony_ci prompt "Linux - VM Monitor Stream, base infrastructure" 79762306a36Sopenharmony_ci depends on PROC_SYSCTL 79862306a36Sopenharmony_ci help 79962306a36Sopenharmony_ci This provides a kernel interface for creating and updating z/VM APPLDATA 80062306a36Sopenharmony_ci monitor records. The monitor records are updated at certain time 80162306a36Sopenharmony_ci intervals, once the timer is started. 80262306a36Sopenharmony_ci Writing 1 or 0 to /proc/appldata/timer starts(1) or stops(0) the timer, 80362306a36Sopenharmony_ci i.e. enables or disables monitoring on the Linux side. 80462306a36Sopenharmony_ci A custom interval value (in seconds) can be written to 80562306a36Sopenharmony_ci /proc/appldata/interval. 80662306a36Sopenharmony_ci 80762306a36Sopenharmony_ci Defaults are 60 seconds interval and timer off. 80862306a36Sopenharmony_ci The /proc entries can also be read from, showing the current settings. 80962306a36Sopenharmony_ci 81062306a36Sopenharmony_ciconfig APPLDATA_MEM 81162306a36Sopenharmony_ci def_tristate m 81262306a36Sopenharmony_ci prompt "Monitor memory management statistics" 81362306a36Sopenharmony_ci depends on APPLDATA_BASE && VM_EVENT_COUNTERS 81462306a36Sopenharmony_ci help 81562306a36Sopenharmony_ci This provides memory management related data to the Linux - VM Monitor 81662306a36Sopenharmony_ci Stream, like paging/swapping rate, memory utilisation, etc. 81762306a36Sopenharmony_ci Writing 1 or 0 to /proc/appldata/memory creates(1) or removes(0) a z/VM 81862306a36Sopenharmony_ci APPLDATA monitor record, i.e. enables or disables monitoring this record 81962306a36Sopenharmony_ci on the z/VM side. 82062306a36Sopenharmony_ci 82162306a36Sopenharmony_ci Default is disabled. 82262306a36Sopenharmony_ci The /proc entry can also be read from, showing the current settings. 82362306a36Sopenharmony_ci 82462306a36Sopenharmony_ci This can also be compiled as a module, which will be called 82562306a36Sopenharmony_ci appldata_mem.o. 82662306a36Sopenharmony_ci 82762306a36Sopenharmony_ciconfig APPLDATA_OS 82862306a36Sopenharmony_ci def_tristate m 82962306a36Sopenharmony_ci prompt "Monitor OS statistics" 83062306a36Sopenharmony_ci depends on APPLDATA_BASE 83162306a36Sopenharmony_ci help 83262306a36Sopenharmony_ci This provides OS related data to the Linux - VM Monitor Stream, like 83362306a36Sopenharmony_ci CPU utilisation, etc. 83462306a36Sopenharmony_ci Writing 1 or 0 to /proc/appldata/os creates(1) or removes(0) a z/VM 83562306a36Sopenharmony_ci APPLDATA monitor record, i.e. enables or disables monitoring this record 83662306a36Sopenharmony_ci on the z/VM side. 83762306a36Sopenharmony_ci 83862306a36Sopenharmony_ci Default is disabled. 83962306a36Sopenharmony_ci This can also be compiled as a module, which will be called 84062306a36Sopenharmony_ci appldata_os.o. 84162306a36Sopenharmony_ci 84262306a36Sopenharmony_ciconfig APPLDATA_NET_SUM 84362306a36Sopenharmony_ci def_tristate m 84462306a36Sopenharmony_ci prompt "Monitor overall network statistics" 84562306a36Sopenharmony_ci depends on APPLDATA_BASE && NET 84662306a36Sopenharmony_ci help 84762306a36Sopenharmony_ci This provides network related data to the Linux - VM Monitor Stream, 84862306a36Sopenharmony_ci currently there is only a total sum of network I/O statistics, no 84962306a36Sopenharmony_ci per-interface data. 85062306a36Sopenharmony_ci Writing 1 or 0 to /proc/appldata/net_sum creates(1) or removes(0) a z/VM 85162306a36Sopenharmony_ci APPLDATA monitor record, i.e. enables or disables monitoring this record 85262306a36Sopenharmony_ci on the z/VM side. 85362306a36Sopenharmony_ci 85462306a36Sopenharmony_ci Default is disabled. 85562306a36Sopenharmony_ci This can also be compiled as a module, which will be called 85662306a36Sopenharmony_ci appldata_net_sum.o. 85762306a36Sopenharmony_ci 85862306a36Sopenharmony_ciconfig S390_HYPFS 85962306a36Sopenharmony_ci def_bool y 86062306a36Sopenharmony_ci prompt "s390 hypervisor information" 86162306a36Sopenharmony_ci help 86262306a36Sopenharmony_ci This provides several binary files at (debugfs)/s390_hypfs/ to 86362306a36Sopenharmony_ci provide accounting information in an s390 hypervisor environment. 86462306a36Sopenharmony_ci 86562306a36Sopenharmony_ciconfig S390_HYPFS_FS 86662306a36Sopenharmony_ci def_bool n 86762306a36Sopenharmony_ci prompt "s390 hypervisor file system support" 86862306a36Sopenharmony_ci select SYS_HYPERVISOR 86962306a36Sopenharmony_ci depends on S390_HYPFS 87062306a36Sopenharmony_ci help 87162306a36Sopenharmony_ci This is a virtual file system intended to provide accounting 87262306a36Sopenharmony_ci information in an s390 hypervisor environment. This file system 87362306a36Sopenharmony_ci is deprecated and should not be used. 87462306a36Sopenharmony_ci 87562306a36Sopenharmony_ci Say N if you are unsure. 87662306a36Sopenharmony_ci 87762306a36Sopenharmony_cisource "arch/s390/kvm/Kconfig" 87862306a36Sopenharmony_ci 87962306a36Sopenharmony_ciconfig S390_GUEST 88062306a36Sopenharmony_ci def_bool y 88162306a36Sopenharmony_ci prompt "s390 support for virtio devices" 88262306a36Sopenharmony_ci select TTY 88362306a36Sopenharmony_ci select VIRTUALIZATION 88462306a36Sopenharmony_ci select VIRTIO 88562306a36Sopenharmony_ci help 88662306a36Sopenharmony_ci Enabling this option adds support for virtio based paravirtual device 88762306a36Sopenharmony_ci drivers on s390. 88862306a36Sopenharmony_ci 88962306a36Sopenharmony_ci Select this option if you want to run the kernel as a guest under 89062306a36Sopenharmony_ci the KVM hypervisor. 89162306a36Sopenharmony_ci 89262306a36Sopenharmony_ciendmenu 89362306a36Sopenharmony_ci 89462306a36Sopenharmony_ciconfig S390_MODULES_SANITY_TEST_HELPERS 89562306a36Sopenharmony_ci def_bool n 89662306a36Sopenharmony_ci 89762306a36Sopenharmony_cimenu "Selftests" 89862306a36Sopenharmony_ci 89962306a36Sopenharmony_ciconfig S390_UNWIND_SELFTEST 90062306a36Sopenharmony_ci def_tristate n 90162306a36Sopenharmony_ci depends on KUNIT 90262306a36Sopenharmony_ci default KUNIT_ALL_TESTS 90362306a36Sopenharmony_ci prompt "Test unwind functions" 90462306a36Sopenharmony_ci help 90562306a36Sopenharmony_ci This option enables s390 specific stack unwinder testing kernel 90662306a36Sopenharmony_ci module. This option is not useful for distributions or general 90762306a36Sopenharmony_ci kernels, but only for kernel developers working on architecture code. 90862306a36Sopenharmony_ci 90962306a36Sopenharmony_ci Say N if you are unsure. 91062306a36Sopenharmony_ci 91162306a36Sopenharmony_ciconfig S390_KPROBES_SANITY_TEST 91262306a36Sopenharmony_ci def_tristate n 91362306a36Sopenharmony_ci prompt "Enable s390 specific kprobes tests" 91462306a36Sopenharmony_ci depends on KPROBES 91562306a36Sopenharmony_ci depends on KUNIT 91662306a36Sopenharmony_ci help 91762306a36Sopenharmony_ci This option enables an s390 specific kprobes test module. This option 91862306a36Sopenharmony_ci is not useful for distributions or general kernels, but only for kernel 91962306a36Sopenharmony_ci developers working on architecture code. 92062306a36Sopenharmony_ci 92162306a36Sopenharmony_ci Say N if you are unsure. 92262306a36Sopenharmony_ci 92362306a36Sopenharmony_ciconfig S390_MODULES_SANITY_TEST 92462306a36Sopenharmony_ci def_tristate n 92562306a36Sopenharmony_ci depends on KUNIT 92662306a36Sopenharmony_ci default KUNIT_ALL_TESTS 92762306a36Sopenharmony_ci prompt "Enable s390 specific modules tests" 92862306a36Sopenharmony_ci select S390_MODULES_SANITY_TEST_HELPERS 92962306a36Sopenharmony_ci help 93062306a36Sopenharmony_ci This option enables an s390 specific modules test. This option is 93162306a36Sopenharmony_ci not useful for distributions or general kernels, but only for 93262306a36Sopenharmony_ci kernel developers working on architecture code. 93362306a36Sopenharmony_ci 93462306a36Sopenharmony_ci Say N if you are unsure. 93562306a36Sopenharmony_ciendmenu 936