Commit 94b04355 authored by Mukesh Rathor's avatar Mukesh Rathor Committed by Wei Liu
Browse files

Drivers: hv: Add CONFIG_HYPERV_VMBUS option



At present VMBus driver is hinged off of CONFIG_HYPERV which entails
lot of builtin code and encompasses too much. It's not always clear
what depends on builtin hv code and what depends on VMBus. Setting
CONFIG_HYPERV as a module and fudging the Makefile to switch to builtin
adds even more confusion. VMBus is an independent module and should have
its own config option. Also, there are scenarios like baremetal dom0/root
where support is built in with CONFIG_HYPERV but without VMBus. Lastly,
there are more features coming down that use CONFIG_HYPERV and add more
dependencies on it.

So, create a fine grained HYPERV_VMBUS option and update Kconfigs for
dependency on VMBus.

Signed-off-by: default avatarMukesh Rathor <mrathor@linux.microsoft.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>	# drivers/pci
Signed-off-by: default avatarWei Liu <wei.liu@kernel.org>
parent a3a4d6cb
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -398,7 +398,7 @@ source "drivers/gpu/drm/imagination/Kconfig"

config DRM_HYPERV
	tristate "DRM Support for Hyper-V synthetic video device"
	depends on DRM && PCI && HYPERV
	depends on DRM && PCI && HYPERV_VMBUS
	select DRM_CLIENT_SELECTION
	select DRM_KMS_HELPER
	select DRM_GEM_SHMEM_HELPER
+1 −1
Original line number Diff line number Diff line
@@ -1162,7 +1162,7 @@ config GREENASIA_FF

config HID_HYPERV_MOUSE
	tristate "Microsoft Hyper-V mouse driver"
	depends on HYPERV
	depends on HYPERV_VMBUS
	help
	Select this option to enable the Hyper-V mouse driver.

+9 −2
Original line number Diff line number Diff line
@@ -45,18 +45,25 @@ config HYPERV_TIMER

config HYPERV_UTILS
	tristate "Microsoft Hyper-V Utilities driver"
	depends on HYPERV && CONNECTOR && NLS
	depends on HYPERV_VMBUS && CONNECTOR && NLS
	depends on PTP_1588_CLOCK_OPTIONAL
	help
	  Select this option to enable the Hyper-V Utilities.

config HYPERV_BALLOON
	tristate "Microsoft Hyper-V Balloon driver"
	depends on HYPERV
	depends on HYPERV_VMBUS
	select PAGE_REPORTING
	help
	  Select this option to enable Hyper-V Balloon driver.

config HYPERV_VMBUS
	tristate "Microsoft Hyper-V VMBus driver"
	depends on HYPERV
	default HYPERV
	help
	  Select this option to enable Hyper-V Vmbus driver.

config MSHV_ROOT
	tristate "Microsoft Hyper-V root partition support"
	depends on HYPERV && (X86_64 || ARM64)
+1 −1
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
obj-$(CONFIG_HYPERV)		+= hv_vmbus.o
obj-$(CONFIG_HYPERV_VMBUS)	+= hv_vmbus.o
obj-$(CONFIG_HYPERV_UTILS)	+= hv_utils.o
obj-$(CONFIG_HYPERV_BALLOON)	+= hv_balloon.o
obj-$(CONFIG_MSHV_ROOT)		+= mshv_root.o
+2 −2
Original line number Diff line number Diff line
@@ -276,8 +276,8 @@ config SERIO_OLPC_APSP

config HYPERV_KEYBOARD
	tristate "Microsoft Synthetic Keyboard driver"
	depends on HYPERV
	default HYPERV
	depends on HYPERV_VMBUS
	default HYPERV_VMBUS
	help
	  Select this option to enable the Hyper-V Keyboard driver.

Loading