The Linear Technology LTM8054 is a Buck-Boost voltage regulator with an
input range of 5V to 36V and an output range of 1.2V to 36V.
The LTM8054's output voltage level is typically set using a voltage divider
between the Vout and FB pins, the FB pin being constantly regulated to
1.2V.
The output current limit of the LTM8054 may be statically set by placing a
sense resistor on a dedicated pin. This limit can then be lowered by
controlling the voltage level on the CTL pin.
Describe the LTM8054 voltage regulator.
Signed-off-by: Romain Gantois <romain.gantois@bootlin.com>
---
.../bindings/regulator/lltc,ltm8054.yaml | 77 ++++++++++++++++++++++
MAINTAINERS | 5 ++
2 files changed, 82 insertions(+)
diff --git a/Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml b/Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..4db11be178b0e662ec51f3d3d73202f8c32625d3
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/lltc,ltm8054.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Linear Technology LTM8054 buck-boost regulator
+
+maintainers:
+ - Romain Gantois <romain.gantois@bootlin.com>
+
+description:
+ This regulator operates over an input voltage range of 5V to 36V, and can
+ output from 1.2V to 36V. The output voltage level is typically set with a
+ voltage divider between the Vout pin and the FB pin which is internally
+ regulated to 1.2V.
+
+ The output current of the LTM8054 can be limited by tying the Iout pin to a
+ current sense resistor. This limit can be further lowered by applying a
+ voltage below 1.2V to the CTL pin.
+
+allOf:
+ - $ref: /schemas/regulator/regulator.yaml#
+
+properties:
+ compatible:
+ const: lltc,ltm8054
+
+ enable-gpios:
+ description: GPIO connected to the RUN pin.
+ maxItems: 1
+
+ lltc,fb-voltage-divider:
+ description:
+ An array of two integers containing the resistor values
+ R1 and R2 of the feedback voltage divider in Ohms.
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 2
+ maxItems: 2
+
+ lltc,iout-rsense-micro-ohms:
+ description:
+ Value of the output current sense resistor, in micro Ohms.
+
+ io-channels:
+ items:
+ - description: DAC controlling the voltage level of the CTL pin.
+
+ io-channel-names:
+ items:
+ - const: ctl
+
+required:
+ - compatible
+ - lltc,fb-voltage-divider
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ / {
+
+ regulator {
+ compatible = "lltc,ltm8054";
+
+ enable-gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
+
+ lltc,fb-voltage-divider = <1000000 68000>;
+
+ lltc,iout-rsense-micro-ohms = <20000>;
+
+ io-channels = <&dac 1>;
+ io-channel-names = "ctl";
+ };
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index fe168477caa45799dfe07de2f54de6d6a1ce0615..7160179e6bf9d45a241582c1b6df8c0ebf6c3641 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -14517,6 +14517,11 @@ W: https://ez.analog.com/linux-software-drivers
F: Documentation/devicetree/bindings/i2c/i2c-mux-ltc4306.txt
F: drivers/i2c/muxes/i2c-mux-ltc4306.c
+LTM8054 REGULATOR DRIVER
+M: Romain Gantois <romain.gantois@bootlin.com>
+S: Maintained
+F: Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml
+
LTP (Linux Test Project)
M: Andrea Cervesato <andrea.cervesato@suse.com>
M: Cyril Hrubis <chrubis@suse.cz>
--
2.51.0
On 9/16/25 5:24 AM, Romain Gantois wrote: > The Linear Technology LTM8054 is a Buck-Boost voltage regulator with an > input range of 5V to 36V and an output range of 1.2V to 36V. > > The LTM8054's output voltage level is typically set using a voltage divider > between the Vout and FB pins, the FB pin being constantly regulated to > 1.2V. > > The output current limit of the LTM8054 may be statically set by placing a > sense resistor on a dedicated pin. This limit can then be lowered by > controlling the voltage level on the CTL pin. > > Describe the LTM8054 voltage regulator. > > Signed-off-by: Romain Gantois <romain.gantois@bootlin.com> > --- > .../bindings/regulator/lltc,ltm8054.yaml | 77 ++++++++++++++++++++++ > MAINTAINERS | 5 ++ > 2 files changed, 82 insertions(+) > > diff --git a/Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml b/Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml > new file mode 100644 > index 0000000000000000000000000000000000000000..4db11be178b0e662ec51f3d3d73202f8c32625d3 > --- /dev/null > +++ b/Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml > @@ -0,0 +1,77 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/regulator/lltc,ltm8054.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Linear Technology LTM8054 buck-boost regulator > + > +maintainers: > + - Romain Gantois <romain.gantois@bootlin.com> > + > +description: > + This regulator operates over an input voltage range of 5V to 36V, and can > + output from 1.2V to 36V. The output voltage level is typically set with a > + voltage divider between the Vout pin and the FB pin which is internally > + regulated to 1.2V. > + > + The output current of the LTM8054 can be limited by tying the Iout pin to a > + current sense resistor. This limit can be further lowered by applying a > + voltage below 1.2V to the CTL pin. > + > +allOf: > + - $ref: /schemas/regulator/regulator.yaml# > + > +properties: > + compatible: > + const: lltc,ltm8054 Looks like they got bought by Analog Devices Inc., so adi,ltm8054. > + > + enable-gpios: > + description: GPIO connected to the RUN pin. > + maxItems: 1 > + > + lltc,fb-voltage-divider: > + description: > + An array of two integers containing the resistor values > + R1 and R2 of the feedback voltage divider in Ohms. > + $ref: /schemas/types.yaml#/definitions/uint32-array > + minItems: 2 > + maxItems: 2 > + > + lltc,iout-rsense-micro-ohms: > + description: > + Value of the output current sense resistor, in micro Ohms. > + > + io-channels: > + items: > + - description: DAC controlling the voltage level of the CTL pin. > + > + io-channel-names: > + items: > + - const: ctl > + > +required: > + - compatible > + - lltc,fb-voltage-divider > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + > + / { Examples usually don't have a root node. Probably explains the bot errors. (but you should have seen the same errors locally with make dt_binding_check.) > + > + regulator { > + compatible = "lltc,ltm8054"; > + > + enable-gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>; > + > + lltc,fb-voltage-divider = <1000000 68000>; > + > + lltc,iout-rsense-micro-ohms = <20000>; > + > + io-channels = <&dac 1>; > + io-channel-names = "ctl"; > + }; > + }; > diff --git a/MAINTAINERS b/MAINTAINERS > index fe168477caa45799dfe07de2f54de6d6a1ce0615..7160179e6bf9d45a241582c1b6df8c0ebf6c3641 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -14517,6 +14517,11 @@ W: https://ez.analog.com/linux-software-drivers > F: Documentation/devicetree/bindings/i2c/i2c-mux-ltc4306.txt > F: drivers/i2c/muxes/i2c-mux-ltc4306.c > > +LTM8054 REGULATOR DRIVER > +M: Romain Gantois <romain.gantois@bootlin.com> > +S: Maintained > +F: Documentation/devicetree/bindings/regulator/lltc,ltm8054.yaml > + > LTP (Linux Test Project) > M: Andrea Cervesato <andrea.cervesato@suse.com> > M: Cyril Hrubis <chrubis@suse.cz> >
On Tuesday, 16 September 2025 21:24:42 CEST David Lechner wrote: > On 9/16/25 5:24 AM, Romain Gantois wrote: > > The Linear Technology LTM8054 is a Buck-Boost voltage regulator with an > > input range of 5V to 36V and an output range of 1.2V to 36V. ... > > + The output current of the LTM8054 can be limited by tying the Iout pin > > to a + current sense resistor. This limit can be further lowered by > > applying a + voltage below 1.2V to the CTL pin. > > + > > +allOf: > > + - $ref: /schemas/regulator/regulator.yaml# > > + > > +properties: > > + compatible: > > + const: lltc,ltm8054 > > Looks like they got bought by Analog Devices Inc., so adi,ltm8054. > Ah yes, I'll also change the Kconfig and driver descriptions in that case. I'd like to keep the lltc,fb-voltage-divider property name though, since that's already used in an identical way by two other regulator bindings. ... > > +examples: > > + - | > > + #include <dt-bindings/gpio/gpio.h> > > + > > + / { > > Examples usually don't have a root node. Probably explains > the bot errors. (but you should have seen the same errors > locally with make dt_binding_check.) > I didn't see the errors but I'm guessing that's due to an out-of-date dtschema dependency on my system, thanks for pointing it out. Thanks, -- Romain Gantois, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On Wednesday, 17 September 2025 17:51:05 CEST Romain Gantois wrote: > On Tuesday, 16 September 2025 21:24:42 CEST David Lechner wrote: > > On 9/16/25 5:24 AM, Romain Gantois wrote: ... > > > > Examples usually don't have a root node. Probably explains > > the bot errors. (but you should have seen the same errors > > locally with make dt_binding_check.) > > I didn't see the errors but I'm guessing that's due to an out-of-date > dtschema dependency on my system, thanks for pointing it out. Just a quick update: turns out this wasn't due to an out-of-date dependency, it was because I was missing "DT_CHECKER_FLAGS=-m" Thanks, -- Romain Gantois, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On Tue, 16 Sep 2025 12:24:06 +0200, Romain Gantois wrote: > The Linear Technology LTM8054 is a Buck-Boost voltage regulator with an > input range of 5V to 36V and an output range of 1.2V to 36V. > > The LTM8054's output voltage level is typically set using a voltage divider > between the Vout and FB pins, the FB pin being constantly regulated to > 1.2V. > > The output current limit of the LTM8054 may be statically set by placing a > sense resistor on a dedicated pin. This limit can then be lowered by > controlling the voltage level on the CTL pin. > > Describe the LTM8054 voltage regulator. > > Signed-off-by: Romain Gantois <romain.gantois@bootlin.com> > --- > .../bindings/regulator/lltc,ltm8054.yaml | 77 ++++++++++++++++++++++ > MAINTAINERS | 5 ++ > 2 files changed, 82 insertions(+) > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/regulator/lltc,ltm8054.example.dtb: /: 'compatible' is a required property from schema $id: http://devicetree.org/schemas/root-node.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/regulator/lltc,ltm8054.example.dtb: /: 'model' is a required property from schema $id: http://devicetree.org/schemas/root-node.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/regulator/lltc,ltm8054.example.dtb: /: '#address-cells' is a required property from schema $id: http://devicetree.org/schemas/root-node.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/regulator/lltc,ltm8054.example.dtb: /: '#size-cells' is a required property from schema $id: http://devicetree.org/schemas/root-node.yaml# doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250916-ltm8054-driver-v1-1-fd4e781d33b9@bootlin.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
© 2016 - 2025 Red Hat, Inc.