OSDN Git Service

mtd: maps: physmap: Use devm_ioremap_resource()
authorBoris Brezillon <boris.brezillon@bootlin.com>
Fri, 19 Oct 2018 07:48:58 +0000 (09:48 +0200)
committerBoris Brezillon <boris.brezillon@bootlin.com>
Mon, 5 Nov 2018 21:23:54 +0000 (22:23 +0100)
Use devm_ioremap_resource() to replace the devm_request_mem_region() +
devm_ioremap() combination.

Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
Reviewed-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
drivers/mtd/maps/physmap.c

index b98072a..1d0f6f0 100644 (file)
@@ -129,17 +129,15 @@ static int physmap_flash_probe(struct platform_device *dev)
                if (!res)
                        break;
 
-               dev_notice(&dev->dev, "physmap platform flash device: %pR\n",
-                          res);
-
-               if (!devm_request_mem_region(&dev->dev, res->start,
-                                            resource_size(res),
-                                            dev_name(&dev->dev))) {
-                       dev_err(&dev->dev, "Could not reserve memory region\n");
-                       err = -ENOMEM;
+               info->maps[i].virt = devm_ioremap_resource(&dev->dev, res);
+               if (IS_ERR(info->maps[i].virt)) {
+                       err = PTR_ERR(info->maps[i].virt);
                        goto err_out;
                }
 
+               dev_notice(&dev->dev, "physmap platform flash device: %pR\n",
+                          res);
+
                info->maps[i].name = dev_name(&dev->dev);
                info->maps[i].phys = res->start;
                info->maps[i].size = resource_size(res);
@@ -148,15 +146,6 @@ static int physmap_flash_probe(struct platform_device *dev)
                info->maps[i].pfow_base = physmap_data->pfow_base;
                info->maps[i].map_priv_1 = (unsigned long)dev;
 
-               info->maps[i].virt = devm_ioremap(&dev->dev,
-                                                 info->maps[i].phys,
-                                                 info->maps[i].size);
-               if (info->maps[i].virt == NULL) {
-                       dev_err(&dev->dev, "Failed to ioremap flash region\n");
-                       err = -EIO;
-                       goto err_out;
-               }
-
                simple_map_init(&info->maps[i]);
 
                probe_type = rom_probe_types;