aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.14.71/5052-drm-amd-display-display-connected-to-dp-1-does-not-l.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/5052-drm-amd-display-display-connected-to-dp-1-does-not-l.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.14.71/5052-drm-amd-display-display-connected-to-dp-1-does-not-l.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/5052-drm-amd-display-display-connected-to-dp-1-does-not-l.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/5052-drm-amd-display-display-connected-to-dp-1-does-not-l.patch
new file mode 100644
index 00000000..a652176f
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/5052-drm-amd-display-display-connected-to-dp-1-does-not-l.patch
@@ -0,0 +1,67 @@
+From ae41a6a1c4d81e75ae7139a210319dba19e040e2 Mon Sep 17 00:00:00 2001
+From: Hersen Wu <hersenxs.wu@amd.com>
+Date: Fri, 27 Jul 2018 14:52:37 -0400
+Subject: [PATCH 5052/5725] drm/amd/display: display connected to dp-1 does not
+ light up
+
+[why]
+for vega, dp set_panel_mode is
+handled by psp firmware. dal should not program the
+register again.
+
+[how]
+dal does not program panel mode.
+
+Signed-off-by: Hersen Wu <hersenxs.wu@amd.com>
+Reviewed-by: Charlene Liu <Charlene.Liu@amd.com>
+Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/dc.h | 1 +
+ drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c | 5 +++++
+ drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 1 +
+ 3 files changed, 7 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h
+index 8dfbce9..4f9d969 100644
+--- a/drivers/gpu/drm/amd/display/dc/dc.h
++++ b/drivers/gpu/drm/amd/display/dc/dc.h
+@@ -79,6 +79,7 @@ struct dc_caps {
+ bool post_blend_color_processing;
+ bool force_dp_tps4_for_cp2520;
+ bool disable_dp_clk_share;
++ bool psp_setup_panel_mode;
+ };
+
+ struct dc_dcc_surface_param {
+diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c
+index 60e3c6a..752b3d6 100644
+--- a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c
++++ b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c
+@@ -256,6 +256,11 @@ static void setup_panel_mode(
+ enum dp_panel_mode panel_mode)
+ {
+ uint32_t value;
++ struct dc_context *ctx = enc110->base.ctx;
++
++ /* if psp set panel mode, dal should be program it */
++ if (ctx->dc->caps.psp_setup_panel_mode)
++ return;
+
+ ASSERT(REG(DP_DPHY_INTERNAL_CTRL));
+ value = REG_READ(DP_DPHY_INTERNAL_CTRL);
+diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c
+index 61d8e22..d43f37d 100644
+--- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c
++++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c
+@@ -883,6 +883,7 @@ static bool construct(
+ dc->caps.i2c_speed_in_khz = 100;
+ dc->caps.max_cursor_size = 128;
+ dc->caps.dual_link_dvi = true;
++ dc->caps.psp_setup_panel_mode = true;
+
+ dc->debug = debug_defaults;
+
+--
+2.7.4
+