| -*- 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 |
| clearly. |
| |
| * 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 |
| functionality. |
| |
| ? 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? |
| |
| In particular, LED names are still a mess (see above) and utility |
| could help there by presenting both old and new names while we clean |
| them up. |
| |
| In future, I'd like utility to accept both old and new names while we |
| clean them up. |
| |
| It would be also nice to have useful listing mode -- name, type, |
| current brightness/trigger... |
| |
| In future, it would be good to be able to set rgb led to particular |
| color. |
| |
| And probably user-friendly interface to access LEDs for particular |
| ethernet interface would be nice. |
| |