Update infopackets for replay

Signed-off-by: Bhawanpreet Lakha <bhawanpreet.la...@amd.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c             | 4 ++--
 drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c | 4 ++++
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index c574a11a10bd..90bc32a29356 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -6097,7 +6097,7 @@ create_stream_for_sink(struct amdgpu_dm_connector 
*aconnector,
        if (stream->signal == SIGNAL_TYPE_HDMI_TYPE_A)
                mod_build_hf_vsif_infopacket(stream, &stream->vsp_infopacket);
 
-       if (stream->link->psr_settings.psr_feature_enabled) {
+       if (stream->link->psr_settings.psr_feature_enabled || 
stream->link->replay_settings.replay_feature_enabled) {
                //
                // should decide stream support vsc sdp colorimetry capability
                // before building vsc info packet
@@ -7842,7 +7842,7 @@ static void update_freesync_state_on_stream(
 
        aconn = (struct amdgpu_dm_connector *)new_stream->dm_stream_context;
 
-       if (aconn && aconn->as_type == FREESYNC_TYPE_PCON_IN_WHITELIST) {
+       if (aconn && (aconn->as_type == FREESYNC_TYPE_PCON_IN_WHITELIST || 
aconn->vsdb_info.replay_mode)) {
                pack_sdp_v1_3 = aconn->pack_sdp_v1_3;
 
                if (aconn->vsdb_info.amd_vsdb_version == 1)
diff --git a/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c 
b/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c
index ec64f19e1786..5e0068f71609 100644
--- a/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c
+++ b/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c
@@ -149,6 +149,8 @@ void mod_build_vsc_infopacket(const struct dc_stream_state 
*stream,
        /* VSC packet set to 4 for PSR-SU, or 2 for PSR1 */
        if (stream->link->psr_settings.psr_version == DC_PSR_VERSION_SU_1)
                vsc_packet_revision = vsc_packet_rev4;
+       else if (stream->link->replay_settings.config.replay_supported)
+               vsc_packet_revision = vsc_packet_rev4;
        else if (stream->link->psr_settings.psr_version == DC_PSR_VERSION_1)
                vsc_packet_revision = vsc_packet_rev2;
 
@@ -536,6 +538,8 @@ void mod_build_adaptive_sync_infopacket(const struct 
dc_stream_state *stream,
        case FREESYNC_TYPE_PCON_IN_WHITELIST:
                mod_build_adaptive_sync_infopacket_v1(info_packet);
                break;
+       case ADAPTIVE_SYNC_TYPE_EDP:
+               mod_build_adaptive_sync_infopacket_v1(info_packet);
        case ADAPTIVE_SYNC_TYPE_NONE:
        case FREESYNC_TYPE_PCON_NOT_IN_WHITELIST:
        default:
-- 
2.25.1

Reply via email to