Skip to content

Commit 271d893

Browse files
committed
Merge tag 'rtc-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux
Pull RTC updates from Alexandre Belloni: "A few drivers got some nice cleanups and a new driver are making the bulk of the changes. Subsystem: - allow rtc_read_alarm without read_alarm callback New driver: - NXP BBNSM module RTC Drivers: - use IRQ flags from fwnode when available - abx80x: nvmem support - brcmstb-waketimer: add non-wake alarm support - ingenic: provide CLK32K clock - isl12022: cleanups - moxart: switch to using gpiod API - pcf85363: allow setting quartz load - pm8xxx: cleanups and support for setting time - rv3028, rv3032: add ACPI support" * tag 'rtc-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (64 commits) rtc: pm8xxx: add support for nvmem offset dt-bindings: rtc: qcom-pm8xxx: add nvmem-cell offset rtc: abx80x: Add nvmem support rtc: rx6110: Remove unused of_gpio,h rtc: efi: Avoid spamming the log on RTC read failure rtc: isl12022: sort header inclusion alphabetically rtc: isl12022: Join string literals back rtc: isl12022: Drop unneeded OF guards and of_match_ptr() rtc: isl12022: Explicitly use __le16 type for ISL12022_REG_TEMP_L rtc: isl12022: Get rid of unneeded private struct isl12022 rtc: pcf85363: add support for the quartz-load-femtofarads property dt-bindings: rtc: nxp,pcf8563: move pcf85263/pcf85363 to a dedicated binding rtc: allow rtc_read_alarm without read_alarm callback rtc: rv3032: add ACPI support rtc: rv3028: add ACPI support rtc: bbnsm: Add the bbnsm rtc support rtc: jz4740: Register clock provider for the CLK32K pin rtc: jz4740: Use dev_err_probe() rtc: jz4740: Use readl_poll_timeout dt-bindings: rtc: Add #clock-cells property ...
2 parents 2eb29d5 + 3ca0495 commit 271d893

40 files changed

+1228
-531
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/rtc/amlogic,meson-vrtc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Amlogic Virtual RTC (VRTC)
8+
9+
maintainers:
10+
- Neil Armstrong <[email protected]>
11+
12+
description: |
13+
This is a Linux interface to an RTC managed by firmware, hence it's
14+
virtual from a Linux perspective. The interface is 1 register where
15+
an alarm time (in seconds) is to be written.
16+
The alarm register is a simple scratch register shared between the
17+
application processors (AP) and the secure co-processor (SCP.) When
18+
the AP suspends, the SCP will use the value of this register to
19+
program an always-on timer before going sleep. When the timer expires,
20+
the SCP will wake up and will then wake the AP.
21+
22+
allOf:
23+
- $ref: rtc.yaml#
24+
25+
properties:
26+
compatible:
27+
enum:
28+
- amlogic,meson-vrtc
29+
30+
reg:
31+
maxItems: 1
32+
33+
required:
34+
- compatible
35+
- reg
36+
37+
additionalProperties: false
38+
39+
examples:
40+
- |
41+
rtc@a8 {
42+
compatible = "amlogic,meson-vrtc";
43+
reg = <0x000a8 0x4>;
44+
};

Documentation/devicetree/bindings/rtc/brcm,brcmstb-waketimer.yaml

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ maintainers:
1111

1212
description:
1313
The Broadcom STB wake-up timer provides a 27Mhz resolution timer, with the
14-
ability to wake up the system from low-power suspend/standby modes.
14+
ability to wake up the system from low-power suspend/standby modes and
15+
optionally generate RTC alarm interrupts.
1516

1617
allOf:
1718
- $ref: "rtc.yaml#"
@@ -24,8 +25,14 @@ properties:
2425
maxItems: 1
2526

