drm/amd/display: Updating Video Format Fall Back Policy.
authorJasdeep Dhillon <jdhillon@amd.com>
Wed, 25 Jan 2023 15:50:19 +0000 (10:50 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 28 Feb 2023 19:29:35 +0000 (14:29 -0500)
[WHY]
Adding 1920x1080 as fail safe mode for
Video Format Fall Back Policy.

Reviewed-by: Jerry Zuo <Jerry.Zuo@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Jasdeep Dhillon <jdhillon@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c
drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h

index 9534bb8..cfbde4f 100644 (file)
@@ -7160,12 +7160,17 @@ static int amdgpu_dm_connector_get_modes(struct drm_connector *connector)
                        to_amdgpu_dm_connector(connector);
        struct drm_encoder *encoder;
        struct edid *edid = amdgpu_dm_connector->edid;
+       struct dc_link_settings *verified_link_cap =
+                       &amdgpu_dm_connector->dc_link->verified_link_cap;
 
        encoder = amdgpu_dm_connector_to_encoder(connector);
 
        if (!drm_edid_is_valid(edid)) {
                amdgpu_dm_connector->num_modes =
                                drm_add_modes_noedid(connector, 640, 480);
+               if (link_dp_get_encoding_format(verified_link_cap) == DP_128b_132b_ENCODING)
+                       amdgpu_dm_connector->num_modes +=
+                               drm_add_modes_noedid(connector, 1920, 1080);
        } else {
                amdgpu_dm_connector_ddc_get_modes(connector, edid);
                amdgpu_dm_connector_add_common_modes(encoder, connector);
index 8e572f0..1250124 100644 (file)
@@ -559,6 +559,7 @@ static void update_config(void *handle, struct cp_psp_stream_config *config)
        link->dp.rev = aconnector->dc_link->dpcd_caps.dpcd_rev.raw;
        link->dp.assr_enabled = config->assr_enabled;
        link->dp.mst_enabled = config->mst_enabled;
+       link->dp.dp2_enabled = config->dp2_enabled;
        link->dp.usb4_enabled = config->usb4_enabled;
        display->adjust.disable = MOD_HDCP_DISPLAY_DISABLE_AUTHENTICATION;
        link->adjust.auth_delay = 0;
index 3348bb9..a4d344a 100644 (file)
@@ -104,6 +104,7 @@ struct mod_hdcp_displayport {
        uint8_t rev;
        uint8_t assr_enabled;
        uint8_t mst_enabled;
+       uint8_t dp2_enabled;
        uint8_t usb4_enabled;
 };