diff options
author | Michal Simek <michal.simek@xilinx.com> | 2014-02-12 17:41:25 +0400 |
---|---|---|
committer | Wim Van Sebroeck <wim@iguana.be> | 2014-03-31 15:29:31 +0400 |
commit | 8d6a140b5f0def8c34d803474780b7b11fe0fab4 (patch) | |
tree | 5f351455fc832a30e0824d4597b58f64bcd858cd /drivers/watchdog/of_xilinx_wdt.c | |
parent | c9dcf9f2ea3d64602fe6230daba80f2ed811535b (diff) | |
download | linux-8d6a140b5f0def8c34d803474780b7b11fe0fab4.tar.xz |
watchdog: xilinx: Remove no_timeout variable
Remove no_timeout variable and check variables
directly.
Suggested-by: Rob Herring <robherring2@gmail.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog/of_xilinx_wdt.c')
-rw-r--r-- | drivers/watchdog/of_xilinx_wdt.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/watchdog/of_xilinx_wdt.c b/drivers/watchdog/of_xilinx_wdt.c index 97370f63897c..57ccae8327ff 100644 --- a/drivers/watchdog/of_xilinx_wdt.c +++ b/drivers/watchdog/of_xilinx_wdt.c @@ -146,10 +146,9 @@ static u32 xwdt_selftest(struct xwdt_device *xdev) static int xwdt_probe(struct platform_device *pdev) { int rc; - u32 pfreq, enable_once = 0; + u32 pfreq = 0, enable_once = 0; struct resource *res; struct xwdt_device *xdev; - bool no_timeout = false; struct watchdog_device *xilinx_wdt_wdd; xdev = devm_kzalloc(&pdev->dev, sizeof(*xdev), GFP_KERNEL); @@ -167,19 +166,15 @@ static int xwdt_probe(struct platform_device *pdev) return PTR_ERR(xdev->base); rc = of_property_read_u32(pdev->dev.of_node, "clock-frequency", &pfreq); - if (rc) { + if (rc) dev_warn(&pdev->dev, "The watchdog clock frequency cannot be obtained\n"); - no_timeout = true; - } rc = of_property_read_u32(pdev->dev.of_node, "xlnx,wdt-interval", &xdev->wdt_interval); - if (rc) { + if (rc) dev_warn(&pdev->dev, "Parameter \"xlnx,wdt-interval\" not found\n"); - no_timeout = true; - } rc = of_property_read_u32(pdev->dev.of_node, "xlnx,wdt-enable-once", &enable_once); @@ -193,7 +188,7 @@ static int xwdt_probe(struct platform_device *pdev) * Twice of the 2^wdt_interval / freq because the first wdt overflow is * ignored (interrupt), reset is only generated at second wdt overflow */ - if (!no_timeout) + if (pfreq && xdev->wdt_interval) xilinx_wdt_wdd->timeout = 2 * ((1 << xdev->wdt_interval) / pfreq); |