Kconfig dependencies for arm64 guests on Hyper-V require that be
ACPI enabled, and limit VTL mode to x86/x64. To enable VTL mode
on arm64 as well, update the dependencies. Since VTL mode requires
DeviceTree instead of ACPI, don’t require arm64 guests on Hyper-V
to have ACPI unconditionally.

Signed-off-by: Roman Kisel <rom...@linux.microsoft.com>
---
 drivers/hv/Kconfig | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/hv/Kconfig b/drivers/hv/Kconfig
index 862c47b191af..db9912ef96a8 100644
--- a/drivers/hv/Kconfig
+++ b/drivers/hv/Kconfig
@@ -5,18 +5,20 @@ menu "Microsoft Hyper-V guest support"
 config HYPERV
        tristate "Microsoft Hyper-V client drivers"
        depends on (X86 && X86_LOCAL_APIC && HYPERVISOR_GUEST) \
-               || (ACPI && ARM64 && !CPU_BIG_ENDIAN)
+               || (ARM64 && !CPU_BIG_ENDIAN)
+       depends on (ACPI || HYPERV_VTL_MODE)
        select PARAVIRT
        select X86_HV_CALLBACK_VECTOR if X86
-       select OF_EARLY_FLATTREE if OF
        help
          Select this option to run Linux as a Hyper-V client operating
          system.
 
 config HYPERV_VTL_MODE
        bool "Enable Linux to boot in VTL context"
-       depends on X86_64 && HYPERV
+       depends on (X86 || ARM64)
        depends on SMP
+       select OF_EARLY_FLATTREE
+       select OF
        default n
        help
          Virtual Secure Mode (VSM) is a set of hypervisor capabilities and
@@ -31,7 +33,7 @@ config HYPERV_VTL_MODE
 
          Select this option to build a Linux kernel to run at a VTL other than
          the normal VTL0, which currently is only VTL2.  This option
-         initializes the x86 platform for VTL2, and adds the ability to boot
+         initializes the kernel to run in VTL2, and adds the ability to boot
          secondary CPUs directly into 64-bit context as required for VTLs other
          than 0.  A kernel built with this option must run at VTL2, and will
          not run as a normal guest.
-- 
2.43.0


Reply via email to