Skip to content

Commit 2228d9c

Browse files
committed
Merge tag 'leds-next-6.20' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds
Pull LED updates from Lee Jones: "New Support & Features: - Add support for the TI LP5812 4x3 matrix RGB LED driver, including autonomous animation engine control and extensive scan multiplexing modes - Add a new driver for the ams Osram AS3668 4-channel I2C LED controller - Extend the is31fl32xx driver to support the is31fl3293 variant, which features 3 channels and 12-bit PWM resolution Improvements & Fixes: - Prevent the ExpressWire KTD2801 chip from entering an undefined state by disabling interrupts during time-sensitive communication - Ensure the Qualcomm LPG driver detects hardware write failures by checking the return value of regmap_bulk_write() during LUT programming - Fix kernel-doc warnings in the lm3692x driver by documenting missing struct members and standardizing the comment style - Update the ExpressWire library to use fsleep() and unexport internal-only functions - Improve the is31fl32xx driver by reordering code to eliminate unnecessary forward declarations Cleanups & Refactoring: - Simplify the LP55XX common LED driver by utilizing the for_each_available_child_of_node_scoped() macro for more concise node iteration Device Tree Bindings Updates: - Add new YAML bindings for the TI LP5860 and LP5812 LED controllers, and the ams Osram AS3668 - Convert the TI LM3697 white LED driver binding to DT schema format - Allow multicolor LED nodes to be named with numeric suffixes (e.g., multi-led-0) to handle multiple instances without unit addresses - Document support for the PMH0101 variant in the Qualcomm LPG PWM and SPMI Flash LED bindings - Add the issi,is31fl3293 compatible string to the is31fl32xx binding" * tag 'leds-next-6.20' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds: dt-bindings: leds: Convert ti,lm3697 to DT schema leds: as3668: Driver for the ams Osram 4-channel i2c LED driver dt-bindings: leds: Add new as3668 support docs: leds: Document TI LP5812 LED driver leds: Add basic support for TI/National Semiconductor LP5812 LED Driver leds: qcom-lpg: Check the return value of regmap_bulk_write() dt-bindings: leds: qcom,spmi-flash-led: Add PMH0101 compatible dt-bindings: leds: leds-qcom-lpg: Add support for PMH0101 PWM dt-bindings: leds: Allow differently named multicolor LEDs leds: lp55xx: Simplify with scoped for each OF child loop dt-bindings: leds: add TI/National Semiconductor LP5812 LED Driver leds: is31f132xx: Add support for is31fl3293 leds: is31f132xx: Re-order code to remove forward declarations dt-bindings: leds: Add issi,is31fl3293 to leds-is31fl32xx leds: expresswire: Fix chip state breakage dt-bindings: leds: Add LP5860 LED controller leds: lm3692x: Fix kernel-doc for struct lm3692x_led
2 parents 4bfa4a5 + b2c87f5 commit 2228d9c

25 files changed

Lines changed: 1892 additions & 166 deletions
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/leds/ams,as3668.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Osram 4-channel i2c LED driver
8+
9+
maintainers:
10+
- Lukas Timmermann <linux@timmermann.space>
11+
12+
description:
13+
This IC can drive up to four separate LEDs.
14+
Having four channels suggests it could be used with a single RGBW LED.
15+
16+
properties:
17+
compatible:
18+
const: ams,as3668
19+
20+
reg:
21+
maxItems: 1
22+
23+
"#address-cells":
24+
const: 1
25+
26+
"#size-cells":
27+
const: 0
28+
29+
patternProperties:
30+
"^led@[0-3]$":
31+
type: object
32+
$ref: common.yaml#
33+
unevaluatedProperties: false
34+
35+
properties:
36+
reg:
37+
maxItems: 1
38+
39+
required:
40+
- compatible
41+
- reg
42+
- "#address-cells"
43+
- "#size-cells"
44+
45+
additionalProperties: false
46+
47+
examples:
48+
- |
49+
#include <dt-bindings/leds/common.h>
50+
51+
i2c {
52+
#address-cells = <1>;
53+
#size-cells = <0>;
54+
55+
led-controller@42 {
56+
compatible = "ams,as3668";
57+
reg = <0x42>;
58+
#address-cells = <1>;
59+
#size-cells = <0>;
60+
61+
led@0 {
62+
reg = <0x0>;
63+
function = LED_FUNCTION_STATUS;
64+
color = <LED_COLOR_ID_RED>;
65+
};
66+
67+
led@1 {
68+
reg = <0x1>;
69+
function = LED_FUNCTION_STATUS;
70+
color = <LED_COLOR_ID_GREEN>;
71+
};
72+
};
73+
};
74+

Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ description: |
2121
2222
properties:
2323
$nodename:
24-
pattern: "^multi-led(@[0-9a-f])?$"
24+
pattern: "^multi-led(@[0-9a-f]|-[0-9]+)?$"
2525

