Re: [PATCH v7 0/6] Add a multicolor LED driver for groups of monochromatic LEDs

From: Lee Jones
Date: Wed Feb 22 2023 - 10:05:02 EST


On Mon, 20 Feb 2023, Jean-Jacques Hiblot wrote:

> Hi Pavel,
>
> Would you be kind enough and have a look at this series ? It may not be the
> prettiest series of all,  but the feature make senses as it provides an
> atomic way of handling color leds from user space.
>
> Any feedback would be appreciated.

If Pavel doesn't get back to you soon, I'll do my best to take a look
through.

> On 09/01/2023 18:19, Lee Jones wrote:
> > On Mon, 02 Jan 2023, Jean-Jacques Hiblot wrote:
> > > Some HW design implement multicolor LEDs with several monochromatic LEDs.
> > > Grouping the monochromatic LEDs allows to configure them in sync and use
> > > the triggers.
> > > The PWM multicolor LED driver implements such grouping but only for
> > > PWM-based LEDs. As this feature is also desirable for the other types of
> > > LEDs, this series implements it for any kind of LED device.
> > Another for Pavel.
> > > changes v6->v7:
> > > - in led_mcg_probe() increment the counter at the end of the loop for
> > > clarity.
> > >
> > > changes v5->v6:
> > > - restore sysfs access to the leds when the device is removed
> > >
> > > changes v4->v5:
> > > - Use "depends on COMPILE_TEST || OF" in Kconfig to indicate that OF
> > > is a functional requirement, not just a requirement for the
> > > compilation.
> > > - in led_mcg_probe() check if devm_of_led_get_optional() returns an
> > > error before testing for the end of the list.
> > > - use sysfs_emit() instead of sprintf() in color_show().
> > > - some grammar fixes in the comments and the commit logs.
> > >
> > > changes v2->v3, only minor changes:
> > > - rephrased the Kconfig descritpion
> > > - make the sysfs interface of underlying LEDs read-only only if the probe
> > > is successful.
> > > - sanitize the header files
> > > - removed the useless call to dev_set_drvdata()
> > > - use dev_fwnode() to get the fwnode to the device.
> > >
> > > changes v1->v2:
> > > - Followed Rob Herrings's suggestion to make the dt binding much simpler.
> > > - Added a patch to store the color property of a LED in its class
> > > structure (struct led_classdev).
> > >
> > >
> > > Jean-Jacques Hiblot (6):
> > > devres: provide devm_krealloc_array()
> > > leds: class: simplify the implementation of devm_of_led_get()
> > > leds: provide devm_of_led_get_optional()
> > > leds: class: store the color index in struct led_classdev
> > > dt-bindings: leds: Add binding for a multicolor group of LEDs
> > > leds: Add a multicolor LED driver to group monochromatic LEDs
> > >
> > > Documentation/ABI/testing/sysfs-class-led | 9 +
> > > .../bindings/leds/leds-group-multicolor.yaml | 64 +++++++
> > > drivers/leds/led-class.c | 65 +++++--
> > > drivers/leds/rgb/Kconfig | 10 ++
> > > drivers/leds/rgb/Makefile | 1 +
> > > drivers/leds/rgb/leds-group-multicolor.c | 166 ++++++++++++++++++
> > > include/linux/device.h | 13 ++
> > > include/linux/leds.h | 3 +
> > > 8 files changed, 317 insertions(+), 14 deletions(-)
> > > create mode 100644 Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
> > > create mode 100644 drivers/leds/rgb/leds-group-multicolor.c
> > >
> > > --
> > > 2.25.1
> > >

--
Lee Jones [李琼斯]