On Thu, Jun 04, 2020 at 07:04:50AM -0500, Dan Murphy wrote: > Add DT bindings for the LEDs multicolor class framework. > Add multicolor ID to the color ID list for device tree bindings. > > CC: Rob Herring <robh@xxxxxxxxxx> > Acked-by: Pavel Machek <pavel@xxxxxx> > Acked-by: Jacek Anaszewski <jacek.anaszewski@xxxxxxxxx> > Signed-off-by: Dan Murphy <dmurphy@xxxxxx> > --- > .../bindings/leds/leds-class-multicolor.yaml | 39 +++++++++++++++++++ > include/dt-bindings/leds/common.h | 3 +- > 2 files changed, 41 insertions(+), 1 deletion(-) > create mode 100644 Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml > > diff --git a/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml > new file mode 100644 > index 000000000000..6cab2a1405e1 > --- /dev/null > +++ b/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml > @@ -0,0 +1,39 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/leds/leds-class-multicolor.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Common properties for the multicolor LED class. > + > +maintainers: > + - Dan Murphy <dmurphy@xxxxxx> > + > +description: | > + Bindings for multi color LEDs show how to describe current outputs of > + either integrated multi-color LED elements (like RGB, RGBW, RGBWA-UV > + etc.) or standalone LEDs, to achieve logically grouped multi-color LED > + modules. This is achieved by adding multi-led nodes layer to the > + monochrome LED bindings. > + The nodes and properties defined in this document are unique to the multicolor > + LED class. Common LED nodes and properties are inherited from the common.txt > + within this documentation directory. > + > +patternProperties: > + "^multi-led@([0-9a-f])$": > + type: object > + description: Represents the LEDs that are to be grouped. > + properties: > + #allOf: > + #- $ref: "common.yaml#" Why is this commented out? Other than it is wrong. Uncommented, this would be defining a DT property called 'allOf'. You can drop 'allOf' now. '$ref' should be at the level of 'properties'. > + > + color: > + $ref: /schemas/types.yaml#definitions/uint32 common.yaml already defines the type, so drop this. > + const: 8 # LED_COLOR_ID_MULTI > + description: | > + For multicolor LED support this property should be defined as > + LED_COLOR_ID_MULTI which can be found in include/linux/leds/common.h. > + > + required: > + - color > +... > diff --git a/include/dt-bindings/leds/common.h b/include/dt-bindings/leds/common.h > index 0ce7dfc00dcb..a463ce6a8794 100644 > --- a/include/dt-bindings/leds/common.h > +++ b/include/dt-bindings/leds/common.h > @@ -30,7 +30,8 @@ > #define LED_COLOR_ID_VIOLET 5 > #define LED_COLOR_ID_YELLOW 6 > #define LED_COLOR_ID_IR 7 > -#define LED_COLOR_ID_MAX 8 > +#define LED_COLOR_ID_MULTI 8 > +#define LED_COLOR_ID_MAX 9 > > /* Standard LED functions */ > /* Keyboard LEDs, usually it would be input4::capslock etc. */ > -- > 2.26.2 >