
Some patches were part of other linux-mainline kernel versions but are not anymore part of the current 4.19.76. Move 0001-Enable-uart3-for-NanoPi-Neo-Air-used-by-BT.patch in linux-mainline_4.19.76.bbappend to avoid error patching file arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts Hunk #2 FAILED at 162. 1 out of 2 hunks FAILED -- rejects in file arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts Place all patches from Armbian in a separate directory and do all the Balena specific operations in linux-mainline_%.bbappend only. Changelog-entry: Remove unused patches and cleanup Signed-off-by: Vicentiu Galanopulo <vicentiu@balena.io>
58 lines
2.2 KiB
Diff
58 lines
2.2 KiB
Diff
From 0957f917d9a53bd9264bde6c2bd9d4f93cdd1d0c Mon Sep 17 00:00:00 2001
|
|
From: Chen-Yu Tsai <wens@csie.org>
|
|
Date: Thu, 18 Oct 2018 15:33:27 +0800
|
|
Subject: [PATCH 134/146] drm/sun4i: rgb: Add 5% tolerance to dot clock
|
|
frequency check
|
|
|
|
The panels shipped with Allwinner devices are very "generic", i.e.
|
|
they do not have model numbers or reliable sources of information
|
|
for the timings (that we know of) other than the fex files shipped
|
|
on them. The dot clock frequency provided in the fex files have all
|
|
been rounded to the nearest MHz, as that is the unit used in them.
|
|
|
|
We were using the simple panel "urt,umsh-8596md-t" as a substitute
|
|
for the A13 Q8 tablets in the absence of a specific model for what
|
|
may be many different but otherwise timing compatible panels. This
|
|
was usable without any visual artifacts or side effects, until the
|
|
dot clock rate check was added in commit bb43d40d7c83 ("drm/sun4i:
|
|
rgb: Validate the clock rate").
|
|
|
|
The reason this check fails is because the dotclock frequency for
|
|
this model is 33.26 MHz, which is not achievable with our dot clock
|
|
hardware, and the rate returned by clk_round_rate deviates slightly,
|
|
causing the driver to reject the display mode.
|
|
|
|
The LCD panels have some tolerance on the dot clock frequency, even
|
|
if it's not specified in their datasheets.
|
|
|
|
This patch adds a 5% tolerence to the dot clock check.
|
|
|
|
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
|
|
---
|
|
drivers/gpu/drm/sun4i/sun4i_rgb.c | 5 +++--
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/drivers/gpu/drm/sun4i/sun4i_rgb.c b/drivers/gpu/drm/sun4i/sun4i_rgb.c
|
|
index bf068da6b12e..23bdc449eacc 100644
|
|
--- a/drivers/gpu/drm/sun4i/sun4i_rgb.c
|
|
+++ b/drivers/gpu/drm/sun4i/sun4i_rgb.c
|
|
@@ -92,13 +92,14 @@ static enum drm_mode_status sun4i_rgb_mode_valid(struct drm_encoder *crtc,
|
|
|
|
DRM_DEBUG_DRIVER("Vertical parameters OK\n");
|
|
|
|
+ /* Check against a 5% tolerance for the dot clock */
|
|
tcon->dclk_min_div = 6;
|
|
tcon->dclk_max_div = 127;
|
|
rounded_rate = clk_round_rate(tcon->dclk, rate);
|
|
- if (rounded_rate < rate)
|
|
+ if (rounded_rate < rate * 19 / 20 )
|
|
return MODE_CLOCK_LOW;
|
|
|
|
- if (rounded_rate > rate)
|
|
+ if (rounded_rate > rate * 21 / 20)
|
|
return MODE_CLOCK_HIGH;
|
|
|
|
DRM_DEBUG_DRIVER("Clock rate OK\n");
|
|
--
|
|
2.17.1
|
|
|