OMAPDSS: move ovl & ovl-mgr init to apply.c
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 23 Oct 2012 10:46:12 +0000 (13:46 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 7 Dec 2012 15:05:54 +0000 (17:05 +0200)
Overlay and overlay_manager structs will only be needed in the compat
mode.

This patch moves initialization of overlay and overlay_manager structs
to apply.c, so that they are handled in omapdss_compat_init().

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/omap2/dss/apply.c
drivers/video/omap2/dss/core.c

index ba1343274bb74d3c49861eaadd10f8367a7ccbc0..6f60d0e0b7ee5edd490436e86332bcb1fa165275 100644 (file)
@@ -1469,6 +1469,8 @@ static DEFINE_MUTEX(compat_init_lock);
 
 int omapdss_compat_init(void)
 {
+       struct platform_device *pdev = dss_get_core_pdev();
+
        mutex_lock(&compat_init_lock);
 
        if (compat_refcnt++ > 0)
@@ -1476,6 +1478,9 @@ int omapdss_compat_init(void)
 
        apply_init_priv();
 
+       dss_init_overlay_managers(pdev);
+       dss_init_overlays(pdev);
+
 out:
        mutex_unlock(&compat_init_lock);
 
@@ -1485,11 +1490,15 @@ EXPORT_SYMBOL(omapdss_compat_init);
 
 void omapdss_compat_uninit(void)
 {
+       struct platform_device *pdev = dss_get_core_pdev();
+
        mutex_lock(&compat_init_lock);
 
        if (--compat_refcnt > 0)
                goto out;
 
+       dss_uninit_overlay_managers(pdev);
+       dss_uninit_overlays(pdev);
 out:
        mutex_unlock(&compat_init_lock);
 }
index 86c743f5ed2e0dfda4669f0d6b01383d85e6f215..1751c1f511ad90fa3afeeea7811f41687dec0874 100644 (file)
@@ -234,9 +234,6 @@ static int __init omap_dss_probe(struct platform_device *pdev)
 
        omapdss_compat_init();
 
-       dss_init_overlay_managers(pdev);
-       dss_init_overlays(pdev);
-
        r = dss_initialize_debugfs();
        if (r)
                goto err_debugfs;
@@ -261,9 +258,6 @@ static int omap_dss_remove(struct platform_device *pdev)
 
        dss_uninitialize_debugfs();
 
-       dss_uninit_overlays(pdev);
-       dss_uninit_overlay_managers(pdev);
-
        omapdss_compat_uninit();
 
        return 0;