OMAPDSS: add setup for WB capture mode in dispc_wb_setup()
dispc_wb_setup() handles configuration only for mem-to-mem case. This patch adds the necessary configuration to handle also display capture mode. We need to set CAPTUREMODE to 0 (continuous capture), and WBDELAYCOUNT according to the vertical timings of the display, so that the WB FIFO has time to flush before the next frame starts. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
This commit is contained in:
parent
4c055ce03b
commit
98cd5796b3
|
@ -2859,8 +2859,23 @@ int dispc_wb_setup(const struct omap_dss_writeback_info *wi,
|
|||
l = FLD_MOD(l, mem_to_mem, 19, 19); /* WRITEBACKMODE */
|
||||
if (mem_to_mem)
|
||||
l = FLD_MOD(l, 1, 26, 24); /* CAPTUREMODE */
|
||||
else
|
||||
l = FLD_MOD(l, 0, 26, 24); /* CAPTUREMODE */
|
||||
dispc_write_reg(DISPC_OVL_ATTRIBUTES(plane), l);
|
||||
|
||||
if (mem_to_mem) {
|
||||
/* WBDELAYCOUNT */
|
||||
REG_FLD_MOD(DISPC_OVL_ATTRIBUTES2(plane), 0, 7, 0);
|
||||
} else {
|
||||
int wbdelay;
|
||||
|
||||
wbdelay = min(mgr_timings->vfp + mgr_timings->vsw +
|
||||
mgr_timings->vbp, 255);
|
||||
|
||||
/* WBDELAYCOUNT */
|
||||
REG_FLD_MOD(DISPC_OVL_ATTRIBUTES2(plane), wbdelay, 7, 0);
|
||||
}
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue