Skip to content

Commit 2830be0

Browse files
Farsin-Nasar-Microchipnashif
authored andcommitted
dts: arm: microchip: add RTC node and binding for G1 IP
Add the device tree node and the binding file for microchip RTC G1 IP. Signed-off-by: farsin NASAR V A <[email protected]>
1 parent bde681d commit 2830be0

File tree

2 files changed

+101
-0
lines changed

2 files changed

+101
-0
lines changed

dts/arm/microchip/sam/sam_d5x_e5x/common/samd5xe5x.dtsi

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,19 @@
9191
reg = <0x40000c00 0x400>;
9292
};
9393

94+
rtc: rtc@40002400 {
95+
compatible = "microchip,rtc-g1";
96+
reg = <0x40002400 0x400>;
97+
interrupts = <11 0>;
98+
clocks = <&mclkperiph CLOCK_MCHP_MCLKPERIPH_ID_APBA_RTC>,
99+
<&rtcclock CLOCK_MCHP_RTC_ID>;
100+
clock-names = "mclk", "rtcclk";
101+
prescaler = <1>;
102+
alarms-count = <2>;
103+
cal-constant = <1048576>;
104+
status = "disabled";
105+
};
106+
94107
sercom0: sercom@40003000 {
95108
compatible = "microchip,sercom-g1";
96109
status = "disabled";
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
# Copyright(c) 2025 Microchip Technology Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
title: Microchip G1 RTC driver
5+
6+
description: |
7+
Microchip RTC driver.
8+
9+
This driver configures the RTC peripheral in Microchip
10+
microcontrollers for clock and interrupts.
11+
12+
Group g1 RTC driver supports following hardware peripherals:
13+
- module name="RTC" id="U2250" version="2.1.0"
14+
15+
The node has the 'rtc' node label set in your SoC's devicetree, so you can
16+
modify it like this:
17+
18+
&rtc {
19+
/* your modifications go here */
20+
};
21+
22+
Example:
23+
Correction in ppm = (FREQCORR.VALUE * 1e6 ppm) / (8192 * 128)
24+
25+
&rtc {
26+
cal-constant = <1048576>; /* 8192 * 128 */
27+
};
28+
29+
compatible: "microchip,rtc-g1"
30+
31+
include:
32+
- name: rtc.yaml
33+
- name: pinctrl-device.yaml
34+
35+
properties:
36+
reg:
37+
required: true
38+
description: |
39+
Register base address and size for the RTC peripheral.
40+
41+
clocks:
42+
required: true
43+
description: |
44+
Clock phandles used to drive the RTC.
45+
46+
clock-names:
47+
required: true
48+
description: |
49+
Clock name corresponding to the `clocks` entry.
50+
51+
interrupts:
52+
required: true
53+
description: |
54+
Interrupt specifier for the RTC peripheral.
55+
56+
prescaler:
57+
type: int
58+
enum:
59+
- 1
60+
- 2
61+
- 4
62+
- 8
63+
- 16
64+
- 32
65+
- 64
66+
- 128
67+
- 256
68+
- 512
69+
- 1024
70+
description: |
71+
RTC frequency equals clock-frequency divided by the prescaler value
72+
73+
alarms-count:
74+
type: int
75+
default: 0
76+
description: |
77+
Number of alarms supported by RTC device.
78+
79+
The number of alarms defaults to 0, which indicates that the RTC has
80+
no alarms.
81+
82+
cal-constant:
83+
type: int
84+
description: |
85+
Define the constant used to calculate the calibration.
86+
87+
More information can be found in the datasheet of each SoC series at
88+
RTC Frequency Correction topic.

0 commit comments

Comments
 (0)