OSDN Git Service

dt-bindings: rtc: ds1307: Convert to json-schema
authorThierry Reding <treding@nvidia.com>
Fri, 17 Jun 2022 11:44:19 +0000 (13:44 +0200)
committerRob Herring <robh@kernel.org>
Thu, 21 Jul 2022 21:34:02 +0000 (15:34 -0600)
Convert the DS1307 (and compatible) RTC bindings from the free-form text
format to json-schema.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220617114420.1398259-1-thierry.reding@gmail.com
Documentation/devicetree/bindings/rtc/rtc-ds1307.txt [deleted file]
Documentation/devicetree/bindings/rtc/rtc-ds1307.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/rtc/rtc-ds1307.txt b/Documentation/devicetree/bindings/rtc/rtc-ds1307.txt
deleted file mode 100644 (file)
index 36f610b..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-Dallas DS1307 and compatible RTC
-
-Required properties:
-- compatible: should be one of:
-       "dallas,ds1307",
-       "dallas,ds1308",
-       "dallas,ds1337",
-       "dallas,ds1338",
-       "dallas,ds1339",
-       "dallas,ds1388",
-       "dallas,ds1340",
-       "dallas,ds1341",
-       "maxim,ds3231",
-       "st,m41t0",
-       "st,m41t00",
-       "st,m41t11",
-       "microchip,mcp7940x",
-       "microchip,mcp7941x",
-       "pericom,pt7c4338",
-       "epson,rx8025",
-       "isil,isl12057"
-       "epson,rx8130"
-- reg: I2C bus address of the device
-
-Optional properties:
-- interrupts: rtc alarm interrupt.
-- clock-output-names: From common clock binding to override the default output
-                      clock name
-- wakeup-source: Enables wake up of host system on alarm
-- trickle-resistor-ohms : ds1339, ds1340 and ds 1388 only
-       Selected resistor for trickle charger
-       Possible values are 250, 2000, 4000
-       Should be given if trickle charger should be enabled
-- aux-voltage-chargeable: ds1339, ds1340, ds1388 and rx8130 only
-       Tells whether the battery/supercap of the RTC (if any) is
-       chargeable or not.
-       Possible values are 0 (not chargeable), 1 (chargeable)
-
-Deprecated properties:
-- trickle-diode-disable : ds1339, ds1340 and ds1388 only
-       Do not use internal trickle charger diode
-       Should be given if internal trickle charger diode should be disabled
-       (superseded by aux-voltage-chargeable)
-
-Example:
-       ds1339: rtc@68 {
-               compatible = "dallas,ds1339";
-               reg = <0x68>;
-               interrupt-parent = <&gpio4>;
-               interrupts = <20 0>;
-               trickle-resistor-ohms = <250>;
-       };
diff --git a/Documentation/devicetree/bindings/rtc/rtc-ds1307.yaml b/Documentation/devicetree/bindings/rtc/rtc-ds1307.yaml
new file mode 100644 (file)
index 0000000..98d10e6
--- /dev/null
@@ -0,0 +1,102 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/rtc/rtc-ds1307.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Dallas DS1307 and compatible RTC
+
+maintainers:
+  - Alexandre Belloni <alexandre.belloni@bootlin.com>
+
+properties:
+  compatible:
+    oneOf:
+      - enum:
+          - dallas,ds1307
+          - dallas,ds1308
+          - dallas,ds1337
+          - dallas,ds1338
+          - dallas,ds1339
+          - dallas,ds1388
+          - dallas,ds1340
+          - dallas,ds1341
+          - maxim,ds3231
+          - st,m41t0
+          - st,m41t00
+          - st,m41t11
+          - microchip,mcp7940x
+          - microchip,mcp7941x
+          - pericom,pt7c4338
+          - epson,rx8025
+          - isil,isl12057
+          - epson,rx8130
+
+      - items:
+          - enum:
+              - st,m41t00
+          - const: dallas,ds1338
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    minItems: 1
+    maxItems: 2
+
+  interrupt-names:
+    maxItems: 2
+
+  "#clock-cells":
+    const: 1
+
+  clock-output-names:
+    description: From common clock binding to override the default output clock name.
+
+  wakeup-source:
+    description: Enables wake up of host system on alarm.
+
+  vcc-supply: true
+
+allOf:
+  - $ref: rtc.yaml
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - dallas,ds1339
+              - dallas,ds1340
+              - dallas,ds1388
+    then:
+      properties:
+        trickle-resistor-ohms:
+          description: Selected resistor for trickle charger. Should be specified if trickle
+            charger should be enabled.
+          enum: [ 250, 2000, 4000 ]
+
+        trickle-diode-disable:
+          description: Do not use internal trickle charger diode. Should be given if internal
+            trickle charger diode should be disabled (superseded by aux-voltage-chargeable)
+          deprecated: true
+
+unevaluatedProperties: false
+
+required:
+  - compatible
+  - reg
+
+examples:
+  - |
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      rtc@68 {
+        compatible = "dallas,ds1337";
+        reg = <0x68>;
+        interrupt-parent = <&gpio4>;
+        interrupts = <20 0>;
+        trickle-resistor-ohms = <250>;
+      };
+    };