Re: [PATCH v3 2/4] dt-bindings: display/msm: Document MDSS on X1E80100

2024-02-16 Thread Rob Herring
labs.org/project/devicetree-bindings/patch/20240216-x1e80100-display-v3-2-28b1c33ac...@linaro.org The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make s

[PATCH v3 0/4] drm/msm: Add display support for X1E80100

2024-02-16 Thread Abel Vesa
This patchset adds support for display for X1E80100. The support for embedded DisplayPort on this platform will not be enabled using the connetor type from driver match data, but through some 'is-edp' property via DT. This subsequent work will be part of a separate patchset. Signed-off-by: Abel

[PATCH v3 2/4] dt-bindings: display/msm: Document MDSS on X1E80100

2024-02-16 Thread Abel Vesa
Document the MDSS hardware found on the Qualcomm X1E80100 platform. Reviewed-by: Krzysztof Kozlowski Signed-off-by: Abel Vesa --- .../bindings/display/msm/qcom,x1e80100-mdss.yaml | 253 + 1 file changed, 253 insertions(+) diff --git

[PATCH v3 1/4] dt-bindings: display/msm: Document the DPU for X1E80100

2024-02-16 Thread Abel Vesa
Document the DPU for Qualcomm X1E80100 platform in the SM8650 schema, as they are similar. Signed-off-by: Abel Vesa --- Documentation/devicetree/bindings/display/msm/qcom,sm8650-dpu.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git

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

2024-02-16 Thread Abel Vesa
Add definitions for the display hardware used on the Qualcomm X1E80100 platform. Co-developed-by: Abhinav Kumar Signed-off-by: Abhinav Kumar Reviewed-by: Dmitry Baryshkov Signed-off-by: Abel Vesa --- .../drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h | 449 +

[PATCH v3 3/4] drm/msm: mdss: Add X1E80100 support

2024-02-16 Thread Abel Vesa
Add support for MDSS on X1E80100. Reviewed-by: Dmitry Baryshkov Signed-off-by: Abel Vesa --- drivers/gpu/drm/msm/msm_mdss.c | 13 + 1 file changed, 13 insertions(+) diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c index 35423d10aafa..6eda501e2a1a 100644

[PATCH] drm/ci: skip suspend tests for both msm-sc7180 machines

2024-02-16 Thread Dmitry Baryshkov
The commit ea489a3d983b ("drm/ci: add sc7180-trogdor-kingoftown") dropped the msm-sc7180-skips.txt file, which disabled suspend-to-RAM tests. However testing shows that STR tests still can fail. Restore the skiplist, applying it to both limozeen and kingoftown machines. Fixes: ea489a3d983b

[PATCH v3 0/7] drm/msm: Add support for the A750 GPU found on the SM8650 platform

2024-02-16 Thread Neil Armstrong
Unlike the the very close A740 GPU on the SM8550 SoC, the A750 GPU doesn't have an HWCFG block but a separate register set. The missing registers are added in the a6xx.xml.h file that would require a subsequent sync and the non-existent hwcfg is handled in a6xx_set_hwcg(). The A750 GPU info are

[PATCH v3 1/7] dt-bindings: display/msm/gmu: Document Adreno 750 GMU

2024-02-16 Thread Neil Armstrong
Document the Adreno 750 GMU found on the SM8650 platform. Reviewed-by: Konrad Dybcio Acked-by: Conor Dooley Signed-off-by: Neil Armstrong --- Documentation/devicetree/bindings/display/msm/gmu.yaml | 1 + 1 file changed, 1 insertion(+) diff --git

[PATCH v3 3/7] dt-bindings: arm-smmu: Document SM8650 GPU SMMU

2024-02-16 Thread Neil Armstrong
Document the GPU SMMU found on the SM8650 platform. Signed-off-by: Neil Armstrong --- Documentation/devicetree/bindings/iommu/arm,smmu.yaml | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml

[PATCH v3 2/7] dt-bindings: arm-smmu: fix SM8[45]50 GPU SMMU if condition

2024-02-16 Thread Neil Armstrong
The if condition for the SM8[45]50 GPU SMMU is too large, add the other compatible strings to the condition to only allow the clocks for the GPU SMMU nodes. Fixes: 4fff78dc2490 ("dt-bindings: arm-smmu: Document SM8[45]50 GPU SMMU") Suggested-by: Dmitry Baryshkov Signed-off-by: Neil Armstrong

[PATCH v3 5/7] drm/msm: add support for A750 GPU

2024-02-16 Thread Neil Armstrong
Add support for the A750 GPU found on the SM8650 platform Unlike the the very close A740 GPU on the SM8550 SoC, the A750 GPU doesn't have an HWCFG block but a separate register set. The A750 GPU info are added under the adreno_is_a750() macro and the ADRENO_7XX_GEN3 family id. Reviewed-by:

[PATCH v3 6/7] arm64: dts: qcom: sm8650: add GPU nodes

