Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp2971449pxa; Tue, 25 Aug 2020 08:10:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxnWpdhtSP632C/hWHUWec2Bhn5gnyeUDv5dNfSJwW0RML84OY7/lYG2d8WganQI6R5bT+X X-Received: by 2002:a17:906:fa0a:: with SMTP id lo10mr10949445ejb.172.1598368207330; Tue, 25 Aug 2020 08:10:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1598368207; cv=none; d=google.com; s=arc-20160816; b=VSZ/yIrr6Yf7cXu8bGDFbrqXVJiYIvxLv5G7twjJZCEMPxiqVjGKl70tHNoDK8BUHv NNu709r2uZAIz8BVkPzEimhVtC6+sPLKPu7NJjzBv/AfZ9vDMlqklh9AKl7d25F7a39n TEWQWdhuCqeo9ZSdpuY6yoSN3t00AZzuGC2VQPc0RZBWwSl5FWKEcUoWW4V/3R28d9cP dAngiaZXo27OVTuhxM0AcbKI2ldNtBnOwUtMbUXgDe25SYCUfNCSxs+ZLQpUZKC8YZ+d L/FrN6QJmNQ5gloOEMRsE5xkTRsXru/s/LZJvB/WdBRJ9xdM8dzJwL1wPerfYciuAD+x Ffeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature:dkim-signature; bh=3I3j5EOU60U1Ry7H1RtmtTOIRsx0SMf4gLT/+JVsv3s=; b=Kkwkwcz2p3FIxpo719BITbk8Jins+YbzX7R/7W6h3CIgYCzWTl3UoWHwjWfQZKFxap LnXeAPDDSAfqrOwT/E/0ytHiEJdIKezV+eZH+zJHbTI9yDTxzxUGqC11sRu/3sXXKuBD xPJe8d34AjephrbJVU97ozed74aKXk+kLbCl+uh9f68y3yJoVy/l9PPcJc4IR9PCaKWp be8fv7e3nkXD0G1pJXQ+s7C3xRkzxwLhk7mmyQxLvfEbsgtbspE7l/yfDHlmmGa4F6fK I5OrXq3PWFlDj+tVyJMVjUzDJ0ev+4p9KfuKd+VjzrZunrgMOn/xUTyHZ4o8dntdS0mz H/SQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm3 header.b=qIpyzpWq; dkim=pass header.i=@messagingengine.com header.s=fm3 header.b=qzOmkcJu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g8si6566269ejm.633.2020.08.25.08.09.43; Tue, 25 Aug 2020 08:10:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm3 header.b=qIpyzpWq; dkim=pass header.i=@messagingengine.com header.s=fm3 header.b=qzOmkcJu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726548AbgHYPGP (ORCPT + 99 others); Tue, 25 Aug 2020 11:06:15 -0400 Received: from wnew1-smtp.messagingengine.com ([64.147.123.26]:57253 "EHLO wnew1-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726096AbgHYPGM (ORCPT ); Tue, 25 Aug 2020 11:06:12 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailnew.west.internal (Postfix) with ESMTP id 275BE2CD; Tue, 25 Aug 2020 11:06:11 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Tue, 25 Aug 2020 11:06:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cerno.tech; h= date:from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=fm3; bh=3I3j5EOU60U1Ry7H1RtmtTOIRsx 0SMf4gLT/+JVsv3s=; b=qIpyzpWqvt49gOQjIw0P0YCE2o/ZjNok7k0l03cLlv+ ZNuULsmpjgGUIgHy7RDdPRQ6tB30SnDfI67RXYZWdKMv5Bm8MggcpzKmHXkAv/Rh deoC3EWpwQGa991tom1omCJZuh1oMAUqOg3hIfGHEOXWNhDjfyngbihaqb9SKl/h a3qlD4IbkfRjq6zenklH3d43+CwRAEKcUDYe9h2lNBrKjiYf9vlatkMtz/98M0kp R06d/Arif3zzDdMXJbUn/zhOmTaXBQhwpmSqfUBFwpLoQQlSx3kY9RsxX54QOABL 38OA7qovlZ/SQshAtEfv3qAZiTrvYF4Qzwb9vmb7U6w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=3I3j5E OU60U1Ry7H1RtmtTOIRsx0SMf4gLT/+JVsv3s=; b=qzOmkcJu5rhTpkZVcdNhea bN4ZfR5/9NMiAQfypTNM3a/2wYBmsuFeh+hAvANlrlhodAp6AJb+vBuJscM6LoaM 8bRICOzMMOBrxLps3y8Lusrq8vCNl/ZnnXxghVld9K3kxIdb4b26454xnQpSW+Yv pACmmzRT/K7nrc0zemOoPQ7LgGW33mryry5kf15hPBFqnq7Wc1cUYx9/jcTYQA2I 1ipQFOOTQ9WKZGM2sZ9LQ1UNMfBYb+iotUo/Is4vaKR1nbqMo0E0nikRdIF/uALW 81DctUrFdzz7tZKnztYKE8FRuqt5ZaoxRVuvdNemrpn/TMF6qaHZEAk4HFC2ZUQw == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduiedruddvtddgkeejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvffukfhfgggtuggjsehgtderredttddvnecuhfhrohhmpeforgigihhm vgcutfhiphgrrhguuceomhgrgihimhgvsegtvghrnhhordhtvggthheqnecuggftrfgrth htvghrnhepleekgeehhfdutdeljefgleejffehfffgieejhffgueefhfdtveetgeehieeh gedunecukfhppeeltddrkeelrdeikedrjeeinecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepmhgrgihimhgvsegtvghrnhhordhtvggthh X-ME-Proxy: Received: from localhost (lfbn-tou-1-1502-76.w90-89.abo.wanadoo.fr [90.89.68.76]) by mail.messagingengine.com (Postfix) with ESMTPA id 4B3AE3280067; Tue, 25 Aug 2020 11:06:08 -0400 (EDT) Date: Tue, 25 Aug 2020 17:06:06 +0200 From: Maxime Ripard To: Stefan Wahren Cc: Dave Stevenson , Tim Gover , LKML , DRI Development , Eric Anholt , bcm-kernel-feedback-list@broadcom.com, Nicolas Saenz Julienne , Phil Elwell , linux-arm-kernel@lists.infradead.org, linux-rpi-kernel@lists.infradead.org Subject: Re: [PATCH v4 29/78] drm/vc4: crtc: Add a delay after disabling the PixelValve output Message-ID: <20200825150606.utlynhzo664bwksy@gilmour.lan> References: <20200729144251.us6a2pgkjjmm53ov@gilmour.lan> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="gbp4s6jsz2sfula3" Content-Disposition: inline In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --gbp4s6jsz2sfula3 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi Stefan, On Wed, Jul 29, 2020 at 05:50:31PM +0200, Stefan Wahren wrote: > Am 29.07.20 um 16:42 schrieb Maxime Ripard: > > Hi, > > > > On Wed, Jul 29, 2020 at 03:09:21PM +0100, Dave Stevenson wrote: > >> On Wed, 8 Jul 2020 at 18:43, Maxime Ripard wrote: > >>> In order to avoid pixels getting stuck in the (unflushable) FIFO betw= een > >>> the HVS and the PV, we need to add some delay after disabling the PV = output > >>> and before disabling the HDMI controller. 20ms seems to be good enoug= h so > >>> let's use that. > >>> > >>> Signed-off-by: Maxime Ripard > >>> --- > >>> drivers/gpu/drm/vc4/vc4_crtc.c | 2 ++ > >>> 1 file changed, 2 insertions(+) > >>> > >>> diff --git a/drivers/gpu/drm/vc4/vc4_crtc.c b/drivers/gpu/drm/vc4/vc4= _crtc.c > >>> index d0b326e1df0a..7b178d67187f 100644 > >>> --- a/drivers/gpu/drm/vc4/vc4_crtc.c > >>> +++ b/drivers/gpu/drm/vc4/vc4_crtc.c > >>> @@ -403,6 +403,8 @@ static void vc4_crtc_atomic_disable(struct drm_cr= tc *crtc, > >>> ret =3D wait_for(!(CRTC_READ(PV_V_CONTROL) & PV_VCONTROL_VIDE= N), 1); > >>> WARN_ONCE(ret, "Timeout waiting for !PV_VCONTROL_VIDEN\n"); > >>> > >>> + mdelay(20); > >> mdelay for 20ms seems a touch unfriendly as it's a busy wait. Can we > >> not msleep instead? > > Since the timing was fairly critical, sleeping didn't seem like a good > > solution since there's definitely some chance you overshoot and end up > > with a higher time than the one you targeted. >=20 > usleep_range(min, max) isn't a solution? My understanding of usleep_range was that you can still overshoot, even though it's backed by an HR timer so the resolution is not a jiffy. Are we certain that we're going to be in that range? Maxime --gbp4s6jsz2sfula3 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCX0Uo3gAKCRDj7w1vZxhR xTjQAQCZiLqHqiPNSDq7T1euBsIbQ+XTGhdLmdnBZbUIO+1VPwEA1z/O7HFK3t4N IhM8AxotumyFnRcchBjauHOWLcdL+Qo= =am4A -----END PGP SIGNATURE----- --gbp4s6jsz2sfula3--