blob: 0f915a01a3f732525a9e3f467971aa11dfe8eb45 [file] [log] [blame]
John Kacur8b40f522009-09-24 18:02:18 +02001#ifndef __PERF_PARSE_EVENTS_H
2#define __PERF_PARSE_EVENTS_H
Ingo Molnar52425192009-05-26 09:17:18 +02003/*
4 * Parse symbolic events/counts passed in as options:
5 */
6
Arnaldo Carvalho de Melo69aad6f2011-01-03 16:39:04 -02007#include <linux/perf_event.h>
8
9struct list_head;
10struct perf_evsel;
11
12extern struct list_head evsel_list;
13
14int perf_evsel_list__create_default(void);
15
Jason Baron5beeded2009-07-21 14:16:29 -040016struct option;
17
Frederic Weisbecker1ef2ed12009-08-28 03:09:58 +020018struct tracepoint_path {
19 char *system;
20 char *name;
21 struct tracepoint_path *next;
22};
23
24extern struct tracepoint_path *tracepoint_id_to_path(u64 config);
Arnaldo Carvalho de Melo69aad6f2011-01-03 16:39:04 -020025extern bool have_tracepoints(struct list_head *evsel_list);
Frederic Weisbecker1ef2ed12009-08-28 03:09:58 +020026
Ingo Molnara21ca2c2009-06-06 09:58:57 +020027extern int nr_counters;
Ingo Molnar52425192009-05-26 09:17:18 +020028
Arnaldo Carvalho de Melo69aad6f2011-01-03 16:39:04 -020029const char *event_name(struct perf_evsel *event);
Ingo Molnar83a09442009-08-15 12:26:57 +020030extern const char *__event_name(int type, u64 config);
Ingo Molnar8ad8db32009-05-26 11:10:09 +020031
32extern int parse_events(const struct option *opt, const char *str, int unset);
Li Zefanc171b552009-10-15 11:22:07 +080033extern int parse_filter(const struct option *opt, const char *str, int unset);
Ingo Molnar8ad8db32009-05-26 11:10:09 +020034
35#define EVENTS_HELP_MAX (128*1024)
36
Thomas Gleixner86847b62009-06-06 12:24:17 +020037extern void print_events(void);
Ingo Molnar8ad8db32009-05-26 11:10:09 +020038
Jason Baron5beeded2009-07-21 14:16:29 -040039extern char debugfs_path[];
40extern int valid_debugfs_mount(const char *debugfs);
41
John Kacur8b40f522009-09-24 18:02:18 +020042#endif /* __PERF_PARSE_EVENTS_H */