xref: /linux/Documentation/devicetree/bindings/rtc/sophgo,cv1800b-rtc.yaml (revision d2eedaa3909be9102d648a4a0a50ccf64f96c54f)
1*590951f9SRob Herring (Arm)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*590951f9SRob Herring (Arm)%YAML 1.2
3*590951f9SRob Herring (Arm)---
4*590951f9SRob Herring (Arm)$id: http://devicetree.org/schemas/rtc/sophgo,cv1800b-rtc.yaml#
5*590951f9SRob Herring (Arm)$schema: http://devicetree.org/meta-schemas/core.yaml#
6*590951f9SRob Herring (Arm)
7*590951f9SRob Herring (Arm)title: Real Time Clock of the Sophgo CV1800 SoC
8*590951f9SRob Herring (Arm)
9*590951f9SRob Herring (Arm)description:
10*590951f9SRob Herring (Arm)  The RTC (Real Time Clock) is an independently powered module in the chip. It
11*590951f9SRob Herring (Arm)  contains a 32KHz oscillator and a Power-On-Reset (POR) sub-module, which can
12*590951f9SRob Herring (Arm)  be used for time display and scheduled alarm produce. In addition, the
13*590951f9SRob Herring (Arm)  hardware state machine provides triggering and timing control for chip
14*590951f9SRob Herring (Arm)  power-on, power-off and reset.
15*590951f9SRob Herring (Arm)
16*590951f9SRob Herring (Arm)  Furthermore, the 8051 subsystem is located within RTCSYS and is independently
17*590951f9SRob Herring (Arm)  powered. System software can use the 8051 to manage wake conditions and wake
18*590951f9SRob Herring (Arm)  the system while the system is asleep, and communicate with external devices
19*590951f9SRob Herring (Arm)  through peripheral controllers.
20*590951f9SRob Herring (Arm)
21*590951f9SRob Herring (Arm)  Technical Reference Manual available at
22*590951f9SRob Herring (Arm)    https://github.com/sophgo/sophgo-doc/tree/main/SG200X/TRM
23*590951f9SRob Herring (Arm)
24*590951f9SRob Herring (Arm)maintainers:
25*590951f9SRob Herring (Arm)  - sophgo@lists.linux.dev
26*590951f9SRob Herring (Arm)
27*590951f9SRob Herring (Arm)allOf:
28*590951f9SRob Herring (Arm)  - $ref: /schemas/rtc/rtc.yaml#
29*590951f9SRob Herring (Arm)
30*590951f9SRob Herring (Arm)properties:
31*590951f9SRob Herring (Arm)  compatible:
32*590951f9SRob Herring (Arm)    items:
33*590951f9SRob Herring (Arm)      - const: sophgo,cv1800b-rtc
34*590951f9SRob Herring (Arm)      - const: syscon
35*590951f9SRob Herring (Arm)
36*590951f9SRob Herring (Arm)  reg:
37*590951f9SRob Herring (Arm)    maxItems: 1
38*590951f9SRob Herring (Arm)
39*590951f9SRob Herring (Arm)  interrupts:
40*590951f9SRob Herring (Arm)    items:
41*590951f9SRob Herring (Arm)      - description: RTC Alarm
42*590951f9SRob Herring (Arm)      - description: RTC Longpress
43*590951f9SRob Herring (Arm)      - description: VBAT DET
44*590951f9SRob Herring (Arm)
45*590951f9SRob Herring (Arm)  interrupt-names:
46*590951f9SRob Herring (Arm)    items:
47*590951f9SRob Herring (Arm)      - const: alarm
48*590951f9SRob Herring (Arm)      - const: longpress
49*590951f9SRob Herring (Arm)      - const: vbat
50*590951f9SRob Herring (Arm)
51*590951f9SRob Herring (Arm)  clocks:
52*590951f9SRob Herring (Arm)    items:
53*590951f9SRob Herring (Arm)      - description: RTC clock source
54*590951f9SRob Herring (Arm)      - description: DW8051 MCU clock source
55*590951f9SRob Herring (Arm)
56*590951f9SRob Herring (Arm)  clock-names:
57*590951f9SRob Herring (Arm)    items:
58*590951f9SRob Herring (Arm)      - const: rtc
59*590951f9SRob Herring (Arm)      - const: mcu
60*590951f9SRob Herring (Arm)
61*590951f9SRob Herring (Arm)required:
62*590951f9SRob Herring (Arm)  - compatible
63*590951f9SRob Herring (Arm)  - reg
64*590951f9SRob Herring (Arm)  - interrupts
65*590951f9SRob Herring (Arm)  - interrupt-names
66*590951f9SRob Herring (Arm)  - clocks
67*590951f9SRob Herring (Arm)  - clock-names
68*590951f9SRob Herring (Arm)
69*590951f9SRob Herring (Arm)unevaluatedProperties: false
70*590951f9SRob Herring (Arm)
71*590951f9SRob Herring (Arm)examples:
72*590951f9SRob Herring (Arm)  - |
73*590951f9SRob Herring (Arm)    #include <dt-bindings/clock/sophgo,cv1800.h>
74*590951f9SRob Herring (Arm)    #include <dt-bindings/interrupt-controller/irq.h>
75*590951f9SRob Herring (Arm)
76*590951f9SRob Herring (Arm)    rtc@5025000 {
77*590951f9SRob Herring (Arm)        compatible = "sophgo,cv1800b-rtc", "syscon";
78*590951f9SRob Herring (Arm)        reg = <0x5025000 0x2000>;
79*590951f9SRob Herring (Arm)        interrupts = <17 IRQ_TYPE_LEVEL_HIGH>,
80*590951f9SRob Herring (Arm)                     <18 IRQ_TYPE_LEVEL_HIGH>,
81*590951f9SRob Herring (Arm)                     <19 IRQ_TYPE_LEVEL_HIGH>;
82*590951f9SRob Herring (Arm)        interrupt-names = "alarm", "longpress", "vbat";
83*590951f9SRob Herring (Arm)        clocks = <&clk CLK_RTC_25M>,
84*590951f9SRob Herring (Arm)                 <&clk CLK_SRC_RTC_SYS_0>;
85*590951f9SRob Herring (Arm)        clock-names = "rtc", "mcu";
86*590951f9SRob Herring (Arm)    };
87