2024-02-16 Thread Neil Armstrong
Add GPU nodes for the SM8650 platform. Signed-off-by: Neil Armstrong --- arch/arm64/boot/dts/qcom/sm8650.dtsi | 166 +++ 1 file changed, 166 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sm8650.dtsi b/arch/arm64/boot/dts/qcom/sm8650.dtsi index

[PATCH v3 7/7] arm64: dts: qcom: sm8650-qrd: enable GPU

2024-02-16 Thread Neil Armstrong
Add path of the GPU firmware for the SM8650-QRD board Reviewed-by: Konrad Dybcio Signed-off-by: Neil Armstrong --- arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 8 1 file changed, 8 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sm8650-qrd.dts

[PATCH v3 4/7] drm/msm/a6xx: Add missing regs for A750

2024-02-16 Thread Neil Armstrong
Sync missing regs for A750 clock gating control related registers from Mesa a6xx.xml.h generated file. Those registers were added in the !27576 merge request [1]. [1] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27576 Signed-off-by: Neil Armstrong ---

Re: [PATCH v2] drm/dp: move intel_dp_vsc_sdp_pack() to generic helper

2024-02-16 Thread Jani Nikula
On Thu, 15 Feb 2024, Abhinav Kumar wrote: > intel_dp_vsc_sdp_pack() can be re-used by other DRM drivers as well. > Lets move this to drm_dp_helper to achieve this. > > changes in v2: > - rebased on top of drm-tip > > Acked-by: Dmitry Baryshkov > Signed-off-by: Abhinav Kumar Acked-by:

[PATCH v4 14/19] drm/msm/dpu: add support of new peripheral flush mechanism

2024-02-16 Thread Paloma Arellano
From: Kuogee Hsieh Introduce a peripheral flushing mechanism to decouple peripheral metadata flushing from timing engine related flush. Changes in v2: - Fixed some misalignment issues Signed-off-by: Kuogee Hsieh Signed-off-by: Paloma Arellano Reviewed-by: Dmitry Baryshkov ---

[PATCH v4 16/19] drm/msm/dpu: modify encoder programming for CDM over DP

2024-02-16 Thread Paloma Arellano
Adjust the encoder format programming in the case of video mode for DP to accommodate CDM related changes. Changes in v4: - Remove hw_cdm check in dpu_encoder_needs_periph_flush() - Remove hw_cdm check when getting the fmt_fourcc in dpu_encoder_phys_vid_enable() Changes

[PATCH v4 15/19] drm/msm/dp: enable SDP and SDE periph flush update

2024-02-16 Thread Paloma Arellano
DP controller can be setup to operate in either SDP update flush mode or peripheral flush mode based on the DP controller hardware version. Starting in DP v1.2, the hardware documents require the use of peripheral flush mode for SDP packets such as PPS OR VSC SDP packets. In-line with this

[PATCH v4 19/19] drm/msm/dp: allow YUV420 mode for DP connector when CDM available

2024-02-16 Thread Paloma Arellano
All the components of YUV420 over DP are added. Therefore, let's mark the connector property as true for DP connector when the DP type is not eDP and when there is a CDM block available. Changes in v3: - Move setting the connector's ycbcr_420_allowed parameter so that it is not

[PATCH v4 17/19] drm/msm/dpu: modify timing engine programming for YUV420 over DP

2024-02-16 Thread Paloma Arellano
Adjust the encoder timing engine setup programming in the case of video mode for YUV420 over DP to accommodate CDM. Changes in v3: - Move drm_display_mode's hskew division to another patch - Minor cleanup Changes in v2: - Move timing engine programming to this patch

[PATCH v4 13/19] drm/msm/dp: add VSC SDP support for YUV420 over DP

2024-02-16 Thread Paloma Arellano
Add support to pack and send the VSC SDP packet for DP. This therefore allows the transmision of format information to the sinks which is needed for YUV420 support over DP. Changes in v4: - Remove struct msm_dp_sdp_with_parity - Use dp_utils_pack_sdp_header() to pack the SDP

[PATCH v4 09/19] drm/msm/dpu: move widebus logic to its own API

2024-02-16 Thread Paloma Arellano
Widebus enablement is decided by the interfaces based on their specific checks and that already happens with DSI/DP specific helpers. Let's invoke these helpers from dpu_encoder_is_widebus_enabled() to make it cleaner overall. Signed-off-by: Paloma Arellano Reviewed-by: Dmitry Baryshkov ---

[PATCH v4 11/19] drm/msm/dp: change clock related programming for YUV420 over DP

2024-02-16 Thread Paloma Arellano
Change all relevant DP controller related programming for YUV420 cases. Namely, change the pixel clock math to consider YUV420 and modify the MVID programming to consider YUV420. Changes in v2: - Move configuration control programming to a different commit - Slight code

[PATCH v4 08/19] drm/msm/dp: check if VSC SDP is supported in DP programming

