# SPDX-License-Identifier: GPL-2.0
# KVM common configuration items and defaults

config HAVE_KVM
       bool

config HAVE_KVM_PFNCACHE
       bool

config HAVE_KVM_IRQCHIP
       bool

config HAVE_KVM_IRQFD
       bool

config HAVE_KVM_IRQ_ROUTING
       bool

config HAVE_KVM_DIRTY_RING
       bool

# Only strongly ordered architectures can select this, as it doesn't
# put any explicit constraint on userspace ordering. They can also
# select the _ACQ_REL version.
config HAVE_KVM_DIRTY_RING_TSO
       bool
       select HAVE_KVM_DIRTY_RING
       depends on X86

# Weakly ordered architectures can only select this, advertising
# to userspace the additional ordering requirements.
config HAVE_KVM_DIRTY_RING_ACQ_REL
       bool
       select HAVE_KVM_DIRTY_RING

# Allow enabling both the dirty bitmap and dirty ring. Only architectures
# that need to dirty memory outside of a vCPU context should select this.
config NEED_KVM_DIRTY_RING_WITH_BITMAP
	bool
	depends on HAVE_KVM_DIRTY_RING

config HAVE_KVM_EVENTFD
       bool
       select EVENTFD

config KVM_MMIO
       bool

config KVM_ASYNC_PF
       bool

# Toggle to switch between direct notification and batch job
config KVM_ASYNC_PF_SYNC
       bool

config HAVE_KVM_MSI
       bool

config HAVE_KVM_CPU_RELAX_INTERCEPT
       bool

config KVM_VFIO
       bool

config HAVE_KVM_INVALID_WAKEUPS
       bool

config KVM_GENERIC_DIRTYLOG_READ_PROTECT
       bool

config KVM_COMPAT
       def_bool y
       depends on KVM && COMPAT && !(S390 || ARM64 || RISCV)

config HAVE_KVM_IRQ_BYPASS
       bool

config HAVE_KVM_VCPU_ASYNC_IOCTL
       bool

config HAVE_KVM_VCPU_RUN_PID_CHANGE
       bool

config HAVE_KVM_NO_POLL
       bool

config KVM_XFER_TO_GUEST_WORK
       bool

config HAVE_KVM_PM_NOTIFIER
       bool

config KVM_GENERIC_HARDWARE_ENABLING
       bool
