On 2023-05-23 00:45:22, Dmitry Baryshkov wrote:
> Using BIT(DPU_INTF_TE) in INTF_SC7180_MASK (and by extension in
> INTF_SC7280_MASK) results in this bit (and corrsponding operations)
> being enabled for all interfaces, even the ones which do not have TE
> block. Move this bit setting to INTF_DSI_TE(), so that it is only
> enabled for those INTF blocks which have TE support.
> 
> Fixes: 152c1d430992 ("drm/msm/dpu: Add TEAR-READ-pointer interrupt to INTF 
> block")
> Reviewed-by: Neil Armstrong <neil.armstr...@linaro.org>
> Signed-off-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>
> ---
>  drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c 
> b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
> index 1dee5ba2b312..162141cb5c83 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
> @@ -101,7 +101,6 @@
>  
>  #define INTF_SC7180_MASK \
>       (BIT(DPU_INTF_INPUT_CTRL) | \
> -      BIT(DPU_INTF_TE) | \
>        BIT(DPU_INTF_STATUS_SUPPORTED) | \
>        BIT(DPU_DATA_HCTL_EN))
>  
> @@ -544,7 +543,7 @@ static const struct dpu_pingpong_sub_blks sc7280_pp_sblk 
> = {
>       {\
>       .name = _name, .id = _id, \
>       .base = _base, .len = _len, \
> -     .features = _features, \
> +     .features = _features | BIT(DPU_INTF_TE), \

We'll have to be very careful when applying this.  I already had a hard
time reviewing because of missing the #define context but assumed it
would apply to INTF_BLK_DSI_TE()... but when actually applying it
locally this ended up in INTF_BLK() and breaking everything.

- Marijn

>       .type = _type, \
>       .controller_id = _ctrl_id, \
>       .prog_fetch_lines_worst_case = _progfetch, \
> -- 
> 2.39.2
> 

Reply via email to