diff options
Diffstat (limited to 'drivers/video/omap2/dss/dss.c')
-rw-r--r-- | drivers/video/omap2/dss/dss.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/video/omap2/dss/dss.c b/drivers/video/omap2/dss/dss.c index 17033457ee8..e75f837c766 100644 --- a/drivers/video/omap2/dss/dss.c +++ b/drivers/video/omap2/dss/dss.c | |||
@@ -751,7 +751,8 @@ static int omap_dsshw_probe(struct platform_device *pdev) | |||
751 | r = -EINVAL; | 751 | r = -EINVAL; |
752 | goto err_ioremap; | 752 | goto err_ioremap; |
753 | } | 753 | } |
754 | dss.base = ioremap(dss_mem->start, resource_size(dss_mem)); | 754 | dss.base = devm_ioremap(&pdev->dev, dss_mem->start, |
755 | resource_size(dss_mem)); | ||
755 | if (!dss.base) { | 756 | if (!dss.base) { |
756 | DSSERR("can't ioremap DSS\n"); | 757 | DSSERR("can't ioremap DSS\n"); |
757 | r = -ENOMEM; | 758 | r = -ENOMEM; |
@@ -760,7 +761,7 @@ static int omap_dsshw_probe(struct platform_device *pdev) | |||
760 | 761 | ||
761 | r = dss_get_clocks(); | 762 | r = dss_get_clocks(); |
762 | if (r) | 763 | if (r) |
763 | goto err_clocks; | 764 | goto err_ioremap; |
764 | 765 | ||
765 | pm_runtime_enable(&pdev->dev); | 766 | pm_runtime_enable(&pdev->dev); |
766 | 767 | ||
@@ -808,8 +809,6 @@ err_dpi: | |||
808 | err_runtime_get: | 809 | err_runtime_get: |
809 | pm_runtime_disable(&pdev->dev); | 810 | pm_runtime_disable(&pdev->dev); |
810 | dss_put_clocks(); | 811 | dss_put_clocks(); |
811 | err_clocks: | ||
812 | iounmap(dss.base); | ||
813 | err_ioremap: | 812 | err_ioremap: |
814 | return r; | 813 | return r; |
815 | } | 814 | } |
@@ -819,8 +818,6 @@ static int omap_dsshw_remove(struct platform_device *pdev) | |||
819 | dpi_exit(); | 818 | dpi_exit(); |
820 | sdi_exit(); | 819 | sdi_exit(); |
821 | 820 | ||
822 | iounmap(dss.base); | ||
823 | |||
824 | pm_runtime_disable(&pdev->dev); | 821 | pm_runtime_disable(&pdev->dev); |
825 | 822 | ||
826 | dss_put_clocks(); | 823 | dss_put_clocks(); |