On 8/19/25 21:50, Rob Herring wrote:
On Tue, Aug 19, 2025 at 12:58:59PM +0200, Maud Spierings wrote:
The Maxim MAX25014 is a 4-channel automotive grade backlight driver IC
with intgrated boost controller.
Signed-off-by: Maud Spierings <maudspieri...@gocontroll.com>
---
.../bindings/leds/backlight/maxim,max25014.yaml | 79 ++++++++++++++++++++++
MAINTAINERS | 5 ++
2 files changed, 84 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
0000000000000000000000000000000000000000..30b591152fa31d5e43243cac44c72028b05b5f8a
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/backlight/maxim,max25014.yaml
@@ -0,0 +1,79 @@
+# 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 <maudspieri...@gocontroll.com>
+
+allOf:
+ - $ref: common.yaml#
+
+properties:
+ compatible:
+ enum:
+ - maxim,max25014
+
+ reg:
+ maxItems: 1
+
+ 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
done
+ default: 11
+ description:
+ Value of the ISET register field (0-15).
Perhaps a little on what this controls?
done, for now, it controls the current scale of the backlight, higher
number = more current. But I will put it in the description in v3
+
+ maxim,strings:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ description:
+ A 4-bit bitfield that describes which led strings to turn on.
+ minItems: 4
+ maxItems: 4
items:
maximum: 1
But why not just an 8-bit value 0x0-0xF?
That is possible too, the logic is inverted in the actual chip, a bit
set means the string is turned off, but that can be solved with a
bitwise not. This just felt like a natural way to read/edit it, an 8-bit
value you have to first translate the bits into a hex value which isn't
very clear about what it is actually doing.
Is it possible to to 0b0111 notation in a devicetree? That would make it
better at least.
+
+required:
+ - compatible
+ - reg
+ - maxim,strings
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ backlight: backlight@6f {
Drop unused labels.
oops dropped
+ reg = <0x6f>;
+ compatible = "maxim,max25014";
compatible is always first.
Messed that up in the dtsos too, fixed everywhere in v3
+ default-brightness = <50>;
+ enable-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
+ interrupt-parent = <&gpio1>;
+ interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_backlight>;
Generally we don't put pinctrl properties in examples as they are always
allowed.
dropped
+ power-supply = <®_backlight>;
+ pwms = <&pwm1>;
+ maxim,iset = <7>;
+ maxim,strings = <1 1 1 1>;
+ };
+ };
+
diff --git a/MAINTAINERS b/MAINTAINERS
index
e81d5f9fbd16cc384356804390d65652bbb9e3f6..11c73d2e37fac22aea852152746236c1472f41b8
100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -14972,6 +14972,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 <maudspieri...@gocontroll.com>
+S: Maintained
+F: Documentation/devicetree/bindings/leds/backlight/maxim,max25014.yaml
+
MAX31335 RTC DRIVER
M: Antoniu Miclaus <antoniu.micl...@analog.com>
L: linux-...@vger.kernel.org
--
2.50.1
Thanks for your review!
Kind regards,
Maud