[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <33b25qy73byvz35djhduq4r4kksqtvels2fty6ikxkawox33u5@udv6j6buxnj2>
Date: Thu, 31 Oct 2024 21:53:14 +0200
From: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
To: Abhinav Kumar <quic_abhinavk@...cinc.com>
Cc: Jessica Zhang <quic_jesszhan@...cinc.com>,
Rob Clark <robdclark@...il.com>, Sean Paul <sean@...rly.run>,
Marijn Suijten <marijn.suijten@...ainline.org>, David Airlie <airlied@...il.com>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>, Maxime Ripard <mripard@...nel.org>,
Thomas Zimmermann <tzimmermann@...e.de>, Simona Vetter <simona@...ll.ch>,
Simona Vetter <simona.vetter@...ll.ch>, quic_ebharadw@...cinc.com, linux-arm-msm@...r.kernel.org,
dri-devel@...ts.freedesktop.org, freedreno@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
Rob Clark <robdclark@...omium.org>, Ville Syrjälä <ville.syrjala@...ux.intel.com>
Subject: Re: [PATCH v3 05/23] drm/msm/dpu: move resource allocation to CRTC
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@...aro.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@...aro.org>
> > [quic_abhinavk@...cinc.com: Refactored resource allocation for CDM]
> > Signed-off-by: Abhinav Kumar <quic_abhinavk@...cinc.com>
> > [quic_jesszhan@...cinc.com: Changed to grabbing exising global state]
> > Signed-off-by: Jessica Zhang <quic_jesszhan@...cinc.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@...cinc.com>
--
With best wishes
Dmitry
Powered by blists - more mailing lists