omap_overlay_manager struct contains enable() and disable() functions.
However, these are only meant to be used from inside omapdss, and thus
it's bad to expose the functions.
This patch adds dss_mgr_enable() and dss_mgr_disable() functions to
apply.c, which handle enabling and disabling the output.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
                mc->shadow_dirty = false;
        }
 
-       mgr->enable(mgr);
+       dispc_mgr_enable(mgr->id, true);
 }
 
 static void dss_apply_irq_handler(void *data, u32 mask)
        return r;
 }
 
+void dss_mgr_enable(struct omap_overlay_manager *mgr)
+{
+       dispc_mgr_enable(mgr->id, true);
+}
+
+void dss_mgr_disable(struct omap_overlay_manager *mgr)
+{
+       dispc_mgr_enable(mgr->id, false);
+}
+
 
 
        mdelay(2);
 
-       dssdev->manager->enable(dssdev->manager);
+       dss_mgr_enable(dssdev->manager);
 
        return 0;
 
 
 void omapdss_dpi_display_disable(struct omap_dss_device *dssdev)
 {
-       dssdev->manager->disable(dssdev->manager);
+       dss_mgr_disable(dssdev->manager);
 
        if (dpi_use_dsi_pll(dssdev)) {
                dss_select_dispc_clk_source(OMAP_DSS_CLK_SRC_FCK);
 
        dsi_vc_enable(dsidev, channel, true);
        dsi_if_enable(dsidev, true);
 
-       dssdev->manager->enable(dssdev->manager);
+       dss_mgr_enable(dssdev->manager);
 
        return 0;
 }
        dsi_vc_enable(dsidev, channel, true);
        dsi_if_enable(dsidev, true);
 
-       dssdev->manager->disable(dssdev->manager);
+       dss_mgr_disable(dssdev->manager);
 }
 EXPORT_SYMBOL(dsi_video_mode_disable);
 
 
 int dss_mgr_wait_for_go_ovl(struct omap_overlay *ovl);
 void dss_mgr_start_update(struct omap_overlay_manager *mgr);
 int omap_dss_mgr_apply(struct omap_overlay_manager *mgr);
+void dss_mgr_enable(struct omap_overlay_manager *mgr);
+void dss_mgr_disable(struct omap_overlay_manager *mgr);
 
 /* display */
 int dss_suspend_all_devices(void);
 
        if (r)
                return r;
 
-       dispc_mgr_enable(OMAP_DSS_CHANNEL_DIGIT, 0);
+       dss_mgr_disable(dssdev->manager);
 
        p = &dssdev->panel.timings;
 
 
        hdmi.ip_data.ops->video_enable(&hdmi.ip_data, 1);
 
-       dispc_mgr_enable(OMAP_DSS_CHANNEL_DIGIT, 1);
+       dss_mgr_enable(dssdev->manager);
 
        return 0;
 err:
 
 static void hdmi_power_off(struct omap_dss_device *dssdev)
 {
-       dispc_mgr_enable(OMAP_DSS_CHANNEL_DIGIT, 0);
+       dss_mgr_disable(dssdev->manager);
 
        hdmi.ip_data.ops->video_enable(&hdmi.ip_data, 0);
        hdmi.ip_data.ops->phy_disable(&hdmi.ip_data);
 
        *info = mgr->info;
 }
 
-static int dss_mgr_enable(struct omap_overlay_manager *mgr)
-{
-       dispc_mgr_enable(mgr->id, 1);
-       return 0;
-}
-
-static int dss_mgr_disable(struct omap_overlay_manager *mgr)
-{
-       dispc_mgr_enable(mgr->id, 0);
-       return 0;
-}
-
 static void omap_dss_add_overlay_manager(struct omap_overlay_manager *manager)
 {
        ++num_managers;
                mgr->wait_for_go = &dss_mgr_wait_for_go;
                mgr->wait_for_vsync = &dss_mgr_wait_for_vsync;
 
-               mgr->enable = &dss_mgr_enable;
-               mgr->disable = &dss_mgr_disable;
-
                mgr->caps = 0;
                mgr->supported_displays =
                        dss_feat_get_supported_displays(mgr->id);
 
                goto err_sdi_enable;
        mdelay(2);
 
-       dssdev->manager->enable(dssdev->manager);
+       dss_mgr_enable(dssdev->manager);
 
        return 0;
 
 
 void omapdss_sdi_display_disable(struct omap_dss_device *dssdev)
 {
-       dssdev->manager->disable(dssdev->manager);
+       dss_mgr_disable(dssdev->manager);
 
        dss_sdi_disable();
 
 
        if (dssdev->platform_enable)
                dssdev->platform_enable(dssdev);
 
-       dssdev->manager->enable(dssdev->manager);
+       dss_mgr_enable(dssdev->manager);
 }
 
 static void venc_power_off(struct omap_dss_device *dssdev)
        venc_write_reg(VENC_OUTPUT_CONTROL, 0);
        dss_set_dac_pwrdn_bgz(0);
 
-       dssdev->manager->disable(dssdev->manager);
+       dss_mgr_disable(dssdev->manager);
 
        if (dssdev->platform_disable)
                dssdev->platform_disable(dssdev);
 
        int (*apply)(struct omap_overlay_manager *mgr);
        int (*wait_for_go)(struct omap_overlay_manager *mgr);
        int (*wait_for_vsync)(struct omap_overlay_manager *mgr);
-
-       int (*enable)(struct omap_overlay_manager *mgr);
-       int (*disable)(struct omap_overlay_manager *mgr);
 };
 
 struct omap_dss_device {