Cool! If it did actually fix those problems, would you mind making sure this
gets Cc'd to stable when it gets pushed upstream?

On Mon, 2018-11-19 at 15:00 +0000, Zuo, Jerry wrote:
> Reviewed-by: Jerry (Fangzhi) Zuo <jerry....@amd.com>
> 
> The change fixed MST + SST daisy chain and S3 scenarios. The issue shows
> huge delay in MST + SST daisy chain, and soft hang in S3 resume.
> 
> The aux sequence is changed by failed iteration search in
> drm_connector_for_each_possible_encoder(). 
> The failure of searching for the best encoder for the connector due to the
> miss of attached encoder in the process of adding MST connector. The
> iteration search takes time to push drm_dp_send_enum_path_resources() aux
> transaction after the mode probe, and causes conflict to
> drm_dp_mst_i2c_xfer(), leading to the aux transaction timeout.
> 
> -----Original Message-----
> From: Lyude Paul <ly...@redhat.com> 
> Sent: November 16, 2018 6:25 PM
> To: amd-gfx@lists.freedesktop.org
> Cc: Zuo, Jerry <jerry....@amd.com>; Wentland, Harry <harry.wentl...@amd.com>
> ; Li, Sun peng (Leo) <sunpeng...@amd.com>; Deucher, Alexander <
> alexander.deuc...@amd.com>; Koenig, Christian <christian.koe...@amd.com>;
> Zhou, David(ChunMing) <david1.z...@amd.com>; David Airlie <airl...@linux.ie>
> ; Li, Roman <roman...@amd.com>; S, Shirish <shiris...@amd.com>; Daniel
> Vetter <daniel.vet...@ffwll.ch>; dri-de...@lists.freedesktop.org; 
> linux-ker...@vger.kernel.org
> Subject: [PATCH 1/2] drm/amd/dm: Don't forget to attach MST encoders
> 
> Drive-by fix, this is bound to cause problems somewhere.
> 
> Signed-off-by: Lyude Paul <ly...@redhat.com>
> Cc: Jerry Zuo <jerry....@amd.com>
> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> index d02c32a1039c..0cca1809fdcd 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> @@ -342,6 +342,8 @@ dm_dp_add_mst_connector(struct drm_dp_mst_topology_mgr
> *mgr,
>               master->connector_id);
>  
>       aconnector->mst_encoder = dm_dp_create_fake_mst_encoder(master);
> +     drm_connector_attach_encoder(&aconnector->base,
> +                                  &aconnector->mst_encoder->base);
>  
>       /*
>        * TODO: understand why this one is needed
-- 
Cheers,
        Lyude Paul

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to