mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2 0/4] regulator: dt-bindings: Tegra coupling DT conversions and cleanup
@ 2026-09-16 13:11 Bhargav Joshi
  2026-09-16 13:11 ` [PATCH v2 1/4] dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs Bhargav Joshi
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Bhargav Joshi @ 2026-09-16 13:11 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Thierry Reding, Lee Jones, Shree Ramamoorthy,
	Thierry Reding, Jonathan Hunter, Dmitry Osipenko,
	Svyatoslav Ryhel, Laxman Dewangan
  Cc: linux-kernel, devicetree, goledhruva, m-chawdhry, daniel.baluta,
	simona.toaca, j.bhargav.u, mfd, Thierry Reding, linux-tegra

This series adds a shared DT schema for Tegra regulator coupling, 
updates relevant PMICs to use it, and converts the TI TPS6586x 
bindings to DT schema.

Summary:
- Patch 1: Fixes existing TPS65910 validation warnings.
- Patch 2: Converts Tegra regulator coupling to DT schema.
- Patch 3: Updates Tegra-related PMICs to reference the new schema.
- Patch 4: Converts TI TPS6586x to DT schema.

Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
---
Changes in v2:
- Add patch 1 to resolve warnings from TPS65910.
- Add patch 2 to convert nvidia,tegra-regulators-coupling to DT schema.
- Add patch 3 to $ref to shared schema.
- Patch 4: remove individual properties and add $ref to shared schema.
- Link to v1: https://lore.kernel.org/r/20260822-ti-tps6586x-v1-1-93cb46b32b27@gmail.com

---
Bhargav Joshi (4):
      dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs
      regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema
      regulator: dt-bindings: Reference Tegra regulator coupling schema
      regulator: dt-bindings: ti,tps6586x: Convert to DT schema

 .../devicetree/bindings/mfd/ti,tps65910.yaml       |  20 ++-
 .../regulator/maxim,max77620-regulator.yaml        |   5 +-
 .../regulator/nvidia,tegra-regulators-coupling.txt |  65 -------
 .../nvidia,tegra-regulators-coupling.yaml          |  76 ++++++++
 .../devicetree/bindings/regulator/ti,tps62360.yaml |   1 +
 .../devicetree/bindings/regulator/ti,tps6586x.yaml | 196 +++++++++++++++++++++
 .../devicetree/bindings/regulator/tps6586x.txt     | 135 --------------
 7 files changed, 294 insertions(+), 204 deletions(-)
---
base-commit: 9f0346dcbea363787186c94ef94dd01aaa215afa
change-id: 20260821-ti-tps6586x-b54e7111917c

Best regards,
-- 
Bhargav


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

* [PATCH v2 1/4] dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs
  2026-09-16 13:11 [PATCH v2 0/4] regulator: dt-bindings: Tegra coupling DT conversions and cleanup Bhargav Joshi
@ 2026-09-16 13:11 ` Bhargav Joshi
  2026-09-18 19:09   ` Rob Herring (Arm)
  2026-09-16 13:11 ` [PATCH v2 2/4] regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema Bhargav Joshi
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 9+ messages in thread
From: Bhargav Joshi @ 2026-09-16 13:11 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Thierry Reding, Lee Jones, Shree Ramamoorthy,
	Thierry Reding, Jonathan Hunter, Dmitry Osipenko,
	Svyatoslav Ryhel, Laxman Dewangan
  Cc: linux-kernel, devicetree, goledhruva, m-chawdhry, daniel.baluta,
	simona.toaca, j.bhargav.u, mfd, Thierry Reding, linux-tegra

Device tree validation throws warnings for the TPS65911 PMIC on Tegra
boards because wakeup-source and GPIO hog nodes are not documented in
the schema, even though the hardware supports them.

Add wakeup-source property and allow child nodes that match the "-hog"
pattern.

Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
---
 Documentation/devicetree/bindings/mfd/ti,tps65910.yaml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml
index f1a76f88fc0c..caff9dc0b2bb 100644
--- a/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml
+++ b/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml
@@ -37,6 +37,8 @@ properties:
 
   interrupt-controller: true
 
+  wakeup-source: true
+
   '#interrupt-cells':
     description: Specifies the IRQ number and flags
     const: 2
@@ -163,6 +165,12 @@ patternProperties:
         vcc7-supply: VRTC input.
         vccio-supply: VIO input.
 
+  "^.+-hog$":
+    type: object
+
+    required:
+      - gpio-hog
+
 required:
   - compatible
   - reg

