* [RFC 01/42] drivers/ata: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 02/42] drivers/char/hw_random: " Wolfram Sang
` (40 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Tejun Heo, linux-ide
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/ata/pata_ep93xx.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/ata/pata_ep93xx.c b/drivers/ata/pata_ep93xx.c
index c1bfaf4..980b88e 100644
--- a/drivers/ata/pata_ep93xx.c
+++ b/drivers/ata/pata_ep93xx.c
@@ -933,11 +933,6 @@ static int ep93xx_pata_probe(struct platform_device *pdev)
}
mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!mem_res) {
- err = -ENXIO;
- goto err_rel_gpio;
- }
-
ide_base = devm_ioremap_resource(&pdev->dev, mem_res);
if (IS_ERR(ide_base)) {
err = PTR_ERR(ide_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 02/42] drivers/char/hw_random: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
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 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 03/42] drivers/cpufreq: " Wolfram Sang
` (39 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Matt Mackall, Herbert Xu, Deepak Saxena
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/char/hw_random/mxc-rnga.c | 6 ------
drivers/char/hw_random/omap-rng.c | 5 -----
2 files changed, 11 deletions(-)
diff --git a/drivers/char/hw_random/mxc-rnga.c b/drivers/char/hw_random/mxc-rnga.c
index 4ca35e8..19a12ac 100644
--- a/drivers/char/hw_random/mxc-rnga.c
+++ b/drivers/char/hw_random/mxc-rnga.c
@@ -167,11 +167,6 @@ static int __init mxc_rnga_probe(struct platform_device *pdev)
clk_prepare_enable(mxc_rng->clk);
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- err = -ENOENT;
- goto err_region;
- }
-
mxc_rng->mem = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(mxc_rng->mem)) {
err = PTR_ERR(mxc_rng->mem);
@@ -189,7 +184,6 @@ static int __init mxc_rnga_probe(struct platform_device *pdev)
return 0;
err_ioremap:
-err_region:
clk_disable_unprepare(mxc_rng->clk);
out:
diff --git a/drivers/char/hw_random/omap-rng.c b/drivers/char/hw_random/omap-rng.c
index 749dc16..d2903e7 100644
--- a/drivers/char/hw_random/omap-rng.c
+++ b/drivers/char/hw_random/omap-rng.c
@@ -119,11 +119,6 @@ static int omap_rng_probe(struct platform_device *pdev)
dev_set_drvdata(&pdev->dev, priv);
priv->mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!priv->mem_res) {
- ret = -ENOENT;
- goto err_ioremap;
- }
-
priv->base = devm_ioremap_resource(&pdev->dev, priv->mem_res);
if (IS_ERR(priv->base)) {
ret = PTR_ERR(priv->base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 03/42] drivers/cpufreq: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
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 ` Wolfram Sang
2013-05-10 11:09 ` Rafael J. Wysocki
2013-05-10 8:16 ` [RFC 04/42] drivers/dma: " Wolfram Sang
` (38 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Rafael J. Wysocki, Viresh Kumar, cpufreq, linux-pm
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/cpufreq/kirkwood-cpufreq.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/drivers/cpufreq/kirkwood-cpufreq.c b/drivers/cpufreq/kirkwood-cpufreq.c
index d36ea8d..b2644af 100644
--- a/drivers/cpufreq/kirkwood-cpufreq.c
+++ b/drivers/cpufreq/kirkwood-cpufreq.c
@@ -171,10 +171,6 @@ static int kirkwood_cpufreq_probe(struct platform_device *pdev)
priv.dev = &pdev->dev;
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Cannot get memory resource\n");
- return -ENODEV;
- }
priv.base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(priv.base))
return PTR_ERR(priv.base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (2 preceding siblings ...)
2013-05-10 8:16 ` [RFC 03/42] drivers/cpufreq: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 16:35 ` Stephen Warren
2013-05-10 8:16 ` [RFC 05/42] drivers/gpio: " Wolfram Sang
` (37 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Vinod Koul, Dan Williams, Stephen Warren, linux-tegra
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/dma/tegra20-apb-dma.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
index fcee27e..53e1375 100644
--- a/drivers/dma/tegra20-apb-dma.c
+++ b/drivers/dma/tegra20-apb-dma.c
@@ -1279,11 +1279,6 @@ static int tegra_dma_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, tdma);
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "No mem resource for DMA\n");
- return -EINVAL;
- }
-
tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(tdma->base_addr))
return PTR_ERR(tdma->base_addr);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 05/42] drivers/gpio: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (3 preceding siblings ...)
2013-05-10 8:16 ` [RFC 04/42] drivers/dma: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-12 15:11 ` Viresh Kumar
2013-05-10 8:16 ` [RFC 06/42] drivers/gpu/drm/exynos: " Wolfram Sang
` (36 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Grant Likely, Linus Walleij, Stephen Warren, linux-tegra
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/gpio/gpio-mvebu.c | 12 +-----------
drivers/gpio/gpio-spear-spics.c | 7 +------
drivers/gpio/gpio-tegra.c | 5 -----
3 files changed, 2 insertions(+), 22 deletions(-)
diff --git a/drivers/gpio/gpio-mvebu.c b/drivers/gpio/gpio-mvebu.c
index bf69a7e..60e8c6e 100644
--- a/drivers/gpio/gpio-mvebu.c
+++ b/drivers/gpio/gpio-mvebu.c
@@ -566,12 +566,6 @@ static int mvebu_gpio_probe(struct platform_device *pdev)
else
soc_variant = MVEBU_GPIO_SOC_VARIANT_ORION;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Cannot get memory resource\n");
- return -ENODEV;
- }
-
mvchip = devm_kzalloc(&pdev->dev, sizeof(struct mvebu_gpio_chip), GFP_KERNEL);
if (!mvchip) {
dev_err(&pdev->dev, "Cannot allocate memory\n");
@@ -611,6 +605,7 @@ static int mvebu_gpio_probe(struct platform_device *pdev)
mvchip->chip.dbg_show = mvebu_gpio_dbg_show;
spin_lock_init(&mvchip->lock);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
mvchip->membase = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(mvchip->membase))
return PTR_ERR(mvchip->membase);
@@ -619,11 +614,6 @@ static int mvebu_gpio_probe(struct platform_device *pdev)
* per-CPU registers */
if (soc_variant == MVEBU_GPIO_SOC_VARIANT_ARMADAXP) {
res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
- if (!res) {
- dev_err(&pdev->dev, "Cannot get memory resource\n");
- return -ENODEV;
- }
-
mvchip->percpu_membase = devm_ioremap_resource(&pdev->dev,
res);
if (IS_ERR(mvchip->percpu_membase))
diff --git a/drivers/gpio/gpio-spear-spics.c b/drivers/gpio/gpio-spear-spics.c
index 7a4bf7c..e9a0415 100644
--- a/drivers/gpio/gpio-spear-spics.c
+++ b/drivers/gpio/gpio-spear-spics.c
@@ -128,18 +128,13 @@ static int spics_gpio_probe(struct platform_device *pdev)
struct resource *res;
int ret;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "invalid IORESOURCE_MEM\n");
- return -EBUSY;
- }
-
spics = devm_kzalloc(&pdev->dev, sizeof(*spics), GFP_KERNEL);
if (!spics) {
dev_err(&pdev->dev, "memory allocation fail\n");
return -ENOMEM;
}
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
spics->base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(spics->base))
return PTR_ERR(spics->base);
diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c
index da4cb5b..9a62672 100644
--- a/drivers/gpio/gpio-tegra.c
+++ b/drivers/gpio/gpio-tegra.c
@@ -463,11 +463,6 @@ static int tegra_gpio_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Missing MEM resource\n");
- return -ENODEV;
- }
-
regs = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(regs))
return PTR_ERR(regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 06/42] drivers/gpu/drm/exynos: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (4 preceding siblings ...)
2013-05-10 8:16 ` [RFC 05/42] drivers/gpio: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 07/42] drivers/gpu/host1x: " Wolfram Sang
` (35 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Inki Dae, Joonyoung Shim, Seung-Woo Kim,
Kyungmin Park, David Airlie, dri-devel
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/gpu/drm/exynos/exynos_hdmi.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
index bbfc384..6652597 100644
--- a/drivers/gpu/drm/exynos/exynos_hdmi.c
+++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
@@ -2005,11 +2005,6 @@ static int hdmi_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- DRM_ERROR("failed to find registers\n");
- return -ENOENT;
- }
-
hdata->regs = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(hdata->regs))
return PTR_ERR(hdata->regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 07/42] drivers/gpu/host1x: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (5 preceding siblings ...)
2013-05-10 8:16 ` [RFC 06/42] drivers/gpu/drm/exynos: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 08/42] drivers/gpu/host1x/drm: " Wolfram Sang
` (34 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang
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/gpu/host1x/dev.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/gpu/host1x/dev.c b/drivers/gpu/host1x/dev.c
index 28e28a2..e615edd 100644
--- a/drivers/gpu/host1x/dev.c
+++ b/drivers/gpu/host1x/dev.c
@@ -98,12 +98,6 @@ static int host1x_probe(struct platform_device *pdev)
if (!id)
return -EINVAL;
- regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!regs) {
- dev_err(&pdev->dev, "failed to get registers\n");
- return -ENXIO;
- }
-
syncpt_irq = platform_get_irq(pdev, 0);
if (syncpt_irq < 0) {
dev_err(&pdev->dev, "failed to get IRQ\n");
@@ -120,6 +114,7 @@ static int host1x_probe(struct platform_device *pdev)
/* set common host1x device data */
platform_set_drvdata(pdev, host);
+ regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
host->regs = devm_ioremap_resource(&pdev->dev, regs);
if (IS_ERR(host->regs))
return PTR_ERR(host->regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 08/42] drivers/gpu/host1x/drm: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (6 preceding siblings ...)
2013-05-10 8:16 ` [RFC 07/42] drivers/gpu/host1x: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 09/42] drivers/i2c/busses: " Wolfram Sang
` (33 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang
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/gpu/host1x/drm/dc.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/gpu/host1x/drm/dc.c b/drivers/gpu/host1x/drm/dc.c
index 1e20603..8c04943 100644
--- a/drivers/gpu/host1x/drm/dc.c
+++ b/drivers/gpu/host1x/drm/dc.c
@@ -1128,11 +1128,6 @@ static int tegra_dc_probe(struct platform_device *pdev)
return err;
regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!regs) {
- dev_err(&pdev->dev, "failed to get registers\n");
- return -ENXIO;
- }
-
dc->regs = devm_ioremap_resource(&pdev->dev, regs);
if (IS_ERR(dc->regs))
return PTR_ERR(dc->regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 09/42] drivers/i2c/busses: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (7 preceding siblings ...)
2013-05-10 8:16 ` [RFC 08/42] drivers/gpu/host1x/drm: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-11 5:18 ` Jingoo Han
2013-06-04 18:34 ` Kevin Hilman
2013-05-10 8:16 ` [RFC 10/42] drivers/input/keyboard: " Wolfram Sang
` (32 subsequent siblings)
41 siblings, 2 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Sekhar Nori, Kevin Hilman, Tony Lindgren,
Ben Dooks, Kukjin Kim, Barry Song, Stephen Warren,
davinci-linux-open-source, linux-i2c, linux-omap,
linux-arm-kernel, linux-samsung-soc, linux-tegra
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
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 10/42] drivers/input/keyboard: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (8 preceding siblings ...)
2013-05-10 8:16 ` [RFC 09/42] drivers/i2c/busses: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-12 15:12 ` Viresh Kumar
2013-05-10 8:16 ` [RFC 11/42] drivers/input/serio: " Wolfram Sang
` (31 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Dmitry Torokhov, Stephen Warren, linux-input, linux-tegra
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/input/keyboard/imx_keypad.c | 7 +------
drivers/input/keyboard/spear-keyboard.c | 7 +------
drivers/input/keyboard/tegra-kbc.c | 7 +------
3 files changed, 3 insertions(+), 18 deletions(-)
diff --git a/drivers/input/keyboard/imx_keypad.c b/drivers/input/keyboard/imx_keypad.c
index 03c8cc5..328cfc1 100644
--- a/drivers/input/keyboard/imx_keypad.c
+++ b/drivers/input/keyboard/imx_keypad.c
@@ -442,12 +442,6 @@ static int imx_keypad_probe(struct platform_device *pdev)
return -EINVAL;
}
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (res == NULL) {
- dev_err(&pdev->dev, "no I/O memory defined in platform data\n");
- return -EINVAL;
- }
-
input_dev = devm_input_allocate_device(&pdev->dev);
if (!input_dev) {
dev_err(&pdev->dev, "failed to allocate the input device\n");
@@ -468,6 +462,7 @@ static int imx_keypad_probe(struct platform_device *pdev)
setup_timer(&keypad->check_matrix_timer,
imx_keypad_check_for_events, (unsigned long) keypad);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
keypad->mmio_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(keypad->mmio_base))
return PTR_ERR(keypad->mmio_base);
diff --git a/drivers/input/keyboard/spear-keyboard.c b/drivers/input/keyboard/spear-keyboard.c
index cb1e8f6..b2e77e4 100644
--- a/drivers/input/keyboard/spear-keyboard.c
+++ b/drivers/input/keyboard/spear-keyboard.c
@@ -191,12 +191,6 @@ static int spear_kbd_probe(struct platform_device *pdev)
int irq;
int error;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "no keyboard resource defined\n");
- return -EBUSY;
- }
-
irq = platform_get_irq(pdev, 0);
if (irq < 0) {
dev_err(&pdev->dev, "not able to get irq for the device\n");
@@ -228,6 +222,7 @@ static int spear_kbd_probe(struct platform_device *pdev)
kbd->suspended_rate = pdata->suspended_rate;
}
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
kbd->io_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(kbd->io_base))
return PTR_ERR(kbd->io_base);
diff --git a/drivers/input/keyboard/tegra-kbc.c b/drivers/input/keyboard/tegra-kbc.c
index b46142f..9cd20e6 100644
--- a/drivers/input/keyboard/tegra-kbc.c
+++ b/drivers/input/keyboard/tegra-kbc.c
@@ -638,12 +638,6 @@ static int tegra_kbc_probe(struct platform_device *pdev)
if (!tegra_kbc_check_pin_cfg(kbc, &num_rows))
return -EINVAL;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "failed to get I/O memory\n");
- return -ENXIO;
- }
-
kbc->irq = platform_get_irq(pdev, 0);
if (kbc->irq < 0) {
dev_err(&pdev->dev, "failed to get keyboard IRQ\n");
@@ -658,6 +652,7 @@ static int tegra_kbc_probe(struct platform_device *pdev)
setup_timer(&kbc->timer, tegra_kbc_keypress_timer, (unsigned long)kbc);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
kbc->mmio = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(kbc->mmio))
return PTR_ERR(kbc->mmio);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 11/42] drivers/input/serio: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (9 preceding siblings ...)
2013-05-10 8:16 ` [RFC 10/42] drivers/input/keyboard: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 12/42] drivers/memory: " Wolfram Sang
` (30 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Dmitry Torokhov, linux-input
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/input/serio/arc_ps2.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/input/serio/arc_ps2.c b/drivers/input/serio/arc_ps2.c
index 3fb7727..8024a6d 100644
--- a/drivers/input/serio/arc_ps2.c
+++ b/drivers/input/serio/arc_ps2.c
@@ -189,12 +189,6 @@ static int arc_ps2_probe(struct platform_device *pdev)
int irq;
int error, id, i;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "no IO memory defined\n");
- return -EINVAL;
- }
-
irq = platform_get_irq_byname(pdev, "arc_ps2_irq");
if (irq < 0) {
dev_err(&pdev->dev, "no IRQ defined\n");
@@ -208,6 +202,7 @@ static int arc_ps2_probe(struct platform_device *pdev)
return -ENOMEM;
}
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
arc_ps2->addr = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(arc_ps2->addr))
return PTR_ERR(arc_ps2->addr);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 12/42] drivers/memory: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (10 preceding siblings ...)
2013-05-10 8:16 ` [RFC 11/42] drivers/input/serio: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 13/42] drivers/mfd: " Wolfram Sang
` (29 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang
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/memory/emif.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/drivers/memory/emif.c b/drivers/memory/emif.c
index cadf1cc..04644e7 100644
--- a/drivers/memory/emif.c
+++ b/drivers/memory/emif.c
@@ -1560,12 +1560,6 @@ static int __init_or_module emif_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, emif);
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(emif->dev, "%s: error getting memory resource\n",
- __func__);
- goto error;
- }
-
emif->base = devm_ioremap_resource(emif->dev, res);
if (IS_ERR(emif->base))
goto error;
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 13/42] drivers/mfd: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (11 preceding siblings ...)
2013-05-10 8:16 ` [RFC 12/42] drivers/memory: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-16 22:15 ` Samuel Ortiz
2013-05-10 8:16 ` [RFC 14/42] drivers/misc: " Wolfram Sang
` (28 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Samuel Ortiz
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/mfd/intel_msic.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/drivers/mfd/intel_msic.c b/drivers/mfd/intel_msic.c
index 5be3b5e..b1a9461 100644
--- a/drivers/mfd/intel_msic.c
+++ b/drivers/mfd/intel_msic.c
@@ -413,12 +413,8 @@ static int intel_msic_probe(struct platform_device *pdev)
* Map in the MSIC interrupt tree area in SRAM. This is exposed to
* the clients via intel_msic_irq_read().
*/
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "failed to get SRAM iomem resource\n");
- return -ENODEV;
- }
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
msic->irq_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(msic->irq_base))
return PTR_ERR(msic->irq_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 14/42] drivers/misc: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (12 preceding siblings ...)
2013-05-10 8:16 ` [RFC 13/42] drivers/mfd: " Wolfram Sang
@ 2013-05-10 8:16 ` Wolfram Sang
2013-05-10 15:24 ` Greg Kroah-Hartman
2013-05-10 8:17 ` [RFC 15/42] drivers/mtd/maps: " Wolfram Sang
` (27 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:16 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Arnd Bergmann, Greg Kroah-Hartman
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/misc/atmel-ssc.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/misc/atmel-ssc.c b/drivers/misc/atmel-ssc.c
index c09c28f..1abd5ad 100644
--- a/drivers/misc/atmel-ssc.c
+++ b/drivers/misc/atmel-ssc.c
@@ -154,11 +154,6 @@ static int ssc_probe(struct platform_device *pdev)
ssc->pdata = (struct atmel_ssc_platform_data *)plat_dat;
regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!regs) {
- dev_dbg(&pdev->dev, "no mmio resource defined\n");
- return -ENXIO;
- }
-
ssc->regs = devm_ioremap_resource(&pdev->dev, regs);
if (IS_ERR(ssc->regs))
return PTR_ERR(ssc->regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 15/42] drivers/mtd/maps: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (13 preceding siblings ...)
2013-05-10 8:16 ` [RFC 14/42] drivers/misc: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 8:17 ` [RFC 16/42] drivers/mtd/nand: " Wolfram Sang
` (26 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, David Woodhouse, linux-mtd
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/mtd/maps/autcpu12-nvram.c | 7 +------
drivers/mtd/maps/lantiq-flash.c | 8 +-------
2 files changed, 2 insertions(+), 13 deletions(-)
diff --git a/drivers/mtd/maps/autcpu12-nvram.c b/drivers/mtd/maps/autcpu12-nvram.c
index c3525d2..58853b0 100644
--- a/drivers/mtd/maps/autcpu12-nvram.c
+++ b/drivers/mtd/maps/autcpu12-nvram.c
@@ -47,15 +47,10 @@ static int autcpu12_nvram_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, priv);
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "failed to get memory resource\n");
- return -ENOENT;
- }
-
priv->map.bankwidth = 4;
priv->map.phys = res->start;
priv->map.size = resource_size(res);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
priv->map.virt = devm_ioremap_resource(&pdev->dev, res);
strcpy((char *)priv->map.name, res->name);
if (IS_ERR(priv->map.virt))
diff --git a/drivers/mtd/maps/lantiq-flash.c b/drivers/mtd/maps/lantiq-flash.c
index d1da6ed..f405c34 100644
--- a/drivers/mtd/maps/lantiq-flash.c
+++ b/drivers/mtd/maps/lantiq-flash.c
@@ -127,16 +127,10 @@ ltq_mtd_probe(struct platform_device *pdev)
ltq_mtd = kzalloc(sizeof(struct ltq_mtd), GFP_KERNEL);
platform_set_drvdata(pdev, ltq_mtd);
- ltq_mtd->res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!ltq_mtd->res) {
- dev_err(&pdev->dev, "failed to get memory resource\n");
- err = -ENOENT;
- goto err_out;
- }
-
ltq_mtd->map = kzalloc(sizeof(struct map_info), GFP_KERNEL);
ltq_mtd->map->phys = ltq_mtd->res->start;
ltq_mtd->map->size = resource_size(ltq_mtd->res);
+ ltq_mtd->res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
ltq_mtd->map->virt = devm_ioremap_resource(&pdev->dev, ltq_mtd->res);
if (IS_ERR(ltq_mtd->map->virt)) {
err = PTR_ERR(ltq_mtd->map->virt);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 16/42] drivers/mtd/nand: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (14 preceding siblings ...)
2013-05-10 8:17 ` [RFC 15/42] drivers/mtd/maps: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 8:17 ` [RFC 17/42] drivers/net/ethernet/renesas: " Wolfram Sang
` (25 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, David Woodhouse, linux-mtd
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/mtd/nand/lpc32xx_mlc.c | 5 -----
drivers/mtd/nand/lpc32xx_slc.c | 7 +------
2 files changed, 1 insertion(+), 11 deletions(-)
diff --git a/drivers/mtd/nand/lpc32xx_mlc.c b/drivers/mtd/nand/lpc32xx_mlc.c
index 0ca22ae..3a5762c 100644
--- a/drivers/mtd/nand/lpc32xx_mlc.c
+++ b/drivers/mtd/nand/lpc32xx_mlc.c
@@ -672,11 +672,6 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
}
rc = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (rc == NULL) {
- dev_err(&pdev->dev, "No memory resource found for device!\r\n");
- return -ENXIO;
- }
-
host->io_base = devm_ioremap_resource(&pdev->dev, rc);
if (IS_ERR(host->io_base))
return PTR_ERR(host->io_base);
diff --git a/drivers/mtd/nand/lpc32xx_slc.c b/drivers/mtd/nand/lpc32xx_slc.c
index be94ed5..f342f7b 100644
--- a/drivers/mtd/nand/lpc32xx_slc.c
+++ b/drivers/mtd/nand/lpc32xx_slc.c
@@ -764,12 +764,6 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
struct mtd_part_parser_data ppdata = {};
int res;
- rc = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (rc == NULL) {
- dev_err(&pdev->dev, "No memory resource found for device\n");
- return -EBUSY;
- }
-
/* Allocate memory for the device structure (and zero it) */
host = devm_kzalloc(&pdev->dev, sizeof(*host), GFP_KERNEL);
if (!host) {
@@ -778,6 +772,7 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
}
host->io_base_dma = rc->start;
+ rc = platform_get_resource(pdev, IORESOURCE_MEM, 0);
host->io_base = devm_ioremap_resource(&pdev->dev, rc);
if (IS_ERR(host->io_base))
return PTR_ERR(host->io_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (15 preceding siblings ...)
2013-05-10 8:17 ` [RFC 16/42] drivers/mtd/nand: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 11:07 ` Sergei Shtylyov
2013-05-11 20:35 ` Sergei Shtylyov
2013-05-10 8:17 ` [RFC 18/42] drivers/pinctrl: " Wolfram Sang
` (24 subsequent siblings)
41 siblings, 2 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, netdev
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/net/ethernet/renesas/sh_eth.c | 14 +-------------
1 file changed, 1 insertion(+), 13 deletions(-)
diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c
index 33dc6f2..6175839 100644
--- a/drivers/net/ethernet/renesas/sh_eth.c
+++ b/drivers/net/ethernet/renesas/sh_eth.c
@@ -2661,14 +2661,6 @@ static int sh_eth_drv_probe(struct platform_device *pdev)
struct sh_eth_private *mdp = NULL;
struct sh_eth_plat_data *pd = pdev->dev.platform_data;
- /* get base addr */
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (unlikely(res == NULL)) {
- dev_err(&pdev->dev, "invalid resource\n");
- ret = -EINVAL;
- goto out;
- }
-
ndev = alloc_etherdev(sizeof(struct sh_eth_private));
if (!ndev) {
ret = -ENOMEM;
@@ -2697,6 +2689,7 @@ static int sh_eth_drv_probe(struct platform_device *pdev)
mdp = netdev_priv(ndev);
mdp->num_tx_ring = TX_RING_SIZE;
mdp->num_rx_ring = RX_RING_SIZE;
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
mdp->addr = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(mdp->addr)) {
ret = PTR_ERR(mdp->addr);
@@ -2745,11 +2738,6 @@ static int sh_eth_drv_probe(struct platform_device *pdev)
if (mdp->cd->tsu) {
struct resource *rtsu;
rtsu = platform_get_resource(pdev, IORESOURCE_MEM, 1);
- if (!rtsu) {
- dev_err(&pdev->dev, "Not found TSU resource\n");
- ret = -ENODEV;
- goto out_release;
- }
mdp->tsu_addr = devm_ioremap_resource(&pdev->dev, rtsu);
if (IS_ERR(mdp->tsu_addr)) {
ret = PTR_ERR(mdp->tsu_addr);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 18/42] drivers/pinctrl: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (16 preceding siblings ...)
2013-05-10 8:17 ` [RFC 17/42] drivers/net/ethernet/renesas: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 14:30 ` Jean-Christophe PLAGNIOL-VILLARD
` (2 more replies)
2013-05-10 8:17 ` [RFC 19/42] drivers/pinctrl/spear: " Wolfram Sang
` (23 subsequent siblings)
41 siblings, 3 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Jean-Christophe Plagniol-Villard, Linus Walleij,
linux-arm-kernel
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/pinctrl/pinctrl-at91.c | 7 +------
drivers/pinctrl/pinctrl-coh901.c | 5 -----
drivers/pinctrl/pinctrl-exynos5440.c | 5 -----
drivers/pinctrl/pinctrl-samsung.c | 5 -----
drivers/pinctrl/pinctrl-xway.c | 4 ----
5 files changed, 1 insertion(+), 25 deletions(-)
diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index 5d7529e..b90a3a0 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -1543,12 +1543,6 @@ static int at91_gpio_probe(struct platform_device *pdev)
goto err;
}
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- ret = -ENOENT;
- goto err;
- }
-
irq = platform_get_irq(pdev, 0);
if (irq < 0) {
ret = irq;
@@ -1561,6 +1555,7 @@ static int at91_gpio_probe(struct platform_device *pdev)
goto err;
}
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
at91_chip->regbase = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(at91_chip->regbase)) {
ret = PTR_ERR(at91_chip->regbase);
diff --git a/drivers/pinctrl/pinctrl-coh901.c b/drivers/pinctrl/pinctrl-coh901.c
index edde3ac..a67af41 100644
--- a/drivers/pinctrl/pinctrl-coh901.c
+++ b/drivers/pinctrl/pinctrl-coh901.c
@@ -713,11 +713,6 @@ static int __init u300_gpio_probe(struct platform_device *pdev)
gpio->dev = &pdev->dev;
memres = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!memres) {
- dev_err(gpio->dev, "could not get GPIO memory resource\n");
- return -ENODEV;
- }
-
gpio->base = devm_ioremap_resource(&pdev->dev, memres);
if (IS_ERR(gpio->base))
return PTR_ERR(gpio->base);
diff --git a/drivers/pinctrl/pinctrl-exynos5440.c b/drivers/pinctrl/pinctrl-exynos5440.c
index 6038503..32a48f4 100644
--- a/drivers/pinctrl/pinctrl-exynos5440.c
+++ b/drivers/pinctrl/pinctrl-exynos5440.c
@@ -1000,11 +1000,6 @@ static int exynos5440_pinctrl_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(dev, "cannot find IO resource\n");
- return -ENOENT;
- }
-
priv->reg_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(priv->reg_base))
return PTR_ERR(priv->reg_base);
diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c
index 9763668..055d016 100644
--- a/drivers/pinctrl/pinctrl-samsung.c
+++ b/drivers/pinctrl/pinctrl-samsung.c
@@ -932,11 +932,6 @@ static int samsung_pinctrl_probe(struct platform_device *pdev)
drvdata->dev = dev;
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(dev, "cannot find IO resource\n");
- return -ENOENT;
- }
-
drvdata->virt_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(drvdata->virt_base))
return PTR_ERR(drvdata->virt_base);
diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
index f2977cf..e92132c 100644
--- a/drivers/pinctrl/pinctrl-xway.c
+++ b/drivers/pinctrl/pinctrl-xway.c
@@ -716,10 +716,6 @@ static int pinmux_xway_probe(struct platform_device *pdev)
/* get and remap our register range */
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Failed to get resource\n");
- return -ENOENT;
- }
xway_info.membase[0] = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(xway_info.membase[0]))
return PTR_ERR(xway_info.membase[0]);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 19/42] drivers/pinctrl/spear: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (17 preceding siblings ...)
2013-05-10 8:17 ` [RFC 18/42] drivers/pinctrl: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-12 15:10 ` Viresh Kumar
2013-05-14 12:56 ` Linus Walleij
2013-05-10 8:17 ` [RFC 20/42] drivers/pwm: " Wolfram Sang
` (22 subsequent siblings)
41 siblings, 2 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Viresh Kumar, Linus Walleij, spear-devel, linux-arm-kernel
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/pinctrl/spear/pinctrl-plgpio.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/pinctrl/spear/pinctrl-plgpio.c b/drivers/pinctrl/spear/pinctrl-plgpio.c
index 3e5a887..6b090be 100644
--- a/drivers/pinctrl/spear/pinctrl-plgpio.c
+++ b/drivers/pinctrl/spear/pinctrl-plgpio.c
@@ -528,18 +528,13 @@ static int plgpio_probe(struct platform_device *pdev)
struct resource *res;
int ret, irq, i;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "invalid IORESOURCE_MEM\n");
- return -EBUSY;
- }
-
plgpio = devm_kzalloc(&pdev->dev, sizeof(*plgpio), GFP_KERNEL);
if (!plgpio) {
dev_err(&pdev->dev, "memory allocation fail\n");
return -ENOMEM;
}
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
plgpio->base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(plgpio->base))
return PTR_ERR(plgpio->base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 20/42] drivers/pwm: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (18 preceding siblings ...)
2013-05-10 8:17 ` [RFC 19/42] drivers/pinctrl/spear: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-12 15:12 ` Viresh Kumar
2013-05-10 8:17 ` [RFC 21/42] drivers/remoteproc: " Wolfram Sang
` (21 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Thierry Reding, Stephen Warren, Tony Prisk,
linux-tegra, linux-arm-kernel
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/pwm/pwm-imx.c | 5 -----
drivers/pwm/pwm-puv3.c | 5 -----
drivers/pwm/pwm-pxa.c | 5 -----
drivers/pwm/pwm-spear.c | 7 +------
drivers/pwm/pwm-tegra.c | 5 -----
drivers/pwm/pwm-tiecap.c | 5 -----
drivers/pwm/pwm-tiehrpwm.c | 5 -----
drivers/pwm/pwm-tipwmss.c | 5 -----
drivers/pwm/pwm-vt8500.c | 5 -----
9 files changed, 1 insertion(+), 46 deletions(-)
diff --git a/drivers/pwm/pwm-imx.c b/drivers/pwm/pwm-imx.c
index ec28798..c938bae 100644
--- a/drivers/pwm/pwm-imx.c
+++ b/drivers/pwm/pwm-imx.c
@@ -265,11 +265,6 @@ static int imx_pwm_probe(struct platform_device *pdev)
imx->chip.npwm = 1;
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (r == NULL) {
- dev_err(&pdev->dev, "no memory resource defined\n");
- return -ENODEV;
- }
-
imx->mmio_base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(imx->mmio_base))
return PTR_ERR(imx->mmio_base);
diff --git a/drivers/pwm/pwm-puv3.c b/drivers/pwm/pwm-puv3.c
index d1eb499..ed6007b 100644
--- a/drivers/pwm/pwm-puv3.c
+++ b/drivers/pwm/pwm-puv3.c
@@ -117,11 +117,6 @@ static int pwm_probe(struct platform_device *pdev)
return PTR_ERR(puv3->clk);
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (r == NULL) {
- dev_err(&pdev->dev, "no memory resource defined\n");
- return -ENODEV;
- }
-
puv3->base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(puv3->base))
return PTR_ERR(puv3->base);
diff --git a/drivers/pwm/pwm-pxa.c b/drivers/pwm/pwm-pxa.c
index dee6ab55..dc97175 100644
--- a/drivers/pwm/pwm-pxa.c
+++ b/drivers/pwm/pwm-pxa.c
@@ -147,11 +147,6 @@ static int pwm_probe(struct platform_device *pdev)
pwm->chip.npwm = (id->driver_data & HAS_SECONDARY_PWM) ? 2 : 1;
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (r == NULL) {
- dev_err(&pdev->dev, "no memory resource defined\n");
- return -ENODEV;
- }
-
pwm->mmio_base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(pwm->mmio_base))
return PTR_ERR(pwm->mmio_base);
diff --git a/drivers/pwm/pwm-spear.c b/drivers/pwm/pwm-spear.c
index 6d99e2c..8af6ea8 100644
--- a/drivers/pwm/pwm-spear.c
+++ b/drivers/pwm/pwm-spear.c
@@ -178,18 +178,13 @@ static int spear_pwm_probe(struct platform_device *pdev)
int ret;
u32 val;
- r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "no memory resources defined\n");
- return -ENODEV;
- }
-
pc = devm_kzalloc(&pdev->dev, sizeof(*pc), GFP_KERNEL);
if (!pc) {
dev_err(&pdev->dev, "failed to allocate memory\n");
return -ENOMEM;
}
+ r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
pc->mmio_base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(pc->mmio_base))
return PTR_ERR(pc->mmio_base);
diff --git a/drivers/pwm/pwm-tegra.c b/drivers/pwm/pwm-tegra.c
index 3d75f4a..a540293 100644
--- a/drivers/pwm/pwm-tegra.c
+++ b/drivers/pwm/pwm-tegra.c
@@ -181,11 +181,6 @@ static int tegra_pwm_probe(struct platform_device *pdev)
pwm->dev = &pdev->dev;
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "no memory resources defined\n");
- return -ENODEV;
- }
-
pwm->mmio_base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(pwm->mmio_base))
return PTR_ERR(pwm->mmio_base);
diff --git a/drivers/pwm/pwm-tiecap.c b/drivers/pwm/pwm-tiecap.c
index 0d65fb2..72ca42d 100644
--- a/drivers/pwm/pwm-tiecap.c
+++ b/drivers/pwm/pwm-tiecap.c
@@ -240,11 +240,6 @@ static int ecap_pwm_probe(struct platform_device *pdev)
pc->chip.npwm = 1;
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "no memory resource defined\n");
- return -ENODEV;
- }
-
pc->mmio_base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(pc->mmio_base))
return PTR_ERR(pc->mmio_base);
diff --git a/drivers/pwm/pwm-tiehrpwm.c b/drivers/pwm/pwm-tiehrpwm.c
index 6a21759..48a485c 100644
--- a/drivers/pwm/pwm-tiehrpwm.c
+++ b/drivers/pwm/pwm-tiehrpwm.c
@@ -471,11 +471,6 @@ static int ehrpwm_pwm_probe(struct platform_device *pdev)
pc->chip.npwm = NUM_PWM_CHANNEL;
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "no memory resource defined\n");
- return -ENODEV;
- }
-
pc->mmio_base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(pc->mmio_base))
return PTR_ERR(pc->mmio_base);
diff --git a/drivers/pwm/pwm-tipwmss.c b/drivers/pwm/pwm-tipwmss.c
index c9c3d3a..3b119bc 100644
--- a/drivers/pwm/pwm-tipwmss.c
+++ b/drivers/pwm/pwm-tipwmss.c
@@ -70,11 +70,6 @@ static int pwmss_probe(struct platform_device *pdev)
mutex_init(&info->pwmss_lock);
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "no memory resource defined\n");
- return -ENODEV;
- }
-
info->mmio_base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(info->mmio_base))
return PTR_ERR(info->mmio_base);
diff --git a/drivers/pwm/pwm-vt8500.c b/drivers/pwm/pwm-vt8500.c
index 69effd1..323125a 100644
--- a/drivers/pwm/pwm-vt8500.c
+++ b/drivers/pwm/pwm-vt8500.c
@@ -230,11 +230,6 @@ static int vt8500_pwm_probe(struct platform_device *pdev)
}
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (r == NULL) {
- dev_err(&pdev->dev, "no memory resource defined\n");
- return -ENODEV;
- }
-
chip->base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(chip->base))
return PTR_ERR(chip->base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 21/42] drivers/remoteproc: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (19 preceding siblings ...)
2013-05-10 8:17 ` [RFC 20/42] drivers/pwm: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 8:17 ` [RFC 22/42] drivers/rtc: " Wolfram Sang
` (20 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Ohad Ben-Cohen
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/remoteproc/da8xx_remoteproc.c | 14 +-------------
1 file changed, 1 insertion(+), 13 deletions(-)
diff --git a/drivers/remoteproc/da8xx_remoteproc.c b/drivers/remoteproc/da8xx_remoteproc.c
index 9b2e60a..95cedf5 100644
--- a/drivers/remoteproc/da8xx_remoteproc.c
+++ b/drivers/remoteproc/da8xx_remoteproc.c
@@ -201,23 +201,11 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
}
bootreg_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!bootreg_res) {
- dev_err(dev,
- "platform_get_resource(IORESOURCE_MEM, 0): NULL\n");
- return -EADDRNOTAVAIL;
- }
-
- chipsig_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
- if (!chipsig_res) {
- dev_err(dev,
- "platform_get_resource(IORESOURCE_MEM, 1): NULL\n");
- return -EADDRNOTAVAIL;
- }
-
bootreg = devm_ioremap_resource(dev, bootreg_res);
if (IS_ERR(bootreg))
return PTR_ERR(bootreg);
+ chipsig_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
chipsig = devm_ioremap_resource(dev, chipsig_res);
if (IS_ERR(chipsig))
return PTR_ERR(chipsig);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 22/42] drivers/rtc: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (20 preceding siblings ...)
2013-05-10 8:17 ` [RFC 21/42] drivers/remoteproc: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-12 15:11 ` Viresh Kumar
2013-05-10 8:17 ` [RFC 23/42] drivers/spi: " Wolfram Sang
` (19 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Wan ZongShun, Alessandro Zummo, Stephen Warren,
linux-arm-kernel, rtc-linux, linux-tegra
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/rtc/rtc-nuc900.c | 6 +-----
drivers/rtc/rtc-omap.c | 5 -----
drivers/rtc/rtc-s3c.c | 5 -----
drivers/rtc/rtc-spear.c | 7 +------
drivers/rtc/rtc-tegra.c | 6 ------
5 files changed, 2 insertions(+), 27 deletions(-)
diff --git a/drivers/rtc/rtc-nuc900.c b/drivers/rtc/rtc-nuc900.c
index f5dfb6e..c0f54ec 100644
--- a/drivers/rtc/rtc-nuc900.c
+++ b/drivers/rtc/rtc-nuc900.c
@@ -233,12 +233,8 @@ static int __init nuc900_rtc_probe(struct platform_device *pdev)
dev_err(&pdev->dev, "kzalloc nuc900_rtc failed\n");
return -ENOMEM;
}
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "platform_get_resource failed\n");
- return -ENXIO;
- }
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
nuc900_rtc->rtc_reg = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(nuc900_rtc->rtc_reg))
return PTR_ERR(nuc900_rtc->rtc_reg);
diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c
index 4e1bdb8..b0ba3fc 100644
--- a/drivers/rtc/rtc-omap.c
+++ b/drivers/rtc/rtc-omap.c
@@ -347,11 +347,6 @@ static int __init omap_rtc_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- pr_debug("%s: RTC resource data missing\n", pdev->name);
- return -ENOENT;
- }
-
rtc_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(rtc_base))
return PTR_ERR(rtc_base);
diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c
index 14040b2..0b495e8 100644
--- a/drivers/rtc/rtc-s3c.c
+++ b/drivers/rtc/rtc-s3c.c
@@ -477,11 +477,6 @@ static int s3c_rtc_probe(struct platform_device *pdev)
/* get the memory region */
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (res == NULL) {
- dev_err(&pdev->dev, "failed to get memory region resource\n");
- return -ENOENT;
- }
-
s3c_rtc_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(s3c_rtc_base))
return PTR_ERR(s3c_rtc_base);
diff --git a/drivers/rtc/rtc-spear.c b/drivers/rtc/rtc-spear.c
index 574359c..34eed6a 100644
--- a/drivers/rtc/rtc-spear.c
+++ b/drivers/rtc/rtc-spear.c
@@ -358,12 +358,6 @@ static int spear_rtc_probe(struct platform_device *pdev)
int status = 0;
int irq;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "no resource defined\n");
- return -EBUSY;
- }
-
config = devm_kzalloc(&pdev->dev, sizeof(*config), GFP_KERNEL);
if (!config) {
dev_err(&pdev->dev, "out of memory\n");
@@ -385,6 +379,7 @@ static int spear_rtc_probe(struct platform_device *pdev)
return status;
}
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
config->ioaddr = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(config->ioaddr))
return PTR_ERR(config->ioaddr);
diff --git a/drivers/rtc/rtc-tegra.c b/drivers/rtc/rtc-tegra.c
index a34315d..76af92a 100644
--- a/drivers/rtc/rtc-tegra.c
+++ b/drivers/rtc/rtc-tegra.c
@@ -322,12 +322,6 @@ static int __init tegra_rtc_probe(struct platform_device *pdev)
return -ENOMEM;
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev,
- "Unable to allocate resources for device.\n");
- return -EBUSY;
- }
-
info->rtc_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(info->rtc_base))
return PTR_ERR(info->rtc_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 23/42] drivers/spi: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (21 preceding siblings ...)
2013-05-10 8:17 ` [RFC 22/42] drivers/rtc: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 10:55 ` Mark Brown
` (2 more replies)
2013-05-10 8:17 ` [RFC 24/42] drivers/staging/dwc2: " Wolfram Sang
` (18 subsequent siblings)
41 siblings, 3 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Mark Brown, Grant Likely, Ben Dooks, Kukjin Kim,
Barry Song, Stephen Warren, spi-devel-general, linux-arm-kernel,
linux-samsung-soc, linux-tegra
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/spi/spi-bcm63xx.c | 8 +-------
drivers/spi/spi-ep93xx.c | 8 +-------
drivers/spi/spi-omap2-mcspi.c | 7 +------
drivers/spi/spi-s3c64xx.c | 7 +------
drivers/spi/spi-sirf.c | 7 +------
drivers/spi/spi-tegra114.c | 7 +------
drivers/spi/spi-tegra20-sflash.c | 5 -----
drivers/spi/spi-tegra20-slink.c | 7 +------
8 files changed, 7 insertions(+), 49 deletions(-)
diff --git a/drivers/spi/spi-bcm63xx.c b/drivers/spi/spi-bcm63xx.c
index a4ec5f4..9804ee0 100644
--- a/drivers/spi/spi-bcm63xx.c
+++ b/drivers/spi/spi-bcm63xx.c
@@ -378,13 +378,6 @@ static int bcm63xx_spi_probe(struct platform_device *pdev)
struct bcm63xx_spi *bs;
int ret;
- r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(dev, "no iomem\n");
- ret = -ENXIO;
- goto out;
- }
-
irq = platform_get_irq(pdev, 0);
if (irq < 0) {
dev_err(dev, "no irq\n");
@@ -411,6 +404,7 @@ static int bcm63xx_spi_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, master);
bs->pdev = pdev;
+ r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
bs->regs = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(bs->regs)) {
ret = PTR_ERR(bs->regs);
diff --git a/drivers/spi/spi-ep93xx.c b/drivers/spi/spi-ep93xx.c
index d7bac60..213cb7a3 100644
--- a/drivers/spi/spi-ep93xx.c
+++ b/drivers/spi/spi-ep93xx.c
@@ -1076,15 +1076,9 @@ static int ep93xx_spi_probe(struct platform_device *pdev)
goto fail_put_clock;
}
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "unable to get iomem resource\n");
- error = -ENODEV;
- goto fail_put_clock;
- }
-
espi->sspdr_phys = res->start + SSPDR;
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
espi->regs_base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(espi->regs_base)) {
error = PTR_ERR(espi->regs_base);
diff --git a/drivers/spi/spi-omap2-mcspi.c b/drivers/spi/spi-omap2-mcspi.c
index 86d2158..31c054e 100644
--- a/drivers/spi/spi-omap2-mcspi.c
+++ b/drivers/spi/spi-omap2-mcspi.c
@@ -1228,16 +1228,11 @@ static int omap2_mcspi_probe(struct platform_device *pdev)
}
regs_offset = pdata->regs_offset;
- r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (r == NULL) {
- status = -ENODEV;
- goto free_master;
- }
-
r->start += regs_offset;
r->end += regs_offset;
mcspi->phys = r->start;
+ r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
mcspi->base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(mcspi->base)) {
status = PTR_ERR(mcspi->base);
diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
index 5000586..fd763cc 100644
--- a/drivers/spi/spi-s3c64xx.c
+++ b/drivers/spi/spi-s3c64xx.c
@@ -1243,12 +1243,6 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
return -ENODEV;
}
- mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (mem_res == NULL) {
- dev_err(&pdev->dev, "Unable to get SPI MEM resource\n");
- return -ENXIO;
- }
-
irq = platform_get_irq(pdev, 0);
if (irq < 0) {
dev_warn(&pdev->dev, "Failed to get IRQ: %d\n", irq);
@@ -1318,6 +1312,7 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
/* the spi->mode bits understood by this driver: */
master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH;
+ mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
sdd->regs = devm_ioremap_resource(&pdev->dev, mem_res);
if (IS_ERR(sdd->regs)) {
ret = PTR_ERR(sdd->regs);
diff --git a/drivers/spi/spi-sirf.c b/drivers/spi/spi-sirf.c
index 0808cd5..318ca5b 100644
--- a/drivers/spi/spi-sirf.c
+++ b/drivers/spi/spi-sirf.c
@@ -502,12 +502,6 @@ static int spi_sirfsoc_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, master);
sspi = spi_master_get_devdata(master);
- mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!mem_res) {
- dev_err(&pdev->dev, "Unable to get IO resource\n");
- ret = -ENODEV;
- goto free_master;
- }
master->num_chipselect = num_cs;
for (i = 0; i < master->num_chipselect; i++) {
@@ -534,6 +528,7 @@ static int spi_sirfsoc_probe(struct platform_device *pdev)
}
}
+ mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
sspi->base = devm_ioremap_resource(&pdev->dev, mem_res);
if (IS_ERR(sspi->base)) {
ret = PTR_ERR(sspi->base);
diff --git a/drivers/spi/spi-tegra114.c b/drivers/spi/spi-tegra114.c
index 598eb45..fc39365 100644
--- a/drivers/spi/spi-tegra114.c
+++ b/drivers/spi/spi-tegra114.c
@@ -1058,13 +1058,8 @@ static int tegra_spi_probe(struct platform_device *pdev)
tspi->dev = &pdev->dev;
spin_lock_init(&tspi->lock);
- r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "No IO memory resource\n");
- ret = -ENODEV;
- goto exit_free_master;
- }
tspi->phys = r->start;
+ r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
tspi->base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(tspi->base)) {
ret = PTR_ERR(tspi->base);
diff --git a/drivers/spi/spi-tegra20-sflash.c b/drivers/spi/spi-tegra20-sflash.c
index d65c000..09df8e2 100644
--- a/drivers/spi/spi-tegra20-sflash.c
+++ b/drivers/spi/spi-tegra20-sflash.c
@@ -489,11 +489,6 @@ static int tegra_sflash_probe(struct platform_device *pdev)
tegra_sflash_parse_dt(tsd);
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "No IO memory resource\n");
- ret = -ENODEV;
- goto exit_free_master;
- }
tsd->base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(tsd->base)) {
ret = PTR_ERR(tsd->base);
diff --git a/drivers/spi/spi-tegra20-slink.c b/drivers/spi/spi-tegra20-slink.c
index 3faf88d..46392f0 100644
--- a/drivers/spi/spi-tegra20-slink.c
+++ b/drivers/spi/spi-tegra20-slink.c
@@ -1098,13 +1098,8 @@ static int tegra_slink_probe(struct platform_device *pdev)
tegra_slink_parse_dt(tspi);
- r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!r) {
- dev_err(&pdev->dev, "No IO memory resource\n");
- ret = -ENODEV;
- goto exit_free_master;
- }
tspi->phys = r->start;
+ r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
tspi->base = devm_ioremap_resource(&pdev->dev, r);
if (IS_ERR(tspi->base)) {
ret = PTR_ERR(tspi->base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 24/42] drivers/staging/dwc2: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (22 preceding siblings ...)
2013-05-10 8:17 ` [RFC 23/42] drivers/spi: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 15:24 ` Greg Kroah-Hartman
2013-05-10 8:17 ` [RFC 25/42] drivers/staging/nvec: " Wolfram Sang
` (17 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Paul Zimmerman, Greg Kroah-Hartman, linux-usb, devel
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/staging/dwc2/platform.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/staging/dwc2/platform.c b/drivers/staging/dwc2/platform.c
index 1f3d581..b610960 100644
--- a/drivers/staging/dwc2/platform.c
+++ b/drivers/staging/dwc2/platform.c
@@ -102,11 +102,6 @@ static int dwc2_driver_probe(struct platform_device *dev)
}
res = platform_get_resource(dev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&dev->dev, "missing memory base resource\n");
- return -EINVAL;
- }
-
hsotg->regs = devm_ioremap_resource(&dev->dev, res);
if (IS_ERR(hsotg->regs))
return PTR_ERR(hsotg->regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 25/42] drivers/staging/nvec: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (23 preceding siblings ...)
2013-05-10 8:17 ` [RFC 24/42] drivers/staging/dwc2: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 15:24 ` Greg Kroah-Hartman
2013-05-10 16:07 ` Marc Dietrich
2013-05-10 8:17 ` [RFC 26/42] drivers/thermal: " Wolfram Sang
` (16 subsequent siblings)
41 siblings, 2 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Julian Andres Klode, Marc Dietrich,
Greg Kroah-Hartman, ac100, linux-tegra, devel
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/staging/nvec/nvec.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/staging/nvec/nvec.c b/drivers/staging/nvec/nvec.c
index a88959f..863b22e 100644
--- a/drivers/staging/nvec/nvec.c
+++ b/drivers/staging/nvec/nvec.c
@@ -800,11 +800,6 @@ static int tegra_nvec_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "no mem resource?\n");
- return -ENODEV;
- }
-
base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(base))
return PTR_ERR(base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 26/42] drivers/thermal: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (24 preceding siblings ...)
2013-05-10 8:17 ` [RFC 25/42] drivers/staging/nvec: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
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
` (15 subsequent siblings)
41 siblings, 2 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Zhang Rui, linux-pm
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/thermal/dove_thermal.c | 11 +----------
drivers/thermal/exynos_thermal.c | 5 -----
drivers/thermal/kirkwood_thermal.c | 7 +------
drivers/thermal/rcar_thermal.c | 6 +-----
4 files changed, 3 insertions(+), 26 deletions(-)
diff --git a/drivers/thermal/dove_thermal.c b/drivers/thermal/dove_thermal.c
index 3078c40..5c53c53 100644
--- a/drivers/thermal/dove_thermal.c
+++ b/drivers/thermal/dove_thermal.c
@@ -133,25 +133,16 @@ static int dove_thermal_probe(struct platform_device *pdev)
struct resource *res;
int ret;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Failed to get platform resource\n");
- return -ENODEV;
- }
-
priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
if (!priv)
return -ENOMEM;
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
priv->sensor = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(priv->sensor))
return PTR_ERR(priv->sensor);
res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
- if (!res) {
- dev_err(&pdev->dev, "Failed to get platform resource\n");
- return -ENODEV;
- }
priv->control = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(priv->control))
return PTR_ERR(priv->control);
diff --git a/drivers/thermal/exynos_thermal.c b/drivers/thermal/exynos_thermal.c
index b777ae6..a7bef42 100644
--- a/drivers/thermal/exynos_thermal.c
+++ b/drivers/thermal/exynos_thermal.c
@@ -967,11 +967,6 @@ static int exynos_tmu_probe(struct platform_device *pdev)
INIT_WORK(&data->irq_work, exynos_tmu_work);
data->mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!data->mem) {
- dev_err(&pdev->dev, "Failed to get platform resource\n");
- return -ENOENT;
- }
-
data->base = devm_ioremap_resource(&pdev->dev, data->mem);
if (IS_ERR(data->base))
return PTR_ERR(data->base);
diff --git a/drivers/thermal/kirkwood_thermal.c b/drivers/thermal/kirkwood_thermal.c
index e5500ed..e3ca1b4 100644
--- a/drivers/thermal/kirkwood_thermal.c
+++ b/drivers/thermal/kirkwood_thermal.c
@@ -75,16 +75,11 @@ static int kirkwood_thermal_probe(struct platform_device *pdev)
struct kirkwood_thermal_priv *priv;
struct resource *res;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Failed to get platform resource\n");
- return -ENODEV;
- }
-
priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
if (!priv)
return -ENOMEM;
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
priv->sensor = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(priv->sensor))
return PTR_ERR(priv->sensor);
diff --git a/drivers/thermal/rcar_thermal.c b/drivers/thermal/rcar_thermal.c
index 2cc5b61..b2217b3 100644
--- a/drivers/thermal/rcar_thermal.c
+++ b/drivers/thermal/rcar_thermal.c
@@ -385,11 +385,6 @@ static int rcar_thermal_probe(struct platform_device *pdev)
* platform has IRQ support.
* Then, drier use common register
*/
- res = platform_get_resource(pdev, IORESOURCE_MEM, mres++);
- if (!res) {
- dev_err(dev, "Could not get platform resource\n");
- return -ENODEV;
- }
ret = devm_request_irq(dev, irq->start, rcar_thermal_irq, 0,
dev_name(dev), common);
@@ -401,6 +396,7 @@ static int rcar_thermal_probe(struct platform_device *pdev)
/*
* rcar_has_irq_support() will be enabled
*/
+ res = platform_get_resource(pdev, IORESOURCE_MEM, mres++);
common->base = devm_ioremap_resource(dev, res);
if (IS_ERR(common->base))
return PTR_ERR(common->base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 27/42] drivers/tty/serial: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (25 preceding siblings ...)
2013-05-10 8:17 ` [RFC 26/42] drivers/thermal: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 15:26 ` Greg Kroah-Hartman
2013-05-10 8:17 ` [RFC 28/42] drivers/usb/chipidea: " Wolfram Sang
` (14 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Greg Kroah-Hartman, Jiri Slaby, Stephen Warren,
linux-serial, linux-tegra
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/tty/serial/serial-tegra.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/drivers/tty/serial/serial-tegra.c b/drivers/tty/serial/serial-tegra.c
index 9799d04..9570b55 100644
--- a/drivers/tty/serial/serial-tegra.c
+++ b/drivers/tty/serial/serial-tegra.c
@@ -1295,13 +1295,9 @@ static int tegra_uart_probe(struct platform_device *pdev)
tup->cdata = cdata;
platform_set_drvdata(pdev, tup);
- resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!resource) {
- dev_err(&pdev->dev, "No IO memory resource\n");
- return -ENODEV;
- }
u->mapbase = resource->start;
+ resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
u->membase = devm_ioremap_resource(&pdev->dev, resource);
if (IS_ERR(u->membase))
return PTR_ERR(u->membase);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 28/42] drivers/usb/chipidea: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (26 preceding siblings ...)
2013-05-10 8:17 ` [RFC 27/42] drivers/tty/serial: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 15:25 ` Greg Kroah-Hartman
2013-05-10 8:17 ` [RFC 29/42] drivers/usb/gadget: " Wolfram Sang
` (13 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Alexander Shishkin, Greg Kroah-Hartman, linux-usb
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/usb/chipidea/core.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c
index 450107e..49b098b 100644
--- a/drivers/usb/chipidea/core.c
+++ b/drivers/usb/chipidea/core.c
@@ -370,11 +370,6 @@ static int ci_hdrc_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(dev, "missing resource\n");
- return -ENODEV;
- }
-
base = devm_ioremap_resource(dev, res);
if (IS_ERR(base))
return PTR_ERR(base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 29/42] drivers/usb/gadget: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (27 preceding siblings ...)
2013-05-10 8:17 ` [RFC 28/42] drivers/usb/chipidea: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 15:25 ` Greg Kroah-Hartman
2013-05-10 8:17 ` [RFC 30/42] drivers/usb/host: " Wolfram Sang
` (12 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Felipe Balbi, Greg Kroah-Hartman, linux-usb
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/usb/gadget/bcm63xx_udc.c | 10 ----------
1 file changed, 10 deletions(-)
diff --git a/drivers/usb/gadget/bcm63xx_udc.c b/drivers/usb/gadget/bcm63xx_udc.c
index 6e65182..7922977 100644
--- a/drivers/usb/gadget/bcm63xx_udc.c
+++ b/drivers/usb/gadget/bcm63xx_udc.c
@@ -2334,21 +2334,11 @@ static int bcm63xx_udc_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(dev, "error finding USBD resource\n");
- return -ENXIO;
- }
-
udc->usbd_regs = devm_ioremap_resource(dev, res);
if (IS_ERR(udc->usbd_regs))
return PTR_ERR(udc->usbd_regs);
res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
- if (!res) {
- dev_err(dev, "error finding IUDMA resource\n");
- return -ENXIO;
- }
-
udc->iudma_regs = devm_ioremap_resource(dev, res);
if (IS_ERR(udc->iudma_regs))
return PTR_ERR(udc->iudma_regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 30/42] drivers/usb/host: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (28 preceding siblings ...)
2013-05-10 8:17 ` [RFC 29/42] drivers/usb/gadget: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 14:03 ` Alan Stern
2013-05-10 15:25 ` Greg Kroah-Hartman
2013-05-10 8:17 ` [RFC 31/42] drivers/usb/phy: " Wolfram Sang
` (11 subsequent siblings)
41 siblings, 2 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Alan Stern, Greg Kroah-Hartman, linux-usb
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/usb/host/ehci-atmel.c | 9 +--------
drivers/usb/host/ehci-mxc.c | 8 +-------
drivers/usb/host/ehci-platform.c | 6 +-----
drivers/usb/host/ehci-sh.c | 10 +---------
drivers/usb/host/ohci-nxp.c | 6 ------
drivers/usb/host/ohci-platform.c | 7 +------
6 files changed, 5 insertions(+), 41 deletions(-)
diff --git a/drivers/usb/host/ehci-atmel.c b/drivers/usb/host/ehci-atmel.c
index 6642009..62bf3e6 100644
--- a/drivers/usb/host/ehci-atmel.c
+++ b/drivers/usb/host/ehci-atmel.c
@@ -101,17 +101,10 @@ static int ehci_atmel_drv_probe(struct platform_device *pdev)
goto fail_create_hcd;
}
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev,
- "Found HC with no register addr. Check %s setup!\n",
- dev_name(&pdev->dev));
- retval = -ENODEV;
- goto fail_request_resource;
- }
hcd->rsrc_start = res->start;
hcd->rsrc_len = resource_size(res);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
hcd->regs = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(hcd->regs)) {
retval = PTR_ERR(hcd->regs);
diff --git a/drivers/usb/host/ehci-mxc.c b/drivers/usb/host/ehci-mxc.c
index c369767..04be939 100644
--- a/drivers/usb/host/ehci-mxc.c
+++ b/drivers/usb/host/ehci-mxc.c
@@ -68,16 +68,10 @@ static int ehci_mxc_drv_probe(struct platform_device *pdev)
if (!hcd)
return -ENOMEM;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(dev, "Found HC with no register addr. Check setup!\n");
- ret = -ENODEV;
- goto err_alloc;
- }
-
hcd->rsrc_start = res->start;
hcd->rsrc_len = resource_size(res);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
hcd->regs = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(hcd->regs)) {
ret = PTR_ERR(hcd->regs);
diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
index f47f259..9466aea 100644
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -95,11 +95,6 @@ static int ehci_platform_probe(struct platform_device *dev)
dev_err(&dev->dev, "no irq provided");
return irq;
}
- res_mem = platform_get_resource(dev, IORESOURCE_MEM, 0);
- if (!res_mem) {
- dev_err(&dev->dev, "no memory resource provided");
- return -ENXIO;
- }
if (pdata->power_on) {
err = pdata->power_on(dev);
@@ -117,6 +112,7 @@ static int ehci_platform_probe(struct platform_device *dev)
hcd->rsrc_start = res_mem->start;
hcd->rsrc_len = resource_size(res_mem);
+ res_mem = platform_get_resource(dev, IORESOURCE_MEM, 0);
hcd->regs = devm_ioremap_resource(&dev->dev, res_mem);
if (IS_ERR(hcd->regs)) {
err = PTR_ERR(hcd->regs);
diff --git a/drivers/usb/host/ehci-sh.c b/drivers/usb/host/ehci-sh.c
index b44d716..7b7809a 100644
--- a/drivers/usb/host/ehci-sh.c
+++ b/drivers/usb/host/ehci-sh.c
@@ -86,15 +86,6 @@ static int ehci_hcd_sh_probe(struct platform_device *pdev)
if (usb_disabled())
return -ENODEV;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev,
- "Found HC with no register addr. Check %s setup!\n",
- dev_name(&pdev->dev));
- ret = -ENODEV;
- goto fail_create_hcd;
- }
-
irq = platform_get_irq(pdev, 0);
if (irq <= 0) {
dev_err(&pdev->dev,
@@ -117,6 +108,7 @@ static int ehci_hcd_sh_probe(struct platform_device *pdev)
hcd->rsrc_start = res->start;
hcd->rsrc_len = resource_size(res);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
hcd->regs = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(hcd->regs)) {
ret = PTR_ERR(hcd->regs);
diff --git a/drivers/usb/host/ohci-nxp.c b/drivers/usb/host/ohci-nxp.c
index f4988fb..f303cb0 100644
--- a/drivers/usb/host/ohci-nxp.c
+++ b/drivers/usb/host/ohci-nxp.c
@@ -300,12 +300,6 @@ static int usb_hcd_nxp_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Failed to get MEM resource\n");
- ret = -ENOMEM;
- goto out8;
- }
-
hcd->regs = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(hcd->regs)) {
ret = PTR_ERR(hcd->regs);
diff --git a/drivers/usb/host/ohci-platform.c b/drivers/usb/host/ohci-platform.c
index c3e7287..6656420 100644
--- a/drivers/usb/host/ohci-platform.c
+++ b/drivers/usb/host/ohci-platform.c
@@ -106,12 +106,6 @@ static int ohci_platform_probe(struct platform_device *dev)
return irq;
}
- res_mem = platform_get_resource(dev, IORESOURCE_MEM, 0);
- if (!res_mem) {
- dev_err(&dev->dev, "no memory resource provided");
- return -ENXIO;
- }
-
if (pdata->power_on) {
err = pdata->power_on(dev);
if (err < 0)
@@ -128,6 +122,7 @@ static int ohci_platform_probe(struct platform_device *dev)
hcd->rsrc_start = res_mem->start;
hcd->rsrc_len = resource_size(res_mem);
+ res_mem = platform_get_resource(dev, IORESOURCE_MEM, 0);
hcd->regs = devm_ioremap_resource(&dev->dev, res_mem);
if (IS_ERR(hcd->regs)) {
err = PTR_ERR(hcd->regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 31/42] drivers/usb/phy: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (29 preceding siblings ...)
2013-05-10 8:17 ` [RFC 30/42] drivers/usb/host: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 15:24 ` Greg Kroah-Hartman
2013-05-10 8:17 ` [RFC 32/42] drivers/video: " Wolfram Sang
` (10 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Felipe Balbi, Greg Kroah-Hartman, linux-usb
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/usb/phy/phy-mv-u3d-usb.c | 5 -----
drivers/usb/phy/phy-mxs-usb.c | 5 -----
drivers/usb/phy/phy-samsung-usb2.c | 5 -----
drivers/usb/phy/phy-samsung-usb3.c | 5 -----
4 files changed, 20 deletions(-)
diff --git a/drivers/usb/phy/phy-mv-u3d-usb.c b/drivers/usb/phy/phy-mv-u3d-usb.c
index f7838a4..1568ea6 100644
--- a/drivers/usb/phy/phy-mv-u3d-usb.c
+++ b/drivers/usb/phy/phy-mv-u3d-usb.c
@@ -278,11 +278,6 @@ static int mv_u3d_phy_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(dev, "missing mem resource\n");
- return -ENODEV;
- }
-
phy_base = devm_ioremap_resource(dev, res);
if (IS_ERR(phy_base))
return PTR_ERR(phy_base);
diff --git a/drivers/usb/phy/phy-mxs-usb.c b/drivers/usb/phy/phy-mxs-usb.c
index 9d4381e..eb25dd2 100644
--- a/drivers/usb/phy/phy-mxs-usb.c
+++ b/drivers/usb/phy/phy-mxs-usb.c
@@ -130,11 +130,6 @@ static int mxs_phy_probe(struct platform_device *pdev)
int ret;
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "can't get device resources\n");
- return -ENOENT;
- }
-
base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(base))
return PTR_ERR(base);
diff --git a/drivers/usb/phy/phy-samsung-usb2.c b/drivers/usb/phy/phy-samsung-usb2.c
index 45ffe03..9d5e273 100644
--- a/drivers/usb/phy/phy-samsung-usb2.c
+++ b/drivers/usb/phy/phy-samsung-usb2.c
@@ -363,11 +363,6 @@ static int samsung_usb2phy_probe(struct platform_device *pdev)
int ret;
phy_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!phy_mem) {
- dev_err(dev, "%s: missing mem resource\n", __func__);
- return -ENODEV;
- }
-
phy_base = devm_ioremap_resource(dev, phy_mem);
if (IS_ERR(phy_base))
return PTR_ERR(phy_base);
diff --git a/drivers/usb/phy/phy-samsung-usb3.c b/drivers/usb/phy/phy-samsung-usb3.c
index 133f3d0..5a9efcb 100644
--- a/drivers/usb/phy/phy-samsung-usb3.c
+++ b/drivers/usb/phy/phy-samsung-usb3.c
@@ -239,11 +239,6 @@ static int samsung_usb3phy_probe(struct platform_device *pdev)
int ret;
phy_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!phy_mem) {
- dev_err(dev, "%s: missing mem resource\n", __func__);
- return -ENODEV;
- }
-
phy_base = devm_ioremap_resource(dev, phy_mem);
if (IS_ERR(phy_base))
return PTR_ERR(phy_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 32/42] drivers/video: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (30 preceding siblings ...)
2013-05-10 8:17 ` [RFC 31/42] drivers/usb/phy: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-11 5:33 ` Jingoo Han
2013-05-10 8:17 ` [RFC 33/42] drivers/video/omap2: " Wolfram Sang
` (9 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Florian Tobias Schandinat, linux-fbdev
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/video/mxsfb.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/video/mxsfb.c b/drivers/video/mxsfb.c
index 1b2c26d..3dc3265 100644
--- a/drivers/video/mxsfb.c
+++ b/drivers/video/mxsfb.c
@@ -883,12 +883,6 @@ static int mxsfb_probe(struct platform_device *pdev)
if (of_id)
pdev->id_entry = of_id->data;
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Cannot get memory IO resource\n");
- return -ENODEV;
- }
-
fb_info = framebuffer_alloc(sizeof(struct mxsfb_info), &pdev->dev);
if (!fb_info) {
dev_err(&pdev->dev, "Failed to allocate fbdev\n");
@@ -897,6 +891,7 @@ static int mxsfb_probe(struct platform_device *pdev)
host = to_imxfb_host(fb_info);
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
host->base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(host->base)) {
dev_err(&pdev->dev, "ioremap failed\n");
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 33/42] drivers/video/omap2: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (31 preceding siblings ...)
2013-05-10 8:17 ` [RFC 32/42] drivers/video: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-11 5:37 ` Jingoo Han
2013-05-10 8:17 ` [RFC 34/42] drivers/video/omap2/dss: " Wolfram Sang
` (8 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Tomi Valkeinen, Florian Tobias Schandinat,
linux-omap, linux-fbdev
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/video/omap2/vrfb.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/video/omap2/vrfb.c b/drivers/video/omap2/vrfb.c
index 5261229..f346b02 100644
--- a/drivers/video/omap2/vrfb.c
+++ b/drivers/video/omap2/vrfb.c
@@ -353,11 +353,6 @@ static int __init vrfb_probe(struct platform_device *pdev)
/* first resource is the register res, the rest are vrfb contexts */
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!mem) {
- dev_err(&pdev->dev, "can't get vrfb base address\n");
- return -EINVAL;
- }
-
vrfb_base = devm_ioremap_resource(&pdev->dev, mem);
if (IS_ERR(vrfb_base))
return PTR_ERR(vrfb_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 34/42] drivers/video/omap2/dss: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (32 preceding siblings ...)
2013-05-10 8:17 ` [RFC 33/42] drivers/video/omap2: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-11 5:36 ` Jingoo Han
2013-05-10 8:17 ` [RFC 35/42] drivers/w1/masters: " Wolfram Sang
` (7 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Tomi Valkeinen, Florian Tobias Schandinat,
linux-omap, linux-fbdev
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/video/omap2/dss/hdmi.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c
index 17f4d55..7bc6762 100644
--- a/drivers/video/omap2/dss/hdmi.c
+++ b/drivers/video/omap2/dss/hdmi.c
@@ -1064,13 +1064,8 @@ static int omapdss_hdmihw_probe(struct platform_device *pdev)
mutex_init(&hdmi.lock);
mutex_init(&hdmi.ip_data.lock);
- res = platform_get_resource(hdmi.pdev, IORESOURCE_MEM, 0);
- if (!res) {
- DSSERR("can't get IORESOURCE_MEM HDMI\n");
- return -EINVAL;
- }
-
/* Base address taken from platform */
+ res = platform_get_resource(hdmi.pdev, IORESOURCE_MEM, 0);
hdmi.ip_data.base_wp = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(hdmi.ip_data.base_wp))
return PTR_ERR(hdmi.ip_data.base_wp);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 35/42] drivers/w1/masters: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (33 preceding siblings ...)
2013-05-10 8:17 ` [RFC 34/42] drivers/video/omap2/dss: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 8:17 ` [RFC 36/42] drivers/watchdog: " Wolfram Sang
` (6 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Evgeniy Polyakov
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/w1/masters/omap_hdq.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/w1/masters/omap_hdq.c b/drivers/w1/masters/omap_hdq.c
index db2390a..6e94d8dd 100644
--- a/drivers/w1/masters/omap_hdq.c
+++ b/drivers/w1/masters/omap_hdq.c
@@ -555,11 +555,6 @@ static int omap_hdq_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, hdq_data);
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_dbg(&pdev->dev, "unable to get resource\n");
- return -ENXIO;
- }
-
hdq_data->hdq_base = devm_ioremap_resource(dev, res);
if (IS_ERR(hdq_data->hdq_base))
return PTR_ERR(hdq_data->hdq_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 36/42] drivers/watchdog: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (34 preceding siblings ...)
2013-05-10 8:17 ` [RFC 35/42] drivers/w1/masters: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-12 17:23 ` Wim Van Sebroeck
2013-05-10 8:17 ` [RFC 37/42] arch/arm/mach-tegra: " Wolfram Sang
` (5 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Wim Van Sebroeck, linux-watchdog
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/watchdog/imx2_wdt.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/watchdog/imx2_wdt.c b/drivers/watchdog/imx2_wdt.c
index ff90882..62946c2 100644
--- a/drivers/watchdog/imx2_wdt.c
+++ b/drivers/watchdog/imx2_wdt.c
@@ -257,11 +257,6 @@ static int __init imx2_wdt_probe(struct platform_device *pdev)
struct resource *res;
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "can't get device resources\n");
- return -ENODEV;
- }
-
imx2_wdt.base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(imx2_wdt.base))
return PTR_ERR(imx2_wdt.base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 37/42] arch/arm/mach-tegra: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (35 preceding siblings ...)
2013-05-10 8:17 ` [RFC 36/42] drivers/watchdog: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 8:17 ` [RFC 38/42] arch/arm/plat-omap: " Wolfram Sang
` (4 subsequent siblings)
41 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Russell King, Stephen Warren, linux-arm-kernel,
linux-tegra
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>
---
arch/arm/mach-tegra/tegra2_emc.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/arch/arm/mach-tegra/tegra2_emc.c b/arch/arm/mach-tegra/tegra2_emc.c
index 9e8bdfa..31e69a0 100644
--- a/arch/arm/mach-tegra/tegra2_emc.c
+++ b/arch/arm/mach-tegra/tegra2_emc.c
@@ -307,11 +307,6 @@ static int tegra_emc_probe(struct platform_device *pdev)
}
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "missing register base\n");
- return -ENOMEM;
- }
-
emc_regbase = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(emc_regbase))
return PTR_ERR(emc_regbase);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 38/42] arch/arm/plat-omap: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (36 preceding siblings ...)
2013-05-10 8:17 ` [RFC 37/42] arch/arm/mach-tegra: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 16:46 ` Tony Lindgren
2013-05-10 8:17 ` [RFC 39/42] arch/arm/plat-samsung: " Wolfram Sang
` (3 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Tony Lindgren, Russell King, linux-arm-kernel, linux-omap
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>
---
arch/arm/plat-omap/dmtimer.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
index 869254c..da1a3f7 100644
--- a/arch/arm/plat-omap/dmtimer.c
+++ b/arch/arm/plat-omap/dmtimer.c
@@ -814,12 +814,6 @@ static int omap_dm_timer_probe(struct platform_device *pdev)
return -ENODEV;
}
- mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (unlikely(!mem)) {
- dev_err(dev, "%s: no memory resource.\n", __func__);
- return -ENODEV;
- }
-
timer = devm_kzalloc(dev, sizeof(struct omap_dm_timer), GFP_KERNEL);
if (!timer) {
dev_err(dev, "%s: memory alloc failed!\n", __func__);
@@ -827,6 +821,7 @@ static int omap_dm_timer_probe(struct platform_device *pdev)
}
timer->fclk = ERR_PTR(-ENODEV);
+ mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
timer->io_base = devm_ioremap_resource(dev, mem);
if (IS_ERR(timer->io_base))
return PTR_ERR(timer->io_base);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 39/42] arch/arm/plat-samsung: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (37 preceding siblings ...)
2013-05-10 8:17 ` [RFC 38/42] arch/arm/plat-omap: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-11 5:15 ` Jingoo Han
2013-05-10 8:17 ` [RFC 40/42] arch/mips/lantiq/xway: " Wolfram Sang
` (2 subsequent siblings)
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Ben Dooks, Kukjin Kim, Russell King,
linux-arm-kernel, linux-samsung-soc
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>
---
arch/arm/plat-samsung/adc.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/arch/arm/plat-samsung/adc.c b/arch/arm/plat-samsung/adc.c
index ca07cb1..79690f2 100644
--- a/arch/arm/plat-samsung/adc.c
+++ b/arch/arm/plat-samsung/adc.c
@@ -381,11 +381,6 @@ static int s3c_adc_probe(struct platform_device *pdev)
}
regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!regs) {
- dev_err(dev, "failed to find registers\n");
- return -ENXIO;
- }
-
adc->regs = devm_ioremap_resource(dev, regs);
if (IS_ERR(adc->regs))
return PTR_ERR(adc->regs);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 40/42] arch/mips/lantiq/xway: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (38 preceding siblings ...)
2013-05-10 8:17 ` [RFC 39/42] arch/arm/plat-samsung: " Wolfram Sang
@ 2013-05-10 8:17 ` 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 8:17 ` [RFC 42/42] sound/soc/kirkwood: " Wolfram Sang
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel; +Cc: Wolfram Sang, Ralf Baechle, linux-mips
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>
---
arch/mips/lantiq/xway/gptu.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/mips/lantiq/xway/gptu.c b/arch/mips/lantiq/xway/gptu.c
index 9861c86..26226f0 100644
--- a/arch/mips/lantiq/xway/gptu.c
+++ b/arch/mips/lantiq/xway/gptu.c
@@ -143,13 +143,8 @@ static int gptu_probe(struct platform_device *pdev)
return -EINVAL;
}
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- dev_err(&pdev->dev, "Failed to get resource\n");
- return -ENOMEM;
- }
-
/* remap gptu register range */
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
gptu_membase = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(gptu_membase))
return PTR_ERR(gptu_membase);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 41/42] sound/soc/fsl: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (39 preceding siblings ...)
2013-05-10 8:17 ` [RFC 40/42] arch/mips/lantiq/xway: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 10:56 ` Mark Brown
2013-05-10 8:17 ` [RFC 42/42] sound/soc/kirkwood: " Wolfram Sang
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Liam Girdwood, Mark Brown, Jaroslav Kysela,
Takashi Iwai, alsa-devel
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>
---
sound/soc/fsl/imx-ssi.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/sound/soc/fsl/imx-ssi.c b/sound/soc/fsl/imx-ssi.c
index 902fab0..c6fa03e 100644
--- a/sound/soc/fsl/imx-ssi.c
+++ b/sound/soc/fsl/imx-ssi.c
@@ -540,11 +540,6 @@ static int imx_ssi_probe(struct platform_device *pdev)
clk_prepare_enable(ssi->clk);
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!res) {
- ret = -ENODEV;
- goto failed_get_resource;
- }
-
ssi->base = devm_ioremap_resource(&pdev->dev, res);
if (IS_ERR(ssi->base)) {
ret = PTR_ERR(ssi->base);
@@ -633,7 +628,6 @@ failed_pdev_fiq_alloc:
snd_soc_unregister_component(&pdev->dev);
failed_register:
release_mem_region(res->start, resource_size(res));
-failed_get_resource:
clk_disable_unprepare(ssi->clk);
failed_clk:
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* [RFC 42/42] sound/soc/kirkwood: don't check resource with devm_ioremap_resource
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
` (40 preceding siblings ...)
2013-05-10 8:17 ` [RFC 41/42] sound/soc/fsl: " Wolfram Sang
@ 2013-05-10 8:17 ` Wolfram Sang
2013-05-10 10:56 ` Mark Brown
41 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 8:17 UTC (permalink / raw)
To: linux-kernel
Cc: Wolfram Sang, Liam Girdwood, Mark Brown, Jaroslav Kysela,
Takashi Iwai, alsa-devel
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>
---
sound/soc/kirkwood/kirkwood-i2s.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/sound/soc/kirkwood/kirkwood-i2s.c b/sound/soc/kirkwood/kirkwood-i2s.c
index befe68f..4c9dad3 100644
--- a/sound/soc/kirkwood/kirkwood-i2s.c
+++ b/sound/soc/kirkwood/kirkwood-i2s.c
@@ -471,11 +471,6 @@ static int kirkwood_i2s_dev_probe(struct platform_device *pdev)
dev_set_drvdata(&pdev->dev, priv);
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!mem) {
- dev_err(&pdev->dev, "platform_get_resource failed\n");
- return -ENXIO;
- }
-
priv->io = devm_ioremap_resource(&pdev->dev, mem);
if (IS_ERR(priv->io))
return PTR_ERR(priv->io);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 96+ messages in thread
* Re: [RFC 40/42] arch/mips/lantiq/xway: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 40/42] arch/mips/lantiq/xway: " Wolfram Sang
@ 2013-05-10 8:57 ` John Crispin
0 siblings, 0 replies; 96+ messages in thread
From: John Crispin @ 2013-05-10 8:57 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Ralf Baechle, linux-mips
On 10/05/13 10:17, Wolfram Sang wrote:
> 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>
Acked-by: John Crispin <blogic@openwrt.org>
> ---
> arch/mips/lantiq/xway/gptu.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/arch/mips/lantiq/xway/gptu.c b/arch/mips/lantiq/xway/gptu.c
> index 9861c86..26226f0 100644
> --- a/arch/mips/lantiq/xway/gptu.c
> +++ b/arch/mips/lantiq/xway/gptu.c
> @@ -143,13 +143,8 @@ static int gptu_probe(struct platform_device *pdev)
> return -EINVAL;
> }
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get resource\n");
> - return -ENOMEM;
> - }
> -
> /* remap gptu register range */
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> gptu_membase = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(gptu_membase))
> return PTR_ERR(gptu_membase);
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 23/42] drivers/spi: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 23/42] drivers/spi: " Wolfram Sang
@ 2013-05-10 10:55 ` Mark Brown
2013-05-10 16:37 ` Stephen Warren
2013-05-11 5:24 ` Jingoo Han
2 siblings, 0 replies; 96+ messages in thread
From: Mark Brown @ 2013-05-10 10:55 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Grant Likely, Ben Dooks, Kukjin Kim, Barry Song,
Stephen Warren, spi-devel-general, linux-arm-kernel,
linux-samsung-soc, linux-tegra
[-- Attachment #1: Type: text/plain, Size: 231 bytes --]
On Fri, May 10, 2013 at 10:17:08AM +0200, Wolfram Sang wrote:
> devm_ioremap_resource does sanity checks on the given resource. No need to
> duplicate this in the driver.
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 41/42] sound/soc/fsl: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 41/42] sound/soc/fsl: " Wolfram Sang
@ 2013-05-10 10:56 ` Mark Brown
0 siblings, 0 replies; 96+ messages in thread
From: Mark Brown @ 2013-05-10 10:56 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Liam Girdwood, Jaroslav Kysela, Takashi Iwai, alsa-devel
[-- Attachment #1: Type: text/plain, Size: 231 bytes --]
On Fri, May 10, 2013 at 10:17:26AM +0200, Wolfram Sang wrote:
> devm_ioremap_resource does sanity checks on the given resource. No need to
> duplicate this in the driver.
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 42/42] sound/soc/kirkwood: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 42/42] sound/soc/kirkwood: " Wolfram Sang
@ 2013-05-10 10:56 ` Mark Brown
0 siblings, 0 replies; 96+ messages in thread
From: Mark Brown @ 2013-05-10 10:56 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Liam Girdwood, Jaroslav Kysela, Takashi Iwai, alsa-devel
[-- Attachment #1: Type: text/plain, Size: 231 bytes --]
On Fri, May 10, 2013 at 10:17:27AM +0200, Wolfram Sang wrote:
> devm_ioremap_resource does sanity checks on the given resource. No need to
> duplicate this in the driver.
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
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
1 sibling, 1 reply; 96+ messages in thread
From: Sergei Shtylyov @ 2013-05-10 11:07 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, netdev
Hello.
On 10-05-2013 12:17, Wolfram Sang wrote:
> 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>
Acked-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
WBR, Sergei
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 03/42] drivers/cpufreq: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 03/42] drivers/cpufreq: " Wolfram Sang
@ 2013-05-10 11:09 ` Rafael J. Wysocki
0 siblings, 0 replies; 96+ messages in thread
From: Rafael J. Wysocki @ 2013-05-10 11:09 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Viresh Kumar, cpufreq, linux-pm
On Friday, May 10, 2013 10:16:48 AM Wolfram Sang wrote:
> 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>
Queued up for a post-3.10-rc1 push.
Thanks,
Rafael
> ---
> drivers/cpufreq/kirkwood-cpufreq.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/cpufreq/kirkwood-cpufreq.c b/drivers/cpufreq/kirkwood-cpufreq.c
> index d36ea8d..b2644af 100644
> --- a/drivers/cpufreq/kirkwood-cpufreq.c
> +++ b/drivers/cpufreq/kirkwood-cpufreq.c
> @@ -171,10 +171,6 @@ static int kirkwood_cpufreq_probe(struct platform_device *pdev)
> priv.dev = &pdev->dev;
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Cannot get memory resource\n");
> - return -ENODEV;
> - }
> priv.base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv.base))
> return PTR_ERR(priv.base);
>
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 26/42] drivers/thermal: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 26/42] drivers/thermal: " Wolfram Sang
@ 2013-05-10 13:50 ` Eduardo Valentin
2013-05-16 7:22 ` Zhang Rui
1 sibling, 0 replies; 96+ messages in thread
From: Eduardo Valentin @ 2013-05-10 13:50 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Zhang Rui, linux-pm, eduardo.valentin
[-- Attachment #1: Type: text/plain, Size: 4211 bytes --]
Wolfram,
On 10-05-2013 04:17, Wolfram Sang wrote:
> 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/thermal/dove_thermal.c | 11 +----------
> drivers/thermal/exynos_thermal.c | 5 -----
> drivers/thermal/kirkwood_thermal.c | 7 +------
> drivers/thermal/rcar_thermal.c | 6 +-----
You missed drivers/thermal/armada_thermal.c ?
For the changes below:
Acked-by: Eduardo Valentin <eduardo.valentin@ti.com>
> 4 files changed, 3 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/thermal/dove_thermal.c b/drivers/thermal/dove_thermal.c
> index 3078c40..5c53c53 100644
> --- a/drivers/thermal/dove_thermal.c
> +++ b/drivers/thermal/dove_thermal.c
> @@ -133,25 +133,16 @@ static int dove_thermal_probe(struct platform_device *pdev)
> struct resource *res;
> int ret;
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENODEV;
> - }
> -
> priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
> if (!priv)
> return -ENOMEM;
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> priv->sensor = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->sensor))
> return PTR_ERR(priv->sensor);
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENODEV;
> - }
> priv->control = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->control))
> return PTR_ERR(priv->control);
> diff --git a/drivers/thermal/exynos_thermal.c b/drivers/thermal/exynos_thermal.c
> index b777ae6..a7bef42 100644
> --- a/drivers/thermal/exynos_thermal.c
> +++ b/drivers/thermal/exynos_thermal.c
> @@ -967,11 +967,6 @@ static int exynos_tmu_probe(struct platform_device *pdev)
> INIT_WORK(&data->irq_work, exynos_tmu_work);
>
> data->mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!data->mem) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENOENT;
> - }
> -
> data->base = devm_ioremap_resource(&pdev->dev, data->mem);
> if (IS_ERR(data->base))
> return PTR_ERR(data->base);
> diff --git a/drivers/thermal/kirkwood_thermal.c b/drivers/thermal/kirkwood_thermal.c
> index e5500ed..e3ca1b4 100644
> --- a/drivers/thermal/kirkwood_thermal.c
> +++ b/drivers/thermal/kirkwood_thermal.c
> @@ -75,16 +75,11 @@ static int kirkwood_thermal_probe(struct platform_device *pdev)
> struct kirkwood_thermal_priv *priv;
> struct resource *res;
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENODEV;
> - }
> -
> priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
> if (!priv)
> return -ENOMEM;
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> priv->sensor = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->sensor))
> return PTR_ERR(priv->sensor);
> diff --git a/drivers/thermal/rcar_thermal.c b/drivers/thermal/rcar_thermal.c
> index 2cc5b61..b2217b3 100644
> --- a/drivers/thermal/rcar_thermal.c
> +++ b/drivers/thermal/rcar_thermal.c
> @@ -385,11 +385,6 @@ static int rcar_thermal_probe(struct platform_device *pdev)
> * platform has IRQ support.
> * Then, drier use common register
> */
> - res = platform_get_resource(pdev, IORESOURCE_MEM, mres++);
> - if (!res) {
> - dev_err(dev, "Could not get platform resource\n");
> - return -ENODEV;
> - }
>
> ret = devm_request_irq(dev, irq->start, rcar_thermal_irq, 0,
> dev_name(dev), common);
> @@ -401,6 +396,7 @@ static int rcar_thermal_probe(struct platform_device *pdev)
> /*
> * rcar_has_irq_support() will be enabled
> */
> + res = platform_get_resource(pdev, IORESOURCE_MEM, mres++);
> common->base = devm_ioremap_resource(dev, res);
> if (IS_ERR(common->base))
> return PTR_ERR(common->base);
>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 295 bytes --]
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 30/42] drivers/usb/host: don't check resource with devm_ioremap_resource
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
1 sibling, 1 reply; 96+ messages in thread
From: Alan Stern @ 2013-05-10 14:03 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Greg Kroah-Hartman, linux-usb
On Fri, 10 May 2013, Wolfram Sang wrote:
> 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/usb/host/ehci-atmel.c | 9 +--------
> drivers/usb/host/ehci-mxc.c | 8 +-------
> drivers/usb/host/ehci-platform.c | 6 +-----
> drivers/usb/host/ehci-sh.c | 10 +---------
> drivers/usb/host/ohci-nxp.c | 6 ------
> drivers/usb/host/ohci-platform.c | 7 +------
> 6 files changed, 5 insertions(+), 41 deletions(-)
>
> diff --git a/drivers/usb/host/ehci-atmel.c b/drivers/usb/host/ehci-atmel.c
> index 6642009..62bf3e6 100644
> --- a/drivers/usb/host/ehci-atmel.c
> +++ b/drivers/usb/host/ehci-atmel.c
> @@ -101,17 +101,10 @@ static int ehci_atmel_drv_probe(struct platform_device *pdev)
> goto fail_create_hcd;
> }
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev,
> - "Found HC with no register addr. Check %s setup!\n",
> - dev_name(&pdev->dev));
> - retval = -ENODEV;
> - goto fail_request_resource;
> - }
> hcd->rsrc_start = res->start;
> hcd->rsrc_len = resource_size(res);
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> hcd->regs = devm_ioremap_resource(&pdev->dev, res);
This isn't right. You are now dereferencing an uninitialized pointer
in the assignment to hcd->rsrc_start. The compiler won't like that.
Most of the other changes in this patch suffer from the same problem.
Alan Stern
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 18/42] drivers/pinctrl: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 18/42] drivers/pinctrl: " Wolfram Sang
@ 2013-05-10 14:30 ` Jean-Christophe PLAGNIOL-VILLARD
2013-05-14 12:19 ` Linus Walleij
2013-06-06 8:43 ` Jean-Christophe PLAGNIOL-VILLARD
2 siblings, 0 replies; 96+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2013-05-10 14:30 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Linus Walleij, linux-arm-kernel
On 10:17 Fri 10 May , Wolfram Sang wrote:
> 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/pinctrl/pinctrl-at91.c | 7 +------
for at91
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
> drivers/pinctrl/pinctrl-coh901.c | 5 -----
> drivers/pinctrl/pinctrl-exynos5440.c | 5 -----
> drivers/pinctrl/pinctrl-samsung.c | 5 -----
> drivers/pinctrl/pinctrl-xway.c | 4 ----
> 5 files changed, 1 insertion(+), 25 deletions(-)
>
> diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
> index 5d7529e..b90a3a0 100644
> --- a/drivers/pinctrl/pinctrl-at91.c
> +++ b/drivers/pinctrl/pinctrl-at91.c
> @@ -1543,12 +1543,6 @@ static int at91_gpio_probe(struct platform_device *pdev)
> goto err;
> }
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - ret = -ENOENT;
> - goto err;
> - }
> -
> irq = platform_get_irq(pdev, 0);
> if (irq < 0) {
> ret = irq;
> @@ -1561,6 +1555,7 @@ static int at91_gpio_probe(struct platform_device *pdev)
> goto err;
> }
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> at91_chip->regbase = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(at91_chip->regbase)) {
> ret = PTR_ERR(at91_chip->regbase);
> diff --git a/drivers/pinctrl/pinctrl-coh901.c b/drivers/pinctrl/pinctrl-coh901.c
> index edde3ac..a67af41 100644
> --- a/drivers/pinctrl/pinctrl-coh901.c
> +++ b/drivers/pinctrl/pinctrl-coh901.c
> @@ -713,11 +713,6 @@ static int __init u300_gpio_probe(struct platform_device *pdev)
> gpio->dev = &pdev->dev;
>
> memres = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!memres) {
> - dev_err(gpio->dev, "could not get GPIO memory resource\n");
> - return -ENODEV;
> - }
> -
> gpio->base = devm_ioremap_resource(&pdev->dev, memres);
> if (IS_ERR(gpio->base))
> return PTR_ERR(gpio->base);
> diff --git a/drivers/pinctrl/pinctrl-exynos5440.c b/drivers/pinctrl/pinctrl-exynos5440.c
> index 6038503..32a48f4 100644
> --- a/drivers/pinctrl/pinctrl-exynos5440.c
> +++ b/drivers/pinctrl/pinctrl-exynos5440.c
> @@ -1000,11 +1000,6 @@ static int exynos5440_pinctrl_probe(struct platform_device *pdev)
> }
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(dev, "cannot find IO resource\n");
> - return -ENOENT;
> - }
> -
> priv->reg_base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->reg_base))
> return PTR_ERR(priv->reg_base);
> diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c
> index 9763668..055d016 100644
> --- a/drivers/pinctrl/pinctrl-samsung.c
> +++ b/drivers/pinctrl/pinctrl-samsung.c
> @@ -932,11 +932,6 @@ static int samsung_pinctrl_probe(struct platform_device *pdev)
> drvdata->dev = dev;
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(dev, "cannot find IO resource\n");
> - return -ENOENT;
> - }
> -
> drvdata->virt_base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(drvdata->virt_base))
> return PTR_ERR(drvdata->virt_base);
> diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
> index f2977cf..e92132c 100644
> --- a/drivers/pinctrl/pinctrl-xway.c
> +++ b/drivers/pinctrl/pinctrl-xway.c
> @@ -716,10 +716,6 @@ static int pinmux_xway_probe(struct platform_device *pdev)
>
> /* get and remap our register range */
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get resource\n");
> - return -ENOENT;
> - }
> xway_info.membase[0] = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(xway_info.membase[0]))
> return PTR_ERR(xway_info.membase[0]);
> --
> 1.7.10.4
>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 14/42] drivers/misc: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 14/42] drivers/misc: " Wolfram Sang
@ 2013-05-10 15:24 ` Greg Kroah-Hartman
0 siblings, 0 replies; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:24 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Arnd Bergmann
On Fri, May 10, 2013 at 10:16:59AM +0200, Wolfram Sang wrote:
> 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>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 31/42] drivers/usb/phy: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 31/42] drivers/usb/phy: " Wolfram Sang
@ 2013-05-10 15:24 ` Greg Kroah-Hartman
0 siblings, 0 replies; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:24 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Felipe Balbi, linux-usb
On Fri, May 10, 2013 at 10:17:16AM +0200, Wolfram Sang wrote:
> 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>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 24/42] drivers/staging/dwc2: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 24/42] drivers/staging/dwc2: " Wolfram Sang
@ 2013-05-10 15:24 ` Greg Kroah-Hartman
0 siblings, 0 replies; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:24 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, devel, linux-usb, Paul Zimmerman
On Fri, May 10, 2013 at 10:17:09AM +0200, Wolfram Sang wrote:
> 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>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 25/42] drivers/staging/nvec: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 25/42] drivers/staging/nvec: " Wolfram Sang
@ 2013-05-10 15:24 ` Greg Kroah-Hartman
2013-05-10 16:07 ` Marc Dietrich
1 sibling, 0 replies; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:24 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, devel, linux-tegra, ac100
On Fri, May 10, 2013 at 10:17:10AM +0200, Wolfram Sang wrote:
> 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>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 30/42] drivers/usb/host: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 30/42] drivers/usb/host: " Wolfram Sang
2013-05-10 14:03 ` Alan Stern
@ 2013-05-10 15:25 ` Greg Kroah-Hartman
1 sibling, 0 replies; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:25 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Alan Stern, linux-usb
On Fri, May 10, 2013 at 10:17:15AM +0200, Wolfram Sang wrote:
> 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>
As Alan pointed out, the majority of these are all wrong, please do NOT
push this patch to Linus.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 28/42] drivers/usb/chipidea: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 28/42] drivers/usb/chipidea: " Wolfram Sang
@ 2013-05-10 15:25 ` Greg Kroah-Hartman
0 siblings, 0 replies; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:25 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Alexander Shishkin, linux-usb
On Fri, May 10, 2013 at 10:17:13AM +0200, Wolfram Sang wrote:
> 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>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 29/42] drivers/usb/gadget: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 29/42] drivers/usb/gadget: " Wolfram Sang
@ 2013-05-10 15:25 ` Greg Kroah-Hartman
0 siblings, 0 replies; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:25 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Felipe Balbi, linux-usb
On Fri, May 10, 2013 at 10:17:14AM +0200, Wolfram Sang wrote:
> 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>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 27/42] drivers/tty/serial: don't check resource with devm_ioremap_resource
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
0 siblings, 1 reply; 96+ messages in thread
From: Greg Kroah-Hartman @ 2013-05-10 15:26 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Jiri Slaby, Stephen Warren, linux-serial, linux-tegra
On Fri, May 10, 2013 at 10:17:12AM +0200, Wolfram Sang wrote:
> 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/tty/serial/serial-tegra.c | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/drivers/tty/serial/serial-tegra.c b/drivers/tty/serial/serial-tegra.c
> index 9799d04..9570b55 100644
> --- a/drivers/tty/serial/serial-tegra.c
> +++ b/drivers/tty/serial/serial-tegra.c
> @@ -1295,13 +1295,9 @@ static int tegra_uart_probe(struct platform_device *pdev)
> tup->cdata = cdata;
>
> platform_set_drvdata(pdev, tup);
> - resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!resource) {
> - dev_err(&pdev->dev, "No IO memory resource\n");
> - return -ENODEV;
> - }
>
> u->mapbase = resource->start;
> + resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
You need to look at your scripts, as again, this is totally wrong.
greg k-h
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 25/42] drivers/staging/nvec: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 25/42] drivers/staging/nvec: " Wolfram Sang
2013-05-10 15:24 ` Greg Kroah-Hartman
@ 2013-05-10 16:07 ` Marc Dietrich
1 sibling, 0 replies; 96+ messages in thread
From: Marc Dietrich @ 2013-05-10 16:07 UTC (permalink / raw)
To: Wolfram Sang, linux-tegra
Cc: linux-kernel, Julian Andres Klode, Greg Kroah-Hartman, devel
On Friday 10 May 2013 10:17:10 Wolfram Sang wrote:
> 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>
Acked-by: Marc Dietrich <marvin24@gmx.de>
> ---
> drivers/staging/nvec/nvec.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/drivers/staging/nvec/nvec.c b/drivers/staging/nvec/nvec.c
> index a88959f..863b22e 100644
> --- a/drivers/staging/nvec/nvec.c
> +++ b/drivers/staging/nvec/nvec.c
> @@ -800,11 +800,6 @@ static int tegra_nvec_probe(struct platform_device
> *pdev) }
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "no mem resource?\n");
> - return -ENODEV;
> - }
> -
> base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(base))
> return PTR_ERR(base);
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 04/42] drivers/dma: " Wolfram Sang
@ 2013-05-10 16:35 ` Stephen Warren
2013-05-10 17:57 ` Wolfram Sang
0 siblings, 1 reply; 96+ messages in thread
From: Stephen Warren @ 2013-05-10 16:35 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Vinod Koul, Dan Williams, linux-tegra
On 05/10/2013 02:16 AM, Wolfram Sang wrote:
> devm_ioremap_resource does sanity checks on the given resource. No need to
> duplicate this in the driver.
> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "No mem resource for DMA\n");
> - return -EINVAL;
> - }
> -
> tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
One issue here is that it's not obvious just from reading the code
that's left behind that the "missing" error-checking of the
platform_get_resource() return value is OK because
devm_ioremap_resource() will check it "for us". Everyone now has to
mentally maintain a list of exceptions where it's OK not to error-check.
A similar situation exists for e.g. kzalloc already spewing an error
when allocations fail, and so drivers don't need to print a diagnostic
in that case, but it's helpful if they do in most other cases, but
that's another issue.
Would it be better to introduce a new devm_ioremap_pdev_resource(pdev,
index) that replaced both those two API calls with a single one. That
way, only the author/reader of the new devm_ioremap_pdev_resource()
would have to remember that caveat, and a single comment could be added
so people unfamiliar with the code remember, without duplicating the
comment in every driver.
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 23/42] drivers/spi: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 23/42] drivers/spi: " Wolfram Sang
2013-05-10 10:55 ` Mark Brown
@ 2013-05-10 16:37 ` Stephen Warren
2013-05-11 5:24 ` Jingoo Han
2 siblings, 0 replies; 96+ messages in thread
From: Stephen Warren @ 2013-05-10 16:37 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Mark Brown, Grant Likely, Ben Dooks, Kukjin Kim,
Barry Song, spi-devel-general, linux-arm-kernel,
linux-samsung-soc, linux-tegra
On 05/10/2013 02:17 AM, Wolfram Sang wrote:
> devm_ioremap_resource does sanity checks on the given resource. No need to
> duplicate this in the driver.
> diff --git a/drivers/spi/spi-tegra114.c b/drivers/spi/spi-tegra114.c
> - r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!r) {
> - dev_err(&pdev->dev, "No IO memory resource\n");
> - ret = -ENODEV;
> - goto exit_free_master;
> - }
> tspi->phys = r->start;
> + r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
The tspi->phy assignment is broken there now.
> diff --git a/drivers/spi/spi-tegra20-slink.c b/drivers/spi/spi-tegra20-slink.c
> - r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!r) {
> - dev_err(&pdev->dev, "No IO memory resource\n");
> - ret = -ENODEV;
> - goto exit_free_master;
> - }
> tspi->phys = r->start;
> + r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
Same here.
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 38/42] arch/arm/plat-omap: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 38/42] arch/arm/plat-omap: " Wolfram Sang
@ 2013-05-10 16:46 ` Tony Lindgren
0 siblings, 0 replies; 96+ messages in thread
From: Tony Lindgren @ 2013-05-10 16:46 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Russell King, linux-arm-kernel, linux-omap
* Wolfram Sang <wsa@the-dreams.de> [130510 01:23]:
> 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>
Acked-by: Tony Lindgren <tony@atomide.com>
> ---
> arch/arm/plat-omap/dmtimer.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
> index 869254c..da1a3f7 100644
> --- a/arch/arm/plat-omap/dmtimer.c
> +++ b/arch/arm/plat-omap/dmtimer.c
> @@ -814,12 +814,6 @@ static int omap_dm_timer_probe(struct platform_device *pdev)
> return -ENODEV;
> }
>
> - mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (unlikely(!mem)) {
> - dev_err(dev, "%s: no memory resource.\n", __func__);
> - return -ENODEV;
> - }
> -
> timer = devm_kzalloc(dev, sizeof(struct omap_dm_timer), GFP_KERNEL);
> if (!timer) {
> dev_err(dev, "%s: memory alloc failed!\n", __func__);
> @@ -827,6 +821,7 @@ static int omap_dm_timer_probe(struct platform_device *pdev)
> }
>
> timer->fclk = ERR_PTR(-ENODEV);
> + mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> timer->io_base = devm_ioremap_resource(dev, mem);
> if (IS_ERR(timer->io_base))
> return PTR_ERR(timer->io_base);
> --
> 1.7.10.4
>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
2013-05-10 16:35 ` Stephen Warren
@ 2013-05-10 17:57 ` Wolfram Sang
2013-05-10 19:25 ` Stephen Warren
0 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 17:57 UTC (permalink / raw)
To: Stephen Warren; +Cc: linux-kernel, Vinod Koul, Dan Williams, linux-tegra
On Fri, May 10, 2013 at 10:35:32AM -0600, Stephen Warren wrote:
> On 05/10/2013 02:16 AM, Wolfram Sang wrote:
> > devm_ioremap_resource does sanity checks on the given resource. No need to
> > duplicate this in the driver.
>
> > diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
>
> > res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > - if (!res) {
> > - dev_err(&pdev->dev, "No mem resource for DMA\n");
> > - return -EINVAL;
> > - }
> > -
> > tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
>
> One issue here is that it's not obvious just from reading the code
> that's left behind that the "missing" error-checking of the
> platform_get_resource() return value is OK because
> devm_ioremap_resource() will check it "for us". Everyone now has to
> mentally maintain a list of exceptions where it's OK not to error-check.
My goal is to make not-checking the standard case with devm.
> A similar situation exists for e.g. kzalloc already spewing an error
> when allocations fail, and so drivers don't need to print a diagnostic
> in that case, but it's helpful if they do in most other cases, but
> that's another issue.
My goal is to make drivers-not-printing-errors the standard case with devm :)
> Would it be better to introduce a new devm_ioremap_pdev_resource(pdev,
> index) that replaced both those two API calls with a single one. That
> way, only the author/reader of the new devm_ioremap_pdev_resource()
> would have to remember that caveat, and a single comment could be added
> so people unfamiliar with the code remember, without duplicating the
> comment in every driver.
I see two steps here:
1) make devm interface consistent
2) ease the devm interface with platform drivers
I am currently working on the first step.
Thanks,
Wolfram
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 27/42] drivers/tty/serial: don't check resource with devm_ioremap_resource
2013-05-10 15:26 ` Greg Kroah-Hartman
@ 2013-05-10 17:58 ` Wolfram Sang
0 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 17:58 UTC (permalink / raw)
To: Greg Kroah-Hartman
Cc: linux-kernel, Jiri Slaby, Stephen Warren, linux-serial, linux-tegra
On Fri, May 10, 2013 at 08:26:36AM -0700, Greg Kroah-Hartman wrote:
> On Fri, May 10, 2013 at 10:17:12AM +0200, Wolfram Sang wrote:
> > 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/tty/serial/serial-tegra.c | 6 +-----
> > 1 file changed, 1 insertion(+), 5 deletions(-)
> >
> > diff --git a/drivers/tty/serial/serial-tegra.c b/drivers/tty/serial/serial-tegra.c
> > index 9799d04..9570b55 100644
> > --- a/drivers/tty/serial/serial-tegra.c
> > +++ b/drivers/tty/serial/serial-tegra.c
> > @@ -1295,13 +1295,9 @@ static int tegra_uart_probe(struct platform_device *pdev)
> > tup->cdata = cdata;
> >
> > platform_set_drvdata(pdev, tup);
> > - resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > - if (!resource) {
> > - dev_err(&pdev->dev, "No IO memory resource\n");
> > - return -ENODEV;
> > - }
> >
> > u->mapbase = resource->start;
> > + resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>
> You need to look at your scripts, as again, this is totally wrong.
Yes, brown paper bag mistake :( Will fix!
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 30/42] drivers/usb/host: don't check resource with devm_ioremap_resource
2013-05-10 14:03 ` Alan Stern
@ 2013-05-10 18:00 ` Wolfram Sang
0 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-10 18:00 UTC (permalink / raw)
To: Alan Stern; +Cc: linux-kernel, Greg Kroah-Hartman, linux-usb
On Fri, May 10, 2013 at 10:03:28AM -0400, Alan Stern wrote:
> On Fri, 10 May 2013, Wolfram Sang wrote:
>
> > 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/usb/host/ehci-atmel.c | 9 +--------
> > drivers/usb/host/ehci-mxc.c | 8 +-------
> > drivers/usb/host/ehci-platform.c | 6 +-----
> > drivers/usb/host/ehci-sh.c | 10 +---------
> > drivers/usb/host/ohci-nxp.c | 6 ------
> > drivers/usb/host/ohci-platform.c | 7 +------
> > 6 files changed, 5 insertions(+), 41 deletions(-)
> >
> > diff --git a/drivers/usb/host/ehci-atmel.c b/drivers/usb/host/ehci-atmel.c
> > index 6642009..62bf3e6 100644
> > --- a/drivers/usb/host/ehci-atmel.c
> > +++ b/drivers/usb/host/ehci-atmel.c
> > @@ -101,17 +101,10 @@ static int ehci_atmel_drv_probe(struct platform_device *pdev)
> > goto fail_create_hcd;
> > }
> >
> > - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > - if (!res) {
> > - dev_err(&pdev->dev,
> > - "Found HC with no register addr. Check %s setup!\n",
> > - dev_name(&pdev->dev));
> > - retval = -ENODEV;
> > - goto fail_request_resource;
> > - }
> > hcd->rsrc_start = res->start;
> > hcd->rsrc_len = resource_size(res);
> >
> > + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > hcd->regs = devm_ioremap_resource(&pdev->dev, res);
>
> This isn't right. You are now dereferencing an uninitialized pointer
> in the assignment to hcd->rsrc_start. The compiler won't like that.
>
> Most of the other changes in this patch suffer from the same problem.
I broke the detection of dereferencing and compile tested an unaffected
kernel. Thanks for pointing out. Will fix!
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
2013-05-10 17:57 ` Wolfram Sang
@ 2013-05-10 19:25 ` Stephen Warren
2013-05-12 16:04 ` Vinod Koul
0 siblings, 1 reply; 96+ messages in thread
From: Stephen Warren @ 2013-05-10 19:25 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Vinod Koul, Dan Williams, linux-tegra
On 05/10/2013 11:57 AM, Wolfram Sang wrote:
> On Fri, May 10, 2013 at 10:35:32AM -0600, Stephen Warren wrote:
>> On 05/10/2013 02:16 AM, Wolfram Sang wrote:
>>> devm_ioremap_resource does sanity checks on the given resource. No need to
>>> duplicate this in the driver.
>>
>>> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
>>
>>> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>>> - if (!res) {
>>> - dev_err(&pdev->dev, "No mem resource for DMA\n");
>>> - return -EINVAL;
>>> - }
>>> -
>>> tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
>>
>> One issue here is that it's not obvious just from reading the code
>> that's left behind that the "missing" error-checking of the
>> platform_get_resource() return value is OK because
>> devm_ioremap_resource() will check it "for us". Everyone now has to
>> mentally maintain a list of exceptions where it's OK not to error-check.
>
> My goal is to make not-checking the standard case with devm.
OK, if no parameters passed to any devm function every need to be
error-checked, that'll certainly be a bit easier to remember.
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 39/42] arch/arm/plat-samsung: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 39/42] arch/arm/plat-samsung: " Wolfram Sang
@ 2013-05-11 5:15 ` Jingoo Han
0 siblings, 0 replies; 96+ messages in thread
From: Jingoo Han @ 2013-05-11 5:15 UTC (permalink / raw)
To: 'Wolfram Sang', linux-kernel
Cc: 'Ben Dooks', 'Kukjin Kim', 'Russell King',
linux-arm-kernel, linux-samsung-soc, Jingoo Han
On Friday, May 10, 2013 5:17 PM, Wolfram Sang wrote:
>
> 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>
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Best regards,
Jingoo Han
> ---
> arch/arm/plat-samsung/adc.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/arch/arm/plat-samsung/adc.c b/arch/arm/plat-samsung/adc.c
> index ca07cb1..79690f2 100644
> --- a/arch/arm/plat-samsung/adc.c
> +++ b/arch/arm/plat-samsung/adc.c
> @@ -381,11 +381,6 @@ static int s3c_adc_probe(struct platform_device *pdev)
> }
>
> regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!regs) {
> - dev_err(dev, "failed to find registers\n");
> - return -ENXIO;
> - }
> -
> adc->regs = devm_ioremap_resource(dev, regs);
> if (IS_ERR(adc->regs))
> return PTR_ERR(adc->regs);
> --
> 1.7.10.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 09/42] drivers/i2c/busses: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 09/42] drivers/i2c/busses: " Wolfram Sang
@ 2013-05-11 5:18 ` Jingoo Han
2013-06-04 18:34 ` Kevin Hilman
1 sibling, 0 replies; 96+ messages in thread
From: Jingoo Han @ 2013-05-11 5:18 UTC (permalink / raw)
To: 'Wolfram Sang', linux-kernel
Cc: 'Sekhar Nori', 'Kevin Hilman',
'Tony Lindgren', 'Ben Dooks',
'Kukjin Kim', 'Barry Song',
'Stephen Warren',
davinci-linux-open-source, linux-i2c, linux-omap,
linux-arm-kernel, linux-samsung-soc, linux-tegra, Jingoo Han
On Friday, May 10, 2013 5:17 PM, Wolfram Sang wrote:
>
> 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 -----
For drivers/i2c/busses/i2c-s3c2410.c
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Best regards,
Jingoo Han
> 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
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 23/42] drivers/spi: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 23/42] drivers/spi: " Wolfram Sang
2013-05-10 10:55 ` Mark Brown
2013-05-10 16:37 ` Stephen Warren
@ 2013-05-11 5:24 ` Jingoo Han
2 siblings, 0 replies; 96+ messages in thread
From: Jingoo Han @ 2013-05-11 5:24 UTC (permalink / raw)
To: 'Wolfram Sang', linux-kernel
Cc: 'Mark Brown', 'Grant Likely', 'Ben Dooks',
'Kukjin Kim', 'Barry Song',
'Stephen Warren',
spi-devel-general, linux-arm-kernel, linux-samsung-soc,
linux-tegra, Jingoo Han
On Friday, May 10, 2013 5:17 PM, Wolfram Sang wrote:
>
> 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/spi/spi-bcm63xx.c | 8 +-------
> drivers/spi/spi-ep93xx.c | 8 +-------
> drivers/spi/spi-omap2-mcspi.c | 7 +------
> drivers/spi/spi-s3c64xx.c | 7 +------
> drivers/spi/spi-sirf.c | 7 +------
> drivers/spi/spi-tegra114.c | 7 +------
> drivers/spi/spi-tegra20-sflash.c | 5 -----
> drivers/spi/spi-tegra20-slink.c | 7 +------
> 8 files changed, 7 insertions(+), 49 deletions(-)
>
[.....]
> diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
> index 5000586..fd763cc 100644
> --- a/drivers/spi/spi-s3c64xx.c
> +++ b/drivers/spi/spi-s3c64xx.c
> @@ -1243,12 +1243,6 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
> return -ENODEV;
> }
>
> - mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (mem_res == NULL) {
> - dev_err(&pdev->dev, "Unable to get SPI MEM resource\n");
> - return -ENXIO;
> - }
> -
It breaks 'sdd->sfr_start' assignment as below:
1272 sdd->sfr_start = mem_res->start;
Best regards,
Jingoo Han
> irq = platform_get_irq(pdev, 0);
> if (irq < 0) {
> dev_warn(&pdev->dev, "Failed to get IRQ: %d\n", irq);
> @@ -1318,6 +1312,7 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
> /* the spi->mode bits understood by this driver: */
> master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH;
>
> + mem_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> sdd->regs = devm_ioremap_resource(&pdev->dev, mem_res);
> if (IS_ERR(sdd->regs)) {
> ret = PTR_ERR(sdd->regs);
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 32/42] drivers/video: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 32/42] drivers/video: " Wolfram Sang
@ 2013-05-11 5:33 ` Jingoo Han
2013-05-13 5:39 ` Shawn Guo
0 siblings, 1 reply; 96+ messages in thread
From: Jingoo Han @ 2013-05-11 5:33 UTC (permalink / raw)
To: 'Wolfram Sang', linux-kernel
Cc: 'Florian Tobias Schandinat',
linux-fbdev, 'Tomi Valkeinen', 'Shawn Guo',
Fabio Estevam
On Friday, May 10, 2013 5:17 PM, Wolfram Sang wrote:
>
> 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>
CC'ed Tomi Valkeinen, Shawn Guo, Fabio Estevam
It looks good.
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Best regards,
Jingoo Han
> ---
> drivers/video/mxsfb.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/drivers/video/mxsfb.c b/drivers/video/mxsfb.c
> index 1b2c26d..3dc3265 100644
> --- a/drivers/video/mxsfb.c
> +++ b/drivers/video/mxsfb.c
> @@ -883,12 +883,6 @@ static int mxsfb_probe(struct platform_device *pdev)
> if (of_id)
> pdev->id_entry = of_id->data;
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Cannot get memory IO resource\n");
> - return -ENODEV;
> - }
> -
> fb_info = framebuffer_alloc(sizeof(struct mxsfb_info), &pdev->dev);
> if (!fb_info) {
> dev_err(&pdev->dev, "Failed to allocate fbdev\n");
> @@ -897,6 +891,7 @@ static int mxsfb_probe(struct platform_device *pdev)
>
> host = to_imxfb_host(fb_info);
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> host->base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(host->base)) {
> dev_err(&pdev->dev, "ioremap failed\n");
> --
> 1.7.10.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 34/42] drivers/video/omap2/dss: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 34/42] drivers/video/omap2/dss: " Wolfram Sang
@ 2013-05-11 5:36 ` Jingoo Han
0 siblings, 0 replies; 96+ messages in thread
From: Jingoo Han @ 2013-05-11 5:36 UTC (permalink / raw)
To: 'Wolfram Sang', linux-kernel
Cc: 'Tomi Valkeinen', 'Florian Tobias Schandinat',
linux-omap, linux-fbdev
On Friday, May 10, 2013 5:17 PM, Wolfram Sang wrote:
>
> 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>
It looks good.
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Best regards,
Jingoo Han
> ---
> drivers/video/omap2/dss/hdmi.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c
> index 17f4d55..7bc6762 100644
> --- a/drivers/video/omap2/dss/hdmi.c
> +++ b/drivers/video/omap2/dss/hdmi.c
> @@ -1064,13 +1064,8 @@ static int omapdss_hdmihw_probe(struct platform_device *pdev)
> mutex_init(&hdmi.lock);
> mutex_init(&hdmi.ip_data.lock);
>
> - res = platform_get_resource(hdmi.pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - DSSERR("can't get IORESOURCE_MEM HDMI\n");
> - return -EINVAL;
> - }
> -
> /* Base address taken from platform */
> + res = platform_get_resource(hdmi.pdev, IORESOURCE_MEM, 0);
> hdmi.ip_data.base_wp = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(hdmi.ip_data.base_wp))
> return PTR_ERR(hdmi.ip_data.base_wp);
> --
> 1.7.10.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 33/42] drivers/video/omap2: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 33/42] drivers/video/omap2: " Wolfram Sang
@ 2013-05-11 5:37 ` Jingoo Han
0 siblings, 0 replies; 96+ messages in thread
From: Jingoo Han @ 2013-05-11 5:37 UTC (permalink / raw)
To: 'Wolfram Sang', linux-kernel
Cc: 'Tomi Valkeinen', 'Florian Tobias Schandinat',
linux-omap, linux-fbdev
On Friday, May 10, 2013 5:17 PM, Wolfram Sang wrote:
>
> 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>
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Best regards,
Jingoo Han
> ---
> drivers/video/omap2/vrfb.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/drivers/video/omap2/vrfb.c b/drivers/video/omap2/vrfb.c
> index 5261229..f346b02 100644
> --- a/drivers/video/omap2/vrfb.c
> +++ b/drivers/video/omap2/vrfb.c
> @@ -353,11 +353,6 @@ static int __init vrfb_probe(struct platform_device *pdev)
> /* first resource is the register res, the rest are vrfb contexts */
>
> mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!mem) {
> - dev_err(&pdev->dev, "can't get vrfb base address\n");
> - return -EINVAL;
> - }
> -
> vrfb_base = devm_ioremap_resource(&pdev->dev, mem);
> if (IS_ERR(vrfb_base))
> return PTR_ERR(vrfb_base);
> --
> 1.7.10.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
2013-05-10 11:07 ` Sergei Shtylyov
@ 2013-05-11 20:31 ` Sergei Shtylyov
0 siblings, 0 replies; 96+ messages in thread
From: Sergei Shtylyov @ 2013-05-11 20:31 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, netdev
Hello.
On 05/10/2013 03:07 PM, Sergei Shtylyov wrote:
>
>> 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>
>
> Acked-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
I was too fast, I'm now withdawing my ACK.
> WBR, Sergei
>
WBR, Sergei
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
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:35 ` Sergei Shtylyov
2013-05-12 9:42 ` Wolfram Sang
1 sibling, 1 reply; 96+ messages in thread
From: Sergei Shtylyov @ 2013-05-11 20:35 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, netdev
Hello.
On 05/10/2013 12:17 PM, Wolfram Sang wrote:
> 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/net/ethernet/renesas/sh_eth.c | 14 +-------------
> 1 file changed, 1 insertion(+), 13 deletions(-)
>
> diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c
> index 33dc6f2..6175839 100644
> --- a/drivers/net/ethernet/renesas/sh_eth.c
> +++ b/drivers/net/ethernet/renesas/sh_eth.c
> @@ -2661,14 +2661,6 @@ static int sh_eth_drv_probe(struct platform_device *pdev)
> struct sh_eth_private *mdp = NULL;
> struct sh_eth_plat_data *pd = pdev->dev.platform_data;
>
> - /* get base addr */
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (unlikely(res == NULL)) {
> - dev_err(&pdev->dev, "invalid resource\n");
> - ret = -EINVAL;
> - goto out;
> - }
> -
> ndev = alloc_etherdev(sizeof(struct sh_eth_private));
> if (!ndev) {
> ret = -ENOMEM;
There's ndev->base_addr = res->start; below this which you broke. NAK.
You should really compile-test your patches.
WBR, Sergei
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
2013-05-11 20:35 ` Sergei Shtylyov
@ 2013-05-12 9:42 ` Wolfram Sang
2013-05-12 15:26 ` Sergei Shtylyov
0 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-12 9:42 UTC (permalink / raw)
To: Sergei Shtylyov; +Cc: linux-kernel, netdev
> You should really compile-test your patches.
Easier said than done with a cleanup series touching various platforms
and architectures. If there are already solutions how to find a .config
compiling the source file modified, I am all ears.
That being said, the actual mistake I did was embarassing, I agree. I am
sorry for that and will improve. And, doing things means doing mistakes,
too.
Regards,
Wolfram
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 19/42] drivers/pinctrl/spear: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 19/42] drivers/pinctrl/spear: " Wolfram Sang
@ 2013-05-12 15:10 ` Viresh Kumar
2013-05-14 12:56 ` Linus Walleij
1 sibling, 0 replies; 96+ messages in thread
From: Viresh Kumar @ 2013-05-12 15:10 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Linus Walleij, spear-devel, linux-arm-kernel
On Fri, May 10, 2013 at 1:47 PM, Wolfram Sang <wsa@the-dreams.de> wrote:
> 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/pinctrl/spear/pinctrl-plgpio.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/drivers/pinctrl/spear/pinctrl-plgpio.c b/drivers/pinctrl/spear/pinctrl-plgpio.c
> index 3e5a887..6b090be 100644
> --- a/drivers/pinctrl/spear/pinctrl-plgpio.c
> +++ b/drivers/pinctrl/spear/pinctrl-plgpio.c
> @@ -528,18 +528,13 @@ static int plgpio_probe(struct platform_device *pdev)
> struct resource *res;
> int ret, irq, i;
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "invalid IORESOURCE_MEM\n");
> - return -EBUSY;
> - }
> -
> plgpio = devm_kzalloc(&pdev->dev, sizeof(*plgpio), GFP_KERNEL);
> if (!plgpio) {
> dev_err(&pdev->dev, "memory allocation fail\n");
> return -ENOMEM;
> }
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> plgpio->base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(plgpio->base))
> return PTR_ERR(plgpio->base);
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 05/42] drivers/gpio: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 05/42] drivers/gpio: " Wolfram Sang
@ 2013-05-12 15:11 ` Viresh Kumar
0 siblings, 0 replies; 96+ messages in thread
From: Viresh Kumar @ 2013-05-12 15:11 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Grant Likely, Linus Walleij, Stephen Warren, linux-tegra
On Fri, May 10, 2013 at 1:46 PM, Wolfram Sang <wsa@the-dreams.de> wrote:
> 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/gpio/gpio-spear-spics.c | 7 +------
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 22/42] drivers/rtc: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 22/42] drivers/rtc: " Wolfram Sang
@ 2013-05-12 15:11 ` Viresh Kumar
0 siblings, 0 replies; 96+ messages in thread
From: Viresh Kumar @ 2013-05-12 15:11 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Wan ZongShun, Alessandro Zummo, Stephen Warren,
linux-arm-kernel, rtc-linux, linux-tegra
On Fri, May 10, 2013 at 1:47 PM, Wolfram Sang <wsa@the-dreams.de> wrote:
> 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/rtc/rtc-spear.c | 7 +------
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 20/42] drivers/pwm: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 20/42] drivers/pwm: " Wolfram Sang
@ 2013-05-12 15:12 ` Viresh Kumar
0 siblings, 0 replies; 96+ messages in thread
From: Viresh Kumar @ 2013-05-12 15:12 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Thierry Reding, Stephen Warren, Tony Prisk,
linux-tegra, linux-arm-kernel
On Fri, May 10, 2013 at 1:47 PM, Wolfram Sang <wsa@the-dreams.de> wrote:
> 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/pwm/pwm-spear.c | 7 +------
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 10/42] drivers/input/keyboard: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 10/42] drivers/input/keyboard: " Wolfram Sang
@ 2013-05-12 15:12 ` Viresh Kumar
0 siblings, 0 replies; 96+ messages in thread
From: Viresh Kumar @ 2013-05-12 15:12 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Dmitry Torokhov, Stephen Warren, linux-input, linux-tegra
On Fri, May 10, 2013 at 1:46 PM, Wolfram Sang <wsa@the-dreams.de> wrote:
> 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/input/keyboard/spear-keyboard.c
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
2013-05-12 9:42 ` Wolfram Sang
@ 2013-05-12 15:26 ` Sergei Shtylyov
2013-05-12 16:32 ` Wolfram Sang
0 siblings, 1 reply; 96+ messages in thread
From: Sergei Shtylyov @ 2013-05-12 15:26 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, netdev
Hello.
On 12-05-2013 13:42, Wolfram Sang wrote:
>> You should really compile-test your patches.
> Easier said than done with a cleanup series touching various platforms
> and architectures. If there are already solutions how to find a .config
> compiling the source file modified, I am all ears.
You can always try to do:
$ make drivers/net/ethernet/renesas/sh_eth.o
with a .config file you have. It will compile a file regardless of
whether it's enabled in your .config or not...
> That being said, the actual mistake I did was embarassing, I agree. I am
> sorry for that and will improve. And, doing things means doing mistakes,
> too.
Be more attentive in the future please. :-)
> Regards,
> Wolfram
WBR, Sergei
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
2013-05-10 19:25 ` Stephen Warren
@ 2013-05-12 16:04 ` Vinod Koul
2013-05-12 18:28 ` Wolfram Sang
0 siblings, 1 reply; 96+ messages in thread
From: Vinod Koul @ 2013-05-12 16:04 UTC (permalink / raw)
To: Stephen Warren; +Cc: Wolfram Sang, linux-kernel, Dan Williams, linux-tegra
On Fri, May 10, 2013 at 01:25:36PM -0600, Stephen Warren wrote:
> On 05/10/2013 11:57 AM, Wolfram Sang wrote:
> > On Fri, May 10, 2013 at 10:35:32AM -0600, Stephen Warren wrote:
> >> On 05/10/2013 02:16 AM, Wolfram Sang wrote:
> >>> devm_ioremap_resource does sanity checks on the given resource. No need to
> >>> duplicate this in the driver.
> >>
> >>> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> >>
> >>> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> >>> - if (!res) {
> >>> - dev_err(&pdev->dev, "No mem resource for DMA\n");
> >>> - return -EINVAL;
> >>> - }
> >>> -
> >>> tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
> >>
> >> One issue here is that it's not obvious just from reading the code
> >> that's left behind that the "missing" error-checking of the
> >> platform_get_resource() return value is OK because
> >> devm_ioremap_resource() will check it "for us". Everyone now has to
> >> mentally maintain a list of exceptions where it's OK not to error-check.
> >
> > My goal is to make not-checking the standard case with devm.
>
> OK, if no parameters passed to any devm function every need to be
> error-checked, that'll certainly be a bit easier to remember.
Okay to remove the log message and move to devm_ but I dont agree with this
patch not returning error above. We shouldnt supress the error..
--
~Vinod
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
2013-05-12 15:26 ` Sergei Shtylyov
@ 2013-05-12 16:32 ` Wolfram Sang
2013-05-12 18:33 ` Sergei Shtylyov
0 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-12 16:32 UTC (permalink / raw)
To: Sergei Shtylyov; +Cc: linux-kernel, netdev
Hi,
> You can always try to do:
>
> $ make drivers/net/ethernet/renesas/sh_eth.o
>
> with a .config file you have. It will compile a file regardless of
> whether it's enabled in your .config or not...
Been there. This mainly works for platform independent drivers. In this case:
CC drivers/net/ethernet/renesas/sh_eth.o
drivers/net/ethernet/renesas/sh_eth.c: In function 'sh_eth_dev_init':
drivers/net/ethernet/renesas/sh_eth.c:1274:2: error: implicit declaration of function 'sh_eth_reset' [-Werror=implicit-function-declaration]
drivers/net/ethernet/renesas/sh_eth.c: In function 'sh_eth_drv_probe':
drivers/net/ethernet/renesas/sh_eth.c:2724:13: error: 'sh_eth_my_cpu_data' undeclared (first use in this function)
drivers/net/ethernet/renesas/sh_eth.c:2724:13: note: each undeclared identifier is reported only once for each function it appears in
drivers/net/ethernet/renesas/sh_eth.c: At top level:
drivers/net/ethernet/renesas/sh_eth.c:889:12: warning: 'sh_eth_check_reset' defined but not used [-Wunused-function]
> >That being said, the actual mistake I did was embarassing, I agree. I am
> >sorry for that and will improve. And, doing things means doing mistakes,
> >too.
>
> Be more attentive in the future please. :-)
Sure thing.
Regards,
Wolfram
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 36/42] drivers/watchdog: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 36/42] drivers/watchdog: " Wolfram Sang
@ 2013-05-12 17:23 ` Wim Van Sebroeck
0 siblings, 0 replies; 96+ messages in thread
From: Wim Van Sebroeck @ 2013-05-12 17:23 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, linux-watchdog
Hi Wolfram,
> 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>
Acked-by: Wim Van Sebroeck <wim@iguana.be>
> ---
> drivers/watchdog/imx2_wdt.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/drivers/watchdog/imx2_wdt.c b/drivers/watchdog/imx2_wdt.c
> index ff90882..62946c2 100644
> --- a/drivers/watchdog/imx2_wdt.c
> +++ b/drivers/watchdog/imx2_wdt.c
> @@ -257,11 +257,6 @@ static int __init imx2_wdt_probe(struct platform_device *pdev)
> struct resource *res;
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "can't get device resources\n");
> - return -ENODEV;
> - }
> -
> imx2_wdt.base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(imx2_wdt.base))
> return PTR_ERR(imx2_wdt.base);
Kind regards,
Wim.
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
2013-05-12 16:04 ` Vinod Koul
@ 2013-05-12 18:28 ` Wolfram Sang
2013-05-13 2:10 ` Vinod Koul
0 siblings, 1 reply; 96+ messages in thread
From: Wolfram Sang @ 2013-05-12 18:28 UTC (permalink / raw)
To: Vinod Koul; +Cc: Stephen Warren, linux-kernel, Dan Williams, linux-tegra
On Sun, May 12, 2013 at 09:34:40PM +0530, Vinod Koul wrote:
> On Fri, May 10, 2013 at 01:25:36PM -0600, Stephen Warren wrote:
> > On 05/10/2013 11:57 AM, Wolfram Sang wrote:
> > > On Fri, May 10, 2013 at 10:35:32AM -0600, Stephen Warren wrote:
> > >> On 05/10/2013 02:16 AM, Wolfram Sang wrote:
> > >>> devm_ioremap_resource does sanity checks on the given resource. No need to
> > >>> duplicate this in the driver.
> > >>
> > >>> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> > >>
> > >>> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > >>> - if (!res) {
> > >>> - dev_err(&pdev->dev, "No mem resource for DMA\n");
> > >>> - return -EINVAL;
> > >>> - }
> > >>> -
> > >>> tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
> > >>
> > >> One issue here is that it's not obvious just from reading the code
> > >> that's left behind that the "missing" error-checking of the
> > >> platform_get_resource() return value is OK because
> > >> devm_ioremap_resource() will check it "for us". Everyone now has to
> > >> mentally maintain a list of exceptions where it's OK not to error-check.
> > >
> > > My goal is to make not-checking the standard case with devm.
> >
> > OK, if no parameters passed to any devm function every need to be
> > error-checked, that'll certainly be a bit easier to remember.
> Okay to remove the log message and move to devm_ but I dont agree with this
> patch not returning error above. We shouldnt supress the error..
The error will be reported because devm_ioremap_resource will return an
ERR_PTR.
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 17/42] drivers/net/ethernet/renesas: don't check resource with devm_ioremap_resource
2013-05-12 16:32 ` Wolfram Sang
@ 2013-05-12 18:33 ` Sergei Shtylyov
0 siblings, 0 replies; 96+ messages in thread
From: Sergei Shtylyov @ 2013-05-12 18:33 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, netdev
Hello.
On 05/12/2013 08:32 PM, Wolfram Sang wrote:
>
>> You can always try to do:
>>
>> $ make drivers/net/ethernet/renesas/sh_eth.o
>>
>> with a .config file you have. It will compile a file regardless of
>> whether it's enabled in your .config or not...
> Been there. This mainly works for platform independent drivers. In this case:
>
> CC drivers/net/ethernet/renesas/sh_eth.o
> drivers/net/ethernet/renesas/sh_eth.c: In function 'sh_eth_dev_init':
> drivers/net/ethernet/renesas/sh_eth.c:1274:2: error: implicit declaration of function 'sh_eth_reset' [-Werror=implicit-function-declaration]
> drivers/net/ethernet/renesas/sh_eth.c: In function 'sh_eth_drv_probe':
> drivers/net/ethernet/renesas/sh_eth.c:2724:13: error: 'sh_eth_my_cpu_data' undeclared (first use in this function)
> drivers/net/ethernet/renesas/sh_eth.c:2724:13: note: each undeclared identifier is reported only once for each function it appears in
> drivers/net/ethernet/renesas/sh_eth.c: At top level:
> drivers/net/ethernet/renesas/sh_eth.c:889:12: warning: 'sh_eth_check_reset' defined but not used [-Wunused-function]
At least you can try to filter out errors/warning caused by your
patch from
those that are caused by platform dependency. Concerning this driver,
hopefully
the platform dependencies will go away in 3.11.
> Regards,
>
> Wolfram
>
WBR, Sergei
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
2013-05-12 18:28 ` Wolfram Sang
@ 2013-05-13 2:10 ` Vinod Koul
2013-05-13 6:08 ` Wolfram Sang
0 siblings, 1 reply; 96+ messages in thread
From: Vinod Koul @ 2013-05-13 2:10 UTC (permalink / raw)
To: Wolfram Sang; +Cc: Stephen Warren, linux-kernel, Dan Williams, linux-tegra
On Sun, May 12, 2013 at 08:28:07PM +0200, Wolfram Sang wrote:
> On Sun, May 12, 2013 at 09:34:40PM +0530, Vinod Koul wrote:
> > On Fri, May 10, 2013 at 01:25:36PM -0600, Stephen Warren wrote:
> > > On 05/10/2013 11:57 AM, Wolfram Sang wrote:
> > > > On Fri, May 10, 2013 at 10:35:32AM -0600, Stephen Warren wrote:
> > > >> On 05/10/2013 02:16 AM, Wolfram Sang wrote:
> > > >>> devm_ioremap_resource does sanity checks on the given resource. No need to
> > > >>> duplicate this in the driver.
> > > >>
> > > >>> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> > > >>
> > > >>> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > > >>> - if (!res) {
> > > >>> - dev_err(&pdev->dev, "No mem resource for DMA\n");
> > > >>> - return -EINVAL;
> > > >>> - }
> > > >>> -
> > > >>> tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
> > > >>
> > > >> One issue here is that it's not obvious just from reading the code
> > > >> that's left behind that the "missing" error-checking of the
> > > >> platform_get_resource() return value is OK because
> > > >> devm_ioremap_resource() will check it "for us". Everyone now has to
> > > >> mentally maintain a list of exceptions where it's OK not to error-check.
> > > >
> > > > My goal is to make not-checking the standard case with devm.
> > >
> > > OK, if no parameters passed to any devm function every need to be
> > > error-checked, that'll certainly be a bit easier to remember.
> > Okay to remove the log message and move to devm_ but I dont agree with this
> > patch not returning error above. We shouldnt supress the error..
>
> The error will be reported because devm_ioremap_resource will return an
> ERR_PTR.
And this patch removed the check on 'res' pointer, so on failure we continue...
--
~Vinod
>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 32/42] drivers/video: don't check resource with devm_ioremap_resource
2013-05-11 5:33 ` Jingoo Han
@ 2013-05-13 5:39 ` Shawn Guo
0 siblings, 0 replies; 96+ messages in thread
From: Shawn Guo @ 2013-05-13 5:39 UTC (permalink / raw)
To: Jingoo Han
Cc: 'Wolfram Sang',
linux-kernel, 'Florian Tobias Schandinat',
linux-fbdev, 'Tomi Valkeinen',
Fabio Estevam
On Sat, May 11, 2013 at 02:33:56PM +0900, Jingoo Han wrote:
> On Friday, May 10, 2013 5:17 PM, Wolfram Sang wrote:
> >
> > 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>
>
> CC'ed Tomi Valkeinen, Shawn Guo, Fabio Estevam
Acked-by: Shawn Guo <shawn.guo@linaro.org>
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 04/42] drivers/dma: don't check resource with devm_ioremap_resource
2013-05-13 2:10 ` Vinod Koul
@ 2013-05-13 6:08 ` Wolfram Sang
0 siblings, 0 replies; 96+ messages in thread
From: Wolfram Sang @ 2013-05-13 6:08 UTC (permalink / raw)
To: Vinod Koul; +Cc: Stephen Warren, linux-kernel, Dan Williams, linux-tegra
> > > > >>> devm_ioremap_resource does sanity checks on the given resource. No need to
> > > > >>> duplicate this in the driver.
> > > > >>
> > > > >>> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> > > > >>
> > > > >>> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> > > > >>> - if (!res) {
> > > > >>> - dev_err(&pdev->dev, "No mem resource for DMA\n");
> > > > >>> - return -EINVAL;
> > > > >>> - }
> > > > >>> -
> > > > >>> tdma->base_addr = devm_ioremap_resource(&pdev->dev, res);
> > > > >>
> > > > >> One issue here is that it's not obvious just from reading the code
> > > > >> that's left behind that the "missing" error-checking of the
> > > > >> platform_get_resource() return value is OK because
> > > > >> devm_ioremap_resource() will check it "for us". Everyone now has to
> > > > >> mentally maintain a list of exceptions where it's OK not to error-check.
> > > > >
> > > > > My goal is to make not-checking the standard case with devm.
> > > >
> > > > OK, if no parameters passed to any devm function every need to be
> > > > error-checked, that'll certainly be a bit easier to remember.
> > > Okay to remove the log message and move to devm_ but I dont agree with this
> > > patch not returning error above. We shouldnt supress the error..
> >
> > The error will be reported because devm_ioremap_resource will return an
> > ERR_PTR.
> And this patch removed the check on 'res' pointer, so on failure we continue...
I don't get it. What is the difference between a manual check of res and
the directly following devm_ioremap_resource returning ERR_PTR(-EINVAL)
if res is NULL?
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 18/42] drivers/pinctrl: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 18/42] drivers/pinctrl: " Wolfram Sang
2013-05-10 14:30 ` Jean-Christophe PLAGNIOL-VILLARD
@ 2013-05-14 12:19 ` Linus Walleij
2013-06-06 8:43 ` Jean-Christophe PLAGNIOL-VILLARD
2 siblings, 0 replies; 96+ messages in thread
From: Linus Walleij @ 2013-05-14 12:19 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Jean-Christophe Plagniol-Villard, linux-arm-kernel
On Fri, May 10, 2013 at 10:17 AM, Wolfram Sang <wsa@the-dreams.de> wrote:
> 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>
Patch applied with Jean-Christophe's ACK.
Thanks!
Linus Walleij
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 19/42] drivers/pinctrl/spear: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 19/42] drivers/pinctrl/spear: " Wolfram Sang
2013-05-12 15:10 ` Viresh Kumar
@ 2013-05-14 12:56 ` Linus Walleij
1 sibling, 0 replies; 96+ messages in thread
From: Linus Walleij @ 2013-05-14 12:56 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Viresh Kumar, spear-devel, linux-arm-kernel
On Fri, May 10, 2013 at 10:17 AM, Wolfram Sang <wsa@the-dreams.de> wrote:
> 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>
Patch applied with Viresh's ACK.
Thanks!
Linus Walleij
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 26/42] drivers/thermal: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 26/42] drivers/thermal: " Wolfram Sang
2013-05-10 13:50 ` Eduardo Valentin
@ 2013-05-16 7:22 ` Zhang Rui
1 sibling, 0 replies; 96+ messages in thread
From: Zhang Rui @ 2013-05-16 7:22 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, linux-pm
On Fri, 2013-05-10 at 10:17 +0200, Wolfram Sang wrote:
> 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>
applied to thermal -next.
thanks,
rui
> ---
> drivers/thermal/dove_thermal.c | 11 +----------
> drivers/thermal/exynos_thermal.c | 5 -----
> drivers/thermal/kirkwood_thermal.c | 7 +------
> drivers/thermal/rcar_thermal.c | 6 +-----
> 4 files changed, 3 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/thermal/dove_thermal.c b/drivers/thermal/dove_thermal.c
> index 3078c40..5c53c53 100644
> --- a/drivers/thermal/dove_thermal.c
> +++ b/drivers/thermal/dove_thermal.c
> @@ -133,25 +133,16 @@ static int dove_thermal_probe(struct platform_device *pdev)
> struct resource *res;
> int ret;
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENODEV;
> - }
> -
> priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
> if (!priv)
> return -ENOMEM;
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> priv->sensor = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->sensor))
> return PTR_ERR(priv->sensor);
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENODEV;
> - }
> priv->control = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->control))
> return PTR_ERR(priv->control);
> diff --git a/drivers/thermal/exynos_thermal.c b/drivers/thermal/exynos_thermal.c
> index b777ae6..a7bef42 100644
> --- a/drivers/thermal/exynos_thermal.c
> +++ b/drivers/thermal/exynos_thermal.c
> @@ -967,11 +967,6 @@ static int exynos_tmu_probe(struct platform_device *pdev)
> INIT_WORK(&data->irq_work, exynos_tmu_work);
>
> data->mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!data->mem) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENOENT;
> - }
> -
> data->base = devm_ioremap_resource(&pdev->dev, data->mem);
> if (IS_ERR(data->base))
> return PTR_ERR(data->base);
> diff --git a/drivers/thermal/kirkwood_thermal.c b/drivers/thermal/kirkwood_thermal.c
> index e5500ed..e3ca1b4 100644
> --- a/drivers/thermal/kirkwood_thermal.c
> +++ b/drivers/thermal/kirkwood_thermal.c
> @@ -75,16 +75,11 @@ static int kirkwood_thermal_probe(struct platform_device *pdev)
> struct kirkwood_thermal_priv *priv;
> struct resource *res;
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get platform resource\n");
> - return -ENODEV;
> - }
> -
> priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
> if (!priv)
> return -ENOMEM;
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> priv->sensor = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->sensor))
> return PTR_ERR(priv->sensor);
> diff --git a/drivers/thermal/rcar_thermal.c b/drivers/thermal/rcar_thermal.c
> index 2cc5b61..b2217b3 100644
> --- a/drivers/thermal/rcar_thermal.c
> +++ b/drivers/thermal/rcar_thermal.c
> @@ -385,11 +385,6 @@ static int rcar_thermal_probe(struct platform_device *pdev)
> * platform has IRQ support.
> * Then, drier use common register
> */
> - res = platform_get_resource(pdev, IORESOURCE_MEM, mres++);
> - if (!res) {
> - dev_err(dev, "Could not get platform resource\n");
> - return -ENODEV;
> - }
>
> ret = devm_request_irq(dev, irq->start, rcar_thermal_irq, 0,
> dev_name(dev), common);
> @@ -401,6 +396,7 @@ static int rcar_thermal_probe(struct platform_device *pdev)
> /*
> * rcar_has_irq_support() will be enabled
> */
> + res = platform_get_resource(pdev, IORESOURCE_MEM, mres++);
> common->base = devm_ioremap_resource(dev, res);
> if (IS_ERR(common->base))
> return PTR_ERR(common->base);
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 13/42] drivers/mfd: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 13/42] drivers/mfd: " Wolfram Sang
@ 2013-05-16 22:15 ` Samuel Ortiz
0 siblings, 0 replies; 96+ messages in thread
From: Samuel Ortiz @ 2013-05-16 22:15 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel
Hi Wolfgang,
On Fri, May 10, 2013 at 10:16:58AM +0200, Wolfram Sang wrote:
> 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/mfd/intel_msic.c | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
Applied to mfd-next, thanks.
Cheers,
Samuel.
--
Intel Open Source Technology Centre
http://oss.intel.com/
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 09/42] drivers/i2c/busses: don't check resource with devm_ioremap_resource
2013-05-10 8:16 ` [RFC 09/42] drivers/i2c/busses: " Wolfram Sang
2013-05-11 5:18 ` Jingoo Han
@ 2013-06-04 18:34 ` Kevin Hilman
1 sibling, 0 replies; 96+ messages in thread
From: Kevin Hilman @ 2013-06-04 18:34 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-kernel, Sekhar Nori, Tony Lindgren, Ben Dooks, Kukjin Kim,
Barry Song, Stephen Warren, davinci-linux-open-source, linux-i2c,
linux-omap, linux-arm-kernel, linux-samsung-soc, linux-tegra
Wolfram Sang <wsa@the-dreams.de> writes:
> 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>
Acked-by: Kevin Hilman <khilman@linaro.org> # for i2c-omap.c
^ permalink raw reply [flat|nested] 96+ messages in thread
* Re: [RFC 18/42] drivers/pinctrl: don't check resource with devm_ioremap_resource
2013-05-10 8:17 ` [RFC 18/42] drivers/pinctrl: " Wolfram Sang
2013-05-10 14:30 ` Jean-Christophe PLAGNIOL-VILLARD
2013-05-14 12:19 ` Linus Walleij
@ 2013-06-06 8:43 ` Jean-Christophe PLAGNIOL-VILLARD
2 siblings, 0 replies; 96+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2013-06-06 8:43 UTC (permalink / raw)
To: Wolfram Sang; +Cc: linux-kernel, Linus Walleij, linux-arm-kernel
On 10:17 Fri 10 May , Wolfram Sang wrote:
> 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/pinctrl/pinctrl-at91.c | 7 +------
for at91
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Best Regards,
J.
> drivers/pinctrl/pinctrl-coh901.c | 5 -----
> drivers/pinctrl/pinctrl-exynos5440.c | 5 -----
> drivers/pinctrl/pinctrl-samsung.c | 5 -----
> drivers/pinctrl/pinctrl-xway.c | 4 ----
> 5 files changed, 1 insertion(+), 25 deletions(-)
>
> diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
> index 5d7529e..b90a3a0 100644
> --- a/drivers/pinctrl/pinctrl-at91.c
> +++ b/drivers/pinctrl/pinctrl-at91.c
> @@ -1543,12 +1543,6 @@ static int at91_gpio_probe(struct platform_device *pdev)
> goto err;
> }
>
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - ret = -ENOENT;
> - goto err;
> - }
> -
> irq = platform_get_irq(pdev, 0);
> if (irq < 0) {
> ret = irq;
> @@ -1561,6 +1555,7 @@ static int at91_gpio_probe(struct platform_device *pdev)
> goto err;
> }
>
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> at91_chip->regbase = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(at91_chip->regbase)) {
> ret = PTR_ERR(at91_chip->regbase);
> diff --git a/drivers/pinctrl/pinctrl-coh901.c b/drivers/pinctrl/pinctrl-coh901.c
> index edde3ac..a67af41 100644
> --- a/drivers/pinctrl/pinctrl-coh901.c
> +++ b/drivers/pinctrl/pinctrl-coh901.c
> @@ -713,11 +713,6 @@ static int __init u300_gpio_probe(struct platform_device *pdev)
> gpio->dev = &pdev->dev;
>
> memres = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!memres) {
> - dev_err(gpio->dev, "could not get GPIO memory resource\n");
> - return -ENODEV;
> - }
> -
> gpio->base = devm_ioremap_resource(&pdev->dev, memres);
> if (IS_ERR(gpio->base))
> return PTR_ERR(gpio->base);
> diff --git a/drivers/pinctrl/pinctrl-exynos5440.c b/drivers/pinctrl/pinctrl-exynos5440.c
> index 6038503..32a48f4 100644
> --- a/drivers/pinctrl/pinctrl-exynos5440.c
> +++ b/drivers/pinctrl/pinctrl-exynos5440.c
> @@ -1000,11 +1000,6 @@ static int exynos5440_pinctrl_probe(struct platform_device *pdev)
> }
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(dev, "cannot find IO resource\n");
> - return -ENOENT;
> - }
> -
> priv->reg_base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(priv->reg_base))
> return PTR_ERR(priv->reg_base);
> diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c
> index 9763668..055d016 100644
> --- a/drivers/pinctrl/pinctrl-samsung.c
> +++ b/drivers/pinctrl/pinctrl-samsung.c
> @@ -932,11 +932,6 @@ static int samsung_pinctrl_probe(struct platform_device *pdev)
> drvdata->dev = dev;
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(dev, "cannot find IO resource\n");
> - return -ENOENT;
> - }
> -
> drvdata->virt_base = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(drvdata->virt_base))
> return PTR_ERR(drvdata->virt_base);
> diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
> index f2977cf..e92132c 100644
> --- a/drivers/pinctrl/pinctrl-xway.c
> +++ b/drivers/pinctrl/pinctrl-xway.c
> @@ -716,10 +716,6 @@ static int pinmux_xway_probe(struct platform_device *pdev)
>
> /* get and remap our register range */
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - if (!res) {
> - dev_err(&pdev->dev, "Failed to get resource\n");
> - return -ENOENT;
> - }
> xway_info.membase[0] = devm_ioremap_resource(&pdev->dev, res);
> if (IS_ERR(xway_info.membase[0]))
> return PTR_ERR(xway_info.membase[0]);
> --
> 1.7.10.4
>
^ permalink raw reply [flat|nested] 96+ messages in thread
end of thread, other threads:[~2013-06-06 8:48 UTC | newest]
Thread overview: 96+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <1368173847-5661-1-git-send-email-wsa@the-dreams.de>
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
2013-05-10 16:35 ` Stephen Warren
2013-05-10 17:57 ` Wolfram Sang
2013-05-10 19:25 ` Stephen Warren
2013-05-12 16:04 ` Vinod Koul
2013-05-12 18:28 ` Wolfram Sang
2013-05-13 2:10 ` Vinod Koul
2013-05-13 6:08 ` Wolfram Sang
2013-05-10 8:16 ` [RFC 05/42] drivers/gpio: " Wolfram Sang
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 ` [RFC 09/42] drivers/i2c/busses: " Wolfram Sang
2013-05-11 5:18 ` Jingoo Han
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-14 12:19 ` Linus Walleij
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-14 12:56 ` Linus Walleij
2013-05-10 8:17 ` [RFC 20/42] drivers/pwm: " Wolfram Sang
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
2013-05-12 15:11 ` Viresh Kumar
2013-05-10 8:17 ` [RFC 23/42] drivers/spi: " Wolfram Sang
2013-05-10 10:55 ` Mark Brown
2013-05-10 16:37 ` Stephen Warren
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 15:24 ` Greg Kroah-Hartman
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-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-11 5:33 ` Jingoo Han
2013-05-13 5:39 ` Shawn Guo
2013-05-10 8:17 ` [RFC 33/42] drivers/video/omap2: " Wolfram Sang
2013-05-11 5:37 ` Jingoo Han
2013-05-10 8:17 ` [RFC 34/42] drivers/video/omap2/dss: " Wolfram Sang
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 8:17 ` [RFC 39/42] arch/arm/plat-samsung: " Wolfram Sang
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 8:17 ` [RFC 42/42] sound/soc/kirkwood: " Wolfram Sang
2013-05-10 10:56 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).