diff options
author | Thierry Reding <thierry.reding@avionic-design.de> | 2013-01-21 05:09:23 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-01-22 14:41:58 -0500 |
commit | bc3bad166ca6b9683e7990a028073860954e67fc (patch) | |
tree | b9ea09818dd34ee2e9720e04fe14d4d6038ae0d7 | |
parent | 148e11349b0c9c7199fd3096254bd3ea16d59a05 (diff) |
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>
-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) | |||
1076 | 1076 | ||
1077 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 1077 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
1078 | 1078 | ||
1079 | dp->reg_base = devm_request_and_ioremap(&pdev->dev, res); | 1079 | dp->reg_base = devm_ioremap_resource(&pdev->dev, res); |
1080 | if (!dp->reg_base) { | 1080 | if (IS_ERR(dp->reg_base)) |
1081 | dev_err(&pdev->dev, "failed to ioremap\n"); | 1081 | return PTR_ERR(dp->reg_base); |
1082 | return -ENOMEM; | ||
1083 | } | ||
1084 | 1082 | ||
1085 | dp->irq = platform_get_irq(pdev, 0); | 1083 | dp->irq = platform_get_irq(pdev, 0); |
1086 | if (dp->irq == -ENXIO) { | 1084 | 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) | |||
660 | } | 660 | } |
661 | 661 | ||
662 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 662 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
663 | jzfb->base = devm_request_and_ioremap(&pdev->dev, mem); | 663 | jzfb->base = devm_ioremap_resource(&pdev->dev, mem); |
664 | if (!jzfb->base) { | 664 | if (IS_ERR(jzfb->base)) { |
665 | ret = -EBUSY; | 665 | ret = PTR_ERR(jzfb->base); |
666 | goto err_framebuffer_release; | 666 | goto err_framebuffer_release; |
667 | } | 667 | } |
668 | 668 | ||
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) | |||
1080 | } | 1080 | } |
1081 | 1081 | ||
1082 | /* Base address taken from platform */ | 1082 | /* Base address taken from platform */ |
1083 | hdmi.ip_data.base_wp = devm_request_and_ioremap(&pdev->dev, res); | 1083 | hdmi.ip_data.base_wp = devm_ioremap_resource(&pdev->dev, res); |
1084 | if (!hdmi.ip_data.base_wp) { | 1084 | if (IS_ERR(hdmi.ip_data.base_wp)) |
1085 | DSSERR("can't ioremap WP\n"); | 1085 | return PTR_ERR(hdmi.ip_data.base_wp); |
1086 | return -ENOMEM; | ||
1087 | } | ||
1088 | 1086 | ||
1089 | r = hdmi_get_clocks(pdev); | 1087 | r = hdmi_get_clocks(pdev); |
1090 | if (r) { | 1088 | 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 @@ | |||
20 | 20 | ||
21 | /*#define DEBUG*/ | 21 | /*#define DEBUG*/ |
22 | 22 | ||
23 | #include <linux/err.h> | ||
23 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
24 | #include <linux/module.h> | 25 | #include <linux/module.h> |
25 | #include <linux/ioport.h> | 26 | #include <linux/ioport.h> |
@@ -357,11 +358,9 @@ static int __init vrfb_probe(struct platform_device *pdev) | |||
357 | return -EINVAL; | 358 | return -EINVAL; |
358 | } | 359 | } |
359 | 360 | ||
360 | vrfb_base = devm_request_and_ioremap(&pdev->dev, mem); | 361 | vrfb_base = devm_ioremap_resource(&pdev->dev, mem); |
361 | if (!vrfb_base) { | 362 | if (IS_ERR(vrfb_base)) |
362 | dev_err(&pdev->dev, "can't ioremap vrfb memory\n"); | 363 | return PTR_ERR(vrfb_base); |
363 | return -ENOMEM; | ||
364 | } | ||
365 | 364 | ||
366 | num_ctxs = pdev->num_resources - 1; | 365 | num_ctxs = pdev->num_resources - 1; |
367 | 366 | ||
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) | |||
1421 | pm_runtime_enable(sfb->dev); | 1421 | pm_runtime_enable(sfb->dev); |
1422 | 1422 | ||
1423 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 1423 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
1424 | sfb->regs = devm_request_and_ioremap(dev, res); | 1424 | sfb->regs = devm_ioremap_resource(dev, res); |
1425 | if (!sfb->regs) { | 1425 | if (IS_ERR(sfb->regs)) { |
1426 | dev_err(dev, "failed to map registers\n"); | 1426 | ret = PTR_ERR(sfb->regs); |
1427 | ret = -ENXIO; | ||
1428 | goto err_lcd_clk; | 1427 | goto err_lcd_clk; |
1429 | } | 1428 | } |
1430 | 1429 | ||