-- 
2.55.0


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

* [PATCH v2 2/4] regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema
  2026-09-16 13:11 [PATCH v2 0/4] regulator: dt-bindings: Tegra coupling DT conversions and cleanup Bhargav Joshi
  2026-09-16 13:11 ` [PATCH v2 1/4] dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs Bhargav Joshi
@ 2026-09-16 13:11 ` Bhargav Joshi
  2026-09-18 19:06   ` Rob Herring
  2026-09-16 13:11 ` [PATCH v2 3/4] regulator: dt-bindings: Reference Tegra regulator coupling schema Bhargav Joshi
  2026-09-16 13:11 ` [PATCH v2 4/4] regulator: dt-bindings: ti,tps6586x: Convert to DT schema Bhargav Joshi
  3 siblings, 1 reply; 9+ messages in thread
From: Bhargav Joshi @ 2026-09-16 13:11 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Thierry Reding, Lee Jones, Shree Ramamoorthy,
	Thierry Reding, Jonathan Hunter, Dmitry Osipenko,
	Svyatoslav Ryhel, Laxman Dewangan
  Cc: linux-kernel, devicetree, goledhruva, m-chawdhry, daniel.baluta,
	simona.toaca, j.bhargav.u, mfd, Thierry Reding, linux-tegra

Convert NVIDIA Tegra Regulators Coupling from legacy text to DT schema.
Set additionalProperties true as this is shared schema.

Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
---
 .../regulator/nvidia,tegra-regulators-coupling.txt | 65 ------------------
 .../nvidia,tegra-regulators-coupling.yaml          | 76 ++++++++++++++++++++++
 2 files changed, 76 insertions(+), 65 deletions(-)

diff --git a/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.txt b/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.txt
deleted file mode 100644
index 4bf2dbf7c6cc..000000000000
--- a/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.txt
+++ /dev/null
@@ -1,65 +0,0 @@
-NVIDIA Tegra Regulators Coupling
-================================
-
-NVIDIA Tegra SoC's have a mandatory voltage-coupling between regulators.
-Thus on Tegra20 there are 3 coupled regulators and on NVIDIA Tegra30
-there are 2.
-
-Tegra20 voltage coupling
-------------------------
-
-On Tegra20 SoC's there are 3 coupled regulators: CORE, RTC and CPU.
-The CORE and RTC voltages shall be in a range of 170mV from each other
-and they both shall be higher than the CPU voltage by at least 120mV.
-
-Tegra30 voltage coupling
-------------------------
-
-On Tegra30 SoC's there are 2 coupled regulators: CORE and CPU. The CORE
-and CPU voltages shall be in a range of 300mV from each other and CORE
-voltage shall be higher than the CPU by N mV, where N depends on the CPU
-voltage.
-
-Required properties:
-- nvidia,tegra-core-regulator: Boolean property that designates regulator
-  as the "Core domain" voltage regulator.
-- nvidia,tegra-rtc-regulator: Boolean property that designates regulator
-  as the "RTC domain" voltage regulator.
-- nvidia,tegra-cpu-regulator: Boolean property that designates regulator
-  as the "CPU domain" voltage regulator.
-
-Example:
-
-	pmic {
-		regulators {
-			core_vdd_reg: core {
-				regulator-name = "vdd_core";
-				regulator-min-microvolt = <950000>;
-				regulator-max-microvolt = <1300000>;
-				regulator-coupled-with = <&rtc_vdd_reg &cpu_vdd_reg>;
-				regulator-coupled-max-spread = <170000 550000>;
-
-				nvidia,tegra-core-regulator;
-			};
-
-			rtc_vdd_reg: rtc {
-				regulator-name = "vdd_rtc";
-				regulator-min-microvolt = <950000>;
-				regulator-max-microvolt = <1300000>;
-				regulator-coupled-with = <&core_vdd_reg &cpu_vdd_reg>;
-				regulator-coupled-max-spread = <170000 550000>;
-
-				nvidia,tegra-rtc-regulator;
-			};
-
-			cpu_vdd_reg: cpu {
-				regulator-name = "vdd_cpu";
-				regulator-min-microvolt = <750000>;
-				regulator-max-microvolt = <1125000>;
-				regulator-coupled-with = <&core_vdd_reg &rtc_vdd_reg>;
-				regulator-coupled-max-spread = <550000 550000>;
-
-				nvidia,tegra-cpu-regulator;
-			};
-		};
-	};
diff --git a/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.yaml b/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.yaml
new file mode 100644
index 000000000000..248cc98b6af1
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.yaml
@@ -0,0 +1,76 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NVIDIA Tegra Regulators Coupling
+
+description:
+  NVIDIA Tegra SoC's have a mandatory voltage-coupling between regulators. Thus
+  on Tegra20 there are 3 coupled regulators and on NVIDIA Tegra30 there are 2.
+
+  Tegra20 voltage coupling On Tegra20 SoC's - there are 3 coupled
+  regulators:CORE, RTC and CPU. The CORE and RTC voltages shall be in a range
+  of 170mV from each other and they both shall be higher than the CPU voltage
+  by at least 120mV.
+
+  Tegra30 voltage coupling On Tegra30 SoC's - there are 2 coupled
+  regulators:CORE and CPU. The CORE and CPU voltages shall be in a range of
+  300mV from each other and CORE voltage shall be higher than the CPU by N mV,
+  where N depends on the CPU voltage.
+
+maintainers:
+  - Dmitry Osipenko <digetx@gmail.com>
+  - Thierry Reding <treding@nvidia.com>
+
+properties:
+  nvidia,tegra-core-regulator:
+    description: designates regulator as the "Core domain" voltage regulator.
+    type: boolean
+
+  nvidia,tegra-rtc-regulator:
+    description: designates regulator as the "RTC domain" voltage regulator.
+    type: boolean
+
+  nvidia,tegra-cpu-regulator:
+    description: designates regulator as the "CPU domain" voltage regulator.
+    type: boolean
+
+additionalProperties: true
+
+examples:
+  - |
+    pmic {
+        regulators {
+            core_vdd_reg: core {
+                regulator-name = "vdd_core";
+                regulator-min-microvolt = <950000>;
+                regulator-max-microvolt = <1300000>;
+                regulator-coupled-with = <&rtc_vdd_reg &cpu_vdd_reg>;
+                regulator-coupled-max-spread = <170000 550000>;
+
+                nvidia,tegra-core-regulator;
+            };
+
+            rtc_vdd_reg: rtc {
+                regulator-name = "vdd_rtc";
+                regulator-min-microvolt = <950000>;
+                regulator-max-microvolt = <1300000>;
+                regulator-coupled-with = <&core_vdd_reg &cpu_vdd_reg>;
+                regulator-coupled-max-spread = <170000 550000>;
+
+                nvidia,tegra-rtc-regulator;
+           };
+
+           cpu_vdd_reg: cpu {
+                regulator-name = "vdd_cpu";
+                regulator-min-microvolt = <750000>;
+                regulator-max-microvolt = <1125000>;
+                regulator-coupled-with = <&core_vdd_reg &rtc_vdd_reg>;
+                regulator-coupled-max-spread = <550000 550000>;
+
+                nvidia,tegra-cpu-regulator;
+            };
+        };
+    };

-- 
2.55.0


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

* [PATCH v2 3/4] regulator: dt-bindings: Reference Tegra regulator coupling schema
  2026-09-16 13:11 [PATCH v2 0/4] regulator: dt-bindings: Tegra coupling DT conversions and cleanup Bhargav Joshi
  2026-09-16 13:11 ` [PATCH v2 1/4] dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs Bhargav Joshi
  2026-09-16 13:11 ` [PATCH v2 2/4] regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema Bhargav Joshi
@ 2026-09-16 13:11 ` Bhargav Joshi
  2026-09-18 19:06   ` Rob Herring
  2026-09-16 13:11 ` [PATCH v2 4/4] regulator: dt-bindings: ti,tps6586x: Convert to DT schema Bhargav Joshi
  3 siblings, 1 reply; 9+ messages in thread
