Received: by 2002:a25:f815:0:0:0:0:0 with SMTP id u21csp2240304ybd; Mon, 24 Jun 2019 03:08:15 -0700 (PDT) X-Google-Smtp-Source: APXvYqxz1uiDdE9tANR/coXLwJdUXYZ5ietd2UAb1GHlwgcKndaRQhh8Rq/g8KjFtY30Bfbg/ej/ X-Received: by 2002:a17:902:9896:: with SMTP id s22mr17287553plp.4.1561370895286; Mon, 24 Jun 2019 03:08:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1561370895; cv=none; d=google.com; s=arc-20160816; b=SOeSwLppuKJ6X+tpL9WCHv91j93m815lGeLdY0hdgmtUvwx2CE34oTJTx3rRI+oBBi J2xy4vT40nOhSio3IEFBwV99u1qebqC7yZX4SWDPW/vvYaXdS+x7n31TthjZXXwcS4Pi gmlmyCAr7Qi/p73b5sx18/Y3HmYcqeZoFZx5RLC4mr1H7Sxf3a1YqeMwBxQc0sLsyJ92 ZRUB+tc+ayyhNKG0UHOtZZPgcJH+gW46lyEtFhEBMU/W4RrFUgH8rJunYnd7GeIpSsCW Apt6aYWS0r+fI8ZUCGtqkqR3yVEelPhNb1DG8AVHx8rGd61hEApTJ+znYkKkOlQzGQFj 4NLg== 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=dBf2o3tgIilubz7jGV+m0QnvVNzm3vdZMURvjKVUaTw=; b=JEX5RZt548qUIkewCkcAF9r6FhE8Zt175xNbNpZIyHjIQJjxIs14cauut7F6mQuuur wpinvE/g7FtPpSHy9GmWTbZFLIeEqXNyRphuL1GyTqYRO9RyLvPqMPfJrGJuCXitv44y BqD6MjveMyFteHpFWa0HfLlD4Sc1h4G78kLhHkNMHSJAB4mwVXWksZsYNOopjW0bYs8+ K6l/1XSpy9Nz2lfw5Wplf9MGNMasNvtUAHVyqwB0WJEoTnogLPVgzYUkVXZN5IuWqkqZ RHgIAEUKU/of5AqWIf0auAr6XL5ybxQEbJykSpWAf5tLb5Sxec2rGfUWBJ+K/52sqS7M 5PpA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Ey6Odkwl; 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 p10si8898683pgj.534.2019.06.24.03.07.59; Mon, 24 Jun 2019 03:08:15 -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=Ey6Odkwl; 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 S1729097AbfFXKFz (ORCPT + 99 others); Mon, 24 Jun 2019 06:05:55 -0400 Received: from mail.kernel.org ([198.145.29.99]:36672 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729820AbfFXKEx (ORCPT ); Mon, 24 Jun 2019 06:04:53 -0400 Received: from localhost (f4.8f.5177.ip4.static.sl-reverse.com [119.81.143.244]) (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 3A4CA205ED; Mon, 24 Jun 2019 10:04:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1561370692; bh=FetlrdchN7oAWuBliIG6imsOL7E0QglN4LHd39Hgjh0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ey6Odkwl2iJ/gDB34Aqm1REMfKElahG8LpB8L5PNzAVsb9TARKm/kAIjaq5ZWzt+Y Idh1vvCi0qew1hAu7X4E6k3sgIIDQVJl7gvXvMx8WUuxkJl7FKj362Axn0/0gk355k Nnie/9vZH/N9B4P02atZwbvAvaXC4vuon09gX+3A= 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.19 57/90] drm/arm/hdlcd: Allow a bit of clock tolerance Date: Mon, 24 Jun 2019 17:56:47 +0800 Message-Id: <20190624092317.858285737@linuxfoundation.org> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190624092313.788773607@linuxfoundation.org> References: <20190624092313.788773607@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 d5c1a0b1f01a..e69d996eabad 100644 --- a/drivers/gpu/drm/arm/hdlcd_crtc.c +++ b/drivers/gpu/drm/arm/hdlcd_crtc.c @@ -193,7 +193,8 @@ static enum drm_mode_status hdlcd_crtc_mode_valid(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 MODE_NOCLOCK; } -- 2.20.1