All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pratik Patel <pratikp@codeaurora.org>
To: Will Deacon <will.deacon@arm.com>
Cc: "linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"linus.walleij@linaro.org" <linus.walleij@linaro.org>,
	"linux@arm.linux.org.uk" <linux@arm.linux.org.uk>,
	"magnus.p.persson@stericsson.com"
	<magnus.p.persson@stericsson.com>,
	"arve@android.com" <arve@android.com>,
	"jon-hunter@ti.com" <jon-hunter@ti.com>,
	"david.rusling@linaro.org" <david.rusling@linaro.org>,
	"dsaxena@linaro.org" <dsaxena@linaro.org>,
	"john.stultz@linaro.org" <john.stultz@linaro.org>,
	"d-deao@ti.com" <d-deao@ti.com>,
	"christian.bejram@stericsson.com"
	<christian.bejram@stericsson.com>,
	"devicetree-discuss@lists.ozlabs.org"
	<devicetree-discuss@lists.ozlabs.org>,
	linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: CoreSight framework and drivers
Date: Wed, 19 Dec 2012 13:06:54 -0800	[thread overview]
Message-ID: <20121219210654.GA524@pratikp-linux.qualcomm.com> (raw)
In-Reply-To: <20121219112314.GA26329@mudshark.cambridge.arm.com>

