[PATCH v3 05/23] drm/msm/dpu: move resource allocation to CRTC
Dmitry Baryshkov
dmitry.baryshkov at linaro.org
Thu Oct 31 19:53:14 UTC 2024
On Thu, Oct 31, 2024 at 12:37:03PM -0700, Abhinav Kumar wrote:
>
>
> On 10/16/2024 6:21 PM, Jessica Zhang wrote:
> > From: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
> >
> > All resource allocation is centered around the LMs. Then other blocks
> > (except DSCs) are allocated basing on the LMs that was selected, and LM
> > powers up the CRTC rather than the encoder.
> >
> > Moreover if at some point the driver supports encoder cloning,
> > allocating resources from the encoder will be incorrect, as all clones
> > will have different encoder IDs, while LMs are to be shared by these
> > encoders.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
> > [quic_abhinavk at quicinc.com: Refactored resource allocation for CDM]
> > Signed-off-by: Abhinav Kumar <quic_abhinavk at quicinc.com>
> > [quic_jesszhan at quicinc.com: Changed to grabbing exising global state]
> > Signed-off-by: Jessica Zhang <quic_jesszhan at quicinc.com>
> > ---
> > drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 86 ++++++++++++
> > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 201 +++++++++++-----------------
> > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h | 19 +++
> > 3 files changed, 183 insertions(+), 123 deletions(-)
> >
>
> <Snip>
>
> > - /* See dpu_encoder_get_topology, we only support 2:2:1 topology */
> > + /* We only support 2 DSC mode (with 2 LM and 1 INTF) */
> > if (dpu_enc->dsc)
> > - num_dsc = 2;
> > + topology->num_dsc += 2;
> > - return (num_dsc > 0) && (num_dsc > intf_count);
> > -}
>
> I dont recall the context of replacing num_dsc = 2 with num_dsc += 2
> and its not documented.
>
> <Snip>
>
> > + /* We only support 2 DSC mode (with 2 LM and 1 INTF) */
> > + if (dpu_enc->dsc)
> > + num_dsc += 2;
> > - return topology;
> > + return (num_dsc > 0) && (num_dsc > num_intf);
> > }
>
> Same here
>
> This should not break anything with current code. We could land it the way
> it is as this was the version which was last tested and post a follow up if
> this was not right. Something to be documented though, hope this note serves
> that purpose. Rest of the change LGTM,
As this is supposed to be a refactor, I'll land it as num_dsc = 2 and
let Jessica fix it in the followup patches. I think it's better this
way.
>
> Reviewed-by: Abhinav Kumar <quic_abhinavk at quicinc.com>
--
With best wishes
Dmitry
More information about the Freedreno
mailing list