Skip to content

Commit b2149f9

Browse files
committed
Merge tag 'rtc-6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux
Pull RTC updates from Alexandre Belloni: "More conversions of DT bindings to yaml. There is one new driver, for the DFRobot SD2405AL and support for important features of the stm32 RTC. Summary: New driver: - DFRobot SD2405AL Drivers: - stm32: add alarm A out and LSCO support - sun6i: disable automatic clock input switching - m48t59: set range" * tag 'rtc-6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: rtc: rc5t619: use proper module tables rtc: m48t59: set range dt-bindings: rtc: microcrystal,rv3028: add #clock-cells property rtc: m48t59: Remove division condition with direct comparison rtc: at91sam9: fix OF node leak in probe() error path rtc: sun6i: disable automatic clock input switching dt-bindings: rtc: Drop non-trivial duplicate compatibles dt-bindings: vendor-prefixes: Add DFRobot. dt-bindings: rtc: Add support for SD2405AL. rtc: Add driver for SD2405AL rtc: s35390a: Drop vendorless compatible string from match table rtc: twl: convert comma to semicolon dt-bindings: rtc: sprd,sc2731-rtc: convert to YAML rtc: stm32: add alarm A out feature rtc: stm32: add Low Speed Clock Output (LSCO) support rtc: stm32: add pinctrl and pinmux interfaces dt-bindings: rtc: stm32: describe pinmux nodes
2 parents aa48655 + 6902862 commit b2149f9

17 files changed

+633
-39
lines changed

Documentation/devicetree/bindings/rtc/microcrystal,rv3028.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ properties:
2222
interrupts:
2323
maxItems: 1
2424

25+
"#clock-cells":
26+
const: 0
27+
2528
trickle-resistor-ohms:
2629
enum:
2730
- 3000
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/rtc/sprd,sc2731-rtc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Spreadtrum SC2731 Real Time Clock
8+
9+
maintainers:
10+
- Orson Zhai <orsonzhai@gmail.com>
11+
- Baolin Wang <baolin.wang7@gmail.com>
12+
- Chunyan Zhang <zhang.lyra@gmail.com>
13+
14+
properties:
15+
compatible:
16+
const: sprd,sc2731-rtc
17+
18+
reg:
19+
maxItems: 1
20+
21+
interrupts:
22+
maxItems: 1
23+
24+
required:
25+
- compatible
26+
- reg
27+
- interrupts
28+
29+
allOf:
30+
- $ref: rtc.yaml#
31+
32+
unevaluatedProperties: false
33+
34+
examples:
35+
- |
36+
#include <dt-bindings/interrupt-controller/irq.h>
37+
38+
pmic {
39+
#address-cells = <1>;
40+
#size-cells = <0>;
41+
42+
rtc@280 {
43+
compatible = "sprd,sc2731-rtc";
44+
reg = <0x280>;
45+
interrupt-parent = <&sc2731_pmic>;
46+
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
47+
};
48+
};
49+
...

Documentation/devicetree/bindings/rtc/sprd,sc27xx-rtc.txt

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

Documentation/devicetree/bindings/rtc/st,stm32-rtc.yaml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,28 @@ properties:
5353
override default rtc_ck parent clock phandle of the new parent clock of rtc_ck
5454
maxItems: 1
5555

56+
patternProperties:
57+
"^rtc-[a-z]+-[0-9]+$":
58+
type: object
59+
$ref: /schemas/pinctrl/pinmux-node.yaml
60+
description: |
61+
Configuration of STM32 RTC pins description. STM32 RTC is able to output
62+
some signals on specific pins:
63+
- LSCO (Low Speed Clock Output) that allow to output LSE clock on a pin.
64+
- Alarm out that allow to send a pulse on a pin when alarm A of the RTC
65+
expires.
66+
additionalProperties: false
67+
properties:
68+
function:
69+
enum:
70+
- lsco
71+
- alarm-a
72+
pins:
73+
enum:
74+
- out1
75+
- out2
76+
- out2_rmp
77+
5678
allOf:
5779
- if:
5880
properties:
@@ -68,6 +90,9 @@ allOf:
6890

6991
clock-names: false
7092

93+
patternProperties:
94+
"^rtc-[a-z]+-[0-9]+$": false
95+
7196
required:
7297
- st,syscfg
7398

@@ -83,6 +108,9 @@ allOf:
83108
minItems: 2
84109
maxItems: 2
85110

111+
patternProperties:
112+
"^rtc-[a-z]+-[0-9]+$": false
113+
86114
required:
87115
- clock-names
88116
- st,syscfg

