aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.19.8/1744-drm-amd-display-fix-dp_hdmi_max_pixel_clk-units.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/1744-drm-amd-display-fix-dp_hdmi_max_pixel_clk-units.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.19.8/1744-drm-amd-display-fix-dp_hdmi_max_pixel_clk-units.patch74
1 files changed, 74 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/1744-drm-amd-display-fix-dp_hdmi_max_pixel_clk-units.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/1744-drm-amd-display-fix-dp_hdmi_max_pixel_clk-units.patch
new file mode 100644
index 00000000..db9868b9
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/1744-drm-amd-display-fix-dp_hdmi_max_pixel_clk-units.patch
@@ -0,0 +1,74 @@
+From 61a60d2ccb12ea217f5e4e74f7af5f8e42d43b2d Mon Sep 17 00:00:00 2001
+From: SivapiriyanKumarasamy <sivapiriyan.kumarasamy@amd.com>
+Date: Tue, 19 Mar 2019 15:21:50 -0400
+Subject: [PATCH 1744/2940] drm/amd/display: fix dp_hdmi_max_pixel_clk units
+
+[Why]
+We are incorrectly using dp_hdmi_max_pixel_clk because the units are not clear.
+
+[How]
+Rename to dp_hdmi_max_pixel_clk_in_khz, and change mode timing validation to use
+the value correctly.
+
+Signed-off-by: SivapiriyanKumarasamy <sivapiriyan.kumarasamy@amd.com>
+Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
+Acked-by: Leo Li <sunpeng.li@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/core/dc_link.c | 2 +-
+ drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 6 +++---
+ drivers/gpu/drm/amd/display/dc/dc_types.h | 2 +-
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
+index dd6e5f0fdf5e..b369da078b2f 100644
+--- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c
++++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
+@@ -2150,7 +2150,7 @@ static bool dp_active_dongle_validate_timing(
+ return false;
+ }
+
+- if (get_timing_pixel_clock_100hz(timing) > (dongle_caps->dp_hdmi_max_pixel_clk * 10))
++ if (get_timing_pixel_clock_100hz(timing) > (dongle_caps->dp_hdmi_max_pixel_clk_in_khz * 10))
+ return false;
+
+ return true;
+diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
+index 063d019a3f6f..528c9625b5c0 100644
+--- a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
++++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
+@@ -2304,8 +2304,8 @@ static void get_active_converter_info(
+ hdmi_caps = {.raw = det_caps[3] };
+ union dwnstream_port_caps_byte2
+ hdmi_color_caps = {.raw = det_caps[2] };
+- link->dpcd_caps.dongle_caps.dp_hdmi_max_pixel_clk =
+- det_caps[1] * 25000;
++ link->dpcd_caps.dongle_caps.dp_hdmi_max_pixel_clk_in_khz =
++ det_caps[1] * 2500;
+
+ link->dpcd_caps.dongle_caps.is_dp_hdmi_s3d_converter =
+ hdmi_caps.bits.FRAME_SEQ_TO_FRAME_PACK;
+@@ -2322,7 +2322,7 @@ static void get_active_converter_info(
+ translate_dpcd_max_bpc(
+ hdmi_color_caps.bits.MAX_BITS_PER_COLOR_COMPONENT);
+
+- if (link->dpcd_caps.dongle_caps.dp_hdmi_max_pixel_clk != 0)
++ if (link->dpcd_caps.dongle_caps.dp_hdmi_max_pixel_clk_in_khz != 0)
+ link->dpcd_caps.dongle_caps.extendedCapValid = true;
+ }
+
+diff --git a/drivers/gpu/drm/amd/display/dc/dc_types.h b/drivers/gpu/drm/amd/display/dc/dc_types.h
+index 130d039ae137..7402f5ada8b6 100644
+--- a/drivers/gpu/drm/amd/display/dc/dc_types.h
++++ b/drivers/gpu/drm/amd/display/dc/dc_types.h
+@@ -404,7 +404,7 @@ struct dc_dongle_caps {
+ bool is_dp_hdmi_ycbcr422_converter;
+ bool is_dp_hdmi_ycbcr420_converter;
+ uint32_t dp_hdmi_max_bpc;
+- uint32_t dp_hdmi_max_pixel_clk;
++ uint32_t dp_hdmi_max_pixel_clk_in_khz;
+ };
+ /* Scaling format */
+ enum scaling_transformation {
+--
+2.17.1
+