[PATCH 2/2] dt-bindings: leds: lp855x: Convert to json-schema

Rob Herring robh at kernel.org
Tue Dec 21 19:41:19 UTC 2021


On Fri, Dec 17, 2021 at 06:07:15PM +0100, Thierry Reding wrote:
> From: Thierry Reding <treding at nvidia.com>
> 
> Convert the Texas Instruments LP855x backlight device tree bindings from
> the free-form text format to json-schema.
> 
> Signed-off-by: Thierry Reding <treding at nvidia.com>
> ---
>  .../bindings/leds/backlight/lp855x.txt        |  72 ---------
>  .../bindings/leds/backlight/ti,lp8550.yaml    | 151 ++++++++++++++++++
>  2 files changed, 151 insertions(+), 72 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/leds/backlight/lp855x.txt
>  create mode 100644 Documentation/devicetree/bindings/leds/backlight/ti,lp8550.yaml
> 
> diff --git a/Documentation/devicetree/bindings/leds/backlight/lp855x.txt b/Documentation/devicetree/bindings/leds/backlight/lp855x.txt
> deleted file mode 100644
> index 88f56641fc28..000000000000
> --- a/Documentation/devicetree/bindings/leds/backlight/lp855x.txt
> +++ /dev/null
> @@ -1,72 +0,0 @@
> -lp855x bindings
> -
> -Required properties:
> -  - compatible: "ti,lp8550", "ti,lp8551", "ti,lp8552", "ti,lp8553",
> -                "ti,lp8555", "ti,lp8556", "ti,lp8557"
> -  - reg: I2C slave address (u8)
> -  - dev-ctrl: Value of DEVICE CONTROL register (u8). It depends on the device.
> -
> -Optional properties:
> -  - bl-name: Backlight device name (string)
> -  - init-brt: Initial value of backlight brightness (u8)
> -  - pwm-period: PWM period value. Set only PWM input mode used (u32)
> -  - rom-addr: Register address of ROM area to be updated (u8)
> -  - rom-val: Register value to be updated (u8)
> -  - power-supply: Regulator which controls the 3V rail
> -  - enable-supply: Regulator which controls the EN/VDDIO input
> -
> -Example:
> -
> -	/* LP8555 */
> -	backlight at 2c {
> -		compatible = "ti,lp8555";
> -		reg = <0x2c>;
> -
> -		dev-ctrl = /bits/ 8 <0x00>;
> -		pwm-period = <10000>;
> -
> -		/* 4V OV, 4 output LED0 string enabled */
> -		rom_14h {
> -			rom-addr = /bits/ 8 <0x14>;
> -			rom-val = /bits/ 8 <0xcf>;
> -		};
> -
> -		/* Heavy smoothing, 24ms ramp time step */
> -		rom_15h {
> -			rom-addr = /bits/ 8 <0x15>;
> -			rom-val = /bits/ 8 <0xc7>;
> -		};
> -
> -		/* 4 output LED1 string enabled */
> -		rom_19h {
> -			rom-addr = /bits/ 8 <0x19>;
> -			rom-val = /bits/ 8 <0x0f>;
> -		};
> -	};
> -
> -	/* LP8556 */
> -	backlight at 2c {
> -		compatible = "ti,lp8556";
> -		reg = <0x2c>;
> -
> -		bl-name = "lcd-bl";
> -		dev-ctrl = /bits/ 8 <0x85>;
> -		init-brt = /bits/ 8 <0x10>;
> -	};
> -
> -	/* LP8557 */
> -	backlight at 2c {
> -		compatible = "ti,lp8557";
> -		reg = <0x2c>;
> -		enable-supply = <&backlight_vddio>;
> -		power-supply = <&backlight_vdd>;
> -
> -		dev-ctrl = /bits/ 8 <0x41>;
> -		init-brt = /bits/ 8 <0x0a>;
> -
> -		/* 4V OV, 4 output LED string enabled */
> -		rom_14h {
> -			rom-addr = /bits/ 8 <0x14>;
> -			rom-val = /bits/ 8 <0xcf>;
> -		};
> -	};
> diff --git a/Documentation/devicetree/bindings/leds/backlight/ti,lp8550.yaml b/Documentation/devicetree/bindings/leds/backlight/ti,lp8550.yaml
> new file mode 100644
> index 000000000000..412779a5462b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/leds/backlight/ti,lp8550.yaml
> @@ -0,0 +1,151 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/leds/backlight/ti,lp8550.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments LP855x family devicetree bindings
> +
> +maintainers:
> +  - Milo Kim <milo.kim at ti.com>
> +  - Rob Herring <robh+dt at kernel.org>

