devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "André Draszik" <andre.draszik@linaro.org>
To: Tudor Ambarus <tudor.ambarus@linaro.org>,
	Rob Herring <robh@kernel.org>,
	 Conor Dooley <conor+dt@kernel.org>,
	Krzysztof Kozlowski <krzk@kernel.org>,
	 Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>,  Lee Jones <lee@kernel.org>,
	Linus Walleij <linus.walleij@linaro.org>,
	 Bartosz Golaszewski <brgl@bgdev.pl>,
	 Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: "Peter Griffin" <peter.griffin@linaro.org>,
	"Will McVicker" <willmcvicker@google.com>,
	kernel-team@android.com, linux-kernel@vger.kernel.org,
	linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org,
	linux-gpio@vger.kernel.org,
	"André Draszik" <andre.draszik@linaro.org>
Subject: [PATCH v3 06/20] dt-bindings: mfd: samsung,s2mpg10: Add s2mpg11-pmic
Date: Mon, 03 Nov 2025 19:14:45 +0000	[thread overview]
Message-ID: <20251103-s2mpg1x-regulators-v3-6-b8b96b79e058@linaro.org> (raw)
In-Reply-To: <20251103-s2mpg1x-regulators-v3-0-b8b96b79e058@linaro.org>

The Samsung S2MPG11 PMIC is similar to the existing S2MPG10 PMIC
supported by this binding.

It is a Power Management IC for mobile applications with buck
converters, various LDOs, power meters, NTC thermistor inputs, and
additional GPIO interfaces and typically complements an S2MPG10 PMIC in
a main/sub configuration as the sub-PMIC.

Like S2MPG10, communication is via the Samsung ACPM firmware and it
therefore needs to be a child of the ACPM firmware node.

Add the PMIC, the regulators node, and the supply inputs of the
regulator rails, with the supply names matching the datasheet.

Note: S2MPG11 is typically used as the sub-PMIC together with an
S2MPG10 PMIC in a main/sub configuration, hence the datasheet and the
binding both suffix the supplies with an 's'.

Signed-off-by: André Draszik <andre.draszik@linaro.org>

---
v3:
- move to new samsung,s2mpg10.yaml file
- deny 'clocks' property
- mention NTC thermistor inputs in commit message
- move all patternProperties to top-level

v2:
- add | to vinb*-supply description for better formatting to mark as
  literal style
- mention GPIOs in commit message
---
 .../devicetree/bindings/mfd/samsung,s2mpg10.yaml   | 49 ++++++++++++++++++++--
 1 file changed, 45 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/samsung,s2mpg10.yaml b/Documentation/devicetree/bindings/mfd/samsung,s2mpg10.yaml
index dc06333a4050af69297ac3cae0628a0fffc3fcc9..6f0912989f2eff12d04dea03b3a067529327e8d3 100644
--- a/Documentation/devicetree/bindings/mfd/samsung,s2mpg10.yaml
+++ b/Documentation/devicetree/bindings/mfd/samsung,s2mpg10.yaml
@@ -19,7 +19,9 @@ description: |
 
 properties:
   compatible:
-    const: samsung,s2mpg10-pmic
+    enum:
+      - samsung,s2mpg10-pmic
+      - samsung,s2mpg11-pmic
 
   clocks:
     $ref: /schemas/clock/samsung,s2mps11.yaml
@@ -39,15 +41,15 @@ properties:
   wakeup-source: true
 
 patternProperties:
-  "^vinb([1-9]|10)m-supply$":
+  "^vinb([1-9]|10)[ms]-supply$":
     description:
       Phandle to the power supply for each buck rail of this PMIC. There is a
       1:1 mapping of supply to rail, e.g. vinb1m-supply supplies buck1m.
 
   "^vinl([1-9]|1[0-5])m-supply$":
     description: |
-      Phandle to the power supply for one or multiple LDO rails of this PMIC.
-      The mapping of supply to rail(s) is as follows:
+      Phandle to the power supply for one or multiple LDO rails of the S2MPG10
+      PMIC. The mapping of supply to rail(s) is as follows:
         vinl1m - ldo13m
         vinl2m - ldo15m
         vinl3m - ldo1m, ldo5m, ldo7m
@@ -64,6 +66,25 @@ patternProperties:
         vinl14m - ldo21m
         vinl15m - ldo10m, ldo22m, ldo26m, ldo27m
 
+  "^vinb[abd]-supply$":
+    description: |
+      Phandle to the power supply for the additional buck rails of the S2MPG11
+      PMIC. The mapping of supply to rail is as follows::
+        vinba - bucka
+        vinbb - buck boost
+        vinbd - buckd
+
+  "^vinl[1-6]s-supply$":
+    description: |
+      Phandle to the power supply for one or multiple LDO rails of the S2MPG11
+      PMIC. The mapping of supply to rail(s) is as follows:
+        vinl1s - ldo1s, ldo2s
+        vinl2s - ldo8s, ldo9s
+        vinl3s - ldo3s, ldo5s, ldo7s, ldo15s
+        vinl4s - ldo10s, ldo11s, ldo12s, ldo14s
+        vinl5s - ldo4s, ldo6s
+        vinl6s - ldo13s
+
 required:
   - compatible
   - interrupts
@@ -81,3 +102,23 @@ allOf:
       properties:
         regulators:
           $ref: /schemas/regulator/samsung,s2mpg10-regulator.yaml
+
+      patternProperties:
+        "[^m]-supply$": false
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: samsung,s2mpg11-pmic
+    then:
+      properties:
+        clocks: false
+
+        regulators:
+          $ref: /schemas/regulator/samsung,s2mpg11-regulator.yaml
+
+        system-power-controller: false
+
+      patternProperties:
+        "m-supply$": false

