RE: [PATCH v5 05/26] leds: core: Add support for composing LED class device names

From: David Laight
Date: Fri Jun 28 2019 - 09:30:39 EST


From: Linus Walleij
> Sent: 28 June 2019 09:46
...
> A problem with LEDs is that it invites bikeshedding because it is too
> relateable.

Bikeshedding leds :-)

It also isn't at all clear how to handle bi-colour and tri-colour leds.
ISTR the usual interface lets you set the brightness, but more often
leds are single brightness but multi-colour.
Eg the ethernet 'speed' led which is (usually) off/orange/green.

Changing the brightness either means changing the current or using PWM.
Both really require more hardware support than changing colours.

I've done some led driving (for a front panel) from a PLD (small FPGA).
As well as the obvious things I did:
- dim: 1/8th on at 80Hz.
- flash: 1/8th on at 4Hz.
- orange: 50-50 red-green at 80Hz on an RGB led.

There was also the 'ethernet activity' led which could either be driven
by the hardware, or forced on/off/flash by the driver.
If driven by the hardware, the software could read the current state.

None of this really fitted the Linux leds interface.

David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)