Re: [PATCH v5 1/4] dt-bindings: backlight: Add max25014 support
From: Maud Spierings <maudspierings@gocontroll.com>
Date: 2025-11-10 07:55:24
Also in:
dri-devel, imx, linux-arm-kernel, linux-devicetree, linux-leds, lkml
On 11/7/25 19:16, Conor Dooley wrote:
On Fri, Nov 07, 2025 at 01:49:58PM +0100, Maud Spierings via B4 Relay wrote:quoted
From: Maud Spierings <maudspierings@gocontroll.com> The Maxim MAX25014 is a 4-channel automotive grade backlight driver IC with integrated boost controller. Signed-off-by: Maud Spierings <maudspierings@gocontroll.com> --- In the current implementation the control registers for channel 1, control all channels. So only one led subnode with led-sources is supported right now. If at some point the driver functionality is expanded the bindings can be easily extended with it.I'm sorry if I asked this before and forgot or w/e, but how backwards compatible is this? If they control all channels and it gets changed to only control channel one, how will a changed kernel understand the difference between a new devicetree that only wants to control channel 1 and an old devicetree that is trying to use channel 1 to control all channels?
The idea is that an implementation like that will add multiple led@ subnodes without the led-sources property. So devicetrees controlled by one channel will still have only one led with multiple sources in the devicetree. Kind regards, Maud
quoted
--- .../bindings/leds/backlight/maxim,max25014.yaml | 107 +++++++++++++++++++++ MAINTAINERS | 5 + 2 files changed, 112 insertions(+)diff --git a/Documentation/devicetree/bindings/leds/backlight/maxim,max25014.yaml b/Documentation/devicetree/bindings/leds/backlight/maxim,max25014.yaml new file mode 100644 index 000000000000..e83723224b07 --- /dev/null +++ b/Documentation/devicetree/bindings/leds/backlight/maxim,max25014.yaml@@ -0,0 +1,107 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/backlight/maxim,max25014.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Maxim max25014 backlight controller + +maintainers: + - Maud Spierings <maudspierings@gocontroll.com> + +properties: + compatible: + enum: + - maxim,max25014 + + reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + enable-gpios: + maxItems: 1 + + interrupts: + maxItems: 1 + + power-supply: + description: Regulator which controls the boost converter input rail. + + pwms: + maxItems: 1 + + maxim,iset: + $ref: /schemas/types.yaml#/definitions/uint32 + maximum: 15 + default: 11 + description: + Value of the ISET field in the ISET register. This controls the current + scale of the outputs, a higher number means more current. + + led@0: + type: object + description: Properties for a string of connected LEDs. + $ref: common.yaml# + + properties: + reg: + const: 0 + + led-sources: + allOf: + - minItems: 1 + maxItems: 4 + items: + minimum: 0 + maximum: 3 + default: [0, 1, 2, 3] + + default-brightness: + minimum: 0 + maximum: 100 + default: 50 + + required: + - reg + + additionalProperties: false + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/interrupt-controller/irq.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + backlight@6f { + compatible = "maxim,max25014"; + reg = <0x6f>; + #address-cells = <1>; + #size-cells = <0>; + enable-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; + interrupt-parent = <&gpio1>; + interrupts = <2 IRQ_TYPE_EDGE_FALLING>; + power-supply = <®_backlight>; + pwms = <&pwm1>; + maxim,iset = <7>; + + led@0 { + reg = <0>; + led-sources = <0 1 2 3>; + default-brightness = <50>; + }; + }; + };diff --git a/MAINTAINERS b/MAINTAINERS index 58c7e3f678d8..606ce086f758 100644 --- a/MAINTAINERS +++ b/MAINTAINERS@@ -15261,6 +15261,11 @@ F: Documentation/userspace-api/media/drivers/max2175.rst F: drivers/media/i2c/max2175* F: include/uapi/linux/max2175.h +MAX25014 BACKLIGHT DRIVER +M: Maud Spierings <maudspierings@gocontroll.com> +S: Maintained +F: Documentation/devicetree/bindings/leds/backlight/maxim,max25014.yaml + MAX31335 RTC DRIVER M: Antoniu Miclaus <antoniu.miclaus@analog.com> L: linux-rtc@vger.kernel.org-- 2.51.2