On 1/14/19 1:41 PM, Jerry (Fangzhi) Zuo wrote:
> Need to check if crtc state is changed so that mode set is
> required before trying to create new stream.
> 
> It deals with the MST hotplug use case when plug back to the
> same connector where the failure to create new stream for the
> inactive crtc state. Simply skip the check for the old connector
> and go through the new one.
> 
> Signed-off-by: Jerry (Fangzhi) Zuo <jerry....@amd.com>

Reviewed-by: Nicholas Kazlauskas <nicholas.kazlaus...@amd.com>

Maybe in the future we should look into cleaning up the disable/enable 
codepath into a single function that does both.

This looks fine to me for now at least.

Nicholas Kazlauskas

> ---
>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++++
>   1 file changed, 4 insertions(+)
> 
> 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 987095ccd2c5..31ac44b56eaf 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -5611,6 +5611,9 @@ static int dm_update_crtc_state(struct 
> amdgpu_display_manager *dm,
>               dm_new_conn_state = to_dm_connector_state(drm_new_conn_state);
>               dm_old_conn_state = to_dm_connector_state(drm_old_conn_state);
>   
> +             if (!drm_atomic_crtc_needs_modeset(new_crtc_state))
> +                     goto skip_modeset;
> +
>               new_stream = create_stream_for_sink(aconnector,
>                                                    &new_crtc_state->mode,
>                                                   dm_new_conn_state,
> @@ -5640,6 +5643,7 @@ static int dm_update_crtc_state(struct 
> amdgpu_display_manager *dm,
>               }
>       }
>   
> +     /* mode_changed flag may get updated above, need to check again */
>       if (!drm_atomic_crtc_needs_modeset(new_crtc_state))
>               goto skip_modeset;
>   
> 

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

Reply via email to