1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2023, Tencent, Inc.
4 */
5
6#include <stdint.h>
7
8#include <linux/kernel.h>
9
10#include "kvm_util.h"
11#include "pmu.h"
12
13const uint64_t intel_pmu_arch_events[] = {
14	INTEL_ARCH_CPU_CYCLES,
15	INTEL_ARCH_INSTRUCTIONS_RETIRED,
16	INTEL_ARCH_REFERENCE_CYCLES,
17	INTEL_ARCH_LLC_REFERENCES,
18	INTEL_ARCH_LLC_MISSES,
19	INTEL_ARCH_BRANCHES_RETIRED,
20	INTEL_ARCH_BRANCHES_MISPREDICTED,
21	INTEL_ARCH_TOPDOWN_SLOTS,
22};
23kvm_static_assert(ARRAY_SIZE(intel_pmu_arch_events) == NR_INTEL_ARCH_EVENTS);
24
25const uint64_t amd_pmu_zen_events[] = {
26	AMD_ZEN_CORE_CYCLES,
27	AMD_ZEN_INSTRUCTIONS_RETIRED,
28	AMD_ZEN_BRANCHES_RETIRED,
29	AMD_ZEN_BRANCHES_MISPREDICTED,
30};
31kvm_static_assert(ARRAY_SIZE(amd_pmu_zen_events) == NR_AMD_ZEN_EVENTS);
32