1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/leds/backlight/lm3630a-backlight.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: TI LM3630A High-Efficiency Dual-String White LED
8
9maintainers:
10  - Lee Jones <lee.jones@linaro.org>
11  - Daniel Thompson <daniel.thompson@linaro.org>
12  - Jingoo Han <jingoohan1@gmail.com>
13
14description: |
15  The LM3630A is a current-mode boost converter which supplies the power and
16  controls the current in up to two strings of 10 LEDs per string.
17  https://www.ti.com/product/LM3630A
18
19properties:
20  compatible:
21    const: ti,lm3630a
22
23  reg:
24    maxItems: 1
25
26  '#address-cells':
27    const: 1
28
29  '#size-cells':
30    const: 0
31
32required:
33  - compatible
34  - reg
35  - '#address-cells'
36  - '#size-cells'
37
38patternProperties:
39  "^led@[01]$":
40    type: object
41    description: |
42      Properties for a string of connected LEDs.
43
44    properties:
45      reg:
46        description: |
47          The control bank that is used to program the two current sinks. The
48          LM3630A has two control banks (A and B) and are represented as 0 or 1
49          in this property. The two current sinks can be controlled
50          independently with both banks, or bank A can be configured to control
51          both sinks with the led-sources property.
52        minimum: 0
53        maximum: 1
54
55      label:
56        maxItems: 1
57
58      led-sources:
59        allOf:
60          - minItems: 1
61            maxItems: 2
62            items:
63              minimum: 0
64              maximum: 1
65
66      default-brightness:
67        description: Default brightness level on boot.
68        minimum: 0
69        maximum: 255
70
71      max-brightness:
72        description: Maximum brightness that is allowed during runtime.
73        minimum: 0
74        maximum: 255
75
76      ti,linear-mapping-mode:
77        description: |
78          Enable linear mapping mode. If disabled, then it will use exponential
79          mapping mode in which the ramp up/down appears to have a more uniform
80          transition to the human eye.
81        type: boolean
82
83    required:
84      - reg
85
86    additionalProperties: false
87
88additionalProperties: false
89
90examples:
91  - |
92    i2c {
93        #address-cells = <1>;
94        #size-cells = <0>;
95
96        led-controller@38 {
97                compatible = "ti,lm3630a";
98                reg = <0x38>;
99
100                #address-cells = <1>;
101                #size-cells = <0>;
102
103                led@0 {
104                        reg = <0>;
105                        led-sources = <0 1>;
106                        label = "lcd-backlight";
107                        default-brightness = <200>;
108                        max-brightness = <255>;
109                };
110        };
111    };
112  - |
113    i2c {
114        #address-cells = <1>;
115        #size-cells = <0>;
116
117        led-controller@38 {
118                compatible = "ti,lm3630a";
119                reg = <0x38>;
120
121                #address-cells = <1>;
122                #size-cells = <0>;
123
124                led@0 {
125                        reg = <0>;
126                        default-brightness = <150>;
127                        ti,linear-mapping-mode;
128                };
129
130                led@1 {
131                        reg = <1>;
132                        default-brightness = <225>;
133                        ti,linear-mapping-mode;
134                };
135        };
136    };
137