[PATCH v3 0/5] rtc: s35390a: Allow use of output pin for interrupt signal 1 for wakealarm
Markus Probst <[email protected]> Wed, 05 Aug 2026 19:32:25 +0000
| Newsgroups | org.kernel.vger.linux-gpio,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-rtc |
|---|---|
| Message-ID | <[email protected]> |
Add pinctrl to allow the use of output pin for interrupt signal 1 for wakealarm. This is needed for wakealarms to work on Synology NAS devices. I could only partially test the pinctrl patch. My testing system runs ACPI, which makes it impossible for me to configure pinctrl there. I did however verify that with missing pinctrl configuration in the devicetree, the register were correctly set. So there should be no regressions. Every other function than ignore, disable and wakeup should also be considered untested. Also If I am not mistaken, wake alarms on these systems are currently broken: (not tested, judged by looking at the devicetrees). - arch/arm/boot/dts/marvell/armada-370-synology-ds213j.dts - arch/arm/boot/dts/marvell/armada-xp-synology-ds414.dts - arch/arm/boot/dts/marvell/kirkwood-synology.dtsi - arch/arm/boot/dts/marvell/kirkwood-ds110jv10.dts - arch/arm/boot/dts/marvell/kirkwood-ds111.dts - arch/arm/boot/dts/marvell/kirkwood-ds112.dts - arch/arm/boot/dts/marvell/kirkwood-ds210.dts - arch/arm/boot/dts/marvell/kirkwood-ds212.dts - arch/arm/boot/dts/marvell/kirkwood-ds212j.dts - arch/arm/boot/dts/marvell/kirkwood-ds411.dts - arch/arm/boot/dts/marvell/kirkwood-ds411j.dts - arch/arm/boot/dts/marvell/kirkwood-ds411slim.dts - arch/arm/boot/dts/marvell/kirkwood-rs212.dts - arch/arm/boot/dts/marvell/kirkwood-rs411.dts If thats the case it can be fixed by using this patch series and adding the example in the devicetree to the s35390a devicetree. If somebody still runs one of these systems, please test. Thanks - Markus Probst Signed-off-by: Markus Probst <[email protected]> --- Changes in v3: - fix issues reported by Sashiko - fix use of uninitialized time data - remove dependence on `CONFIG_OF` - add missing `pinctrl_enable` call - fix wrong index used in `s35390a_pinconf_set` - fix interrupt not cleared - fix `device_set_wakeup_capable` called to late in probe - fix mode caching even on failure - fix failure on synology quirk mode update ignored - only set irq in alarm_irq_enable callback - fix alarm time not set if set_alarm is called with alarm disabled - use pinmux instead of pinconf - move patternProperties below properties in dt - remove dt-bindings header - add '#clock-cells' dt property - merge 32768khz and user frequency mode into "clock" - remove alarm mode - refer to mode now as function in the code, to match phrasing in pinmux - resolve checkpatches --strict warnings - remove mode_init bool and instead set initial function to -1 - remove err_read probe variable and reuse err - rebase onto v6.2-rc6 - Link to v2: https://patch.msgid.link/[email protected] Changes in v2: - remove sii,wakealarm-output-pin property - add pinctrl - add fix to allow disabling of wake alarms - add synology quirk - Link to v1: https://patch.msgid.link/[email protected] --- Markus Probst (5): dt-bindings: rtc: Add pinctrl for S35390A rtc: s35390a: Add missing newline to dev_err rtc: s35390a: Fix alarm not disabling rtc: s35390a: Add pinctrl rtc: s35390a: Add synology quirk .../devicetree/bindings/rtc/sii,s35390a.yaml | 109 ++++++ .../devicetree/bindings/rtc/trivial-rtc.yaml | 3 - MAINTAINERS | 1 + drivers/rtc/Kconfig | 1 + drivers/rtc/rtc-s35390a.c | 413 +++++++++++++++++---- 5 files changed, 461 insertions(+), 66 deletions(-) --- base-commit: d7dd96eb916519208210bb4a0408fcf4f7fdce5d change-id: 20260630-rtc_s35390a_int1-556ccb308d3f