From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 78F76C4708F for ; Wed, 2 Jun 2021 16:15:58 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 18DFA6192E for ; Wed, 2 Jun 2021 16:15:58 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 18DFA6192E Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=microchip.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 525CE6E4C1; Wed, 2 Jun 2021 16:15:57 +0000 (UTC) X-Greylist: delayed 426 seconds by postgrey-1.36 at gabe; Wed, 02 Jun 2021 16:15:55 UTC Received: from esa.microchip.iphmx.com (esa.microchip.iphmx.com [68.232.153.233]) by gabe.freedesktop.org (Postfix) with ESMTPS id 608206E4C1 for ; Wed, 2 Jun 2021 16:15:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1622650556; x=1654186556; h=from:to:cc:subject:date:message-id:mime-version; bh=2gw1LPRHVc5WHx/TLUSAc36JsiCrmgOgMOSM1MRoLSY=; b=HLy2vTS6QT2AQMkY3HiN/usiLkZP/nE8mlIvKABtM3oRXJiuM0u+ocxl 4stDBBjEUFCV+jhW/ek7UsYlDEEIPNoE6W2y5F18O5LGDrgDPKCcfDOyA ZOtkkwDTTokW2GSW6Yv35H77PRFiFV5Yx5VQpfT6FTWfN3E2SXBUnr/d5 Gs6fJDgF/qaqhiUAVOVu4jPWBBzU3n7+s5De/UharMHJDUK54PyhUW4MC iFrrJzMcFvDaUsbIExQOnVm/04/X55MOdh1+YXS0mvxO3hWUbT/cbJQSo tjBs69v/N/aLcgG0jCuLXCLzGl44Tof0l/HFzZqlDbo+r7hanQoqeDNic g==; IronPort-SDR: fJiU9Iv86kQyanaDFZQyhjRa8bUG5TM9OX4uwRTFTY4U4xePJz7dC+7cj0ucEJtr5azJXzPgpr cXICT7dlLL7+b/nsP2OdA8Ownbf6Or2W8Ajj1clbzklh7yikbLAHBpAxb0yrGe6sZajb00QNpa UsXfhl8eVkmBanvrXP7G+2UNrxfPM0WxevgJzOLPilxgS8cpFa6JHeHEXyb+c/mv/1p5MrD/1g vq6NrAQnOoHuyCW+qWbDovmqVVatfT5f8XGHZZRLXYadvXgTt3a+4BvZ+IOS5XzYym9TcnMcfX 5Fo= X-IronPort-AV: E=Sophos;i="5.83,242,1616482800"; d="scan'208";a="123275472" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa5.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 02 Jun 2021 09:08:48 -0700 Received: from chn-vm-ex02.mchp-main.com (10.10.85.144) by chn-vm-ex03.mchp-main.com (10.10.85.151) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Wed, 2 Jun 2021 09:08:47 -0700 Received: from dan-linux.microchip.com (10.10.115.15) by chn-vm-ex02.mchp-main.com (10.10.85.144) with Microsoft SMTP Server id 15.1.2176.2 via Frontend Transport; Wed, 2 Jun 2021 09:08:47 -0700 From: Dan Sneddon To: Sam Ravnborg , Daniel Vetter , , , Subject: [PATCH] drm:atmel: Enable the crtc vblank prior to crtc usage. Date: Wed, 2 Jun 2021 09:08:45 -0700 Message-ID: <20210602160846.5013-1-dan.sneddon@microchip.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alexandre Belloni , Boris Brezillon , David Airlie , Dan Sneddon , Nicolas Ferre , Ludovic Desroches Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" 'commit eec44d44a3d2 ("drm/atmel: Use drm_atomic_helper_commit")' removed the home-grown handling of atomic commits and exposed an issue in the crtc atomic commit handling where vblank is expected to be enabled but hasn't yet, causing kernel warnings during boot. This patch cleans up the crtc vblank handling thus removing the warning on boot. Fixes: eec44d44a3d2 ("drm/atmel: Use drm_atomic_helper_commit") Signed-off-by: Dan Sneddon --- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c index 05ad75d155e8..cfe4fc69277e 100644 --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c @@ -232,7 +232,6 @@ static void atmel_hlcdc_crtc_atomic_enable(struct drm_crtc *c, pm_runtime_put_sync(dev->dev); - drm_crtc_vblank_on(c); } #define ATMEL_HLCDC_RGB444_OUTPUT BIT(0) @@ -343,8 +342,17 @@ static int atmel_hlcdc_crtc_atomic_check(struct drm_crtc *c, static void atmel_hlcdc_crtc_atomic_begin(struct drm_crtc *c, struct drm_atomic_state *state) +{ + drm_crtc_vblank_on(c); +} + +static void atmel_hlcdc_crtc_atomic_flush(struct drm_crtc *c, + struct drm_atomic_state *state) { struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c); + unsigned long flags; + + spin_lock_irqsave(&c->dev->event_lock, flags); if (c->state->event) { c->state->event->pipe = drm_crtc_index(c); @@ -354,12 +362,7 @@ static void atmel_hlcdc_crtc_atomic_begin(struct drm_crtc *c, crtc->event = c->state->event; c->state->event = NULL; } -} - -static void atmel_hlcdc_crtc_atomic_flush(struct drm_crtc *crtc, - struct drm_atomic_state *state) -{ - /* TODO: write common plane control register if available */ + spin_unlock_irqrestore(&c->dev->event_lock, flags); } static const struct drm_crtc_helper_funcs lcdc_crtc_helper_funcs = { -- 2.17.1