linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Suman Anna <s-anna@ti.com>
To: Ohad Ben-Cohen <ohad@wizery.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
	Kumar Gala <galak@codeaurora.org>,
	Tony Lindgren <tony@atomide.com>,
	Josh Cartwright <joshc@codeaurora.org>,
	Bjorn Andersson <bjorn@kryo.se>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	linux-arm <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCHv5 04/15] hwspinlock/core: add common OF helpers
Date: Tue, 8 Jul 2014 10:37:56 -0500	[thread overview]
Message-ID: <53BC1054.5090201@ti.com> (raw)
In-Reply-To: <CAK=WgbbZYwfOyeZuDTX2RXtEdYzsZc++crHZ-ZAqeiWds0BCcg@mail.gmail.com>

Hi Ohad,

On 07/03/2014 11:58 PM, Ohad Ben-Cohen wrote:
> Hi Suman,
> 
> On Thu, Jul 3, 2014 at 8:35 PM, Suman Anna <s-anna@ti.com> wrote:
>> Not at the moment, with the existing platform implementations. So, if I
>> understand you correctly, you are asking to leave out the xlate ops and
>> make the of_hwspin_lock_simple_xlate() internal until a need for an
>> xlate method arises.
> 
> Yes, please. It seems to me this way we're reducing complexity without
> compromising anything.

OK, will make this change and add a comment in the code in the next version.

> 
>> This also means, we only support a value of 1 for #hwlock-cells.
> 
> When a different #hwlock-cells value shows up, someone would have to
> write a new xlate implementation anyway. At the same time, the xlate
> ops could be brought back quite easily.
> 
> Since we're not imposing anything on the DT data, this doesn't affect
> our ability to support these scenarios in the future, but unless I'm
> missing a current use case, these scenarios right now seems somewhat
> fictional.

OK, fair enough.

> 
>> But, that would mean DT-based client users would have to invoke two
>> function calls to request a hwspinlock. We already have an API to get
>> the lock id given a hwspinlock - hwspin_lock_get_id(), so I added the OF
>> API for requesting a lock directly rather than giving an OF API for
>> getting the lock id. This is in keeping in convention with what other
>> drivers do normally - a regular get and an OF get. I can modify it if
>> you still prefer the OF API for getting a global lock id, but I feel its
>> a burden for client users.
> 
> Let's discuss this.
> 
> I was actually thinking of the more general use case of an heterogenous system:
> 
> - driver gets the global lock id from a remote processor
> - driver then requests the specific lock
> 
> Looking at these cases, the OF scenario only differs in the small part
> of fetching the lock id, and if we keep the regular request_specific
> API we'll have more common code between drivers.
> 
> What do you think?

We should also be thinking about the how to add the support for the
reserved locks. Please take a look at the added RFC patches 9 through
13, specifically the reworked Patch 12 [1]. I moved away from adding a
reserved property to the controller node, as it means updating both
controller and client nodes. Depending on where we enforce the check (in
the OF API or in the common request_specific, the behavior would change.

> 
>> Also, do you prefer an open property-name in client users (like I am
>> doing at the moment) or imposing a standard property name "hwlocks"?
> 
> Good point - I think we can start with an imposed "hwlocks" name, and
> evolve in the future as needed (again, only because we're not really
> imposing anything on the DT data - this is just kernel code that we
> could always extend as needed).
> 

OK. Actually, I didn't realize that I had already made this change as
part of the reserved locks RFC patch.

regards
Suman

[1] http://marc.info/?l=linux-omap&m=139968467307977&w=2


  reply	other threads:[~2014-07-08 15:38 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-01  0:34 [PATCHv5 00/15] hwspinlock/omap dt support Suman Anna
2014-05-01  0:34 ` [PATCHv5 01/15] Documentation: dt: add common bindings for hwspinlock Suman Anna
2014-05-02 14:58   ` Rob Herring
2014-05-02 22:46     ` Suman Anna
2014-05-01  0:34 ` [PATCHv5 02/15] Documentation: dt: add the omap hwspinlock bindings document Suman Anna
2014-05-01  0:34 ` [PATCHv5 03/15] hwspinlock/core: maintain a list of registered hwspinlock banks Suman Anna
2014-07-01 12:26   ` Ohad Ben-Cohen
2014-07-02 21:14     ` Suman Anna
2014-07-03  7:00       ` Ohad Ben-Cohen
2014-07-03 17:28         ` Suman Anna
2014-07-04  5:01           ` Ohad Ben-Cohen
2014-07-08 15:22             ` Suman Anna
2014-05-01  0:34 ` [PATCHv5 04/15] hwspinlock/core: add common OF helpers Suman Anna
2014-07-01 12:45   ` Ohad Ben-Cohen
2014-07-02 21:14     ` Suman Anna
2014-07-03  7:15       ` Ohad Ben-Cohen
2014-07-03 17:35         ` Suman Anna
2014-07-04  4:58           ` Ohad Ben-Cohen
2014-07-08 15:37             ` Suman Anna [this message]
2014-05-01  0:34 ` [PATCHv5 05/15] hwspinlock/omap: add support for dt nodes Suman Anna
2014-07-01 12:48   ` Ohad Ben-Cohen
2014-07-02 19:42     ` Suman Anna
2014-07-03  7:25       ` Ohad Ben-Cohen
2014-05-01  0:34 ` [PATCHv5 06/15] hwspinlock/omap: enable module before reading SYSSTATUS register Suman Anna
2014-07-01 12:51   ` Ohad Ben-Cohen
2014-07-02 19:38     ` Suman Anna
2014-05-01  0:34 ` [PATCHv5 07/15] hwspinlock/omap: enable build for AM33xx, AM43xx & DRA7xx Suman Anna
2014-07-01 12:53   ` Ohad Ben-Cohen
2014-05-01  0:34 ` [PATCHv5 RFC 08/15] hwspinlock/core: add support for base id in DT Suman Anna
2014-05-05 20:37   ` Rob Herring
2014-05-05 21:37     ` Suman Anna
2014-05-01  0:34 ` [PATCHv5 RFC 09/15] hwspinlock/core: prepare unregister code to support reserved locks Suman Anna
2014-05-01  0:34 ` [PATCHv5 RFC 10/15] hwspinlock/core: prepare core " Suman Anna
2014-05-01  0:34 ` [PATCHv5 RFC 11/15] hwspinlock/core: add support for " Suman Anna
2014-05-01  0:34 ` [PATCHv5 RFC 12/15] hwspinlock/core: add OF helper to parse " Suman Anna
2014-05-05 21:44   ` Suman Anna
2014-05-05 21:54     ` Josh Cartwright
2014-05-10  1:17       ` Suman Anna
2014-05-01  0:34 ` [PATCHv5 RFC 13/15] hwspinlock/omap: use OF helper to get " Suman Anna
2014-05-01  0:34 ` [PATCHv5 RFC 14/15] hwspinlock/core: return ERR_PTRs on failure in _request_ api Suman Anna
2014-05-01  0:34 ` [PATCHv5 RFC 15/15] hwspinlock/core: change return codes of_hwspin_lock_request_specific Suman Anna

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=53BC1054.5090201@ti.com \
    --to=s-anna@ti.com \
    --cc=bjorn@kryo.se \
    --cc=devicetree@vger.kernel.org \
    --cc=galak@codeaurora.org \
    --cc=joshc@codeaurora.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=ohad@wizery.com \
    --cc=tony@atomide.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 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).