[PATCH 5/9] drm/exynos/decon5433: kill BIT_IRQS_ENABLED flag
Andrzej Hajda
a.hajda at samsung.com
Wed Apr 5 07:28:33 UTC 2017
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 at samsung.com>
---
drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c
index 5bdf1a0..dc2e69a 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[] = {
enum decon_flag_bits {
BIT_CLKS_ENABLED,
- BIT_IRQS_ENABLED,
BIT_WIN_UPDATED,
BIT_SUSPENDED
};
@@ -112,8 +111,6 @@ static int decon_enable_vblank(struct exynos_drm_crtc *crtc)
if (!(ctx->out_type & I80_HW_TRG))
enable_irq(ctx->te_irq);
- set_bit(BIT_IRQS_ENABLED, &ctx->flags);
-
return 0;
}
@@ -121,7 +118,6 @@ static void decon_disable_vblank(struct exynos_drm_crtc *crtc)
{
struct decon_context *ctx = crtc->ctx;
- clear_bit(BIT_IRQS_ENABLED, &ctx->flags);
if (test_bit(BIT_SUSPENDED, &ctx->flags))
return;
@@ -536,9 +532,7 @@ static irqreturn_t decon_te_irq_handler(int irq, void *dev_id)
(ctx->out_type & I80_HW_TRG))
return IRQ_HANDLED;
- if (test_and_clear_bit(BIT_WIN_UPDATED, &ctx->flags) ||
- test_bit(BIT_IRQS_ENABLED, &ctx->flags))
- decon_set_bits(ctx, DECON_TRIGCON, TRIGCON_SWTRIGCMD, ~0);
+ decon_set_bits(ctx, DECON_TRIGCON, TRIGCON_SWTRIGCMD, ~0);
return IRQ_HANDLED;
}
--
2.7.4
More information about the dri-devel
mailing list