From: Bhargav Joshi @ 2026-09-16 13:11 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Thierry Reding, Lee Jones, Shree Ramamoorthy,
	Thierry Reding, Jonathan Hunter, Dmitry Osipenko,
	Svyatoslav Ryhel, Laxman Dewangan
  Cc: linux-kernel, devicetree, goledhruva, m-chawdhry, daniel.baluta,
	simona.toaca, j.bhargav.u, mfd, Thierry Reding, linux-tegra

Several PMICs used on Tegra boards TPS65910, TPS62360, and MAX77620 use
Tegra-specific regulator coupling properties. Update their dt bindings
to reference the shared nvidia,tegra-regulators-coupling.yaml schema.

Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
---
 Documentation/devicetree/bindings/mfd/ti,tps65910.yaml       | 12 +++++++++---
 .../bindings/regulator/maxim,max77620-regulator.yaml         |  5 ++++-
 Documentation/devicetree/bindings/regulator/ti,tps62360.yaml |  1 +
 3 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml
index caff9dc0b2bb..798d27099401 100644
--- a/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml
+++ b/Documentation/devicetree/bindings/mfd/ti,tps65910.yaml
@@ -99,7 +99,9 @@ properties:
     patternProperties:
       "^(vrtc|vio|vpll|vdac|vmmc|vbb|vddctrl)$":
         type: object
-        $ref: /schemas/regulator/regulator.yaml#
+        allOf:
+          - $ref: /schemas/regulator/regulator.yaml#
+          - $ref: /schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
         properties:
           ti,regulator-ext-sleep-control:
             description: |
@@ -112,7 +114,9 @@ properties:
 
       "^(vdd[1-3]|vaux([1-2]|33)|vdig[1-2])$":
         type: object
-        $ref: /schemas/regulator/regulator.yaml#
+        allOf:
+          - $ref: /schemas/regulator/regulator.yaml#
+          - $ref: /schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
         properties:
           ti,regulator-ext-sleep-control:
             description: |
@@ -125,7 +129,9 @@ properties:
 
       "^ldo[1-8]$":
         type: object
-        $ref: /schemas/regulator/regulator.yaml#
+        allOf:
+          - $ref: /schemas/regulator/regulator.yaml#
+          - $ref: /schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
         properties:
           ti,regulator-ext-sleep-control:
             description: |
diff --git a/Documentation/devicetree/bindings/regulator/maxim,max77620-regulator.yaml b/Documentation/devicetree/bindings/regulator/maxim,max77620-regulator.yaml
index 7118c34961ba..67fbe7d6dc1c 100644
--- a/Documentation/devicetree/bindings/regulator/maxim,max77620-regulator.yaml
+++ b/Documentation/devicetree/bindings/regulator/maxim,max77620-regulator.yaml
@@ -22,7 +22,10 @@ patternProperties:
 
   "^(sd[0-3]|ldo[0-8])$":
     type: object
-    $ref: /schemas/regulator/regulator.yaml#
+    allOf:
+      - $ref: /schemas/regulator/regulator.yaml#
+      - $ref: /schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
+
     unevaluatedProperties: false
 
     properties:
diff --git a/Documentation/devicetree/bindings/regulator/ti,tps62360.yaml b/Documentation/devicetree/bindings/regulator/ti,tps62360.yaml
index 90c39275c150..6768fc6ea0d3 100644
--- a/Documentation/devicetree/bindings/regulator/ti,tps62360.yaml
+++ b/Documentation/devicetree/bindings/regulator/ti,tps62360.yaml
@@ -20,6 +20,7 @@ description: |
 
 allOf:
   - $ref: regulator.yaml#
+  - $ref: /schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
 
 properties:
   compatible:

-- 
2.55.0


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

* [PATCH v2 4/4] regulator: dt-bindings: ti,tps6586x: Convert to DT schema
  2026-09-16 13:11 [PATCH v2 0/4] regulator: dt-bindings: Tegra coupling DT conversions and cleanup Bhargav Joshi
                   ` (2 preceding siblings ...)
  2026-09-16 13:11 ` [PATCH v2 3/4] regulator: dt-bindings: Reference Tegra regulator coupling schema Bhargav Joshi
@ 2026-09-16 13:11 ` Bhargav Joshi
  2026-09-18 19:08   ` Rob Herring (Arm)
  3 siblings, 1 reply; 9+ messages in thread
From: Bhargav Joshi @ 2026-09-16 13:11 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Thierry Reding, Lee Jones, Shree Ramamoorthy,
	Thierry Reding, Jonathan Hunter, Dmitry Osipenko,
	Svyatoslav Ryhel, Laxman Dewangan
  Cc: linux-kernel, devicetree, goledhruva, m-chawdhry, daniel.baluta,
	simona.toaca, j.bhargav.u, mfd, Thierry Reding, linux-tegra

Convert Texas Instruments tps6586x regulator binding from text to DT
schema. Reference to nvidia,tegra-regulators-coupling in child regulator
nodes.

Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
---
 .../devicetree/bindings/regulator/ti,tps6586x.yaml | 196 +++++++++++++++++++++
 .../devicetree/bindings/regulator/tps6586x.txt     | 135 --------------
 2 files changed, 196 insertions(+), 135 deletions(-)

diff --git a/Documentation/devicetree/bindings/regulator/ti,tps6586x.yaml b/Documentation/devicetree/bindings/regulator/ti,tps6586x.yaml
new file mode 100644
index 000000000000..1f7c7b35066f
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/ti,tps6586x.yaml
@@ -0,0 +1,196 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/ti,tps6586x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI TPS6586x family of regulators
+
+maintainers:
+  - Thierry Reding <thierry.reding@avionic-design.de>
+
+properties:
+  compatible:
+    const: ti,tps6586x
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  "#gpio-cells":
+    const: 2
+
+  gpio-controller: true
+
+  sys-supply:
+    description: The input supply for SYS.
+
+  ti,system-power-controller:
+    type: boolean
+    description:
+      Whether or not this PMIC is controlling the system power.
+
+  regulators:
+    type: object
+    additionalProperties: false
+    description:
+      list of regulators provided by this controller, LDO5 and LDO_RTC is
+      supplied by SYS regulator internally and driver take care of making
+      proper parent child relationship.
+
+    properties:
+      sys:
+        type: object
+        $ref: regulator.yaml#
+        unevaluatedProperties: false
+
+    patternProperties:
+      "^ldo([0-9]|_rtc)$":
+        type: object
+        allOf:
+          - $ref: /schemas/regulator/regulator.yaml#
+          - $ref: /schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
+        unevaluatedProperties: false
+
+      "^sm[0-2]$":
+        type: object
+        allOf:
+          - $ref: /schemas/regulator/regulator.yaml#
+          - $ref: /schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
+        unevaluatedProperties: false
+
+patternProperties:
+  "^vin-sm[0-2]-supply$":
+    description: The input supply for the corresponding SM (SM0, SM1, or SM2).
+
+  "^vinldo(01|23|4|678|9)-supply$":
+    description: The input supply for the corresponding LDO or group of LDOs.
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - regulators
+  - "#gpio-cells"
+  - gpio-controller
+  - sys-supply
+  - vin-sm0-supply
+  - vin-sm1-supply
+  - vin-sm2-supply
+  - vinldo01-supply
+  - vinldo23-supply
+  - vinldo4-supply
+  - vinldo678-supply
+  - vinldo9-supply
+
+additionalProperties: false
+
+examples:
+  - |
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      pmic@34 {
+          compatible = "ti,tps6586x";
+          reg = <0x34>;
+          interrupts = <0 88 0x4>;
+
+          #gpio-cells = <2>;
+          gpio-controller;
+
+          ti,system-power-controller;
+
+          sys-supply = <&vdd_5v0_sys>;
+          vin-sm0-supply = <&sys_reg>;
+          vin-sm1-supply = <&sys_reg>;
+          vin-sm2-supply = <&sys_reg>;
+          vinldo01-supply = <&sm2_reg>;
+          vinldo23-supply = <&sm2_reg>;
+          vinldo4-supply = <&sm2_reg>;
+          vinldo678-supply = <&sm2_reg>;
+          vinldo9-supply = <&sm2_reg>;
+
+          regulators {
+              sys {
+                  regulator-name = "vdd_sys";
+                  regulator-boot-on;
+                  regulator-always-on;
+              };
+
+              sm0 {
+                  regulator-min-microvolt = < 725000>;
+                  regulator-max-microvolt = <1500000>;
+                  regulator-boot-on;
+                  regulator-always-on;
+              };
+
+              sm1 {
+                  regulator-min-microvolt = < 725000>;
+                  regulator-max-microvolt = <1500000>;
+                  regulator-boot-on;
+                  regulator-always-on;
+              };
+
+              sm2 {
+                  regulator-min-microvolt = <3000000>;
+                  regulator-max-microvolt = <4550000>;
+                  regulator-boot-on;
+                  regulator-always-on;
+              };
+
+              ldo0 {
+                  regulator-name = "PCIE CLK";
+                  regulator-min-microvolt = <3300000>;
+                  regulator-max-microvolt = <3300000>;
+              };
+
+              ldo1 {
+                  regulator-min-microvolt = < 725000>;
+                  regulator-max-microvolt = <1500000>;
+              };
+
+              ldo2 {
+                  regulator-min-microvolt = < 725000>;
+                  regulator-max-microvolt = <1500000>;
+              };
+
+              ldo3 {
+                  regulator-min-microvolt = <1250000>;
+                  regulator-max-microvolt = <3300000>;
+              };
+
+              ldo4 {
+                  regulator-min-microvolt = <1700000>;
+                  regulator-max-microvolt = <2475000>;
+              };
+
+              ldo5 {
+                  regulator-min-microvolt = <1250000>;
+                  regulator-max-microvolt = <3300000>;
+              };
+
+              ldo6 {
+                  regulator-min-microvolt = <1250000>;
+                  regulator-max-microvolt = <3300000>;
+              };
+
+              ldo7 {
+                  regulator-min-microvolt = <1250000>;
+                  regulator-max-microvolt = <3300000>;
+              };
+
+              ldo8 {
+                  regulator-min-microvolt = <1250000>;
+                  regulator-max-microvolt = <3300000>;
+              };
+
+              ldo9 {
+                  regulator-min-microvolt = <1250000>;
+                  regulator-max-microvolt = <3300000>;
+              };
+          };
+      };
+    };
diff --git a/Documentation/devicetree/bindings/regulator/tps6586x.txt b/Documentation/devicetree/bindings/regulator/tps6586x.txt
deleted file mode 100644
index 8b40cac24d93..000000000000
--- a/Documentation/devicetree/bindings/regulator/tps6586x.txt
+++ /dev/null
@@ -1,135 +0,0 @@
-TPS6586x family of regulators
-
-Required properties:
-- compatible: "ti,tps6586x"
-- reg: I2C slave address
-- interrupts: the interrupt outputs of the controller
-- #gpio-cells: number of cells to describe a GPIO
-- gpio-controller: mark the device as a GPIO controller
-- regulators: A node that houses a sub-node for each regulator within the
-  device. Each sub-node is identified using the node's name (or the deprecated
-  regulator-compatible property if present), with valid values listed below.
-  The content of each sub-node is defined by the standard binding for
-  regulators; see regulator.txt.
-  sys, sm[0-2], ldo[0-9] and ldo_rtc
-- sys-supply: The input supply for SYS.
-- vin-sm0-supply: The input supply for the SM0.
-- vin-sm1-supply: The input supply for the SM1.
-- vin-sm2-supply: The input supply for the SM2.
-- vinldo01-supply: The input supply for the LDO1 and LDO2
-- vinldo23-supply: The input supply for the LDO2 and LDO3
-- vinldo4-supply: The input supply for the LDO4
-- vinldo678-supply: The input supply for the LDO6, LDO7 and LDO8
-- vinldo9-supply: The input supply for the LDO9
-
-Optional properties:
-- ti,system-power-controller: Telling whether or not this pmic is controlling
-  the system power.
-
-Each regulator is defined using the standard binding for regulators.
-
-Note: LDO5 and LDO_RTC is supplied by SYS regulator internally and driver
-      take care of making proper parent child relationship.
-
-Example:
-
-	pmu: tps6586x@34 {
-		compatible = "ti,tps6586x";
-		reg = <0x34>;
-		interrupts = <0 88 0x4>;
-
-		#gpio-cells = <2>;
-		gpio-controller;
-
-		ti,system-power-controller;
-
-		sys-supply = <&some_reg>;
-		vin-sm0-supply = <&some_reg>;
-		vin-sm1-supply = <&some_reg>;
-		vin-sm2-supply = <&some_reg>;
-		vinldo01-supply = <...>;
-		vinldo23-supply = <...>;
-		vinldo4-supply = <...>;
-		vinldo678-supply = <...>;
-		vinldo9-supply = <...>;
-
-		regulators {
-			sys_reg: sys {
-				regulator-name = "vdd_sys";
-				regulator-boot-on;
-				regulator-always-on;
-			};
-
-			sm0_reg: sm0 {
-				regulator-min-microvolt = < 725000>;
-				regulator-max-microvolt = <1500000>;
-				regulator-boot-on;
-				regulator-always-on;
-			};
-
-			sm1_reg: sm1 {
-				regulator-min-microvolt = < 725000>;
-				regulator-max-microvolt = <1500000>;
-				regulator-boot-on;
-				regulator-always-on;
-			};
-
-			sm2_reg: sm2 {
-				regulator-min-microvolt = <3000000>;
-				regulator-max-microvolt = <4550000>;
-				regulator-boot-on;
-				regulator-always-on;
-			};
-
-			ldo0_reg: ldo0 {
-				regulator-name = "PCIE CLK";
-				regulator-min-microvolt = <3300000>;
-				regulator-max-microvolt = <3300000>;
-			};
-
-			ldo1_reg: ldo1 {
-				regulator-min-microvolt = < 725000>;
-				regulator-max-microvolt = <1500000>;
-			};
-
-			ldo2_reg: ldo2 {
-				regulator-min-microvolt = < 725000>;
-				regulator-max-microvolt = <1500000>;
-			};
-
-			ldo3_reg: ldo3 {
-				regulator-min-microvolt = <1250000>;
-				regulator-max-microvolt = <3300000>;
-			};
-
-			ldo4_reg: ldo4 {
-				regulator-min-microvolt = <1700000>;
-				regulator-max-microvolt = <2475000>;
-			};
-
-			ldo5_reg: ldo5 {
-				regulator-min-microvolt = <1250000>;
-				regulator-max-microvolt = <3300000>;
-			};
-
-			ldo6_reg: ldo6 {
-				regulator-min-microvolt = <1250000>;
-				regulator-max-microvolt = <3300000>;
-			};
-
-			ldo7_reg: ldo7 {
-				regulator-min-microvolt = <1250000>;
-				regulator-max-microvolt = <3300000>;
-			};
-
-			ldo8_reg: ldo8 {
-				regulator-min-microvolt = <1250000>;
-				regulator-max-microvolt = <3300000>;
-			};
-
-			ldo9_reg: ldo9 {
-				regulator-min-microvolt = <1250000>;
-				regulator-max-microvolt = <3300000>;
-			};
-		};
-	};

