1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * tools/testing/selftests/kvm/include/x86_64/mce.h 4 * 5 * Copyright (C) 2022, Google LLC. 6 */ 7 8 #ifndef SELFTEST_KVM_MCE_H 9 #define SELFTEST_KVM_MCE_H 10 11 #define MCG_CTL_P BIT_ULL(8) /* MCG_CTL register available */ 12 #define MCG_SER_P BIT_ULL(24) /* MCA recovery/new status bits */ 13 #define MCG_LMCE_P BIT_ULL(27) /* Local machine check supported */ 14 #define MCG_CMCI_P BIT_ULL(10) /* CMCI supported */ 15 #define KVM_MAX_MCE_BANKS 32 16 #define MCG_CAP_BANKS_MASK 0xff /* Bit 0-7 of the MCG_CAP register are #banks */ 17 #define MCI_STATUS_VAL (1ULL << 63) /* valid error */ 18 #define MCI_STATUS_UC (1ULL << 61) /* uncorrected error */ 19 #define MCI_STATUS_EN (1ULL << 60) /* error enabled */ 20 #define MCI_STATUS_MISCV (1ULL << 59) /* misc error reg. valid */ 21 #define MCI_STATUS_ADDRV (1ULL << 58) /* addr reg. valid */ 22 #define MCM_ADDR_PHYS 2 /* physical address */ 23 #define MCI_CTL2_CMCI_EN BIT_ULL(30) 24 25 #endif /* SELFTEST_KVM_MCE_H */ 26