linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: pratikp@codeaurora.org (Pratik Patel)
To: linux-arm-kernel@lists.infradead.org
Subject: CoreSight framework and drivers
Date: Thu, 3 Jan 2013 11:32:22 -0800	[thread overview]
Message-ID: <20130103193222.GC30277@pratikp-linux.qualcomm.com> (raw)
In-Reply-To: <50E491D5.3080106@ti.com>

On Wed, Jan 02, 2013 at 02:00:21PM -0600, Jon Hunter wrote:
> 
> The code is largely based upon the existing cti helpers, which just had
> a cti_map_trigger() function. The use-case you described is not
> supported by the current helpers and so also not supported in my initial
> implementation (although we should add this). Hence, it would be
> probably best to split the cti_map_trigger() into two functions say,
> cti_map_triggerin() and cti_map_triggerout(), to map a trigger
> input/output to a channel.
> 

Yes, splitting the map function will provide more flexibility.
One possibility is to cue the enable and disable functions from
the mapping reference count for the CTI so that enable and
disable are internal only functions.

In this case the flow would look something like:

cti_get(cti1)
cti_map_triggerin(cti1) -> enable cti1
cti_get(cti2)
cti_map_triggerin(cti2) -> enable cti2
cti_map_triggerout(cti1) -> increment cti1 refcount

cti_unmap_triggerin(cti2) -> disable cti2
cti_put(cti2)
cti_unmap_triggerout(cti1) -> decrement cti1 refcount
cti_unmap_triggerin(cti1) -> disable cti1
cti_put(cti1)

With this, it is possible to push clock management inside enable
and disable as opposed to get and put though it would imply
enable being done before the actual mapping inside
cti_map_triggerin/out and disable after unmapping in
cti_unmap_triggerin/out. It might also mean cti_map_triggerin/out
and cti_unmap_triggerin/out having a non-atomic context call
semantics.

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

  reply	other threads:[~2013-01-03 19:32 UTC|newest]

Thread overview: 32+ 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 ` [RFC 1/8] coresight: add CoreSight core layer framework pratikp at codeaurora.org
2012-12-18 19:19 ` [RFC 2/8] coresight: add CoreSight TMC driver pratikp at codeaurora.org
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 ` [RFC 4/8] coresight: add CoreSight ETB driver pratikp at codeaurora.org
2012-12-20 17:49   ` Jon Hunter
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 ` [RFC 6/8] coresight: add CoreSight Replicator driver pratikp at codeaurora.org
2012-12-18 19:19 ` [RFC 7/8] coresight: add CoreSight STM driver pratikp at codeaurora.org
2012-12-18 19:19 ` [RFC 8/8] coresight: add CoreSight ETM driver pratikp at codeaurora.org
2012-12-19 11:23 ` CoreSight framework and drivers Will Deacon
2012-12-19 17:03   ` Jon Hunter
2012-12-19 21:24     ` Pratik Patel
2012-12-20 17:46       ` Jon Hunter
2012-12-20 19:51         ` Pratik Patel
2012-12-20 20:16           ` Jean Pihet
2012-12-21 22:12             ` Pratik Patel
2012-12-20 22:54           ` Jon Hunter
2012-12-20 23:40             ` Russell King - ARM Linux
2012-12-21 22:17               ` Pratik Patel
2012-12-21 22:18             ` Pratik Patel
2012-12-23 11:32               ` Will Deacon
2013-01-03 18:06                 ` Pratik Patel
2013-01-07 11:58                   ` Will Deacon
2013-01-16  0:14                     ` Pratik Patel
2013-01-17 10:55                       ` Will Deacon
2013-01-02 20:00               ` Jon Hunter
2013-01-03 19:32                 ` Pratik Patel [this message]
2012-12-19 21:06   ` Pratik Patel
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=20130103193222.GC30277@pratikp-linux.qualcomm.com \
    --to=pratikp@codeaurora.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).