drm/exynos: allow multiple layer updates per vsync for mixer
Allowing only one layer update per vsync can cause issues while there are update available for both layers. There is a good amount of possibility to loose updates if we allow single update per vsync. Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
This commit is contained in:
parent
381be025ac
commit
5c0f4829e1
@ -511,13 +511,8 @@ static void vp_video_buffer(struct mixer_context *ctx, int win)
|
|||||||
static void mixer_layer_update(struct mixer_context *ctx)
|
static void mixer_layer_update(struct mixer_context *ctx)
|
||||||
{
|
{
|
||||||
struct mixer_resources *res = &ctx->mixer_res;
|
struct mixer_resources *res = &ctx->mixer_res;
|
||||||
u32 val;
|
|
||||||
|
|
||||||
val = mixer_reg_read(res, MXR_CFG);
|
mixer_reg_writemask(res, MXR_CFG, ~0, MXR_CFG_LAYER_UPDATE);
|
||||||
|
|
||||||
/* allow one update per vsync only */
|
|
||||||
if (!(val & MXR_CFG_LAYER_UPDATE_COUNT_MASK))
|
|
||||||
mixer_reg_writemask(res, MXR_CFG, ~0, MXR_CFG_LAYER_UPDATE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void mixer_graph_buffer(struct mixer_context *ctx, int win)
|
static void mixer_graph_buffer(struct mixer_context *ctx, int win)
|
||||||
|
Loading…
Reference in New Issue
Block a user