Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp7151800ybi; Mon, 8 Jul 2019 15:41:31 -0700 (PDT) X-Google-Smtp-Source: APXvYqzUC4B0U6dV2zus4Bx9nx/AvfT2QfJFshk01PXAOOCNmXRhEWJcIGUm1u6+ivq7+0vC0zwH X-Received: by 2002:a17:90a:8985:: with SMTP id v5mr28310140pjn.136.1562625691213; Mon, 08 Jul 2019 15:41:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1562625691; cv=none; d=google.com; s=arc-20160816; b=eJWd8s8b71BMI2AbNvjTQf/MjYEKZHeR3Osk/TvLgOg6ABemtCrrsaBAwp9nUt4Lia H/hkoB3v7jYctBh/7CT8dtrEuTrM1q/H7Yz4auiMBgoHhy0mccV8oWttziZHq90hwpgj 94+Cm8C/hEfoA1uc4/+PKvu7WAtl2zomgeiMR9C8/4QeiYBguBmPCBKLZyNzROIqq4b3 FDvUIJkQfqbyC2GVmwFMKcjLZkKdaooBX26LhSjSmngotNp5XD3BpwA3qQcl7lLPvJZo tRZTvPLX2xoocKZ/jTP3H+p1cqsC1hSb/bkTuqErRgD/FPyL0efqvtnxV8Xjhd+S4PLZ Pd9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=pb4PZ6cm/+Q4EZtNVRdE5YbZ0sHw5VrGcanOAkE9iVA=; b=FWeffMAqYONVh4G8MVB9w6RgHRaK+kLjFHYFQ0OKnBgRyHJZucS9AYEN8fySNtdE7u h3PRagqrnUcplmwcsTSxVu3pnNGfePZYjzAl57ETyREwFyA6TtOKbcDE3seTamQwqcQ+ aD4mOzIPsRH3xWhg1ooLFLlQ5oK0Z4Iiak7HzzllJRqL5ovikEVtFg4eHRg37ZtsSzny iPszDtkV56YiCuN7ucS2RD32uymLcw4GnDnMGKWqkaGsXhzGr2TB1SeqKblHPPFq3Nq/ vNKCnoMlKJ5qTzKtFugjy77CaJlLONiXe2L5C96WgmiVlTpBaH30RCCUB4U18FIlRnEx jdxg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=ST7H5e4Q; 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 186si20948484pgc.248.2019.07.08.15.41.16; Mon, 08 Jul 2019 15:41:31 -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; dkim=pass header.i=@kernel.org header.s=default header.b=ST7H5e4Q; 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 S2391392AbfGHPrR (ORCPT + 99 others); Mon, 8 Jul 2019 11:47:17 -0400 Received: from mail.kernel.org ([198.145.29.99]:43264 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729475AbfGHPTH (ORCPT ); Mon, 8 Jul 2019 11:19:07 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 156C92166E; Mon, 8 Jul 2019 15:19:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1562599146; bh=ZqmW10D35p/x6y7IAQNUyGnMQXsoa6AxexrI/IJgfog=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ST7H5e4QF73WPKdFEVbmMxSgznbri/gdtWgzhyw3IgUoTO9boI+u4gO4TQ3WVi6Sx y1JyE84aEmEtyK6W41qQ+SImqYmkuF0lMf/Ezq9qSjmXt0okvLPIQD7YMDu3+yO6PH I9m6tLVt2drOI/58WpuxEqarIdQvBacihawDQfio= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Robin Murphy , Liviu Dudau , Sasha Levin Subject: [PATCH 4.9 020/102] drm/arm/hdlcd: Allow a bit of clock tolerance Date: Mon, 8 Jul 2019 17:12:13 +0200 Message-Id: <20190708150527.236742908@linuxfoundation.org> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190708150525.973820964@linuxfoundation.org> References: <20190708150525.973820964@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [ Upstream commit 1c810739097fdeb31b393b67a0a1e3d7ffdd9f63 ] On the Arm Juno platform, the HDLCD pixel clock is constrained to 250KHz resolution in order to avoid the tiny System Control Processor spending aeons trying to calculate exact PLL coefficients. This means that modes like my oddball 1600x1200 with 130.89MHz clock get rejected since the rate cannot be matched exactly. In practice, though, this mode works quite happily with the clock at 131MHz, so let's relax the check to allow a little bit of slop. Signed-off-by: Robin Murphy Signed-off-by: Liviu Dudau Signed-off-by: Sasha Levin --- drivers/gpu/drm/arm/hdlcd_crtc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/arm/hdlcd_crtc.c b/drivers/gpu/drm/arm/hdlcd_crtc.c index 28341b32067f..84dea276175b 100644 --- a/drivers/gpu/drm/arm/hdlcd_crtc.c +++ b/drivers/gpu/drm/arm/hdlcd_crtc.c @@ -170,7 +170,8 @@ static int hdlcd_crtc_atomic_check(struct drm_crtc *crtc, long rate, clk_rate = mode->clock * 1000; rate = clk_round_rate(hdlcd->clk, clk_rate); - if (rate != clk_rate) { + /* 0.1% seems a close enough tolerance for the TDA19988 on Juno */ + if (abs(rate - clk_rate) * 1000 > clk_rate) { /* clock required by mode not supported by hardware */ return -EINVAL; } -- 2.20.1