Merge branch 'pm-sleep'
[cascardo/linux.git] / tools / perf / util / mem-events.h
1 #ifndef __PERF_MEM_EVENTS_H
2 #define __PERF_MEM_EVENTS_H
3
4 #include <stdbool.h>
5
6 struct perf_mem_event {
7         bool            record;
8         bool            supported;
9         const char      *tag;
10         const char      *name;
11         const char      *sysfs_name;
12 };
13
14 enum {
15         PERF_MEM_EVENTS__LOAD,
16         PERF_MEM_EVENTS__STORE,
17         PERF_MEM_EVENTS__MAX,
18 };
19
20 extern struct perf_mem_event perf_mem_events[PERF_MEM_EVENTS__MAX];
21 extern unsigned int perf_mem_events__loads_ldlat;
22
23 int perf_mem_events__parse(const char *str);
24 int perf_mem_events__init(void);
25
26 char *perf_mem_events__name(int i);
27
28 struct mem_info;
29 int perf_mem__tlb_scnprintf(char *out, size_t sz, struct mem_info *mem_info);
30 int perf_mem__lvl_scnprintf(char *out, size_t sz, struct mem_info *mem_info);
31 int perf_mem__snp_scnprintf(char *out, size_t sz, struct mem_info *mem_info);
32 int perf_mem__lck_scnprintf(char *out, size_t sz, struct mem_info *mem_info);
33
34 int perf_script__meminfo_scnprintf(char *bf, size_t size, struct mem_info *mem_info);
35
36 #endif /* __PERF_MEM_EVENTS_H */