All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wolfram Sang <wsa@the-dreams.de>
To: linux-kernel@vger.kernel.org
Cc: Wolfram Sang <wsa@the-dreams.de>, Sekhar Nori <nsekhar@ti.com>,
	Kevin Hilman <khilman@deeprootsystems.com>,
	Tony Lindgren <tony@atomide.com>, Ben Dooks <ben-linux@fluff.org>,
	Kukjin Kim <kgene.kim@samsung.com>,
	Barry Song <baohua.song@csr.com>,
	Stephen Warren <swarren@wwwdotorg.org>,
	davinci-linux-open-source@linux.davincidsp.com,
	linux-i2c@vger.kernel.org, linux-omap@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org, linux-tegra@vger.kernel.org
Subject: [RFC 09/42] drivers/i2c/busses: don't check resource with devm_ioremap_resource
Date: Fri, 10 May 2013 10:16:54 +0200	[thread overview]
Message-ID: <1368173847-5661-10-git-send-email-wsa@the-dreams.de> (raw)
In-Reply-To: <1368173847-5661-1-git-send-email-wsa@the-dreams.de>

devm_ioremap_resource does sanity checks on the given resource. No need to
duplicate this in the driver.

Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
---
 drivers/i2c/busses/i2c-davinci.c            |    6 +-----
 drivers/i2c/busses/i2c-designware-platdrv.c |    6 +-----
 drivers/i2c/busses/i2c-imx.c                |    6 +-----
 drivers/i2c/busses/i2c-omap.c               |    6 +-----
 drivers/i2c/busses/i2c-rcar.c               |    7 +------
 drivers/i2c/busses/i2c-s3c2410.c            |    5 -----
 drivers/i2c/busses/i2c-sirf.c               |    6 ------
 drivers/i2c/busses/i2c-tegra.c              |    5 -----
 8 files changed, 5 insertions(+), 42 deletions(-)

diff --git a/drivers/i2c/busses/i2c-davinci.c b/drivers/i2c/busses/i2c-davinci.c
index cf20e06..2ed3e7b 100644
--- a/drivers/i2c/busses/i2c-davinci.c
+++ b/drivers/i2c/busses/i2c-davinci.c
@@ -647,11 +647,6 @@ static int davinci_i2c_probe(struct platform_device *pdev)
 	int r;
 
 	/* NOTE: driver uses the static register mapping */
