aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/pmu.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/perf/util/pmu.h')
-rw-r--r--tools/perf/util/pmu.h21
1 files changed, 6 insertions, 15 deletions
diff --git a/tools/perf/util/pmu.h b/tools/perf/util/pmu.h
index 39f3abac7744..32fe55b659fa 100644
--- a/tools/perf/util/pmu.h
+++ b/tools/perf/util/pmu.h
@@ -2,7 +2,7 @@
2#define __PMU_H 2#define __PMU_H
3 3
4#include <linux/bitops.h> 4#include <linux/bitops.h>
5#include "../../../include/uapi/linux/perf_event.h" 5#include <linux/perf_event.h>
6 6
7enum { 7enum {
8 PERF_PMU_FORMAT_VALUE_CONFIG, 8 PERF_PMU_FORMAT_VALUE_CONFIG,
@@ -12,19 +12,6 @@ enum {
12 12
13#define PERF_PMU_FORMAT_BITS 64 13#define PERF_PMU_FORMAT_BITS 64
14 14
15struct perf_pmu__format {
16 char *name;
17 int value;
18 DECLARE_BITMAP(bits, PERF_PMU_FORMAT_BITS);
19 struct list_head list;
20};
21
22struct perf_pmu__alias {
23 char *name;
24 struct list_head terms;
25 struct list_head list;
26};
27
28struct perf_pmu { 15struct perf_pmu {
29 char *name; 16 char *name;
30 __u32 type; 17 __u32 type;
@@ -37,15 +24,19 @@ struct perf_pmu {
37struct perf_pmu *perf_pmu__find(char *name); 24struct perf_pmu *perf_pmu__find(char *name);
38int perf_pmu__config(struct perf_pmu *pmu, struct perf_event_attr *attr, 25int perf_pmu__config(struct perf_pmu *pmu, struct perf_event_attr *attr,
39 struct list_head *head_terms); 26 struct list_head *head_terms);
27int perf_pmu__config_terms(struct list_head *formats,
28 struct perf_event_attr *attr,
29 struct list_head *head_terms);
40int perf_pmu__check_alias(struct perf_pmu *pmu, struct list_head *head_terms); 30int perf_pmu__check_alias(struct perf_pmu *pmu, struct list_head *head_terms);
41struct list_head *perf_pmu__alias(struct perf_pmu *pmu, 31struct list_head *perf_pmu__alias(struct perf_pmu *pmu,
42 struct list_head *head_terms); 32 struct list_head *head_terms);
43int perf_pmu_wrap(void); 33int perf_pmu_wrap(void);
44void perf_pmu_error(struct list_head *list, char *name, char const *msg); 34void perf_pmu_error(struct list_head *list, char *name, char const *msg);
45 35
46int perf_pmu__new_format(struct list_head *list, char *name, 36int perf_pmu__new_format(struct list_head *list, char *name,
47 int config, unsigned long *bits); 37 int config, unsigned long *bits);
48void perf_pmu__set_format(unsigned long *bits, long from, long to); 38void perf_pmu__set_format(unsigned long *bits, long from, long to);
39int perf_pmu__format_parse(char *dir, struct list_head *head);
49 40
50struct perf_pmu *perf_pmu__scan(struct perf_pmu *pmu); 41struct perf_pmu *perf_pmu__scan(struct perf_pmu *pmu);
51 42