All of lore.kernel.org
 help / color / mirror / Atom feed
From: Grant Likely <grant.likely@secretlab.ca>
To: Trent Piepho <tpiepho@freescale.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
	linux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,
	Richard Purdie <rpurdie@rpsys.net>
Subject: Re: [PATCH v3] leds: implement OpenFirmare GPIO LED driver
Date: Wed, 16 Jul 2008 22:15:31 -0600	[thread overview]
Message-ID: <20080717041531.GA27243@secretlab.ca> (raw)
In-Reply-To: <Pine.LNX.4.64.0807161546010.12709@t2.domain.actdsltmp>

On Wed, Jul 16, 2008 at 04:18:52PM -0700, Trent Piepho wrote:
> On Tue, 15 Jul 2008, Anton Vorontsov wrote:
> > Despite leds-gpio and leds-openfirmware-gpio similar purposes, there
> > is not much code can be shared between the two drivers (both are mostly
> > driver bindings anyway).
> 
> Why can't this driver use the existing gpio-led driver?  Basically, do
> something like this:
> 
> of_gpio_leds_probe(...)
> {
>  	gpio = of_get_gpio(np, 0);
>  	label = of_get_property(np, "label", NULL);
> 
>  	struct gpio_led led = {
>  		.name = label,
>  		.gpio = gpio,
>  	};
> 
>  	pdev = platform_device_register_simple("leds-gpio", 0, NULL, 0);
>  	platform_device_add_data(pdev, &led, sizeof(led));
> }

Ugh; that means registering *2* 'struct device' with the kernel instead of
one.  One as a platform device and one as an of_platform device.
It's bad enough that the LED scheme we're using for OF bindings has a
separate registration for every single LED.

Now that it comes to it, I worry that this driver takes the wrong
approach.  The number of resources dedicated per LED in this driver
seems pretty loony to me (one of_platform device per LED).  The fact
that the binding specifies one node per LED makes of_platform not a very
efficient solution.

I think it would be better to have a module that scans the device tree
for LED nodes and registers a single leds-gpio platform device for the
whole lot.

Thoughts?

g.

WARNING: multiple messages have this Message-ID (diff)
From: Grant Likely <grant.likely@secretlab.ca>
To: Trent Piepho <tpiepho@freescale.com>
Cc: Anton Vorontsov <avorontsov@ru.mvista.com>,
	Richard Purdie <rpurdie@rpsys.net>,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	Kumar Gala <galak@kernel.crashing.org>,
	linux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org
Subject: Re: [PATCH v3] leds: implement OpenFirmare GPIO LED driver
Date: Wed, 16 Jul 2008 22:15:31 -0600	[thread overview]
Message-ID: <20080717041531.GA27243@secretlab.ca> (raw)
In-Reply-To: <Pine.LNX.4.64.0807161546010.12709@t2.domain.actdsltmp>

On Wed, Jul 16, 2008 at 04:18:52PM -0700, Trent Piepho wrote:
> On Tue, 15 Jul 2008, Anton Vorontsov wrote:
> > Despite leds-gpio and leds-openfirmware-gpio similar purposes, there
> > is not much code can be shared between the two drivers (both are mostly
> > driver bindings anyway).
> 
> Why can't this driver use the existing gpio-led driver?  Basically, do
> something like this:
> 
> of_gpio_leds_probe(...)
> {
>  	gpio = of_get_gpio(np, 0);
>  	label = of_get_property(np, "label", NULL);
> 
>  	struct gpio_led led = {
>  		.name = label,
>  		.gpio = gpio,
>  	};
> 
>  	pdev = platform_device_register_simple("leds-gpio", 0, NULL, 0);
>  	platform_device_add_data(pdev, &led, sizeof(led));
> }

Ugh; that means registering *2* 'struct device' with the kernel instead of
one.  One as a platform device and one as an of_platform device.
It's bad enough that the LED scheme we're using for OF bindings has a
separate registration for every single LED.

