Re: [PATCH v1 2/4] watchdog: populate reboot mode node in toprgu node of MTK RGU (Reset Generation Unit)

From: Guenter Roeck
Date: Tue Nov 26 2019 - 07:18:47 EST


On 11/25/19 9:34 PM, freddy.hsin@xxxxxxxxxxxx wrote:
From: Freddy Hsin <freddy.hsin@xxxxxxxxxxxx>

of_platform_population should be added in the probe function of
toprgu driver, or the reboot mode driver will not be probed

Signed-off-by: Freddy Hsin <freddy.hsin@xxxxxxxxxxxx>
---
drivers/watchdog/mtk_wdt.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/watchdog/mtk_wdt.c b/drivers/watchdog/mtk_wdt.c
index 9c3d003..2fb2614 100644
--- a/drivers/watchdog/mtk_wdt.c
+++ b/drivers/watchdog/mtk_wdt.c
@@ -20,6 +20,7 @@
#include <linux/types.h>
#include <linux/watchdog.h>
#include <linux/delay.h>
+#include <linux/of_platform.h>
#define WDT_MAX_TIMEOUT 31
#define WDT_MIN_TIMEOUT 1
@@ -167,6 +168,8 @@ static int mtk_wdt_probe(struct platform_device *pdev)
if (IS_ERR(mtk_wdt->wdt_base))
return PTR_ERR(mtk_wdt->wdt_base);
+ of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
+

This seems just wrong. Such a driver should not be a child of the watchdog driver.

Guenter

mtk_wdt->wdt_dev.info = &mtk_wdt_info;
mtk_wdt->wdt_dev.ops = &mtk_wdt_ops;
mtk_wdt->wdt_dev.timeout = WDT_MAX_TIMEOUT;