Re: [PATCH 3/4] dt-bindings: leds: Add binding for a multicolor group of LEDs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 01, 2022 at 11:33:22AM +0200, Jean-Jacques Hiblot wrote:
> 
> On 28/06/2022 00:12, Rob Herring wrote:
> > On Wed, Jun 15, 2022 at 05:49:17PM +0200, Jean-Jacques Hiblot wrote:
> > > This allows to group multiple monochromatic LEDs into a multicolor
> > > LED, e.g. RGB LEDs.
> > > 
> > > Signed-off-by: Jean-Jacques Hiblot <jjhiblot@xxxxxxxxxxxxxxx>
> > > ---
> > >   .../bindings/leds/leds-group-multicolor.yaml  | 94 +++++++++++++++++++
> > >   1 file changed, 94 insertions(+)
> > >   create mode 100644 Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
> > > 
> > > diff --git a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
> > > new file mode 100644
> > > index 000000000000..30a67985ae33
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
> > > @@ -0,0 +1,94 @@
> > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/leds/leds-group-multicolor.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Multi-color LED built with monochromatic LEDs
> > > +
> > > +maintainers:
> > > +  - Jean-Jacques Hiblot <jjhiblot@xxxxxxxxxxxxxxx>
> > > +
> > > +description: |
> > > +  This driver combines several monochromatic LEDs into one multi-color
> > > +  LED using the multicolor LED class.
> > > +
> > > +properties:
> > > +  compatible:
> > > +    const: leds-group-multicolor
> > > +
> > > +  multi-led:
> > > +    type: object
> > > +
> > > +    patternProperties:
> > > +      "^led-[0-9a-z]+$":
> > > +        type: object
> > > +        $ref: common.yaml#
> > > +
> > > +        additionalProperties: false
> > > +
> > > +        properties:
> > > +          leds:
> > Not a standard property. What is the type?
> That would be a reference to the node of a LED
> > Really, just do a GPIO multi-color LED binding similar to the PWM one
> > rather than adding this layer. I suppose you could combine LEDs from all
> > different controllers, but that seems somewhat unlikely to me.
> 
> I'm not using gpio leds, rather leds driven by two TLC5925.
> 
> I agree that combining from different model of controller is unlikely.
> However from 2 separate chips of the same model is not (ex: driving 5 RGB
> LEDs with two 8-output chips)
> 
> In the case of the TLC5925, that is not really a problem because as long as
> the chips are on the same CS, they are considered as a single entity by the
> driver. But for I2C chips at least that would be a problem.

Okay.

I think the binding can be simplified a bit to just this:

multi-led {
    compatible = "leds-group-multicolor";
    color = <LED_COLOR_ID_RGB>;
    function = LED_FUNCTION_INDICATOR;
    
    leds = <&red_led>, <&green_led>, <&blue_led>;
};

The individual color should be defined in the parent LED node (e.g. 
red_led). You can either look up the color or the index in 'leds' 
defines the color.

Also, I don't think 'max-brightness' here makes sense. That's a property 
of the parent LED.

Rob



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux