drm/omap: HDMI4: remove uses of omap_overlay_manager
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 5 Nov 2015 07:56:21 +0000 (09:56 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 3 Mar 2016 15:38:23 +0000 (17:38 +0200)
We are removing the uses of 'struct omap_overlay_manager'. This patch
changes HDMI4 driver to use 'omap_channel' instead.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/gpu/drm/omapdrm/dss/hdmi4.c

index a222fc5..f892ae1 100644 (file)
@@ -165,7 +165,7 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev)
 {
        int r;
        struct omap_video_timings *p;
-       struct omap_overlay_manager *mgr = hdmi.output.manager;
+       enum omap_channel channel = dssdev->dispc_channel;
        struct hdmi_wp_data *wp = &hdmi.wp;
        struct dss_pll_clock_info hdmi_cinfo = { 0 };
        unsigned pc;
@@ -217,9 +217,9 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev)
        dispc_enable_gamma_table(0);
 
        /* tv size */
-       dss_mgr_set_timings(mgr->id, p);
+       dss_mgr_set_timings(channel, p);
 
-       r = dss_mgr_enable(mgr->id);
+       r = dss_mgr_enable(channel);
        if (r)
                goto err_mgr_enable;
 
@@ -233,7 +233,7 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev)
        return 0;
 
 err_vid_enable:
-       dss_mgr_disable(mgr->id);
+       dss_mgr_disable(channel);
 err_mgr_enable:
        hdmi_wp_set_phy_pwr(&hdmi.wp, HDMI_PHYPWRCMD_OFF);
 err_phy_pwr:
@@ -247,13 +247,13 @@ err_pll_enable:
 
 static void hdmi_power_off_full(struct omap_dss_device *dssdev)
 {
-       struct omap_overlay_manager *mgr = hdmi.output.manager;
+       enum omap_channel channel = dssdev->dispc_channel;
 
        hdmi_wp_clear_irqenable(&hdmi.wp, 0xffffffff);
 
        hdmi_wp_video_stop(&hdmi.wp);
 
-       dss_mgr_disable(mgr->id);
+       dss_mgr_disable(channel);
 
        hdmi_wp_set_phy_pwr(&hdmi.wp, HDMI_PHYPWRCMD_OFF);
 
@@ -265,9 +265,7 @@ static void hdmi_power_off_full(struct omap_dss_device *dssdev)
 static int hdmi_display_check_timing(struct omap_dss_device *dssdev,
                                        struct omap_video_timings *timings)
 {
-       struct omap_dss_device *out = &hdmi.output;
-
-       if (!dispc_mgr_timings_ok(out->dispc_channel, timings))
+       if (!dispc_mgr_timings_ok(dssdev->dispc_channel, timings))
                return -EINVAL;
 
        return 0;
@@ -438,18 +436,14 @@ static void hdmi_core_disable(struct omap_dss_device *dssdev)
 static int hdmi_connect(struct omap_dss_device *dssdev,
                struct omap_dss_device *dst)
 {
-       struct omap_overlay_manager *mgr;
+       enum omap_channel channel = dssdev->dispc_channel;
        int r;
 
        r = hdmi_init_regulator();
        if (r)
                return r;
 
-       mgr = omap_dss_get_overlay_manager(dssdev->dispc_channel);
-       if (!mgr)
-               return -ENODEV;
-
-       r = dss_mgr_connect(mgr->id, dssdev);
+       r = dss_mgr_connect(channel, dssdev);
        if (r)
                return r;
 
@@ -457,7 +451,7 @@ static int hdmi_connect(struct omap_dss_device *dssdev,
        if (r) {
                DSSERR("failed to connect output to new device: %s\n",
                                dst->name);
-               dss_mgr_disconnect(mgr->id, dssdev);
+               dss_mgr_disconnect(channel, dssdev);
                return r;
        }
 
@@ -467,6 +461,8 @@ static int hdmi_connect(struct omap_dss_device *dssdev,
 static void hdmi_disconnect(struct omap_dss_device *dssdev,
                struct omap_dss_device *dst)
 {
+       enum omap_channel channel = dssdev->dispc_channel;
+
        WARN_ON(dst != dssdev->dst);
 
        if (dst != dssdev->dst)
@@ -474,7 +470,7 @@ static void hdmi_disconnect(struct omap_dss_device *dssdev,
 
        omapdss_output_unset_device(dssdev);
 
-       dss_mgr_disconnect(dssdev->manager->id, dssdev);
+       dss_mgr_disconnect(channel, dssdev);
 }
 
 static int hdmi_read_edid(struct omap_dss_device *dssdev,