[PATCH v3 5/5] arm64: dts: qcom: sa8775p: add display dt nodes for MDSS0 and DPU

2024-09-30 Thread Mahadevan via B4 Relay
From: Mahadevan Add devicetree changes to enable MDSS0 display-subsystem its display-controller(DPU) for Qualcomm SA8775P platform. Signed-off-by: Mahadevan --- arch/arm64/boot/dts/qcom/sa8775p.dtsi | 89 +++ 1 file changed, 89 insertions(+) diff --git a/arch/a

[PATCH v3 0/5] Display enablement changes for Qualcomm SA8775P platform

2024-09-30 Thread Mahadevan via B4 Relay
anged, 951 insertions(+) --- base-commit: e390603cfa79c860ed35e073f5fe77805b067a8e change-id: 20240930-patchv3_1-600cbc1549e8 Best regards, -- Mahadevan

[PATCH v3 3/5] drm/msm: mdss: Add SA8775P support

2024-09-30 Thread Mahadevan via B4 Relay
From: Mahadevan Add Mobile Display Subsystem (MDSS) support for the SA8775P platform. Signed-off-by: Mahadevan --- drivers/gpu/drm/msm/msm_mdss.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c index faa88fd6eb4d

[PATCH v3 2/5] dt-bindings: display/msm: Document the DPU for SA8775P

2024-09-30 Thread Mahadevan via B4 Relay
From: Mahadevan Document the DPU for Qualcomm SA8775P platform. Signed-off-by: Mahadevan --- .../bindings/display/msm/qcom,sa8775p-dpu.yaml | 122 + 1 file changed, 122 insertions(+) diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sa8775p-dpu.yaml b/D

[PATCH v3 4/5] drm/msm/dpu: Add SA8775P support

2024-09-30 Thread Mahadevan via B4 Relay
From: Mahadevan Add definitions for the display hardware used on the Qualcomm SA8775P platform. Reviewed-by: Dmitry Baryshkov Signed-off-by: Mahadevan --- .../drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h| 485 + drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 1 +

[PATCH v3 1/5] dt-bindings: display/msm: Document MDSS on SA8775P

2024-09-30 Thread Mahadevan via B4 Relay
From: Mahadevan Document the MDSS hardware found on the Qualcomm SA8775P platform. Signed-off-by: Mahadevan --- .../bindings/display/msm/qcom,sa8775p-mdss.yaml| 241 + 1 file changed, 241 insertions(+) diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sa

Re: [PATCH v6 11/11] Documentation: document adreno preemption

2024-09-30 Thread Bagas Sanjaya
On Thu, Sep 26, 2024 at 11:16:53PM +0200, Antonino Maniscalco wrote: > +.. SPDX-License-Identifier: GPL-2.0 > + > +:orphan: Why don't this be added to toctree in Documentation/gpu/index.rst? > + > += > +MSM Preemtion > += s/Preemtion/Preemption/ > +This mechanism can be

Re: [PATCH v2 16/22] drm/msm/dpu: Configure CWB in writeback encoder

2024-09-30 Thread Jessica Zhang
On 9/30/2024 7:17 AM, neil.armstr...@linaro.org wrote: On 25/09/2024 00:59, Jessica Zhang wrote: Cache the CWB block mask in the DPU virtual encoder and configure CWB according to the CWB block mask within the writeback phys encoder Signed-off-by: Jessica Zhang ---   drivers/gpu/drm/msm/dis

[PATCH v2 0/4] Add MSM8996/MSM8953/MSM8937/MSM8917 dpu catalog

