Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 57d74123 authored by Will Deacon's avatar Will Deacon
Browse files

arm64: perf: add format entry to describe event -> config mapping



It's all very well providing an events directory to userspace that
details our events in terms of "event=0xNN", but if we don't define how
to encode the "event" field in the perf attr.config, then it's a waste
of time.

This patch adds a single format entry to describe that the event field
occupies the bottom 10 bits of our config field on ARMv8 (PMUv3).

Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
parent abff083c
Loading
Loading
Loading
Loading
+16 −2
Original line number Diff line number Diff line
@@ -297,7 +297,7 @@ static struct attribute *armv8_pmuv3_event_attrs[] = {
	&armv8_event_attr_l21_tlb_refill.attr.attr,
	&armv8_event_attr_l2d_tlb.attr.attr,
	&armv8_event_attr_l21_tlb.attr.attr,
	NULL
	NULL,
};

static struct attribute_group armv8_pmuv3_events_attr_group = {
@@ -305,11 +305,25 @@ static struct attribute_group armv8_pmuv3_events_attr_group = {
	.attrs = armv8_pmuv3_event_attrs,
};

PMU_FORMAT_ATTR(event, "config:0-9");

static struct attribute *armv8_pmuv3_format_attrs[] = {
	&format_attr_event.attr,
	NULL,
};

static struct attribute_group armv8_pmuv3_format_attr_group = {
	.name = "format",
	.attrs = armv8_pmuv3_format_attrs,
};

static const struct attribute_group *armv8_pmuv3_attr_groups[] = {
	&armv8_pmuv3_events_attr_group,
	NULL
	&armv8_pmuv3_format_attr_group,
	NULL,
};


/*
 * Perf Events' indices
 */