RE: sysfs and power management

From: samu.p.onkalo
Date: Wed Nov 03 2010 - 11:01:40 EST




>-----Original Message-----
>From: ext Greg KH [mailto:gregkh@xxxxxxx]
>Sent: 03 November, 2010 15:09
>To: Alan Cox
>Cc: Onkalo Samu.P (Nokia-MS/Tampere); ext Henrique de Moraes Holschuh;
>Alan Cox; akpm@xxxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
>Subject: Re: sysfs and power management
>
>On Wed, Nov 03, 2010 at 09:44:52AM +0000, Alan Cox wrote:
>> On Mon, 1 Nov 2010 11:07:40 -0700
>> Greg KH <gregkh@xxxxxxx> wrote:
>>
>> > On Mon, Nov 01, 2010 at 04:57:01PM +0000, Alan Cox wrote:
>> > > > I took a look to that. It seems that iio is more or less sysfs
>> > > > based. There are ring buffers and event device which are chardev
>> > > > based but still the data outside ring buffer and the control is
>> > > > sysfs based.
>> > >
>> > > IIO is sysfs dependant, heavyweight and makes no sense for some of
>> > > the sysfs based drivers. IIO is also staging based and Linus
>> > > already threw out the last attempt to unify these drivers sanely
>> > > with an ALS layer - which was smaller, cleaner and better !
>> >
>> > I think we need to revisit this issue again, before iio is merged to
>> > the main kernel tree. I've been totally ignoring the iio
>user/kernel
>> > api at the moment, waiting for things to settle down there
>>
>> Actually I think there is another way to do it cleanly
>>
>> Keep a flag per device (or per runtime pm struct of device)
>>
>> And on the open/close do
>>
>> if (runtime_pm on device && device has SYSFS_PM set)
>> pm_runtime_foo
>>
>> so that devices that need to be powered up to handle sysfs requests
>can
>> set a single flag and just work.
>
>That sounds like a reasonable idea.
>

I'm working with the implementation which adds possibility to add per attribute
open_close_notification method with minimal overhead to current system.

-Samu




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/