-- 
2.55.0


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

* Re: [PATCH v2 2/4] regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema
  2026-09-16 13:11 ` [PATCH v2 2/4] regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema Bhargav Joshi
@ 2026-09-18 19:06   ` Rob Herring
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring @ 2026-09-18 19:06 UTC (permalink / raw)
  To: Bhargav Joshi
  Cc: Liam Girdwood, Mark Brown, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding, Lee Jones, Shree Ramamoorthy, Thierry Reding,
	Jonathan Hunter, Dmitry Osipenko, Svyatoslav Ryhel,
	Laxman Dewangan, linux-kernel, devicetree, goledhruva,
	m-chawdhry, daniel.baluta, simona.toaca, mfd, Thierry Reding,
	linux-tegra

On Wed, Sep 16, 2026 at 06:41:27PM +0530, Bhargav Joshi wrote:
> Convert NVIDIA Tegra Regulators Coupling from legacy text to DT schema.
> Set additionalProperties true as this is shared schema.
> 
> Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
> ---
>  .../regulator/nvidia,tegra-regulators-coupling.txt | 65 ------------------
>  .../nvidia,tegra-regulators-coupling.yaml          | 76 ++++++++++++++++++++++
>  2 files changed, 76 insertions(+), 65 deletions(-)