I don't know anything about this h/w.

> +
> +properties:
> +  compatible:
> +    enum:
> +      - ti,lp8550
> +      - ti,lp8551
> +      - ti,lp8552
> +      - ti,lp8553
> +      - ti,lp8555
> +      - ti,lp8556
> +      - ti,lp8557
> +
> +  reg:
> +    maxItems: 1
> +
> +  dev-ctrl:
> +    $ref: /schemas/types.yaml#/definitions/uint8
> +    description: Value of DEVICE CONTROL register. It depends on the device.
> +
> +  bl-name:
> +    $ref: /schemas/types.yaml#/definitions/string
> +    description: Backlight device name
> +
> +  init-brt:
> +    $ref: /schemas/types.yaml#/definitions/uint8
> +    description: Initial value of backlight brightness
> +
> +  pwm-period:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description: PWM period value. Set only PWM input mode used
> +
> +  pwm-names:
> +    maxItems: 1
> +
> +  pwms:
> +    maxItems: 1
> +
> +  power-supply:
> +    description: Regulator which controls the 3V rail
> +
> +  enable-supply:
> +    description: Regulator which controls the EN/VDDIO input
> +
> +patternProperties:
> +  '^rom_[0-9a-f]{2}h$':
> +    type: object
> +    properties:
> +      rom-addr:
> +        $ref: /schemas/types.yaml#/definitions/uint8
> +        description: Register address of ROM area to be updated
> +
> +      rom-val:
> +        $ref: /schemas/types.yaml#/definitions/uint8
> +        description: Register value to be updated
> +
> +    additionalProperties: false
> +
> +    required:
> +      - rom-addr
> +      - rom-val
> +
> +additionalProperties: false
> +
> +required:
> +  - compatible
> +  - reg
> +  - dev-ctrl
> +
> +examples:
> +  # LP8555
> +  - |
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +
> +      backlight at 2c {
> +        compatible = "ti,lp8555";
> +        reg = <0x2c>;
> +
> +        dev-ctrl = /bits/ 8 <0x00>;
> +        pwm-period = <10000>;
> +
> +        /* 4V OV, 4 output LED0 string enabled */
> +        rom_14h {
> +          rom-addr = /bits/ 8 <0x14>;
> +          rom-val = /bits/ 8 <0xcf>;
> +        };
> +
> +        /* Heavy smoothing, 24ms ramp time step */
> +        rom_15h {
> +          rom-addr = /bits/ 8 <0x15>;
> +          rom-val = /bits/ 8 <0xc7>;
> +        };
> +
> +        /* 4 output LED1 string enabled */
> +        rom_19h {
> +          rom-addr = /bits/ 8 <0x19>;
> +          rom-val = /bits/ 8 <0x0f>;
> +        };
> +      };
> +    };
> +
> +  # LP8556
> +  - |
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +
> +      backlight at 2c {
> +        compatible = "ti,lp8556";
> +        reg = <0x2c>;
> +
> +        bl-name = "lcd-bl";
> +        dev-ctrl = /bits/ 8 <0x85>;
> +        init-brt = /bits/ 8 <0x10>;
> +      };
> +    };
> +
> +  # LP8557
> +  - |
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +
> +      backlight at 2c {
> +        compatible = "ti,lp8557";
> +        reg = <0x2c>;
> +        enable-supply = <&backlight_vddio>;
> +        power-supply = <&backlight_vdd>;
> +
> +        dev-ctrl = /bits/ 8 <0x41>;
> +        init-brt = /bits/ 8 <0x0a>;
> +
> +        /* 4V OV, 4 output LED string enabled */
> +        rom_14h {
> +          rom-addr = /bits/ 8 <0x14>;
> +          rom-val = /bits/ 8 <0xcf>;
> +        };
> +      };
> +    };
> -- 
> 2.34.1
> 
> 


More information about the dri-devel mailing list