2005-04-20 18:44:53 +00:00
|
|
|
/*-
|
|
|
|
* This file is in the public domain.
|
|
|
|
*
|
|
|
|
* $FreeBSD$
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _MACHINE_PMC_MDEP_H_
|
|
|
|
#define _MACHINE_PMC_MDEP_H_
|
|
|
|
|
2014-03-14 00:12:53 +00:00
|
|
|
#define PMC_MDEP_CLASS_INDEX_CPU 1
|
2014-01-15 04:44:52 +00:00
|
|
|
#define PMC_MDEP_CLASS_INDEX_PPC7450 1
|
|
|
|
#define PMC_MDEP_CLASS_INDEX_PPC970 1
|
2012-03-28 20:58:30 +00:00
|
|
|
|
2005-06-09 19:45:09 +00:00
|
|
|
union pmc_md_op_pmcallocate {
|
|
|
|
uint64_t __pad[4];
|
|
|
|
};
|
|
|
|
|
|
|
|
/* Logging */
|
|
|
|
#define PMCLOG_READADDR PMCLOG_READ32
|
|
|
|
#define PMCLOG_EMITADDR PMCLOG_EMIT32
|
|
|
|
|
|
|
|
#if _KERNEL
|
|
|
|
|
2011-12-24 19:34:52 +00:00
|
|
|
struct pmc_md_powerpc_pmc {
|
|
|
|
uint32_t pm_powerpc_evsel;
|
|
|
|
};
|
|
|
|
|
2005-06-09 19:45:09 +00:00
|
|
|
union pmc_md_pmc {
|
2011-12-24 19:34:52 +00:00
|
|
|
struct pmc_md_powerpc_pmc pm_powerpc;
|
2005-06-09 19:45:09 +00:00
|
|
|
};
|
|
|
|
|
2014-01-15 04:44:52 +00:00
|
|
|
#define PMC_TRAPFRAME_TO_PC(TF) ((TF)->srr0)
|
|
|
|
#define PMC_TRAPFRAME_TO_FP(TF) ((TF)->fixreg[1])
|
2007-12-07 13:45:47 +00:00
|
|
|
#define PMC_TRAPFRAME_TO_SP(TF) (0)
|
|
|
|
|
2005-06-09 19:45:09 +00:00
|
|
|
#endif
|
|
|
|
|
2005-04-20 18:44:53 +00:00
|
|
|
#endif /* !_MACHINE_PMC_MDEP_H_ */
|