MLK-23302-1 tools: perf: pmu-event: add socname for struct pmu_event
Add socname for struct pmu_event for that we can distinguish different SoCs by this property. Reviewed-by: Fugang Duan <fugang.duan@nxp.com> Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>5.4-rM2-2.2.x-imx-squashed
parent
4431f64855
commit
edb9b10ee1
|
@ -322,7 +322,8 @@ static int print_events_table_entry(void *data, char *name, char *event,
|
|||
char *desc, char *long_desc,
|
||||
char *pmu, char *unit, char *perpkg,
|
||||
char *metric_expr,
|
||||
char *metric_name, char *metric_group)
|
||||
char *metric_name, char *metric_group,
|
||||
char *socname)
|
||||
{
|
||||
struct perf_entry_data *pd = data;
|
||||
FILE *outfp = pd->outfp;
|
||||
|
@ -354,6 +355,8 @@ static int print_events_table_entry(void *data, char *name, char *event,
|
|||
fprintf(outfp, "\t.metric_name = \"%s\",\n", metric_name);
|
||||
if (metric_group)
|
||||
fprintf(outfp, "\t.metric_group = \"%s\",\n", metric_group);
|
||||
if (socname)
|
||||
fprintf(outfp, "\t.socname = \"%s\",\n", socname);
|
||||
fprintf(outfp, "},\n");
|
||||
|
||||
return 0;
|
||||
|
@ -371,6 +374,7 @@ struct event_struct {
|
|||
char *metric_expr;
|
||||
char *metric_name;
|
||||
char *metric_group;
|
||||
char *socname;
|
||||
};
|
||||
|
||||
#define ADD_EVENT_FIELD(field) do { if (field) { \
|
||||
|
@ -416,7 +420,8 @@ static void free_arch_std_events(void)
|
|||
static int save_arch_std_events(void *data, char *name, char *event,
|
||||
char *desc, char *long_desc, char *pmu,
|
||||
char *unit, char *perpkg, char *metric_expr,
|
||||
char *metric_name, char *metric_group)
|
||||
char *metric_name, char *metric_group,
|
||||
char *socname)
|
||||
{
|
||||
struct event_struct *es;
|
||||
|
||||
|
@ -507,7 +512,8 @@ int json_events(const char *fn,
|
|||
char *long_desc,
|
||||
char *pmu, char *unit, char *perpkg,
|
||||
char *metric_expr,
|
||||
char *metric_name, char *metric_group),
|
||||
char *metric_name, char *metric_group,
|
||||
char *socname),
|
||||
void *data)
|
||||
{
|
||||
int err;
|
||||
|
@ -536,6 +542,7 @@ int json_events(const char *fn,
|
|||
char *metric_expr = NULL;
|
||||
char *metric_name = NULL;
|
||||
char *metric_group = NULL;
|
||||
char *socname = NULL;
|
||||
char *arch_std = NULL;
|
||||
unsigned long long eventcode = 0;
|
||||
struct msrmap *msr = NULL;
|
||||
|
@ -622,6 +629,8 @@ int json_events(const char *fn,
|
|||
addfield(map, &metric_expr, "", "", val);
|
||||
for (s = metric_expr; *s; s++)
|
||||
*s = tolower(*s);
|
||||
} else if (json_streq(map, field, "SocName")) {
|
||||
addfield(map, &socname, "", "", val);
|
||||
} else if (json_streq(map, field, "ArchStdEvent")) {
|
||||
addfield(map, &arch_std, "", "", val);
|
||||
for (s = arch_std; *s; s++)
|
||||
|
@ -663,7 +672,8 @@ int json_events(const char *fn,
|
|||
goto free_strings;
|
||||
}
|
||||
err = func(data, name, real_event(name, event), desc, long_desc,
|
||||
pmu, unit, perpkg, metric_expr, metric_name, metric_group);
|
||||
pmu, unit, perpkg, metric_expr, metric_name, metric_group,
|
||||
socname);
|
||||
free_strings:
|
||||
free(event);
|
||||
free(desc);
|
||||
|
@ -677,6 +687,7 @@ free_strings:
|
|||
free(metric_expr);
|
||||
free(metric_name);
|
||||
free(metric_group);
|
||||
free(socname);
|
||||
free(arch_std);
|
||||
|
||||
if (err)
|
||||
|
|
|
@ -7,7 +7,8 @@ int json_events(const char *fn,
|
|||
char *long_desc,
|
||||
char *pmu,
|
||||
char *unit, char *perpkg, char *metric_expr,
|
||||
char *metric_name, char *metric_group),
|
||||
char *metric_name, char *metric_group,
|
||||
char *socname),
|
||||
void *data);
|
||||
char *get_cpu_str(void);
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@ struct pmu_event {
|
|||
const char *metric_expr;
|
||||
const char *metric_name;
|
||||
const char *metric_group;
|
||||
const char *socname;
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue