devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema
@ 2024-04-26 17:21 Nathan Morrisson
  2024-04-26 17:21 ` [PATCH 2/2] arm64: dts: ti: phycore-am64: Add PMIC Nathan Morrisson
  2024-04-29  6:06 ` [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema Krzysztof Kozlowski
  0 siblings, 2 replies; 3+ messages in thread
From: Nathan Morrisson @ 2024-04-26 17:21 UTC (permalink / raw)
  To: lee, robh, krzk+dt, conor+dt, nm, vigneshr, kristo, j-keerthy
  Cc: devicetree, linux-kernel, linux-arm-kernel, upstream, w.egorov

Convert the lp873x binding to DT schema format. Converted with
minimal corrections.

Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com>
---
 .../devicetree/bindings/mfd/lp873x.txt        |  67 ----------
 .../devicetree/bindings/mfd/lp873x.yaml       | 114 ++++++++++++++++++
 2 files changed, 114 insertions(+), 67 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mfd/lp873x.txt
 create mode 100644 Documentation/devicetree/bindings/mfd/lp873x.yaml

diff --git a/Documentation/devicetree/bindings/mfd/lp873x.txt b/Documentation/devicetree/bindings/mfd/lp873x.txt
deleted file mode 100644
index ae9cf39bd101..000000000000
--- a/Documentation/devicetree/bindings/mfd/lp873x.txt
+++ /dev/null
@@ -1,67 +0,0 @@
-TI LP873X PMIC MFD driver
-
-Required properties:
-  - compatible:	"ti,lp8732", "ti,lp8733"
-  - reg:		I2C slave address.
-  - gpio-controller:	Marks the device node as a GPIO Controller.
-  - #gpio-cells:	Should be two.  The first cell is the pin number and
-			the second cell is used to specify flags.
-			See ../gpio/gpio.txt for more information.
-  - xxx-in-supply:	Phandle to parent supply node of each regulator
-			populated under regulators node. xxx can be
-			buck0, buck1, ldo0 or ldo1.
-  - regulators:	List of child nodes that specify the regulator
-			initialization data.
-Example:
-
-pmic: lp8733@60 {
-	compatible = "ti,lp8733";
-	reg = <0x60>;
-	gpio-controller;
-	#gpio-cells = <2>;
-
-	buck0-in-supply = <&vsys_3v3>;
-	buck1-in-supply = <&vsys_3v3>;
-	ldo0-in-supply = <&vsys_3v3>;
-	ldo1-in-supply = <&vsys_3v3>;
-
-	regulators {
-		lp8733_buck0: buck0 {
-			regulator-name = "lp8733-buck0";
-			regulator-min-microvolt = <800000>;
-			regulator-max-microvolt = <1400000>;
-			regulator-min-microamp = <1500000>;
-			regulator-max-microamp = <4000000>;
-			regulator-ramp-delay = <10000>;
-			regulator-always-on;
-			regulator-boot-on;
-		};
-
-		lp8733_buck1: buck1 {
-			regulator-name = "lp8733-buck1";
-			regulator-min-microvolt = <800000>;
-			regulator-max-microvolt = <1400000>;
-			regulator-min-microamp = <1500000>;
-			regulator-max-microamp = <4000000>;
-			regulator-ramp-delay = <10000>;
-			regulator-boot-on;
-			regulator-always-on;
-		};
-
-		lp8733_ldo0: ldo0 {
-			regulator-name = "lp8733-ldo0";
-			regulator-min-microvolt = <800000>;
-			regulator-max-microvolt = <3000000>;
-			regulator-boot-on;
-			regulator-always-on;
-		};
-
-		lp8733_ldo1: ldo1 {
-			regulator-name = "lp8733-ldo1";
-			regulator-min-microvolt = <800000>;
-			regulator-max-microvolt = <3000000>;
-			regulator-always-on;
-			regulator-boot-on;
-		};
-	};
-};
diff --git a/Documentation/devicetree/bindings/mfd/lp873x.yaml b/Documentation/devicetree/bindings/mfd/lp873x.yaml
new file mode 100644
index 000000000000..87fefdc3126b
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/lp873x.yaml
@@ -0,0 +1,114 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/lp873x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI LP873X PMIC MFD drivers
+
+maintainers:
+  - J Keerthy <j-keerthy@ti.com>
+
+description: |
+  PMIC with two high-current buck converters and two linear regulators.
+
+properties:
+  compatible:
+    enum:
+      - ti,lp8732
+      - ti,lp8733
+
+  reg:
+    maxItems: 1
+
+  gpio-controller: true
+
+  '#gpio-cells':
+    const: 2
+
+  regulators:
+    description:
+      List of child nodes that specify the regulator initialization data.
+    type: object
+    patternProperties:
+      "^buck[01]|ldo[01]$":
+        type: object
+        $ref: /schemas/regulator/regulator.yaml#
+        unevaluatedProperties: false
+    additionalProperties: false
+
+patternProperties:
+  '^(buck[01]|ldo[01])-in-supply$':
+    description: Phandle to parent supply of each regulator populated under regulators node.
+
+required:
+  - compatible
+  - reg
+  - regulators
+
+additionalProperties: false
+
+examples:
+  - |
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        i2c@0 {
+            #address-cells = <1>;
+            #size-cells = <0>;
+            reg = <0>;
+
+            pmic: lp8733@60 {
+                compatible = "ti,lp8733";
+                reg = <0x60>;
+                gpio-controller;
+                #gpio-cells = <2>;
+
+                buck0-in-supply = <&vsys_3v3>;
+                buck1-in-supply = <&vsys_3v3>;
+                ldo0-in-supply = <&vsys_3v3>;
+                ldo1-in-supply = <&vsys_3v3>;
+
+                regulators {
+                    lp8733_buck0: buck0 {
+                        regulator-name = "lp8733-buck0";
+                        regulator-min-microvolt = <800000>;
+                        regulator-max-microvolt = <1400000>;
+                        regulator-min-microamp = <1500000>;
+                        regulator-max-microamp = <4000000>;
+                        regulator-ramp-delay = <10000>;
+                        regulator-always-on;
+                        regulator-boot-on;
+                    };
+
+                    lp8733_buck1: buck1 {
+                        regulator-name = "lp8733-buck1";
+                        regulator-min-microvolt = <800000>;
+                        regulator-max-microvolt = <1400000>;
+                        regulator-min-microamp = <1500000>;
+                        regulator-max-microamp = <4000000>;
+                        regulator-ramp-delay = <10000>;
+                        regulator-boot-on;
+                        regulator-always-on;
+                    };
+
+                    lp8733_ldo0: ldo0 {
+                        regulator-name = "lp8733-ldo0";
+                        regulator-min-microvolt = <800000>;
+                        regulator-max-microvolt = <3000000>;
+                        regulator-boot-on;
+                        regulator-always-on;
+                    };
+
+                    lp8733_ldo1: ldo1 {
+                        regulator-name = "lp8733-ldo1";
+                        regulator-min-microvolt = <800000>;
+                        regulator-max-microvolt = <3000000>;
+                        regulator-always-on;
+                        regulator-boot-on;
+                    };
+                };
+            };
+        };
+    };
-- 
2.25.1


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

* [PATCH 2/2] arm64: dts: ti: phycore-am64: Add PMIC
  2024-04-26 17:21 [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema Nathan Morrisson
@ 2024-04-26 17:21 ` Nathan Morrisson
  2024-04-29  6:06 ` [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema Krzysztof Kozlowski
  1 sibling, 0 replies; 3+ messages in thread
From: Nathan Morrisson @ 2024-04-26 17:21 UTC (permalink / raw)
  To: lee, robh, krzk+dt, conor+dt, nm, vigneshr, kristo, j-keerthy
  Cc: devicetree, linux-kernel, linux-arm-kernel, upstream, w.egorov

Add a PMIC node to the phycore-am64 device tree.

Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com>
---
 .../boot/dts/ti/k3-am64-phycore-som.dtsi      | 44 +++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-am64-phycore-som.dtsi b/arch/arm64/boot/dts/ti/k3-am64-phycore-som.dtsi
index 125e507966fb..2c3b20ddfb8b 100644
--- a/arch/arm64/boot/dts/ti/k3-am64-phycore-som.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am64-phycore-som.dtsi
@@ -265,6 +265,50 @@ i2c_som_rtc: rtc@52 {
 		interrupts = <70 IRQ_TYPE_EDGE_FALLING>;
 		wakeup-source;
 	};
+
+	pmic@61 {
+		compatible = "ti,lp8733";
+		reg = <0x61>;
+
+		buck0-in-supply = <&vcc_5v0_som>;
+		buck1-in-supply = <&vcc_5v0_som>;
+		ldo0-in-supply = <&vdd_3v3>;
+		ldo1-in-supply = <&vdd_3v3>;
+
+		regulators {
+			vdd_core: buck0 {
+				regulator-name = "VDD_CORE";
+				regulator-min-microvolt = <750000>;
+				regulator-max-microvolt = <750000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			vdd_3v3: buck1 {
+				regulator-name = "VDD_3V3";
+				regulator-min-microvolt = <3300000>;
+				regulator-max-microvolt = <3300000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			vdd_1v8_ldo0: ldo0 {
+				regulator-name = "VDD_1V8_LDO0";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <1800000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			vdda_1v8: ldo1 {
+				regulator-name = "VDDA_1V8";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <1800000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+		};
+	};
 };
 
 &main_r5fss0_core0 {
-- 
2.25.1


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

* Re: [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema
  2024-04-26 17:21 [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema Nathan Morrisson
  2024-04-26 17:21 ` [PATCH 2/2] arm64: dts: ti: phycore-am64: Add PMIC Nathan Morrisson
@ 2024-04-29  6:06 ` Krzysztof Kozlowski
  1 sibling, 0 replies; 3+ messages in thread
From: Krzysztof Kozlowski @ 2024-04-29  6:06 UTC (permalink / raw)
  To: Nathan Morrisson, lee, robh, krzk+dt, conor+dt, nm, vigneshr,
	kristo, j-keerthy
  Cc: devicetree, linux-kernel, linux-arm-kernel, upstream, w.egorov

On 26/04/2024 19:21, Nathan Morrisson wrote:
> Convert the lp873x binding to DT schema format. Converted with
> minimal corrections.
> 
> Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com>

Please use subject prefixes matching the subsystem. You can get them for
example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory
your patch is touching.


...

> -};
> diff --git a/Documentation/devicetree/bindings/mfd/lp873x.yaml b/Documentation/devicetree/bindings/mfd/lp873x.yaml
> new file mode 100644
> index 000000000000..87fefdc3126b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/lp873x.yaml

Missing vendor prefix. Name it after compatible, so ti,lp8732.yaml

> @@ -0,0 +1,114 @@
> +# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/lp873x.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TI LP873X PMIC MFD drivers


MFD is Linuxism, 'drivers' is not a hardware usually. Please provide
title matching hardware.

> +
> +maintainers:
> +  - J Keerthy <j-keerthy@ti.com>
> +
> +description: |

Do not need '|' unless you need to preserve formatting.

> +  PMIC with two high-current buck converters and two linear regulators.
> +
> +properties:
> +  compatible:
> +    enum:
> +      - ti,lp8732
> +      - ti,lp8733
> +
> +  reg:
> +    maxItems: 1
> +
> +  gpio-controller: true
> +
> +  '#gpio-cells':
> +    const: 2
> +
> +  regulators:
> +    description:
> +      List of child nodes that specify the regulator initialization data.
> +    type: object
> +    patternProperties:
> +      "^buck[01]|ldo[01]$":
> +        type: object
> +        $ref: /schemas/regulator/regulator.yaml#
> +        unevaluatedProperties: false
> +    additionalProperties: false
> +
> +patternProperties:
> +  '^(buck[01]|ldo[01])-in-supply$':
> +    description: Phandle to parent supply of each regulator populated under regulators node.
> +
> +required:
> +  - compatible
> +  - reg
> +  - regulators

Several other properties are required and you did not mention changes in
the conversion.

> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        i2c@0 {
> +            #address-cells = <1>;
> +            #size-cells = <0>;
> +            reg = <0>;
> +
> +            pmic: lp8733@60 {

Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation

That's usually pmic


Best regards,
Krzysztof


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

end of thread, other threads:[~2024-04-29  6:07 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-26 17:21 [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema Nathan Morrisson
2024-04-26 17:21 ` [PATCH 2/2] arm64: dts: ti: phycore-am64: Add PMIC Nathan Morrisson
2024-04-29  6:06 ` [PATCH 1/2] dt-bindings: Convert lp873x.txt to json-schema Krzysztof Kozlowski

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