xref: /linux/Documentation/devicetree/bindings/rtc/allwinner,sun6i-a31-rtc.yaml (revision 5c7404bb30bc5877e578336c58998a999c410622)
15a079759SMaxime Ripard# SPDX-License-Identifier: GPL-2.0
25a079759SMaxime Ripard%YAML 1.2
35a079759SMaxime Ripard---
45a079759SMaxime Ripard$id: http://devicetree.org/schemas/rtc/allwinner,sun6i-a31-rtc.yaml#
55a079759SMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml#
65a079759SMaxime Ripard
75a079759SMaxime Ripardtitle: Allwinner A31 RTC Device Tree Bindings
85a079759SMaxime Ripard
95a079759SMaxime Ripardmaintainers:
105a079759SMaxime Ripard  - Chen-Yu Tsai <wens@csie.org>
11*5c7404bbSMaxime Ripard  - Maxime Ripard <mripard@kernel.org>
125a079759SMaxime Ripard
135a079759SMaxime Ripardproperties:
145a079759SMaxime Ripard  "#clock-cells":
155a079759SMaxime Ripard    const: 1
165a079759SMaxime Ripard
175a079759SMaxime Ripard  compatible:
185a079759SMaxime Ripard    oneOf:
195a079759SMaxime Ripard      - const: allwinner,sun6i-a31-rtc
205a079759SMaxime Ripard      - const: allwinner,sun8i-a23-rtc
215a079759SMaxime Ripard      - const: allwinner,sun8i-h3-rtc
225a079759SMaxime Ripard      - const: allwinner,sun8i-r40-rtc
235a079759SMaxime Ripard      - const: allwinner,sun8i-v3-rtc
245a079759SMaxime Ripard      - const: allwinner,sun50i-h5-rtc
255a079759SMaxime Ripard      - items:
265a079759SMaxime Ripard          - const: allwinner,sun50i-a64-rtc
275a079759SMaxime Ripard          - const: allwinner,sun8i-h3-rtc
28903e259fSOndrej Jirman      - const: allwinner,sun50i-h6-rtc
295a079759SMaxime Ripard
305a079759SMaxime Ripard  reg:
315a079759SMaxime Ripard    maxItems: 1
325a079759SMaxime Ripard
335a079759SMaxime Ripard  interrupts:
34f5a33649SMaxime Ripard    minItems: 1
35f5a33649SMaxime Ripard    maxItems: 2
365a079759SMaxime Ripard    items:
375a079759SMaxime Ripard      - description: RTC Alarm 0
385a079759SMaxime Ripard      - description: RTC Alarm 1
395a079759SMaxime Ripard
405a079759SMaxime Ripard  clocks:
415a079759SMaxime Ripard    maxItems: 1
425a079759SMaxime Ripard
435a079759SMaxime Ripard  clock-output-names:
445a079759SMaxime Ripard    minItems: 1
455a079759SMaxime Ripard    maxItems: 3
465a079759SMaxime Ripard    description:
475a079759SMaxime Ripard      The RTC provides up to three clocks
485a079759SMaxime Ripard        - the Low Frequency Oscillator or LOSC, at index 0,
495a079759SMaxime Ripard        - the Low Frequency Oscillator External output (X32KFOUT in
505a079759SMaxime Ripard          the datasheet), at index 1,
515a079759SMaxime Ripard        - the Internal Oscillator, at index 2.
525a079759SMaxime Ripard
535a079759SMaxime RipardallOf:
545a079759SMaxime Ripard  - $ref: "rtc.yaml#"
555a079759SMaxime Ripard  - if:
565a079759SMaxime Ripard      properties:
575a079759SMaxime Ripard        compatible:
585a079759SMaxime Ripard          contains:
595a079759SMaxime Ripard            const: allwinner,sun6i-a31-rtc
605a079759SMaxime Ripard
615a079759SMaxime Ripard    then:
625a079759SMaxime Ripard      properties:
635a079759SMaxime Ripard        clock-output-names:
645a079759SMaxime Ripard          minItems: 1
655a079759SMaxime Ripard          maxItems: 1
665a079759SMaxime Ripard
675a079759SMaxime Ripard  - if:
685a079759SMaxime Ripard      properties:
695a079759SMaxime Ripard        compatible:
705a079759SMaxime Ripard          contains:
715a079759SMaxime Ripard            enum:
725a079759SMaxime Ripard              - allwinner,sun8i-a23-rtc
73f5a33649SMaxime Ripard              - allwinner,sun8i-r40-rtc
745a079759SMaxime Ripard              - allwinner,sun8i-v3-rtc
755a079759SMaxime Ripard
765a079759SMaxime Ripard    then:
775a079759SMaxime Ripard      properties:
785a079759SMaxime Ripard        clock-output-names:
795a079759SMaxime Ripard          minItems: 2
805a079759SMaxime Ripard          maxItems: 2
815a079759SMaxime Ripard
825a079759SMaxime Ripard  - if:
835a079759SMaxime Ripard      properties:
845a079759SMaxime Ripard        compatible:
855a079759SMaxime Ripard          contains:
865a079759SMaxime Ripard            enum:
875a079759SMaxime Ripard              - allwinner,sun8i-h3-rtc
885a079759SMaxime Ripard              - allwinner,sun50i-h5-rtc
895a079759SMaxime Ripard
905a079759SMaxime Ripard    then:
915a079759SMaxime Ripard      properties:
925a079759SMaxime Ripard        clock-output-names:
935a079759SMaxime Ripard          minItems: 3
945a079759SMaxime Ripard          maxItems: 3
955a079759SMaxime Ripard
96f5a33649SMaxime Ripard  - if:
97f5a33649SMaxime Ripard      properties:
98f5a33649SMaxime Ripard        compatible:
99f5a33649SMaxime Ripard          contains:
100903e259fSOndrej Jirman            const: allwinner,sun50i-h6-rtc
101903e259fSOndrej Jirman
102903e259fSOndrej Jirman    then:
103903e259fSOndrej Jirman      properties:
104903e259fSOndrej Jirman        clock-output-names:
105903e259fSOndrej Jirman          minItems: 3
106903e259fSOndrej Jirman          maxItems: 3
107903e259fSOndrej Jirman
108903e259fSOndrej Jirman  - if:
109903e259fSOndrej Jirman      properties:
110903e259fSOndrej Jirman        compatible:
111903e259fSOndrej Jirman          contains:
112f5a33649SMaxime Ripard            const: allwinner,sun8i-r40-rtc
113f5a33649SMaxime Ripard
114f5a33649SMaxime Ripard    then:
115f5a33649SMaxime Ripard      properties:
116f5a33649SMaxime Ripard        interrupts:
117f5a33649SMaxime Ripard          minItems: 1
118f5a33649SMaxime Ripard          maxItems: 1
119f5a33649SMaxime Ripard
120f5a33649SMaxime Ripard    else:
121f5a33649SMaxime Ripard      properties:
122f5a33649SMaxime Ripard        interrupts:
123f5a33649SMaxime Ripard          minItems: 2
124f5a33649SMaxime Ripard          maxItems: 2
125f5a33649SMaxime Ripard
1265a079759SMaxime Ripardrequired:
1275a079759SMaxime Ripard  - "#clock-cells"
1285a079759SMaxime Ripard  - compatible
1295a079759SMaxime Ripard  - reg
1305a079759SMaxime Ripard  - interrupts
1315a079759SMaxime Ripard  - clocks
1325a079759SMaxime Ripard  - clock-output-names
1335a079759SMaxime Ripard
1345a079759SMaxime RipardadditionalProperties: false
1355a079759SMaxime Ripard
1365a079759SMaxime Ripardexamples:
1375a079759SMaxime Ripard  - |
1385a079759SMaxime Ripard    rtc: rtc@1f00000 {
1395a079759SMaxime Ripard        compatible = "allwinner,sun6i-a31-rtc";
1405a079759SMaxime Ripard        reg = <0x01f00000 0x400>;
1415a079759SMaxime Ripard        interrupts = <0 40 4>, <0 41 4>;
1425a079759SMaxime Ripard        clock-output-names = "osc32k";
1435a079759SMaxime Ripard        clocks = <&ext_osc32k>;
1445a079759SMaxime Ripard        #clock-cells = <1>;
1455a079759SMaxime Ripard    };
1465a079759SMaxime Ripard
1475a079759SMaxime Ripard...
148