[PATCH v2 0/3] rtc: rs5c372: add Ricoh R2223x support

Heiko Schocher posted 3 patches 1 month ago
.../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
[PATCH v2 0/3] rtc: rs5c372: add Ricoh R2223x support
Posted by Heiko Schocher 1 month ago
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@nabladev.com?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@nabladev.com?part=2
- Added sashiko review for patch 3 in this patch, as it fits better here
  https://sashiko.dev/#/patchset/20260824110452.4038870-1-hs@nabladev.com?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
Re: [PATCH v2 0/3] rtc: rs5c372: add Ricoh R2223x support
Posted by Heiko Schocher 2 weeks, 1 day ago
Hi All,

On 25.08.26 09:19, Heiko Schocher wrote:
> 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@nabladev.com?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@nabladev.com?part=2
> - Added sashiko review for patch 3 in this patch, as it fits better here
>    https://sashiko.dev/#/patchset/20260824110452.4038870-1-hs@nabladev.com?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
> 

gentle ping.

Any comments to this series?

Thanks!

bye,
Heiko
-- 
Nabla Software Engineering
HRB 40522 Augsburg
Phone: +49 821 45592596
E-Mail: office@nabladev.com
Geschäftsführer : Stefano Babic