From: Zi-Yu Chen <zychennvt@gmail.com>
To: Wim Van Sebroeck <wim@linux-watchdog.org>,
Guenter Roeck <linux@roeck-us.net>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: Jacky Huang <ychuang3@nuvoton.com>,
Shan-Chun Hung <schung@nuvoton.com>,
linux-watchdog@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Zi-Yu Chen <zychennvt@gmail.com>
Subject: [PATCH v2 0/3] watchdog: ma35d1: Add support for MA35D1 Watchdog
Date: Fri, 24 Jul 2026 17:14:24 +0800 [thread overview]
Message-ID: <20260724091427.1689980-1-zychennvt@gmail.com> (raw)
This patch series introduces watchdog timer support for the Nuvoton MA35D1
SoC platform.
The MA35D1 watchdog timer hardware provides a programmable countdown timer
capable of triggering a system reset upon timeout expiration or generating
an interrupt to wake up the system from low-power states.
Key features supported in this driver:
- Standard watchdog operations (start, stop, ping, set_timeout).
- Boot status detection to identify watchdog reset events (WDIOF_CARDRESET).
- Power management support including suspend/resume and wakeup functionality.
Series breakdown:
- Patch 1: Add DT binding documentation for Nuvoton MA35D1 watchdog.
- Patch 2: Add the watchdog driver implementation for MA35D1.
- Patch 3: Add the watchdog node in the MA35D1 SoC DeviceTree file.
Testing:
- Tested on the Nuvoton MA35D1 development board using standard watchdog
test utilities (e.g., watchdog-test from tools/testing/selftests/watchdog).
Signed-off-by: Zi-Yu Chen <zychennvt@gmail.com>
---
Changes in v2:
- Added `watchdog_stop_on_reboot()` and `watchdog_stop_on_unregister()`.
Addressed automated review feedback (Sashiko AI) and reviewer comments:
- Remove redundant 'struct device *dev' from driver private structure.
- Add ma35d1_wdt_wait_sync() after writing WDTEN to REG_WDT_CTL in
ma35d1_wdt_start().
- Preserve wdt_dev->timeout when requested timeout exceeds hardware maximum.
- Replace dev_pm_set_wake_irq with devm_pm_set_wake_irq.
- Set WDOG_HW_RUNNING if watchdog was already enabled by bootloader.
- Fix IRQ variable type from u32 to int.
- Removed unnecessary `select MFD_SYSCON` from Kconfig.
Note: RMW operations on REG_WDT_CTL have no runtime side-effects on W1C
flags as IF/WKF are only utilized during PM suspend/resume window.
Zi-Yu Chen (3):
dt-bindings: watchdog: Add MA35D1 Watchdog binding
watchdog: Add Nuvoton MA35D1 watchdog driver support
arm64: dts: nuvoton: Add WDT node for MA35D1 SoC
.../bindings/watchdog/nuvoton,ma35d1-wdt.yaml | 55 +++
arch/arm64/boot/dts/nuvoton/ma35d1.dtsi | 7 +
drivers/watchdog/Kconfig | 10 +
drivers/watchdog/Makefile | 1 +
drivers/watchdog/ma35d1_wdt.c | 358 ++++++++++++++++++
5 files changed, 431 insertions(+)
create mode 100644 Documentation/devicetree/bindings/watchdog/nuvoton,ma35d1-wdt.yaml
create mode 100644 drivers/watchdog/ma35d1_wdt.c
--
2.34.1
next reply other threads:[~2026-07-24 9:15 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-24 9:14 Zi-Yu Chen [this message]
2026-07-24 9:14 ` [PATCH v2 1/3] dt-bindings: watchdog: Add MA35D1 Watchdog binding Zi-Yu Chen
2026-07-24 9:14 ` [PATCH v2 2/3] watchdog: Add Nuvoton MA35D1 watchdog driver support Zi-Yu Chen
2026-07-24 9:24 ` sashiko-bot
2026-07-24 9:14 ` [PATCH v2 3/3] arm64: dts: nuvoton: Add WDT node for MA35D1 SoC Zi-Yu Chen
2026-07-24 9:25 ` sashiko-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260724091427.1689980-1-zychennvt@gmail.com \
--to=zychennvt@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-watchdog@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=robh@kernel.org \
--cc=schung@nuvoton.com \
--cc=wim@linux-watchdog.org \
--cc=ychuang3@nuvoton.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.