devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] regulator/mfd: dt-bindings: maxim,max77802: convert to dtschema
@ 2021-12-28 16:43 Krzysztof Kozlowski
  2021-12-28 16:43 ` [PATCH 1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU Krzysztof Kozlowski
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:43 UTC (permalink / raw)
  To: Lee Jones, Rob Herring, Javier Martinez Canillas, Liam Girdwood,
	Mark Brown, Krzysztof Kozlowski, devicetree, linux-kernel,
	linux-arm-kernel, linux-samsung-soc

Hi,

Dependencies:
1. DTS patch: nothing depends on it, sending here so Rob's automatic
   checker won't complain about DTS.
   I will take it via Samsung SoC tree.

2. Final MFD patch depends on regulator, so the two last patches could
   go via Rob's, Mark's or Lee's trees. :)

Best regards,
Krzysztof

Krzysztof Kozlowski (3):
  ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU
  regulator: dt-bindings: maxim,max77802: Convert to dtschema
  dt-bindings: mfd: maxim,max77802: Convert to dtschema

 .../devicetree/bindings/mfd/max77802.txt      |  25 ---
 .../bindings/mfd/maxim,max77802.yaml          | 194 ++++++++++++++++++
 .../bindings/regulator/max77802.txt           | 111 ----------
 .../bindings/regulator/maxim,max77802.yaml    | 118 +++++++++++
 MAINTAINERS                                   |   2 +-
 arch/arm/boot/dts/exynos5410-odroidxu.dts     |  12 --
 6 files changed, 313 insertions(+), 149 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mfd/max77802.txt
 create mode 100644 Documentation/devicetree/bindings/mfd/maxim,max77802.yaml
 delete mode 100644 Documentation/devicetree/bindings/regulator/max77802.txt
 create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77802.yaml

-- 
2.32.0


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

* [PATCH 1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU
  2021-12-28 16:43 [PATCH 0/3] regulator/mfd: dt-bindings: maxim,max77802: convert to dtschema Krzysztof Kozlowski
@ 2021-12-28 16:43 ` Krzysztof Kozlowski
  2022-01-23 17:09   ` (subset) " Krzysztof Kozlowski
  2021-12-28 16:43 ` [PATCH 2/3] regulator: dt-bindings: maxim,max77802: Convert to dtschema Krzysztof Kozlowski
  2021-12-28 16:43 ` [PATCH 3/3] dt-bindings: mfd: " Krzysztof Kozlowski
  2 siblings, 1 reply; 8+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:43 UTC (permalink / raw)
  To: Lee Jones, Rob Herring, Javier Martinez Canillas, Liam Girdwood,
	Mark Brown, Krzysztof Kozlowski, devicetree, linux-kernel,
	linux-arm-kernel, linux-samsung-soc

The numbering of regulators is not continuous and the MAX77802 does not
support regulators LDO16, LDO22 and LDO31.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 arch/arm/boot/dts/exynos5410-odroidxu.dts | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5410-odroidxu.dts b/arch/arm/boot/dts/exynos5410-odroidxu.dts
index 884fef55836c..356d5f15dbb6 100644
--- a/arch/arm/boot/dts/exynos5410-odroidxu.dts
+++ b/arch/arm/boot/dts/exynos5410-odroidxu.dts
@@ -394,10 +394,6 @@ ldo15_reg: LDO15 {
 				regulator-always-on;
 			};
 
-			ldo16_reg: LDO16 {
-				regulator-name = "ldo16";
-			};
-
 			ldo17_reg: LDO17 {
 				regulator-name = "cam_sensor_core";
 				regulator-min-microvolt = <1200000>;
@@ -427,10 +423,6 @@ ldo21_reg: LDO21 {
 				regulator-max-microvolt = <2850000>;
 			};
 
-			ldo22_reg: LDO22 {
-				regulator-name = "ldo22";
-			};
-
 			ldo23_reg: LDO23 {
 				regulator-name = "dp_p3v3";
 				regulator-min-microvolt = <3300000>;
@@ -477,10 +469,6 @@ ldo30_reg: LDO30 {
 				regulator-always-on;
 			};
 
-			ldo31_reg: LDO31 {
-				regulator-name = "ldo31";
-			};
-
 			/* On revisions with ti,ina231 this is sensor VS */
 			ldo32_reg: LDO32 {
 				regulator-name = "vs_power_meter";
-- 
2.32.0


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

* [PATCH 2/3] regulator: dt-bindings: maxim,max77802: Convert to dtschema
  2021-12-28 16:43 [PATCH 0/3] regulator/mfd: dt-bindings: maxim,max77802: convert to dtschema Krzysztof Kozlowski
  2021-12-28 16:43 ` [PATCH 1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU Krzysztof Kozlowski
@ 2021-12-28 16:43 ` Krzysztof Kozlowski
  2022-01-04 15:33   ` Rob Herring
  2021-12-28 16:43 ` [PATCH 3/3] dt-bindings: mfd: " Krzysztof Kozlowski
  2 siblings, 1 reply; 8+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:43 UTC (permalink / raw)
  To: Lee Jones, Rob Herring, Javier Martinez Canillas, Liam Girdwood,
	Mark Brown, Krzysztof Kozlowski, devicetree, linux-kernel,
	linux-arm-kernel, linux-samsung-soc

Convert the regulators of Maxim MAX77802 PMIC to DT schema format.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../bindings/regulator/max77802.txt           | 111 ----------------
 .../bindings/regulator/maxim,max77802.yaml    | 118 ++++++++++++++++++
 2 files changed, 118 insertions(+), 111 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/regulator/max77802.txt
 create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77802.yaml

diff --git a/Documentation/devicetree/bindings/regulator/max77802.txt b/Documentation/devicetree/bindings/regulator/max77802.txt
deleted file mode 100644
index b82943d83677..000000000000
--- a/Documentation/devicetree/bindings/regulator/max77802.txt
+++ /dev/null
@@ -1,111 +0,0 @@
-Binding for Maxim MAX77802 regulators
-
-This is a part of device tree bindings of MAX77802 multi-function device.
-More information can be found in bindings/mfd/max77802.txt file.
-
-The MAX77802 PMIC has 10 high-efficiency Buck and 32 Low-dropout (LDO)
-regulators that can be controlled over I2C.
-
-Following properties should be present in main device node of the MFD chip.
-
-Optional properties:
-- inb1-supply:  The input supply for BUCK1
-- inb2-supply:  The input supply for BUCK2
-- inb3-supply:  The input supply for BUCK3
-- inb4-supply:  The input supply for BUCK4
-- inb5-supply:  The input supply for BUCK5
-- inb6-supply:  The input supply for BUCK6
-- inb7-supply:  The input supply for BUCK7
-- inb8-supply:  The input supply for BUCK8
-- inb9-supply:  The input supply for BUCK9
-- inb10-supply: The input supply for BUCK10
-- inl1-supply:  The input supply for LDO8 and LDO15
-- inl2-supply:  The input supply for LDO17, LDO27, LDO30 and LDO35
-- inl3-supply:  The input supply for LDO3, LDO5, LDO6 and LDO7
-- inl4-supply:  The input supply for LDO10, LDO11, LDO13 and LDO14
-- inl5-supply:  The input supply for LDO9 and LDO19
-- inl6-supply:  The input supply for LDO4, LDO21, LDO24 and LDO33
-- inl7-supply:  The input supply for LDO18, LDO20, LDO28 and LDO29
-- inl9-supply:  The input supply for LDO12, LDO23, LDO25, LDO26, LDO32 and LDO34
-- inl10-supply: The input supply for LDO1 and LDO2
-
-Optional nodes:
-- regulators : The regulators of max77802 have to be instantiated
-  under subnode named "regulators" using the following format.
-
-	regulator-name {
-		standard regulator constraints....
-	};
-	refer Documentation/devicetree/bindings/regulator/regulator.txt
-
-The regulator node name should be initialized with a string to get matched
-with their hardware counterparts as follow. The valid names are:
-
-	-LDOn 	:	for LDOs, where n can lie in ranges 1-15, 17-21, 23-30
-			and 32-35.
-			example: LDO1, LDO2, LDO35.
-	-BUCKn 	:	for BUCKs, where n can lie in range 1 to 10.
-			example: BUCK1, BUCK5, BUCK10.
-
-The max77802 regulator supports two different operating modes: Normal and Low
-Power Mode. Some regulators support the modes to be changed at startup or by
-the consumers during normal operation while others only support to change the
-mode during system suspend. The standard regulator suspend states binding can
-be used to configure the regulator operating mode.
-
-The regulators that support the standard "regulator-initial-mode" property,
-changing their mode during normal operation are: LDOs 1, 3, 20 and 21.
-
-The possible values for "regulator-initial-mode" and "regulator-mode" are:
-	1: Normal regulator voltage output mode.
-	3: Low Power which reduces the quiescent current down to only 1uA
-
-The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
-header and can be included by device tree source files.
-
-The standard "regulator-mode" property can only be used for regulators that
-support changing their mode to Low Power Mode during suspend. These regulators
-are: BUCKs 2-4 and LDOs 1-35. Also, it only takes effect if the regulator has
-been enabled for the given suspend state using "regulator-on-in-suspend" and
-has not been disabled for that state using "regulator-off-in-suspend".
-
-Example:
-
-	max77802@9 {
-		compatible = "maxim,max77802";
-		interrupt-parent = <&wakeup_eint>;
-		interrupts = <26 0>;
-		reg = <0x09>;
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		inb1-supply = <&parent_reg>;
-
-		regulators {
-			ldo1_reg: LDO1 {
-				regulator-name = "vdd_1v0";
-				regulator-min-microvolt = <1000000>;
-				regulator-max-microvolt = <1000000>;
-				regulator-always-on;
-				regulator-initial-mode = <MAX77802_OPMODE_LP>;
-			};
-
-			ldo11_reg: LDO11 {
-				regulator-name = "vdd_ldo11";
-				regulator-min-microvolt = <1900000>;
-				regulator-max-microvolt = <1900000>;
-				regulator-always-on;
-				regulator-state-mem {
-					regulator-on-in-suspend;
-					regulator-mode = <MAX77802_OPMODE_LP>;
-				};
-			};
-
-			buck1_reg: BUCK1 {
-				regulator-name = "vdd_mif";
-				regulator-min-microvolt = <950000>;
-				regulator-max-microvolt = <1300000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-	};
diff --git a/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml b/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
new file mode 100644
index 000000000000..01e1c40685ff
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
@@ -0,0 +1,118 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/maxim,max77802.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Maxim MAX77802 Power Management IC regulators
+
+maintainers:
+  - Javier Martinez Canillas <javier@dowhile0.org>
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+
+description: |
+  This is a part of device tree bindings for Maxim MAX77802 Power Management
+  Integrated Circuit (PMIC).
+
+  The Maxim MAX77686 provides 10 high-efficiency Buck and 32 Low-DropOut (LDO)
+  regulators.
+
+  See also Documentation/devicetree/bindings/mfd/maxim,max77802.yaml for
+  additional information and example.
+
+  Certain regulators support "regulator-initial-mode" and "regulator-mode".
+  The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
+  and their meaning is:
+    1 - Normal regulator voltage output mode.
+    3 - Low Power which reduces the quiescent current down to only 1uA
+
+  The standard "regulator-mode" property can only be used for regulators that
+  support changing their mode to Low Power Mode during suspend. These
+  regulators are: bucks 2-4 and LDOs 1-35. Also, it only takes effect if the
+  regulator has been enabled for the given suspend state using
+  "regulator-on-in-suspend" and has not been disabled for that state using
+  "regulator-off-in-suspend".
+
+patternProperties:
+  # LDO1, LDO3, LDO20, LDO21
+  "^LDO([13]|2[01])$":
+    type: object
+    $ref: regulator.yaml#
+    unevaluatedProperties: false
+    description:
+      LDOs supporting the regulator-initial-mode property and changing their
+      mode during normal operation.
+
+    properties:
+      regulator-initial-mode: true
+
+    patternProperties:
+      regulator-state-(standby|mem|disk):
+        type: object
+        properties:
+          regulator-mode: true
+
+    required:
+      - regulator-name
+
+  # LDO2, LDO4-15, LDO17-19, LDO23-30, LDO32-35
+  "^LDO([24-9]|1[0-5789]|2[3-9]|3[02345])$":
+    type: object
+    $ref: regulator.yaml#
+    unevaluatedProperties: false
+    description:
+      LDOs supporting the regulator-mode property (changing mode to Low Power
+      Mode during suspend).
+
+    properties:
+      regulator-initial-mode: false
+
+    patternProperties:
+      regulator-state-(standby|mem|disk):
+        type: object
+        properties:
+          regulator-mode: true
+
+    required:
+      - regulator-name
+
+  # buck2-4
+  "^BUCK[2-4]$":
+    type: object
+    $ref: regulator.yaml#
+    unevaluatedProperties: false
+    description:
+      bucks supporting the regulator-mode property (changing mode to Low Power
+      Mode during suspend).
+
+    properties:
+      regulator-initial-mode: false
+
+    patternProperties:
+      regulator-state-(standby|mem|disk):
+        type: object
+        properties:
+          regulator-mode: true
+
+    required:
+      - regulator-name
+
+  # buck1, buck5-10
+  "^BUCK([15-9]|10)$":
+    type: object
+    $ref: regulator.yaml#
+    unevaluatedProperties: false
+
+    properties:
+      regulator-initial-mode: false
+
+    patternProperties:
+      regulator-state-(standby|mem|disk):
+        type: object
+        properties:
+          regulator-mode: false
+
+    required:
+      - regulator-name
+
+additionalProperties: false
-- 
2.32.0


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

* [PATCH 3/3] dt-bindings: mfd: maxim,max77802: Convert to dtschema
  2021-12-28 16:43 [PATCH 0/3] regulator/mfd: dt-bindings: maxim,max77802: convert to dtschema Krzysztof Kozlowski
  2021-12-28 16:43 ` [PATCH 1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU Krzysztof Kozlowski
  2021-12-28 16:43 ` [PATCH 2/3] regulator: dt-bindings: maxim,max77802: Convert to dtschema Krzysztof Kozlowski
@ 2021-12-28 16:43 ` Krzysztof Kozlowski
  2022-01-04 15:35   ` Rob Herring
  2 siblings, 1 reply; 8+ messages in thread
From: Krzysztof Kozlowski @ 2021-12-28 16:43 UTC (permalink / raw)
  To: Lee Jones, Rob Herring, Javier Martinez Canillas, Liam Girdwood,
	Mark Brown, Krzysztof Kozlowski, devicetree, linux-kernel,
	linux-arm-kernel, linux-samsung-soc

Convert the MFD part of Maxim MAX77802 PMIC to DT schema format.  The
example DTS was copied from existing DTS (exynos5800-peach-pi.dts), so
keep the license as GPL-2.0-only.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../devicetree/bindings/mfd/max77802.txt      |  25 ---
 .../bindings/mfd/maxim,max77802.yaml          | 194 ++++++++++++++++++
 MAINTAINERS                                   |   2 +-
 3 files changed, 195 insertions(+), 26 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mfd/max77802.txt
 create mode 100644 Documentation/devicetree/bindings/mfd/maxim,max77802.yaml

diff --git a/Documentation/devicetree/bindings/mfd/max77802.txt b/Documentation/devicetree/bindings/mfd/max77802.txt
deleted file mode 100644
index 09decac20d91..000000000000
--- a/Documentation/devicetree/bindings/mfd/max77802.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-Maxim MAX77802 multi-function device
-
-The Maxim MAX77802 is a Power Management IC (PMIC) that contains 10 high
-efficiency Buck regulators, 32 Low-DropOut (LDO) regulators used to power
-up application processors and peripherals, a 2-channel 32kHz clock outputs,
-a Real-Time-Clock (RTC) and a I2C interface to program the individual
-regulators, clocks outputs and the RTC.
-
-Bindings for the built-in 32k clock generator block and
-regulators are defined in ../clk/maxim,max77802.txt and
-../regulator/max77802.txt respectively.
-
-Required properties:
-- compatible		: Must be "maxim,max77802"
-- reg			: Specifies the I2C slave address of PMIC block.
-- interrupts		: I2C device IRQ line connected to the main SoC.
-
-Example:
-
-	max77802: pmic@9 {
-		compatible = "maxim,max77802";
-		interrupt-parent = <&intc>;
-		interrupts = <26 IRQ_TYPE_NONE>;
-		reg = <0x09>;
-	};
diff --git a/Documentation/devicetree/bindings/mfd/maxim,max77802.yaml b/Documentation/devicetree/bindings/mfd/maxim,max77802.yaml
new file mode 100644
index 000000000000..26f49fbace18
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/maxim,max77802.yaml
@@ -0,0 +1,194 @@
+# SPDX-License-Identifier: GPL-2.0-only
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/maxim,max77802.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Maxim MAX77802 Power Management IC
+
+maintainers:
+  - Javier Martinez Canillas <javier@dowhile0.org>
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+
+description: |
+  This is a part of device tree bindings for Maxim MAX77802 Power Management
+  Integrated Circuit (PMIC).
+
+  The Maxim MAX77802 is a Power Management IC which includes voltage and
+  current regulators (10 high efficiency Buck regulators and 32 Low-DropOut
+  (LDO)), RTC and clock outputs.
+
+  The MAX77802 provides two 32.768khz clock outputs that can be controlled
+  (gated/ungated) over I2C.  The clock IDs are defined as preprocessor macros
+  in dt-bindings/clock/maxim,max77802.h.
+
+properties:
+  compatible:
+    const: maxim,max77802
+
+  '#clock-cells':
+    const: 1
+
+  interrupts:
+    maxItems: 1
+
+  reg:
+    maxItems: 1
+
+  regulators:
+    $ref: ../regulator/maxim,max77802.yaml
+    description:
+      List of child nodes that specify the regulators.
+
+  inb1-supply:
+    description: Power supply for buck1
+  inb2-supply:
+    description: Power supply for buck2
+  inb3-supply:
+    description: Power supply for buck3
+  inb4-supply:
+    description: Power supply for buck4
+  inb5-supply:
+    description: Power supply for buck5
+  inb6-supply:
+    description: Power supply for buck6
+  inb7-supply:
+    description: Power supply for buck7
+  inb8-supply:
+    description: Power supply for buck8
+  inb9-supply:
+    description: Power supply for buck9
+  inb10-supply:
+    description: Power supply for buck10
+
+  inl1-supply:
+    description: Power supply for LDO8, LDO15
+  inl2-supply:
+    description: Power supply for LDO17, LDO27, LDO30, LDO35
+  inl3-supply:
+    description: Power supply for LDO3, LDO5, LDO7, LDO7
+  inl4-supply:
+    description: Power supply for LDO10, LDO11, LDO13, LDO14
+  inl5-supply:
+    description: Power supply for LDO9, LDO19
+  inl6-supply:
+    description: Power supply for LDO4, LDO21, LDO24, LDO33
+  inl7-supply:
+    description: Power supply for LDO18, LDO20, LDO28, LDO29
+  inl9-supply:
+    description: Power supply for LDO12, LDO23, LDO25, LDO26, LDO32, LDO34
+  inl10-supply:
+    description: Power supply for LDO1, LDO2
+
+  wakeup-source: true
+
+required:
+  - compatible
+  - '#clock-cells'
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/regulator/maxim,max77802.h>
+
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        pmic@9 {
+            compatible = "maxim,max77802";
+            interrupt-parent = <&gpx3>;
+            interrupts = <1 IRQ_TYPE_NONE>;
+            pinctrl-names = "default";
+            pinctrl-0 = <&max77802_irq>, <&pmic_selb>,
+                        <&pmic_dvs_1>, <&pmic_dvs_2>, <&pmic_dvs_3>;
+            wakeup-source;
+            reg = <0x9>;
+            #clock-cells = <1>;
+
+            inb1-supply = <&tps65090_dcdc2>;
+            inb2-supply = <&tps65090_dcdc1>;
+            inb3-supply = <&tps65090_dcdc2>;
+            inb4-supply = <&tps65090_dcdc2>;
+            inb5-supply = <&tps65090_dcdc1>;
+            inb6-supply = <&tps65090_dcdc2>;
+            inb7-supply = <&tps65090_dcdc1>;
+            inb8-supply = <&tps65090_dcdc1>;
+            inb9-supply = <&tps65090_dcdc1>;
+            inb10-supply = <&tps65090_dcdc1>;
+
+            inl1-supply = <&buck5_reg>;
+            inl2-supply = <&buck7_reg>;
+            inl3-supply = <&buck9_reg>;
+            inl4-supply = <&buck9_reg>;
+            inl5-supply = <&buck9_reg>;
+            inl6-supply = <&tps65090_dcdc2>;
+            inl7-supply = <&buck9_reg>;
+            inl9-supply = <&tps65090_dcdc2>;
+            inl10-supply = <&buck7_reg>;
+
+            regulators {
+                BUCK1 {
+                    regulator-name = "vdd_mif";
+                    regulator-min-microvolt = <800000>;
+                    regulator-max-microvolt = <1300000>;
+                    regulator-always-on;
+                    regulator-boot-on;
+                    regulator-ramp-delay = <12500>;
+                    regulator-state-mem {
+                        regulator-off-in-suspend;
+                    };
+                };
+
+                BUCK2 {
+                    regulator-name = "vdd_arm";
+                    regulator-min-microvolt = <800000>;
+                    regulator-max-microvolt = <1500000>;
+                    regulator-always-on;
+                    regulator-boot-on;
+                    regulator-ramp-delay = <12500>;
+                    regulator-coupled-with = <&buck3_reg>;
+                    regulator-coupled-max-spread = <300000>;
+                    regulator-state-mem {
+                        regulator-off-in-suspend;
+                    };
+                };
+
+                // ...
+
+                BUCK10 {
+                    regulator-name = "vdd_1v8";
+                    regulator-min-microvolt = <1800000>;
+                    regulator-max-microvolt = <1800000>;
+                    regulator-always-on;
+                    regulator-boot-on;
+                    regulator-state-mem {
+                        regulator-on-in-suspend;
+                    };
+                };
+
+                LDO1 {
+                    regulator-name = "vdd_1v0";
+                    regulator-min-microvolt = <1000000>;
+                    regulator-max-microvolt = <1000000>;
+                    regulator-always-on;
+                    regulator-initial-mode = <MAX77802_OPMODE_NORMAL>;
+                    regulator-state-mem {
+                        regulator-on-in-suspend;
+                        regulator-mode = <MAX77802_OPMODE_LP>;
+                    };
+                };
+
+                // ...
+
+                LDO35 {
+                    regulator-name = "ldo_35";
+                    regulator-min-microvolt = <1200000>;
+                    regulator-max-microvolt = <1200000>;
+                };
+            };
+        };
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index 5ea5655a29c3..b5e4f14f6768 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11666,7 +11666,7 @@ MAXIM MAX77802 PMIC REGULATOR DEVICE DRIVER
 M:	Javier Martinez Canillas <javier@dowhile0.org>
 L:	linux-kernel@vger.kernel.org
 S:	Supported
-F:	Documentation/devicetree/bindings/*/*max77802.txt
+F:	Documentation/devicetree/bindings/*/*max77802.yaml
 F:	drivers/regulator/max77802-regulator.c
 F:	include/dt-bindings/*/*max77802.h
 
-- 
2.32.0


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

* Re: [PATCH 2/3] regulator: dt-bindings: maxim,max77802: Convert to dtschema
  2021-12-28 16:43 ` [PATCH 2/3] regulator: dt-bindings: maxim,max77802: Convert to dtschema Krzysztof Kozlowski
@ 2022-01-04 15:33   ` Rob Herring
  2022-01-11 16:43     ` Krzysztof Kozlowski
  0 siblings, 1 reply; 8+ messages in thread
From: Rob Herring @ 2022-01-04 15:33 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Lee Jones, Javier Martinez Canillas, Liam Girdwood, Mark Brown,
	devicetree, linux-kernel, linux-arm-kernel, linux-samsung-soc

On Tue, Dec 28, 2021 at 05:43:04PM +0100, Krzysztof Kozlowski wrote:
> Convert the regulators of Maxim MAX77802 PMIC to DT schema format.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../bindings/regulator/max77802.txt           | 111 ----------------
>  .../bindings/regulator/maxim,max77802.yaml    | 118 ++++++++++++++++++
>  2 files changed, 118 insertions(+), 111 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/regulator/max77802.txt
>  create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
> 
> diff --git a/Documentation/devicetree/bindings/regulator/max77802.txt b/Documentation/devicetree/bindings/regulator/max77802.txt
> deleted file mode 100644
> index b82943d83677..000000000000
> --- a/Documentation/devicetree/bindings/regulator/max77802.txt
> +++ /dev/null
> @@ -1,111 +0,0 @@
> -Binding for Maxim MAX77802 regulators
> -
> -This is a part of device tree bindings of MAX77802 multi-function device.
> -More information can be found in bindings/mfd/max77802.txt file.
> -
> -The MAX77802 PMIC has 10 high-efficiency Buck and 32 Low-dropout (LDO)
> -regulators that can be controlled over I2C.
> -
> -Following properties should be present in main device node of the MFD chip.
> -
> -Optional properties:
> -- inb1-supply:  The input supply for BUCK1
> -- inb2-supply:  The input supply for BUCK2
> -- inb3-supply:  The input supply for BUCK3
> -- inb4-supply:  The input supply for BUCK4
> -- inb5-supply:  The input supply for BUCK5
> -- inb6-supply:  The input supply for BUCK6
> -- inb7-supply:  The input supply for BUCK7
> -- inb8-supply:  The input supply for BUCK8
> -- inb9-supply:  The input supply for BUCK9
> -- inb10-supply: The input supply for BUCK10
> -- inl1-supply:  The input supply for LDO8 and LDO15
> -- inl2-supply:  The input supply for LDO17, LDO27, LDO30 and LDO35
> -- inl3-supply:  The input supply for LDO3, LDO5, LDO6 and LDO7
> -- inl4-supply:  The input supply for LDO10, LDO11, LDO13 and LDO14
> -- inl5-supply:  The input supply for LDO9 and LDO19
> -- inl6-supply:  The input supply for LDO4, LDO21, LDO24 and LDO33
> -- inl7-supply:  The input supply for LDO18, LDO20, LDO28 and LDO29
> -- inl9-supply:  The input supply for LDO12, LDO23, LDO25, LDO26, LDO32 and LDO34
> -- inl10-supply: The input supply for LDO1 and LDO2
> -
> -Optional nodes:
> -- regulators : The regulators of max77802 have to be instantiated
> -  under subnode named "regulators" using the following format.
> -
> -	regulator-name {
> -		standard regulator constraints....
> -	};
> -	refer Documentation/devicetree/bindings/regulator/regulator.txt
> -
> -The regulator node name should be initialized with a string to get matched
> -with their hardware counterparts as follow. The valid names are:
> -
> -	-LDOn 	:	for LDOs, where n can lie in ranges 1-15, 17-21, 23-30
> -			and 32-35.
> -			example: LDO1, LDO2, LDO35.
> -	-BUCKn 	:	for BUCKs, where n can lie in range 1 to 10.
> -			example: BUCK1, BUCK5, BUCK10.
> -
> -The max77802 regulator supports two different operating modes: Normal and Low
> -Power Mode. Some regulators support the modes to be changed at startup or by
> -the consumers during normal operation while others only support to change the
> -mode during system suspend. The standard regulator suspend states binding can
> -be used to configure the regulator operating mode.
> -
> -The regulators that support the standard "regulator-initial-mode" property,
> -changing their mode during normal operation are: LDOs 1, 3, 20 and 21.
> -
> -The possible values for "regulator-initial-mode" and "regulator-mode" are:
> -	1: Normal regulator voltage output mode.
> -	3: Low Power which reduces the quiescent current down to only 1uA
> -
> -The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
> -header and can be included by device tree source files.
> -
> -The standard "regulator-mode" property can only be used for regulators that
> -support changing their mode to Low Power Mode during suspend. These regulators
> -are: BUCKs 2-4 and LDOs 1-35. Also, it only takes effect if the regulator has
> -been enabled for the given suspend state using "regulator-on-in-suspend" and
> -has not been disabled for that state using "regulator-off-in-suspend".
> -
> -Example:
> -
> -	max77802@9 {
> -		compatible = "maxim,max77802";
> -		interrupt-parent = <&wakeup_eint>;
> -		interrupts = <26 0>;
> -		reg = <0x09>;
> -		#address-cells = <1>;
> -		#size-cells = <0>;
> -
> -		inb1-supply = <&parent_reg>;
> -
> -		regulators {
> -			ldo1_reg: LDO1 {
> -				regulator-name = "vdd_1v0";
> -				regulator-min-microvolt = <1000000>;
> -				regulator-max-microvolt = <1000000>;
> -				regulator-always-on;
> -				regulator-initial-mode = <MAX77802_OPMODE_LP>;
> -			};
> -
> -			ldo11_reg: LDO11 {
> -				regulator-name = "vdd_ldo11";
> -				regulator-min-microvolt = <1900000>;
> -				regulator-max-microvolt = <1900000>;
> -				regulator-always-on;
> -				regulator-state-mem {
> -					regulator-on-in-suspend;
> -					regulator-mode = <MAX77802_OPMODE_LP>;
> -				};
> -			};
> -
> -			buck1_reg: BUCK1 {
> -				regulator-name = "vdd_mif";
> -				regulator-min-microvolt = <950000>;
> -				regulator-max-microvolt = <1300000>;
> -				regulator-always-on;
> -				regulator-boot-on;
> -			};
> -	};
> diff --git a/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml b/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
> new file mode 100644
> index 000000000000..01e1c40685ff
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
> @@ -0,0 +1,118 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/maxim,max77802.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Maxim MAX77802 Power Management IC regulators
> +
> +maintainers:
> +  - Javier Martinez Canillas <javier@dowhile0.org>
> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> +
> +description: |
> +  This is a part of device tree bindings for Maxim MAX77802 Power Management
> +  Integrated Circuit (PMIC).
> +
> +  The Maxim MAX77686 provides 10 high-efficiency Buck and 32 Low-DropOut (LDO)
> +  regulators.
> +
> +  See also Documentation/devicetree/bindings/mfd/maxim,max77802.yaml for
> +  additional information and example.
> +
> +  Certain regulators support "regulator-initial-mode" and "regulator-mode".
> +  The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
> +  and their meaning is:
> +    1 - Normal regulator voltage output mode.
> +    3 - Low Power which reduces the quiescent current down to only 1uA
> +
> +  The standard "regulator-mode" property can only be used for regulators that
> +  support changing their mode to Low Power Mode during suspend. These
> +  regulators are: bucks 2-4 and LDOs 1-35. Also, it only takes effect if the
> +  regulator has been enabled for the given suspend state using
> +  "regulator-on-in-suspend" and has not been disabled for that state using
> +  "regulator-off-in-suspend".
> +
> +patternProperties:
> +  # LDO1, LDO3, LDO20, LDO21
> +  "^LDO([13]|2[01])$":
> +    type: object
> +    $ref: regulator.yaml#
> +    unevaluatedProperties: false
> +    description:
> +      LDOs supporting the regulator-initial-mode property and changing their
> +      mode during normal operation.
> +
> +    properties:
> +      regulator-initial-mode: true

Same issues here as the other series.

> +
> +    patternProperties:
> +      regulator-state-(standby|mem|disk):
> +        type: object
> +        properties:
> +          regulator-mode: true

Is this the only valid property? 

> +
> +    required:
> +      - regulator-name
> +
> +  # LDO2, LDO4-15, LDO17-19, LDO23-30, LDO32-35
> +  "^LDO([24-9]|1[0-5789]|2[3-9]|3[02345])$":
> +    type: object
> +    $ref: regulator.yaml#
> +    unevaluatedProperties: false
> +    description:
> +      LDOs supporting the regulator-mode property (changing mode to Low Power
> +      Mode during suspend).
> +
> +    properties:
> +      regulator-initial-mode: false
> +
> +    patternProperties:
> +      regulator-state-(standby|mem|disk):
> +        type: object
> +        properties:
> +          regulator-mode: true
> +
> +    required:
> +      - regulator-name
> +
> +  # buck2-4
> +  "^BUCK[2-4]$":
> +    type: object
> +    $ref: regulator.yaml#
> +    unevaluatedProperties: false
> +    description:
> +      bucks supporting the regulator-mode property (changing mode to Low Power
> +      Mode during suspend).
> +
> +    properties:
> +      regulator-initial-mode: false
> +
> +    patternProperties:
> +      regulator-state-(standby|mem|disk):
> +        type: object
> +        properties:
> +          regulator-mode: true
> +
> +    required:
> +      - regulator-name
> +
> +  # buck1, buck5-10
> +  "^BUCK([15-9]|10)$":
> +    type: object
> +    $ref: regulator.yaml#
> +    unevaluatedProperties: false
> +
> +    properties:
> +      regulator-initial-mode: false
> +
> +    patternProperties:
> +      regulator-state-(standby|mem|disk):
> +        type: object
> +        properties:
> +          regulator-mode: false
> +
> +    required:
> +      - regulator-name
> +
> +additionalProperties: false
> -- 
> 2.32.0
> 
> 

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

* Re: [PATCH 3/3] dt-bindings: mfd: maxim,max77802: Convert to dtschema
  2021-12-28 16:43 ` [PATCH 3/3] dt-bindings: mfd: " Krzysztof Kozlowski
@ 2022-01-04 15:35   ` Rob Herring
  0 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2022-01-04 15:35 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Lee Jones, Javier Martinez Canillas, Liam Girdwood, Mark Brown,
	devicetree, linux-kernel, linux-arm-kernel, linux-samsung-soc

On Tue, Dec 28, 2021 at 05:43:05PM +0100, Krzysztof Kozlowski wrote:
> Convert the MFD part of Maxim MAX77802 PMIC to DT schema format.  The
> example DTS was copied from existing DTS (exynos5800-peach-pi.dts), so
> keep the license as GPL-2.0-only.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../devicetree/bindings/mfd/max77802.txt      |  25 ---
>  .../bindings/mfd/maxim,max77802.yaml          | 194 ++++++++++++++++++
>  MAINTAINERS                                   |   2 +-
>  3 files changed, 195 insertions(+), 26 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/mfd/max77802.txt
>  create mode 100644 Documentation/devicetree/bindings/mfd/maxim,max77802.yaml
> 
> diff --git a/Documentation/devicetree/bindings/mfd/max77802.txt b/Documentation/devicetree/bindings/mfd/max77802.txt
> deleted file mode 100644
> index 09decac20d91..000000000000
> --- a/Documentation/devicetree/bindings/mfd/max77802.txt
> +++ /dev/null
> @@ -1,25 +0,0 @@
> -Maxim MAX77802 multi-function device
> -
> -The Maxim MAX77802 is a Power Management IC (PMIC) that contains 10 high
> -efficiency Buck regulators, 32 Low-DropOut (LDO) regulators used to power
> -up application processors and peripherals, a 2-channel 32kHz clock outputs,
> -a Real-Time-Clock (RTC) and a I2C interface to program the individual
> -regulators, clocks outputs and the RTC.
> -
> -Bindings for the built-in 32k clock generator block and
> -regulators are defined in ../clk/maxim,max77802.txt and
> -../regulator/max77802.txt respectively.
> -
> -Required properties:
> -- compatible		: Must be "maxim,max77802"
> -- reg			: Specifies the I2C slave address of PMIC block.
> -- interrupts		: I2C device IRQ line connected to the main SoC.
> -
> -Example:
> -
> -	max77802: pmic@9 {
> -		compatible = "maxim,max77802";
> -		interrupt-parent = <&intc>;
> -		interrupts = <26 IRQ_TYPE_NONE>;
> -		reg = <0x09>;
> -	};
> diff --git a/Documentation/devicetree/bindings/mfd/maxim,max77802.yaml b/Documentation/devicetree/bindings/mfd/maxim,max77802.yaml
> new file mode 100644
> index 000000000000..26f49fbace18
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/maxim,max77802.yaml
> @@ -0,0 +1,194 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/maxim,max77802.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Maxim MAX77802 Power Management IC
> +
> +maintainers:
> +  - Javier Martinez Canillas <javier@dowhile0.org>
> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> +
> +description: |
> +  This is a part of device tree bindings for Maxim MAX77802 Power Management
> +  Integrated Circuit (PMIC).
> +
> +  The Maxim MAX77802 is a Power Management IC which includes voltage and
> +  current regulators (10 high efficiency Buck regulators and 32 Low-DropOut
> +  (LDO)), RTC and clock outputs.
> +
> +  The MAX77802 provides two 32.768khz clock outputs that can be controlled
> +  (gated/ungated) over I2C.  The clock IDs are defined as preprocessor macros
> +  in dt-bindings/clock/maxim,max77802.h.
> +
> +properties:
> +  compatible:
> +    const: maxim,max77802
> +
> +  '#clock-cells':
> +    const: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  reg:
> +    maxItems: 1
> +
> +  regulators:
> +    $ref: ../regulator/maxim,max77802.yaml

Use absolute path: /schemas/regulator/...

With that,

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

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

* Re: [PATCH 2/3] regulator: dt-bindings: maxim,max77802: Convert to dtschema
  2022-01-04 15:33   ` Rob Herring
@ 2022-01-11 16:43     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2022-01-11 16:43 UTC (permalink / raw)
  To: Rob Herring
  Cc: Lee Jones, Javier Martinez Canillas, Liam Girdwood, Mark Brown,
	devicetree, linux-kernel, linux-arm-kernel, linux-samsung-soc

On 04/01/2022 16:33, Rob Herring wrote:
> On Tue, Dec 28, 2021 at 05:43:04PM +0100, Krzysztof Kozlowski wrote:
>> Convert the regulators of Maxim MAX77802 PMIC to DT schema format.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> ---
>>  .../bindings/regulator/max77802.txt           | 111 ----------------
>>  .../bindings/regulator/maxim,max77802.yaml    | 118 ++++++++++++++++++
>>  2 files changed, 118 insertions(+), 111 deletions(-)
>>  delete mode 100644 Documentation/devicetree/bindings/regulator/max77802.txt
>>  create mode 100644 Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/regulator/max77802.txt b/Documentation/devicetree/bindings/regulator/max77802.txt
>> deleted file mode 100644
>> index b82943d83677..000000000000
>> --- a/Documentation/devicetree/bindings/regulator/max77802.txt
>> +++ /dev/null
>> @@ -1,111 +0,0 @@
>> -Binding for Maxim MAX77802 regulators
>> -
>> -This is a part of device tree bindings of MAX77802 multi-function device.
>> -More information can be found in bindings/mfd/max77802.txt file.
>> -
>> -The MAX77802 PMIC has 10 high-efficiency Buck and 32 Low-dropout (LDO)
>> -regulators that can be controlled over I2C.
>> -
>> -Following properties should be present in main device node of the MFD chip.
>> -
>> -Optional properties:
>> -- inb1-supply:  The input supply for BUCK1
>> -- inb2-supply:  The input supply for BUCK2
>> -- inb3-supply:  The input supply for BUCK3
>> -- inb4-supply:  The input supply for BUCK4
>> -- inb5-supply:  The input supply for BUCK5
>> -- inb6-supply:  The input supply for BUCK6
>> -- inb7-supply:  The input supply for BUCK7
>> -- inb8-supply:  The input supply for BUCK8
>> -- inb9-supply:  The input supply for BUCK9
>> -- inb10-supply: The input supply for BUCK10
>> -- inl1-supply:  The input supply for LDO8 and LDO15
>> -- inl2-supply:  The input supply for LDO17, LDO27, LDO30 and LDO35
>> -- inl3-supply:  The input supply for LDO3, LDO5, LDO6 and LDO7
>> -- inl4-supply:  The input supply for LDO10, LDO11, LDO13 and LDO14
>> -- inl5-supply:  The input supply for LDO9 and LDO19
>> -- inl6-supply:  The input supply for LDO4, LDO21, LDO24 and LDO33
>> -- inl7-supply:  The input supply for LDO18, LDO20, LDO28 and LDO29
>> -- inl9-supply:  The input supply for LDO12, LDO23, LDO25, LDO26, LDO32 and LDO34
>> -- inl10-supply: The input supply for LDO1 and LDO2
>> -
>> -Optional nodes:
>> -- regulators : The regulators of max77802 have to be instantiated
>> -  under subnode named "regulators" using the following format.
>> -
>> -	regulator-name {
>> -		standard regulator constraints....
>> -	};
>> -	refer Documentation/devicetree/bindings/regulator/regulator.txt
>> -
>> -The regulator node name should be initialized with a string to get matched
>> -with their hardware counterparts as follow. The valid names are:
>> -
>> -	-LDOn 	:	for LDOs, where n can lie in ranges 1-15, 17-21, 23-30
>> -			and 32-35.
>> -			example: LDO1, LDO2, LDO35.
>> -	-BUCKn 	:	for BUCKs, where n can lie in range 1 to 10.
>> -			example: BUCK1, BUCK5, BUCK10.
>> -
>> -The max77802 regulator supports two different operating modes: Normal and Low
>> -Power Mode. Some regulators support the modes to be changed at startup or by
>> -the consumers during normal operation while others only support to change the
>> -mode during system suspend. The standard regulator suspend states binding can
>> -be used to configure the regulator operating mode.
>> -
>> -The regulators that support the standard "regulator-initial-mode" property,
>> -changing their mode during normal operation are: LDOs 1, 3, 20 and 21.
>> -
>> -The possible values for "regulator-initial-mode" and "regulator-mode" are:
>> -	1: Normal regulator voltage output mode.
>> -	3: Low Power which reduces the quiescent current down to only 1uA
>> -
>> -The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
>> -header and can be included by device tree source files.
>> -
>> -The standard "regulator-mode" property can only be used for regulators that
>> -support changing their mode to Low Power Mode during suspend. These regulators
>> -are: BUCKs 2-4 and LDOs 1-35. Also, it only takes effect if the regulator has
>> -been enabled for the given suspend state using "regulator-on-in-suspend" and
>> -has not been disabled for that state using "regulator-off-in-suspend".
>> -
>> -Example:
>> -
>> -	max77802@9 {
>> -		compatible = "maxim,max77802";
>> -		interrupt-parent = <&wakeup_eint>;
>> -		interrupts = <26 0>;
>> -		reg = <0x09>;
>> -		#address-cells = <1>;
>> -		#size-cells = <0>;
>> -
>> -		inb1-supply = <&parent_reg>;
>> -
>> -		regulators {
>> -			ldo1_reg: LDO1 {
>> -				regulator-name = "vdd_1v0";
>> -				regulator-min-microvolt = <1000000>;
>> -				regulator-max-microvolt = <1000000>;
>> -				regulator-always-on;
>> -				regulator-initial-mode = <MAX77802_OPMODE_LP>;
>> -			};
>> -
>> -			ldo11_reg: LDO11 {
>> -				regulator-name = "vdd_ldo11";
>> -				regulator-min-microvolt = <1900000>;
>> -				regulator-max-microvolt = <1900000>;
>> -				regulator-always-on;
>> -				regulator-state-mem {
>> -					regulator-on-in-suspend;
>> -					regulator-mode = <MAX77802_OPMODE_LP>;
>> -				};
>> -			};
>> -
>> -			buck1_reg: BUCK1 {
>> -				regulator-name = "vdd_mif";
>> -				regulator-min-microvolt = <950000>;
>> -				regulator-max-microvolt = <1300000>;
>> -				regulator-always-on;
>> -				regulator-boot-on;
>> -			};
>> -	};
>> diff --git a/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml b/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
>> new file mode 100644
>> index 000000000000..01e1c40685ff
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/regulator/maxim,max77802.yaml
>> @@ -0,0 +1,118 @@
>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/regulator/maxim,max77802.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Maxim MAX77802 Power Management IC regulators
>> +
>> +maintainers:
>> +  - Javier Martinez Canillas <javier@dowhile0.org>
>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> +
>> +description: |
>> +  This is a part of device tree bindings for Maxim MAX77802 Power Management
>> +  Integrated Circuit (PMIC).
>> +
>> +  The Maxim MAX77686 provides 10 high-efficiency Buck and 32 Low-DropOut (LDO)
>> +  regulators.
>> +
>> +  See also Documentation/devicetree/bindings/mfd/maxim,max77802.yaml for
>> +  additional information and example.
>> +
>> +  Certain regulators support "regulator-initial-mode" and "regulator-mode".
>> +  The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
>> +  and their meaning is:
>> +    1 - Normal regulator voltage output mode.
>> +    3 - Low Power which reduces the quiescent current down to only 1uA
>> +
>> +  The standard "regulator-mode" property can only be used for regulators that
>> +  support changing their mode to Low Power Mode during suspend. These
>> +  regulators are: bucks 2-4 and LDOs 1-35. Also, it only takes effect if the
>> +  regulator has been enabled for the given suspend state using
>> +  "regulator-on-in-suspend" and has not been disabled for that state using
>> +  "regulator-off-in-suspend".
>> +
>> +patternProperties:
>> +  # LDO1, LDO3, LDO20, LDO21
>> +  "^LDO([13]|2[01])$":
>> +    type: object
>> +    $ref: regulator.yaml#
>> +    unevaluatedProperties: false
>> +    description:
>> +      LDOs supporting the regulator-initial-mode property and changing their
>> +      mode during normal operation.
>> +
>> +    properties:
>> +      regulator-initial-mode: true
> 
> Same issues here as the other series.

Right.

> 
>> +
>> +    patternProperties:
>> +      regulator-state-(standby|mem|disk):
>> +        type: object
>> +        properties:
>> +          regulator-mode: true
> 
> Is this the only valid property? 
> 
No. I will skip entire patternProperties for regulators where there are
no constraints about other properties.

Best regards,
Krzysztof

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

* Re: (subset) [PATCH 1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU
  2021-12-28 16:43 ` [PATCH 1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU Krzysztof Kozlowski
@ 2022-01-23 17:09   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2022-01-23 17:09 UTC (permalink / raw)
  To: Krzysztof Kozlowski, linux-samsung-soc, Javier Martinez Canillas,
	Rob Herring, Liam Girdwood, Mark Brown, Lee Jones, devicetree,
	linux-arm-kernel, linux-kernel

On Tue, 28 Dec 2021 17:43:03 +0100, Krzysztof Kozlowski wrote:
> The numbering of regulators is not continuous and the MAX77802 does not
> support regulators LDO16, LDO22 and LDO31.
> 
> 

Applied, thanks!

[1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU
      commit: 0d42eb5ac66d816c95573135951142483640181c

Best regards,
-- 
Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>

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

end of thread, other threads:[~2022-01-23 17:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-28 16:43 [PATCH 0/3] regulator/mfd: dt-bindings: maxim,max77802: convert to dtschema Krzysztof Kozlowski
2021-12-28 16:43 ` [PATCH 1/3] ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU Krzysztof Kozlowski
2022-01-23 17:09   ` (subset) " Krzysztof Kozlowski
2021-12-28 16:43 ` [PATCH 2/3] regulator: dt-bindings: maxim,max77802: Convert to dtschema Krzysztof Kozlowski
2022-01-04 15:33   ` Rob Herring
2022-01-11 16:43     ` Krzysztof Kozlowski
2021-12-28 16:43 ` [PATCH 3/3] dt-bindings: mfd: " Krzysztof Kozlowski
2022-01-04 15:35   ` Rob Herring

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).