diff options
author | Mathieu Poirier <mathieu.poirier@linaro.org> | 2016-09-16 11:49:59 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2016-09-22 11:19:35 -0400 |
commit | 7e21b0d579a481e2e7064c6383d5873d841777a8 (patch) | |
tree | 89a8bc2c6bbb5ed576385a2753d789a2a91e2bf3 /tools/perf/arch | |
parent | 08d5204adbf845fadd936aae7639fc05d4eddee1 (diff) |
perf tools: Make coresight PMU listable
Adding the required mechanic allowing 'perf list pmu' to discover
coresight ETM/PTM tracers.
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: linux-arm-kernel@lists.infradead.org
Link: http://lkml.kernel.org/r/1474041004-13956-3-git-send-email-mathieu.poirier@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/arch')
-rw-r--r-- | tools/perf/arch/arm/util/Build | 2 | ||||
-rw-r--r-- | tools/perf/arch/arm/util/pmu.c | 34 | ||||
-rw-r--r-- | tools/perf/arch/arm64/util/Build | 2 |
3 files changed, 38 insertions, 0 deletions
diff --git a/tools/perf/arch/arm/util/Build b/tools/perf/arch/arm/util/Build index f98da17357c0..4093fd146f46 100644 --- a/tools/perf/arch/arm/util/Build +++ b/tools/perf/arch/arm/util/Build | |||
@@ -2,3 +2,5 @@ libperf-$(CONFIG_DWARF) += dwarf-regs.o | |||
2 | 2 | ||
3 | libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o | 3 | libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o |
4 | libperf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o | 4 | libperf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o |
5 | |||
6 | libperf-$(CONFIG_AUXTRACE) += pmu.o | ||
diff --git a/tools/perf/arch/arm/util/pmu.c b/tools/perf/arch/arm/util/pmu.c new file mode 100644 index 000000000000..af9fb666b44f --- /dev/null +++ b/tools/perf/arch/arm/util/pmu.c | |||
@@ -0,0 +1,34 @@ | |||
1 | /* | ||
2 | * Copyright(C) 2015 Linaro Limited. All rights reserved. | ||
3 | * Author: Mathieu Poirier <mathieu.poirier@linaro.org> | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify it | ||
6 | * under the terms of the GNU General Public License version 2 as published by | ||
7 | * the Free Software Foundation. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, but WITHOUT | ||
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
12 | * more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License along with | ||
15 | * this program. If not, see <http://www.gnu.org/licenses/>. | ||
16 | */ | ||
17 | |||
18 | #include <string.h> | ||
19 | #include <linux/coresight-pmu.h> | ||
20 | #include <linux/perf_event.h> | ||
21 | |||
22 | #include "../../util/pmu.h" | ||
23 | |||
24 | struct perf_event_attr | ||
25 | *perf_pmu__get_default_config(struct perf_pmu *pmu __maybe_unused) | ||
26 | { | ||
27 | #ifdef HAVE_AUXTRACE_SUPPORT | ||
28 | if (!strcmp(pmu->name, CORESIGHT_ETM_PMU_NAME)) { | ||
29 | /* add ETM default config here */ | ||
30 | pmu->selectable = true; | ||
31 | } | ||
32 | #endif | ||
33 | return NULL; | ||
34 | } | ||
diff --git a/tools/perf/arch/arm64/util/Build b/tools/perf/arch/arm64/util/Build index 02f41dba4f4f..3876dd05bb8b 100644 --- a/tools/perf/arch/arm64/util/Build +++ b/tools/perf/arch/arm64/util/Build | |||
@@ -1,2 +1,4 @@ | |||
1 | libperf-$(CONFIG_DWARF) += dwarf-regs.o | 1 | libperf-$(CONFIG_DWARF) += dwarf-regs.o |
2 | libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o | 2 | libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o |
3 | |||
4 | libperf-$(CONFIG_AUXTRACE) += ../../arm/util/pmu.o | ||