Messages in this thread |  | | From | Alexey Charkov <> | | Subject | [PATCH v5 0/4] clocksource/drivers/timer-vt8500: clean up and add watchdog function | | Date | Wed, 21 May 2025 17:00:08 +0400 |
| |
Add named defines for all registers and bits in timer-vt8500. Move the system events timer from channel 0 to channel 1 when enough information is provided by the device tree (i.e. more than one IRQ). Use channel 0 for the system watchdog
Signed-off-by: Alexey Charkov <alchark@gmail.com> --- Changes in v5: - Make sure the watchdog timeout value is clamped to hardware limits before writing it to the registers (thanks Guenter) - Add a comment about the watchdog match value (deadline) wrapping around the U32_MAX boundary, which is expected behavior (thanks Guenter) - Avoid moving register definitions to the shared header file to reduce churn: the watchdog driver gets direct pointers to the two registers it uses anyway, so it doesn't have to know all those offsets and bits - Put the watchdog Kconfig entry with other ARM platforms where it belongs - Link to v4: https://lore.kernel.org/r/20250521-vt8500-timer-updates-v4-0-2d4306a16ae4@gmail.com
Changes in v4: - Changed the watchdog driver to use auxiliary bus instead of platform (thanks Guenter) - Split out the register definitions into a header file shared between the clocksource driver and the watchdog driver - Replaced -1UL with U32_MAX in watchdog max_heartbeat_ms to make builds on non-32bit platforms happier - Link to v3: https://lore.kernel.org/r/20250515-vt8500-timer-updates-v3-0-2197a1b062bd@gmail.com
Changes in v3: - Dropped the DTS patch already applied by Krzysztof - Rebased onto v6.15-rc5 as requested by Daniel - Split out the watchdog code into a dedicated platform driver, like timer-gxp does (thanks Daniel) - Link to v2: https://lore.kernel.org/r/20250507-vt8500-timer-updates-v2-0-65e5d1b0855e@gmail.com
Changes in v2: - Included the previously reviewed binding change that is directly related to this series as the first patch here (thanks Krzysztof) - Created a separate config symbol for the watchdog function to let users build a kernel without forcing watchdog functionality upon them (thanks Krzysztof) - Link to the previous binding submission: https://lore.kernel.org/all/20250506-via_vt8500_timer_binding-v3-1-88450907503f@gmail.com/ - Link to v1: https://lore.kernel.org/r/20250507-vt8500-timer-updates-v1-0-6b76f7f340a6@gmail.com
--- Alexey Charkov (4): dt-bindings: timer: via,vt8500-timer: Convert to YAML clocksource/drivers/timer-vt8500: Add defines for magic constants clocksource/drivers/timer-vt8500: Prepare for watchdog functionality watchdog: Add support for VIA/WonderMedia SoC watchdog functionality
.../devicetree/bindings/timer/via,vt8500-timer.txt | 15 -- .../bindings/timer/via,vt8500-timer.yaml | 51 +++++++ MAINTAINERS | 3 + drivers/clocksource/Kconfig | 1 + drivers/clocksource/timer-vt8500.c | 166 +++++++++++++++++---- drivers/watchdog/Kconfig | 15 ++ drivers/watchdog/Makefile | 1 + drivers/watchdog/vt8500-wdt.c | 88 +++++++++++ include/linux/vt8500-timer.h | 18 +++ 9 files changed, 316 insertions(+), 42 deletions(-) --- base-commit: 088d13246a4672bc03aec664675138e3f5bff68c change-id: 20250506-vt8500-timer-updates-44a0d22cd720
Best regards, -- Alexey Charkov <alchark@gmail.com>
|  |