On Wed, Feb 13, 2019 at 05:19:13PM -0800, Jeykumar Sankaran wrote:
> encoder->crtc is not really meaningful for atomic path. Use
> crtc->encoder_mask to identify the crtc attached with
> an encoder.
> 
> Signed-off-by: Jeykumar Sankaran <jsa...@codeaurora.org>
> ---
>  drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c 
> b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
> index 45617b9..0a19124 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
> @@ -961,6 +961,7 @@ static void dpu_encoder_virt_mode_set(struct drm_encoder 
> *drm_enc,
>       struct dpu_kms *dpu_kms;
>       struct list_head *connector_list;
>       struct drm_connector *conn = NULL, *conn_iter;
> +     struct drm_crtc *drm_crtc;
>       struct dpu_rm_hw_iter pp_iter, ctl_iter;
>       struct msm_display_topology topology;
>       struct dpu_hw_ctl *hw_ctl[MAX_CHANNELS_PER_ENC] = { NULL };
> @@ -992,10 +993,14 @@ static void dpu_encoder_virt_mode_set(struct 
> drm_encoder *drm_enc,
>               return;
>       }
>  
> +     drm_for_each_crtc(drm_crtc, drm_enc->dev)
> +             if (drm_crtc->state->encoder_mask & drm_encoder_mask(drm_enc))
> +                     break;

You should check whether you actually found the crtc, or are just using the last
one in the list.

Sean

> +
>       topology = dpu_encoder_get_topology(dpu_enc, dpu_kms, adj_mode);
>  
>       /* Reserve dynamic resources now. Indicating non-AtomicTest phase */
> -     ret = dpu_rm_reserve(&dpu_kms->rm, drm_enc, drm_enc->crtc->state,
> +     ret = dpu_rm_reserve(&dpu_kms->rm, drm_enc, drm_crtc->state,
>                            topology, false);
>       if (ret) {
>               DPU_ERROR_ENC(dpu_enc,
> -- 
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project
> 

-- 
Sean Paul, Software Engineer, Google / Chromium OS
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to