aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/hwpmc/hwpmc_perf.h
blob: 0fc2dfbe70fc415d894d1460ac3ec95d377fb65b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
 * Copyright (c) 2026 Advanced Micro Devices, Inc.
 *
 * SPDX-License-Identifier: BSD-2-Clause
 *
 * AMD/Intel MPERF/APERF MSR counters, and the AMD-only IRPERF counter,
 * exposed as an hwpmc(4) PMC class.
 */

#ifdef  _KERNEL

/*
 * A row per MSR: MPERF, APERF and IRPERF.
 */

#define PERF_NPMCS_TOTAL	3

extern	int	tsc_perf_stat;
extern	u_int	cpu_power_ecx;
extern	u_int	amd_extended_feature_extensions;

/*
 * Prototypes.
 */

int     pmc_perf_initialize(struct pmc_mdep *_md, int maxcpu, int classindex);
void    pmc_perf_finalize(struct pmc_mdep *_md);
#endif  /* _KERNEL */