Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752851AbbGIIIP (ORCPT ); Thu, 9 Jul 2015 04:08:15 -0400 Received: from mailout3.w1.samsung.com ([210.118.77.13]:28900 "EHLO mailout3.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751312AbbGIIIH (ORCPT ); Thu, 9 Jul 2015 04:08:07 -0400 X-AuditID: cbfec7f4-f79c56d0000012ee-bf-559e2be572e0 From: Andrzej Hajda To: inki.dae@samsung.com Cc: Andrzej Hajda , Marek Szyprowski , Kyungmin Park , b.zolnierkie@samsung.com, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH RESEND v2 2/6] drm/exynos/mixer: fix interrupt clearing Date: Thu, 09 Jul 2015 10:07:53 +0200 Message-id: <1436429273-24144-1-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <559E2703.9090502@samsung.com> References: <559E2703.9090502@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupkluLIzCtJLcpLzFFi42I5/e/4Vd2n2vNCDc6f4LO4te4cq8XGGetZ La58fc9mMen+BBaLs01v2C0u75rDZrH2yF12B3aP+93HmTz6tqxi9Pi8SS6AOYrLJiU1J7Ms tUjfLoEr4+arW+wFdzgr3ixawdLA+I+9i5GTQ0LAROLAi7NMELaYxIV769m6GLk4hASWMkrM XHeXFcJpYpJ4/Os/I0gVm4CmxN/NN9lAbBEBCYmZry6CdTML3GOUOP1CA8QWFnCXuDvpOVAN BweLgKrEij01IGFeAWeJNUd3sUEsk5M4eWwyK4jNKaAt8fLoJrDxQgJaEscOvWOawMi7gJFh FaNoamlyQXFSeq6hXnFibnFpXrpecn7uJkZIAH3Zwbj4mNUhRgEORiUe3sadc0OFWBPLiitz DzFKcDArifCySc0LFeJNSaysSi3Kjy8qzUktPsQozcGiJM47d9f7ECGB9MSS1OzU1ILUIpgs EwenVAOj+A/PP9n204u2nE5p5zV2WhdS5MNy9uTFlNa1TUUWk6tk8hYtlz+TeWJ10NQVgn/X 9twKr1vNXK/nHsez1G3Wo3cvk1eXheU5cU6QDJa8Midg2qGI6YLLrH86sOvvvHC8LXUBY0T6 afXivMZ3ipeuz5ipPjOAZZOCYJ/5srTMapd8zsh3q/cpsRRnJBpqMRcVJwIAioX+yhwCAAA= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1451 Lines: 43 The driver used incorrect flags to clear interrupt status. The patch fixes it. Signed-off-by: Andrzej Hajda --- drivers/gpu/drm/exynos/exynos_mixer.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c index cae98db..25f0aac 100644 --- a/drivers/gpu/drm/exynos/exynos_mixer.c +++ b/drivers/gpu/drm/exynos/exynos_mixer.c @@ -718,6 +718,10 @@ static irqreturn_t mixer_irq_handler(int irq, void *arg) /* handling VSYNC */ if (val & MXR_INT_STATUS_VSYNC) { + /* vsync interrupt use different bit for read and clear */ + val |= MXR_INT_CLEAR_VSYNC; + val &= ~MXR_INT_STATUS_VSYNC; + /* interlace scan need to check shadow register */ if (ctx->interlace) { base = mixer_reg_read(res, MXR_GRAPHIC_BASE(0)); @@ -743,11 +747,6 @@ static irqreturn_t mixer_irq_handler(int irq, void *arg) out: /* clear interrupts */ - if (~val & MXR_INT_EN_VSYNC) { - /* vsync interrupt use different bit for read and clear */ - val &= ~MXR_INT_EN_VSYNC; - val |= MXR_INT_CLEAR_VSYNC; - } mixer_reg_write(res, MXR_INT_STATUS, val); spin_unlock(&res->reg_slock); -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/