public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.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 19:14:03 +0000	[thread overview]
Message-ID: <20100224191402.GA8316@rakim.wolfsonmicro.main> (raw)
In-Reply-To: <20100224190234.GD25304@core.coreip.homeip.net>

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.

> 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.

  reply	other threads:[~2010-02-24 19:14 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 [this message]
2010-02-24 19:21         ` Dmitry Torokhov
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=20100224191402.GA8316@rakim.wolfsonmicro.main \
    --to=broonie@opensource.wolfsonmicro.com \
    --cc=dmitry.torokhov@gmail.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