mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Luca Weiss" <luca.weiss@fairphone.com>
To: "Mahadevan P" <mahadevan.p@oss.qualcomm.com>,
	"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>,
	"Krishna Manikandan" <quic_mkrishn@quicinc.com>
Cc: <linux-arm-msm@vger.kernel.org>,
	<dri-devel@lists.freedesktop.org>,
	<freedreno@lists.freedesktop.org>, <linux-kernel@vger.kernel.org>,
	<regressions@lists.linux.dev>
Subject: Re: [PATCH v2] drm/msm/disp/dpu: add merge3d support for sc7280
Date: Fri, 13 Mar 2026 09:33:18 +0100	[thread overview]
Message-ID: <DH1IKLU0YZYU.2SW4WYO7H3H4R@fairphone.com> (raw)
In-Reply-To: <20260101-4k-v2-1-712ae3c1f816@oss.qualcomm.com>

Hi Mahadevan,

On Thu Jan 1, 2026 at 6:04 AM CET, Mahadevan P wrote:
> On SC7280 targets, display modes with a width greater than the
> max_mixer_width (2400) are rejected during mode validation when
> merge3d is disabled. This limitation exists because, without a
> 3D merge block, two layer mixers cannot be combined(non-DSC interface),
> preventing large layers from being split across mixers. As a result,
> higher resolution modes cannot be supported.
>
> Enable merge3d support on SC7280 to allow combining streams from
> two layer mixers into a single non-DSC interface. This capability
> removes the width restriction and enables buffer sizes beyond the
> 2400-pixel limit.
>
> Fixes: 591e34a091d1 ("drm/msm/disp/dpu1: add support for display for SC7280 target")
> Signed-off-by: Mahadevan P <mahadevan.p@oss.qualcomm.com>

This patch is causing display regression on QCM6490 fairphone-fp5.

With this patch in 7.0-rc3 (or 6.18.16) there's just pink noise on the
screen. When reverting this patch everything becomes working again.

See also https://salsa.debian.org/Mobian-team/devices/kernels/qcom-linux/-/issues/41

@Dmitry: Can we revert this for later 7.0-rc, in case it's not fixed
quickly?

Regards
Luca

#regzbot introduced: 2892de3f4f985fa779c330468e2f341fdb762ccd

> ---
> Changes in v2:
>   - Updated commit message for clarity (Dmitry).
> ---
>  drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h | 14 ++++++++++++--
>  1 file changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h
> index 8f978b9c3452..2f8688224f34 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h
> +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h
> @@ -13,6 +13,7 @@ static const struct dpu_caps sc7280_dpu_caps = {
>  	.has_dim_layer = true,
>  	.has_idle_pc = true,
>  	.max_linewidth = 2400,
> +	.has_3d_merge = true,
>  	.pixel_ram_size = DEFAULT_PIXEL_RAM_SIZE,
>  };
>  
> @@ -134,17 +135,24 @@ static const struct dpu_pingpong_cfg sc7280_pp[] = {
>  		.name = "pingpong_2", .id = PINGPONG_2,
>  		.base = 0x6b000, .len = 0,
>  		.sblk = &sc7280_pp_sblk,
> -		.merge_3d = 0,
> +		.merge_3d = MERGE_3D_1,
>  		.intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
>  	}, {
>  		.name = "pingpong_3", .id = PINGPONG_3,
>  		.base = 0x6c000, .len = 0,
>  		.sblk = &sc7280_pp_sblk,
> -		.merge_3d = 0,
> +		.merge_3d = MERGE_3D_1,
>  		.intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
>  	},
>  };
>  
> +static const struct dpu_merge_3d_cfg sc7280_merge_3d[] = {
> +	{
> +		.name = "merge_3d_1", .id = MERGE_3D_1,
> +		.base = 0x4f000, .len = 0x8,
> +	},
> +};
> +
>  /* NOTE: sc7280 only has one DSC hard slice encoder */
>  static const struct dpu_dsc_cfg sc7280_dsc[] = {
>  	{
> @@ -247,6 +255,8 @@ const struct dpu_mdss_cfg dpu_sc7280_cfg = {
>  	.mixer = sc7280_lm,
>  	.pingpong_count = ARRAY_SIZE(sc7280_pp),
>  	.pingpong = sc7280_pp,
> +	.merge_3d_count = ARRAY_SIZE(sc7280_merge_3d),
> +	.merge_3d = sc7280_merge_3d,
>  	.dsc_count = ARRAY_SIZE(sc7280_dsc),
>  	.dsc = sc7280_dsc,
>  	.wb_count = ARRAY_SIZE(sc7280_wb),
>
> ---
> base-commit: efb26a23ed5f5dc3554886ab398f559dcb1de96b
> change-id: 20251231-4k-969b53d2ea4c
>
> Best regards,


  parent reply	other threads:[~2026-03-13  8:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-01  5:04 Mahadevan P
2026-01-02 23:53 ` Dmitry Baryshkov
2026-01-15 21:05 ` Dmitry Baryshkov
2026-03-13  8:33 ` Luca Weiss [this message]
2026-03-13 17:14   ` Dmitry Baryshkov
2026-03-16  9:08     ` Luca Weiss
2026-03-16 19:54       ` Dmitry Baryshkov
2026-03-17  7:47         ` Luca Weiss
2026-03-17 17:45       ` Dmitry Baryshkov
2026-03-18  8:45         ` Luca Weiss
2026-03-18 17:17           ` Dmitry Baryshkov

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=DH1IKLU0YZYU.2SW4WYO7H3H4R@fairphone.com \
    --to=luca.weiss@fairphone.com \
    --cc=abhinav.kumar@linux.dev \
    --cc=airlied@gmail.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=mahadevan.p@oss.qualcomm.com \
    --cc=marijn.suijten@somainline.org \
    --cc=quic_mkrishn@quicinc.com \
    --cc=regressions@lists.linux.dev \
    --cc=robin.clark@oss.qualcomm.com \
    --cc=sean@poorly.run \
    --cc=simona@ffwll.ch \
    /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®