[PATCH 1/4] drm/msm/dpu: remove DSC feature bit for PINGPONG on MSM8937

2025-02-27 Thread Dmitry Baryshkov
The MSM8937 platform doesn't have DSC blocks nor does have it DSC registers in the PINGPONG block. Drop the DPU_PINGPONG_DSC feature bit from the PINGPONG's feature mask and, as it is the only remaining bit, drop the .features assignment completely. Fixes: c079680bb0fa ("drm/msm/dpu: Add support f

Re: [PATCH v7 13/15] drm/msm/dpu: support SSPP assignment for quad-pipe case

2025-02-27 Thread Dmitry Baryshkov
On Wed, Feb 26, 2025 at 08:31:02PM +0800, Jun Nie wrote: > Currently, SSPPs are assigned to a maximum of two pipes. However, > quad-pipe usage scenarios require four pipes and involve configuring > two stages. In quad-pipe case, the first two pipes share a set of > mixer configurations and enable m

Re: [PATCH v7 12/15] drm/msm/dpu: blend pipes per mixer pairs config

2025-02-27 Thread Dmitry Baryshkov
On Wed, Feb 26, 2025 at 08:31:01PM +0800, Jun Nie wrote: > Currently, only 2 pipes are used at most for a plane. A stage structure > describes the configuration for a mixer pair. So only one stage is needed > for current usage cases. The quad-pipe case will be added in future and 2 > stages are use

[PATCH v2 0/8] drm/msm/dpu: improve CTL handling on DPU >= 5.0 platforms

2025-02-27 Thread Dmitry Baryshkov
Since version 5.0 the DPU got an improved way of handling multi-output configurations. It is now possible to program all pending changes through a single CTL and flush everything at the same time. Implement corresponding changes in the DPU driver. Signed-off-by: Dmitry Baryshkov --- Changes in v

Re: [PATCH 7/7] drm/msm/dpu: remove DPU_CTL_SPLIT_DISPLAY from CTL blocks on DPU >= 5.0

2025-02-27 Thread Dmitry Baryshkov
On Fri, Feb 21, 2025 at 12:37:40AM +0100, Marijn Suijten wrote: > On 2025-02-20 12:26:24, Dmitry Baryshkov wrote: > > Since DPU 5.0 CTL blocks do not require DPU_CTL_SPLIT_DISPLAY, as single > > CTL is used for both interfaces. As both RM and encoder now handle > > active CTLs, drop that feature bi

[PATCH v2 1/8] drm/msm/dpu: don't overwrite CTL_MERGE_3D_ACTIVE register

2025-02-27 Thread Dmitry Baryshkov
In case of complex pipelines (e.g. the forthcoming quad-pipe) the DPU might use more that one MERGE_3D block for a single output. Follow the pattern and extend the CTL_MERGE_3D_ACTIVE active register instead of simply writing new value there. Currently at most one MERGE_3D block is being used, so

[PATCH v2 5/8] drm/msm/dpu: don't select single flush for active CTL blocks

2025-02-27 Thread Dmitry Baryshkov
In case of ACTIVE CTLs, a single CTL is being used for flushing all INTF blocks. Don't skip programming the CTL on those targets. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers

[PATCH v2 7/8] drm/msm/dpu: remove DPU_CTL_SPLIT_DISPLAY from CTL blocks on DPU >= 5.0

2025-02-27 Thread Dmitry Baryshkov
Since DPU 5.0 CTL blocks do not require DPU_CTL_SPLIT_DISPLAY, as single CTL is used for both interfaces. As both RM and encoder now handle active CTLs, drop that feature bit. Reviewed-by: Marijn Suijten Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h

[PATCH v2 8/8] drm/msm/dpu: drop now-unused condition for has_legacy_ctls

2025-02-27 Thread Dmitry Baryshkov
Now as we have dropped the DPU_CTL_SPLIT_DISPLAY from DPU >= 5.0 configuration, drop the rm->has_legacy_ctl condition which short-cutted the check for those platforms. Suggested-by: Marijn Suijten Signed-off-by: Dmitry Baryshkov --- Note, it is imposible to reoder commits in any other sensible

[PATCH v2 3/8] drm/msm/dpu: pass master interface to CTL configuration

2025-02-27 Thread Dmitry Baryshkov
Active controls require setup of the master interface. Pass the selected interface to CTL configuration. Reviewed-by: Marijn Suijten Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c | 2 ++ drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 2 ++ 2 fi

[PATCH v2 6/8] drm/msm/dpu: allocate single CTL for DPU >= 5.0

2025-02-27 Thread Dmitry Baryshkov
Unlike previous generation, since DPU 5.0 it is possible to use just one CTL to handle all INTF and WB blocks for a single output. And one has to use single CTL to support bonded DSI config. Allocate single CTL for these DPU versions. Reviewed-by: Marijn Suijten Signed-off-by: Dmitry Baryshkov -

[PATCH v2 4/8] drm/msm/dpu: use single CTL if it is the only CTL returned by RM

2025-02-27 Thread Dmitry Baryshkov
On DPU >= 5.0 CTL blocks were reworked in order to support using a single CTL for all outputs. In preparation of reworking the RM code to return single CTL make sure that dpu_encoder can cope with that. Reviewed-by: Marijn Suijten Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu

[PATCH v2 2/8] drm/msm/dpu: program master INTF value

2025-02-27 Thread Dmitry Baryshkov
If several interfaces are being handled through a single CTL, a main ('master') INTF needs to be programmed into a separate register. Write corresponding value into that register. Co-developed-by: Marijn Suijten Signed-off-by: Marijn Suijten Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/

[PATCH 4/4] drm/msm/dpu: remove DSC feature bit for PINGPONG on SDM630

2025-02-27 Thread Dmitry Baryshkov
The MSM8937 platform doesn't have DSC blocks nor does have it DSC registers in the PINGPONG block. Drop the DPU_PINGPONG_DSC feature bit from the PINGPONG's feature mask, replacing PINGPONG_SDM845_MASK and PINGPONG_SDM845_TE2_MASK with proper bitmasks. Fixes: 7204df5e7e68 ("drm/msm/dpu: add suppor

[PATCH 0/4] drm/msm/dpu: disable DSC on some of old DPU models

2025-02-27 Thread Dmitry Baryshkov
During one of the chats Abhinav pointed out that in the 1.x generation most of the DPU/MDP5 instances didn't have DSC support. Also SDM630 didn't provide DSC support. Disable DSC on those platforms. Signed-off-by: Dmitry Baryshkov --- Dmitry Baryshkov (4): drm/msm/dpu: remove DSC feature bi

[PATCH 2/4] drm/msm/dpu: remove DSC feature bit for PINGPONG on MSM8917

2025-02-27 Thread Dmitry Baryshkov
The MSM8937 platform doesn't have DSC blocks nor does have it DSC registers in the PINGPONG block. Drop the DPU_PINGPONG_DSC feature bit from the PINGPONG's feature mask and, as it is the only remaining bit, drop the .features assignment completely. Fixes: 62af6e1cb596 ("drm/msm/dpu: Add support f

[PATCH 3/4] drm/msm/dpu: remove DSC feature bit for PINGPONG on MSM8953

2025-02-27 Thread Dmitry Baryshkov
The MSM8937 platform doesn't have DSC blocks nor does have it DSC registers in the PINGPONG block. Drop the DPU_PINGPONG_DSC feature bit from the PINGPONG's feature mask and, as it is the only remaining bit, drop the .features assignment completely. Fixes: 7a6109ce1c2c ("drm/msm/dpu: Add support f

[PATCH] drm/msm: fix a potential memory leak issue in submit_create()

2025-02-27 Thread Haoxiang Li
The memory allocated by msm_fence_alloc() actually is the container of msm_fence_alloc()'s return value. Thus, just free its return value is not enough. Add a helper 'msm_fence_free()' in msm_fence.h/msm_fence.c to do the complete job. Fixes: f94e6a51e17c ("drm/msm: Pre-allocate hw_fence") Cc: sta

Re: [PATCH v2 3/6] drm/msm/a6xx: Add support for Adreno 623

2025-02-27 Thread Akhil P Oommen
On 2/28/2025 1:59 AM, Konrad Dybcio wrote: > On 27.02.2025 9:07 PM, Akhil P Oommen wrote: >> From: Jie Zhang >> >> Add support for Adreno 623 GPU found in QCS8300 chipsets. >> >> Signed-off-by: Jie Zhang >> Signed-off-by: Akhil P Oommen >> --- >> drivers/gpu/drm/msm/adreno/a6xx_catalog.c | 29

Re: [PATCH v2 3/6] drm/msm/a6xx: Add support for Adreno 623

2025-02-27 Thread Dmitry Baryshkov
On Fri, Feb 28, 2025 at 01:37:51AM +0530, Akhil P Oommen wrote: > From: Jie Zhang > > Add support for Adreno 623 GPU found in QCS8300 chipsets. > > Signed-off-by: Jie Zhang > Signed-off-by: Akhil P Oommen > --- > drivers/gpu/drm/msm/adreno/a6xx_catalog.c | 29 >

Re: [PATCH v2 3/6] drm/msm/a6xx: Add support for Adreno 623

2025-02-27 Thread Konrad Dybcio
On 27.02.2025 10:06 PM, Akhil P Oommen wrote: > On 2/28/2025 1:59 AM, Konrad Dybcio wrote: >> On 27.02.2025 9:07 PM, Akhil P Oommen wrote: >>> From: Jie Zhang >>> >>> Add support for Adreno 623 GPU found in QCS8300 chipsets. >>> >>> Signed-off-by: Jie Zhang >>> Signed-off-by: Akhil P Oommen >>>

Re: [PATCH v2 3/6] drm/msm/a6xx: Add support for Adreno 623

2025-02-27 Thread Konrad Dybcio
On 27.02.2025 9:07 PM, Akhil P Oommen wrote: > From: Jie Zhang > > Add support for Adreno 623 GPU found in QCS8300 chipsets. > > Signed-off-by: Jie Zhang > Signed-off-by: Akhil P Oommen > --- > drivers/gpu/drm/msm/adreno/a6xx_catalog.c | 29 > + > drivers/gpu/dr

[PATCH v2 2/6] drm/msm/a6xx: Fix gpucc register block for A621

2025-02-27 Thread Akhil P Oommen
From: Jie Zhang Adreno 621 has a different memory map for GPUCC block. So update a6xx_gpu_state code to dump the correct set of gpucc registers. Signed-off-by: Jie Zhang Signed-off-by: Akhil P Oommen --- drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c | 9 +++-- drivers/gpu/drm/msm/adreno/a6

[PATCH v2 3/6] drm/msm/a6xx: Add support for Adreno 623

2025-02-27 Thread Akhil P Oommen
From: Jie Zhang Add support for Adreno 623 GPU found in QCS8300 chipsets. Signed-off-by: Jie Zhang Signed-off-by: Akhil P Oommen --- drivers/gpu/drm/msm/adreno/a6xx_catalog.c | 29 + drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 8 drivers/gpu/drm/msm/a

[PATCH v2 6/6] arm64: dts: qcom: qcs8300-ride: Enable Adreno 623 GPU

2025-02-27 Thread Akhil P Oommen
From: Jie Zhang Enable GPU for qcs8300-ride platform and provide path for zap shader. Signed-off-by: Jie Zhang Signed-off-by: Akhil P Oommen Reviewed-by: Dmitry Baryshkov --- arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 8 1 file changed, 8 insertions(+) diff --git a/arch/arm64/boot

[PATCH v2 5/6] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes

2025-02-27 Thread Akhil P Oommen
From: Jie Zhang Add gpu and gmu nodes for qcs8300 chipset. Signed-off-by: Jie Zhang Signed-off-by: Akhil P Oommen --- arch/arm64/boot/dts/qcom/qcs8300.dtsi | 93 +++ 1 file changed, 93 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/ar

[PATCH v2 4/6] dt-bindings: display/msm/gmu: Add Adreno 623 GMU

2025-02-27 Thread Akhil P Oommen
From: Jie Zhang Document Adreno 623 GMU in the dt-binding specification. Signed-off-by: Jie Zhang Signed-off-by: Akhil P Oommen Reviewed-by: Krzysztof Kozlowski --- Documentation/devicetree/bindings/display/msm/gmu.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/device

[PATCH v2 1/6] drm/msm/a6xx: Split out gpucc register block

2025-02-27 Thread Akhil P Oommen
From: Jie Zhang Some GPUs have different memory map for GPUCC block. So split out the gpucc range from a6xx_gmu_cx_registers to a separate block to accommodate those GPUs. Signed-off-by: Jie Zhang Signed-off-by: Akhil P Oommen --- drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c | 8 +--- driv

[PATCH v2 0/6] Support for Adreno 623 GPU

2025-02-27 Thread Akhil P Oommen
This series adds support for A623 GPU found in QCS8300 chipsets. This GPU IP is very similar to A621 GPU, except for the UBWC configuration and the GMU firmware. Both DT patches are for Bjorn and rest of the patches for Rob Clark to pick up. --- Changes in v2: - Fix hwcg config (Konrad) - Split g

Re: [PATCH v2 1/2] drm/msm/dp: Disable wide bus support for SDM845

2025-02-27 Thread James A. MacInnes
On Thu, 13 Feb 2025 01:58:06 +0200 Dmitry Baryshkov wrote: > On Thu, Feb 13, 2025 at 12:41:02AM +0100, Marijn Suijten wrote: > > On 2025-02-12 15:03:46, James A. MacInnes wrote: > > > SDM845 DPU hardware is rev 4.0.0 per hardware documents. > > > Original patch to enable wide_bus operation did

Re: [PATCH v7 13/15] drm/msm/dpu: support SSPP assignment for quad-pipe case

2025-02-27 Thread Jessica Zhang
On 2/26/2025 6:28 PM, Jun Nie wrote: Jessica Zhang 于2025年2月27日周四 02:10写道: On 2/26/2025 4:31 AM, Jun Nie wrote: Currently, SSPPs are assigned to a maximum of two pipes. However, quad-pipe usage scenarios require four pipes and involve configuring two stages. In quad-pipe case, the first t

Re: [PATCH v6 03/14] drm/msm/dpu: switch RM to use crtc_id rather than enc_id for allocation

2025-02-27 Thread Dmitry Baryshkov
On Fri, Feb 14, 2025 at 04:14:26PM -0800, Jessica Zhang wrote: > From: Dmitry Baryshkov > > Up to now the driver has been using encoder to allocate hardware > resources. Switch it to use CRTC id in preparation for the next step. > > Reviewed-by: Abhinav Kumar > Signed-off-by: Dmitry Baryshkov

Re: (subset) [PATCH v2 0/4] Add and enable the panel

2025-02-27 Thread Neil Armstrong
Hi, On Tue, 18 Feb 2025 01:24:27 +0300, Danila Tikhonov wrote: > This patch series adds support for the Visionox RM692E5 panel, which is > used on the Nothing Phone (1) and then adds it to the DTS. > > Before integrating the panel into the DTS, we update the DSI code to > allow bits-per-component

Re: [PATCH v2 2/4] drm/panel: Add Visionox RM692E5 panel driver

2025-02-27 Thread neil . armstrong
On 17/02/2025 23:24, Danila Tikhonov wrote: From: Eugene Lepshy Add the driver for Visionox RM692E5 panel support found in Nothing Phone (1). Signed-off-by: Eugene Lepshy Co-developed-by: Danila Tikhonov Signed-off-by: Danila Tikhonov --- drivers/gpu/drm/panel/Kconfig | 1