Implementing the API that connect trace control, i.e initiation
and termination, to the Perf core. That way trace collection can
be started when the process it is associated to is executed by
a CPU, and stopped when yanked away.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
to 'smp_call_function_single()'.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/hwtracing/coresight/coresight-etm3x.c
b/drivers/hwtracing/coresight/coresight-etm3x.c
.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 36 +++
1 file changed, 36 insertions(+)
diff --git a/drivers/hwtracing/coresight/coresight-etm3x.c
b/drivers/hwtracing/coresight/coresight-etm3x.c
-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm-perf.c | 23 +++
1 file changed, 23 insertions(+)
diff --git a/drivers/hwtracing/coresight/coresight-etm-perf.c
b/drivers/hwtracing/coresight/coresight-etm-perf.c
index a21171
Adding a new section giving information on how coresight has been
integrated with the perf subsystem along with a general idea of how
to control tracing from the perf tool cmd line.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
Documentation/trace/coresight.txt
Perf is a well known and used tool for performance monitoring
and much more. A such it is an ideal condaditate for integration
with coresight based HW tracing.
This patch introduce a minimal PMU that represent a coresight
tracer to the Perf core.
Signed-off-by: Mathieu Poirier <mathieu.p
/sys/bus/event_source/devices/cs_etm/cpuX that reference the coresight
device a CPU is associated with.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm-perf.c | 22 +++
drivers/hwtracing/coresight/coresight-etm-perf.
were set.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm-perf.c | 12 +--
drivers/hwtracing/coresight/coresight-etm3x.c| 27 +++-
include/linux/coresight.h| 3 ++-
3 files chang
Enhancing skeleton PMU with event initialisation.
The function makes sure tracers aren't already enabled
before going through with the powe up and configuration
sequences.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm-perf.c
Keep track of enabled sink buffers as paths between source
and sinks are being built. That way sinks associated to a
source can be accessed quickly.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-priv.h | 3 ++-
drivers/hwtracing/cor
That way a path can be built outside of the core framework,
something useful when a PMU is initialised from the perf sub
system.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-priv.h | 3 +++
drivers/hwtracing/coresight/coresight.c
by not checking for the end
of the ring buffer and setting the 'head' of the buffer to
the next available address.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etb10.c | 30 +++
1 file changed, 26 insertions(+), 4 del
Adding an interface to lookup the CPU a tracer has been affined
to along with a source operation allowing external customers to
access it.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 14 ++
include/linux/cores
Driving the external ETMEN pins to start and stop trace
collection isn't reliable when doing rapid, successive
trace collection runs.
Using the internal event enable register logic to control
tracing is much more dependable.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
Implementing perf related APIs to activate and terminate
a trace session. More specifically dealing with the sink
buffer's internal mechanic along with perf's API to start
and stop interactions with the ring buffers.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
d
The perf command line tool has options to trace in kernel or
user space mode. As such configuring tracers to trace the
entire address range, leaving to the perf mechanic the task
of collecting traces in accordance with the requested mode.
Signed-off-by: Mathieu Poirier <mathieu.p
Implementing buffer API to update the location of the ETB
internal ring buffer once a trace session has ended.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etb10.c | 113 ++
include/linux/cores
When dealing with other kernel subsystems or automated tools it
is desirable to split the current etm_enable_hw() operation
in three: power up, configuration and enabling of the tracer.
That way it is possible to have more control on the operations
done by a tracer.
Signed-off-by: Mathieu
Adding an ETB10 specific auxiliary area setup operation to be
used by the perf framework when events are initialised.
Part of this operation involves modeling the mmap'ed area based
on the specific ways a sink buffer gathers information.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
].
It is based on v4.2 but a rebase to v4.3-rcX will be available
shortly.
Best regards,
Mathieu
[1].
https://git.linaro.org/people/mathieu.poirier/coresight.git/shortlog/refs/heads/perf-v4.2
Mathieu Poirier (20):
coresight: etm3x: splitting 'etm_enable_hw()' operations
coresight: etm3x
Adding an interface to lookup the status of a tracer along with
a source operation allowing external customers to access it.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 13 +
include/linux/cores
On 3 December 2015 at 14:04, Mathieu Poirier <mathieu.poir...@linaro.org> wrote:
> This patchset aims to integrate configuration and control of
> the Coresight tracers with the perf sub-system.
>
> The goal is to use PMUs to represent tracers and the auxiliary
> buffer e
On 3 December 2015 at 14:04, Mathieu Poirier <mathieu.poir...@linaro.org> wrote:
> This patchset aims to integrate configuration and control of
> the Coresight tracers with the perf sub-system.
>
> The goal is to use PMUs to represent tracers and the auxiliary
> buffer e
On 4 December 2015 at 00:09, Sanidhya Solanki wrote:
> Staging: Skein: Moved macros from skein_block.c to header file.
>
> The original code defined macros in the source code, making it harder to
> read. Move them to the header file.
The patch didn't end up mangled on my side
com>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Makefile | 3 +-
drivers/hwtracing/coresight/coresight-etm-perf.c | 447 +++
drivers/hwtracing/coresight/coresight-etm-perf.h | 32 ++
drivers/hwtraci
Adding a new section giving information on how coresight has been
integrated with the perf subsystem along with a general idea of how
to control tracing from the perf tool cmd line.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
Documentation/trace/coresight.txt
Adding new mode to limit tracing to kernel or user space.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h| 7 ++-
.../hwtracing/coresight/coresight-etm3x-sysfs.c| 4 ++
drivers/hwtracing/coresight/coresight-e
,
the possibility of associating a tracer with a configuration is
also provided. As such Perf can assign session configuration to
tracers as it see fit.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Kconfig | 1 +
drivers/hwtracing/cor
methods
a per-cpu place holder is used to keep a handle on the path built when
tracers are enabled. Lastly APIs to build paths and enable tracers are
made public so that other subsystem can interact with the Coresight
framework.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
d
Adding a new mode to source API enable() in order to
distinguish where the request comes from. That way it is
possible to perform different operations based on where
the request was issued from.
The ETM4x driver is also modified to keep in sync with the
new interface.
Signed-off-by: Mathieu
Other than plainly parsing the device tree there is no way to
know which CPU a tracer is affined to. As such adding an
interface to lookup the CPU field enclosed in the etm_drvdata
structure that was initialised at boot time.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
changes and rebased everything to v4.3-rc5.
Mathieu Poirier (26):
coresight: etm3x: moving etm_readl/writel to header file
coresight: etm3x: moving sysFS entries to dedicated file
coresight: etm3x: unlocking tracers in default arch init
coresight: etm3x: splitting struct etm_drvdata
coresight:
SysFS entries are big enough to justify their own file.
As such moving all sysFS related declarations to a dedicated
location.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Makefile |3 +-
drivers/hwtracing/coresight/coresight
There is no need to use the event enable's "always false" event to
stop trace collection. For that purpose setting the programming bit
(ETMCR:10) is enough.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 3 ---
1
There is really no point in having two functions to take care
of doing the initials tracer configuration. As such moving
everything to 'etm_set_default()'.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.
Adding an operation mode to sink->enable() API in order
to prevent simultaneous access from different callers.
TPIU and TMC won't be supplemented with the AUX area
API immediately and as such ignore the new mode.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/
Moving functions etm_readl/writel to file "coresight-etm.h"
so that the main ETM3x driver can be split in more than one
file.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h | 29 +++
d
by cpu__max_cpu().
Cc: Peter Zijlstra <a.p.zijls...@chello.nl>
Cc: Ingo Molnar <mi...@redhat.com>
Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
tools/perf/util/cpumap.c | 2 +-
tools/perf/util/cpumap.h | 1 +
2 fil
Adding the required mechanic allowing 'perf list pmu' to
discover coresight ETM/PTM tracers.
Cc: Peter Zijlstra <a.p.zijls...@chello.nl>
Cc: Ingo Molnar <mi...@redhat.com>
Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
TraceID values have to be unique for all tracers and
consistent between drivers and user space. As such
introducing a central function to be used whenever a
traceID value is required.
The patch also account for data traceIDs, which are usually
I(N) + 1.
Signed-off-by: Mathieu Poirier
the code affected by this new
arrangement. No loss or gain of functionality (other than what is
mentioned above) is introduced by this patch.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h| 102 ++---
.../hwtracing/coresi
Add an API allowing external code to quickly get a handle on the
sink within a path. The sink is always last, but adding an API allows
to keep the path's node structure private and remove redundant checks.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwt
Changing default configuration to include the entire address
range rather than just the kernel. That way traces are more
inclusive and it is easier to narrow down if needed.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h
s this requirement for perf_aux_output_{begin,end}()
> apis.
>
> Signed-off-by: Alexander Shishkin <alexander.shish...@linux.intel.com>
> Cc: Mathieu Poirier <mathieu.poir...@linaro.org>
> ---
> kernel/events/ring_buffer.c | 10 ++
> 1 file changed, 10 insertions(+)
&g
@kernel.org>
Cc: Alexander Shishkin <alexander.shish...@linux.intel.com>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
arch/x86/kernel/cpu/perf_event_intel_bts.c | 4 +++-
arch/x86/kernel/cpu/perf_event_intel_pt.c | 5 +++--
include/linux/perf_event.h | 2 +
alho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
MAINTAINERS | 3 +
tools/perf/arch/arm/util/Build | 2 +-
tools/perf/arch/arm/util/auxtrace.c | 48
tools/perf/arch/a
That way traces can be enabled and disabled automatically
from the Perf subystem using the PMU abstraction.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 47 ---
1 file changed, 43 insertions
parameter into account.
Cc: Peter Zijlstra <a.p.zijls...@chello.nl>
Cc: Ingo Molnar <mi...@redhat.com>
Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
tools/perf/arch/x86/util/intel-bts.c | 4 +++-
tools/
Moving to use local atomic operations to take advantage of the
lockless implementation, something that will come handy when
the ETB is accessed from the Perf subsystem. Also changing the
name of the variable to something more meaningful.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
Adding an ETB10 specific AUX area operations to be used
by the perf framework when events are initialised.
Part of this operation involves modeling the mmap'ed area
based on the specific ways a sink buffer gathers information.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
to 'smp_call_function_single()'.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/hwtracing/coresight/coresight-etm3x.c
b/drivers/hwtracing/coresight/coresight-e
Moving PM runtime operations in Coresight devices enable() and
disable() API to the framework core when a path is setup. That
way the runtime core doesn't have to be involved everytime a
path is enabled. It also avoids calling runtime PM operations
in IRQ context.
Signed-off-by: Mathieu Poirier
On 30 November 2015 at 16:23, Alexander Shishkin
<alexander.shish...@linux.intel.com> wrote:
> Mathieu Poirier <mathieu.poir...@linaro.org> writes:
>
>> +static void etm_event_destroy(struct perf_event *event) {}
>> +
>> +static int etm_event_init(struct perf_ev
On 8 December 2015 at 13:34, Arnaldo Carvalho de Melo <a...@kernel.org> wrote:
> Em Tue, Dec 08, 2015 at 01:29:00PM -0700, Mathieu Poirier escreveu:
>> On 3 December 2015 at 14:04, Mathieu Poirier <mathieu.poir...@linaro.org>
>> wrote:
>>
>> Arnaldo, Pete
On 11 December 2015 at 07:00, Alexander Shishkin
<alexander.shish...@linux.intel.com> wrote:
> Mathieu Poirier <mathieu.poir...@linaro.org> writes:
>
>> +static void *etb_get_config(struct coresight_device *csdev, int cpu,
>> + void **pages
On 11 December 2015 at 08:18, Alexander Shishkin
<alexander.shish...@linux.intel.com> wrote:
> Mathieu Poirier <mathieu.poir...@linaro.org> writes:
>
>> +static void etm_event_start(struct perf_event *event, int flags)
>> +{
>> + int cpu = smp_processo
On 11 December 2015 at 07:12, Alexander Shishkin
<alexander.shish...@linux.intel.com> wrote:
> Mathieu Poirier <mathieu.poir...@linaro.org> writes:
>
>> For Coresight ETMv3/4 tracers the event carries information
>> about trace modes such as user or kernel space
On 11 December 2015 at 06:36, Alexander Shishkin
wrote:
> Hi Peter,
>
> Newer version of Intel PT supports address-based filtering, and this
> patchset adds support for it to perf core and the PT pmu driver. It
> works by configuring a number of address ranges
On 14 December 2015 at 01:50, Alexander Shishkin
<alexander.shish...@linux.intel.com> wrote:
> Mathieu Poirier <mathieu.poir...@linaro.org> writes:
>
>> On 11 December 2015 at 06:36, Alexander Shishkin
>> <alexander.shish...@linux.intel.com> wrote:
>>
On 11 December 2015 at 06:36, Alexander Shishkin
wrote:
> Many instruction trace pmus out there support address range-based
> filtering, which would, for example, generate trace data only for a
> given range of instruction addresses, which is useful for tracing
pt_pmu.pmu.read = pt_event_read;
> pt_pmu.pmu.setup_aux= pt_buffer_setup_aux;
> pt_pmu.pmu.free_aux = pt_buffer_free_aux;
> + pt_pmu.pmu.itrace_filter_setup =
> + pt_event_itrace_filter_setup;
> ret = perf_pmu_register(_pmu
: <sta...@vger.kernel.org> # v3.18+
Reported-by: Tyler Baker <tyler.ba...@linaro.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hwtracing/coresi
Good day Greg,
Please queue the following patches for the 4.5 cycle.
Regards,
Mathieu
Andrew F. Davis (1):
coresight: Fix a typo in Kconfig
Mathieu Poirier (1):
coresight: checking for NULL string in coresight_name_match()
drivers/hwtracing/coresight/Kconfig | 2 +-
drivers/hwtracing
From: "Andrew F. Davis" <a...@ti.com>
Signed-off-by: Andrew F. Davis <a...@ti.com>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hw
On 14 December 2015 at 17:08, Sanidhya Solanki wrote:
> The original code defined macros in the source code, making it
> harder to read. Moved them to the header file, as per the TODO file.
>
> Updated the TODO file.
>
> Signed-off-by: Sanidhya Solanki
On 20 December 2015 at 08:29, Rabin Vincent <ra...@rab.in> wrote:
> On Fri, Dec 18, 2015 at 01:58:58PM -0700, Mathieu Poirier wrote:
>> When using the Coresight framework from the sysFS interface a
>> tracer is always handling a single session and as such, a path
>> can
On 19 December 2015 at 10:42, Rabin Vincent <ra...@rab.in> wrote:
> On Fri, Dec 18, 2015 at 01:58:56PM -0700, Mathieu Poirier wrote:
>> This patchset aims to integrate configuration and control of
>> the Coresight tracers with the perf sub-system.
>>
>> The goal is
On 19 December 2015 at 10:13, Rabin Vincent <ra...@rab.in> wrote:
> On Fri, Dec 18, 2015 at 01:59:00PM -0700, Mathieu Poirier wrote:
>> @@ -415,9 +418,13 @@ struct list_head *coresight_build_path(struct
>> coresight_device *csdev)
>> */
>> void coresight_re
On 20 December 2015 at 08:29, Rabin Vincent <ra...@rab.in> wrote:
> On Fri, Dec 18, 2015 at 01:58:58PM -0700, Mathieu Poirier wrote:
>> When using the Coresight framework from the sysFS interface a
>> tracer is always handling a single session and as such, a path
>> can
On 19 December 2015 at 10:27, Rabin Vincent <ra...@rab.in> wrote:
> On Fri, Dec 18, 2015 at 01:59:20PM -0700, Mathieu Poirier wrote:
>> +struct auxtrace_record
>> +*auxtrace_record__init(struct perf_evlist *evlist, int *err)
>> +{
>> + struct perf_pmu *cs_et
On 19 December 2015 at 10:23, Rabin Vincent <ra...@rab.in> wrote:
> On Fri, Dec 18, 2015 at 01:59:13PM -0700, Mathieu Poirier wrote:
>> +static void etb_update_buffer(struct coresight_device *csdev,
>> + struct perf_
TraceID values have to be unique for all tracers and
consistent between drivers and user space. As such
introducing a central function to be used whenever a
traceID value is required.
The patch also account for data traceIDs, which are usually
I(N) + 1.
Signed-off-by: Mathieu Poirier
alho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
MAINTAINERS | 3 +
tools/perf/arch/arm/util/Build | 2 +-
tools/perf/arch/arm/util/auxtrace.c | 48
tools/perf/arch/a
Adding the required mechanic allowing 'perf list pmu' to
discover coresight ETM/PTM tracers.
Cc: Peter Zijlstra <a.p.zijls...@chello.nl>
Cc: Ingo Molnar <mi...@redhat.com>
Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
parameter into account.
Cc: Peter Zijlstra <a.p.zijls...@chello.nl>
Cc: Ingo Molnar <mi...@redhat.com>
Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
tools/perf/arch/x86/util/intel-bts.c | 4 +++-
tools/
rface from driver core to dedicated file.
* Removed spinlock in "etm_cpu_id()".
* Aggregated PMU driver pieces in a single patch.
* Added user space changes and rebased everything to v4.3-rc5.
Mathieu Poirier (24):
coresight: implementing 'cpu_id()' API
coresight: associating path with
Other than plainly parsing the device tree there is no way to
know which CPU a tracer is affined to. As such adding an
interface to lookup the CPU field enclosed in the etm_drvdata
structure that was initialised at boot time.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
to 'smp_call_function_single()'.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/hwtracing/coresight/coresight-etm3x.c
b/drivers/hwtracing/coresight/coresight-e
There is no need to use the event enable's "always false" event to
stop trace collection. For that purpose setting the programming bit
(ETMCR:10) is enough.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.c | 3 ---
1
Changing default configuration to include the entire address
range rather than just the kernel. That way traces are more
inclusive and it is easier to narrow down if needed.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h
Adding an ETB10 specific AUX area operations to be used
by the perf framework when events are initialised.
Part of this operation involves modeling the mmap'ed area
based on the specific ways a sink buffer gathers information.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
Moving to use local atomic operations to take advantage of the
lockless implementation, something that will come handy when
the ETB is accessed from the Perf subsystem. Also changing the
name of the variable to something more meaningful.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.
There is really no point in having two functions to take care
of doing the initial tracer configuration. As such moving
everything to 'etm_set_default()'.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm3x.
Adding a new section giving information on how coresight has been
integrated with the perf subsystem along with a general idea of how
to control tracing from the perf tool cmd line.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
Documentation/trace/coresight.txt
Adding new mode to limit tracing to kernel or user space.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h| 6 ++-
.../hwtracing/coresight/coresight-etm3x-sysfs.c| 4 ++
drivers/hwtracing/coresight/coresight-e
That way traces can be enabled and disabled automatically
from the Perf subystem using the PMU abstraction.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Kconfig | 1 +
drivers/hwtracing/coresight/coresight-etm3x.
by cpu__max_cpu().
Cc: Peter Zijlstra <a.p.zijls...@chello.nl>
Cc: Ingo Molnar <mi...@redhat.com>
Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
tools/perf/util/cpumap.c | 2 +-
tools/perf/util/cpumap.h | 1 +
2 fil
com>
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Makefile | 3 +-
drivers/hwtracing/coresight/coresight-etm-perf.c | 386 +++
drivers/hwtracing/coresight/coresight-etm-perf.h | 32 ++
drivers/hwtraci
SysFS entries are big enough to justify their own file.
As such moving all sysFS related declarations to a dedicated
location.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Makefile |3 +-
drivers/hwtracing/coresight/coresight
l the code affected by this new
arrangement. No loss or gain of functionality (other than what is
mentioned above) is introduced by this patch.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h| 102
.../hwtracing/cor
Adding a new mode to source API enable() in order to
distinguish where the request comes from. That way it is
possible to perform different operations based on where
the request was issued from.
The ETM4x driver is also modified to keep in sync with the
new interface.
Signed-off-by: Mathieu
Adding an operation mode to the sink->enable() API in order
to prevent simultaneous access from different callers.
TPIU and TMC won't be supplemented with the AUX area
API immediately and as such ignore the new mode.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
Moving PM runtime operations in Coresight devices enable() and
disable() API to the framework core when a path is setup. That
way the runtime core doesn't have to be involved everytime a
path is enabled. It also avoids calling runtime PM operations
in IRQ context.
Signed-off-by: Mathieu Poirier
Moving functions etm_readl/writel to file "coresight-etm.h"
so that the main ETM3x driver can be split in more than one
file.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h | 29 +++
d
methods
a per-cpu place holder is used to keep a handle on the path built when
tracers are enabled. Lastly APIs to build paths and enable tracers are
made public so that other subsystem can interact with the Coresight
framework.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
d
Add an API allowing external code to quickly get a handle on the
sink within a path. The sink is always last, but adding an API allows
to keep the path's node structure private and remove redundant checks.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwt
,
the possibility of associating a tracer with a configuration is
also provided. As such Perf can assign session configuration to
tracers as it see fit.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/Kconfig | 1 +
drivers/hwtracing/cor
nterface from driver core to dedicated file.
* Removed spinlock in "etm_cpu_id()".
* Aggregated PMU driver pieces in a single patch.
* Added user space changes and rebased everything to v4.3-rc5.
Mathieu Poirier (26):
coresight: etm3x: moving etm_readl/writel to header file
coresigh
Moving PM runtime operations in Coresight devices enable() and
disable() API to the framework core when a path is setup. That
way the runtime core doesn't have to be involved everytime a
path is enabled. It also avoids calling runtime PM operations
in IRQ context.
Signed-off-by: Mathieu Poirier
Changing default configuration to include the entire address
range rather than just the kernel. That way traces are more
inclusive and it is easier to narrow down if needed.
Signed-off-by: Mathieu Poirier <mathieu.poir...@linaro.org>
---
drivers/hwtracing/coresight/coresight-etm.h
601 - 700 of 5419 matches
Mail list logo