2015-07-17 19:33:41 +03:00
/*
* intel_pt . h : Intel Processor Trace support
* Copyright ( c ) 2013 - 2015 , Intel Corporation .
*
* This program is free software ; you can redistribute it and / or modify it
* under the terms and conditions of the GNU General Public License ,
* version 2 , as published by the Free Software Foundation .
*
* This program is distributed in the hope it will be useful , but WITHOUT
* ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE . See the GNU General Public License for
* more details .
*
*/
# ifndef INCLUDE__PERF_INTEL_PT_H__
# define INCLUDE__PERF_INTEL_PT_H__
# define INTEL_PT_PMU_NAME "intel_pt"
enum {
INTEL_PT_PMU_TYPE ,
INTEL_PT_TIME_SHIFT ,
INTEL_PT_TIME_MULT ,
INTEL_PT_TIME_ZERO ,
INTEL_PT_CAP_USER_TIME_ZERO ,
INTEL_PT_TSC_BIT ,
INTEL_PT_NORETCOMP_BIT ,
INTEL_PT_HAVE_SCHED_SWITCH ,
INTEL_PT_SNAPSHOT_MODE ,
INTEL_PT_PER_CPU_MMAPS ,
2015-07-17 19:33:54 +03:00
INTEL_PT_MTC_BIT ,
INTEL_PT_MTC_FREQ_BITS ,
INTEL_PT_TSC_CTC_N ,
INTEL_PT_TSC_CTC_D ,
INTEL_PT_CYC_BIT ,
2016-09-23 17:38:42 +03:00
INTEL_PT_MAX_NONTURBO_RATIO ,
2016-09-23 17:38:45 +03:00
INTEL_PT_FILTER_STR_LEN ,
2015-07-17 19:33:41 +03:00
INTEL_PT_AUXTRACE_PRIV_MAX ,
} ;
struct auxtrace_record ;
struct perf_tool ;
union perf_event ;
struct perf_session ;
struct perf_event_attr ;
struct perf_pmu ;
struct auxtrace_record * intel_pt_recording_init ( int * err ) ;
int intel_pt_process_auxtrace_info ( union perf_event * event ,
struct perf_session * session ) ;
struct perf_event_attr * intel_pt_pmu_default_config ( struct perf_pmu * pmu ) ;
# endif