Re: [PATCH v7 2/4] dt-bindings: leds: nxp,pca963x: add multicolor LED support

Krzysztof Kozlowski <[email protected]> Mon, 27 Jul 2026 08:22:05 +0200
Newsgroups org.kernel.vger.linux-leds,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel
Message-ID <20260727-mellow-iguana-of-drizzle-ebcced@quoll>
On Fri, Jul 24, 2026 at 09:48:16AM +0200, Loic Poulain wrote:
>      then:
>        patternProperties:
> -        "^led@[0-9a-f]+$":
> +        "^.*led@[0-9a-f]$":
>            properties:
>              reg:
>                maximum: 3
> +        "^multi-led@[0-9a-f]$":
> +          patternProperties:
> +            "^led@[0-9a-f]$":
> +              properties:
> +                reg:
> +                  maximum: 3
>    - if:
>        properties:
>          compatible:
> @@ -96,10 +136,16 @@ allOf:
>                - nxp,pca9634
>      then:
>        patternProperties:
> -        "^led@[0-9a-f]+$":
> +        "^.*led@[0-9a-f]$":

Why changing this? multi-led is below, so maybe you wanted to combine
both?

>            properties:
>              reg:
>                maximum: 7
> +        "^multi-led@[0-9a-f]$":
> +          patternProperties:
> +            "^led@[0-9a-f]$":
> +              properties:
> +                reg:
> +                  maximum: 7
>  
>  additionalProperties: false
>  
> @@ -143,4 +189,50 @@ examples:
>          };
>      };
>  
> +  - |
> +    #include <dt-bindings/leds/common.h>
> +
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        led-controller@62 {
> +            compatible = "nxp,pca9633";
> +            reg = <0x62>;
> +            #address-cells = <1>;
> +            #size-cells = <0>;
> +
> +            /* Three channels controlling one RGB LED */
> +            multi-led@0 {
> +                    reg = <0>;

Messed indentation.
> +                    color = <LED_COLOR_ID_RGB>;
> +                    function = LED_FUNCTION_STATUS;
> +                    #address-cells = <1>;
> +                    #size-cells = <0>;
> +
> +                    led@0 {
> +                            reg = <0>;
> +                            color = <LED_COLOR_ID_RED>;
> +                    };
> +
> +                    led@1 {
> +                            reg = <1>;
> +                            color = <LED_COLOR_ID_GREEN>;
> +                    };
> +
> +                    led@2 {
> +                            reg = <2>;
> +                            color = <LED_COLOR_ID_BLUE>;
> +                    };
> +            };
> +
> +            /* Remaining channel used as a plain white LED */
> +            led@3 {
> +                    reg = <3>;
> +                    color = <LED_COLOR_ID_WHITE>;
> +                    function = LED_FUNCTION_STATUS;
> +            };
> +        };
> +    };
> +
>  ...
> 
> -- 
> 2.34.1
>