145ea83f0SStephen Hemminger# SPDX-License-Identifier: GPL-2.0 245ea83f0SStephen Hemminger 3124a6b4cSBart Van Asschemenu "Microsoft Hyper-V guest support" 4124a6b4cSBart Van Assche 546a97191SGreg Kroah-Hartmanconfig HYPERV 646a97191SGreg Kroah-Hartman tristate "Microsoft Hyper-V client drivers" 7f83705a5SSaurabh Sengar depends on (X86 && X86_LOCAL_APIC && HYPERVISOR_GUEST) \ 8f83705a5SSaurabh Sengar || (ACPI && ARM64 && !CPU_BIG_ENDIAN) 92ffd9e33SVitaly Kuznetsov select PARAVIRT 107aff79e2SMichael Kelley select X86_HV_CALLBACK_VECTOR if X86 11f83705a5SSaurabh Sengar select OF_EARLY_FLATTREE if OF 1246a97191SGreg Kroah-Hartman help 1346a97191SGreg Kroah-Hartman Select this option to run Linux as a Hyper-V client operating 1446a97191SGreg Kroah-Hartman system. 1546a97191SGreg Kroah-Hartman 16*d01b9a9fSSaurabh Sengarconfig HYPERV_VTL_MODE 17*d01b9a9fSSaurabh Sengar bool "Enable Linux to boot in VTL context" 18*d01b9a9fSSaurabh Sengar depends on X86_64 && HYPERV 19*d01b9a9fSSaurabh Sengar default n 20*d01b9a9fSSaurabh Sengar help 21*d01b9a9fSSaurabh Sengar Virtual Secure Mode (VSM) is a set of hypervisor capabilities and 22*d01b9a9fSSaurabh Sengar enlightenments offered to host and guest partitions which enables 23*d01b9a9fSSaurabh Sengar the creation and management of new security boundaries within 24*d01b9a9fSSaurabh Sengar operating system software. 25*d01b9a9fSSaurabh Sengar 26*d01b9a9fSSaurabh Sengar VSM achieves and maintains isolation through Virtual Trust Levels 27*d01b9a9fSSaurabh Sengar (VTLs). Virtual Trust Levels are hierarchical, with higher levels 28*d01b9a9fSSaurabh Sengar being more privileged than lower levels. VTL0 is the least privileged 29*d01b9a9fSSaurabh Sengar level, and currently only other level supported is VTL2. 30*d01b9a9fSSaurabh Sengar 31*d01b9a9fSSaurabh Sengar Select this option to build a Linux kernel to run at a VTL other than 32*d01b9a9fSSaurabh Sengar the normal VTL0, which currently is only VTL2. This option 33*d01b9a9fSSaurabh Sengar initializes the x86 platform for VTL2, and adds the ability to boot 34*d01b9a9fSSaurabh Sengar secondary CPUs directly into 64-bit context as required for VTLs other 35*d01b9a9fSSaurabh Sengar than 0. A kernel built with this option must run at VTL2, and will 36*d01b9a9fSSaurabh Sengar not run as a normal guest. 37*d01b9a9fSSaurabh Sengar 38*d01b9a9fSSaurabh Sengar If unsure, say N 39*d01b9a9fSSaurabh Sengar 40fd1fea68SMichael Kelleyconfig HYPERV_TIMER 417aff79e2SMichael Kelley def_bool HYPERV && X86 42fd1fea68SMichael Kelley 4346a97191SGreg Kroah-Hartmanconfig HYPERV_UTILS 4446a97191SGreg Kroah-Hartman tristate "Microsoft Hyper-V Utilities driver" 4546a97191SGreg Kroah-Hartman depends on HYPERV && CONNECTOR && NLS 461dc2f2b8SRandy Dunlap depends on PTP_1588_CLOCK_OPTIONAL 4746a97191SGreg Kroah-Hartman help 4846a97191SGreg Kroah-Hartman Select this option to enable the Hyper-V Utilities. 4946a97191SGreg Kroah-Hartman 509aa8b50bSK. Y. Srinivasanconfig HYPERV_BALLOON 519aa8b50bSK. Y. Srinivasan tristate "Microsoft Hyper-V Balloon driver" 529aa8b50bSK. Y. Srinivasan depends on HYPERV 536dc2a774SSunil Muthuswamy select PAGE_REPORTING 549aa8b50bSK. Y. Srinivasan help 559aa8b50bSK. Y. Srinivasan Select this option to enable Hyper-V Balloon driver. 569aa8b50bSK. Y. Srinivasan 57124a6b4cSBart Van Asscheendmenu 58