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