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 | ||
