Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/exynos/decon5433: kill DECON_UPDATE workaround

Since fixing CMU code (drm/exynos/decon5433: fix CMU programming)
DECON started behave predictable and does not need special care
during DECON_UPDATE writes.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>

authored by

Andrzej Hajda and committed by
Inki Dae
f8172eb3 c7954aa6

+2 -6
+2 -6
drivers/gpu/drm/exynos/exynos5433_drm_decon.c
··· 51 51 BIT_CLKS_ENABLED, 52 52 BIT_IRQS_ENABLED, 53 53 BIT_WIN_UPDATED, 54 - BIT_SUSPENDED, 55 - BIT_REQUEST_UPDATE 54 + BIT_SUSPENDED 56 55 }; 57 56 58 57 struct decon_context { ··· 398 399 399 400 /* window enable */ 400 401 decon_set_bits(ctx, DECON_WINCONx(win), WINCONx_ENWIN_F, ~0); 401 - set_bit(BIT_REQUEST_UPDATE, &ctx->flags); 402 402 } 403 403 404 404 static void decon_disable_plane(struct exynos_drm_crtc *crtc, ··· 410 412 return; 411 413 412 414 decon_set_bits(ctx, DECON_WINCONx(win), WINCONx_ENWIN_F, 0); 413 - set_bit(BIT_REQUEST_UPDATE, &ctx->flags); 414 415 } 415 416 416 417 static void decon_atomic_flush(struct exynos_drm_crtc *crtc) ··· 426 429 for (i = ctx->first_win; i < WINDOWS_NR; i++) 427 430 decon_shadow_protect_win(ctx, i, false); 428 431 429 - if (test_and_clear_bit(BIT_REQUEST_UPDATE, &ctx->flags)) 430 - decon_set_bits(ctx, DECON_UPDATE, STANDALONE_UPDATE_F, ~0); 432 + decon_set_bits(ctx, DECON_UPDATE, STANDALONE_UPDATE_F, ~0); 431 433 432 434 if (ctx->out_type & IFTYPE_I80) 433 435 set_bit(BIT_WIN_UPDATED, &ctx->flags);