perf report: Add support to print a textual representation of IBS raw sample data
[linux-2.6-microblaze.git] / tools / perf / util / sample-raw.c
1 /* SPDX-License-Identifier: GPL-2.0 */
2
3 #include <string.h>
4 #include <linux/string.h>
5 #include "evlist.h"
6 #include "env.h"
7 #include "header.h"
8 #include "sample-raw.h"
9
10 /*
11  * Check platform the perf data file was created on and perform platform
12  * specific interpretation.
13  */
14 void evlist__init_trace_event_sample_raw(struct evlist *evlist)
15 {
16         const char *arch_pf = perf_env__arch(evlist->env);
17         const char *cpuid = perf_env__cpuid(evlist->env);
18
19         if (arch_pf && !strcmp("s390", arch_pf))
20                 evlist->trace_event_sample_raw = evlist__s390_sample_raw;
21         else if (arch_pf && !strcmp("x86", arch_pf) &&
22                  cpuid && strstarts(cpuid, "AuthenticAMD") &&
23                  evlist__has_amd_ibs(evlist)) {
24                 evlist->trace_event_sample_raw = evlist__amd_sample_raw;
25         }
26 }