> diff --git a/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.yaml b/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.yaml
> new file mode 100644
> index 000000000000..248cc98b6af1
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/nvidia,tegra-regulators-coupling.yaml
> @@ -0,0 +1,76 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/nvidia,tegra-regulators-coupling.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NVIDIA Tegra Regulators Coupling
> +
> +description:

Separate paragraphs need '>'

> +  NVIDIA Tegra SoC's have a mandatory voltage-coupling between regulators. Thus
> +  on Tegra20 there are 3 coupled regulators and on NVIDIA Tegra30 there are 2.
> +
> +  Tegra20 voltage coupling On Tegra20 SoC's - there are 3 coupled
> +  regulators:CORE, RTC and CPU. The CORE and RTC voltages shall be in a range
> +  of 170mV from each other and they both shall be higher than the CPU voltage
> +  by at least 120mV.
> +
> +  Tegra30 voltage coupling On Tegra30 SoC's - there are 2 coupled
> +  regulators:CORE and CPU. The CORE and CPU voltages shall be in a range of
> +  300mV from each other and CORE voltage shall be higher than the CPU by N mV,
> +  where N depends on the CPU voltage.
> +

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

* Re: [PATCH v2 3/4] regulator: dt-bindings: Reference Tegra regulator coupling schema
  2026-09-16 13:11 ` [PATCH v2 3/4] regulator: dt-bindings: Reference Tegra regulator coupling schema Bhargav Joshi
@ 2026-09-18 19:06   ` Rob Herring
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring @ 2026-09-18 19:06 UTC (permalink / raw)
  To: Bhargav Joshi
  Cc: Liam Girdwood, Mark Brown, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding, Lee Jones, Shree Ramamoorthy, Thierry Reding,
	Jonathan Hunter, Dmitry Osipenko, Svyatoslav Ryhel,
	Laxman Dewangan, linux-kernel, devicetree, goledhruva,
	m-chawdhry, daniel.baluta, simona.toaca, mfd, Thierry Reding,
	linux-tegra