Documentation/devicetree/bindings/rtc/trivial-rtc.yaml

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,13 @@ properties:
3838
- dallas,ds1672
3939
# Extremely Accurate I²C RTC with Integrated Crystal and SRAM
4040
- dallas,ds3232
41+
# SD2405AL Real-Time Clock
42+
- dfrobot,sd2405al
4143
# EM Microelectronic EM3027 RTC
4244
- emmicro,em3027
4345
# I2C-BUS INTERFACE REAL TIME CLOCK MODULE
4446
- epson,rx8010
4547
# I2C-BUS INTERFACE REAL TIME CLOCK MODULE
46-
- epson,rx8025
4748
- epson,rx8035
4849
# I2C-BUS INTERFACE REAL TIME CLOCK MODULE with Battery Backed RAM
4950
- epson,rx8111
@@ -52,10 +53,6 @@ properties:
5253
- epson,rx8581
5354
# Android Goldfish Real-time Clock
5455
- google,goldfish-rtc
55-
# Intersil ISL1208 Low Power RTC with Battery Backed SRAM
56-
- isil,isl1208
57-
# Intersil ISL1218 Low Power RTC with Battery Backed SRAM
58-
- isil,isl1218
5956
# Mvebu Real-time Clock
6057
- marvell,orion-rtc
6158
# Maxim DS1742/DS1743 Real-time Clock
@@ -68,8 +65,6 @@ properties:
6865
- microcrystal,rv8523
6966
# NXP LPC32xx SoC Real-time Clock
7067
- nxp,lpc3220-rtc
71-
# Real-time Clock Module
72-
- pericom,pt7c4338
7368
# I2C bus SERIAL INTERFACE REAL-TIME CLOCK IC
7469
- ricoh,r2025sd
7570
# I2C bus SERIAL INTERFACE REAL-TIME CLOCK IC

Documentation/devicetree/bindings/vendor-prefixes.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,8 @@ patternProperties:
368368
description: Devantech, Ltd.
369369
"^dfi,.*":
370370
description: DFI Inc.
371+
"^dfrobot,.*":
372+
description: DFRobot Corporation
371373
"^dh,.*":
372374
description: DH electronics GmbH
373375
"^difrnce,.*":

MAINTAINERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6557,6 +6557,12 @@ F: include/net/devlink.h
65576557
F: include/uapi/linux/devlink.h
65586558
F: net/devlink/
65596559

6560+
DFROBOT SD2405AL RTC DRIVER
6561+
M: Tóth János <gomba007@gmail.com>
6562+
L: linux-rtc@vger.kernel.org
6563+
S: Maintained
6564+
F: drivers/rtc/rtc-sd2405al.c
6565+
65606566
DH ELECTRONICS IMX6 DHCOM/DHCOR BOARD SUPPORT
65616567
M: Christoph Niedermaier <cniedermaier@dh-electronics.com>
65626568
L: kernel@dh-electronics.com

drivers/rtc/Kconfig

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -743,6 +743,16 @@ config RTC_DRV_S5M
743743
This driver can also be built as a module. If so, the module
744744
will be called rtc-s5m.
745745

746+
config RTC_DRV_SD2405AL
747+
tristate "DFRobot SD2405AL"
748+
select REGMAP_I2C
749+
help
750+
If you say yes here you will get support for the
751+
DFRobot SD2405AL I2C RTC Module.
752+
753+
This driver can also be built as a module. If so, the module
754+
will be called rtc-sd2405al.
755+
746756
config RTC_DRV_SD3078
747757
tristate "ZXW Shenzhen whwave SD3078"
748758
select REGMAP_I2C
@@ -1934,6 +1944,12 @@ config RTC_DRV_STM32
19341944
tristate "STM32 RTC"
19351945
select REGMAP_MMIO
19361946
depends on ARCH_STM32 || COMPILE_TEST
1947+
depends on OF
1948+
depends on PINCTRL
1949+
select PINMUX
1950+
select PINCONF
1951+
select GENERIC_PINCONF
1952+
depends on COMMON_CLK
19371953
help
19381954
If you say yes here you get support for the STM32 On-Chip
19391955
Real Time Clock.

drivers/rtc/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,7 @@ obj-$(CONFIG_RTC_DRV_S3C) += rtc-s3c.o
163163
obj-$(CONFIG_RTC_DRV_S5M) += rtc-s5m.o
164164
obj-$(CONFIG_RTC_DRV_SA1100) += rtc-sa1100.o
165165
obj-$(CONFIG_RTC_DRV_SC27XX) += rtc-sc27xx.o
166+
obj-$(CONFIG_RTC_DRV_SD2405AL) += rtc-sd2405al.o
166167
obj-$(CONFIG_RTC_DRV_SD3078) += rtc-sd3078.o
167168
obj-$(CONFIG_RTC_DRV_SH) += rtc-sh.o
168169
obj-$(CONFIG_RTC_DRV_SNVS) += rtc-snvs.o

drivers/rtc/rtc-at91sam9.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,7 @@ static int at91_rtc_probe(struct platform_device *pdev)
368368
return ret;
369369

370370
rtc->gpbr = syscon_node_to_regmap(args.np);
371+
of_node_put(args.np);
371372
rtc->gpbr_offset = args.args[0];
372373
if (IS_ERR(rtc->gpbr)) {
373374
dev_err(&pdev->dev, "failed to retrieve gpbr regmap, aborting.\n");

0 commit comments

Comments
 (0)