On Sun, 2007-10-21 at 14:54 +0200, Németh Márton wrote: > From: Márton Németh <[EMAIL PROTECTED]> > > Extends the leds subsystem with a blink_set() callback function which can > be optionally implemented by a LED driver. If implemented, the driver can use > the hardware acceleration for blinking a LED. > > Signed-off-by: Márton Németh <[EMAIL PROTECTED]> > --- > diff -uprN linux-2.6.23.orig/Documentation/leds-class.txt > linux-2.6.23/Documentation/leds-class.txt > --- linux-2.6.23.orig/Documentation/leds-class.txt 2007-10-09 > 22:31:38.000000000 +0200 > +++ linux-2.6.23/Documentation/leds-class.txt 2007-10-21 10:45:35.000000000 > +0200 > @@ -47,6 +49,19 @@ overhead, I suggest these become part of > above leaves scope for further attributes should they be needed. > > > + > +Hardware accelerated blink of LEDs > +================================== > + > +Some LEDs can be programmed to blink without any CPU interaction. To > +support this feature, a LED driver can optionally implement the > +blink_set() function (see <linux/leds.h>). If implemeted, the > +ledtrig-timer tries to use it. The blink_set() function should return > +0 if the blink setting is supported, or -EINVAL otherwise, which means > +that the LED will be turned on and off from software by the leds > +subsystem.
Hardware acceleration of the timer triggers is great to see and worst case I'll happily apply this patch to the LED tree, thanks. Before I do, I did wonder if we should enhance the meaning of the set_blink function a bit. If set_blink is called with delay_on = 0, delay_off = 0 it could mean "blink with some user friendly value, hardware assisted". The use for this would be a more generic blink trigger where you wouldn't need to know about magically hardware assisted values for blinking, it would simply make an LED blink in a hardware assisted way. We also need to document that the brightness_set overrides any blinking which may or may not be active (which is implied in your driver). Cheers, Richard - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/