Devicetree
 help / color / mirror / Atom feed
From: "Nuno Sá" <nuno.sa@analog.com>
To: linux-hwmon@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org, linux-doc@vger.kernel.org
Cc: Guenter Roeck <linux@roeck-us.net>, Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Shuah Khan <skhan@linuxfoundation.org>,
	Randy Dunlap <rdunlap@infradead.org>,
	Alexis Czezar Torreno <alexisczezar.torreno@analog.com>
Subject: [PATCH v2 3/4] dt-bindings: hwmon/pmbus: Document MAX20826 and similar devices
Date: Fri, 11 Sep 2026 14:53:39 +0100	[thread overview]
Message-ID: <20260911-hwmon-max20826-support-v2-3-5e30cbd97d84@analog.com> (raw)
In-Reply-To: <20260911-hwmon-max20826-support-v2-0-5e30cbd97d84@analog.com>

The MAX20826 IC and similar provide a high-density, flexible and scalable
dual-loop solution for high current cores for AI applications. These are
dual loop solutions multiphase voltage regulators. Between Rails A and B,
MAX20855B and MAX20908 supports up to 8 phases total configurable from
8+0 to 4+4 phases, MAX20912 supports up to 12 phases from 12+0 to 6+6,
and MAX20826 and MAX20916 supports up to 16 phases from 16+0 to 8+8.

The output voltage of each rail is controlled either through PMBus or
through the high-speed processor voltage-control interface (Intel SVID,
AMD SVI3, Nvidia PWMVID or AVSBus, depending on the device). Which one is
in use is part of the configuration the device powers up with and is read
back from it, hence adi,rail-a-high-speed and adi,rail-b-high-speed only
tell whether the high-speed interface or PMBus controls the output voltage
of the respective rail.

Co-developed-by: Alexis Czezar Torreno <alexisczezar.torreno@analog.com>
Signed-off-by: Alexis Czezar Torreno <alexisczezar.torreno@analog.com>
Signed-off-by: Nuno Sá <nuno.sa@analog.com>
---
 .../bindings/hwmon/pmbus/adi,max20826.yaml         | 102 +++++++++++++++++++++
 MAINTAINERS                                        |   7 ++
 2 files changed, 109 insertions(+)

diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/adi,max20826.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/adi,max20826.yaml
new file mode 100644
index 000000000000..e3bb51d6d1d6
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/pmbus/adi,max20826.yaml
@@ -0,0 +1,102 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/hwmon/pmbus/adi,max20826.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices MAX20826 PMBus Voltage Regulator
+
+maintainers:
+  - Nuno Sá <nuno.sa@analog.com>
+
+description:
+  Analog Devices MAX20826 and similar devices are Dual-Output Multiphase
+  High-Current Controller.
+
+properties:
+  compatible:
+    enum:
+      - adi,max20826
+      - adi,max20855b
+      - adi,max20908
+      - adi,max20912
+      - adi,max20916
+
+  reg:
+    maxItems: 1
+
+  vdd3p3-supply:
+    description:
+      3.3V bias supply. It is the input of the internal 1.8V linear regulator
+      which supplies the controller.
+
+  avren-gpios:
+    description: GPIO pin to enable/disable the output voltage on Rail A.
+    maxItems: 1
+
+  bvren-gpios:
+    description: GPIO pin to enable/disable the output voltage on Rail B.
+    maxItems: 1
+
+  adi,rail-a-high-speed:
+    type: boolean
+    description:
+      The output voltage of Rail A is controlled by the high-speed processor
+      voltage-control interface the device powered up in (PWMVID, SVID, SVI3 or
+      AVSBus). If not given, PMBus controls the output voltage of Rail A.
+
+  adi,rail-b-high-speed:
+    type: boolean
+    description:
+      Same as adi,rail-a-high-speed but for Rail B.
+
+  regulators:
+    type: object
+    description:
+      List of regulators provided by this controller. vout0 is Rail A and
+      vout1 is Rail B.
+
+    patternProperties:
+      "^vout[0-1]$":
+        $ref: /schemas/regulator/regulator.yaml#
+        type: object
+        unevaluatedProperties: false
+
+    additionalProperties: false
+
+required:
+  - compatible
+  - reg
+  - vdd3p3-supply
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        regulator@64 {
+            compatible = "adi,max20826";
+            reg = <0x64>;
+
+            vdd3p3-supply = <&vdd3p3>;
+
+            avren-gpios = <&gpio 0 GPIO_ACTIVE_HIGH>;
+            bvren-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
+
+            adi,rail-a-high-speed;
+
+            regulators {
+                vout0 {
+                    regulator-name = "vcore_a";
+                };
+
+                vout1 {
+                    regulator-name = "vcore_b";
+                };
+            };
+        };
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index 1fb5efb513f0..a8ae7af72099 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -16004,6 +16004,13 @@ F:	Documentation/devicetree/bindings/hwmon/pmbus/adi,max17616.yaml
 F:	Documentation/hwmon/max17616.rst
 F:	drivers/hwmon/pmbus/max17616.c
 
+MAX20826 HARDWARE MONITOR CONTROLLER DRIVER
+M:	Nuno Sá <nuno.sa@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,max20826.yaml
+
 MAX20830 HARDWARE MONITOR DRIVER
 M:	Alexis Czezar Torreno <alexisczezar.torreno@analog.com>
 L:	linux-hwmon@vger.kernel.org

-- 
2.55.0


  parent reply	other threads:[~2026-09-11 13:53 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-11 13:53 [PATCH v2 0/4] hwmon: (pmbus) Add support for MAX20826 and similar devices Nuno Sá
2026-09-11 13:53 ` [PATCH v2 1/4] hwmon: (pmbus/core) increase number of phases and add new mask Nuno Sá
2026-09-11 14:09   ` sashiko-bot
2026-09-11 14:32     ` Guenter Roeck
2026-09-12 14:20   ` Guenter Roeck
2026-09-11 13:53 ` [PATCH v2 2/4] hwmon: (pmbus/core) Add mapping function to pmbus_read_block_data() Nuno Sá
2026-09-11 13:59   ` sashiko-bot
2026-09-12 14:21   ` Guenter Roeck
2026-09-11 13:53 ` Nuno Sá [this message]
2026-09-11 14:00   ` [PATCH v2 3/4] dt-bindings: hwmon/pmbus: Document MAX20826 and similar devices sashiko-bot
2026-09-12 10:21   ` Conor Dooley
2026-09-12 14:21   ` Guenter Roeck
2026-09-11 13:53 ` [PATCH v2 4/4] hwmon: (pmbus) add support for " Nuno Sá
2026-09-12 14:22   ` Guenter Roeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260911-hwmon-max20826-support-v2-3-5e30cbd97d84@analog.com \
    --to=nuno.sa@analog.com \
    --cc=alexisczezar.torreno@analog.com \
    --cc=conor+dt@kernel.org \
    --cc=corbet@lwn.net \
    --cc=devicetree@vger.kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-hwmon@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=rdunlap@infradead.org \
    --cc=robh@kernel.org \
    --cc=skhan@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox