Files
LibreELEC.tv/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0051-WIP-drm-meson-meson_vclk-fix-VIC-alternate-timings.patch
2022-05-29 06:37:27 +00:00

45 lines
1.6 KiB
Diff

From 51babedd158973b9b578fda731177705b453e339 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 13 Feb 2022 08:53:39 +0000
Subject: [PATCH 51/75] WIP: drm/meson/meson_vclk: fix VIC alternate timings
4K VP9 media with 59.94 fractional refresh rate refuses to play with
the screen going blank (no sync) and the following error reported in
system logs:
[ 89.610280] Fatal Error, invalid HDMI vclk freq 593406
Modetest shows the following:
3840x2160 59.94 3840 4016 4104 4400 2160 2168 2178 2250 593407 flags: phsync, pvsync; type: driver
calculated value -----------------------------------------^
Tweaking DIV_ROUND_CLOSEST to use 1002 in calculations allows 593406
to match and 4K 59.94 media now plays correctly.
Unfortunately this is not a proper fix and it's not guaranteed to
work for everyone. It points and issue with clocks/precision somewhere.
Fixes: ff217bc710e0 ("drm/meson: Add support for VIC alternate timings")
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
drivers/gpu/drm/meson/meson_vclk.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/meson/meson_vclk.c b/drivers/gpu/drm/meson/meson_vclk.c
index 2a82119eb58e..3fc7d9cb9953 100644
--- a/drivers/gpu/drm/meson/meson_vclk.c
+++ b/drivers/gpu/drm/meson/meson_vclk.c
@@ -110,7 +110,7 @@
#define HDMI_PLL_LOCK BIT(31)
#define HDMI_PLL_LOCK_G12A (3 << 30)
-#define FREQ_1000_1001(_freq) DIV_ROUND_CLOSEST(_freq * 1000, 1001)
+#define FREQ_1000_1001(_freq) DIV_ROUND_CLOSEST(_freq * 1000, 1002)
/* VID PLL Dividers */
enum {
--
2.17.1