From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Liam Girdwood <lrg@slimlogic.co.uk>, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 13/14] Regulators: wm8400 - cleanup platform driver data handling
Date: Wed, 24 Feb 2010 11:21:26 -0800 [thread overview]
Message-ID: <20100224192126.GE25304@core.coreip.homeip.net> (raw)
In-Reply-To: <20100224191402.GA8316@rakim.wolfsonmicro.main>
On Wed, Feb 24, 2010 at 07:14:03PM +0000, Mark Brown wrote:
> On Wed, Feb 24, 2010 at 11:02:34AM -0800, Dmitry Torokhov wrote:
> > On Wed, Feb 24, 2010 at 10:25:49AM +0000, Mark Brown wrote:
>
> > > Nack due to this change - this change would make it impossible for
> > > callers to actually call the function. Note that nothing including only
> > > wm8400.h even has a struct declaration, much less defniition, for struct
> > > wm8400.
>
> > If you notice I added forward declaration of "struct wm8400" to wm8400.h
> > thus users can pass around pointer to the structure.
>
> This doesn't help unless you also provide a way for users to obtain a
> struct wm8400.
Why would they need it? Only code that creates instances of wm8400 needs
to know the definition of the sturcture, the rest can simply pass the
pointer around.
I guess there is disconnect between us and I do not see any users of
wm8400_register_regulator() in linux-next... Is there another tree I
could peek at?
>
> > I really think we should refrain from passing naked 'struct device *'
> > pointers as much as possible since it is error prone. Otherwise
> > wm8400_register_regulator has no way of ensuting that passed 'dev' is
> > indeed wm8400.
>
> Right, there's no type safety here (and this whole method of registering
> regulators is fairly deprecated anyway in favour of just straight
> platform data) but really it doesn't buy us much - the users get exactly
> the struct device they need to use passed in to them, there's really
> very little chance for them to get confused about what they're talking
> about.
--
Dmitry
next prev parent reply other threads:[~2010-02-24 19:21 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-24 7:37 [PATCH 00/14] Assorted small patches for regulators Dmitry Torokhov
2010-02-24 7:37 ` [PATCH 01/14] Regulators: virtual - use sysfs attribute groups Dmitry Torokhov
2010-02-24 10:50 ` Mark Brown
2010-02-25 10:35 ` Liam Girdwood
2010-02-24 7:37 ` [PATCH 02/14] Regulators: ab3100 - fix probe and remove annotations Dmitry Torokhov
2010-02-24 10:03 ` Mark Brown
2010-02-25 10:36 ` Liam Girdwood
2010-02-24 7:37 ` [PATCH 03/14] Regulators: fixed - annotate probe and remove methods Dmitry Torokhov
2010-02-24 10:43 ` Mark Brown
2010-02-25 10:36 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 04/14] Regulators: twl-regulator - mark probe function as __devinit Dmitry Torokhov
2010-02-24 10:05 ` Mark Brown
2010-02-25 10:36 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 05/14] Regulators: tps65023-regulator - mark probe method " Dmitry Torokhov
2010-02-24 11:31 ` Mark Brown
2010-02-25 10:37 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 06/14] Regulators: tps6507x-regulator " Dmitry Torokhov
2010-02-24 11:32 ` Mark Brown
2010-02-25 10:37 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 07/14] Regulators: lp3971 - fail if platform data was not supplied Dmitry Torokhov
2010-02-24 12:11 ` Mark Brown
2010-02-25 10:37 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 08/14] Regulators: max1586 - annotate probe and remove methods Dmitry Torokhov
2010-02-24 10:06 ` Mark Brown
2010-02-24 10:16 ` Dmitry Torokhov
2010-02-25 10:37 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 09/14] Regulators: max8660 " Dmitry Torokhov
2010-02-24 10:07 ` Mark Brown
2010-02-25 10:37 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 10/14] Regulators: pcap-regulator - clean up driver data after removal Dmitry Torokhov
2010-02-24 10:36 ` Mark Brown
2010-02-25 10:38 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 11/14] Regulators: wm831x-xxx " Dmitry Torokhov
2010-02-24 10:36 ` Mark Brown
2010-02-25 10:38 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 12/14] Regulators: wm8994 " Dmitry Torokhov
2010-02-24 10:20 ` Mark Brown
2010-02-25 10:39 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 13/14] Regulators: wm8400 - cleanup platform driver data handling Dmitry Torokhov
2010-02-24 10:25 ` Mark Brown
2010-02-24 19:02 ` Dmitry Torokhov
2010-02-24 19:14 ` Mark Brown
2010-02-24 19:21 ` Dmitry Torokhov [this message]
2010-02-24 20:40 ` Mark Brown
2010-02-25 9:55 ` Dmitry Torokhov
2010-02-25 10:43 ` Mark Brown
2010-02-25 11:02 ` Liam Girdwood
2010-02-24 7:38 ` [PATCH 14/14] Regulators: max8925-regulator - clean up driver data after removal Dmitry Torokhov
2010-02-24 10:28 ` Mark Brown
2010-02-25 10:39 ` Liam Girdwood
2010-02-24 10:03 ` [PATCH 00/14] Assorted small patches for regulators Mark Brown
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=20100224192126.GE25304@core.coreip.homeip.net \
--to=dmitry.torokhov@gmail.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lrg@slimlogic.co.uk \
/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
all inboxes | Powered by JetHome®