Hi all, This series make an update in the MT7621 SoC's watchdog driver code. This SoC already provides a system controller node to access reset status register needed for the watchdog. Instead of using MIPS architecture dependent operations in header 'asm/mach-ralink/ralink_regs.h' use a phandle to the system controller node and use it through regmap APIs from the code. Driver is also using some globals that are not needed at all if a driver data structure is used along the code. Hence, add all new needed stuff inside a new driver data structure. With this changes driver can be properly compile tested. Thanks in advance for reviewing this! v1 of this series here [0]. v2 of this series here [1]. v3 of this series here [2]. v4 of this series here [3]. v5 of this series here [4]. v6 of this series here [5]. Changes in v7: - Restore phandler 'mediatek,sysctl' in bindings with Krzysztof's 'Acked-by'. - Use regmap syscon 'syscon_regmap_lookup_by_phandle()' and only if this fails use 'syscon_regmap_lookup_by_compatible()' to avoid DTB's ABI breakage. Changes in v6: - Get regmap syscon using 'syscon_regmap_lookup_by_compatible()' - Add COMPILE_TEST and dependencies to Kconfig. - Collect Philippe Mathieu-Daudé 'Reviewed-by' tag for watchdog node warning fix. Changes in v5: - Drop patches related with device tree ABI breakage and only maintain the rest. - Collect Arinc 'Reviewed-by' tag for watchdog node warning fix. Changes in v4: - Add a patch to fix a watchdog node warning with 'make dtbs_check' because of a wrong node name. - Collect Guenter 'Reviewed-by' tags for watchdog driver code. - Add a missing 'COMPILE_TEST' to Kconfig which was lost when driver code was split in two patches in v2. Changes in v3: - rename phandler from 'ralink,sysctl' into 'mediatek,sysctl'. - Drop error message added in PATCH 3 that modifies functionality and we only want to maintain current functionaloty by now. Changes in v2: - Remove no needed compatible 'syscon' from bindings. - Rewrite new syscon phandle description in bindings. - Remove 'syscon' from compatible in 'mt7621.dtsi'. - Split PATCH 3 into two different patches: - PATCH 3: removes static globals using a driver data structure. - PATCH 4: remove ralink architecture dependent includes and code. Best regards, Sergio Paracuellos [0]: https://lore.kernel.org/linux-watchdog/20230210065621.598120-1-sergio.paracuellos@xxxxxxxxx/T/#t [1]: https://lore.kernel.org/linux-watchdog/20230210121735.639089-1-sergio.paracuellos@xxxxxxxxx/T/#t [2]: https://lore.kernel.org/linux-watchdog/20230210173841.705783-1-sergio.paracuellos@xxxxxxxxx/T/#t [3]: https://lore.kernel.org/linux-watchdog/20230211073357.755893-1-sergio.paracuellos@xxxxxxxxx/T/#t [4]: https://lore.kernel.org/linux-watchdog/20230213120638.850612-1-sergio.paracuellos@xxxxxxxxx/T/#t [5]: https://lore.kernel.org/linux-watchdog/b302c25e-5365-c335-c790-71b3135847d0@xxxxxxxxxx/T/#t Sergio Paracuellos (5): dt-bindings: watchdog: mt7621-wdt: add phandle to access system controller registers mips: dts: ralink: mt7621: rename watchdog node from 'wdt' into 'watchdog' mips: dts: ralink: mt7621: add phandle to system controller node for watchdog watchdog: mt7621-wdt: avoid static global declarations watchdog: mt7621-wdt: avoid ralink architecture dependent code .../watchdog/mediatek,mt7621-wdt.yaml | 7 + arch/mips/boot/dts/ralink/mt7621.dtsi | 3 +- drivers/watchdog/Kconfig | 4 +- drivers/watchdog/mt7621_wdt.c | 122 ++++++++++++------ 4 files changed, 93 insertions(+), 43 deletions(-) -- 2.25.1