# SPDX-License-Identifier: GPL-2.0
config UML
	bool
	default y
	select ARCH_HAS_KCOV
	select HAVE_ARCH_AUDITSYSCALL
	select HAVE_ARCH_SECCOMP_FILTER
	select HAVE_UID16
	select HAVE_FUTEX_CMPXCHG if FUTEX
	select HAVE_DEBUG_KMEMLEAK
	select GENERIC_IRQ_SHOW
	select GENERIC_CPU_DEVICES
	select GENERIC_CLOCKEVENTS
	select HAVE_GCC_PLUGINS
	select TTY # Needed for line.c

config MMU
	bool
	default y

config NO_IOMEM
	bool
	default y if !TEST

config HAS_IOMEM
	bool "Turns on fake IOMEM support for KUnit"
	depends on TEST
	select MOCK_IOMEM

config ISA
	bool

config SBUS
	bool

config PCI
	bool

config PCMCIA
	bool

config TRACE_IRQFLAGS_SUPPORT
	bool
	default y

config LOCKDEP_SUPPORT
	bool
	default y

config STACKTRACE_SUPPORT
	bool
	default y
	select STACKTRACE

config GENERIC_CALIBRATE_DELAY
	bool
	default y

config HZ
	int
	default 100

config SUBARCH
	string
	option env="SUBARCH"

config NR_CPUS
	int
	range 1 1
	default 1
