From: Liam Girdwood <lg@opensource.wolfsonmicro.com>
To: David Brownell <david-b@pacbell.net>
Cc: linux-arm-kernel@lists.arm.linux.org.uk,
Andrew Morton <akpm@linux-foundation.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
Mark Brown <broonie@opensource.wolfsonmicro.com>
Subject: Re: [UPDATED v3][PATCH 1/7] regulator: consumer interface
Date: Tue, 11 Mar 2008 10:20:41 +0000 [thread overview]
Message-ID: <1205230841.13653.204.camel@localhost.localdomain> (raw)
In-Reply-To: <200803101739.08628.david-b@pacbell.net>
On Mon, 2008-03-10 at 16:39 -0800, David Brownell wrote:
> On Sunday 09 March 2008, Liam Girdwood wrote:
> >
> > > > +struct regulator *__must_check regulator_get(struct device *dev,
> > > > + const char *id);
> > >
> > > The semantics of "id" and "dev" are unspecified in this patch,
> > > so this isn't a good definition of the consumer interface!
> > >
> >
> > 'id' is really the regulator name and will be renamed in the next patch.
>
> Still not helping. How would a driver know what names to use?
Platform data i.e. "WM8350-DCDC1". The links I gave in a previous mail
have examples for this wrt LED. Backlight drivers.
> Are those names globally scoped, or local to the device?
>
They are global.
> Again, "id" and "dev" are unspecified. I can maybe guess that
> you're trying to make this look like <linux/clk.h> ... except
> the clock API includes kernel doc in that header.
>
> I *strongly* think new interfaces should not be provided without
> documentation... but that's what this patch does.
>
Fair point, I'll add docs for v4.
>
> > > Plus, that works more like a "lookup" than a "get" ... the
> > > usual convention is that "get" and "put" update refcounts.
> > > But I think I see an assumption here that a regulator may
> > > have only one user...
> >
> > A regulator only has one user as it's used to store some device specific
> > power data. However, a regulator_dev has many users. I'll add a refcount
> > on get/put.
>
> I'm still not following. If there's only one user, why would
> you need refcounting? If your model here is the clock API,
> then you should support multiple users ... and then refcounting
> is very appropriate.
>
Maybe the naming is confusing here. We should probably rename regulator
to regulator_client or similar.
Liam
next prev parent reply other threads:[~2008-03-11 10:20 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-06 18:10 [UPDATED v3][PATCH 1/7] regulator: consumer interface Liam Girdwood
2008-03-08 3:43 ` David Brownell
2008-03-09 11:10 ` Liam Girdwood
2008-03-11 0:39 ` David Brownell
2008-03-11 10:20 ` Liam Girdwood [this message]
2008-03-11 21:36 ` David Brownell
2008-03-11 22:25 ` David Brownell
2008-03-12 0:00 ` Mark Brown
2008-03-12 7:31 ` David Brownell
2008-03-12 13:02 ` Mark Brown
2008-03-12 21:52 ` David Brownell
2008-03-12 23:26 ` ian
2008-03-13 4:39 ` David Brownell
2008-03-12 23:57 ` Mark Brown
2008-03-13 5:08 ` David Brownell
2008-03-13 12:00 ` Mark Brown
2008-03-11 2:00 ` David Brownell
2008-03-11 15:19 ` Liam Girdwood
2008-03-12 6:29 ` David Brownell
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=1205230841.13653.204.camel@localhost.localdomain \
--to=lg@opensource.wolfsonmicro.com \
--cc=akpm@linux-foundation.org \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=david-b@pacbell.net \
--cc=linux-arm-kernel@lists.arm.linux.org.uk \
--cc=linux-kernel@vger.kernel.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