# SPDX-License-Identifier: GPL-2.0
config DRM_VMWGFX
	tristate "DRM driver for VMware Virtual GPU"
	depends on DRM && PCI && MMU
	depends on X86 || ARM64
	select DRM_TTM
	select MAPPING_DIRTY_HELPERS
	# Only needed for the transitional use of drm_crtc_init - can be removed
	# again once vmwgfx sets up the primary plane itself.
	select DRM_KMS_HELPER
	help
	  Choose this option if you would like to run 3D acceleration
	  in a VMware virtual machine.
	  This is a KMS enabled DRM driver for the VMware SVGA2
	  virtual hardware.
	  The compiled module will be called "vmwgfx.ko".

config DRM_VMWGFX_FBCON
	depends on DRM_VMWGFX && DRM_FBDEV_EMULATION
	bool "Enable framebuffer console under vmwgfx by default"
	help
	   Choose this option if you are shipping a new vmwgfx
	   userspace driver that supports using the kernel driver.

config DRM_VMWGFX_MKSSTATS
	bool "Enable mksGuestStats instrumentation of vmwgfx by default"
	depends on DRM_VMWGFX
	depends on X86
	default n
	help
	   Choose this option to instrument the kernel driver for mksGuestStats.