2627
interrupts:
27-
description: the TIMER interrupt
28-
maxItems: 1
28+
minItems: 1
29+
items:
30+
- description: the TIMER interrupt
31+
- description: the ALARM interrupt
32+
description:
33+
The TIMER interrupt wakes the system from low-power suspend/standby modes.
34+
An ALARM interrupt may be specified to interrupt the CPU when an RTC alarm
35+
is enabled.
2936

3037
clocks:
3138
description: clock reference in the 27MHz domain
@@ -35,10 +42,10 @@ additionalProperties: false
3542

3643
examples:
3744
- |
38-
rtc@f0411580 {
45+
rtc@f041a080 {
3946
compatible = "brcm,brcmstb-waketimer";
40-
reg = <0xf0411580 0x14>;
41-
interrupts = <0x3>;
42-
interrupt-parent = <&aon_pm_l2_intc>;
47+
reg = <0xf041a080 0x14>;
48+
interrupts-extended = <&aon_pm_l2_intc 0x04>,
49+
<&upg_aux_aon_intr2_intc 0x08>;
4350
clocks = <&upg_fixed>;
4451
};

Documentation/devicetree/bindings/rtc/ingenic,rtc.yaml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,17 @@ maintainers:
1111

1212
allOf:
1313
- $ref: rtc.yaml#
14+
- if:
15+
not:
16+
properties:
17+
compatible:
18+
contains:
19+
enum:
20+
- ingenic,jz4770-rtc
21+
- ingenic,jz4780-rtc
22+
then:
23+
properties:
24+
"#clock-cells": false
1425

1526
properties:
1627
compatible:
@@ -39,6 +50,9 @@ properties:
3950
clock-names:
4051
const: rtc
4152

53+
"#clock-cells":
54+
const: 0
55+
4256
system-power-controller:
4357
description: |
4458
Indicates that the RTC is responsible for powering OFF
@@ -83,3 +97,18 @@ examples:
8397
clocks = <&cgu JZ4740_CLK_RTC>;
8498
clock-names = "rtc";
8599
};
100+
101+
- |
102+
#include <dt-bindings/clock/ingenic,jz4780-cgu.h>
103+
rtc: rtc@10003000 {
104+
compatible = "ingenic,jz4780-rtc", "ingenic,jz4760-rtc";
105+
reg = <0x10003000 0x4c>;
106+
107+
interrupt-parent = <&intc>;
108+
interrupts = <32>;
109+
110+
clocks = <&cgu JZ4780_CLK_RTCLK>;
111+
clock-names = "rtc";
112+
113+
#clock-cells = <0>;
114+
};
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/rtc/microcrystal,rv3028.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Microchip RV-3028 RTC
8+
9+
allOf:
10+
- $ref: rtc.yaml#
11+
12+
maintainers:
13+
- Alexandre Belloni <[email protected]>
14+
15+
properties:
16+
compatible:
17+
const: microcrystal,rv3028
18+
19+
reg:
20+
maxItems: 1
21+
22+
interrupts:
23+
maxItems: 1
24+
25+
trickle-resistor-ohms:
26+
enum:
27+
- 3000
28+
- 5000
29+
- 9000
30+
- 15000
31+
32+
required:
33+
- compatible
34+
- reg
35+
36+
unevaluatedProperties: false
37+
38+
examples:
39+
- |
40+
#include <dt-bindings/interrupt-controller/irq.h>
41+
i2c {
42+
#address-cells = <1>;
43+
#size-cells = <0>;
44+
45+
rtc@51 {
46+
compatible = "microcrystal,rv3028";
47+
reg = <0x51>;
48+
pinctrl-0 = <&rtc_nint_pins>;
49+
interrupts-extended = <&gpio1 16 IRQ_TYPE_LEVEL_HIGH>;
50+
trickle-resistor-ohms = <3000>;
51+
};
52+
};
53+
54+
...

Documentation/devicetree/bindings/rtc/moxa,moxart-rtc.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@ MOXA ART real-time clock
33
Required properties:
44

