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 16d01b9a9fSSaurabh Sengarconfig HYPERV_VTL_MODE 17d01b9a9fSSaurabh Sengar bool "Enable Linux to boot in VTL context" 18d01b9a9fSSaurabh Sengar depends on X86_64 && HYPERV 19*3d6af30fSSaurabh Sengar depends on SMP 20d01b9a9fSSaurabh Sengar default n 21d01b9a9fSSaurabh Sengar help 22d01b9a9fSSaurabh Sengar Virtual Secure Mode (VSM) is a set of hypervisor capabilities and 23d01b9a9fSSaurabh Sengar enlightenments offered to host and guest partitions which enables 24d01b9a9fSSaurabh Sengar the creation and management of new security boundaries within 25d01b9a9fSSaurabh Sengar operating system software. 26d01b9a9fSSaurabh Sengar 27d01b9a9fSSaurabh Sengar VSM achieves and maintains isolation through Virtual Trust Levels 28d01b9a9fSSaurabh Sengar (VTLs). Virtual Trust Levels are hierarchical, with higher levels 29d01b9a9fSSaurabh Sengar being more privileged than lower levels. VTL0 is the least privileged 30d01b9a9fSSaurabh Sengar level, and currently only other level supported is VTL2. 31d01b9a9fSSaurabh Sengar 32d01b9a9fSSaurabh Sengar Select this option to build a Linux kernel to run at a VTL other than 33d01b9a9fSSaurabh Sengar the normal VTL0, which currently is only VTL2. This option 34d01b9a9fSSaurabh Sengar initializes the x86 platform for VTL2, and adds the ability to boot 35d01b9a9fSSaurabh Sengar secondary CPUs directly into 64-bit context as required for VTLs other 36d01b9a9fSSaurabh Sengar than 0. A kernel built with this option must run at VTL2, and will 37d01b9a9fSSaurabh Sengar not run as a normal guest. 38d01b9a9fSSaurabh Sengar 39d01b9a9fSSaurabh Sengar If unsure, say N 40d01b9a9fSSaurabh Sengar 41fd1fea68SMichael Kelleyconfig HYPERV_TIMER 427aff79e2SMichael Kelley def_bool HYPERV && X86 43fd1fea68SMichael Kelley 4446a97191SGreg Kroah-Hartmanconfig HYPERV_UTILS 4546a97191SGreg Kroah-Hartman tristate "Microsoft Hyper-V Utilities driver" 4646a97191SGreg Kroah-Hartman depends on HYPERV && CONNECTOR && NLS 471dc2f2b8SRandy Dunlap depends on PTP_1588_CLOCK_OPTIONAL 4846a97191SGreg Kroah-Hartman help 4946a97191SGreg Kroah-Hartman Select this option to enable the Hyper-V Utilities. 5046a97191SGreg Kroah-Hartman 519aa8b50bSK. Y. Srinivasanconfig HYPERV_BALLOON 529aa8b50bSK. Y. Srinivasan tristate "Microsoft Hyper-V Balloon driver" 539aa8b50bSK. Y. Srinivasan depends on HYPERV 546dc2a774SSunil Muthuswamy select PAGE_REPORTING 559aa8b50bSK. Y. Srinivasan help 569aa8b50bSK. Y. Srinivasan Select this option to enable Hyper-V Balloon driver. 579aa8b50bSK. Y. Srinivasan 58124a6b4cSBart Van Asscheendmenu 59