Commit-ID: 7e21b0d579a481e2e7064c6383d5873d841777a8 Gitweb: http://git.kernel.org/tip/7e21b0d579a481e2e7064c6383d5873d841777a8 Author: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx> AuthorDate: Fri, 16 Sep 2016 09:49:59 -0600 Committer: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> CommitDate: Thu, 22 Sep 2016 12:19:35 -0300 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@xxxxxxxxxx> Acked-by: Adrian Hunter <adrian.hunter@xxxxxxxxx> Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx> Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Link: http://lkml.kernel.org/r/1474041004-13956-3-git-send-email-mathieu.poirier@xxxxxxxxxx Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> --- MAINTAINERS | 1 + tools/perf/arch/arm/util/Build | 2 ++ .../perf/arch/arm/util/pmu.c | 26 ++++++++++++---------- tools/perf/arch/arm64/util/Build | 2 ++ 4 files changed, 19 insertions(+), 12 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index db814a8..7407fe7 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1123,6 +1123,7 @@ F: drivers/hwtracing/coresight/* F: Documentation/trace/coresight.txt F: Documentation/devicetree/bindings/arm/coresight.txt F: Documentation/ABI/testing/sysfs-bus-coresight-devices-* +F: tools/perf/arch/arm/util/pmu.c ARM/CORGI MACHINE SUPPORT M: Richard Purdie <rpurdie@xxxxxxxxx> diff --git a/tools/perf/arch/arm/util/Build b/tools/perf/arch/arm/util/Build index f98da17..4093fd1 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 libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o libperf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o + +libperf-$(CONFIG_AUXTRACE) += pmu.o diff --git a/drivers/hwtracing/coresight/coresight-etm-perf.h b/tools/perf/arch/arm/util/pmu.c similarity index 66% copy from drivers/hwtracing/coresight/coresight-etm-perf.h copy to tools/perf/arch/arm/util/pmu.c index 87f5a13..af9fb66 100644 --- a/drivers/hwtracing/coresight/coresight-etm-perf.h +++ b/tools/perf/arch/arm/util/pmu.c @@ -15,18 +15,20 @@ * this program. If not, see <http://www.gnu.org/licenses/>. */ -#ifndef _CORESIGHT_ETM_PERF_H -#define _CORESIGHT_ETM_PERF_H +#include <string.h> +#include <linux/coresight-pmu.h> +#include <linux/perf_event.h> -struct coresight_device; - -#ifdef CONFIG_CORESIGHT -int etm_perf_symlink(struct coresight_device *csdev, bool link); - -#else -static inline int etm_perf_symlink(struct coresight_device *csdev, bool link) -{ return -EINVAL; } - -#endif /* CONFIG_CORESIGHT */ +#include "../../util/pmu.h" +struct perf_event_attr +*perf_pmu__get_default_config(struct perf_pmu *pmu __maybe_unused) +{ +#ifdef HAVE_AUXTRACE_SUPPORT + if (!strcmp(pmu->name, CORESIGHT_ETM_PMU_NAME)) { + /* add ETM default config here */ + pmu->selectable = true; + } #endif + return NULL; +} diff --git a/tools/perf/arch/arm64/util/Build b/tools/perf/arch/arm64/util/Build index 02f41db..3876dd0 100644 --- a/tools/perf/arch/arm64/util/Build +++ b/tools/perf/arch/arm64/util/Build @@ -1,2 +1,4 @@ libperf-$(CONFIG_DWARF) += dwarf-regs.o libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o + +libperf-$(CONFIG_AUXTRACE) += ../../arm/util/pmu.o -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |