Commit 84dbf809 authored by Thierry Reding's avatar Thierry Reding Committed by Greg Kroah-Hartman
Browse files

i2c: Convert to devm_ioremap_resource()



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: default avatarThierry Reding <thierry.reding@avionic-design.de>
Acked-by: default avatarWolfram Sang <w.sang@pengutronix.de>
Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent f4a18312
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -723,9 +723,9 @@ static int at91_twi_probe(struct platform_device *pdev)
	if (!dev->pdata)
	if (!dev->pdata)
		return -ENODEV;
		return -ENODEV;


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


	dev->irq = platform_get_irq(pdev, 0);
	dev->irq = platform_get_irq(pdev, 0);
	if (dev->irq < 0)
	if (dev->irq < 0)
+3 −3
Original line number Original line Diff line number Diff line
@@ -511,9 +511,9 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
		return -ENOENT;
		return -ENOENT;
	}
	}


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


	i2c_imx = devm_kzalloc(&pdev->dev, sizeof(struct imx_i2c_struct),
	i2c_imx = devm_kzalloc(&pdev->dev, sizeof(struct imx_i2c_struct),
				GFP_KERNEL);
				GFP_KERNEL);
+4 −3
Original line number Original line Diff line number Diff line
@@ -12,6 +12,7 @@
 * kind, whether express or implied.
 * kind, whether express or implied.
 */
 */


#include <linux/err.h>
#include <linux/kernel.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/init.h>
@@ -364,9 +365,9 @@ static int ocores_i2c_probe(struct platform_device *pdev)
	if (!i2c)
	if (!i2c)
		return -ENOMEM;
		return -ENOMEM;


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


	pdata = pdev->dev.platform_data;
	pdata = pdev->dev.platform_data;
	if (pdata) {
	if (pdata) {
+3 −5
Original line number Original line Diff line number Diff line
@@ -1103,11 +1103,9 @@ omap_i2c_probe(struct platform_device *pdev)
		return -ENOMEM;
		return -ENOMEM;
	}
	}


	dev->base = devm_request_and_ioremap(&pdev->dev, mem);
	dev->base = devm_ioremap_resource(&pdev->dev, mem);
	if (!dev->base) {
	if (IS_ERR(dev->base))
		dev_err(&pdev->dev, "I2C region already claimed\n");
		return PTR_ERR(dev->base);
		return -ENOMEM;
	}


	match = of_match_device(of_match_ptr(omap_i2c_of_match), &pdev->dev);
	match = of_match_device(of_match_ptr(omap_i2c_of_match), &pdev->dev);
	if (match) {
	if (match) {
+3 −5
Original line number Original line Diff line number Diff line
@@ -642,11 +642,9 @@ static int rcar_i2c_probe(struct platform_device *pdev)
	if (ret < 0)
	if (ret < 0)
		return ret;
		return ret;


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


	priv->irq = platform_get_irq(pdev, 0);
	priv->irq = platform_get_irq(pdev, 0);
	init_waitqueue_head(&priv->wait);
	init_waitqueue_head(&priv->wait);
Loading