-	mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (!mem) {
-		dev_err(&pdev->dev, "no mem resource?\n");
-		return -ENODEV;
-	}
 
 	irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
 	if (!irq) {
@@ -697,6 +692,7 @@ static int davinci_i2c_probe(struct platform_device *pdev)
 		return -ENODEV;
 	clk_prepare_enable(dev->clk);
 
+	mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	dev->base = devm_ioremap_resource(&pdev->dev, mem);
 	if (IS_ERR(dev->base)) {
 		r = PTR_ERR(dev->base);
diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c b/drivers/i2c/busses/i2c-designware-platdrv.c
index 8ec9133..6f3c612 100644
--- a/drivers/i2c/busses/i2c-designware-platdrv.c
+++ b/drivers/i2c/busses/i2c-designware-platdrv.c
@@ -87,11 +87,6 @@ static int dw_i2c_probe(struct platform_device *pdev)
 	int irq, r;
 
 	/* NOTE: driver uses the static register mapping */
-	mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (!mem) {
-		dev_err(&pdev->dev, "no mem resource?\n");
-		return -EINVAL;
-	}
 
 	irq = platform_get_irq(pdev, 0);
 	if (irq < 0) {
@@ -103,6 +98,7 @@ static int dw_i2c_probe(struct platform_device *pdev)
 	if (!dev)
 		return -ENOMEM;
 
+	mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	dev->base = devm_ioremap_resource(&pdev->dev, mem);
 	if (IS_ERR(dev->base))
 		return PTR_ERR(dev->base);
diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c
index 82f20c6..b274ca1 100644
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
@@ -500,17 +500,13 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
 
 	dev_dbg(&pdev->dev, "<%s>\n", __func__);
 
-	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (!res) {
-		dev_err(&pdev->dev, "can't get device resources\n");
-		return -ENOENT;
-	}
 	irq = platform_get_irq(pdev, 0);
 	if (irq < 0) {
 		dev_err(&pdev->dev, "can't get irq number\n");
 		return -ENOENT;
 	}
 
+	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	base = devm_ioremap_resource(&pdev->dev, res);
 	if (IS_ERR(base))
 		return PTR_ERR(base);
diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c
index e02f9e3..8498ab7 100644
--- a/drivers/i2c/busses/i2c-omap.c
+++ b/drivers/i2c/busses/i2c-omap.c
@@ -1085,11 +1085,6 @@ omap_i2c_probe(struct platform_device *pdev)
 	u16 minor, major, scheme;
 
 	/* NOTE: driver uses the static register mapping */
-	mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (!mem) {
-		dev_err(&pdev->dev, "no mem resource?\n");
-		return -ENODEV;
-	}
 
 	irq = platform_get_irq(pdev, 0);
 	if (irq < 0) {
@@ -1103,6 +1098,7 @@ omap_i2c_probe(struct platform_device *pdev)
 		return -ENOMEM;
 	}
 
+	mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	dev->base = devm_ioremap_resource(&pdev->dev, mem);
 	if (IS_ERR(dev->base))
 		return PTR_ERR(dev->base);
diff --git a/drivers/i2c/busses/i2c-rcar.c b/drivers/i2c/busses/i2c-rcar.c
index 4ba4a95..0fc5858 100644
--- a/drivers/i2c/busses/i2c-rcar.c
+++ b/drivers/i2c/busses/i2c-rcar.c
@@ -623,12 +623,6 @@ static int rcar_i2c_probe(struct platform_device *pdev)
 	u32 bus_speed;
 	int ret;
 
-	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (!res) {
-		dev_err(dev, "no mmio resources\n");
-		return -ENODEV;
-	}
-
 	priv = devm_kzalloc(dev, sizeof(struct rcar_i2c_priv), GFP_KERNEL);
 	if (!priv) {
 		dev_err(dev, "no mem for private data\n");
@@ -642,6 +636,7 @@ static int rcar_i2c_probe(struct platform_device *pdev)
 	if (ret < 0)
 		return ret;
 
+	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	priv->io = devm_ioremap_resource(dev, res);
 	if (IS_ERR(priv->io))
 		return PTR_ERR(priv->io);
diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
index 6e8ee92..cab1c91 100644
--- a/drivers/i2c/busses/i2c-s3c2410.c
+++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -1082,11 +1082,6 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
 	/* map the registers */
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (res == NULL) {
-		dev_err(&pdev->dev, "cannot find IO resource\n");
-		return -ENOENT;
-	}
-
 	i2c->regs = devm_ioremap_resource(&pdev->dev, res);
 
 	if (IS_ERR(i2c->regs))
diff --git a/drivers/i2c/busses/i2c-sirf.c b/drivers/i2c/busses/i2c-sirf.c
index 5a7ad24..a63c7d5 100644
--- a/drivers/i2c/busses/i2c-sirf.c
+++ b/drivers/i2c/busses/i2c-sirf.c
@@ -303,12 +303,6 @@ static int i2c_sirfsoc_probe(struct platform_device *pdev)
 	adap->class = I2C_CLASS_HWMON;
 
 	mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (mem_res == NULL) {
-		dev_err(&pdev->dev, "Unable to get MEM resource\n");
-		err = -EINVAL;
-		goto out;
-	}
-
 	siic->base = devm_ioremap_resource(&pdev->dev, mem_res);
 	if (IS_ERR(siic->base)) {
 		err = PTR_ERR(siic->base);
diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c
index b60ff90..9aa1b60 100644
--- a/drivers/i2c/busses/i2c-tegra.c
+++ b/drivers/i2c/busses/i2c-tegra.c
@@ -714,11 +714,6 @@ static int tegra_i2c_probe(struct platform_device *pdev)
 	int ret = 0;
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (!res) {
-		dev_err(&pdev->dev, "no mem resource\n");
-		return -EINVAL;
-	}
-
 	base = devm_ioremap_resource(&pdev->dev, res);
 	if (IS_ERR(base))
 		return PTR_ERR(base);
-- 
1.7.10.4

  parent reply	other threads:[~2013-05-10  8:16 UTC|newest]

Thread overview: 136+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-10  8:16 [RFC 00/42] devm improvement series, part #1 Wolfram Sang
2013-05-10  8:16 ` Wolfram Sang
2013-05-10  8:16 ` Wolfram Sang
2013-05-10  8:16 ` [RFC 01/42] drivers/ata: don't check resource with devm_ioremap_resource Wolfram Sang
2013-05-10  8:16 ` [RFC 02/42] drivers/char/hw_random: " Wolfram Sang
2013-05-10  8:16 ` [RFC 03/42] drivers/cpufreq: " Wolfram Sang
2013-05-10 11:09   ` Rafael J. Wysocki
2013-05-10  8:16 ` [RFC 04/42] drivers/dma: " Wolfram Sang
     [not found]   ` <1368173847-5661-5-git-send-email-wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
2013-05-10 16:35     ` Stephen Warren
2013-05-10 16:35       ` Stephen Warren
     [not found]       ` <518D21D4.6000609-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-05-10 17:57         ` Wolfram Sang
2013-05-10 17:57           ` Wolfram Sang
2013-05-10 19:25           ` Stephen Warren
2013-05-10 19:25             ` Stephen Warren
     [not found]             ` <518D49B0.4050901-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-05-12 16:04               ` Vinod Koul
2013-05-12 16:04                 ` Vinod Koul
     [not found]                 ` <20130512160440.GA27639-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2013-05-12 18:28                   ` Wolfram Sang
2013-05-12 18:28                     ` Wolfram Sang
2013-05-13  2:10                     ` Vinod Koul
2013-05-13  2:10                       ` Vinod Koul
     [not found]                       ` <20130513021000.GB27639-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2013-05-13  6:08                         ` Wolfram Sang
2013-05-13  6:08                           ` Wolfram Sang
     [not found] ` <1368173847-5661-1-git-send-email-wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
2013-05-10  8:16   ` [RFC 05/42] drivers/gpio: " Wolfram Sang
2013-05-10  8:16     ` Wolfram Sang
     [not found]     ` <1368173847-5661-6-git-send-email-wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
2013-05-12 15:11       ` Viresh Kumar
2013-05-12 15:11         ` Viresh Kumar
2013-05-10  8:16 ` [RFC 06/42] drivers/gpu/drm/exynos: " Wolfram Sang
2013-05-10  8:16 ` [RFC 07/42] drivers/gpu/host1x: " Wolfram Sang
2013-05-10  8:16 ` [RFC 08/42] drivers/gpu/host1x/drm: " Wolfram Sang
2013-05-10  8:16 ` Wolfram Sang [this message]
2013-05-11  5:18   ` [RFC 09/42] drivers/i2c/busses: " Jingoo Han
2013-05-11  5:18     ` Jingoo Han
2013-06-04 18:34   ` Kevin Hilman
2013-06-04 18:34     ` Kevin Hilman
2013-05-10  8:16 ` [RFC 10/42] drivers/input/keyboard: " Wolfram Sang
2013-05-12 15:12   ` Viresh Kumar
2013-05-10  8:16 ` [RFC 11/42] drivers/input/serio: " Wolfram Sang
2013-05-10  8:16 ` [RFC 12/42] drivers/memory: " Wolfram Sang
2013-05-10  8:16 ` [RFC 13/42] drivers/mfd: " Wolfram Sang
2013-05-16 22:15   ` Samuel Ortiz
2013-05-10  8:16 ` [RFC 14/42] drivers/misc: " Wolfram Sang
2013-05-10 15:24   ` Greg Kroah-Hartman
2013-05-10  8:17 ` [RFC 15/42] drivers/mtd/maps: " Wolfram Sang
2013-05-10  8:17 ` [RFC 16/42] drivers/mtd/nand: " Wolfram Sang
2013-05-10  8:17 ` [RFC 17/42] drivers/net/ethernet/renesas: " Wolfram Sang
2013-05-10 11:07   ` Sergei Shtylyov
2013-05-11 20:31     ` Sergei Shtylyov
2013-05-11 20:35   ` Sergei Shtylyov
2013-05-12  9:42     ` Wolfram Sang
2013-05-12 15:26       ` Sergei Shtylyov
2013-05-12 16:32         ` Wolfram Sang
2013-05-12 18:33           ` Sergei Shtylyov
2013-05-10  8:17 ` [RFC 18/42] drivers/pinctrl: " Wolfram Sang
2013-05-10 14:30   ` Jean-Christophe PLAGNIOL-VILLARD
2013-05-10 14:30     ` Jean-Christophe PLAGNIOL-VILLARD
2013-05-14 12:19   ` Linus Walleij
2013-05-14 12:19     ` Linus Walleij
2013-06-06  8:43   ` Jean-Christophe PLAGNIOL-VILLARD
2013-06-06  8:43     ` Jean-Christophe PLAGNIOL-VILLARD
2013-05-10  8:17 ` [RFC 19/42] drivers/pinctrl/spear: " Wolfram Sang
2013-05-12 15:10   ` Viresh Kumar
2013-05-12 15:10     ` Viresh Kumar
2013-05-14 12:56   ` Linus Walleij
2013-05-14 12:56     ` Linus Walleij
2013-05-10  8:17 ` [RFC 20/42] drivers/pwm: " Wolfram Sang
     [not found]   ` <1368173847-5661-21-git-send-email-wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
2013-05-12 15:12     ` Viresh Kumar
2013-05-12 15:12       ` Viresh Kumar
2013-05-12 15:12       ` Viresh Kumar
2013-05-10  8:17 ` [RFC 21/42] drivers/remoteproc: " Wolfram Sang
2013-05-10  8:17 ` [RFC 22/42] drivers/rtc: " Wolfram Sang
     [not found]   ` <1368173847-5661-23-git-send-email-wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
2013-05-12 15:11     ` Viresh Kumar
2013-05-12 15:11       ` Viresh Kumar
2013-05-12 15:11       ` Viresh Kumar
2013-05-10  8:17 ` [RFC 23/42] drivers/spi: " Wolfram Sang
     [not found]   ` <1368173847-5661-24-git-send-email-wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
2013-05-10 10:55     ` Mark Brown
2013-05-10 10:55       ` Mark Brown
2013-05-10 10:55       ` Mark Brown
2013-05-10 16:37   ` Stephen Warren
2013-05-10 16:37     ` Stephen Warren
2013-05-11  5:24   ` Jingoo Han
2013-05-11  5:24     ` Jingoo Han
2013-05-10  8:17 ` [RFC 24/42] drivers/staging/dwc2: " Wolfram Sang
2013-05-10 15:24   ` Greg Kroah-Hartman
2013-05-10  8:17 ` [RFC 25/42] drivers/staging/nvec: " Wolfram Sang
2013-05-10  8:17   ` Wolfram Sang
2013-05-10 15:24   ` Greg Kroah-Hartman
     [not found]   ` <1368173847-5661-26-git-send-email-wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
2013-05-10 16:07     ` Marc Dietrich
2013-05-10 16:07       ` Marc Dietrich
2013-05-10  8:17 ` [RFC 26/42] drivers/thermal: " Wolfram Sang
2013-05-10 13:50   ` Eduardo Valentin
2013-05-10 13:50     ` Eduardo Valentin
2013-05-16  7:22   ` Zhang Rui
2013-05-10  8:17 ` [RFC 27/42] drivers/tty/serial: " Wolfram Sang
2013-05-10 15:26   ` Greg Kroah-Hartman
2013-05-10 17:58     ` Wolfram Sang
2013-05-10  8:17 ` [RFC 28/42] drivers/usb/chipidea: " Wolfram Sang
2013-05-10 15:25   ` Greg Kroah-Hartman
2013-05-10  8:17 ` [RFC 29/42] drivers/usb/gadget: " Wolfram Sang
2013-05-10 15:25   ` Greg Kroah-Hartman
2013-05-10  8:17 ` [RFC 30/42] drivers/usb/host: " Wolfram Sang
2013-05-10 14:03   ` Alan Stern
2013-05-10 18:00     ` Wolfram Sang
2013-05-10 15:25   ` Greg Kroah-Hartman
2013-05-10  8:17 ` [RFC 31/42] drivers/usb/phy: " Wolfram Sang
2013-05-10 15:24   ` Greg Kroah-Hartman
2013-05-10  8:17 ` [RFC 32/42] drivers/video: " Wolfram Sang
2013-05-10  8:17   ` Wolfram Sang
2013-05-11  5:33   ` Jingoo Han
2013-05-11  5:33     ` Jingoo Han
2013-05-13  5:39     ` Shawn Guo
2013-05-13  5:39       ` Shawn Guo
2013-05-10  8:17 ` [RFC 33/42] drivers/video/omap2: " Wolfram Sang
2013-05-10  8:17   ` Wolfram Sang
2013-05-11  5:37   ` Jingoo Han
2013-05-11  5:37     ` Jingoo Han
2013-05-10  8:17 ` [RFC 34/42] drivers/video/omap2/dss: " Wolfram Sang
2013-05-10  8:17   ` Wolfram Sang
2013-05-11  5:36   ` Jingoo Han
2013-05-11  5:36     ` Jingoo Han
2013-05-10  8:17 ` [RFC 35/42] drivers/w1/masters: " Wolfram Sang
2013-05-10  8:17 ` [RFC 36/42] drivers/watchdog: " Wolfram Sang
2013-05-12 17:23   ` Wim Van Sebroeck
2013-05-10  8:17 ` [RFC 37/42] arch/arm/mach-tegra: " Wolfram Sang
2013-05-10  8:17 ` [RFC 38/42] arch/arm/plat-omap: " Wolfram Sang
2013-05-10 16:46   ` Tony Lindgren
2013-05-10 16:46     ` Tony Lindgren
2013-05-10  8:17 ` [RFC 39/42] arch/arm/plat-samsung: " Wolfram Sang
2013-05-11  5:15   ` Jingoo Han
2013-05-11  5:15     ` Jingoo Han
2013-05-10  8:17 ` [RFC 40/42] arch/mips/lantiq/xway: " Wolfram Sang
2013-05-10  8:57   ` John Crispin
2013-05-10  8:17 ` [RFC 41/42] sound/soc/fsl: " Wolfram Sang
2013-05-10 10:56   ` Mark Brown
2013-05-10 10:56     ` Mark Brown
2013-05-10  8:17 ` [RFC 42/42] sound/soc/kirkwood: " Wolfram Sang
2013-05-10 10:56   ` Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1368173847-5661-10-git-send-email-wsa@the-dreams.de \
    --to=wsa@the-dreams.de \
    --cc=baohua.song@csr.com \
    --cc=ben-linux@fluff.org \
    --cc=davinci-linux-open-source@linux.davincidsp.com \
    --cc=kgene.kim@samsung.com \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=nsekhar@ti.com \
    --cc=swarren@wwwdotorg.org \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.