162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# This Kconfig describes xen options 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciconfig XEN 762306a36Sopenharmony_ci bool "Xen guest support" 862306a36Sopenharmony_ci depends on PARAVIRT 962306a36Sopenharmony_ci select PARAVIRT_CLOCK 1062306a36Sopenharmony_ci select X86_HV_CALLBACK_VECTOR 1162306a36Sopenharmony_ci depends on X86_64 || (X86_32 && X86_PAE) 1262306a36Sopenharmony_ci depends on X86_64 || (X86_GENERIC || MPENTIUM4 || MCORE2 || MATOM || MK8) 1362306a36Sopenharmony_ci depends on X86_LOCAL_APIC && X86_TSC 1462306a36Sopenharmony_ci help 1562306a36Sopenharmony_ci This is the Linux Xen port. Enabling this will allow the 1662306a36Sopenharmony_ci kernel to boot in a paravirtualized environment under the 1762306a36Sopenharmony_ci Xen hypervisor. 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ciconfig XEN_PV 2062306a36Sopenharmony_ci bool "Xen PV guest support" 2162306a36Sopenharmony_ci default y 2262306a36Sopenharmony_ci depends on XEN 2362306a36Sopenharmony_ci depends on X86_64 2462306a36Sopenharmony_ci select PARAVIRT_XXL 2562306a36Sopenharmony_ci select XEN_HAVE_PVMMU 2662306a36Sopenharmony_ci select XEN_HAVE_VPMU 2762306a36Sopenharmony_ci select GUEST_PERF_EVENTS 2862306a36Sopenharmony_ci help 2962306a36Sopenharmony_ci Support running as a Xen PV guest. 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ciconfig XEN_512GB 3262306a36Sopenharmony_ci bool "Limit Xen pv-domain memory to 512GB" 3362306a36Sopenharmony_ci depends on XEN_PV 3462306a36Sopenharmony_ci default y 3562306a36Sopenharmony_ci help 3662306a36Sopenharmony_ci Limit paravirtualized user domains to 512GB of RAM. 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci The Xen tools and crash dump analysis tools might not support 3962306a36Sopenharmony_ci pv-domains with more than 512 GB of RAM. This option controls the 4062306a36Sopenharmony_ci default setting of the kernel to use only up to 512 GB or more. 4162306a36Sopenharmony_ci It is always possible to change the default via specifying the 4262306a36Sopenharmony_ci boot parameter "xen_512gb_limit". 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ciconfig XEN_PV_SMP 4562306a36Sopenharmony_ci def_bool y 4662306a36Sopenharmony_ci depends on XEN_PV && SMP 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ciconfig XEN_PV_DOM0 4962306a36Sopenharmony_ci def_bool y 5062306a36Sopenharmony_ci depends on XEN_PV && XEN_DOM0 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ciconfig XEN_PVHVM 5362306a36Sopenharmony_ci def_bool y 5462306a36Sopenharmony_ci depends on XEN && X86_LOCAL_APIC 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ciconfig XEN_PVHVM_SMP 5762306a36Sopenharmony_ci def_bool y 5862306a36Sopenharmony_ci depends on XEN_PVHVM && SMP 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ciconfig XEN_PVHVM_GUEST 6162306a36Sopenharmony_ci bool "Xen PVHVM guest support" 6262306a36Sopenharmony_ci default y 6362306a36Sopenharmony_ci depends on XEN_PVHVM && PCI 6462306a36Sopenharmony_ci help 6562306a36Sopenharmony_ci Support running as a Xen PVHVM guest. 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ciconfig XEN_SAVE_RESTORE 6862306a36Sopenharmony_ci bool 6962306a36Sopenharmony_ci depends on XEN 7062306a36Sopenharmony_ci select HIBERNATE_CALLBACKS 7162306a36Sopenharmony_ci default y 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ciconfig XEN_DEBUG_FS 7462306a36Sopenharmony_ci bool "Enable Xen debug and tuning parameters in debugfs" 7562306a36Sopenharmony_ci depends on XEN && DEBUG_FS 7662306a36Sopenharmony_ci help 7762306a36Sopenharmony_ci Enable statistics output and various tuning options in debugfs. 7862306a36Sopenharmony_ci Enabling this option may incur a significant performance overhead. 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ciconfig XEN_PVH 8162306a36Sopenharmony_ci bool "Xen PVH guest support" 8262306a36Sopenharmony_ci depends on XEN && XEN_PVHVM && ACPI 8362306a36Sopenharmony_ci select PVH 8462306a36Sopenharmony_ci def_bool n 8562306a36Sopenharmony_ci help 8662306a36Sopenharmony_ci Support for running as a Xen PVH guest. 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ciconfig XEN_DOM0 8962306a36Sopenharmony_ci bool "Xen Dom0 support" 9062306a36Sopenharmony_ci default XEN_PV 9162306a36Sopenharmony_ci depends on (XEN_PV && SWIOTLB_XEN) || (XEN_PVH && X86_64) 9262306a36Sopenharmony_ci depends on X86_IO_APIC && ACPI && PCI 9362306a36Sopenharmony_ci select X86_X2APIC if XEN_PVH && X86_64 9462306a36Sopenharmony_ci help 9562306a36Sopenharmony_ci Support running as a Xen Dom0 guest. 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ciconfig XEN_PV_MSR_SAFE 9862306a36Sopenharmony_ci bool "Always use safe MSR accesses in PV guests" 9962306a36Sopenharmony_ci default y 10062306a36Sopenharmony_ci depends on XEN_PV 10162306a36Sopenharmony_ci help 10262306a36Sopenharmony_ci Use safe (not faulting) MSR access functions even if the MSR access 10362306a36Sopenharmony_ci should not fault anyway. 10462306a36Sopenharmony_ci The default can be changed by using the "xen_msr_safe" boot parameter. 105