@@ -21,6 +21,7 @@ properties:
compatible:
enum:
- samsung,s2mpg10-pmic
+ - samsung,s2mpg11-pmic
- samsung,s2mps11-pmic
- samsung,s2mps13-pmic
- samsung,s2mps14-pmic
@@ -70,21 +71,46 @@ required:
unevaluatedProperties: false
allOf:
+ - if:
+ not:
+ properties:
+ compatible:
+ const: samsung,s2mpg10-pmic
+ then:
+ properties:
+ system-power-controller: false
+
- if:
properties:
compatible:
contains:
- const: samsung,s2mpg10-pmic
+ enum:
+ - samsung,s2mpg10-pmic
+ - samsung,s2mpg11-pmic
then:
properties:
reg: false
+ samsung,s2mps11-acokb-ground: false
+ samsung,s2mps11-wrstbi-ground: false
+
+ oneOf:
+ - required: [interrupts]
+ - required: [interrupts-extended]
+
+ else:
+ required:
+ - reg
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: samsung,s2mpg10-pmic
+ then:
+ properties:
regulators:
$ref: /schemas/regulator/samsung,s2mpg10-regulator.yaml
- samsung,s2mps11-acokb-ground: false
- samsung,s2mps11-wrstbi-ground: false
-
patternProperties:
"^vinb([1-9]|10)m-supply$":
description:
@@ -112,16 +138,36 @@ allOf:
vinl14m - ldo21m
vinl15m - ldo10m, ldo22m, ldo26m, ldo27m
- oneOf:
- - required: [interrupts]
- - required: [interrupts-extended]
-
- else:
+ - if:
properties:
- system-power-controller: false
+ compatible:
+ contains:
+ const: samsung,s2mpg11-pmic
+ then:
+ properties:
+ regulators:
+ $ref: /schemas/regulator/samsung,s2mpg11-regulator.yaml
- required:
- - reg
+ patternProperties:
+ "^vinb(([1-9]|10)s|[abd])-supply$":
+ description:
+ Phandle to the power supply for each buck rail of this PMIC. There
+ is a 1:1 mapping of numbered supply to rail, e.g. vinb1s-supply
+ supplies buck1s. The remaining mapping 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 this
+ 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
- if:
properties:
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, and power meters and typically complements an S2MPG10 PMIC in a main/sub configuration as the sub-PMIC. Like S2MPG10, communication is not via I2C, but via the Samsung ACPM firmware, it therefore doesn't need a 'reg' property but needs to be a child of the ACPM firmware node instead. 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> --- .../devicetree/bindings/mfd/samsung,s2mps11.yaml | 70 ++++++++++++++++++---- 1 file changed, 58 insertions(+), 12 deletions(-)