aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrzej Hajda <a.hajda@samsung.com>2017-04-05 03:28:33 -0400
committerInki Dae <inki.dae@samsung.com>2017-06-01 03:21:38 -0400
commit358eccc0eec8d76db7221f6d51d7d528c656ef46 (patch)
tree22a25d1d821bd595b868497c5c6451054fc52f7c
parentb37d53a0382c03064e6fee3ea1fdc77caf4906c6 (diff)
drm/exynos/decon5433: kill BIT_IRQS_ENABLED flag
Since DECON uses enable_irq/disable_irq to full control IRQs, there is no point in having flags to trace it separately. As a bonus condition for software trigger becomes always true, so it can be removed. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
-rw-r--r--drivers/gpu/drm/exynos/exynos5433_drm_decon.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c
index 5bdf1a0ec862..dc2e69a9cf13 100644
--- a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c
+++ b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c
@@ -49,7 +49,6 @@ static const char * const decon_clks_name[] = {
49 49
50enum decon_flag_bits { 50enum decon_flag_bits {
51 BIT_CLKS_ENABLED, 51 BIT_CLKS_ENABLED,
52 BIT_IRQS_ENABLED,
53 BIT_WIN_UPDATED, 52 BIT_WIN_UPDATED,
54 BIT_SUSPENDED 53 BIT_SUSPENDED
55}; 54};
@@ -112,8 +111,6 @@ static int decon_enable_vblank(struct exynos_drm_crtc *crtc)
112 if (!(ctx->out_type & I80_HW_TRG)) 111 if (!(ctx->out_type & I80_HW_TRG))
113 enable_irq(ctx->te_irq); 112 enable_irq(ctx->te_irq);
114 113
115 set_bit(BIT_IRQS_ENABLED, &ctx->flags);
116
117 return 0; 114 return 0;
118} 115}
119 116
@@ -121,7 +118,6 @@ static void decon_disable_vblank(struct exynos_drm_crtc *crtc)
121{ 118{
122 struct decon_context *ctx = crtc->ctx; 119 struct decon_context *ctx = crtc->ctx;
123 120
124 clear_bit(BIT_IRQS_ENABLED, &ctx->flags);
125 if (test_bit(BIT_SUSPENDED, &ctx->flags)) 121 if (test_bit(BIT_SUSPENDED, &ctx->flags))
126 return; 122 return;
127 123
@@ -536,9 +532,7 @@ static irqreturn_t decon_te_irq_handler(int irq, void *dev_id)
536 (ctx->out_type & I80_HW_TRG)) 532 (ctx->out_type & I80_HW_TRG))
537 return IRQ_HANDLED; 533 return IRQ_HANDLED;
538 534
539 if (test_and_clear_bit(BIT_WIN_UPDATED, &ctx->flags) || 535 decon_set_bits(ctx, DECON_TRIGCON, TRIGCON_SWTRIGCMD, ~0);
540 test_bit(BIT_IRQS_ENABLED, &ctx->flags))
541 decon_set_bits(ctx, DECON_TRIGCON, TRIGCON_SWTRIGCMD, ~0);
542 536
543 return IRQ_HANDLED; 537 return IRQ_HANDLED;
544} 538}