[Linux-kernel-mentees] Help wanted in LED subsystem

Pavel Machek pavel at denx.de
Fri Sep 25 10:47:39 UTC 2020


In linux-next, I published TODO list for LED subsystem. Is that
something linux-kernel-mentees could help with?

Best regards,

+++ b/drivers/leds/TODO
@@ -0,0 +1,58 @@
+-*- org -*-
+* On/off LEDs should have max_brightness of 1
+* Get rid of enum led_brightness
+It is really an integer, as maximum is configurable. Get rid of it, or
+make it into typedef or something.
+* Review atomicity requirements in LED subsystem
+Calls that may and that may not block are mixed in same structure, and
+semantics is sometimes non-intuitive. (For example blink callback may
+not sleep.) Review the requirements for any bugs and document them
+* LED names are still a mess
+No two LEDs have same name, so the names are probably unusable for the
+userland. Nudge authors into creating common LED names for common
+? Perhaps check for known LED names during boot, and warn if there are
+LEDs not on the list?
+* Split drivers into subdirectories
+The number of drivers is getting big, and driver for on/off LED on a
+i/o port is really quite different from camera flash LED, which is
+really different from driver for RGB color LED that can run its own
+microcode. Split the drivers somehow.
+* Figure out what to do with RGB leds
+Multicolor is a bit too abstract. Yes, we can have
+Green-Magenta-Ultraviolet LED, but so far all the LEDs we support are
+RGB, and not even RGB-White or RGB-Yellow variants emerged.
+Multicolor is not a good fit for RGB LED. It does not really know
+about LED color.  In particular, there's no way to make LED "white".
+Userspace is interested in knowing "this LED can produce arbitrary
+color", which not all multicolor LEDs can.
+	Proposal: let's add "rgb" to led_colors in drivers/leds/led-core.c,
+	add corresponding device tree defines, and use that, instead of
+	multicolor for RGB LEDs.
+	We really need to do that now; "white" stuff can wait.
+RGB LEDs are quite common, and it would be good to be able to turn LED
+white and to turn it into any arbitrary color. It is essential that
+userspace is able to set arbitrary colors, and it might be good to
+have that ability from kernel, too... to allow full-color triggers.
+* Command line utility to manipulate the LEDs?
+/sys interface is not really suitable to use by hand, should we have
+an utility to perform LED control?

(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.linuxfoundation.org/pipermail/linux-kernel-mentees/attachments/20200925/7e70d5d4/attachment.sig>

More information about the Linux-kernel-mentees mailing list