Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * intel_pt.h: Intel Processor Trace support
0004  * Copyright (c) 2013-2015, Intel Corporation.
0005  */
0006 
0007 #ifndef INCLUDE__PERF_INTEL_PT_H__
0008 #define INCLUDE__PERF_INTEL_PT_H__
0009 
0010 #define INTEL_PT_PMU_NAME "intel_pt"
0011 
0012 enum {
0013     INTEL_PT_PMU_TYPE,
0014     INTEL_PT_TIME_SHIFT,
0015     INTEL_PT_TIME_MULT,
0016     INTEL_PT_TIME_ZERO,
0017     INTEL_PT_CAP_USER_TIME_ZERO,
0018     INTEL_PT_TSC_BIT,
0019     INTEL_PT_NORETCOMP_BIT,
0020     INTEL_PT_HAVE_SCHED_SWITCH,
0021     INTEL_PT_SNAPSHOT_MODE,
0022     INTEL_PT_PER_CPU_MMAPS,
0023     INTEL_PT_MTC_BIT,
0024     INTEL_PT_MTC_FREQ_BITS,
0025     INTEL_PT_TSC_CTC_N,
0026     INTEL_PT_TSC_CTC_D,
0027     INTEL_PT_CYC_BIT,
0028     INTEL_PT_MAX_NONTURBO_RATIO,
0029     INTEL_PT_FILTER_STR_LEN,
0030     INTEL_PT_AUXTRACE_PRIV_MAX,
0031 };
0032 
0033 struct auxtrace_record;
0034 struct perf_tool;
0035 union perf_event;
0036 struct perf_session;
0037 struct perf_event_attr;
0038 struct perf_pmu;
0039 
0040 struct auxtrace_record *intel_pt_recording_init(int *err);
0041 
0042 int intel_pt_process_auxtrace_info(union perf_event *event,
0043                    struct perf_session *session);
0044 
0045 struct perf_event_attr *intel_pt_pmu_default_config(struct perf_pmu *pmu);
0046 
0047 #endif