ASoC: SPEAr: Convert to use devm_ioremap_resource
authorAxel Lin <axel.lin@ingics.com>
Mon, 24 Aug 2015 08:52:30 +0000 (16:52 +0800)
committerMark Brown <broonie@kernel.org>
Tue, 25 Aug 2015 09:32:15 +0000 (10:32 +0100)
Use devm_ioremap_resource() instead of open code.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/spear/spdif_in.c

index a402860..977a078 100644 (file)
@@ -203,35 +203,25 @@ static int spdif_in_probe(struct platform_device *pdev)
        struct spdif_in_dev *host;
        struct spear_spdif_platform_data *pdata;
        struct resource *res, *res_fifo;
+       void __iomem *io_base;
        int ret;
 
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       if (!res)
-               return -EINVAL;
+       io_base = devm_ioremap_resource(&pdev->dev, res);
+       if (IS_ERR(io_base))
+               return PTR_ERR(io_base);
 
        res_fifo = platform_get_resource(pdev, IORESOURCE_IO, 0);
        if (!res_fifo)
                return -EINVAL;
 
-       if (!devm_request_mem_region(&pdev->dev, res->start,
-                               resource_size(res), pdev->name)) {
-               dev_warn(&pdev->dev, "Failed to get memory resourse\n");
-               return -ENOENT;
-       }
-
        host = devm_kzalloc(&pdev->dev, sizeof(*host), GFP_KERNEL);
        if (!host) {
                dev_warn(&pdev->dev, "kzalloc fail\n");
                return -ENOMEM;
        }
 
-       host->io_base = devm_ioremap(&pdev->dev, res->start,
-                               resource_size(res));
-       if (!host->io_base) {
-               dev_warn(&pdev->dev, "ioremap failed\n");
-               return -ENOMEM;
-       }
-
+       host->io_base = io_base;
        host->irq = platform_get_irq(pdev, 0);
        if (host->irq < 0)
                return -EINVAL;