dt-bindings: rtc: nxp,lpc1788-rtc: convert to dtschema
authorJavier Carrasco <javier.carrasco.cruz@gmail.com>
Tue, 26 Mar 2024 13:03:26 +0000 (14:03 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Fri, 29 Mar 2024 14:57:55 +0000 (15:57 +0100)
Convert existing binding to dtschema to support validation.

This is a direct conversion with no additions.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20240326-rtc-yaml-v3-4-caa430ecace7@gmail.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Documentation/devicetree/bindings/rtc/nxp,lpc1788-rtc.txt [deleted file]
Documentation/devicetree/bindings/rtc/nxp,lpc1788-rtc.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/rtc/nxp,lpc1788-rtc.txt b/Documentation/devicetree/bindings/rtc/nxp,lpc1788-rtc.txt
deleted file mode 100644 (file)
index 3c97bd1..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-NXP LPC1788 real-time clock
-
-The LPC1788 RTC provides calendar and clock functionality
-together with periodic tick and alarm interrupt support.
-
-Required properties:
-- compatible   : must contain "nxp,lpc1788-rtc"
-- reg          : Specifies base physical address and size of the registers.
-- interrupts   : A single interrupt specifier.
-- clocks       : Must contain clock specifiers for rtc and register clock
-- clock-names  : Must contain "rtc" and "reg"
-  See ../clocks/clock-bindings.txt for details.
-
-Example:
-rtc: rtc@40046000 {
-       compatible = "nxp,lpc1788-rtc";
-       reg = <0x40046000 0x1000>;
-       interrupts = <47>;
-       clocks = <&creg_clk 0>, <&ccu1 CLK_CPU_BUS>;
-       clock-names = "rtc", "reg";
-};
diff --git a/Documentation/devicetree/bindings/rtc/nxp,lpc1788-rtc.yaml b/Documentation/devicetree/bindings/rtc/nxp,lpc1788-rtc.yaml
new file mode 100644 (file)
index 0000000..e88b847
--- /dev/null
@@ -0,0 +1,58 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/rtc/nxp,lpc1788-rtc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NXP LPC1788 real-time clock
+
+description:
+  The LPC1788 RTC provides calendar and clock functionality
+  together with periodic tick and alarm interrupt support.
+
+maintainers:
+  - Javier Carrasco <javier.carrasco.cruz@gmail.com>
+
+allOf:
+  - $ref: rtc.yaml#
+
+properties:
+  compatible:
+    const: nxp,lpc1788-rtc
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: RTC clock
+      - description: Register clock
+
+  clock-names:
+    items:
+      - const: rtc
+      - const: reg
+
+  interrupts:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - clock-names
+  - interrupts
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/lpc18xx-ccu.h>
+
+    rtc@40046000 {
+        compatible = "nxp,lpc1788-rtc";
+        reg = <0x40046000 0x1000>;
+        clocks = <&creg_clk 0>, <&ccu1 CLK_CPU_BUS>;
+        clock-names = "rtc", "reg";
+        interrupts = <47>;
+    };