diff options
author | Thierry Reding <thierry.reding@avionic-design.de> | 2013-01-21 11:09:23 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-01-22 11:41:58 -0800 |
commit | bc3bad166ca6b9683e7990a028073860954e67fc (patch) | |
tree | b9ea09818dd34ee2e9720e04fe14d4d6038ae0d7 /drivers | |
parent | 148e11349b0c9c7199fd3096254bd3ea16d59a05 (diff) | |
download | lwn-bc3bad166ca6b9683e7990a028073860954e67fc.tar.gz lwn-bc3bad166ca6b9683e7990a028073860954e67fc.zip |
video: Convert to devm_ioremap_resource()
Convert all uses of devm_request_and_ioremap() to the newly introduced
devm_ioremap_resource() which provides more consistent error handling.
devm_ioremap_resource() provides its own error messages so all explicit
error messages can be removed from the failure code paths.
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Acked-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/exynos/exynos_dp_core.c | 8 | ||||
-rw-r--r-- | drivers/video/jz4740_fb.c | 6 | ||||
-rw-r--r-- | drivers/video/omap2/dss/hdmi.c | 8 | ||||
-rw-r--r-- | drivers/video/omap2/vrfb.c | 9 | ||||
-rw-r--r-- | drivers/video/s3c-fb.c | 7 |
5 files changed, 16 insertions, 22 deletions
diff --git a/drivers/video/exynos/exynos_dp_core.c b/drivers/video/exynos/exynos_dp_core.c index 4ef18e2e90cc..7aae0bf3b372 100644 --- a/drivers/video/exynos/exynos_dp_core.c +++ b/drivers/video/exynos/exynos_dp_core.c @@ -1076,11 +1076,9 @@ static int exynos_dp_probe(struct platform_device *pdev) res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - dp->reg_base = devm_request_and_ioremap(&pdev->dev, res); - if (!dp->reg_base) { - dev_err(&pdev->dev, "failed to ioremap\n"); - return -ENOMEM; - } + dp->reg_base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(dp->reg_base)) + return PTR_ERR(dp->reg_base); dp->irq = platform_get_irq(pdev, 0); if (dp->irq == -ENXIO) { diff --git a/drivers/video/jz4740_fb.c b/drivers/video/jz4740_fb.c index d999bb5e0485..36979b4131ab 100644 --- a/drivers/video/jz4740_fb.c +++ b/drivers/video/jz4740_fb.c @@ -660,9 +660,9 @@ static int jzfb_probe(struct platform_device *pdev) } mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); - jzfb->base = devm_request_and_ioremap(&pdev->dev, mem); - if (!jzfb->base) { - ret = -EBUSY; + jzfb->base = devm_ioremap_resource(&pdev->dev, mem); + if (IS_ERR(jzfb->base)) { + ret = PTR_ERR(jzfb->base); goto err_framebuffer_release; } diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c index 769d0828581c..72923645dcce 100644 --- a/drivers/video/omap2/dss/hdmi.c +++ b/drivers/video/omap2/dss/hdmi.c @@ -1080,11 +1080,9 @@ static int __init omapdss_hdmihw_probe(struct platform_device *pdev) } /* Base address taken from platform */ - hdmi.ip_data.base_wp = devm_request_and_ioremap(&pdev->dev, res); - if (!hdmi.ip_data.base_wp) { - DSSERR("can't ioremap WP\n"); - return -ENOMEM; - } + 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); r = hdmi_get_clocks(pdev); if (r) { diff --git a/drivers/video/omap2/vrfb.c b/drivers/video/omap2/vrfb.c index 5d8fdac3b800..10560efeb35a 100644 --- a/drivers/video/omap2/vrfb.c +++ b/drivers/video/omap2/vrfb.c @@ -20,6 +20,7 @@ /*#define DEBUG*/ +#include <linux/err.h> #include <linux/kernel.h> #include <linux/module.h> #include <linux/ioport.h> @@ -357,11 +358,9 @@ static int __init vrfb_probe(struct platform_device *pdev) return -EINVAL; } - vrfb_base = devm_request_and_ioremap(&pdev->dev, mem); - if (!vrfb_base) { - dev_err(&pdev->dev, "can't ioremap vrfb memory\n"); - return -ENOMEM; - } + vrfb_base = devm_ioremap_resource(&pdev->dev, mem); + if (IS_ERR(vrfb_base)) + return PTR_ERR(vrfb_base); num_ctxs = pdev->num_resources - 1; diff --git a/drivers/video/s3c-fb.c b/drivers/video/s3c-fb.c index 9b57a235c9bc..968a62571df7 100644 --- a/drivers/video/s3c-fb.c +++ b/drivers/video/s3c-fb.c @@ -1421,10 +1421,9 @@ static int s3c_fb_probe(struct platform_device *pdev) pm_runtime_enable(sfb->dev); res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - sfb->regs = devm_request_and_ioremap(dev, res); - if (!sfb->regs) { - dev_err(dev, "failed to map registers\n"); - ret = -ENXIO; + sfb->regs = devm_ioremap_resource(dev, res); + if (IS_ERR(sfb->regs)) { + ret = PTR_ERR(sfb->regs); goto err_lcd_clk; } |