1/** 2 * \file 3 * \brief Contains VMKit kernel interface for version using SVM extensions. 4 */ 5 6/* 7 * Copyright (c) 2014, University of Washington. 8 * All rights reserved. 9 * 10 * This file is distributed under the terms in the attached LICENSE file. 11 * If you do not find this file, copies can be found by writing to: 12 * ETH Zurich D-INFK, CAB F.78, Universitaetstr. 6, CH-8092 Zurich. 13 * Attn: Systems Group. 14 */ 15 16#ifndef SVM_VMKIT_H 17#define SVM_VMKIT_H 18 19// SVM relevant CPUID info 20#define CPUID_AMD_EXTFEAT 0x80000001 21#define AMD_EXTFEAT_ECX_SVM (1 << 2) 22 23// some EXITCODE values 24#define VMEXIT_INTR 0x60 25#define VMEXIT_NMI 0x61 26#define VMEXIT_SMI 0x62 27#define VMEXIT_VMMCALL 0x81 28 29errval_t svm_enable_virtualization (void); 30void __attribute__ ((noreturn)) svm_vmkit_vmenter (struct dcb *dcb); 31 32#endif // SVM_VMKIT_H 33