mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 09:36:22 +02:00
watchdog: rzn1: remove now obsolete interrupt support
Previously, it was overlooked that the watchdog could reset the system directly. So, a workaround using the interrupt which called emergency_restart() was implemented. We now configure the controller when booting properly to allow watchdog resets directly. Thus, remove the interrupt workaround. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by: Herve Codina <herve.codina@bootlin.com> Link: https://lore.kernel.org/r/20260507102410.43384-4-wsa+renesas@sang-engineering.com Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
29d71b732b
commit
fafd036b80
|
|
@ -79,14 +79,6 @@ static int rzn1_wdt_start(struct watchdog_device *w)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static irqreturn_t rzn1_wdt_irq(int irq, void *_wdt)
|
||||
{
|
||||
pr_crit("RZN1 Watchdog. Initiating system reboot\n");
|
||||
emergency_restart();
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
static struct watchdog_info rzn1_wdt_info = {
|
||||
.identity = "RZ/N1 Watchdog",
|
||||
.options = WDIOF_MAGICCLOSE | WDIOF_SETTIMEOUT | WDIOF_KEEPALIVEPING,
|
||||
|
|
@ -101,12 +93,10 @@ static const struct watchdog_ops rzn1_wdt_ops = {
|
|||
static int rzn1_wdt_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
struct device_node *np = dev->of_node;
|
||||
struct rzn1_watchdog *wdt;
|
||||
unsigned long clk_rate;
|
||||
struct clk *clk;
|
||||
int ret;
|
||||
int irq;
|
||||
|
||||
wdt = devm_kzalloc(dev, sizeof(*wdt), GFP_KERNEL);
|
||||
if (!wdt)
|
||||
|
|
@ -116,15 +106,6 @@ static int rzn1_wdt_probe(struct platform_device *pdev)
|
|||
if (IS_ERR(wdt->base))
|
||||
return PTR_ERR(wdt->base);
|
||||
|
||||
irq = platform_get_irq(pdev, 0);
|
||||
if (irq < 0)
|
||||
return irq;
|
||||
|
||||
ret = devm_request_irq(dev, irq, rzn1_wdt_irq, 0,
|
||||
np->name, wdt);
|
||||
if (ret)
|
||||
return dev_err_probe(dev, ret, "failed to request irq %d\n", irq);
|
||||
|
||||
clk = devm_clk_get_enabled(dev, NULL);
|
||||
if (IS_ERR(clk))
|
||||
return dev_err_probe(dev, PTR_ERR(clk), "failed to get the clock\n");
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user