2626
color:
2727
description: |

Documentation/devicetree/bindings/leds/leds-is31fl32xx.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Required properties:
1010
issi,is31fl3235
1111
issi,is31fl3218
1212
issi,is31fl3216
13+
issi,is31fl3293
1314
si-en,sn3218
1415
si-en,sn3216
1516
- reg: I2C slave address

Documentation/devicetree/bindings/leds/leds-lm3697.txt

Lines changed: 0 additions & 73 deletions
This file was deleted.
Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/leds/leds-lp5860.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: LED driver for LP5860 RGB LED from Texas Instruments.
8+
9+
maintainers:
10+
- Steffen Trumtrar <kernel@pengutronix.de>
11+
12+
description: |
13+
The LP5860 is multi-channel, I2C and SPI RGB LED Driver that can group RGB LEDs
14+
into a LED group or control them individually.
15+
16+
For more product information please see the link below:
17+
https://www.ti.com/lit/ds/symlink/lp5860.pdf
18+
19+
allOf:
20+
- $ref: /schemas/spi/spi-peripheral-props.yaml#
21+
22+
properties:
23+
compatible:
24+
enum:
25+
- ti,lp5860
26+
27+
reg:
28+
maxItems: 1
29+
30+
'#address-cells':
31+
const: 1
32+
33+
'#size-cells':
34+
const: 0
35+
36+
patternProperties:
37+
'^multi-led@[0-9a-f]+$':
38+
type: object
39+
$ref: leds-class-multicolor.yaml#
40+
unevaluatedProperties: false
41+
42+
properties:
43+
reg:
44+
minimum: 0
45+
maximum: 198
46+
description:
47+
This property denotes the LED module number that is used
48+
for the child node.
49+
50+
'#address-cells':
51+
const: 1
52+
53+
'#size-cells':
54+
const: 0
55+
56+
patternProperties:
57+
"^led@[0-9a-f]+$":
58+
type: object
59+
$ref: common.yaml#
60+
unevaluatedProperties: false
61+
62+
properties:
63+
reg:
64+
maxItems: 1
65+
66+
required:
67+
- reg
68+
69+
required:
70+
- compatible
71+
- reg
72+
73+
unevaluatedProperties: false
74+
75+
examples:
76+
- |
77+
#include <dt-bindings/leds/common.h>
78+
79+
spi {
80+
#address-cells = <1>;
81+
#size-cells = <0>;
82+
83+
led-controller@0 {
84+
compatible = "ti,lp5860";
85+
reg = <0x0>;
86+
#address-cells = <1>;
87+
#size-cells = <0>;
88+
89+
multi-led@0 {
90+
#address-cells = <1>;
91+
#size-cells = <0>;
92+
reg = <0x0>;
93+
color = <LED_COLOR_ID_RGB>;
94+
95+
led@0 {
96+
reg = <0x0>;
97+
color = <LED_COLOR_ID_RED>;
98+
};
99+
100+
led@1 {
101+
reg = <0x1>;
102+
color = <LED_COLOR_ID_GREEN>;
103+
};
104+
105+
led@2 {
106+
reg = <0x2>;
107+
color = <LED_COLOR_ID_BLUE>;
108+
};
109+
};
110+
};
111+
};

Documentation/devicetree/bindings/leds/leds-qcom-lpg.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ properties:
4343
- items:
4444
- enum:
4545
- qcom,pm8550-pwm
46+
- qcom,pmh0101-pwm
4647
- const: qcom,pm8350c-pwm
4748
- items:
4849
- enum:

Documentation/devicetree/bindings/leds/qcom,spmi-flash-led.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ properties:
2929
- qcom,pm8150l-flash-led
3030
- qcom,pm8350c-flash-led
3131
- qcom,pm8550-flash-led
32+
- qcom,pmh0101-flash-led
3233
- qcom,pmi8998-flash-led
3334
- const: qcom,spmi-flash-led
3435

0 commit comments

Comments
 (0)