1 /* 2 * QEMU Hypervisor.framework (HVF) support 3 * 4 * Copyright Google Inc., 2017 5 * 6 * This work is licensed under the terms of the GNU GPL, version 2 or later. 7 * See the COPYING file in the top-level directory. 8 * 9 */ 10 11 /* header to be included in non-HVF-specific code */ 12 13 #ifndef HVF_H 14 #define HVF_H 15 16 #include "qemu/accel.h" 17 18 #ifdef COMPILING_PER_TARGET 19 # ifdef CONFIG_HVF 20 # define CONFIG_HVF_IS_POSSIBLE 21 # endif /* !CONFIG_HVF */ 22 #else 23 # define CONFIG_HVF_IS_POSSIBLE 24 #endif /* COMPILING_PER_TARGET */ 25 26 #ifdef CONFIG_HVF_IS_POSSIBLE 27 extern bool hvf_allowed; 28 #define hvf_enabled() (hvf_allowed) 29 #else /* !CONFIG_HVF_IS_POSSIBLE */ 30 #define hvf_enabled() 0 31 #endif /* !CONFIG_HVF_IS_POSSIBLE */ 32 33 #define TYPE_HVF_ACCEL ACCEL_CLASS_NAME("hvf") 34 35 typedef struct HVFState HVFState; 36 DECLARE_INSTANCE_CHECKER(HVFState, HVF_STATE, 37 TYPE_HVF_ACCEL) 38 39 #endif 40