Now that it comes to it, I worry that this driver takes the wrong
approach.  The number of resources dedicated per LED in this driver
seems pretty loony to me (one of_platform device per LED).  The fact
that the binding specifies one node per LED makes of_platform not a very
efficient solution.

I think it would be better to have a module that scans the device tree
for LED nodes and registers a single leds-gpio platform device for the
whole lot.

Thoughts?

g.

  reply	other threads:[~2008-07-17  4:15 UTC|newest]

Thread overview: 117+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-14 16:41 [PATCH] leds: implement OpenFirmare GPIO LED driver Anton Vorontsov
2008-07-14 16:41 ` Anton Vorontsov
2008-07-15  3:10 ` Stephen Rothwell
2008-07-15  3:10   ` Stephen Rothwell
2008-07-15 12:38   ` Anton Vorontsov
2008-07-15 12:38     ` Anton Vorontsov
2008-07-15 12:40     ` [PATCH v2] " Anton Vorontsov
2008-07-15 12:40       ` Anton Vorontsov
2008-07-15 12:54       ` Richard Purdie
2008-07-15 12:54         ` Richard Purdie
2008-07-15 13:24         ` Anton Vorontsov
2008-07-15 13:24           ` Anton Vorontsov
2008-07-15 13:31           ` Richard Purdie
2008-07-15 13:31             ` Richard Purdie
2008-07-15 14:23             ` Anton Vorontsov
2008-07-15 14:23               ` Anton Vorontsov
2008-07-15 14:43               ` Richard Purdie
2008-07-15 14:43                 ` Richard Purdie
2008-07-15 15:19                 ` [PATCH v3] " Anton Vorontsov
2008-07-15 15:19                   ` Anton Vorontsov
2008-07-16 23:18                   ` Trent Piepho
2008-07-16 23:18                     ` Trent Piepho
2008-07-17  4:15                     ` Grant Likely [this message]
2008-07-17  4:15                       ` Grant Likely
2008-07-17  5:13                       ` Trent Piepho
2008-07-17  5:13                         ` Trent Piepho
2008-07-17 13:55                         ` Anton Vorontsov
2008-07-17 13:55                           ` Anton Vorontsov
2008-07-17 20:01                           ` Trent Piepho
2008-07-17 20:01                             ` Trent Piepho
2008-07-17 14:05                       ` Anton Vorontsov
2008-07-17 14:05                         ` Anton Vorontsov
2008-07-17 14:13                         ` Anton Vorontsov
2008-07-17 14:13                           ` Anton Vorontsov
2008-07-17 15:04                           ` Grant Likely
2008-07-17 15:04                             ` Grant Likely
2008-07-17 15:20                             ` Anton Vorontsov
2008-07-17 15:20                               ` Anton Vorontsov
2008-07-17 18:05                               ` Grant Likely
2008-07-17 18:05                                 ` Grant Likely
2008-07-17 20:18                                 ` Trent Piepho
2008-07-17 20:18                                   ` Trent Piepho
2008-07-17 20:49                                   ` Grant Likely
2008-07-17 20:49                                     ` Grant Likely
2008-07-17 23:42                                   ` Anton Vorontsov
2008-07-17 23:42                                     ` Anton Vorontsov
2008-07-18  5:09                                     ` Grant Likely
2008-07-18  5:09                                       ` Grant Likely
2008-07-18  9:20                                     ` Trent Piepho
2008-07-18  9:20                                       ` Trent Piepho
2008-07-18 10:05                                       ` Anton Vorontsov
2008-07-18 10:05                                         ` Anton Vorontsov
2008-07-19 21:08                                         ` PIXIS gpio controller and gpio flags Trent Piepho
2008-07-19 21:08                                           ` Trent Piepho
2008-07-21 17:53                                           ` Anton Vorontsov
2008-07-21 17:53                                             ` Anton Vorontsov
2008-07-21 21:12                                             ` Trent Piepho
2008-07-21 21:12                                               ` Trent Piepho
2008-07-23 14:56                                               ` Anton Vorontsov
2008-07-23 14:56                                                 ` Anton Vorontsov
2008-07-23 23:42                                                 ` Trent Piepho
2008-07-23 23:42                                                   ` Trent Piepho
2008-07-25 16:48                                                   ` [RFC PATCH] of_gpio: implement of_get_gpio_flags() Anton Vorontsov
2008-07-25 16:48                                                     ` Anton Vorontsov
2008-07-26  8:26                                                     ` Trent Piepho
2008-07-26  8:26                                                       ` Trent Piepho
2008-07-25 20:38                                         ` [PATCH v3] leds: implement OpenFirmare GPIO LED driver Trent Piepho
2008-07-25 20:38                                           ` Trent Piepho
2008-07-25 21:01                                           ` [PATCH 1/2] leds: make the default trigger name const Trent Piepho
2008-07-25 21:01                                             ` Trent Piepho
2008-07-27  2:08                                             ` Grant Likely
2008-07-27  2:08                                               ` Grant Likely
2008-07-27 13:11                                               ` Stephen Rothwell
2008-07-27 13:11                                                 ` Stephen Rothwell
2008-07-28  1:56                                                 ` Trent Piepho
2008-07-28  1:56                                                   ` Trent Piepho
2008-07-28  2:02                                                   ` [PATCH v2] " Trent Piepho
2008-07-28  2:02                                                     ` Trent Piepho
2008-07-28  9:53                                                   ` [PATCH 1/2] " Anton Vorontsov
2008-07-28  9:53                                                     ` Anton Vorontsov
2008-08-29  1:22                                                     ` Trent Piepho
2008-08-29  1:22                                                       ` Trent Piepho
2008-07-25 21:01                                           ` [PATCH 2/2] leds: Support OpenFirmware led bindings Trent Piepho
2008-07-25 21:01                                             ` Trent Piepho
2008-07-27  2:21                                             ` Grant Likely
2008-07-27  2:21                                               ` Grant Likely
2008-07-28  8:31                                               ` Trent Piepho
2008-07-28  8:31                                                 ` Trent Piepho
2008-07-28 17:09                                                 ` Grant Likely
2008-07-28 17:09                                                   ` Grant Likely
2008-07-28 18:02                                                   ` Anton Vorontsov
2008-07-28 18:02                                                     ` Anton Vorontsov
2008-07-28 18:06                                                     ` Grant Likely
2008-07-28 18:06                                                       ` Grant Likely
2008-07-28 18:26                                                     ` Trent Piepho
2008-07-28 18:26                                                       ` Trent Piepho
2008-07-28 18:49                                                       ` Grant Likely
2008-07-28 18:49                                                         ` Grant Likely
2008-07-28 18:51                                                       ` Anton Vorontsov
2008-07-28 18:51                                                         ` Anton Vorontsov
2008-07-28 19:11                                                         ` Trent Piepho
2008-07-28 19:11                                                           ` Trent Piepho
2008-07-17 21:29                   ` [PATCH v3] leds: implement OpenFirmare GPIO LED driver Nate Case
2008-07-17 21:29                     ` Nate Case
2008-07-16 23:22                 ` [PATCH v2] " Trent Piepho
2008-07-16 23:22                   ` Trent Piepho
2008-07-17  5:59 ` [PATCH] " Segher Boessenkool
2008-07-17  5:59   ` Segher Boessenkool
2008-07-17 11:07   ` Anton Vorontsov
2008-07-17 11:07     ` Anton Vorontsov
2008-07-17 14:58     ` Sean MacLennan
2008-07-17 14:58       ` Sean MacLennan
2008-07-17 15:07     ` Grant Likely
2008-07-17 15:07       ` Grant Likely
2008-07-18  3:35       ` David Gibson
2008-07-18  3:35         ` David Gibson
2008-07-18  4:44         ` Grant Likely

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=20080717041531.GA27243@secretlab.ca \
    --to=grant.likely@secretlab.ca \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=rpurdie@rpsys.net \
    --cc=sfr@canb.auug.org.au \
    --cc=tpiepho@freescale.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.