[PATCH v2 0/3] rtc: rs5c372: add Ricoh R2223x support
From: Heiko Schocher
Date: Tue Aug 25 2026 - 03:20:24 EST
The Ricoh R2223x is an I2C RTC from the same family as the r2025sd and
r2221tl which the rtc-rs5c372 already supports. It shares the R2x2x
control register layout, so only the new type must be added to the driver.
The ricoh R2223x drives a clock output and offers an eco mode that
lowers its current consumption while running from the backup supply.
The trivial-rtc binding does not cover this, so give the device its
own binding in patch 1. Patch 2 adds the R2223x to the rs5c372 rtc
driver, and patch 3 implements the eco-mode setting.
v2 answers the sashiko review of v1 and a local run of the same review
prompts. This resulted in 2 changes:
Patch 2 now handles the new type in rs5c372_ioctl(), where RTC_VL_READ
read CTRL2 bit 4 as XSTP although the R2x2x parts have PON there and
RTC_VL_CLR did nothing at all, and in the two offset helpers, where the
R2223x fell back to the coarse trim resolution.
Patch 3 now applies the device tree setting in both directions. V1 only
set the eco bit before, so a board that dropped the property kept running
in eco mode, because CTRL2 is backed by the backup supply.
Not touched sashiko reviews (some from local run):
- #clock-cells stays out of the required list. Requiring it would
reject every node that does not use the clock output; the other
discrete I2C RTC bindings with a clock output keep it optional too.
Also the clock output can be disabled per hardware pin CLKC. So
#clock-cells is optional.
https://sashiko.dev/#/patchset/20260824110452.4038870-1-hs@xxxxxxxxxxxx?part=1
- additionalProperties: false together with $ref: rtc.yaml# means the
properties from rtc.yaml are not allowed here unless they are listed.
Only start-year is, the others can be added once a board needs them.
microcrystal,rv3032.yaml is built the same way.
- ricoh,eco-mode is a vendor boolean. Whether the RTC may run in eco
mode depends on the backup cell the board is fitted with, so it
describes the board and not a runtime policy.
Changes in v2:
- Added Reviewed-by from Conor, no code change in patch 1
- Fixed the sashiko review of v1: handle the new type in
rs5c372_ioctl(), rs5c372_read_offset() and rs5c372_set_offset()
https://sashiko.dev/#/patchset/20260824110452.4038870-1-hs@xxxxxxxxxxxx?part=2
- Added sashiko review for patch 3 in this patch, as it fits better here
https://sashiko.dev/#/patchset/20260824110452.4038870-1-hs@xxxxxxxxxxxx?part=3
- Fixed results of a local run of the sashiko review prompts: apply the
device tree setting in both directions. v1 only set the eco bit, so
the mode stayed on when a board dropped the property.
- Leave rs5c372_probe() through goto exit like its other error paths,
instead of returning directly.
Heiko Schocher (3):
dt-bindings: rtc: add ricoh,r2223x binding
rtc: rs5c372: add support for Ricoh R2223x
rtc: rs5c372: support eco mode on R2223x
.../devicetree/bindings/rtc/ricoh,r2223x.yaml | 58 +++++++++++++++++++
drivers/rtc/rtc-rs5c372.c | 52 ++++++++++++++++-
2 files changed, 107 insertions(+), 3 deletions(-)
create mode 100644 Documentation/devicetree/bindings/rtc/ricoh,r2223x.yaml
---
base-commit: 2709dd5ae32f0828f386327c76bba9f39f63a1c6
--
2.55.0