On Wed, Dec 19, 2012 at 11:23:14AM +0000, Will Deacon wrote:
> Hi Pratik,
> 
> On Tue, Dec 18, 2012 at 07:19:17PM +0000, pratikp@codeaurora.org wrote:
> > This RFC is aimed at introducing CoreSight framework as well as
> > individual CoreSight trace component drivers adhering to ARM
> > CoreSight specification. Some prior discussion on this can be
> > referred at [1].
> > 
> > There are 3 kinds of CoreSight trace components:
> > 
> > * Sources: Responsible for producing trace data to provide
> >   visibility for the associated entity.
> > 
> > * Links: Transport components that carry trace data.
> > 
> > * Sinks: Collectors for storing trace data or acting as conduits
> >   for off-chip trace data collection.
> > 
> > These components can be connected in various topologies to suite
> > a particular SoCs tracing needs.
> > 
> > Framework is responsible for gathering and using the information
> > about the registered CoreSight components and their connections
> > to allow it to dynamically deduce the sequence of components
> > representing a connection from a CoreSight source to the
> > currently selected CoreSight sink. This helps the framework to
> > program the correct set of components to satisfy user request.
> 
> From a million miles up, this looks like a sensible sort of design but I
> really think you need to talk to Jon Hunter (he's at least on CC) about
> this, especially where bindings are concerned. If we can get something that
> you both agree on, then we can include the CTI with the other coresight
> components and do a more in-depth review at that point.
> 

Thanks for the feedback.

> Finally, how do you plan on exposing this data to the user? I think the only
> sane way is to have per-device file descriptors which act as pipes to the raw
> data but this means we need some readily available, open-source tooling (or
> at least public specifications of the trace formats).
> 

The sink drivers (ETB, TMC), expose a device node per device that
is used to collect the raw data.

Eg:, we have:
/dev/coresight-etb
/dev/coresight-tmc-etf
/dev/coresight-tmc-etr

where reading /dev/coresight-tmc-etf only works when the ETF is
in circular buffer mode.

-- 
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

WARNING: multiple messages have this Message-ID (diff)
From: pratikp@codeaurora.org (Pratik Patel)
To: linux-arm-kernel@lists.infradead.org
Subject: CoreSight framework and drivers
Date: Wed, 19 Dec 2012 13:06:54 -0800	[thread overview]
Message-ID: <20121219210654.GA524@pratikp-linux.qualcomm.com> (raw)
In-Reply-To: <20121219112314.GA26329@mudshark.cambridge.arm.com>

On Wed, Dec 19, 2012 at 11:23:14AM +0000, Will Deacon wrote:
> Hi Pratik,
> 
> On Tue, Dec 18, 2012 at 07:19:17PM +0000, pratikp at codeaurora.org wrote:
> > This RFC is aimed at introducing CoreSight framework as well as
> > individual CoreSight trace component drivers adhering to ARM
> > CoreSight specification. Some prior discussion on this can be
> > referred at [1].
> > 
> > There are 3 kinds of CoreSight trace components:
> > 
> > * Sources: Responsible for producing trace data to provide
> >   visibility for the associated entity.
> > 
> > * Links: Transport components that carry trace data.
> > 
> > * Sinks: Collectors for storing trace data or acting as conduits
> >   for off-chip trace data collection.
> > 
> > These components can be connected in various topologies to suite
> > a particular SoCs tracing needs.
> > 
> > Framework is responsible for gathering and using the information
> > about the registered CoreSight components and their connections
> > to allow it to dynamically deduce the sequence of components
> > representing a connection from a CoreSight source to the
> > currently selected CoreSight sink. This helps the framework to
> > program the correct set of components to satisfy user request.
> 
> From a million miles up, this looks like a sensible sort of design but I
> really think you need to talk to Jon Hunter (he's at least on CC) about
> this, especially where bindings are concerned. If we can get something that
> you both agree on, then we can include the CTI with the other coresight
> components and do a more in-depth review at that point.
> 

Thanks for the feedback.

> Finally, how do you plan on exposing this data to the user? I think the only
> sane way is to have per-device file descriptors which act as pipes to the raw
> data but this means we need some readily available, open-source tooling (or
> at least public specifications of the trace formats).
> 

The sink drivers (ETB, TMC), expose a device node per device that
is used to collect the raw data.

Eg:, we have:
/dev/coresight-etb
/dev/coresight-tmc-etf
/dev/coresight-tmc-etr

where reading /dev/coresight-tmc-etf only works when the ETF is
in circular buffer mode.

-- 
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

  parent reply	other threads:[~2012-12-19 21:07 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-18 19:19 CoreSight framework and drivers pratikp at codeaurora.org
2012-12-18 19:19 ` pratikp
2012-12-18 19:19 ` [RFC 1/8] coresight: add CoreSight core layer framework pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2012-12-18 19:19 ` [RFC 2/8] coresight: add CoreSight TMC driver pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2013-02-21 14:20   ` Robert MARKLUND
2013-02-21 14:20     ` Robert MARKLUND
2012-12-18 19:19 ` [RFC 3/8] coresight: add CoreSight TPIU driver pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2012-12-18 19:19 ` [RFC 4/8] coresight: add CoreSight ETB driver pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2012-12-20 17:49   ` Jon Hunter
2012-12-20 17:49     ` Jon Hunter
2012-12-20 19:54     ` Pratik Patel
2012-12-20 19:54       ` Pratik Patel
2012-12-18 19:19 ` [RFC 5/8] coresight: add CoreSight Funnel driver pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2012-12-18 19:19 ` [RFC 6/8] coresight: add CoreSight Replicator driver pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2012-12-18 19:19 ` [RFC 7/8] coresight: add CoreSight STM driver pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2012-12-18 19:19 ` [RFC 8/8] coresight: add CoreSight ETM driver pratikp at codeaurora.org
2012-12-18 19:19   ` pratikp-sgV2jX0FEOL9JmXXK+q4OQ
2012-12-19 11:23 ` CoreSight framework and drivers Will Deacon
2012-12-19 11:23   ` Will Deacon
2012-12-19 17:03   ` Jon Hunter
2012-12-19 17:03     ` Jon Hunter
2012-12-19 21:24     ` Pratik Patel
2012-12-19 21:24       ` Pratik Patel
2012-12-20 17:46       ` Jon Hunter
2012-12-20 17:46         ` Jon Hunter
2012-12-20 17:46         ` Jon Hunter
2012-12-20 19:51         ` Pratik Patel
2012-12-20 19:51           ` Pratik Patel
2012-12-20 20:16           ` Jean Pihet
2012-12-20 20:16             ` Jean Pihet
2012-12-21 22:12             ` Pratik Patel
2012-12-21 22:12               ` Pratik Patel
2012-12-20 22:54           ` Jon Hunter
2012-12-20 22:54             ` Jon Hunter
2012-12-20 22:54             ` Jon Hunter
2012-12-20 23:40             ` Russell King - ARM Linux
2012-12-20 23:40               ` Russell King - ARM Linux
2012-12-21 22:17               ` Pratik Patel
2012-12-21 22:17                 ` Pratik Patel
2012-12-21 22:18             ` Pratik Patel
2012-12-21 22:18               ` Pratik Patel
     [not found]               ` <20121221221828.GA2658-9H3kiKr51/JHGpnEYu0o6d07Fnf2crXX0E9HWUfgJXw@public.gmane.org>
2012-12-23 11:32                 ` Will Deacon
2012-12-23 11:32                   ` Will Deacon
2012-12-23 11:32                   ` Will Deacon
2013-01-03 18:06                   ` Pratik Patel
2013-01-03 18:06                     ` Pratik Patel
     [not found]                     ` <20130103180643.GA30277-9H3kiKr51/JHGpnEYu0o6d07Fnf2crXX0E9HWUfgJXw@public.gmane.org>
2013-01-07 11:58                       ` Will Deacon
2013-01-07 11:58                         ` Will Deacon
2013-01-07 11:58                         ` Will Deacon
2013-01-16  0:14                         ` Pratik Patel
2013-01-16  0:14                           ` Pratik Patel
2013-01-17 10:55                           ` Will Deacon
2013-01-17 10:55                             ` Will Deacon
2013-01-02 20:00                 ` Jon Hunter
2013-01-02 20:00                   ` Jon Hunter
2013-01-02 20:00                   ` Jon Hunter
2013-01-03 19:32                   ` Pratik Patel
2013-01-03 19:32                     ` Pratik Patel
2012-12-19 21:06   ` Pratik Patel [this message]
2012-12-19 21:06     ` Pratik Patel
2013-02-21 14:32 ` Robert MARKLUND
2013-02-21 14:32   ` Robert MARKLUND

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20121219210654.GA524@pratikp-linux.qualcomm.com \
    --to=pratikp@codeaurora.org \
    --cc=arve@android.com \
    --cc=christian.bejram@stericsson.com \
    --cc=d-deao@ti.com \
    --cc=david.rusling@linaro.org \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=dsaxena@linaro.org \
    --cc=john.stultz@linaro.org \
    --cc=jon-hunter@ti.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=magnus.p.persson@stericsson.com \
    --cc=will.deacon@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.