Home Home > GIT Browse > SLE12-SP4-AZURE
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2019-02-21 09:09:54 +0100
committerTakashi Iwai <tiwai@suse.de>2019-02-21 09:10:09 +0100
commit87a0f3b3ab61754d48508604cd682cd98ce9ce77 (patch)
treeccf79c037856eef56e8d915970510959e1e7aee9
parent3ae509c5d9ae3f0b53356de60866f484f37d4cbf (diff)
drm/bridge: tc358767: fix output H/V syncs (bsc#1051510).
-rw-r--r--patches.drm/drm-bridge-tc358767-fix-output-H-V-syncs.patch48
-rw-r--r--series.conf1
2 files changed, 49 insertions, 0 deletions
diff --git a/patches.drm/drm-bridge-tc358767-fix-output-H-V-syncs.patch b/patches.drm/drm-bridge-tc358767-fix-output-H-V-syncs.patch
new file mode 100644
index 0000000000..151109738d
--- /dev/null
+++ b/patches.drm/drm-bridge-tc358767-fix-output-H-V-syncs.patch
@@ -0,0 +1,48 @@
+From 7923e09c7a766e2d58de7fc395bb84c18e5bc625 Mon Sep 17 00:00:00 2001
+From: Tomi Valkeinen <tomi.valkeinen@ti.com>
+Date: Thu, 3 Jan 2019 13:59:53 +0200
+Subject: [PATCH] drm/bridge: tc358767: fix output H/V syncs
+Git-commit: 7923e09c7a766e2d58de7fc395bb84c18e5bc625
+Patch-mainline: v5.0-rc2
+References: bsc#1051510
+
+The H and V syncs of the DP output are always set to active high. This
+patch fixes the syncs by configuring them according to the videomode.
+
+Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
+Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
+Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
+Link: https://patchwork.freedesktop.org/patch/msgid/20190103115954.12785-7-tomi.valkeinen@ti.com
+Acked-by: Takashi Iwai <tiwai@suse.de>
+
+---
+ drivers/gpu/drm/bridge/tc358767.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c
+index a1f3dd2afbb1..391547358756 100644
+--- a/drivers/gpu/drm/bridge/tc358767.c
++++ b/drivers/gpu/drm/bridge/tc358767.c
+@@ -98,6 +98,8 @@
+ #define DP0_STARTVAL 0x064c
+ #define DP0_ACTIVEVAL 0x0650
+ #define DP0_SYNCVAL 0x0654
++#define SYNCVAL_HS_POL_ACTIVE_LOW (1 << 15)
++#define SYNCVAL_VS_POL_ACTIVE_LOW (1 << 31)
+ #define DP0_MISC 0x0658
+ #define TU_SIZE_RECOMMENDED (63) /* LSCLK cycles per TU */
+ #define BPC_6 (0 << 5)
+@@ -726,7 +728,9 @@ static int tc_set_video_mode(struct tc_data *tc, struct drm_display_mode *mode)
+
+ tc_write(DP0_ACTIVEVAL, (mode->vdisplay << 16) | (mode->hdisplay));
+
+- tc_write(DP0_SYNCVAL, (vsync_len << 16) | (hsync_len << 0));
++ tc_write(DP0_SYNCVAL, (vsync_len << 16) | (hsync_len << 0) |
++ ((mode->flags & DRM_MODE_FLAG_NHSYNC) ? SYNCVAL_HS_POL_ACTIVE_LOW : 0) |
++ ((mode->flags & DRM_MODE_FLAG_NVSYNC) ? SYNCVAL_VS_POL_ACTIVE_LOW : 0));
+
+ tc_write(DPIPXLFMT, VS_POL_ACTIVE_LOW | HS_POL_ACTIVE_LOW |
+ DE_POL_ACTIVE_HIGH | SUB_CFG_TYPE_CONFIG1 | DPI_BPP_RGB888);
+--
+2.16.4
+
diff --git a/series.conf b/series.conf
index 1c7a14b507..b920f3f494 100644
--- a/series.conf
+++ b/series.conf
@@ -20242,6 +20242,7 @@
patches.drm/drm-bridge-tc358767-fix-single-lane-configuration.patch
patches.drm/drm-bridge-tc358767-fix-initial-DP0-1_SRCCTRL-value.patch
patches.drm/drm-bridge-tc358767-reject-modes-which-require-too-m.patch
+ patches.drm/drm-bridge-tc358767-fix-output-H-V-syncs.patch
patches.drivers/ACPI-power-Skip-duplicate-power-resource-references-.patch
patches.arch/x86-modpost-replace-last-remnants-of-retpoline-with-config_retpoline.patch
patches.fixes/rbd-don-t-return-0-on-unmap-if-rbd_dev_flag_removing-is-set.patch