LKML Archive on lore.kernel.org help / color / mirror / Atom feed
From: abhinavk@codeaurora.org To: Vinod Koul <vkoul@kernel.org> Cc: Rob Clark <robdclark@gmail.com>, Jonathan Marek <jonathan@marek.ca>, Jeffrey Hugo <jeffrey.l.hugo@gmail.com>, David Airlie <airlied@linux.ie>, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson <bjorn.andersson@linaro.org>, dri-devel@lists.freedesktop.org, Daniel Vetter <daniel@ffwll.ch>, Dmitry Baryshkov <dmitry.baryshkov@linaro.org>, freedreno@lists.freedesktop.org, Sumit Semwal <sumit.semwal@linaro.org> Subject: Re: [Freedreno] [PATCH 09/11] drm/msm/disp/dpu1: Add support for DSC in topology Date: Mon, 02 Aug 2021 18:05:50 -0700 [thread overview] Message-ID: <3fd739ca72c5704a3ca15a20492c5eac@codeaurora.org> (raw) In-Reply-To: <20210715065203.709914-10-vkoul@kernel.org> On 2021-07-14 23:52, Vinod Koul wrote: > For DSC to work we typically need a 2,2,1 configuration. This should > suffice for resolutions upto 4k. For more resolutions like 8k this > won't > work. > > The topology information is provided by DTS so we try to deduce the > topology required for DSC. > Furthermore, we can use 1 DSC encoder in lesser resolutions, but that > is > not power efficient according to Abhinav, it is better to use 2 mixers > as that will split width/2 and is proven to be power efficient. I think now that we have added the technical reason of why it is better to use 2-2-1 ( using 2 LMs is better than one as it will half layer width), we can drop my name from the commit text as it holds less value than the actual reason itself :) You can still keep my signed-off and co-developed by tag > > Also, the panel has been tested only with 2,2,1 configuration, so for > now we blindly create 2,2,1 topology when DSC is enabled > > Co-developed-by: Abhinav Kumar <abhinavk@codeaurora.org> > Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org> > Signed-off-by: Vinod Koul <vkoul@kernel.org> > --- > Changes since RFC: > - Add more details in changelog > > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c > b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c > index 41140b781e66..8f0a8bd9c8ff 100644 > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c > @@ -573,6 +573,8 @@ static struct msm_display_topology > dpu_encoder_get_topology( > struct drm_display_mode *mode) > { > struct msm_display_topology topology = {0}; > + struct drm_encoder *drm_enc; > + struct msm_drm_private *priv; > int i, intf_count = 0; > > for (i = 0; i < MAX_PHYS_ENCODERS_PER_VIRTUAL; i++) > @@ -607,8 +609,22 @@ static struct msm_display_topology > dpu_encoder_get_topology( > topology.num_enc = 0; > topology.num_intf = intf_count; > > + drm_enc = &dpu_enc->base; > + priv = drm_enc->dev->dev_private; > + if (priv && priv->dsc) { if dsc is moved to the encoder, this will need to be changed too > + /* In case of Display Stream Compression DSC, we would use > + * 2 encoders, 2 line mixers and 1 interface > + * this is power optimal and can drive upto (including) 4k > + * screens > + */ > + topology.num_enc = 2; > + topology.num_intf = 1; > + topology.num_lm = 2; > + } > + > return topology; > } > + > static int dpu_encoder_virt_atomic_check( > struct drm_encoder *drm_enc, > struct drm_crtc_state *crtc_state,
next prev parent reply other threads:[~2021-08-03 1:06 UTC|newest] Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-07-15 6:51 [PATCH 00/11] drm/msm: Add Display Stream Compression Support Vinod Koul 2021-07-15 6:51 ` [PATCH 01/11] drm/msm/dsi: add support for dsc data Vinod Koul 2021-08-02 22:55 ` [Freedreno] " abhinavk 2021-10-06 5:24 ` Vinod Koul 2021-07-15 6:51 ` [PATCH 02/11] drm/msm/disp/dpu1: Add support for DSC Vinod Koul 2021-07-19 8:28 ` kernel test robot 2021-08-02 23:03 ` [Freedreno] " abhinavk 2021-10-06 5:36 ` Vinod Koul 2021-07-15 6:51 ` [PATCH 03/11] drm/msm/disp/dpu1: Add support for DSC in pingpong block Vinod Koul 2021-08-02 23:07 ` [Freedreno] " abhinavk 2021-07-15 6:51 ` [PATCH 04/11] drm/msm/disp/dpu1: Add DSC support in RM Vinod Koul 2021-07-29 20:23 ` Dmitry Baryshkov 2021-10-06 10:26 ` Vinod Koul 2021-08-02 23:24 ` [Freedreno] " abhinavk 2021-10-06 10:27 ` Vinod Koul 2021-07-15 6:51 ` [PATCH 05/11] drm/msm/disp/dpu1: Add DSC for SDM845 to hw_catalog Vinod Koul 2021-07-29 20:25 ` Dmitry Baryshkov 2021-10-06 10:50 ` Vinod Koul 2021-08-02 23:29 ` [Freedreno] " abhinavk 2021-10-06 10:52 ` Vinod Koul 2021-07-15 6:51 ` [PATCH 06/11] drm/msm/disp/dpu1: Add DSC support in hw_ctl Vinod Koul 2021-07-29 22:15 ` Dmitry Baryshkov 2021-10-06 12:21 ` Vinod Koul 2021-08-03 0:00 ` [Freedreno] " abhinavk 2021-10-06 12:21 ` Vinod Koul 2021-07-15 6:51 ` [PATCH 07/11] drm/msm/disp/dpu1: Don't use DSC with mode_3d Vinod Koul 2021-08-03 0:24 ` [Freedreno] " abhinavk 2021-10-06 12:22 ` Vinod Koul 2021-07-15 6:52 ` [PATCH 08/11] drm/msm/disp/dpu1: Add support for DSC in encoder Vinod Koul 2021-07-19 8:54 ` kernel test robot 2021-07-29 20:54 ` Dmitry Baryshkov 2021-10-06 12:43 ` Vinod Koul 2021-08-03 0:57 ` [Freedreno] " abhinavk 2021-10-06 12:47 ` Vinod Koul 2021-07-15 6:52 ` [PATCH 09/11] drm/msm/disp/dpu1: Add support for DSC in topology Vinod Koul 2021-08-03 1:05 ` abhinavk [this message] 2021-07-15 6:52 ` [PATCH 10/11] drm/msm/dsi: Add support for DSC configuration Vinod Koul 2021-07-29 22:10 ` Dmitry Baryshkov 2021-08-03 1:16 ` [Freedreno] " abhinavk 2021-07-15 6:52 ` [PATCH 11/11] drm/msm/dsi: Pass DSC params to drm_panel Vinod Koul 2021-08-03 1:22 ` [Freedreno] " abhinavk
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=3fd739ca72c5704a3ca15a20492c5eac@codeaurora.org \ --to=abhinavk@codeaurora.org \ --cc=airlied@linux.ie \ --cc=bjorn.andersson@linaro.org \ --cc=daniel@ffwll.ch \ --cc=dmitry.baryshkov@linaro.org \ --cc=dri-devel@lists.freedesktop.org \ --cc=freedreno@lists.freedesktop.org \ --cc=jeffrey.l.hugo@gmail.com \ --cc=jonathan@marek.ca \ --cc=linux-arm-msm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=robdclark@gmail.com \ --cc=sumit.semwal@linaro.org \ --cc=vkoul@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).