Skip to contentSkip to conversation

Add a driver for Epson RX8111 RTC

PATCH Superseded Waqar Hameed 2 participants 5 messages Aug 4, 2023 – Aug 7, 2023

Subsystems (2)

v1 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

cover Add a driver for Epson RX8111 RTC

In this patch series we add a basic driver for Epson RX8111 RTC with support for only reading/writing the time and the ioctls RTC_VL_READ and RTC_VL_CLR.

Datasheet: https://support.epson.biz/td/api/doc_check.php?dl=app_RX8111CE&lang=en

Waqar Hameed (2):
dt-bindings: rtc: Add Epson RX8111
rtc: Add driver for Epson RX8111

 .../devicetree/bindings/rtc/epson,rx8111.yaml |  41 ++
 drivers/rtc/Kconfig                           |  10 +
 drivers/rtc/Makefile                          |   1 +
 drivers/rtc/rtc-rx8111.c                      | 411 ++++++++++++++++++
 4 files changed, 463 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/rtc/epson,rx8111.yaml
 create mode 100644 drivers/rtc/rtc-rx8111.c

base-commit: ec351c8f2e6211054e51e661589cddd1fe856425

Signature · 1 line
2.30.2
#1 lore raw

PATCH 1/2 dt-bindings: rtc: Add Epson RX8111

Epson RX8111 is an RTC with timestamp functionality. Add devicetree bindings requiring the compatible string and I2C slave address (reg).

---
 .../devicetree/bindings/rtc/epson,rx8111.yaml | 41 +++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/rtc/epson,rx8111.yaml
Documentation/devicetree/bindings/rtc/epson,rx8111.yaml new file +41 -0
new file mode 100644
index 000000000000..e6f077a32582
@@ -0,0 +1,41 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/rtc/epson,rx8111.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Epson RX8111 Real-Time Clock
+
+maintainers:
+  - Waqar Hameed <[email protected]>
+
+description: |
+  RTC with timestamp functionality.
+
+  https://support.epson.biz/td/api/doc_check.php?dl=app_RX8111CE&lang=en
+
+properties:
+  compatible:
+    const: epson,rx8111
+
+  reg:
+    const: 0x32
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        rtc@32 {
+            compatible = "epson,rx8111";
+            reg = <0x32>;
+        };
+    };
+...
Signature · 1 line
2.30.2
#2 lore raw

Re: [PATCH 1/2] dt-bindings: rtc: Add Epson RX8111

Quoted 13 lines · Waqar Hameed

Epson RX8111 is an RTC with timestamp functionality. Add devicetree bindings requiring the compatible string and I2C slave address (reg).

Documentation/devicetree/bindings/rtc/epson,rx8111.yaml new file +9 -0
+
+maintainers:
+  - Waqar Hameed <[email protected]>
+
+description: |
+  RTC with timestamp functionality.
+
+  https://support.epson.biz/td/api/doc_check.php?dl=app_RX8111CE&lang=en
+

Documentation/devicetree/bindings/rtc/epson,rx8111.yaml line 26

Quoted 10 lines
Documentation/devicetree/bindings/rtc/epson,rx8111.yaml new file +10 -0
+properties:
+  compatible:
+    const: epson,rx8111
+
+  reg:
+    const: 0x32
+
+required:
+  - compatible
+  - reg

Just add it to trivial-rtc.yaml. You miss here more things than trivial is providing, so...

Best regards,
Krzysztof

#3 lore raw

Re: [PATCH 1/2] dt-bindings: rtc: Add Epson RX8111

Quoted 19 lines · On Sat, Aug 05, 2023 at 22:28 +0200 Krzysztof Kozlowski…
Quoted 18 lines · Waqar Hameed

Epson RX8111 is an RTC with timestamp functionality. Add devicetree bindings requiring the compatible string and I2C slave address (reg).

Documentation/devicetree/bindings/rtc/epson,rx8111.yaml new file +14 -0
+
+maintainers:
+  - Waqar Hameed <[email protected]>
+
+description: |
+  RTC with timestamp functionality.
+
+  https://support.epson.biz/td/api/doc_check.php?dl=app_RX8111CE&lang=en
+
+properties:
+  compatible:
+    const: epson,rx8111
+
+  reg:
Quoted 8 lines

Documentation/devicetree/bindings/rtc/epson,rx8111.yaml line 26

Quoted 5 lines
Documentation/devicetree/bindings/rtc/epson,rx8111.yaml new file +5 -0
+    const: 0x32
+
+required:
+  - compatible
+  - reg

Just add it to trivial-rtc.yaml. You miss here more things than trivial is providing, so...

Oh, I wasn't even aware of that file. I'll add it there instead!

#4 lore raw

PATCH 2/2 rtc: Add driver for Epson RX8111

In reply to Waqar Hameed

Epson RX8111 is an RTC with alarm, timer and timestamp functionality. Add a basic driver with support for only reading/writing time (for now).

---
 drivers/rtc/Kconfig      |  10 +
 drivers/rtc/Makefile     |   1 +
 drivers/rtc/rtc-rx8111.c | 411 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 422 insertions(+)
 create mode 100644 drivers/rtc/rtc-rx8111.c
drivers/rtc/Kconfig +10 -0
index 05f4b2d66290..65e7ea3c2427 100644
@@ -639,6 +639,16 @@ config RTC_DRV_RX8010
 	  This driver can also be built as a module. If so, the module
 	  will be called rtc-rx8010.
 
+config RTC_DRV_RX8111
+	tristate "Epson RX8111"
+	select REGMAP_I2C
+	depends on I2C
+	help
+	  If you say yes here you will get support for the Epson RX8111 RTC.
+
+	  This driver can also be built as a module. If so, the module will be
+	  called rtc-rx8111.
+
 config RTC_DRV_RX8581
 	tristate "Epson RX-8571/RX-8581"
 	select REGMAP_I2C
drivers/rtc/Makefile +1 -0
index fd209883ee2e..c245f39bffc6 100644
@@ -151,6 +151,7 @@ obj-$(CONFIG_RTC_DRV_RX4581)	+= rtc-rx4581.o
 obj-$(CONFIG_RTC_DRV_RX6110)	+= rtc-rx6110.o
 obj-$(CONFIG_RTC_DRV_RX8010)	+= rtc-rx8010.o
 obj-$(CONFIG_RTC_DRV_RX8025)	+= rtc-rx8025.o
+obj-$(CONFIG_RTC_DRV_RX8111)	+= rtc-rx8111.o
 obj-$(CONFIG_RTC_DRV_RX8581)	+= rtc-rx8581.o
 obj-$(CONFIG_RTC_DRV_RZN1)	+= rtc-rzn1.o
 obj-$(CONFIG_RTC_DRV_S35390A)	+= rtc-s35390a.o
drivers/rtc/rtc-rx8111.c new file +411 -0

411 lines not on this page · raw message

Signature · 1 line
2.30.2