From: Mahadevan P <mahadevan.p@oss.qualcomm.com>
To: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Cc: Rob Clark <robin.clark@oss.qualcomm.com>,
Dmitry Baryshkov <lumag@kernel.org>,
Abhinav Kumar <abhinav.kumar@linux.dev>,
Jessica Zhang <jesszhan0024@gmail.com>,
Sean Paul <sean@poorly.run>,
Marijn Suijten <marijn.suijten@somainline.org>,
David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>,
Xilin Wu <sophon@radxa.com>,
linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org,
freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4 0/6] drm/msm/dpu: rework layer mixer allocation and mode limits
Date: Tue, 13 Oct 2026 13:03:54 +0530 [thread overview]
Message-ID: <0752c7fd-4746-4260-bc24-3e8785bc936f@oss.qualcomm.com> (raw)
In-Reply-To: <ahg4xrildtnicph5ecwknrxqwkct3odcjkfnsc6ehympy6y5mz@ddwmentwnuth>
On 10/12/2026 5:35 PM, Dmitry Baryshkov wrote:
> On Thu, Oct 08, 2026 at 10:53:46PM +0530, Mahadevan P wrote:
>> Currently, the DPU driver bases LM reservation off of the maximum
>> supported width for the layer mixer and an arbitrary MAX_HDISPLAY_SPLIT.
>> However, these limits are not hardware limits meaning that a single LM
>> can support higher resolutions.
>>
>> Switch to basing LM reservation off of PINGPONG and DSC encoder hardware
>> limits.
>>
>> This revision also adds clock-based mixer selection and a source-pipe
>> width guard for mixers without source split.
>>
>> Assisted-by: LLM
>> Signed-off-by: Mahadevan P <mahadevan.p@oss.qualcomm.com>
>> ---
>> Changes in v4:
>> - Rebased on msm-next, resolving conflicts.
>> - Added clock-based mixer selection and reused the helper in mode
>> validation.
>> - Added a source-pipe width guard for mixers without source split.
>> - Extended the catalog cleanup to newer platforms.
> What was the issue that caused display breakage on the CRD as reported
> by Xilin Wu? How did you fix it?
The v3 change allowed this mode to use one LM because its width fits
within the PINGPONG limit, without accounting for LM throughput. For the
reported 3840×2160@120 timing, a single LM requires 1036.8 MHz before
margin, exceeding the reported 600 MHz MDP clock. v4 adds clock-based LM
selection, retaining two LMs for this mode and addressing the allocation
issue.
The separate clock-validation requirement remains: the dual-pipe rate is
1188 / 2 = 594 MHz, increasing to 623.7 MHz with the 5% inefficiency
margin specified by the HPG. Xilin’s working test bypassed that check.
At 600 MHz, there is only about 1% headroom above 594 MHz, so success in
that configuration does not guarantee reliable operation across other
workloads, where underruns may still occur. We therefore cannot remove
the hardware programming guide prescribed 5% margin based on this test
alone.
Thanks,
Mahadevan
>
>> - Link to v3: https://lore.kernel.org/r/20260112-max-mixer-width-v3-0-f98063ea21f5@oss.qualcomm.com
>>
prev parent reply other threads:[~2026-10-13 7:34 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-08 17:23 Mahadevan P
2026-10-08 17:23 ` [PATCH v4 1/6] drm/msm/dpu: split modes a single layer mixer cannot clock Mahadevan P
2026-10-08 17:23 ` [PATCH v4 2/6] drm/msm/dpu: do not assume a merged datapath when validating mode clock Mahadevan P
2026-10-12 12:09 ` Dmitry Baryshkov
2026-10-12 18:13 ` Mahadevan P
2026-10-08 17:23 ` [PATCH v4 3/6] drm/msm/dpu: check mode against PINGPONG or DSC max width Mahadevan P
2026-10-12 12:14 ` Dmitry Baryshkov
2026-10-12 18:38 ` Mahadevan P
2026-10-08 17:23 ` [PATCH v4 4/6] drm/msm/dpu: filter writeback modes using writeback maxlinewidth Mahadevan P
2026-10-12 12:15 ` Dmitry Baryshkov
2026-10-08 17:23 ` [PATCH v4 5/6] drm/msm/dpu: remove max_mixer_width from catalog Mahadevan P
2026-10-08 17:23 ` [PATCH v4 6/6] drm/msm/dpu: limit the mode width to a pipe if the LM has no source split Mahadevan P
2026-10-12 12:21 ` Dmitry Baryshkov
2026-10-10 19:52 ` [PATCH v4 0/6] drm/msm/dpu: rework layer mixer allocation and mode limits Mahadevan P
2026-10-12 12:05 ` Dmitry Baryshkov
2026-10-13 7:33 ` Mahadevan P [this message]
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=0752c7fd-4746-4260-bc24-3e8785bc936f@oss.qualcomm.com \
--to=mahadevan.p@oss.qualcomm.com \
--cc=abhinav.kumar@linux.dev \
--cc=airlied@gmail.com \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=freedreno@lists.freedesktop.org \
--cc=jesszhan0024@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lumag@kernel.org \
--cc=marijn.suijten@somainline.org \
--cc=robin.clark@oss.qualcomm.com \
--cc=sean@poorly.run \
--cc=simona@ffwll.ch \
--cc=sophon@radxa.com \
/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
all inboxes | Powered by JetHome®