[PATCH v9 1/2] dt-bindings: leds: Document LTC3208 Multidisplay LED Driver
Jan Carlo Roleda <[email protected]> Thu, 6 Aug 2026 10:05:16 +0800
| Newsgroups | org.kernel.vger.linux-leds,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Add Devicetree Documentation for LTC3208 Multidisplay LED Driver. Signed-off-by: Jan Carlo Roleda <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> --- .../devicetree/bindings/leds/adi,ltc3208.yaml | 183 +++++++++++++++++++++ MAINTAINERS | 7 + 2 files changed, 190 insertions(+) diff --git a/Documentation/devicetree/bindings/leds/adi,ltc3208.yaml b/Documentation/devicetree/bindings/leds/adi,ltc3208.yaml new file mode 100644 index 000000000000..c6697816b7d9 --- /dev/null +++ b/Documentation/devicetree/bindings/leds/adi,ltc3208.yaml @@ -0,0 +1,183 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +# Copyright (c) 2026 Analog Devices, Inc. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/adi,ltc3208.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: LTC3208 Multidisplay LED Controller from Linear Technologies (Now Analog Devices) + +maintainers: + - Jan Carlo Roleda <[email protected]> + +description: + The LTC3208 is a multidisplay LED controller that can support up to 1A to all + connected LEDs. + + The datasheet for this device can be found in + https://www.analog.com/en/products/ltc3208.html + +properties: + compatible: + const: adi,ltc3208 + + reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + adi,disable-camhl-pin: + type: boolean + description: + Configures whether the external CAMHL pin is disabled. + If disabled then the output pins associated with CAM will always select + the CAM register's high half-byte brightness. + + adi,cfg-enrgbs-pin: + type: boolean + description: + Configures which channel the ENRGBS pin toggles when it receives a signal. + ENRGBS pin controls the SUB channel's output pins if this is set, + or RGB channel's output pins if this is unset. + + adi,disable-rgb-aux4-dropout: + type: boolean + description: + Configures the RGB and AUX4 dropout signals to be disabled. + + adi,aux1-channel: + $ref: /schemas/types.yaml#/definitions/string + description: + LED Channel that the AUX1 output pin mirrors its brightness level from. + enum: [aux, main, sub, cam] + default: aux + + adi,aux2-channel: + $ref: /schemas/types.yaml#/definitions/string + description: + LED Channel that the AUX2 output pin mirrors its brightness level from. + enum: [aux, main, sub, cam] + default: aux + + adi,aux3-channel: + $ref: /schemas/types.yaml#/definitions/string + description: + LED Channel that the AUX3 output pin mirrors its brightness level from. + enum: [aux, main, sub, cam] + default: aux + + adi,aux4-channel: + $ref: /schemas/types.yaml#/definitions/string + description: + LED Channel that the AUX4 output pin mirrors its brightness level from. + enum: [aux, main, sub, cam] + default: aux + +patternProperties: + "^led@[0-7]$": + type: object + $ref: /schemas/leds/common.yaml# + unevaluatedProperties: false + properties: + reg: + description: + LED Channel Number. each channel maps to a specific channel group used + to configure the brightness level of the output pins corresponding to + the channel. + enum: + - 0 # Main Channel (8-bit brightness) + - 1 # Sub Channel (8-bit brightness) + - 2 # AUX Channel (4-bit brightness) + - 3 # Camera Channel, Low-side byte (4-bit brightness) + - 4 # Camera Channel, High-side byte (4-bit brightness) + - 5 # Red Channel (4-bit brightness) + - 6 # Blue Channel (4-bit brightness) + - 7 # Green Channel (4-bit brightness) + 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@1b { + compatible = "adi,ltc3208"; + reg = <0x1b>; + #address-cells = <1>; + #size-cells = <0>; + adi,disable-camhl-pin; + adi,cfg-enrgbs-pin; + adi,disable-rgb-aux4-dropout; + + /* MAIN */ + led@0 { + reg = <0>; + function = LED_FUNCTION_ACTIVITY; + color = <LED_COLOR_ID_WHITE>; + }; + + /* SUB */ + led@1 { + reg = <1>; + function = LED_FUNCTION_ACTIVITY; + color = <LED_COLOR_ID_WHITE>; + }; + + /* AUX */ + led@2 { + reg = <2>; + function = LED_FUNCTION_ACTIVITY; + color = <LED_COLOR_ID_WHITE>; + }; + + /* CAMLO */ + led@3 { + reg = <3>; + function = LED_FUNCTION_FLASH; + color = <LED_COLOR_ID_WHITE>; + }; + + /* CAMHI */ + led@4 { + reg = <4>; + function = LED_FUNCTION_FLASH; + color = <LED_COLOR_ID_WHITE>; + }; + + /* RED */ + led@5 { + reg = <5>; + function = LED_FUNCTION_INDICATOR; + color = <LED_COLOR_ID_RED>; + }; + + /* BLUE */ + led@6 { + reg = <6>; + function = LED_FUNCTION_INDICATOR; + color = <LED_COLOR_ID_BLUE>; + }; + + /* GREEN */ + led@7 { + reg = <7>; + function = LED_FUNCTION_INDICATOR; + color = <LED_COLOR_ID_GREEN>; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 2fb1c75afd16..2fd6ffdaaf04 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -15223,6 +15223,13 @@ W: https://ez.analog.com/linux-software-drivers F: Documentation/devicetree/bindings/iio/temperature/adi,ltc2983.yaml F: drivers/iio/temperature/ltc2983.c +LTC3208 LED DRIVER +M: Jan Carlo Roleda <[email protected]> +L: [email protected] +S: Maintained +W: https://ez.analog.com/linux-software-drivers +F: Documentation/devicetree/bindings/leds/adi,ltc3208.yaml + LTC4282 HARDWARE MONITOR DRIVER M: Nuno Sa <[email protected]> L: [email protected] -- 2.43.0