Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp956030yba; Thu, 9 May 2019 08:28:46 -0700 (PDT) X-Google-Smtp-Source: APXvYqzOthCJR9yh5klJP7Y60hEH81fFe3xMOKjUxAaJ/Ne/4wbgF/ysOuc6evqlkBKHDtdjwfC6 X-Received: by 2002:a62:ac0a:: with SMTP id v10mr6142450pfe.57.1557415725928; Thu, 09 May 2019 08:28:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557415725; cv=none; d=google.com; s=arc-20160816; b=Kia9hbdvJkzsnKx/oq64aD7k9Dz8r07eU6lwVjSFZTHOPN7nLAd/JgG7tjQ2FmJxne HXRKQpPRNzibeGa2FD4II7XnXZs90NGDptsCPGEfd23qiW24VuIkkuLmnsiOFRm0K5xc Bd8ZUXBLwq9PZmWIjzw0SfcF1VUHuPDT2rXnEhzTIREHEB5z/tC0M6TwdVPPVaNZSh7T mQUmdlchBNwfOI8WZSkgDI4U+pUfiJDvrcCcnZoz/LOmqi9rkSiIyFKYjfDkWfjSM1cW L4e3EG+6tJb/7k65XH+iUqmH3QXIUG2sJ9M66gOk8fl97loNspWlJbuVSR73uBdY+H8W 5j6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=3Az00wmd+eU0sFkaK7LviQszCjA8/E3ZeMz5m6zOYMQ=; b=g8SySlpTlLOwI9l7iBJP+8+khicXxGiO8QW8vuJicFDW6haYI1NLALcviWSvZ1wyI2 /Ta7gNr+2ZQJpu7obMVYfD82KnUyK/MBKPEqQMhwtqf+gCwV16HizDA4IHNqIkyOEkXT Ck9wkaXGSDRpTcovvec45Vz7bWYUPd7mQ36yTdnXaZZyVXYuXzdqIf9ekXd3ScBePJkc OJnKvfmFWnQI+n7SXvLniDue8MHBiytrr0DEh40GyyIAQc+DMTf/Ap3Ybjx5CGsZQzN7 eSvf0kZyDGZmi+RaNv/+if5DGlelsY6LJD6fT6zIlhbMSVcOw9AXBxvIMEXqsxrdmq31 7a9A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k3si3285216pfj.67.2019.05.09.08.28.29; Thu, 09 May 2019 08:28:45 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726694AbfEIP1d (ORCPT + 99 others); Thu, 9 May 2019 11:27:33 -0400 Received: from foss.arm.com ([217.140.101.70]:44358 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726187AbfEIP1d (ORCPT ); Thu, 9 May 2019 11:27:33 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id E3E09374; Thu, 9 May 2019 08:27:32 -0700 (PDT) Received: from e110455-lin.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.72.51.249]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B30093F6C4; Thu, 9 May 2019 08:27:32 -0700 (PDT) Received: by e110455-lin.cambridge.arm.com (Postfix, from userid 1000) id 16712682412; Thu, 9 May 2019 16:27:31 +0100 (BST) Date: Thu, 9 May 2019 16:27:31 +0100 From: "liviu.dudau@arm.com" To: Wen He Cc: "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" , "brian.starkey@arm.com" , Leo Li Subject: Re: [v1] drm/arm/mali-dp: Add a loop around the second set CVAL and try 5 times Message-ID: <20190509152730.GP15144@e110455-lin.cambridge.arm.com> References: <20190508105956.6107-1-wen.he_1@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20190508105956.6107-1-wen.he_1@nxp.com> User-Agent: Mutt/1.11.4 (2019-03-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 08, 2019 at 10:58:18AM +0000, Wen He wrote: > This patch trying to fix monitor freeze issue caused by drm error > 'flip_done timed out' on LS1028A platform. this set try is make a loop > around the second setting CVAL and try like 5 times before giveing up. > > Signed-off-by: Liviu > Signed-off-by: Wen He Acked-by: Liviu Dudau I will pull this into my mali-dp tree and send it as fixes after v5.2-rc1. Best regards, Liviu > --- > drivers/gpu/drm/arm/malidp_drv.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/arm/malidp_drv.c b/drivers/gpu/drm/arm/malidp_drv.c > index 21725c9b9f5e..18cb7f134f4e 100644 > --- a/drivers/gpu/drm/arm/malidp_drv.c > +++ b/drivers/gpu/drm/arm/malidp_drv.c > @@ -192,6 +192,7 @@ static void malidp_atomic_commit_hw_done(struct drm_atomic_state *state) > { > struct drm_device *drm = state->dev; > struct malidp_drm *malidp = drm->dev_private; > + int loop = 5; > > malidp->event = malidp->crtc.state->event; > malidp->crtc.state->event = NULL; > @@ -206,8 +207,18 @@ static void malidp_atomic_commit_hw_done(struct drm_atomic_state *state) > drm_crtc_vblank_get(&malidp->crtc); > > /* only set config_valid if the CRTC is enabled */ > - if (malidp_set_and_wait_config_valid(drm) < 0) > + if (malidp_set_and_wait_config_valid(drm) < 0) { > + /* > + * make a loop around the second CVAL setting and > + * try 5 times before giving up. > + */ > + while (loop--) { > + if (!malidp_set_and_wait_config_valid(drm)) > + break; > + } > DRM_DEBUG_DRIVER("timed out waiting for updated configuration\n"); > + } > + > } else if (malidp->event) { > /* CRTC inactive means vblank IRQ is disabled, send event directly */ > spin_lock_irq(&drm->event_lock); > -- > 2.17.1 > -- ==================== | I would like to | | fix the world, | | but they're not | | giving me the | \ source code! / --------------- ¯\_(ツ)_/¯