Commit 04576d41 authored by Tomi Valkeinen's avatar Tomi Valkeinen

OMAPDSS: APPLY: write fifo thresholds only if changed

Current code will always write fifo threshold values to the register,
even if they are the same as previously. Separate the setting of fifo
fields into a separate function, and only set new values if they are
different than the old ones.
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent 75ae118a
...@@ -953,6 +953,19 @@ static void dss_apply_ovl_enable(struct omap_overlay *ovl, bool enable) ...@@ -953,6 +953,19 @@ static void dss_apply_ovl_enable(struct omap_overlay *ovl, bool enable)
op->extra_info_dirty = true; op->extra_info_dirty = true;
} }
static void dss_apply_ovl_fifo_thresholds(struct omap_overlay *ovl,
u32 fifo_low, u32 fifo_high)
{
struct ovl_priv_data *op = get_ovl_priv(ovl);
if (op->fifo_low == fifo_low && op->fifo_high == fifo_high)
return;
op->fifo_low = fifo_low;
op->fifo_high = fifo_high;
op->extra_info_dirty = true;
}
static void dss_ovl_setup_fifo(struct omap_overlay *ovl) static void dss_ovl_setup_fifo(struct omap_overlay *ovl)
{ {
struct ovl_priv_data *op = get_ovl_priv(ovl); struct ovl_priv_data *op = get_ovl_priv(ovl);
...@@ -988,9 +1001,7 @@ static void dss_ovl_setup_fifo(struct omap_overlay *ovl) ...@@ -988,9 +1001,7 @@ static void dss_ovl_setup_fifo(struct omap_overlay *ovl)
BUG(); BUG();
} }
op->fifo_low = fifo_low; dss_apply_ovl_fifo_thresholds(ovl, fifo_low, fifo_high);
op->fifo_high = fifo_high;
op->extra_info_dirty = true;
} }
static void dss_mgr_setup_fifos(struct omap_overlay_manager *mgr) static void dss_mgr_setup_fifos(struct omap_overlay_manager *mgr)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment