summarylogtreecommitdiffstats
path: root/0040-drm-amd-display-For-stereo-keep-FLIP_ANY_FRAME.patch
diff options
context:
space:
mode:
Diffstat (limited to '0040-drm-amd-display-For-stereo-keep-FLIP_ANY_FRAME.patch')
-rw-r--r--0040-drm-amd-display-For-stereo-keep-FLIP_ANY_FRAME.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/0040-drm-amd-display-For-stereo-keep-FLIP_ANY_FRAME.patch b/0040-drm-amd-display-For-stereo-keep-FLIP_ANY_FRAME.patch
new file mode 100644
index 000000000000..9708bf39d1da
--- /dev/null
+++ b/0040-drm-amd-display-For-stereo-keep-FLIP_ANY_FRAME.patch
@@ -0,0 +1,38 @@
+From c6f7ba837efc8f12c51aecaf9570d86adb80ab90 Mon Sep 17 00:00:00 2001
+From: Alvin Lee <alvin.lee2@amd.com>
+Date: Thu, 28 Jul 2022 09:51:05 -0400
+Subject: [PATCH 40/73] drm/amd/display: For stereo keep "FLIP_ANY_FRAME"
+
+[ Upstream commit 84ef99c728079dfd21d6bc70b4c3e4af20602b3c ]
+
+[Description]
+Observed in stereomode that programming FLIP_LEFT_EYE
+can cause hangs. Keep FLIP_ANY_FRAME in stereo mode so
+the surface flip can take place before left or right eye
+
+Reviewed-by: Martin Leung <Martin.Leung@amd.com>
+Acked-by: Tom Chung <chiahsuan.chung@amd.com>
+Signed-off-by: Alvin Lee <alvin.lee2@amd.com>
+Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c b/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c
+index 6a4dcafb9bba..dc3e8df706b3 100644
+--- a/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c
++++ b/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c
+@@ -86,7 +86,7 @@ bool hubp3_program_surface_flip_and_addr(
+ VMID, address->vmid);
+
+ if (address->type == PLN_ADDR_TYPE_GRPH_STEREO) {
+- REG_UPDATE(DCSURF_FLIP_CONTROL, SURFACE_FLIP_MODE_FOR_STEREOSYNC, 0x1);
++ REG_UPDATE(DCSURF_FLIP_CONTROL, SURFACE_FLIP_MODE_FOR_STEREOSYNC, 0);
+ REG_UPDATE(DCSURF_FLIP_CONTROL, SURFACE_FLIP_IN_STEREOSYNC, 0x1);
+
+ } else {
+--
+2.37.3
+