cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

perf_event.h (797B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef __ASM_SH_PERF_EVENT_H
      3#define __ASM_SH_PERF_EVENT_H
      4
      5struct hw_perf_event;
      6
      7#define MAX_HWEVENTS	2
      8
      9struct sh_pmu {
     10	const char	*name;
     11	unsigned int	num_events;
     12	void		(*disable_all)(void);
     13	void		(*enable_all)(void);
     14	void		(*enable)(struct hw_perf_event *, int);
     15	void		(*disable)(struct hw_perf_event *, int);
     16	u64		(*read)(int);
     17	int		(*event_map)(int);
     18	unsigned int	max_events;
     19	unsigned long	raw_event_mask;
     20	const int	(*cache_events)[PERF_COUNT_HW_CACHE_MAX]
     21				       [PERF_COUNT_HW_CACHE_OP_MAX]
     22				       [PERF_COUNT_HW_CACHE_RESULT_MAX];
     23};
     24
     25/* arch/sh/kernel/perf_event.c */
     26extern int register_sh_pmu(struct sh_pmu *);
     27extern int reserve_pmc_hardware(void);
     28extern void release_pmc_hardware(void);
     29
     30#endif /* __ASM_SH_PERF_EVENT_H */