Re: [PATCH v2 4/6] dt-bindings: ti-lmu: Modify dt bindings for the LM3697

From: Jacek Anaszewski
Date: Thu Apr 11 2019 - 15:48:28 EST


Hi Rob,

I've collected references to the DT patches we're waiting
to be reviewed. This is just to make sure that none of them
will be missed - recent traffic on the linux-leds list
is a bit heavier.

[0] - draft of LED multi color class - we would especially like
to get a feedback on the proposed brightness-model DT design
[1][2] - LM3697 backlight driver rework
[3][4] - LM36274 backlight driver with regulator support

On 4/5/19 4:28 PM, Dan Murphy wrote:
The LM3697 is a single function LED driver. The single function LED
driver needs to reside in the LED directory as a dedicated LED driver
and not as a MFD device. The device does have common brightness and ramp
features and those can be accomodated by a TI LMU framework.

The LM3697 dt binding needs to be moved from the ti-lmu.txt and a dedicated
LED dt binding needs to be added. The new LM3697 LED dt binding will then
reside in the Documentation/devicetree/bindings/leds directory and follow the
current LED and general bindings guidelines.

Signed-off-by: Dan Murphy <dmurphy@xxxxxx>
---

v2 - Made changes to reference ti,brightness-resolution to the ti-lmu.txt -
https://lore.kernel.org/patchwork/patch/1054501/

.../devicetree/bindings/leds/leds-lm3697.txt | 73 +++++++++++++++++++
.../devicetree/bindings/mfd/ti-lmu.txt | 27 +------
2 files changed, 74 insertions(+), 26 deletions(-)
create mode 100644 Documentation/devicetree/bindings/leds/leds-lm3697.txt

diff --git a/Documentation/devicetree/bindings/leds/leds-lm3697.txt b/Documentation/devicetree/bindings/leds/leds-lm3697.txt
new file mode 100644
index 000000000000..02378f33c9ab
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/leds-lm3697.txt
@@ -0,0 +1,73 @@
+* Texas Instruments - LM3697 Highly Efficient White LED Driver
+
+The LM3697 11-bit LED driver provides high-
+performance backlight dimming for 1, 2, or 3 series
+LED strings while delivering up to 90% efficiency.
+
+This device is suitable for display and keypad Lighting
+
+Required properties:
+ - compatible:
+ "ti,lm3697"
+ - reg : I2C slave address
+ - #address-cells : 1
+ - #size-cells : 0
+
+Optional properties:
+ - enable-gpios : GPIO pin to enable/disable the device
+ - vled-supply : LED supply
+
+Required child properties:
+ - reg : 0 - LED is Controlled by bank A
+ 1 - LED is Controlled by bank B
+ - led-sources : Indicates which HVLED string is associated to which
+ control bank. This is a zero based property so
+ HVLED1 = 0, HVLED2 = 1, HVLED3 = 2.
+ Additional information is contained
+ in Documentation/devicetree/bindings/leds/common.txt
+
+Optional child properties:
+ - ti,brightness-resolution - see Documentation/devicetree/bindings/mfd/ti-lmu.txt
+ - ramp-up-ms: see Documentation/devicetree/bindings/mfd/ti-lmu.txt
+ - ramp-down-ms: see Documentation/devicetree/bindings/mfd/ti-lmu.txt
+ - label : see Documentation/devicetree/bindings/leds/common.txt
+ - linux,default-trigger :
+ see Documentation/devicetree/bindings/leds/common.txt
+
+Example:
+
+HVLED string 1 and 3 are controlled by control bank A and HVLED 2 string is
+controlled by control bank B.
+
+led-controller@36 {
+ compatible = "ti,lm3697";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x36>;
+
+ enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;
+ vled-supply = <&vbatt>;
+
+ led@0 {
+ reg = <0>;
+ led-sources = <0 2>;
+ ti,brightness-resolution = <2047>;
+ ramp-up-ms = <5000>;
+ ramp-down-ms = <1000>;
+ label = "white:first_backlight_cluster";
+ linux,default-trigger = "backlight";
+ };
+
+ led@1 {
+ reg = <1>;
+ led-sources = <1>;
+ ti,brightness-resolution = <255>;
+ ramp-up-ms = <500>;
+ ramp-down-ms = <1000>;
+ label = "white:second_backlight_cluster";
+ linux,default-trigger = "backlight";
+ };
+}
+
+For more product information please see the link below:
+http://www.ti.com/lit/ds/symlink/lm3697.pdf
diff --git a/Documentation/devicetree/bindings/mfd/ti-lmu.txt b/Documentation/devicetree/bindings/mfd/ti-lmu.txt
index 5881929d5f7a..a948a8f41b2c 100644
--- a/Documentation/devicetree/bindings/mfd/ti-lmu.txt
+++ b/Documentation/devicetree/bindings/mfd/ti-lmu.txt
@@ -8,7 +8,6 @@ TI LMU driver supports lighting devices below.
LM3632 Backlight and regulator
LM3633 Backlight, LED and fault monitor
LM3695 Backlight
- LM3697 Backlight and fault monitor
Required properties:
- compatible: Should be one of:
@@ -16,11 +15,10 @@ Required properties:
"ti,lm3632"
"ti,lm3633"
"ti,lm3695"
- "ti,lm3697"
- reg: I2C slave address.
0x11 for LM3632
0x29 for LM3631
- 0x36 for LM3633, LM3697
+ 0x36 for LM3633
0x63 for LM3695
Optional property:
@@ -51,7 +49,6 @@ Optional nodes:
Required properties:
- compatible: Should be one of:
"ti,lm3633-fault-monitor"
- "ti,lm3697-fault-monitor"
- leds: LED properties for LM3633. Please refer to [2].
- regulators: Regulator properties for LM3631 and LM3632.
Please refer to [3].
@@ -216,25 +213,3 @@ lm3695@63 {
};
};
};
-
-lm3697@36 {
- compatible = "ti,lm3697";
- reg = <0x36>;
-
- enable-gpios = <&pioC 2 GPIO_ACTIVE_HIGH>;
-
- backlight {
- compatible = "ti,lm3697-backlight";
-
- lcd {
- ti,brightness-resolution = <255>;
- led-sources = <0 1 2>;
- ramp-up-ms = <200>;
- ramp-down-ms = <200>;
- };
- };
-
- fault-monitor {
- compatible = "ti,lm3697-fault-monitor";
- };
-};


[0] https://marc.info/?l=linux-kernel&m=155414072611538&w=2
[1] https://marc.info/?l=devicetree&m=155447454524411&w=2
[2] https://lore.kernel.org/patchwork/patch/1058762/
[3] https://marc.info/?l=devicetree&m=155447624324995&w=2
[4] https://lore.kernel.org/patchwork/patch/1058779/

--
Best regards,
Jacek Anaszewski