dc_sink_release(dc_sink);
                aconnector->dc_sink = NULL;
                aconnector->edid = NULL;
+               aconnector->dsc_aux = NULL;
+               port->passthrough_aux = NULL;
        }
 
        aconnector->mst_status = MST_STATUS_DEFAULT;
                dc_sink_release(aconnector->dc_sink);
                aconnector->dc_sink = NULL;
                aconnector->edid = NULL;
+               aconnector->dsc_aux = NULL;
+               port->passthrough_aux = NULL;
 
                amdgpu_dm_set_mst_status(&aconnector->mst_status,
                        MST_REMOTE_EDID | MST_ALLOCATE_NEW_PAYLOAD | MST_CLEAR_ALLOCATED_PAYLOAD,
                if (!aconnector || !aconnector->dsc_aux)
                        continue;
 
-               /*
-                *      check if cached virtual MST DSC caps are available and DSC is supported
-                *      as per specifications in their Virtual DPCD registers.
-               */
-               if (!(aconnector->dc_sink->dsc_caps.dsc_dec_caps.is_dsc_supported ||
-                       aconnector->dc_link->dpcd_caps.dsc_caps.dsc_basic_caps.fields.dsc_support.DSC_PASSTHROUGH_SUPPORT))
-                       continue;
-
                stream_on_link[new_stream_on_link_num] = aconnector;
                new_stream_on_link_num++;