Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ba2a1c0 authored by Tomi Valkeinen's avatar Tomi Valkeinen
Browse files

OMAPDSS: handle ilace/replication when configuring overlay



Move the configuration of interlace and replication from
omap_dss_mgr_apply() to configure_overlay(). This removes the need to
store the values into the cache data.

Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent cf073668
Loading
Loading
Loading
Loading
+10 −9
Original line number Diff line number Diff line
@@ -510,8 +510,6 @@ struct overlay_cache_data {
	struct omap_overlay_info info;

	enum omap_channel channel;
	bool replication;
	bool ilace;

	u32 fifo_low;
	u32 fifo_high;
@@ -757,8 +755,10 @@ static int overlay_enabled(struct omap_overlay *ovl)

static int configure_overlay(enum omap_plane plane)
{
	struct omap_overlay *ovl;
	struct overlay_cache_data *c;
	struct omap_overlay_info *oi;
	bool ilace, replication;
	int r;

	DSSDBGF("%d", plane);
@@ -771,8 +771,14 @@ static int configure_overlay(enum omap_plane plane)
		return 0;
	}

	r = dispc_ovl_setup(plane, oi, c->ilace, c->channel,
		c->replication, c->fifo_low, c->fifo_high);
	ovl = omap_dss_get_overlay(plane);

	replication = dss_use_replication(ovl->manager->device, oi->color_mode);

	ilace = ovl->manager->device->type == OMAP_DISPLAY_TYPE_VENC;

	r = dispc_ovl_setup(plane, oi, ilace, c->channel,
		replication, c->fifo_low, c->fifo_high);
	if (r) {
		/* this shouldn't happen */
		DSSERR("dispc_ovl_setup failed for ovl %d\n", plane);
@@ -1038,11 +1044,6 @@ static int omap_dss_mgr_apply(struct omap_overlay_manager *mgr)
		oc->dirty = true;
		oc->info = ovl->info;

		oc->replication =
			dss_use_replication(dssdev, ovl->info.color_mode);

		oc->ilace = dssdev->type == OMAP_DISPLAY_TYPE_VENC;

		oc->channel = ovl->manager->id;

		oc->enabled = true;