From: Ante Knezic <knezic@helmholz.com>
WL-ICLED is a RGB LED with integrated IC from Wurth Elektronik.
Individual color brightness can be controlled via SPI protocol.
Signed-off-by: Ante Knezic <knezic@helmholz.com>
---
.../bindings/leds/leds-wl-icled.yaml | 88 +++++++++++++++++++
1 file changed, 88 insertions(+)
create mode 100644 Documentation/devicetree/bindings/leds/leds-wl-icled.yaml
diff --git a/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml
new file mode 100644
index 000000000000..bf79c7a1719b
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml
@@ -0,0 +1,88 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/leds/leds-wl-icled.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: LED driver for WL-ICLEDs from Wurth Elektronik.
+
+maintainers:
+ - Ante Knezic <ante.knezic@helmholz.de>
+
+description: |
+ The WL-ICLEDs are RGB LEDs with integrated controller that can be
+ daisy-chained to arbitrary number of LEDs. Communication with LEDs is
+ via SPI interface and can be single or two wire, depending on the model.
+ For more product information please see the link below:
+ https://www.we-online.com/en/components/products/WL-ICLED
+
+properties:
+ compatible:
+ enum:
+ - we,1315x246
+ - we,1315x002
+ - we,131x000
+ - we,131161x
+ - we,131212x
+
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 0
+
+patternProperties:
+ '^led@[0-9a-f]$':
+ type: object
+ $ref: leds-class-multicolor.yaml#
+ unevaluatedProperties: false
+
+ properties:
+ reg:
+ maxItems: 1
+ description:
+ This property denotes the LED position in the daisy chain
+ series. It is a zero based LED identifier.
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/leds/common.h>
+
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ icled@1 {
+ compatible = "we,131x000";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <1>;
+ cs-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
+
+ led@0 {
+ reg = <0>;
+ color = <LED_COLOR_ID_RGB>;
+ function = "error";
+ };
+
+ led@1 {
+ reg = <1>;
+ color = <LED_COLOR_ID_RGB>;
+ function = "warning";
+ };
+
+ led@2 {
+ reg = <2>;
+ color = <LED_COLOR_ID_RGB>;
+ function = "running";
+ };
+ };
+ };
+...
--
2.48.1
On Mon, Apr 14, 2025 at 03:28:50PM GMT, Ante Knezic wrote:
> From: Ante Knezic <knezic@helmholz.com>
>
> WL-ICLED is a RGB LED with integrated IC from Wurth Elektronik.
> Individual color brightness can be controlled via SPI protocol.
>
> Signed-off-by: Ante Knezic <knezic@helmholz.com>
> ---
> .../bindings/leds/leds-wl-icled.yaml | 88 +++++++++++++++++++
Filename based on compatible. Choose one compatible and use it here.
> 1 file changed, 88 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/leds/leds-wl-icled.yaml
>
> diff --git a/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml
> new file mode 100644
> index 000000000000..bf79c7a1719b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml
> @@ -0,0 +1,88 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/leds/leds-wl-icled.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: LED driver for WL-ICLEDs from Wurth Elektronik.
driver as Linux driver? Then drop and describe hardware.
Also drop full stop
> +
> +maintainers:
> + - Ante Knezic <ante.knezic@helmholz.de>
> +
> +description: |
> + The WL-ICLEDs are RGB LEDs with integrated controller that can be
> + daisy-chained to arbitrary number of LEDs. Communication with LEDs is
> + via SPI interface and can be single or two wire, depending on the model.
> + For more product information please see the link below:
> + https://www.we-online.com/en/components/products/WL-ICLED
> +
> +properties:
> + compatible:
> + enum:
> + - we,1315x246
> + - we,1315x002
> + - we,131x000
> + - we,131161x
> + - we,131212x
Is that a wildcard in each compatible?
> +
> + '#address-cells':
> + const: 1
> +
> + '#size-cells':
> + const: 0
> +
> +patternProperties:
> + '^led@[0-9a-f]$':
> + type: object
> + $ref: leds-class-multicolor.yaml#
> + unevaluatedProperties: false
> +
> + properties:
> + reg:
> + maxItems: 1
> + description:
> + This property denotes the LED position in the daisy chain
> + series. It is a zero based LED identifier.
> +
> +required:
> + - compatible
> + - reg
> +
Missing ref to spi periph schema. See other bindings.
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> + #include <dt-bindings/leds/common.h>
> +
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + icled@1 {
Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
led-controller
> + compatible = "we,131x000";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> + cs-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
> +
> + led@0 {
> + reg = <0>;
> + color = <LED_COLOR_ID_RGB>;
> + function = "error";
Use standard defines.
> + };
> +
> + led@1 {
> + reg = <1>;
> + color = <LED_COLOR_ID_RGB>;
> + function = "warning";
Best regards,
Krzysztof
On Tue, Apr 15, 2025 Krzysztof Kozlowski wrote: > > 1 file changed, 88 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/leds/leds-wl-icled.yaml > > > > diff --git a/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml > > new file mode 100644 > > index 000000000000..bf79c7a1719b > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml > > @@ -0,0 +1,88 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/leds/leds-wl-icled.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: LED driver for WL-ICLEDs from Wurth Elektronik. > > driver as Linux driver? Then drop and describe hardware. Sorry, I am not sure I quite understand what you mean here? Add "linux LED driver" to title? > Also drop full stop Ok, understood. > > + > > +maintainers: > > + - Ante Knezic <ante.knezic@helmholz.de> > > + > > +description: | > > + The WL-ICLEDs are RGB LEDs with integrated controller that can be > > + daisy-chained to arbitrary number of LEDs. Communication with LEDs is > > + via SPI interface and can be single or two wire, depending on the model. > > + For more product information please see the link below: > > + https://www.we-online.com/en/components/products/WL-ICLED > > + > > +properties: > > + compatible: > > + enum: > > + - we,1315x246 > > + - we,1315x002 > > + - we,131x000 > > + - we,131161x > > + - we,131212x > > Is that a wildcard in each compatible? Unfortunatelly, yes. Exact model names are quite elaborate, yet similar enough: 1315050930246 --> we,1315x246 1315050930002 --> we,1315x002 1313210530000 --> we,131x000 1312020030000 we,131x000 1311610030140 --> we,131161x 1312121320437 --> we,131212x This seemed easier than writing complete model number... You want compatible expanded to full number anyway?
On 16/04/2025 11:06, Ante Knezic wrote: > On Tue, Apr 15, 2025 Krzysztof Kozlowski wrote: >>> 1 file changed, 88 insertions(+) >>> create mode 100644 Documentation/devicetree/bindings/leds/leds-wl-icled.yaml >>> >>> diff --git a/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml >>> new file mode 100644 >>> index 000000000000..bf79c7a1719b >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/leds/leds-wl-icled.yaml >>> @@ -0,0 +1,88 @@ >>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>> +%YAML 1.2 >>> +--- >>> +$id: http://devicetree.org/schemas/leds/leds-wl-icled.yaml# >>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>> + >>> +title: LED driver for WL-ICLEDs from Wurth Elektronik. >> >> driver as Linux driver? Then drop and describe hardware. > Sorry, I am not sure I quite understand what you mean here? Add "linux LED driver" to > title? I am asking to drop it and instead describe the hardware. > >> Also drop full stop > Ok, understood. > >>> + >>> +maintainers: >>> + - Ante Knezic <ante.knezic@helmholz.de> >>> + >>> +description: | >>> + The WL-ICLEDs are RGB LEDs with integrated controller that can be >>> + daisy-chained to arbitrary number of LEDs. Communication with LEDs is >>> + via SPI interface and can be single or two wire, depending on the model. >>> + For more product information please see the link below: >>> + https://www.we-online.com/en/components/products/WL-ICLED >>> + >>> +properties: >>> + compatible: >>> + enum: >>> + - we,1315x246 >>> + - we,1315x002 >>> + - we,131x000 >>> + - we,131161x >>> + - we,131212x >> >> Is that a wildcard in each compatible? > Unfortunatelly, yes. Exact model names are quite elaborate, yet similar enough: > 1315050930246 --> we,1315x246 > 1315050930002 --> we,1315x002 > 1313210530000 --> we,131x000 > 1312020030000 we,131x000 > 1311610030140 --> we,131161x > 1312121320437 --> we,131212x > > This seemed easier than writing complete model number... You want compatible > expanded to full number anyway? Yes, otherwise git grep for model won't work. Best regards, Krzysztof
On Mon, 14 Apr 2025 15:28:50 +0200, Ante Knezic wrote: > From: Ante Knezic <knezic@helmholz.com> > > WL-ICLED is a RGB LED with integrated IC from Wurth Elektronik. > Individual color brightness can be controlled via SPI protocol. > > Signed-off-by: Ante Knezic <knezic@helmholz.com> > --- > .../bindings/leds/leds-wl-icled.yaml | 88 +++++++++++++++++++ > 1 file changed, 88 insertions(+) > create mode 100644 Documentation/devicetree/bindings/leds/leds-wl-icled.yaml > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/leds/leds-wl-icled.example.dtb: icled@1 (we,131x000): 'cs-gpios', 'reg' do not match any of the regexes: '^led@[0-9a-f]$', 'pinctrl-[0-9]+' from schema $id: http://devicetree.org/schemas/leds/leds-wl-icled.yaml# doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/35c7f697070b3939727f1115d3a279e280f72cd6.1744636666.git.knezic@helmholz.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
© 2016 - 2025 Red Hat, Inc.