| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181 |
- From: Vicentiu Galanopulo <[email protected]>
- To: Pavel Machek <[email protected]>, Lee Jones <[email protected]>,
- Rob Herring <[email protected]>,
- Krzysztof Kozlowski <[email protected]>,
- Conor Dooley <[email protected]>,
- Jonathan Corbet <[email protected]>,
- Vicentiu Galanopulo <[email protected]>,
- [email protected], [email protected],
- [email protected], [email protected]
- Cc: Krzysztof Kozlowski <[email protected]>
- Subject: [PATCH v11 2/3] dt-bindings: leds: Add LED1202 LED Controller
- Date: Wed, 18 Dec 2024 18:33:58 +0000 [thread overview]
- Message-ID: <[email protected]> (raw)
- In-Reply-To: <[email protected]>
- The LED1202 is a 12-channel low quiescent current LED driver with:
- * Supply range from 2.6 V to 5 V
- * 20 mA current capability per channel
- * 1.8 V compatible I2C control interface
- * 8-bit analog dimming individual control
- * 12-bit local PWM resolution
- * 8 programmable patterns
- If the led node is present in the controller then the channel is
- set to active.
- Signed-off-by: Vicentiu Galanopulo <[email protected]>
- Reviewed-by: Krzysztof Kozlowski <[email protected]>
- ---
- v1: https://lore.kernel.org/lkml/ZnCnnQfwuRueCIQ0@admins-Air/T/
- v2: https://lore.kernel.org/all/ZniNdGgKyUMV-hjq@admins-Air/T/
- v3: https://lore.kernel.org/all/ZniNdGgKyUMV-hjq@admins-Air/T/
-
- Changes in v4:
- - remove label property, use devm_led_classdev_register_ext instead
- Changes in v3:
- - remove active property
- Changes in v2:
- - renamed label to remove color from it
- - add color property for each node
- - add function and function-enumerator property for each node
- .../devicetree/bindings/leds/st,led1202.yaml | 132 ++++++++++++++++++
- 1 file changed, 132 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/leds/st,led1202.yaml
- --- /dev/null
- +++ b/Documentation/devicetree/bindings/leds/st,led1202.yaml
- @@ -0,0 +1,132 @@
- +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
- +%YAML 1.2
- +---
- +$id: http://devicetree.org/schemas/leds/st,led1202.yaml#
- +$schema: http://devicetree.org/meta-schemas/core.yaml#
- +
- +title: ST LED1202 LED controllers
- +
- +maintainers:
- + - Vicentiu Galanopulo <[email protected]>
- +
- +description: |
- + The LED1202 is a 12-channel low quiescent current LED controller
- + programmable via I2C; The output current can be adjusted separately
- + for each channel by 8-bit analog and 12-bit digital dimming control.
- + Datasheet available at
- + https://www.st.com/en/power-management/led1202.html
- +
- +properties:
- + compatible:
- + const: st,led1202
- +
- + reg:
- + maxItems: 1
- +
- + "#address-cells":
- + const: 1
- +
- + "#size-cells":
- + const: 0
- +
- +patternProperties:
- + "^led@[0-9a-f]$":
- + type: object
- + $ref: common.yaml#
- + unevaluatedProperties: false
- +
- + properties:
- + reg:
- + minimum: 0
- + maximum: 11
- +
- + required:
- + - reg
- +
- +required:
- + - compatible
- + - reg
- + - "#address-cells"
- + - "#size-cells"
- +
- +additionalProperties: false
- +
- +examples:
- + - |
- + #include <dt-bindings/leds/common.h>
- +
- + i2c {
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + led-controller@58 {
- + compatible = "st,led1202";
- + reg = <0x58>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + led@0 {
- + reg = <0x0>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_RED>;
- + function-enumerator = <1>;
- + };
- +
- + led@1 {
- + reg = <0x1>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_GREEN>;
- + function-enumerator = <2>;
- + };
- +
- + led@2 {
- + reg = <0x2>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_BLUE>;
- + function-enumerator = <3>;
- + };
- +
- + led@3 {
- + reg = <0x3>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_RED>;
- + function-enumerator = <4>;
- + };
- +
- + led@4 {
- + reg = <0x4>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_GREEN>;
- + function-enumerator = <5>;
- + };
- +
- + led@5 {
- + reg = <0x5>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_BLUE>;
- + function-enumerator = <6>;
- + };
- +
- + led@6 {
- + reg = <0x6>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_RED>;
- + function-enumerator = <7>;
- + };
- +
- + led@7 {
- + reg = <0x7>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_GREEN>;
- + function-enumerator = <8>;
- + };
- +
- + led@8 {
- + reg = <0x8>;
- + function = LED_FUNCTION_STATUS;
- + color = <LED_COLOR_ID_BLUE>;
- + function-enumerator = <9>;
- + };
- + };
- + };
- +...
|