Add support for the LTM8054 voltage regulator
From: | Romain Gantois <romain.gantois-AT-bootlin.com> | |
To: | Liam Girdwood <lgirdwood-AT-gmail.com>, Mark Brown <broonie-AT-kernel.org>, Rob Herring <robh-AT-kernel.org>, Krzysztof Kozlowski <krzk+dt-AT-kernel.org>, Conor Dooley <conor+dt-AT-kernel.org>, Jonathan Cameron <jic23-AT-kernel.org>, David Lechner <dlechner-AT-baylibre.com>, Nuno Sá <nuno.sa-AT-analog.com>, Andy Shevchenko <andy-AT-kernel.org> | |
Subject: | [PATCH v2 0/5] Add support for the LTM8054 voltage regulator | |
Date: | Thu, 25 Sep 2025 14:37:32 +0200 | |
Message-ID: | <20250925-ltm8054-driver-v2-0-bb61a401a0dc@bootlin.com> | |
Cc: | Hans de Goede <hansg-AT-kernel.org>, Thomas Petazzoni <thomas.petazzoni-AT-bootlin.com>, linux-kernel-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, linux-iio-AT-vger.kernel.org, Romain Gantois <romain.gantois-AT-bootlin.com> | |
Archive-link: | Article |
Hello everyone, These patches depend on the following series from Hans de Goede: iio: processed channel handling fixes + Intel Dollar Cove TI PMIC ADC driver (v4) https://lore.kernel.org/all/20250811155453.31525-1-hansg@... This is version two of my series which adds initial support of the Linear Technology LTM8054 voltage regulator. The driver supports a fixed voltage and a tunable output current limit using a DAC-controlled pin. I'd say that the only unusual part of this series is the usage of the IIO consumer API in a regulator driver. I think this makes sense here, since the regulator driver has to access a DAC to read/set the output current limit. Since the regulator driver writes microvolts and the IIO consumer API takes millivolts, the reads and writes to the CTL DAC have to be scaled by a factor of 1000. Scaled reads are already supported in IIO, but scaled writes are not, which is why I've implemented them in patch 2/4. Please let me know what you think. Thanks, Romain Signed-off-by: Romain Gantois <romain.gantois@bootlin.com> --- Changes in v2: - Refactored iio_convert_processed_to_raw() to match what was done in Hans' series. - Added unit tests for IIO division. - Fixed coding style issues and removed unnecessary casts. - Link to v1: https://lore.kernel.org/r/20250916-ltm8054-driver-v1-0-fd... --- Romain Gantois (5): regulator: dt-bindings: Add Linear Technology LTM8054 regulator iio: add processed write API Add kunit tests for iio_divide_by_value() regulator: Support the LTM8054 voltage regulator regulator: ltm8054: Support output current limit control .../devicetree/bindings/regulator/adi,ltm8054.yaml | 73 +++++++ MAINTAINERS | 6 + drivers/iio/inkern.c | 120 +++++++++++ drivers/iio/test/Kconfig | 12 ++ drivers/iio/test/Makefile | 1 + drivers/iio/test/iio-test-divide.c | 212 +++++++++++++++++++ drivers/regulator/Kconfig | 9 + drivers/regulator/Makefile | 1 + drivers/regulator/ltm8054-regulator.c | 235 +++++++++++++++++++++ include/linux/iio/consumer.h | 36 ++++ 10 files changed, 705 insertions(+) --- base-commit: bd89f4b281945a63659687ef5c70c4442d7e4940 change-id: 20250728-ltm8054-driver-11cfa4741065 Best regards, -- Romain Gantois <romain.gantois@bootlin.com>