root/include/xen/interface/features.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 /******************************************************************************
   3  * features.h
   4  *
   5  * Feature flags, reported by XENVER_get_features.
   6  *
   7  * Copyright (c) 2006, Keir Fraser <keir@xensource.com>
   8  */
   9 
  10 #ifndef __XEN_PUBLIC_FEATURES_H__
  11 #define __XEN_PUBLIC_FEATURES_H__
  12 
  13 /*
  14  * If set, the guest does not need to write-protect its pagetables, and can
  15  * update them via direct writes.
  16  */
  17 #define XENFEAT_writable_page_tables       0
  18 
  19 /*
  20  * If set, the guest does not need to write-protect its segment descriptor
  21  * tables, and can update them via direct writes.
  22  */
  23 #define XENFEAT_writable_descriptor_tables 1
  24 
  25 /*
  26  * If set, translation between the guest's 'pseudo-physical' address space
  27  * and the host's machine address space are handled by the hypervisor. In this
  28  * mode the guest does not need to perform phys-to/from-machine translations
  29  * when performing page table operations.
  30  */
  31 #define XENFEAT_auto_translated_physmap    2
  32 
  33 /* If set, the guest is running in supervisor mode (e.g., x86 ring 0). */
  34 #define XENFEAT_supervisor_mode_kernel     3
  35 
  36 /*
  37  * If set, the guest does not need to allocate x86 PAE page directories
  38  * below 4GB. This flag is usually implied by auto_translated_physmap.
  39  */
  40 #define XENFEAT_pae_pgdir_above_4gb        4
  41 
  42 /* x86: Does this Xen host support the MMU_PT_UPDATE_PRESERVE_AD hypercall? */
  43 #define XENFEAT_mmu_pt_update_preserve_ad  5
  44 
  45 /* x86: Does this Xen host support the MMU_{CLEAR,COPY}_PAGE hypercall? */
  46 #define XENFEAT_highmem_assist             6
  47 
  48 /*
  49  * If set, GNTTABOP_map_grant_ref honors flags to be placed into guest kernel
  50  * available pte bits.
  51  */
  52 #define XENFEAT_gnttab_map_avail_bits      7
  53 
  54 /* x86: Does this Xen host support the HVM callback vector type? */
  55 #define XENFEAT_hvm_callback_vector        8
  56 
  57 /* x86: pvclock algorithm is safe to use on HVM */
  58 #define XENFEAT_hvm_safe_pvclock           9
  59 
  60 /* x86: pirq can be used by HVM guests */
  61 #define XENFEAT_hvm_pirqs           10
  62 
  63 /* operation as Dom0 is supported */
  64 #define XENFEAT_dom0                      11
  65 
  66 /* Xen also maps grant references at pfn = mfn.
  67  * This feature flag is deprecated and should not be used.
  68 #define XENFEAT_grant_map_identity        12
  69  */
  70 
  71 /* Guest can use XENMEMF_vnode to specify virtual node for memory op. */
  72 #define XENFEAT_memory_op_vnode_supported 13
  73 
  74 /* arm: Hypervisor supports ARM SMC calling convention. */
  75 #define XENFEAT_ARM_SMCCC_supported       14
  76 
  77 /*
  78  * x86/PVH: If set, ACPI RSDP can be placed at any address. Otherwise RSDP
  79  * must be located in lower 1MB, as required by ACPI Specification for IA-PC
  80  * systems.
  81  * This feature flag is only consulted if XEN_ELFNOTE_GUEST_OS contains
  82  * the "linux" string.
  83  */
  84 #define XENFEAT_linux_rsdp_unrestricted   15
  85 
  86 #define XENFEAT_NR_SUBMAPS 1
  87 
  88 #endif /* __XEN_PUBLIC_FEATURES_H__ */

/* [<][>][^][v][top][bottom][index][help] */