xref: /freebsd/sys/powerpc/include/pmc_mdep.h (revision fcb560670601b2a4d87bb31d7531c8dcc37ee71b)
1 /*-
2  * This file is in the public domain.
3  *
4  * $FreeBSD$
5  */
6 
7 #ifndef _MACHINE_PMC_MDEP_H_
8 #define	_MACHINE_PMC_MDEP_H_
9 
10 #define PMC_MDEP_CLASS_INDEX_CPU	1
11 #define PMC_MDEP_CLASS_INDEX_PPC7450	1
12 #define PMC_MDEP_CLASS_INDEX_PPC970	1
13 
14 union pmc_md_op_pmcallocate {
15 	uint64_t		__pad[4];
16 };
17 
18 /* Logging */
19 #define	PMCLOG_READADDR		PMCLOG_READ32
20 #define	PMCLOG_EMITADDR		PMCLOG_EMIT32
21 
22 #if	_KERNEL
23 
24 struct pmc_md_powerpc_pmc {
25 	uint32_t	pm_powerpc_evsel;
26 };
27 
28 union pmc_md_pmc {
29 	struct pmc_md_powerpc_pmc	pm_powerpc;
30 };
31 
32 #define	PMC_TRAPFRAME_TO_PC(TF)	((TF)->srr0)
33 #define	PMC_TRAPFRAME_TO_FP(TF)	((TF)->fixreg[1])
34 #define	PMC_TRAPFRAME_TO_SP(TF)	(0)
35 
36 #endif
37 
38 #endif /* !_MACHINE_PMC_MDEP_H_ */
39