[PATCH v3 3/3] watchdog: mtk_wdt: add support for mt6577
Guenter Roeck
linux at roeck-us.net
Thu May 13 08:23:07 PDT 2021
On Thu, May 13, 2021 at 04:35:15AM +0300, Boris Lysov wrote:
> This patch adds support for watchdog used by mt6577 and related SoCs such
> as mt6575 and mt8317. These watchdogs are known for having shifted WDT_MODE
> and SWSYSRST registers and using different SWSYSRST_KEY value.
>
> Signed-off-by: Boris Lysov <arzamas-16 at mail.ee>
Reviewed-by: Guenter Roeck <linux at roeck-us.net>
> ---
> drivers/watchdog/mtk_wdt.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/drivers/watchdog/mtk_wdt.c b/drivers/watchdog/mtk_wdt.c
> index 0878fa33dffe..91d498b5d212 100644
> --- a/drivers/watchdog/mtk_wdt.c
> +++ b/drivers/watchdog/mtk_wdt.c
> @@ -54,6 +54,10 @@
> #define MT2712_SWSYSRST_KEY_SHIFT 24 // unlock_key [31:24]
> #define MT2712_SWSYSRST_KEY 0x88
>
> +#define MT6577_WDT_MODE_KEY_SHIFT 8 // unlock_key [15:8]
> +#define MT6577_SWSYSRST_KEY_SHIFT 8 // unlock_key [15:8]
> +#define MT6577_SWSYSRST_KEY 0x15
> +
> #define MT6589_WDT_MODE_KEY_SHIFT 24 // unlock_key [31:24]
> #define MT6589_SWSYSRST_KEY_SHIFT 24 // unlock_key [31:24]
> #define MT6589_SWSYSRST_KEY 0x88
> @@ -94,6 +98,13 @@ static const struct mtk_wdt_data mt2712_data = {
> .wdt_swsys_rst_key = MT2712_SWSYSRST_KEY,
> };
>
> +static const struct mtk_wdt_data mt6577_data = {
> + .toprgu_sw_rst_num = -1,
> + .wdt_mode_key_shift = MT6577_WDT_MODE_KEY_SHIFT,
> + .wdt_swsys_rst_key_shift = MT6577_SWSYSRST_KEY_SHIFT,
> + .wdt_swsys_rst_key = MT6577_SWSYSRST_KEY,
> +};
> +
> static const struct mtk_wdt_data mt6589_data = {
> .toprgu_sw_rst_num = -1,
> .wdt_mode_key_shift = MT6589_WDT_MODE_KEY_SHIFT,
> @@ -376,6 +387,7 @@ static int mtk_wdt_resume(struct device *dev)
>
> static const struct of_device_id mtk_wdt_dt_ids[] = {
> { .compatible = "mediatek,mt2712-wdt", .data = &mt2712_data },
> + { .compatible = "mediatek,mt6577-wdt", .data = &mt6577_data },
> { .compatible = "mediatek,mt6589-wdt", .data = &mt6589_data },
> { .compatible = "mediatek,mt8183-wdt", .data = &mt8183_data },
> { .compatible = "mediatek,mt8192-wdt", .data = &mt8192_data },
> --
> 2.20.1
>
More information about the Linux-mediatek
mailing list