On Wed, Dec 11, 2024 at 06:07:29PM +0100, A. Sverdlin wrote: > From: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxxxx> > > Convert Texas Instruments' LP8860 LED driver bindings into YAML format. > > Acked-by: Andrew Davis <afd@xxxxxx> > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxxxx> > --- > Changelog: > v2: patternProperties: ^led@[0]$ -> ^led(@[0-3])?$ > > .../devicetree/bindings/leds/leds-lp8860.txt | 50 ---------- > .../devicetree/bindings/leds/ti,lp8860.yaml | 95 +++++++++++++++++++ > 2 files changed, 95 insertions(+), 50 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/leds/leds-lp8860.txt > create mode 100644 Documentation/devicetree/bindings/leds/ti,lp8860.yaml > > diff --git a/Documentation/devicetree/bindings/leds/leds-lp8860.txt b/Documentation/devicetree/bindings/leds/leds-lp8860.txt > deleted file mode 100644 > index 8bb25749a3da3..0000000000000 > --- a/Documentation/devicetree/bindings/leds/leds-lp8860.txt > +++ /dev/null > @@ -1,50 +0,0 @@ > -* Texas Instruments - lp8860 4-Channel LED Driver > - > -The LP8860-Q1 is an high-efficiency LED > -driver with boost controller. It has 4 high-precision > -current sinks that can be controlled by a PWM input > -signal, a SPI/I2C master, or both. > - > -Required properties: > - - compatible : > - "ti,lp8860" > - - reg : I2C slave address > - - #address-cells : 1 > - - #size-cells : 0 > - > -Optional properties: > - - enable-gpios : gpio pin to enable (active high)/disable the device. > - - vled-supply : LED supply > - > -Required child properties: > - - reg : 0 > - > -Optional child properties: > - - function : see Documentation/devicetree/bindings/leds/common.txt > - - color : see Documentation/devicetree/bindings/leds/common.txt > - - label : see Documentation/devicetree/bindings/leds/common.txt (deprecated) > - - linux,default-trigger : > - see Documentation/devicetree/bindings/leds/common.txt > - > -Example: > - > -#include <dt-bindings/leds/common.h> > - > -led-controller@2d { > - compatible = "ti,lp8860"; > - #address-cells = <1>; > - #size-cells = <0>; > - reg = <0x2d>; > - enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; > - vled-supply = <&vbatt>; > - > - led@0 { > - reg = <0>; > - function = LED_FUNCTION_BACKLIGHT; > - color = <LED_COLOR_ID_WHITE>; > - linux,default-trigger = "backlight"; > - }; > -} > - > -For more product information please see the link below: > -https://www.ti.com/product/lp8860-q1 > diff --git a/Documentation/devicetree/bindings/leds/ti,lp8860.yaml b/Documentation/devicetree/bindings/leds/ti,lp8860.yaml > new file mode 100644 > index 0000000000000..98eef21604b86 > --- /dev/null > +++ b/Documentation/devicetree/bindings/leds/ti,lp8860.yaml > @@ -0,0 +1,95 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/leds/ti,lp8860.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Texas Instruments - lp8860 4-Channel LED Driver > + > +maintainers: > + - Andrew Davis <afd@xxxxxx> > + > +description: | > + The LP8860-Q1 is an high-efficiency LED driver with boost controller. > + It has 4 high-precision current sinks that can be controlled by a PWM input > + signal, a SPI/I2C master, or both. > + > + For more product information please see the link below: > + https://www.ti.com/product/lp8860-q1 > + > +properties: > + compatible: > + const: ti,lp8860 > + > + reg: > + maxItems: 1 > + description: I2C slave address > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 0 > + > + enable-gpios: > + maxItems: 1 > + description: GPIO pin to enable (active high) / disable the device > + > + vled-supply: > + description: LED supply > + > +patternProperties: > + "^led(@[0-3])?$": unit-address can't be optional if 'reg' is required. And if 'reg' is made optional, then so should #address-cells/#size-cells. Otherwise, Reviewed-by: Rob Herring (Arm) <robh@xxxxxxxxxx> > + type: object > + $ref: common.yaml# > + unevaluatedProperties: false > + > + properties: > + reg: > + description: > + Index of the LED. > + const: 0 > + > + function: true > + color: true > + label: true > + linux,default-trigger: true > + > + required: > + - reg > + > +required: > + - compatible > + - reg > + - "#address-cells" > + - "#size-cells" > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + #include <dt-bindings/leds/common.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + led-controller@2d { > + compatible = "ti,lp8860"; > + #address-cells = <1>; > + #size-cells = <0>; > + reg = <0x2d>; > + enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; > + vled-supply = <&vbatt>; > + > + led@0 { > + reg = <0>; > + function = LED_FUNCTION_BACKLIGHT; > + color = <LED_COLOR_ID_WHITE>; > + linux,default-trigger = "backlight"; > + }; > + }; > + }; > + > +... > -- > 2.47.1 >