-- 
2.51.2.997.g839fc31de9-goog


  parent reply	other threads:[~2025-11-03 19:14 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-03 19:14 [PATCH v3 00/20] Samsung S2MPG10 regulator and S2MPG11 PMIC drivers André Draszik
2025-11-03 19:14 ` [PATCH v3 01/20] dt-bindings: firmware: google,gs101-acpm-ipc: convert regulators to lowercase André Draszik
2025-11-03 19:14 ` [PATCH v3 02/20] dt-bindings: mfd: samsung,s2mps11: split s2mpg10 into separate file André Draszik
2025-11-04  8:26   ` Krzysztof Kozlowski
2025-11-07 11:01     ` André Draszik
2025-11-09 18:59       ` Krzysztof Kozlowski
2025-11-03 19:14 ` [PATCH v3 03/20] regulator: dt-bindings: add s2mpg10-pmic regulators André Draszik
2025-11-03 19:14 ` [PATCH v3 04/20] regulator: dt-bindings: add s2mpg11-pmic regulators André Draszik
2025-11-04  9:39   ` Krzysztof Kozlowski
2025-11-07 11:14     ` André Draszik
2025-11-09 19:00       ` Krzysztof Kozlowski
2025-11-10  6:30         ` André Draszik
2025-11-03 19:14 ` [PATCH v3 05/20] dt-bindings: mfd: samsung,s2mpg10: Link s2mpg10-pmic to its regulators André Draszik
2025-11-04  8:28   ` Krzysztof Kozlowski
2025-11-08 13:48     ` André Draszik
2025-11-03 19:14 ` André Draszik [this message]
2025-11-04  8:37   ` [PATCH v3 06/20] dt-bindings: mfd: samsung,s2mpg10: Add s2mpg11-pmic Krzysztof Kozlowski
2025-11-03 19:14 ` [PATCH v3 07/20] dt-bindings: firmware: google,gs101-acpm-ipc: update PMIC examples André Draszik
2025-11-04  8:31   ` Krzysztof Kozlowski
2025-11-08 14:08     ` André Draszik
2025-11-09 19:02       ` Krzysztof Kozlowski
2025-11-04  9:46   ` Krzysztof Kozlowski
2025-11-03 19:14 ` [PATCH v3 08/20] mfd: sec-common: Instantiate s2mpg10 bucks and ldos separately André Draszik
2025-11-03 19:14 ` [PATCH v3 09/20] mfd: sec: Add support for S2MPG11 PMIC via ACPM André Draszik
2025-11-13 16:25   ` Lee Jones
2025-11-13 21:43     ` André Draszik
2025-11-14 16:46       ` Mark Brown
2025-11-14 21:56         ` André Draszik
2025-11-16  1:14           ` Mark Brown
2025-11-16 12:49             ` André Draszik
2025-11-16 16:46               ` Mark Brown
2025-11-17  6:44                 ` André Draszik
2025-11-03 19:14 ` [PATCH v3 10/20] regulator: add REGULATOR_LINEAR_VRANGE macro André Draszik
2025-11-04 14:27   ` Mark Brown
2025-11-05 16:15     ` André Draszik
2025-11-03 19:14 ` [PATCH v3 11/20] regulator: s2mps11: drop two needless variable initialisations André Draszik
2025-11-04  8:41   ` Krzysztof Kozlowski
2025-11-03 19:14 ` [PATCH v3 12/20] regulator: s2mps11: use dev_err_probe() where appropriate André Draszik
2025-11-04  8:41   ` Krzysztof Kozlowski
2025-11-03 19:14 ` [PATCH v3 13/20] regulator: s2mps11: place constants on right side of comparison tests André Draszik
2025-11-04  8:40   ` Krzysztof Kozlowski
2025-11-03 19:14 ` [PATCH v3 14/20] regulator: s2mps11: update node parsing (allow -supply properties) André Draszik
2025-11-03 19:14 ` [PATCH v3 15/20] regulator: s2mps11: refactor handling of external rail control André Draszik
2025-11-03 19:14 ` [PATCH v3 16/20] regulator: s2mps11: add S2MPG10 regulator André Draszik
2025-11-03 19:14 ` [PATCH v3 17/20] regulator: s2mps11: refactor S2MPG10 ::set_voltage_time() for S2MPG11 reuse André Draszik
2025-11-03 19:14 ` [PATCH v3 18/20] regulator: s2mps11: refactor S2MPG10 regulator macros " André Draszik
2025-11-03 19:14 ` [PATCH v3 19/20] regulator: s2mps11: add S2MPG11 regulator André Draszik
2025-11-03 19:14 ` [PATCH v3 20/20] regulator: s2mps11: more descriptive gpio consumer name André Draszik

Reply instructions:

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

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

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

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

  git send-email \
    --in-reply-to=20251103-s2mpg1x-regulators-v3-6-b8b96b79e058@linaro.org \
    --to=andre.draszik@linaro.org \
    --cc=brgl@bgdev.pl \
    --cc=broonie@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=kernel-team@android.com \
    --cc=krzk+dt@kernel.org \
    --cc=krzk@kernel.org \
    --cc=lee@kernel.org \
    --cc=lgirdwood@gmail.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=peter.griffin@linaro.org \
    --cc=robh@kernel.org \
    --cc=tudor.ambarus@linaro.org \
    --cc=willmcvicker@google.com \
    /path/to/YOUR_REPLY

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

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