2024-09-30 Thread Barnabás Czémán
This patch series add dpu support for MSM8996/MSM8953/MSM8937/MSM8917 SoCs. This parch series was tested on many devices: - Xiaomi Redmi 5A (msm8917, video panel) - Xiaomi Redmi Note 5A (msm8917, video panel) - Xiaomi Redmi Note 5A Prime (msm8940, video panel) - Motorola G5S (msm8937, video panel

[PATCH v2 4/4] drm/msm/dpu: Add support for MSM8917

2024-09-30 Thread Barnabás Czémán
From: Dmitry Baryshkov Add support for MSM8917, which has MDP5 v1.15. It looks like trimmed down version of MSM8937. Even fewer PP, LM and no DSI1. Signed-off-by: Dmitry Baryshkov [Remove intr_start from CTLs config, reword the commit] Signed-off-by: Barnabás Czémán --- .../drm/msm/disp/dpu1/

[PATCH v2 3/4] drm/msm/dpu: Add support for MSM8937

2024-09-30 Thread Barnabás Czémán
From: Dmitry Baryshkov Add support for MSM8937, which has MDP5 v1.14. It looks like trimmed down version of MSM8996. Less SSPP, LM and PP blocks. No DSC, etc. Signed-off-by: Dmitry Baryshkov [Remove intr_start from CTLs config, reword the commit] Signed-off-by: Barnabás Czémán --- .../drm/msm

[PATCH v2 1/4] drm/msm/dpu: Add support for MSM8996

2024-09-30 Thread Barnabás Czémán
From: Konrad Dybcio Add support for MSM8996, which - fun fact - was the SoC that this driver (or rather SDE, its downstream origin) was meant for and first tested on. It has some hardware that differs from the modern SoCs, so not a lot of current structs could have been reused. It's also seeming

[PATCH v2 2/4] drm/msm/dpu: Add support for MSM8953

2024-09-30 Thread Barnabás Czémán
From: Dmitry Baryshkov Add support for MSM8953, which has MDP5 v1.16. It looks like trimmed down version of MSM8996. Less SSPP, LM and PP blocks. No DSC, etc. Signed-off-by: Dmitry Baryshkov [Remove intr_start from CTLs config, reword the commit] Signed-off-by: Barnabás Czémán --- .../drm/msm

Re: [PATCH v2 4/5] drm/msm/dpu: Add SA8775P support

2024-09-30 Thread Mahadevan P
On 9/26/2024 6:39 PM, Dmitry Baryshkov wrote: On Thu, Sep 26, 2024 at 04:31:36PM GMT, Mahadevan wrote: Add definitions for the display hardware used on the Qualcomm SA8775P platform. Signed-off-by: Mahadevan --- Reviewed-by: Dmitry Baryshkov Minor nit below. [v2] - Reorder compatible st

Re: [PATCH v2 16/22] drm/msm/dpu: Configure CWB in writeback encoder

2024-09-30 Thread neil . armstrong
On 25/09/2024 00:59, Jessica Zhang wrote: Cache the CWB block mask in the DPU virtual encoder and configure CWB according to the CWB block mask within the writeback phys encoder Signed-off-by: Jessica Zhang --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c| 83 +- d

[PATCH v7 12/12] Documentation: document adreno preemption

2024-09-30 Thread Antonino Maniscalco
Add documentation about the preemption feature supported by the msm driver. Signed-off-by: Antonino Maniscalco --- Documentation/gpu/msm-preemption.rst | 99 1 file changed, 99 insertions(+) diff --git a/Documentation/gpu/msm-preemption.rst b/Documentation/

[PATCH v7 11/12] drm/msm/a6xx: Enable preemption for a750

2024-09-30 Thread Antonino Maniscalco
Initialize with 4 rings to enable preemption. For now only on a750 as other targets require testing. Add the "preemption_enabled" module parameter to override this for other a7xx targets. Tested-by: Rob Clark Tested-by: Neil Armstrong # on SM8650-QRD Tested-by: Neil Armstrong # on SM8550-QRD

[PATCH v7 10/12] drm/msm/a6xx: Add a flag to allow preemption to submitqueue_create

2024-09-30 Thread Antonino Maniscalco
Some userspace changes are necessary so add a flag for userspace to advertise support for preemption when creating the submitqueue. When this flag is not set preemption will not be allowed in the middle of the submitted IBs therefore mantaining compatibility with older userspace. The flag is reje

[PATCH v7 09/12] drm/msm/a6xx: Add traces for preemption

2024-09-30 Thread Antonino Maniscalco
Add trace points corresponding to preemption being triggered and being completed for latency measurement purposes. Reviewed-by: Akhil P Oommen Tested-by: Rob Clark Tested-by: Neil Armstrong # on SM8650-QRD Tested-by: Neil Armstrong # on SM8550-QRD Tested-by: Neil Armstrong # on SM8450-HDK Sig

[PATCH v7 07/12] drm/msm/a6xx: Sync relevant adreno_pm4.xml changes

2024-09-30 Thread Antonino Maniscalco
In mesa CP_SET_CTXSWITCH_IB is renamed to CP_SET_AMBLE and some other names are changed to match KGSL. Import those changes. The changes have not been merged yet in mesa but are necessary for this series. Tested-by: Rob Clark Tested-by: Neil Armstrong # on SM8650-QRD Tested-by: Neil Armstrong

[PATCH v7 08/12] drm/msm/a6xx: Use posamble to reset counters on preemption

2024-09-30 Thread Antonino Maniscalco
Use the postamble to reset perf counters when switching between rings, except when sysprof is enabled, analogously to how they are reset between submissions when switching pagetables. Reviewed-by: Akhil P Oommen Tested-by: Rob Clark Tested-by: Neil Armstrong # on SM8650-QRD Tested-by: Neil Arms

[PATCH v7 06/12] drm/msm/a6xx: Implement preemption for a7xx targets

2024-09-30 Thread Antonino Maniscalco
This patch implements preemption feature for A6xx targets, this allows the GPU to switch to a higher priority ringbuffer if one is ready. A6XX hardware as such supports multiple levels of preemption granularities, ranging from coarse grained(ringbuffer level) to a more fine grained such as draw-cal

[PATCH v7 05/12] drm/msm/a6xx: Add a pwrup_list field to a6xx_info

2024-09-30 Thread Antonino Maniscalco
Add a field to contain the pwup_reglist needed for preemption. Signed-off-by: Antonino Maniscalco --- drivers/gpu/drm/msm/adreno/a6xx_catalog.c | 26 ++ drivers/gpu/drm/msm/adreno/a6xx_gpu.h | 2 ++ drivers/gpu/drm/msm/adreno/adreno_gpu.h | 13 + 3 file

[PATCH v7 04/12] drm/msm: Add CONTEXT_SWITCH_CNTL bitfields

2024-09-30 Thread Antonino Maniscalco
Add missing bitfields to CONTEXT_SWITCH_CNTL in a6xx.xml. Tested-by: Rob Clark Tested-by: Neil Armstrong # on SM8650-QRD Tested-by: Neil Armstrong # on SM8550-QRD Tested-by: Neil Armstrong # on SM8450-HDK Signed-off-by: Antonino Maniscalco --- drivers/gpu/drm/msm/registers/adreno/a6xx.xml |

[PATCH v7 03/12] drm/msm: Add a `preempt_record_size` field

2024-09-30 Thread Antonino Maniscalco
Adds a field to `adreno_info` to store the GPU specific preempt record size. Reviewed-by: Akhil P Oommen Tested-by: Rob Clark Tested-by: Neil Armstrong # on SM8650-QRD Tested-by: Neil Armstrong # on SM8550-QRD Tested-by: Neil Armstrong # on SM8450-HDK Signed-off-by: Antonino Maniscalco ---

[PATCH v7 01/12] drm/msm: Fix bv_fence being used as bv_rptr

2024-09-30 Thread Antonino Maniscalco
The bv_fence field of rbmemptrs was being used incorrectly as the BV rptr shadow pointer in some places. Add a bv_rptr field and change the code to use that instead. Reviewed-by: Akhil P Oommen Tested-by: Rob Clark Tested-by: Neil Armstrong # on SM8650-QRD Tested-by: Neil Armstrong # on SM855

[PATCH v7 02/12] drm/msm/a6xx: Track current_ctx_seqno per ring

2024-09-30 Thread Antonino Maniscalco
With preemption it is not enough to track the current_ctx_seqno globally as execution might switch between rings. This is especially problematic when current_ctx_seqno is used to determine whether a page table switch is necessary as it might lead to security bugs. Track current context per ring.

[PATCH v7 00/12] Preemption support for A7XX

2024-09-30 Thread Antonino Maniscalco
This series implements preemption for A7XX targets, which allows the GPU to switch to an higher priority ring when work is pushed to it, reducing latency for high priority submissions. This series enables L1 preemption with skip_save_restore which requires the following userspace patches to functi

Re: [PATCH v2 1/5] dt-bindings: display/msm: Document MDSS on SA8775P

2024-09-30 Thread Mahadevan P
On 9/26/2024 6:54 PM, Bjorn Andersson wrote: On Thu, Sep 26, 2024 at 04:31:33PM +0530, Mahadevan wrote: Document the MDSS hardware found on the Qualcomm SA8775P platform. Signed-off-by: Mahadevan --- [v2] - Use fake DISPCC nodes to avoid clock dependencies in dt-bindings. [Dmitry] - Update