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

Commit 32eaa584 authored by Tomi Valkeinen's avatar Tomi Valkeinen
Browse files

OMAPDSS: add ovl/mgr_manual_update() helpers



Add helper functions ovl_manual_update() and mgr_manual_update() which
return whether the overlay or manager is used with a manual update
display.

Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent 550a8f64
Loading
Loading
Loading
Loading
+11 −8
Original line number Diff line number Diff line
@@ -538,7 +538,15 @@ static struct {
	bool irq_enabled;
} dss_cache;

static bool ovl_manual_update(struct omap_overlay *ovl)
{
	return ovl->manager->device->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE;
}

static bool mgr_manual_update(struct omap_overlay_manager *mgr)
{
	return mgr->device->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE;
}

static int omap_dss_set_device(struct omap_overlay_manager *mgr,
		struct omap_dss_device *dssdev)
@@ -627,7 +635,7 @@ static int dss_mgr_wait_for_go(struct omap_overlay_manager *mgr)
	if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE)
		return 0;

	if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE)
	if (mgr_manual_update(mgr))
		return 0;

	if (dssdev->type == OMAP_DISPLAY_TYPE_VENC
@@ -696,7 +704,7 @@ int dss_mgr_wait_for_go_ovl(struct omap_overlay *ovl)
	if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE)
		return 0;

	if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE)
	if (ovl_manual_update(ovl))
		return 0;

	if (dssdev->type == OMAP_DISPLAY_TYPE_VENC
@@ -1047,8 +1055,6 @@ static int omap_dss_mgr_apply(struct omap_overlay_manager *mgr)

	/* Configure managers */
	list_for_each_entry(mgr, &manager_list, list) {
		struct omap_dss_device *dssdev;

		mc = &dss_cache.manager_cache[mgr->id];

		if (mgr->device_changed) {
@@ -1062,14 +1068,11 @@ static int omap_dss_mgr_apply(struct omap_overlay_manager *mgr)
		if (!mgr->device)
			continue;

		dssdev = mgr->device;

		mgr->info_dirty = false;
		mc->dirty = true;
		mc->info = mgr->info;

		mc->manual_update =
			dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE;
		mc->manual_update = mgr_manual_update(mgr);
	}

	/* Configure overlay fifos */