watchdog: s3c2410_wdt: simplify use of devm_ioremap_resource
authorJulia Lawall <Julia.Lawall@lip6.fr>
Wed, 14 Aug 2013 09:11:24 +0000 (11:11 +0200)
committerWim Van Sebroeck <wim@iguana.be>
Tue, 10 Sep 2013 19:21:26 +0000 (21:21 +0200)
Remove unneeded error handling on the result of a call to
platform_get_resource when the value is passed to devm_ioremap_resource.

Move the call to platform_get_resource adjacent to the call to
devm_ioremap_resource to make the connection between them more clear.

A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression pdev,res,n,e,e1;
expression ret != 0;
identifier l;
@@

- res = platform_get_resource(pdev, IORESOURCE_MEM, n);
  ... when != res
- if (res == NULL) { ... \(goto l;\|return ret;\) }
  ... when != res
+ res = platform_get_resource(pdev, IORESOURCE_MEM, n);
  e = devm_ioremap_resource(e1, res);
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/s3c2410_wdt.c

index 43d2807..23aad7c 100644 (file)
@@ -353,11 +353,6 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
        wdt->dev = &pdev->dev;
        spin_lock_init(&wdt->lock);
        wdt->wdt_device = s3c2410_wdd;
-       wdt_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       if (wdt_mem == NULL) {
-               dev_err(dev, "no memory resource specified\n");
-               return -ENOENT;
-       }
 
        wdt_irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
        if (wdt_irq == NULL) {
@@ -367,6 +362,7 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
        }
 
        /* get the memory region for the watchdog timer */
+       wdt_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
        wdt->reg_base = devm_ioremap_resource(dev, wdt_mem);
        if (IS_ERR(wdt->reg_base)) {
                ret = PTR_ERR(wdt->reg_base);