Documentation / devicetree / bindings / leds / backlight / ti,lm3509.yaml


Based on kernel version 6.11. Page generated on 2024-09-24 08:21 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/leds/backlight/ti,lm3509.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: TI LM3509 High Efficiency Boost for White LED's and/or OLED Displays

maintainers:
  - Patrick Gansterer <paroga@paroga.com>

description:
  The LM3509 current mode boost converter offers two separate outputs.
  https://www.ti.com/product/LM3509

properties:
  compatible:
    const: ti,lm3509

  reg:
    maxItems: 1
 
  "#address-cells":
    const: 1
 
  "#size-cells":
    const: 0

  reset-gpios:
    maxItems: 1

  ti,brightness-rate-of-change-us:
    description: Brightness Rate of Change in microseconds.
    enum: [51, 13000, 26000, 52000]

  ti,oled-mode:
    description: Enable OLED mode.
    type: boolean

patternProperties:
  "^led@[01]$":
    type: object
    description: Properties for a string of connected LEDs.
    $ref: common.yaml#

    properties:
      reg:
        description:
          The control register that is used to program the two current sinks.
          The LM3509 has two registers (BMAIN and BSUB) and are represented
          as 0 or 1 in this property. The two current sinks can be controlled
          independently with both registers, or register BMAIN can be
          configured to control both sinks with the led-sources property.
        minimum: 0
        maximum: 1

      label: true

      led-sources:
        minItems: 1
        maxItems: 2
        items:
          minimum: 0
          maximum: 1

      default-brightness:
        minimum: 0
        maximum: 31
        default: 18

      max-brightness:
        minimum: 0
        maximum: 31
        default: 31

    required:
      - reg

    additionalProperties: false

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
 
        backlight@36 {
            compatible = "ti,lm3509";
            reg = <0x36>;
            reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>;
 
            ti,oled-mode;
            ti,brightness-rate-of-change-us = <52000>;
 
            #address-cells = <1>;
            #size-cells = <0>;
 
            led@0 {
                reg = <0>;
                led-sources = <0 1>;
                label = "lcd-backlight";
                default-brightness = <12>;
                max-brightness = <31>;
            };
        };
    };
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
 
        backlight@36 {
            compatible = "ti,lm3509";
            reg = <0x36>;
 
            #address-cells = <1>;
            #size-cells = <0>;
 
            led@0 {
                reg = <0>;
                default-brightness = <12>;
            };
 
            led@1 {
                reg = <1>;
                default-brightness = <15>;
            };
        };
    };