On Wed, Sep 16, 2026 at 06:41:28PM +0530, Bhargav Joshi wrote:
> Several PMICs used on Tegra boards TPS65910, TPS62360, and MAX77620 use
> Tegra-specific regulator coupling properties. Update their dt bindings
> to reference the shared nvidia,tegra-regulators-coupling.yaml schema.
> 
> Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
> ---
>  Documentation/devicetree/bindings/mfd/ti,tps65910.yaml       | 12 +++++++++---
>  .../bindings/regulator/maxim,max77620-regulator.yaml         |  5 ++++-
>  Documentation/devicetree/bindings/regulator/ti,tps62360.yaml |  1 +
>  3 files changed, 14 insertions(+), 4 deletions(-)

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>

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

* Re: [PATCH v2 4/4] regulator: dt-bindings: ti,tps6586x: Convert to DT schema
  2026-09-16 13:11 ` [PATCH v2 4/4] regulator: dt-bindings: ti,tps6586x: Convert to DT schema Bhargav Joshi
@ 2026-09-18 19:08   ` Rob Herring (Arm)
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-09-18 19:08 UTC (permalink / raw)
  To: Bhargav Joshi
  Cc: Laxman Dewangan, Svyatoslav Ryhel, linux-tegra, simona.toaca,
	Mark Brown, Liam Girdwood, Thierry Reding, Thierry Reding,
	Thierry Reding, Shree Ramamoorthy, daniel.baluta, goledhruva,
	Conor Dooley, devicetree, m-chawdhry, Krzysztof Kozlowski,
	linux-kernel, mfd, Lee Jones, Jonathan Hunter, Dmitry Osipenko


On Wed, 16 Sep 2026 18:41:29 +0530, Bhargav Joshi wrote:
> Convert Texas Instruments tps6586x regulator binding from text to DT
> schema. Reference to nvidia,tegra-regulators-coupling in child regulator
> nodes.
> 
> Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
> ---
>  .../devicetree/bindings/regulator/ti,tps6586x.yaml | 196 +++++++++++++++++++++
>  .../devicetree/bindings/regulator/tps6586x.txt     | 135 --------------
>  2 files changed, 196 insertions(+), 135 deletions(-)
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>


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

* Re: [PATCH v2 1/4] dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs
  2026-09-16 13:11 ` [PATCH v2 1/4] dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs Bhargav Joshi
@ 2026-09-18 19:09   ` Rob Herring (Arm)
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2026-09-18 19:09 UTC (permalink / raw)
  To: Bhargav Joshi
  Cc: Mark Brown, Dmitry Osipenko, Thierry Reding, mfd, goledhruva,
	m-chawdhry, devicetree, Krzysztof Kozlowski, Lee Jones,
	Liam Girdwood, Conor Dooley, Jonathan Hunter, Thierry Reding,
	Laxman Dewangan, daniel.baluta, simona.toaca, linux-kernel,
	Thierry Reding, Shree Ramamoorthy, linux-tegra, Svyatoslav Ryhel


On Wed, 16 Sep 2026 18:41:26 +0530, Bhargav Joshi wrote:
> Device tree validation throws warnings for the TPS65911 PMIC on Tegra
> boards because wakeup-source and GPIO hog nodes are not documented in
> the schema, even though the hardware supports them.
> 
> Add wakeup-source property and allow child nodes that match the "-hog"
> pattern.
> 
> Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
> ---
>  Documentation/devicetree/bindings/mfd/ti,tps65910.yaml | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>


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

end of thread, other threads:[~2026-09-18 19:09 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-16 13:11 [PATCH v2 0/4] regulator: dt-bindings: Tegra coupling DT conversions and cleanup Bhargav Joshi
2026-09-16 13:11 ` [PATCH v2 1/4] dt-bindings: mfd: ti,tps65910: Add wakeup-source and GPIO hogs Bhargav Joshi
2026-09-18 19:09   ` Rob Herring (Arm)
2026-09-16 13:11 ` [PATCH v2 2/4] regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema Bhargav Joshi
2026-09-18 19:06   ` Rob Herring
2026-09-16 13:11 ` [PATCH v2 3/4] regulator: dt-bindings: Reference Tegra regulator coupling schema Bhargav Joshi
2026-09-18 19:06   ` Rob Herring
2026-09-16 13:11 ` [PATCH v2 4/4] regulator: dt-bindings: ti,tps6586x: Convert to DT schema Bhargav Joshi
2026-09-18 19:08   ` Rob Herring (Arm)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®