Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tools: Copy coresight-pmu.h header file needed by perf tools

Directly accessing kernel files is not allowed anymore. As such making
file coresight-pmu.h accessible by the perf tools and complain if this
copy strays from the one found in the main kernel tree.

Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Vince Weaver <vince@deater.net>
Link: http://lkml.kernel.org/r/1470932464-726-2-git-send-email-mathieu.poirier@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

authored by

Mathieu Poirier and committed by
Arnaldo Carvalho de Melo
39ff5263 05ed3ac9

+43
+39
tools/include/linux/coresight-pmu.h
··· 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 + #ifndef _LINUX_CORESIGHT_PMU_H 19 + #define _LINUX_CORESIGHT_PMU_H 20 + 21 + #define CORESIGHT_ETM_PMU_NAME "cs_etm" 22 + #define CORESIGHT_ETM_PMU_SEED 0x10 23 + 24 + /* ETMv3.5/PTM's ETMCR config bit */ 25 + #define ETM_OPT_CYCACC 12 26 + #define ETM_OPT_TS 28 27 + 28 + static inline int coresight_get_trace_id(int cpu) 29 + { 30 + /* 31 + * A trace ID of value 0 is invalid, so let's start at some 32 + * random value that fits in 7 bits and go from there. Since 33 + * the common convention is to have data trace IDs be I(N) + 1, 34 + * set instruction trace IDs as a function of the CPU number. 35 + */ 36 + return (CORESIGHT_ETM_PMU_SEED + (cpu * 2)); 37 + } 38 + 39 + #endif
+1
tools/perf/MANIFEST
··· 60 60 tools/include/linux/atomic.h 61 61 tools/include/linux/bitops.h 62 62 tools/include/linux/compiler.h 63 + tools/include/linux/coresight-pmu.h 63 64 tools/include/linux/filter.h 64 65 tools/include/linux/hash.h 65 66 tools/include/linux/kernel.h
+3
tools/perf/Makefile.perf
··· 429 429 @(test -f ../../include/asm-generic/bitops/fls64.h && ( \ 430 430 (diff -B ../include/asm-generic/bitops/fls64.h ../../include/asm-generic/bitops/fls64.h >/dev/null) \ 431 431 || echo "Warning: tools/include/asm-generic/bitops/fls64.h differs from kernel" >&2 )) || true 432 + @(test -f ../../include/linux/coresight-pmu.h && ( \ 433 + (diff -B ../include/linux/coresight-pmu.h ../../include/linux/coresight-pmu.h >/dev/null) \ 434 + || echo "Warning: tools/include/linux/coresight-pmu.h differs from kernel" >&2 )) || true 432 435 $(Q)$(MAKE) $(build)=perf 433 436 434 437 $(OUTPUT)perf: $(PERFLIBS) $(PERF_IN) $(LIBTRACEEVENT_DYNAMIC_LIST)