2024-02-16 Thread Paloma Arellano
In the DP driver, check if VSC SDP is supported and propagate this value to dp_panel. In dp_display's dp_mode, the out_fmt_is_yuv_420 parameter must also utilize this value since YUV420 is only allowed when VSC SDP is supported. Changes in v2: - Move DP programming when VSC SDP is

[PATCH v4 12/19] drm/msm/dp: move parity calculation to dp_utils

2024-02-16 Thread Paloma Arellano
Parity calculation is necessary for VSC SDP implementation. Therefore create new files dp_utils.c and dp_utils.h and move the parity calculating functions here. This ensures that they are usable by SDP programming in both dp_catalog.c and dp_audio.c Changes in v3: - Change ordering of the

[PATCH v4 05/19] drm/msm/dpu: move dpu_encoder_helper_phys_setup_cdm to dpu_encoder

2024-02-16 Thread Paloma Arellano
Move dpu_encoder_helper_phys_setup_cdm to dpu_encoder in preparation for implementing YUV420 over DP, which requires CDM compatibility. Changes in v2: - Slightly change the wording of the commit text to make clear that YUV over DP requires CDM Signed-off-by: Paloma Arellano

[PATCH v4 04/19] drm/msm/dpu: allow dpu_encoder_helper_phys_setup_cdm to work for DP

2024-02-16 Thread Paloma Arellano
Generalize dpu_encoder_helper_phys_setup_cdm to be compatible with DP. Changes in v2: - Minor formatting changes - Move the modification of the dimensions for CDM setup to a new patch Signed-off-by: Paloma Arellano Reviewed-by: Dmitry Baryshkov ---

[PATCH v4 07/19] drm/msm/dp: store mode YUV420 information to be used by rest of DP

2024-02-16 Thread Paloma Arellano
Wide bus is not supported when the mode is YUV420 in DP. In preparation for changing the DPU programming to reflect this, the value and assignment location of wide_bus_en for the DP submodules must be changed. Move it from boot time in dp_init_sub_modules() to run time in dp_display_mode_set.

[PATCH v4 06/19] drm/msm/dp: rename wide_bus_en to wide_bus_supported

2024-02-16 Thread Paloma Arellano
Rename wide_bus_en to wide_bus_supported in dp_display_private to correctly establish that the parameter is referencing if wide bus is supported instead of enabled. Signed-off-by: Paloma Arellano Reviewed-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/dp/dp_display.c | 42

[PATCH v4 10/19] drm/msm/dp: program config ctrl for YUV420 over DP

2024-02-16 Thread Paloma Arellano
Change relevant DP controller related programming for YUV420 cases. Program the configuration control register to indicate YUV420. Changes in v2: - Create a new patch only for configuration control programming Signed-off-by: Paloma Arellano Reviewed-by: Dmitry Baryshkov ---

[PATCH v4 18/19] drm/msm/dpu: reserve CDM blocks for DP if mode is YUV420

2024-02-16 Thread Paloma Arellano
Reserve CDM blocks for DP if the mode format is YUV420. Currently this reservation only works for writeback and DP if the format is YUV420. But this can be easily extented to other YUV formats for DP. Changes in v2: - Minor code simplification Signed-off-by: Paloma Arellano Reviewed-by:

[PATCH v4 02/19] drm/msm/dpu: add division of drm_display_mode's hskew parameter

2024-02-16 Thread Paloma Arellano
Setting up the timing engine when the physical encoder has a split role neglects dividing the drm_display_mode's hskew parameter. Let's fix this since this must also be done in preparation for implementing YUV420 over DP. Fixes: 25fdd5933e4c ("drm/msm: Add SDM845 DPU support") Signed-off-by:

[PATCH v4 03/19] drm/msm/dpu: pass mode dimensions instead of fb size in CDM setup

2024-02-16 Thread Paloma Arellano
Modify the output width and height parameters of hw_cdm to utilize the physical encoder's data instead of obtaining the information from the framebuffer. CDM is to be set up to utilize the actual output data since at CDM setup, there is no difference between the two sources. Changes in v2:

[PATCH v4 00/19] Add support for CDM over DP

2024-02-16 Thread Paloma Arellano
The Chroma Down Sampling (CDM) block is a hardware component in the DPU pipeline that includes a CSC block capable of converting RGB input from the DPU to YUV data. This block can be used with either HDMI, DP, or writeback interfaces. This series adds support for the CDM block to be used with DP

[PATCH v4 01/19] drm/msm/dpu: allow certain formats for CDM for DP

2024-02-16 Thread Paloma Arellano
CDM block supports formats other than H1V2 for DP. Since we are now adding support for CDM over DP, relax the checks to allow all other formats for DP other than H1V2. Changes in v2: - Add fixes tag - Move patch to top of series Fixes: 0afac0ba6024 ("drm/msm/dpu: add dpu_hw_cdm