55
- compatible : Should be "moxa,moxart-rtc"
6-
- gpio-rtc-sclk : RTC sclk gpio, with zero flags
7-
- gpio-rtc-data : RTC data gpio, with zero flags
8-
- gpio-rtc-reset : RTC reset gpio, with zero flags
6+
- rtc-sclk-gpios : RTC sclk gpio, with zero flags
7+
- rtc-data-gpios : RTC data gpio, with zero flags
8+
- rtc-reset-gpios : RTC reset gpio, with zero flags
99

1010
Example:
1111

1212
rtc: rtc {
1313
compatible = "moxa,moxart-rtc";
14-
gpio-rtc-sclk = <&gpio 5 0>;
15-
gpio-rtc-data = <&gpio 6 0>;
16-
gpio-rtc-reset = <&gpio 7 0>;
14+
rtc-sclk-gpios = <&gpio 5 0>;
15+
rtc-data-gpios = <&gpio 6 0>;
16+
rtc-reset-gpios = <&gpio 7 0>;
1717
};

Documentation/devicetree/bindings/rtc/nxp,pcf2127.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@ maintainers:
1414

1515
properties:
1616
compatible:
17-
const: nxp,pcf2127
17+
enum:
18+
- nxp,pca2129
19+
- nxp,pcf2127
20+
- nxp,pcf2129
1821

1922
reg:
2023
maxItems: 1
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/rtc/nxp,pcf85363.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Philips PCF85263/PCF85363 Real Time Clock
8+
9+
maintainers:
10+
- Alexandre Belloni <[email protected]>
11+
12+
allOf:
13+
- $ref: rtc.yaml#
14+
15+
properties:
16+
compatible:
17+
enum:
18+
- nxp,pcf85263
19+
- nxp,pcf85363
20+
21+
reg:
22+
maxItems: 1
23+
24+
"#clock-cells":
25+
const: 0
26+
27+
clock-output-names:
28+
maxItems: 1
29+
30+
interrupts:
31+
maxItems: 1
32+
33+
quartz-load-femtofarads:
34+
description:
35+
The capacitive load of the quartz(x-tal).
36+
enum: [6000, 7000, 12500]
37+
default: 7000
38+
39+
start-year: true
40+
wakeup-source: true
41+
42+
required:
43+
- compatible
44+
- reg
45+
46+
additionalProperties: false
47+
48+
examples:
49+
- |
50+
i2c {
51+
#address-cells = <1>;
52+
#size-cells = <0>;
53+
54+
rtc@51 {
55+
compatible = "nxp,pcf85363";
56+
reg = <0x51>;
57+
#clock-cells = <0>;
58+
quartz-load-femtofarads = <12500>;
59+
};
60+
};

Documentation/devicetree/bindings/rtc/nxp,pcf8563.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@ properties:
1919
- microcrystal,rv8564
2020
- nxp,pca8565
2121
- nxp,pcf8563
22-
- nxp,pcf85263
23-
- nxp,pcf85363
2422

2523
reg:
2624
maxItems: 1

Documentation/devicetree/bindings/rtc/qcom-pm8xxx-rtc.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,16 @@ properties:
4040
description:
4141
Indicates that the setting of RTC time is allowed by the host CPU.
4242

43+
nvmem-cells:
44+
items:
45+
- description:
46+
four-byte nvmem cell holding a little-endian offset from the Unix
47+
epoch representing the time when the RTC timer was last reset
48+
49+
nvmem-cell-names:
50+
items:
51+
- const: offset
52+
4353
wakeup-source: true
4454

4555
required:
@@ -69,6 +79,8 @@ examples:
6979
compatible = "qcom,pm8921-rtc";
7080
reg = <0x11d>;
7181
interrupts = <0x27 0>;
82+
nvmem-cells = <&rtc_offset>;
83+
nvmem-cell-names = "offset";
7284
};
7385
};
7486
};

Documentation/devicetree/bindings/rtc/rtc-meson-vrtc.txt

Lines changed: 0 additions & 22 deletions
This file was deleted.

0 commit comments

Comments
 (0)