Skip to content

Commit

Permalink
watchdog: rti: of: honor timeout-sec property
Browse files Browse the repository at this point in the history
Currently "timeout-sec" Device Tree property is being silently ignored:
even though watchdog_init_timeout() is being used, the driver always passes
"heartbeat" == DEFAULT_HEARTBEAT == 60 as argument.

Fix this by setting struct watchdog_device::timeout to DEFAULT_HEARTBEAT
and passing real module parameter value to watchdog_init_timeout() (which
may now be 0 if not specified).

Cc: stable@vger.kernel.org
Fixes: 2d63908 ("watchdog: Add K3 RTI watchdog support")
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
Reviewed-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20241107203830.1068456-1-alexander.sverdlin@siemens.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
  • Loading branch information
Alexander Sverdlin authored and Wim Van Sebroeck committed Nov 17, 2024
1 parent a5cb139 commit 4962ee0
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion drivers/watchdog/rti_wdt.c
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@

#define MAX_HW_ERROR 250

static int heartbeat = DEFAULT_HEARTBEAT;
static int heartbeat;

/*
* struct to hold data for each WDT device
Expand Down Expand Up @@ -252,6 +252,7 @@ static int rti_wdt_probe(struct platform_device *pdev)
wdd->min_timeout = 1;
wdd->max_hw_heartbeat_ms = (WDT_PRELOAD_MAX << WDT_PRELOAD_SHIFT) /
wdt->freq * 1000;
wdd->timeout = DEFAULT_HEARTBEAT;
wdd->parent = dev;

watchdog_set_drvdata(wdd, wdt);
Expand Down

0 comments on commit 4962ee0

Please sign in to comment.