dt-bindings: power: reset: qcom-pon: Add new compatible "qcom,pmk8350-pon"
authorDavid Collins <quic_collinsd@quicinc.com>
Fri, 9 Sep 2022 20:42:09 +0000 (13:42 -0700)
committerSebastian Reichel <sre@kernel.org>
Sun, 11 Sep 2022 10:09:10 +0000 (12:09 +0200)
Add a new compatible string "qcom,pmk8350-pon" for GEN3 PMIC PON
peripherals and update "reg" property.
Also, Add an optional "reg-names" property to differentiate between
GEN1/GEN2 and GEN3 peripherals. GEN1/GEN2 peripherals only need one
register address to be specified (e.g. "pon") whereas GEN3 peripherals
can have two register addresses specified ("hlos", "pbs").

Signed-off-by: David Collins <quic_collinsd@quicinc.com>
Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Documentation/devicetree/bindings/power/reset/qcom,pon.yaml

index e7b436d2e757f1fe0349dcefd8c41ea0ec6ae17a..d96170eecbd228bd95e6957bb8187af2a4b2e57a 100644 (file)
@@ -15,18 +15,27 @@ description: |
 
   This DT node has pwrkey and resin as sub nodes.
 
-allOf:
-  - $ref: reboot-mode.yaml#
-
 properties:
   compatible:
     enum:
       - qcom,pm8916-pon
       - qcom,pms405-pon
       - qcom,pm8998-pon
+      - qcom,pmk8350-pon
 
   reg:
-    maxItems: 1
+    description: |
+      Specifies the SPMI base address for the PON (power-on) peripheral.  For
+      PMICs that have the PON peripheral (GEN3) split into PON_HLOS and PON_PBS
+      (e.g. PMK8350), this can hold addresses of both PON_HLOS and PON_PBS
+      peripherals.  In that case, the PON_PBS address needs to be specified to
+      facilitate software debouncing on some PMIC.
+    minItems: 1
+    maxItems: 2
+
+  reg-names:
+    minItems: 1
+    maxItems: 2
 
   pwrkey:
     type: object
@@ -46,6 +55,39 @@ required:
 
 unevaluatedProperties: false
 
+allOf:
+  - $ref: reboot-mode.yaml#
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - qcom,pm8916-pon
+              - qcom,pms405-pon
+              - qcom,pm8998-pon
+    then:
+      properties:
+        reg:
+          maxItems: 1
+        reg-names:
+          items:
+            - const: pon
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: qcom,pmk8350-pon
+    then:
+      properties:
+        reg:
+          minItems: 1
+          maxItems: 2
+        reg-names:
+          minItems: 1
+          items:
+            - const: hlos
+            - const: pbs
+
 examples:
   - |
    #include <dt-bindings/interrupt-controller/irq.h>