Linux ARM-MSM sub-architecture
 help / color / mirror / Atom feed
From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
To: Jeykumar Sankaran <quic_jeykumar@quicinc.com>,
	Arnaud Vrac <avrac@freebox.fr>, Rob Clark <robdclark@gmail.com>,
	Abhinav Kumar <quic_abhinavk@quicinc.com>,
	Sean Paul <sean@poorly.run>, David Airlie <airlied@gmail.com>,
	Daniel Vetter <daniel@ffwll.ch>
Cc: linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org
Subject: Re: [Freedreno] [PATCH 02/11] drm/msm/dpu: use the actual lm maximum width instead of a hardcoded value
Date: Sat, 20 May 2023 23:49:46 +0300	[thread overview]
Message-ID: <50fc88f9-4304-110c-84e8-15dfdeee062f@linaro.org> (raw)
In-Reply-To: <905b4150-6e15-4172-10cf-19aa0ebf817c@quicinc.com>

On 20/04/2023 20:47, Jeykumar Sankaran wrote:
> 
> 
> On 4/19/2023 3:23 PM, Dmitry Baryshkov wrote:
>> On 19/04/2023 17:41, Arnaud Vrac wrote:
>>> This avoids using two LMs instead of one when the display width is lower
>>> than the maximum supported value. For example on MSM8996/MSM8998, the
>>> actual maxwidth is 2560, so we would use two LMs for 1280x720 or
>>> 1920x1080 resolutions, while one is enough.
>>>
>>> Signed-off-by: Arnaud Vrac <avrac@freebox.fr>
>>
>> While this looks correct (and following what we have in 4.4), later 
>> vendor kernels specify the topology explicitly. Probably we should 
>> check this with the hw guys, because it might be the following case: 
>> even though a single LM can supply the mode, it will spend more power 
>> compared to two LMs.
>>
>>
> Yes. 2 LM split will allow the HW to run in lower mdp core clock. Can 
> you maintain the split_threshold in the hw catalog until per mode 
> topology is available?

I don't think it warrants the trouble, unless we have a real usecase 
when the device is short of LMs.

Arnaud, I'll mark this patch as Rejected for now, unless it fixes an LM 
shortage for your platform.

> 
> Jeykumar S
>>> ---
>>>   drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 10 +++++-----
>>>   1 file changed, 5 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c 
>>> b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
>>> index 1dc5dbe585723..dd2914726c4f6 100644
>>> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
>>> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
>>> @@ -53,8 +53,6 @@
>>>   #define IDLE_SHORT_TIMEOUT    1
>>> -#define MAX_HDISPLAY_SPLIT 1080
>>> -
>>>   /* timeout in frames waiting for frame done */
>>>   #define DPU_ENCODER_FRAME_DONE_TIMEOUT_FRAMES 5
>>> @@ -568,10 +566,12 @@ static struct msm_display_topology 
>>> dpu_encoder_get_topology(
>>>        */
>>>       if (intf_count == 2)
>>>           topology.num_lm = 2;
>>> -    else if (!dpu_kms->catalog->caps->has_3d_merge)
>>> -        topology.num_lm = 1;
>>> +    else if (dpu_kms->catalog->caps->has_3d_merge &&
>>> +         dpu_kms->catalog->mixer_count > 0 &&
>>> +         mode->hdisplay > dpu_kms->catalog->mixer[0].sblk->maxwidth)
>>> +        topology.num_lm = 2;
>>>       else
>>> -        topology.num_lm = (mode->hdisplay > MAX_HDISPLAY_SPLIT) ? 2 
>>> : 1;
>>> +        topology.num_lm = 1;
>>>       if (crtc_state->ctm)
>>>           topology.num_dspp = topology.num_lm;
>>>
>>

-- 
With best wishes
Dmitry


  reply	other threads:[~2023-05-20 20:49 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-19 14:41 [PATCH 00/11] drm/msm/dpu: tweaks for better hardware resources allocation Arnaud Vrac
2023-04-19 14:41 ` [PATCH 01/11] drm/msm/dpu: tweak msm8998 hw catalog values Arnaud Vrac
2023-04-19 22:15   ` Dmitry Baryshkov
2023-04-25 21:33   ` Abhinav Kumar
2023-04-19 14:41 ` [PATCH 02/11] drm/msm/dpu: use the actual lm maximum width instead of a hardcoded value Arnaud Vrac
2023-04-19 22:23   ` Dmitry Baryshkov
2023-04-20 17:47     ` [Freedreno] " Jeykumar Sankaran
2023-05-20 20:49       ` Dmitry Baryshkov [this message]
2023-05-22  9:30         ` Arnaud Vrac
2023-04-19 14:41 ` [PATCH 03/11] drm/msm/dpu: use hsync/vsync polarity set by the encoder Arnaud Vrac
2023-04-19 22:29   ` Dmitry Baryshkov
2023-04-20 18:01   ` [Freedreno] " Jeykumar Sankaran
2023-04-20 18:36     ` Dmitry Baryshkov
2023-04-19 14:41 ` [PATCH 04/11] drm/msm/dpu: allow using lm mixer base stage Arnaud Vrac
2023-04-19 22:43   ` Dmitry Baryshkov
2023-04-20  7:26     ` Arnaud Vrac
2023-04-20  9:53       ` Dmitry Baryshkov
2023-04-19 14:41 ` [PATCH 05/11] drm/msm/dpu: allow using all lm mixer stages Arnaud Vrac
2023-04-19 22:44   ` Dmitry Baryshkov
2023-04-19 14:41 ` [PATCH 06/11] drm/msm/dpu: support cursor sspp hw blocks Arnaud Vrac
2023-04-19 22:57   ` Dmitry Baryshkov
2023-04-19 14:41 ` [PATCH 07/11] drm/msm/dpu: add sspp cursor blocks to msm8998 hw catalog Arnaud Vrac
2023-04-19 23:10   ` Dmitry Baryshkov
2023-04-20  7:06     ` Arnaud Vrac
2023-04-20  8:47       ` Dmitry Baryshkov
2023-04-19 14:41 ` [PATCH 08/11] drm/msm/dpu: fix cursor block register bit offset in " Arnaud Vrac
2023-04-19 23:11   ` Dmitry Baryshkov
2023-04-19 14:41 ` [PATCH 09/11] drm/msm/dpu: set max cursor width to 512x512 Arnaud Vrac
2023-04-19 22:59   ` Dmitry Baryshkov
2023-04-19 14:41 ` [PATCH 10/11] drm/msm/dpu: tweak lm pairings in msm8998 hw catalog Arnaud Vrac
2023-04-19 23:15   ` Dmitry Baryshkov
2023-04-25  1:05   ` Abhinav Kumar
2023-04-19 14:41 ` [PATCH 11/11] drm/msm/dpu: do not use mixer that supports dspp when not required Arnaud Vrac
2023-04-19 23:18   ` Dmitry Baryshkov
2023-04-20  7:08     ` Arnaud Vrac
2023-04-28 20:11 ` (subset) [PATCH 00/11] drm/msm/dpu: tweaks for better hardware resources allocation Abhinav Kumar

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=50fc88f9-4304-110c-84e8-15dfdeee062f@linaro.org \
    --to=dmitry.baryshkov@linaro.org \
    --cc=airlied@gmail.com \
    --cc=avrac@freebox.fr \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=quic_abhinavk@quicinc.com \
    --cc=quic_jeykumar@quicinc.com \
    --cc=robdclark@gmail.com \
    --cc=sean@poorly.run \
    /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: link
Be 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