[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100310110153.GA6838@const.bordeaux.inria.fr>
Date: Wed, 10 Mar 2010 12:01:53 +0100
From: Samuel Thibault <samuel.thibault@...-lyon.org>
To: Greg KH <greg@...ah.com>, linux-kernel@...r.kernel.org,
lenz@...wisc.edu, rpurdie@...nedhand.com
Subject: Re: private field in led_classdev?
Samuel Thibault, le Wed 10 Mar 2010 10:44:52 +0100, a écrit :
> Greg KH, le Tue 09 Mar 2010 18:54:11 -0800, a écrit :
> > On Sun, Mar 07, 2010 at 03:31:12PM +0100, Samuel Thibault wrote:
> > > Would there be an objection to adding a void *private field to the
> > > led_classdev struct? It would be a lot less burden for the input
> > > key board leds support for finding out the keyboard device from the
> > > brightness_set callback, as each device may have a long series of leds,
> > > not just a fixed number of them.
> >
> > What's wrong with using the private pointer in the struct device
> > instead?
>
> Ah, right. In my case there is a struct device corresponding to the
> actual input device. I hadn't realized that since registering a led
> creates a new device, I have another private pointer which I can use.
One issue, however, is that led_classdev_register() calls
led_trigger_set_default(), which eventually calls the brightness_set
hook, but the private field (platform_data) still hasn't been
initialized, so the brightness_set hook has to abort setting the initial
state. In my case, after led_classdev_register and setting
platform_data, I can call the low level function by hand, it's just not
very pretty...
Samuel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists