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@xxxxxxxxxxxxxxxxx> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Cc: devel@xxxxxxxxxxxxxxxxxxxx --- drivers/staging/iio/adc/mxs-lradc.c | 7 ++++--- drivers/staging/nvec/nvec.c | 8 +++----- drivers/staging/omap-thermal/omap-bandgap.c | 11 ++++------- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/drivers/staging/iio/adc/mxs-lradc.c b/drivers/staging/iio/adc/mxs-lradc.c index c5ceb9d..3d562da 100644 --- a/drivers/staging/iio/adc/mxs-lradc.c +++ b/drivers/staging/iio/adc/mxs-lradc.c @@ -15,6 +15,7 @@ * GNU General Public License for more details. */ +#include <linux/err.h> #include <linux/interrupt.h> #include <linux/device.h> #include <linux/kernel.h> @@ -487,9 +488,9 @@ static int mxs_lradc_probe(struct platform_device *pdev) /* Grab the memory area */ iores = platform_get_resource(pdev, IORESOURCE_MEM, 0); lradc->dev = &pdev->dev; - lradc->base = devm_request_and_ioremap(dev, iores); - if (!lradc->base) { - ret = -EADDRNOTAVAIL; + lradc->base = devm_ioremap_resource(dev, iores); + if (IS_ERR(lradc->base)) { + ret = PTR_ERR(lradc->base); goto err_addr; } diff --git a/drivers/staging/nvec/nvec.c b/drivers/staging/nvec/nvec.c index 2830946..492e0b6 100644 --- a/drivers/staging/nvec/nvec.c +++ b/drivers/staging/nvec/nvec.c @@ -759,11 +759,9 @@ static int tegra_nvec_probe(struct platform_device *pdev) return -ENODEV; } - base = devm_request_and_ioremap(&pdev->dev, res); - if (!base) { - dev_err(&pdev->dev, "Can't ioremap I2C region\n"); - return -ENOMEM; - } + base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(base)) + return PTR_ERR(base); res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); if (!res) { diff --git a/drivers/staging/omap-thermal/omap-bandgap.c b/drivers/staging/omap-thermal/omap-bandgap.c index 8346e345..21fd91b 100644 --- a/drivers/staging/omap-thermal/omap-bandgap.c +++ b/drivers/staging/omap-thermal/omap-bandgap.c @@ -820,15 +820,12 @@ static struct omap_bandgap *omap_bandgap_build(struct platform_device *pdev) res = platform_get_resource(pdev, IORESOURCE_MEM, i); if (!res) break; - chunk = devm_request_and_ioremap(&pdev->dev, res); + chunk = devm_ioremap_resource(&pdev->dev, res); if (i == 0) bg_ptr->base = chunk; - if (!chunk) { - dev_err(&pdev->dev, - "failed to request the IO (%d:%pR).\n", - i, res); - return ERR_PTR(-EADDRNOTAVAIL); - } + if (IS_ERR(chunk)) + return ERR_CAST(chunk); + i++; } while (res); -- 1.8.1.1 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel