dt-bindings: mfd: Convert pm8xxx bindings to yaml
authorsatya priya <skakit@codeaurora.org>
Fri, 9 Apr 2021 13:59:25 +0000 (19:29 +0530)
committerLee Jones <lee.jones@linaro.org>
Wed, 14 Apr 2021 15:06:50 +0000 (16:06 +0100)
Convert pm8xxx bindings from .txt to .yaml format. Also,
split this binding into two: parent binding(qcom-pm8xxx.yaml)
and child node RTC binding(qcom-pm8xxx-rtc.yaml).

Signed-off-by: satya priya <skakit@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reported-by: kernel test robot <lkp@intel.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt [deleted file]
Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt
deleted file mode 100644 (file)
index 07f4925..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-Qualcomm PM8xxx PMIC multi-function devices
-
-The PM8xxx family of Power Management ICs are used to provide regulated
-voltages and other various functionality to Qualcomm SoCs.
-
-= PROPERTIES
-
-- compatible:
-       Usage: required
-       Value type: <string>
-       Definition: must be one of:
-                   "qcom,pm8058"
-                   "qcom,pm8821"
-                   "qcom,pm8921"
-
-- #address-cells:
-       Usage: required
-       Value type: <u32>
-       Definition: must be 1
-
-- #size-cells:
-       Usage: required
-       Value type: <u32>
-       Definition: must be 0
-
-- interrupts:
-       Usage: required
-       Value type: <prop-encoded-array>
-       Definition: specifies the interrupt that indicates a subdevice
-                   has generated an interrupt (summary interrupt). The
-                   format of the specifier is defined by the binding document
-                   describing the node's interrupt parent.
-
-- #interrupt-cells:
-       Usage: required
-       Value type : <u32>
-       Definition: must be 2. Specifies the number of cells needed to encode
-                   an interrupt source. The 1st cell contains the interrupt
-                   number. The 2nd cell is the trigger type and level flags
-                   encoded as follows:
-
-                       1 = low-to-high edge triggered
-                       2 = high-to-low edge triggered
-                       4 = active high level-sensitive
-                       8 = active low level-sensitive
-
-- interrupt-controller:
-       Usage: required
-       Value type: <empty>
-       Definition: identifies this node as an interrupt controller
-
-= SUBCOMPONENTS
-
-The PMIC contains multiple independent functions, each described in a subnode.
-The below bindings specify the set of valid subnodes.
-
-== Real-Time Clock
-
-- compatible:
-       Usage: required
-       Value type: <string>
-       Definition: must be one of:
-                   "qcom,pm8058-rtc"
-                   "qcom,pm8921-rtc"
-                   "qcom,pm8941-rtc"
-                   "qcom,pm8018-rtc"
-                   "qcom,pmk8350-rtc"
-
-- reg:
-       Usage: required
-       Value type: <prop-encoded-array>
-       Definition: single entry specifying the base address of the RTC registers
-
-- interrupts:
-       Usage: required
-       Value type: <prop-encoded-array>
-       Definition: single entry specifying the RTC's alarm interrupt
-
-- allow-set-time:
-       Usage: optional
-       Value type: <empty>
-       Definition: indicates that the setting of RTC time is allowed by
-                   the host CPU
-
-= EXAMPLE
-
-       pmicintc: pmic@0 {
-               compatible = "qcom,pm8921";
-               interrupts = <104 8>;
-               #interrupt-cells = <2>;
-               interrupt-controller;
-               #address-cells = <1>;
-               #size-cells = <0>;
-
-               rtc@11d {
-                       compatible = "qcom,pm8921-rtc";
-                       reg = <0x11d>;
-                       interrupts = <0x27 0>;
-               };
-       };
diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml
new file mode 100644 (file)
index 0000000..9065ec5
--- /dev/null
@@ -0,0 +1,54 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/qcom-pm8xxx.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm PM8xxx PMIC multi-function devices
+
+maintainers:
+  - Satya Priya <skakit@codeaurora.org>
+
+description: |
+  The PM8xxx family of Power Management ICs are used to provide regulated
+  voltages and other various functionality to Qualcomm SoCs.
+
+properties:
+  compatible:
+    enum:
+      - qcom,pm8058
+      - qcom,pm8821
+      - qcom,pm8921
+
+  reg:
+    maxItems: 1
+
+  '#address-cells':
+    const: 1
+
+  '#size-cells':
+    const: 0
+
+  interrupts:
+    maxItems: 1
+
+  '#interrupt-cells':
+    const: 2
+
+  interrupt-controller: true
+
+patternProperties:
+  "rtc@[0-9a-f]+$":
+    type: object
+    $ref: "../rtc/qcom-pm8xxx-rtc.yaml"
+
+required:
+  - compatible
+  - '#address-cells'
+  - '#size-cells'
+  - interrupts
+  - '#interrupt-cells'
+  - interrupt-controller
+
+additionalProperties: false
+...