diff options
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.patch | 67 |
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 + |