devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator
@ 2025-04-21 12:18 Cedric Encarnacion
  2025-04-21 12:18 ` [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074 Cedric Encarnacion
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Cedric Encarnacion @ 2025-04-21 12:18 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jean Delvare,
	Guenter Roeck, Jonathan Corbet, Delphine CC Chiu
  Cc: devicetree, linux-kernel, linux-hwmon, linux-doc, linux-i2c,
	Cedric Encarnacion

Introduce hardware monitoring and regulator support for LT3074. The
component is an ultrafast, ultralow noise 3A, 5.5V dropout linear
regulator with a PMBus serial interface that allows telemetry for
input/output voltage, output current, and die temperature. It has a
single channel and requires a bias voltage which can be monitored via
manufacturer-specific registers.

Signed-off-by: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
---
Changes in v3:
- 
 * Non-nested dt-binding regulator support.
 * PMBUS_REGULATOR_ONE("vout") -> PMBUS_REGULATOR_ONE("regulator").
   New macro needs node-name to be matched.

- Link to v2: https://lore.kernel.org/r/20250225-upstream-lt3074-v2-0-18ad10ba542e@analog.com

Changes in v2:
 * Separated dt-binding for LT3074.
 * Added __maybe_unused attribute to of_device_id. This addresses kernel
   test robot warning.
 * Added entry to MAINTAINERS.

- Link to v1: https://lore.kernel.org/r/20250124-upstream-lt3074-v1-0-7603f346433e@analog.com

---
Cedric Encarnacion (2):
      dt-bindings: hwmon: pmbus: add lt3074
      hwmon: (pmbus/lt3074): add support for lt3074

 .../bindings/hwmon/pmbus/adi,lt3074.yaml           |  50 +++++++++
 Documentation/hwmon/index.rst                      |   1 +
 Documentation/hwmon/lt3074.rst                     |  72 ++++++++++++
 MAINTAINERS                                        |   9 ++
 drivers/hwmon/pmbus/Kconfig                        |  18 +++
 drivers/hwmon/pmbus/Makefile                       |   1 +
 drivers/hwmon/pmbus/lt3074.c                       | 122 +++++++++++++++++++++
 7 files changed, 273 insertions(+)
---
base-commit: 86d264b68309d9f9804db4079642b98104ca15df
change-id: 20250124-upstream-lt3074-123384246e0b

Best regards,
-- 
Cedric Encarnacion <cedricjustine.encarnacion@analog.com>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074
  2025-04-21 12:18 [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Cedric Encarnacion
@ 2025-04-21 12:18 ` Cedric Encarnacion
  2025-04-22  9:16   ` Krzysztof Kozlowski
  2025-04-22 13:25   ` Guenter Roeck
  2025-04-21 12:18 ` [PATCH v3 2/2] hwmon: (pmbus/lt3074): add support for lt3074 Cedric Encarnacion
  2025-04-21 13:22 ` [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Guenter Roeck
  2 siblings, 2 replies; 9+ messages in thread
From: Cedric Encarnacion @ 2025-04-21 12:18 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jean Delvare,
	Guenter Roeck, Jonathan Corbet, Delphine CC Chiu
  Cc: devicetree, linux-kernel, linux-hwmon, linux-doc, linux-i2c,
	Cedric Encarnacion

Add Analog Devices LT3074 Ultralow Noise, High PSRR Dropout Linear
Regulator.

Signed-off-by: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
---
 .../bindings/hwmon/pmbus/adi,lt3074.yaml           | 50 ++++++++++++++++++++++
 MAINTAINERS                                        |  7 +++
 2 files changed, 57 insertions(+)

diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/adi,lt3074.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/adi,lt3074.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..bf028a8718f16618a3e7e6ab6d04242667a94173
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/pmbus/adi,lt3074.yaml
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/hwmon/pmbus/adi,lt3074.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices LT3074 voltage regulator
+
+maintainers:
+  - Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
+
+description: |
+  The LT3074 is a low voltage, ultra-low noise and ultra-fast transient
+  response linear regulator. It allows telemetry for input/output voltage,
+  output current and temperature through the PMBus serial interface.
+
+  Datasheet:
+    https://www.analog.com/en/products/lt3074.html
+
+allOf:
+  - $ref: /schemas/regulator/regulator.yaml#
+
+properties:
+  compatible:
+    enum:
+      - adi,lt3074
+
+  reg:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        regulator@6d {
+            compatible = "adi,lt3074";
+            reg = <0x6d>;
+            regulator-name = "vout";
+            regulator-max-microvolt = <1250000>;
+            regulator-min-microvolt = <1150000>;
+        };
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index c59316109e3f8feacf9628fd1065ed551c4250d5..cfbf4dca400e03fcfa34ac78051fdcd815477799 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13983,6 +13983,13 @@ L:	linux-scsi@vger.kernel.org
 S:	Maintained
 F:	drivers/scsi/sym53c8xx_2/
 
+LT3074 HARDWARE MONITOR DRIVER
+M:	Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
+L:	linux-hwmon@vger.kernel.org
+S:	Supported
+W:	https://ez.analog.com/linux-software-drivers
+F:	Documentation/devicetree/bindings/hwmon/pmbus/adi,lt3074.yaml
+
 LTC1660 DAC DRIVER
 M:	Marcus Folkesson <marcus.folkesson@gmail.com>
 L:	linux-iio@vger.kernel.org

-- 
2.39.5


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH v3 2/2] hwmon: (pmbus/lt3074): add support for lt3074
  2025-04-21 12:18 [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Cedric Encarnacion
  2025-04-21 12:18 ` [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074 Cedric Encarnacion
@ 2025-04-21 12:18 ` Cedric Encarnacion
  2025-04-22 13:25   ` Guenter Roeck
  2025-04-21 13:22 ` [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Guenter Roeck
  2 siblings, 1 reply; 9+ messages in thread
From: Cedric Encarnacion @ 2025-04-21 12:18 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jean Delvare,
	Guenter Roeck, Jonathan Corbet, Delphine CC Chiu
  Cc: devicetree, linux-kernel, linux-hwmon, linux-doc, linux-i2c,
	Cedric Encarnacion

Add hardware monitoring and regulator support for LT3074. The LT3074 is an
ultrafast, ultralow noise 3A, 5.5V dropout linear regulator. The PMBus
serial interface allows telemetry for input/output voltage, bias voltage,
output current, and die temperature.

Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
---
 Documentation/hwmon/index.rst  |   1 +
 Documentation/hwmon/lt3074.rst |  72 ++++++++++++++++++++++++
 MAINTAINERS                    |   2 +
 drivers/hwmon/pmbus/Kconfig    |  18 ++++++
 drivers/hwmon/pmbus/Makefile   |   1 +
 drivers/hwmon/pmbus/lt3074.c   | 122 +++++++++++++++++++++++++++++++++++++++++
 6 files changed, 216 insertions(+)

diff --git a/Documentation/hwmon/index.rst b/Documentation/hwmon/index.rst
index da5895115724df35416b88fcd6edb13c2d5b07f2..d17f942d8535359e942ae6359374431c1976afef 100644
--- a/Documentation/hwmon/index.rst
+++ b/Documentation/hwmon/index.rst
@@ -126,6 +126,7 @@ Hardware Monitoring Kernel Drivers
    lm95234
    lm95245
    lochnagar
+   lt3074
    lt7182s
    ltc2992
    ltc2945
diff --git a/Documentation/hwmon/lt3074.rst b/Documentation/hwmon/lt3074.rst
new file mode 100644
index 0000000000000000000000000000000000000000..234f369153cf1374b8c7eaa2ed93358ac141fdf9
--- /dev/null
+++ b/Documentation/hwmon/lt3074.rst
@@ -0,0 +1,72 @@
+.. SPDX-License-Identifier: GPL-2.0
+
+Kernel driver lt3074
+====================
+
+Supported chips:
+
+  * Analog Devices LT3074
+
+    Prefix: 'lt3074'
+
+    Addresses scanned: -
+
+    Datasheet: https://www.analog.com/en/products/lt3074.html
+
+Authors: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
+
+
+Description
+-----------
+
+This driver supports hardware monitoring for Analog Devices LT3074 Linear
+Regulator with PMBus interface.
+
+The LT3074 is a low voltage, ultra-low noise and ultra-fast transient
+response linear regulator with PMBus serial interface. PMBus telemetry
+feature provides information regarding the output voltage and current,
+input voltage, bias voltage and die temperature.
+
+The driver is a client driver to the core PMBus driver. Please see
+Documentation/hwmon/pmbus.rst for details on PMBus client drivers.
+
+Usage Notes
+-----------
+
+This driver does not auto-detect devices. You will have to instantiate
+the devices explicitly. Please see Documentation/i2c/instantiating-devices.rst
+for details.
+
+Platform data support
+---------------------
+
+The driver supports standard PMBus driver platform data.
+
+Sysfs entries
+-------------
+
+======================= =======================================================
+in1_label		"vin"
+in1_input		Measured input voltage
+in1_max			Input overvoltage warning limit
+in1_max_alarm		Input overvoltage warning status
+in1_min			Input undervoltage warning limit
+in1_min_alarm		Input undervoltage warning status
+in2_label		"vmon"
+in2_input		Measured bias voltage
+in2_max			Bias overvoltage warning limit
+in2_min			Bias undervoltage warning limit
+in3_label		"vout1"
+in3_input		Measured output voltage
+in3_max			Output overvoltage warning limit
+in3_max_alarm		Output overvoltage warning status
+in3_min			Output undervoltage warning limit
+in3_min_alarm		Output undervoltage warning status
+curr1_label		"iout1"
+curr1_input		Measured output current.
+curr1_crit		Output overcurrent fault limit
+curr1_crit_alarm	Output overcurrent fault status
+temp1_input		Measured temperature
+temp1_max		Maximum temperature limit
+temp1_max_alarm		Overtemperature warning status
+======================= =======================================================
diff --git a/MAINTAINERS b/MAINTAINERS
index cfbf4dca400e03fcfa34ac78051fdcd815477799..cc61b2dfa0bee28a35bb9e0200095f549b557a73 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13989,6 +13989,8 @@ L:	linux-hwmon@vger.kernel.org
 S:	Supported
 W:	https://ez.analog.com/linux-software-drivers
 F:	Documentation/devicetree/bindings/hwmon/pmbus/adi,lt3074.yaml
+F:	Documentation/hwmon/lt3074.rst
+F:	drivers/hwmon/pmbus/lt3074.c
 
 LTC1660 DAC DRIVER
 M:	Marcus Folkesson <marcus.folkesson@gmail.com>
diff --git a/drivers/hwmon/pmbus/Kconfig b/drivers/hwmon/pmbus/Kconfig
index c9b3c314998234e639db1770c18c6f75fa037d25..441f984a859dd935e5248793f1bf54204ce2c371 100644
--- a/drivers/hwmon/pmbus/Kconfig
+++ b/drivers/hwmon/pmbus/Kconfig
@@ -218,6 +218,24 @@ config SENSORS_LM25066_REGULATOR
 	  If you say yes here you get regulator support for National
 	  Semiconductor LM25066, LM5064, and LM5066.
 
+config SENSORS_LT3074
+	tristate "Analog Devices LT3074"
+	help
+	  If you say yes here you get hardware monitoring support for Analog
+	  Devices LT3074.
+
+	  This driver can also be built as a module. If so, the module will
+	  be called lt3074.
+
+config SENSORS_LT3074_REGULATOR
+	tristate "Regulator support for LT3074"
+	depends on SENSORS_LT3074 && REGULATOR
+	help
+	  If you say yes here you get regulator support for Analog Devices
+	  LT3074. The LT3074 is a low voltage, ultralow noise, high PSRR,
+	  dropout linear regulator. The device supplies up to 3A with a
+	  typical dropout voltage of 45mV.
+
 config SENSORS_LT7182S
 	tristate "Analog Devices LT7182S"
 	help
diff --git a/drivers/hwmon/pmbus/Makefile b/drivers/hwmon/pmbus/Makefile
index 56f128c4653e3087ecd3c2fd859bb0bd9ff10a3d..29cd8a3317d29f85113b6a79904d0d8cb48fc61b 100644
--- a/drivers/hwmon/pmbus/Makefile
+++ b/drivers/hwmon/pmbus/Makefile
@@ -23,6 +23,7 @@ obj-$(CONFIG_SENSORS_IR38064)	+= ir38064.o
 obj-$(CONFIG_SENSORS_IRPS5401)	+= irps5401.o
 obj-$(CONFIG_SENSORS_ISL68137)	+= isl68137.o
 obj-$(CONFIG_SENSORS_LM25066)	+= lm25066.o
+obj-$(CONFIG_SENSORS_LT3074)	+= lt3074.o
 obj-$(CONFIG_SENSORS_LT7182S)	+= lt7182s.o
 obj-$(CONFIG_SENSORS_LTC2978)	+= ltc2978.o
 obj-$(CONFIG_SENSORS_LTC3815)	+= ltc3815.o
diff --git a/drivers/hwmon/pmbus/lt3074.c b/drivers/hwmon/pmbus/lt3074.c
new file mode 100644
index 0000000000000000000000000000000000000000..3704dbe7b54ab8beaf0965463fe6400207d0bb98
--- /dev/null
+++ b/drivers/hwmon/pmbus/lt3074.c
@@ -0,0 +1,122 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Hardware monitoring driver for Analog Devices LT3074
+ *
+ * Copyright (C) 2025 Analog Devices, Inc.
+ */
+#include <linux/err.h>
+#include <linux/i2c.h>
+#include <linux/mod_devicetable.h>
+#include <linux/module.h>
+
+#include "pmbus.h"
+
+#define LT3074_MFR_READ_VBIAS			0xc6
+#define LT3074_MFR_BIAS_OV_WARN_LIMIT		0xc7
+#define LT3074_MFR_BIAS_UV_WARN_LIMIT		0xc8
+#define LT3074_MFR_SPECIAL_ID			0xe7
+
+#define LT3074_SPECIAL_ID_VALUE			0x1c1d
+
+static const struct regulator_desc __maybe_unused lt3074_reg_desc[] = {
+	PMBUS_REGULATOR_ONE("regulator"),
+};
+
+static int lt3074_read_word_data(struct i2c_client *client, int page,
+				 int phase, int reg)
+{
+	switch (reg) {
+	case PMBUS_VIRT_READ_VMON:
+		return pmbus_read_word_data(client, page, phase,
+					   LT3074_MFR_READ_VBIAS);
+	case PMBUS_VIRT_VMON_UV_WARN_LIMIT:
+		return pmbus_read_word_data(client, page, phase,
+					   LT3074_MFR_BIAS_UV_WARN_LIMIT);
+	case PMBUS_VIRT_VMON_OV_WARN_LIMIT:
+		return pmbus_read_word_data(client, page, phase,
+					   LT3074_MFR_BIAS_OV_WARN_LIMIT);
+	default:
+		return -ENODATA;
+	}
+}
+
+static int lt3074_write_word_data(struct i2c_client *client, int page,
+				  int reg, u16 word)
+{
+	switch (reg) {
+	case PMBUS_VIRT_VMON_UV_WARN_LIMIT:
+		return pmbus_write_word_data(client, 0,
+					    LT3074_MFR_BIAS_UV_WARN_LIMIT,
+					    word);
+	case PMBUS_VIRT_VMON_OV_WARN_LIMIT:
+		return pmbus_write_word_data(client, 0,
+					    LT3074_MFR_BIAS_OV_WARN_LIMIT,
+					    word);
+	default:
+		return -ENODATA;
+	}
+}
+
+static struct pmbus_driver_info lt3074_info = {
+	.pages = 1,
+	.format[PSC_VOLTAGE_IN] = linear,
+	.format[PSC_VOLTAGE_OUT] = linear,
+	.format[PSC_CURRENT_OUT] = linear,
+	.format[PSC_TEMPERATURE] = linear,
+	.func[0] = PMBUS_HAVE_VIN | PMBUS_HAVE_VOUT | PMBUS_HAVE_IOUT |
+		   PMBUS_HAVE_TEMP | PMBUS_HAVE_VMON |
+		   PMBUS_HAVE_STATUS_VOUT | PMBUS_HAVE_STATUS_IOUT |
+		   PMBUS_HAVE_STATUS_INPUT | PMBUS_HAVE_STATUS_TEMP,
+	.read_word_data = lt3074_read_word_data,
+	.write_word_data = lt3074_write_word_data,
+#if IS_ENABLED(CONFIG_SENSORS_LT3074_REGULATOR)
+	.num_regulators = 1,
+	.reg_desc = lt3074_reg_desc,
+#endif
+};
+
+static int lt3074_probe(struct i2c_client *client)
+{
+	int ret;
+	struct device *dev = &client->dev;
+
+	if (!i2c_check_functionality(client->adapter,
+				     I2C_FUNC_SMBUS_READ_WORD_DATA))
+		return -ENODEV;
+
+	ret = i2c_smbus_read_word_data(client, LT3074_MFR_SPECIAL_ID);
+	if (ret < 0)
+		return dev_err_probe(dev, ret, "Failed to read ID\n");
+
+	if (ret != LT3074_SPECIAL_ID_VALUE)
+		return dev_err_probe(dev, -ENODEV, "ID mismatch\n");
+
+	return pmbus_do_probe(client, &lt3074_info);
+}
+
+static const struct i2c_device_id lt3074_id[] = {
+	{ "lt3074", 0 },
+	{}
+};
+MODULE_DEVICE_TABLE(i2c, lt3074_id);
+
+static const struct of_device_id __maybe_unused lt3074_of_match[] = {
+	{ .compatible = "adi,lt3074" },
+	{}
+};
+MODULE_DEVICE_TABLE(of, lt3074_of_match);
+
+static struct i2c_driver lt3074_driver = {
+	.driver = {
+		.name = "lt3074",
+		.of_match_table = of_match_ptr(lt3074_of_match),
+	},
+	.probe = lt3074_probe,
+	.id_table = lt3074_id,
+};
+module_i2c_driver(lt3074_driver);
+
+MODULE_AUTHOR("Cedric Encarnacion <cedricjustine.encarnacion@analog.com>");
+MODULE_DESCRIPTION("PMBus driver for Analog Devices LT3074");
+MODULE_LICENSE("GPL");
+MODULE_IMPORT_NS("PMBUS");

-- 
2.39.5


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator
  2025-04-21 12:18 [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Cedric Encarnacion
  2025-04-21 12:18 ` [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074 Cedric Encarnacion
  2025-04-21 12:18 ` [PATCH v3 2/2] hwmon: (pmbus/lt3074): add support for lt3074 Cedric Encarnacion
@ 2025-04-21 13:22 ` Guenter Roeck
  2025-04-22 10:09   ` Encarnacion, Cedric justine
  2 siblings, 1 reply; 9+ messages in thread
From: Guenter Roeck @ 2025-04-21 13:22 UTC (permalink / raw)
  To: Cedric Encarnacion, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Jean Delvare, Jonathan Corbet, Delphine CC Chiu
  Cc: devicetree, linux-kernel, linux-hwmon, linux-doc, linux-i2c

On 4/21/25 05:18, Cedric Encarnacion wrote:
> Introduce hardware monitoring and regulator support for LT3074. The
> component is an ultrafast, ultralow noise 3A, 5.5V dropout linear
> regulator with a PMBus serial interface that allows telemetry for
> input/output voltage, output current, and die temperature. It has a
> single channel and requires a bias voltage which can be monitored via
> manufacturer-specific registers.
> 
> Signed-off-by: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
> ---
> Changes in v3:
> -
>   * Non-nested dt-binding regulator support.
>   * PMBUS_REGULATOR_ONE("vout") -> PMBUS_REGULATOR_ONE("regulator").
>     New macro needs node-name to be matched.
> 

Does that mean we can (and maybe should) drop the name parameter
of that macro ?

This isn't affecting this patch. If needed I'll do that separately.
Just asking.

Thanks,
Guenter

> - Link to v2: https://lore.kernel.org/r/20250225-upstream-lt3074-v2-0-18ad10ba542e@analog.com
> 
> Changes in v2:
>   * Separated dt-binding for LT3074.
>   * Added __maybe_unused attribute to of_device_id. This addresses kernel
>     test robot warning.
>   * Added entry to MAINTAINERS.
> 
> - Link to v1: https://lore.kernel.org/r/20250124-upstream-lt3074-v1-0-7603f346433e@analog.com
> 
> ---
> Cedric Encarnacion (2):
>        dt-bindings: hwmon: pmbus: add lt3074
>        hwmon: (pmbus/lt3074): add support for lt3074
> 
>   .../bindings/hwmon/pmbus/adi,lt3074.yaml           |  50 +++++++++
>   Documentation/hwmon/index.rst                      |   1 +
>   Documentation/hwmon/lt3074.rst                     |  72 ++++++++++++
>   MAINTAINERS                                        |   9 ++
>   drivers/hwmon/pmbus/Kconfig                        |  18 +++
>   drivers/hwmon/pmbus/Makefile                       |   1 +
>   drivers/hwmon/pmbus/lt3074.c                       | 122 +++++++++++++++++++++
>   7 files changed, 273 insertions(+)
> ---
> base-commit: 86d264b68309d9f9804db4079642b98104ca15df
> change-id: 20250124-upstream-lt3074-123384246e0b
> 
> Best regards,


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074
  2025-04-21 12:18 ` [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074 Cedric Encarnacion
@ 2025-04-22  9:16   ` Krzysztof Kozlowski
  2025-04-22 13:25   ` Guenter Roeck
  1 sibling, 0 replies; 9+ messages in thread
From: Krzysztof Kozlowski @ 2025-04-22  9:16 UTC (permalink / raw)
  To: Cedric Encarnacion
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jean Delvare,
	Guenter Roeck, Jonathan Corbet, Delphine CC Chiu, devicetree,
	linux-kernel, linux-hwmon, linux-doc, linux-i2c

On Mon, Apr 21, 2025 at 08:18:18PM GMT, Cedric Encarnacion wrote:
> Add Analog Devices LT3074 Ultralow Noise, High PSRR Dropout Linear
> Regulator.
> 
> Signed-off-by: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
> ---
>  .../bindings/hwmon/pmbus/adi,lt3074.yaml           | 50 ++++++++++++++++++++++
>  MAINTAINERS                                        |  7 +++
>  2 files changed, 57 insertions(+)

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 9+ messages in thread

* RE: [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator
  2025-04-21 13:22 ` [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Guenter Roeck
@ 2025-04-22 10:09   ` Encarnacion, Cedric justine
  2025-04-22 13:23     ` Guenter Roeck
  0 siblings, 1 reply; 9+ messages in thread
From: Encarnacion, Cedric justine @ 2025-04-22 10:09 UTC (permalink / raw)
  To: Guenter Roeck, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Jean Delvare, Jonathan Corbet, Delphine CC Chiu
  Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-hwmon@vger.kernel.org, linux-doc@vger.kernel.org,
	linux-i2c@vger.kernel.org

> From: Guenter Roeck <groeck7@gmail.com> On Behalf Of Guenter Roeck
> Sent: Monday, April 21, 2025 9:23 PM
> To: Encarnacion, Cedric justine <Cedricjustine.Encarnacion@analog.com>; Rob
> Herring <robh@kernel.org>; Krzysztof Kozlowski <krzk+dt@kernel.org>; Conor
> Dooley <conor+dt@kernel.org>; Jean Delvare <jdelvare@suse.com>; Jonathan
> Corbet <corbet@lwn.net>; Delphine CC Chiu <Delphine_CC_Chiu@Wiwynn.com>
> Cc: devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; linux-
> hwmon@vger.kernel.org; linux-doc@vger.kernel.org; linux-i2c@vger.kernel.org
> Subject: Re: [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator
> 
> [External]
> 
> On 4/21/25 05:18, Cedric Encarnacion wrote:
> > Introduce hardware monitoring and regulator support for LT3074. The
> > component is an ultrafast, ultralow noise 3A, 5.5V dropout linear
> > regulator with a PMBus serial interface that allows telemetry for
> > input/output voltage, output current, and die temperature. It has a
> > single channel and requires a bias voltage which can be monitored via
> > manufacturer-specific registers.
> >
> > Signed-off-by: Cedric Encarnacion
> > <cedricjustine.encarnacion@analog.com>
> > ---
> > Changes in v3:
> > -
> >   * Non-nested dt-binding regulator support.
> >   * PMBUS_REGULATOR_ONE("vout") ->
> PMBUS_REGULATOR_ONE("regulator").
> >     New macro needs node-name to be matched.
> >
> 
> Does that mean we can (and maybe should) drop the name parameter of that
> macro ?
> 
> This isn't affecting this patch. If needed I'll do that separately.
> Just asking.

This is used by regulator_desc->of_match to match a node name in dt. By
dropping the name, does this mean the of_match won't be assigned, or
of_match="some-default-regulator-name"? I did some tests, and it appears
the regulators dt properties can only be parsed when the name parameter
exists, and name parameter == node-name. I have tried simply removing the
of_match assignment from the regulator_desc macro, but it does not work in
my case.

Best regards,
Cedric

> > - Link to v2:
> > https://urldefense.com/v3/__https://lore.kernel.org/r/20250225-upstrea
> > m-lt3074-v2-0-
> 18ad10ba542e@analog.com__;!!A3Ni8CS0y2Y!7jXNBOqw7P6dNnjZ
> > TKrDqezkv8BSgZf9ZEeOfTvvbXEP3IfjL8UCdzIWjAIMFy--UJKsE_bztdArzpX5joZt35
> > NsPf0$
> >
> > Changes in v2:
> >   * Separated dt-binding for LT3074.
> >   * Added __maybe_unused attribute to of_device_id. This addresses kernel
> >     test robot warning.
> >   * Added entry to MAINTAINERS.
> >
> > - Link to v1:
> > https://urldefense.com/v3/__https://lore.kernel.org/r/20250124-upstrea
> > m-lt3074-v1-0-
> 7603f346433e@analog.com__;!!A3Ni8CS0y2Y!7jXNBOqw7P6dNnjZ
> > TKrDqezkv8BSgZf9ZEeOfTvvbXEP3IfjL8UCdzIWjAIMFy--UJKsE_bztdArzpX5joZt1h
> > Q_Vuk$
> >
> > ---
> > Cedric Encarnacion (2):
> >        dt-bindings: hwmon: pmbus: add lt3074
> >        hwmon: (pmbus/lt3074): add support for lt3074
> >
> >   .../bindings/hwmon/pmbus/adi,lt3074.yaml           |  50 +++++++++
> >   Documentation/hwmon/index.rst                      |   1 +
> >   Documentation/hwmon/lt3074.rst                     |  72 ++++++++++++
> >   MAINTAINERS                                        |   9 ++
> >   drivers/hwmon/pmbus/Kconfig                        |  18 +++
> >   drivers/hwmon/pmbus/Makefile                       |   1 +
> >   drivers/hwmon/pmbus/lt3074.c                       | 122 +++++++++++++++++++++
> >   7 files changed, 273 insertions(+)
> > ---
> > base-commit: 86d264b68309d9f9804db4079642b98104ca15df
> > change-id: 20250124-upstream-lt3074-123384246e0b
> >
> > Best regards,


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator
  2025-04-22 10:09   ` Encarnacion, Cedric justine
@ 2025-04-22 13:23     ` Guenter Roeck
  0 siblings, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2025-04-22 13:23 UTC (permalink / raw)
  To: Encarnacion, Cedric justine, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Jean Delvare, Jonathan Corbet, Delphine CC Chiu
  Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-hwmon@vger.kernel.org, linux-doc@vger.kernel.org,
	linux-i2c@vger.kernel.org

On 4/22/25 03:09, Encarnacion, Cedric justine wrote:
>> From: Guenter Roeck <groeck7@gmail.com> On Behalf Of Guenter Roeck
>> Sent: Monday, April 21, 2025 9:23 PM
>> To: Encarnacion, Cedric justine <Cedricjustine.Encarnacion@analog.com>; Rob
>> Herring <robh@kernel.org>; Krzysztof Kozlowski <krzk+dt@kernel.org>; Conor
>> Dooley <conor+dt@kernel.org>; Jean Delvare <jdelvare@suse.com>; Jonathan
>> Corbet <corbet@lwn.net>; Delphine CC Chiu <Delphine_CC_Chiu@Wiwynn.com>
>> Cc: devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; linux-
>> hwmon@vger.kernel.org; linux-doc@vger.kernel.org; linux-i2c@vger.kernel.org
>> Subject: Re: [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator
>>
>> [External]
>>
>> On 4/21/25 05:18, Cedric Encarnacion wrote:
>>> Introduce hardware monitoring and regulator support for LT3074. The
>>> component is an ultrafast, ultralow noise 3A, 5.5V dropout linear
>>> regulator with a PMBus serial interface that allows telemetry for
>>> input/output voltage, output current, and die temperature. It has a
>>> single channel and requires a bias voltage which can be monitored via
>>> manufacturer-specific registers.
>>>
>>> Signed-off-by: Cedric Encarnacion
>>> <cedricjustine.encarnacion@analog.com>
>>> ---
>>> Changes in v3:
>>> -
>>>    * Non-nested dt-binding regulator support.
>>>    * PMBUS_REGULATOR_ONE("vout") ->
>> PMBUS_REGULATOR_ONE("regulator").
>>>      New macro needs node-name to be matched.
>>>
>>
>> Does that mean we can (and maybe should) drop the name parameter of that
>> macro ?
>>
>> This isn't affecting this patch. If needed I'll do that separately.
>> Just asking.
> 
> This is used by regulator_desc->of_match to match a node name in dt. By
> dropping the name, does this mean the of_match won't be assigned, or
> of_match="some-default-regulator-name"? I did some tests, and it appears
> the regulators dt properties can only be parsed when the name parameter
> exists, and name parameter == node-name. I have tried simply removing the
> of_match assignment from the regulator_desc macro, but it does not work in
> my case.
> 

No, I was wondering if the name parameter always needs to be "regulator".
I did not (want to) suggest that the name should be dropped from the structure,
only if it always needs to be "regulator". If it always needs to be "regulator",
it could be hard-coded and would not have to be a macro parameter.

Sorry for the confusion. Just forget that I asked.

Guenter


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074
  2025-04-21 12:18 ` [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074 Cedric Encarnacion
  2025-04-22  9:16   ` Krzysztof Kozlowski
@ 2025-04-22 13:25   ` Guenter Roeck
  1 sibling, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2025-04-22 13:25 UTC (permalink / raw)
  To: Cedric Encarnacion
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jean Delvare,
	Jonathan Corbet, Delphine CC Chiu, devicetree, linux-kernel,
	linux-hwmon, linux-doc, linux-i2c

On Mon, Apr 21, 2025 at 08:18:18PM +0800, Cedric Encarnacion wrote:
> Add Analog Devices LT3074 Ultralow Noise, High PSRR Dropout Linear
> Regulator.
> 
> Signed-off-by: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Applied.

Thanks,
Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 2/2] hwmon: (pmbus/lt3074): add support for lt3074
  2025-04-21 12:18 ` [PATCH v3 2/2] hwmon: (pmbus/lt3074): add support for lt3074 Cedric Encarnacion
@ 2025-04-22 13:25   ` Guenter Roeck
  0 siblings, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2025-04-22 13:25 UTC (permalink / raw)
  To: Cedric Encarnacion
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jean Delvare,
	Jonathan Corbet, Delphine CC Chiu, devicetree, linux-kernel,
	linux-hwmon, linux-doc, linux-i2c

On Mon, Apr 21, 2025 at 08:18:19PM +0800, Cedric Encarnacion wrote:
> Add hardware monitoring and regulator support for LT3074. The LT3074 is an
> ultrafast, ultralow noise 3A, 5.5V dropout linear regulator. The PMBus
> serial interface allows telemetry for input/output voltage, bias voltage,
> output current, and die temperature.
> 
> Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> Signed-off-by: Cedric Encarnacion <cedricjustine.encarnacion@analog.com>

Applied.

Thanks,
Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2025-04-22 13:25 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-21 12:18 [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Cedric Encarnacion
2025-04-21 12:18 ` [PATCH v3 1/2] dt-bindings: hwmon: pmbus: add lt3074 Cedric Encarnacion
2025-04-22  9:16   ` Krzysztof Kozlowski
2025-04-22 13:25   ` Guenter Roeck
2025-04-21 12:18 ` [PATCH v3 2/2] hwmon: (pmbus/lt3074): add support for lt3074 Cedric Encarnacion
2025-04-22 13:25   ` Guenter Roeck
2025-04-21 13:22 ` [PATCH v3 0/2] Add support for LT3074 low voltage linear regulator Guenter Roeck
2025-04-22 10:09   ` Encarnacion, Cedric justine
2025-04-22 13:23     ` Guenter Roeck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).