Skip to content

Commit

Permalink
pinctrl: Convert to devm_ioremap_resource()
Browse files Browse the repository at this point in the history
Convert all uses of devm_request_and_ioremap() to the newly introduced
devm_ioremap_resource() which provides more consistent error handling.

devm_ioremap_resource() provides its own error messages so all explicit
error messages can be removed from the failure code paths.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Cc: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Thierry Reding authored and Greg Kroah-Hartman committed Jan 22, 2013
1 parent 1684789 commit 9e0c1fb
Show file tree
Hide file tree
Showing 12 changed files with 40 additions and 52 deletions.
7 changes: 3 additions & 4 deletions drivers/pinctrl/pinctrl-at91.c
Original file line number Diff line number Diff line change
Expand Up @@ -1503,10 +1503,9 @@ static int at91_gpio_probe(struct platform_device *pdev)
goto err;
}

at91_chip->regbase = devm_request_and_ioremap(&pdev->dev, res);
if (!at91_chip->regbase) {
dev_err(&pdev->dev, "failed to map registers, ignoring.\n");
ret = -EBUSY;
at91_chip->regbase = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(at91_chip->regbase)) {
ret = PTR_ERR(at91_chip->regbase);
goto err;
}

Expand Down
6 changes: 3 additions & 3 deletions drivers/pinctrl/pinctrl-bcm2835.c
Original file line number Diff line number Diff line change
Expand Up @@ -959,9 +959,9 @@ static int bcm2835_pinctrl_probe(struct platform_device *pdev)
return err;
}

pc->base = devm_request_and_ioremap(dev, &iomem);
if (!pc->base)
return -EADDRNOTAVAIL;
pc->base = devm_ioremap_resource(dev, &iomem);
if (IS_ERR(pc->base))
return PTR_ERR(pc->base);

pc->gpio_chip = bcm2835_gpio_chip;
pc->gpio_chip.dev = dev;
Expand Down
8 changes: 3 additions & 5 deletions drivers/pinctrl/pinctrl-coh901.c
Original file line number Diff line number Diff line change
Expand Up @@ -715,11 +715,9 @@ static int __init u300_gpio_probe(struct platform_device *pdev)
return -ENODEV;
}

gpio->base = devm_request_and_ioremap(&pdev->dev, memres);
if (!gpio->base) {
dev_err(gpio->dev, "could not get remap memory\n");
return -ENOMEM;
}
gpio->base = devm_ioremap_resource(&pdev->dev, memres);
if (IS_ERR(gpio->base))
return PTR_ERR(gpio->base);

gpio->clk = devm_clk_get(gpio->dev, NULL);
if (IS_ERR(gpio->clk)) {
Expand Down
8 changes: 3 additions & 5 deletions drivers/pinctrl/pinctrl-exynos5440.c
Original file line number Diff line number Diff line change
Expand Up @@ -866,11 +866,9 @@ static int exynos5440_pinctrl_probe(struct platform_device *pdev)
return -ENOENT;
}

priv->reg_base = devm_request_and_ioremap(&pdev->dev, res);
if (!priv->reg_base) {
dev_err(dev, "ioremap failed\n");
return -ENODEV;
}
priv->reg_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(priv->reg_base))
return PTR_ERR(priv->reg_base);

ret = exynos5440_gpiolib_register(pdev, priv);
if (ret)
Expand Down
13 changes: 5 additions & 8 deletions drivers/pinctrl/pinctrl-falcon.c
Original file line number Diff line number Diff line change
Expand Up @@ -411,14 +411,11 @@ static int pinctrl_falcon_probe(struct platform_device *pdev)
dev_err(&ppdev->dev, "failed to get clock\n");
return PTR_ERR(falcon_info.clk[*bank]);
}
falcon_info.membase[*bank] =
devm_request_and_ioremap(&pdev->dev, &res);
if (!falcon_info.membase[*bank]) {
dev_err(&pdev->dev,
"Failed to remap memory for bank %d\n",
*bank);
return -ENOMEM;
}
falcon_info.membase[*bank] = devm_ioremap_resource(&pdev->dev,
&res);
if (IS_ERR(falcon_info.membase[*bank]))
return PTR_ERR(falcon_info.membase[*bank]);

avail = pad_r32(falcon_info.membase[*bank],
LTQ_PADC_AVAIL);
pins = fls(avail);
Expand Down
6 changes: 3 additions & 3 deletions drivers/pinctrl/pinctrl-imx.c
Original file line number Diff line number Diff line change
Expand Up @@ -584,9 +584,9 @@ int imx_pinctrl_probe(struct platform_device *pdev,
if (!res)
return -ENOENT;

ipctl->base = devm_request_and_ioremap(&pdev->dev, res);
if (!ipctl->base)
return -EBUSY;
ipctl->base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(ipctl->base))
return PTR_ERR(ipctl->base);

imx_pinctrl_desc.name = dev_name(&pdev->dev);
imx_pinctrl_desc.pins = info->pins;
Expand Down
6 changes: 3 additions & 3 deletions drivers/pinctrl/pinctrl-nomadik.c
Original file line number Diff line number Diff line change
Expand Up @@ -1367,9 +1367,9 @@ static int nmk_gpio_probe(struct platform_device *dev)
goto out;
}

base = devm_request_and_ioremap(&dev->dev, res);
if (!base) {
ret = -ENOMEM;
base = devm_ioremap_resource(&dev->dev, res);
if (IS_ERR(base)) {
ret = PTR_ERR(base);
goto out;
}

Expand Down
7 changes: 4 additions & 3 deletions drivers/pinctrl/pinctrl-pxa3xx.c
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
*
*/

#include <linux/err.h>
#include <linux/module.h>
#include <linux/device.h>
#include <linux/io.h>
Expand Down Expand Up @@ -187,9 +188,9 @@ int pxa3xx_pinctrl_register(struct platform_device *pdev,
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (!res)
return -ENOENT;
info->virt_base = devm_request_and_ioremap(&pdev->dev, res);
if (!info->virt_base)
return -ENOMEM;
info->virt_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(info->virt_base))
return PTR_ERR(info->virt_base);
info->pctrl = pinctrl_register(desc, &pdev->dev, info);
if (!info->pctrl) {
dev_err(&pdev->dev, "failed to register PXA pinmux driver\n");
Expand Down
8 changes: 3 additions & 5 deletions drivers/pinctrl/pinctrl-samsung.c
Original file line number Diff line number Diff line change
Expand Up @@ -917,11 +917,9 @@ static int samsung_pinctrl_probe(struct platform_device *pdev)
return -ENOENT;
}

drvdata->virt_base = devm_request_and_ioremap(&pdev->dev, res);
if (!drvdata->virt_base) {
dev_err(dev, "ioremap failed\n");
return -ENODEV;
}
drvdata->virt_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(drvdata->virt_base))
return PTR_ERR(drvdata->virt_base);

res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
if (res)
Expand Down
6 changes: 3 additions & 3 deletions drivers/pinctrl/pinctrl-u300.c
Original file line number Diff line number Diff line change
Expand Up @@ -1078,9 +1078,9 @@ static int u300_pmx_probe(struct platform_device *pdev)
if (!res)
return -ENOENT;

upmx->virtbase = devm_request_and_ioremap(&pdev->dev, res);
if (!upmx->virtbase)
return -ENOMEM;
upmx->virtbase = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(upmx->virtbase))
return PTR_ERR(upmx->virtbase);

upmx->pctl = pinctrl_register(&u300_pmx_desc, &pdev->dev, upmx);
if (!upmx->pctl) {
Expand Down
9 changes: 4 additions & 5 deletions drivers/pinctrl/pinctrl-xway.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
* Copyright (C) 2012 John Crispin <blogic@openwrt.org>
*/

#include <linux/err.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <linux/of_platform.h>
Expand Down Expand Up @@ -687,11 +688,9 @@ static int pinmux_xway_probe(struct platform_device *pdev)
dev_err(&pdev->dev, "Failed to get resource\n");
return -ENOENT;
}
xway_info.membase[0] = devm_request_and_ioremap(&pdev->dev, res);
if (!xway_info.membase[0]) {
dev_err(&pdev->dev, "Failed to remap resource\n");
return -ENOMEM;
}
xway_info.membase[0] = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(xway_info.membase[0]))
return PTR_ERR(xway_info.membase[0]);

match = of_match_device(xway_match, &pdev->dev);
if (match)
Expand Down
8 changes: 3 additions & 5 deletions drivers/pinctrl/spear/pinctrl-plgpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -540,11 +540,9 @@ static int plgpio_probe(struct platform_device *pdev)
return -ENOMEM;
}

plgpio->base = devm_request_and_ioremap(&pdev->dev, res);
if (!plgpio->base) {
dev_err(&pdev->dev, "request and ioremap fail\n");
return -ENOMEM;
}
plgpio->base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(plgpio->base))
return PTR_ERR(plgpio->base);

ret = plgpio_probe_dt(pdev, plgpio);
if (ret) {
Expand Down

0 comments on commit 9e0c1fb

Please sign in to comment.