[PATCH v12 4/4] watchdog: mtk_wdt: mt2712: Add reset controller

From: Yong Liang
Date: Wed Jan 15 2020 - 03:58:53 EST


From: "yong.liang" <yong.liang@xxxxxxxxxxxx>

Add reset controller for 2712.
Besides watchdog, MTK toprgu module alsa provide sub-system (eg, audio,
camera, codec and connectivity) software reset functionality.

Signed-off-by: yong.liang <yong.liang@xxxxxxxxxxxx>
Signed-off-by: Jiaxin Yu <jiaxin.yu@xxxxxxxxxxxx>
Reviewed-by: Yingjoe Chen <yingjoe.chen@xxxxxxxxxxxx>
Reviewed-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
---
drivers/watchdog/mtk_wdt.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/drivers/watchdog/mtk_wdt.c b/drivers/watchdog/mtk_wdt.c
index e88aacb0404d..d6a6393f609d 100644
--- a/drivers/watchdog/mtk_wdt.c
+++ b/drivers/watchdog/mtk_wdt.c
@@ -9,6 +9,7 @@
* Based on sunxi_wdt.c
*/

+#include <dt-bindings/reset-controller/mt2712-resets.h>
#include <dt-bindings/reset-controller/mt8183-resets.h>
#include <linux/delay.h>
#include <linux/err.h>
@@ -67,6 +68,10 @@ struct mtk_wdt_data {
int toprgu_sw_rst_num;
};

+static const struct mtk_wdt_data mt2712_data = {
+ .toprgu_sw_rst_num = MT2712_TOPRGU_SW_RST_NUM,
+};
+
static const struct mtk_wdt_data mt8183_data = {
.toprgu_sw_rst_num = MT8183_TOPRGU_SW_RST_NUM,
};
@@ -314,6 +319,7 @@ static int mtk_wdt_resume(struct device *dev)
#endif

static const struct of_device_id mtk_wdt_dt_ids[] = {
+ { .compatible = "mediatek,mt2712-wdt", .data = &mt2712_data },
{ .compatible = "mediatek,mt6589-wdt" },
{ .compatible = "mediatek,mt8183-wdt", .data = &mt8183_data },
{ /* sentinel */ }
--
2.18.0