Re: [Freedreno] [PATCH 02/10] drm/msm/dsi: Turn msm_dsi_config::io_start into a 2d array

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 14:17, Dmitry Baryshkov wrote: > On 11/02/2023 13:51, Konrad Dybcio wrote: >> Currently, we allow for MAX_DSI entries in io_start to facilitate for >> MAX_DSI number of DSI hosts at different addresses. The configuration >> is matched against the DSI CTRL hardware revision read bac

Re: [Freedreno] [PATCH 03/10] drm/msm/dsi: Zero-terminate msm_dsi_config::io_start

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 14:19, Dmitry Baryshkov wrote: > On 11/02/2023 13:51, Konrad Dybcio wrote: >> In preparation for supporting multiple sets of possible base registers, >> Zero-terminate the array that contains them to remove the need of >> specifying num_dsi for each set. >> >> Signed-off-by: Konrad

Re: [Freedreno] [PATCH 04/10] drm/msm/dsi: dsi_host: Fix DSI index detection when version clash occurs

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 14:26, Dmitry Baryshkov wrote: > On 11/02/2023 13:51, Konrad Dybcio wrote: >> Now that msm_dsi_config is ready to accept multiple sets of registers >> (where array[n][idx] holds the base registers of DSI(idx) for the nth >> entry), loop through all available configs to resolve hw v

Re: [Freedreno] [PATCH 05/10] drm/msm/dsi: dsi_cfg: Deduplicate identical structs

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 16:52, Dmitry Baryshkov wrote: > On 11/02/2023 13:51, Konrad Dybcio wrote: >> Some structs were defined multiple times for no apparent reason. >> Deduplicate them. >> >> Fixes: 3f3c8aff1f8f ("drm/msm/dsi: Add configuration for 8x76") >> Fixes: 3a3ff88a0fc1 ("drm/msm/dsi: Add 8x96 i

Re: [Freedreno] [PATCH 06/10] drm/msm/dsi: dsi_cfg: Merge SC7180 config into SDM845

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 16:52, Dmitry Baryshkov wrote: > On 11/02/2023 13:51, Konrad Dybcio wrote: >> The configs are identical, other than the number of *maximum* DSI >> hosts allowed. This isn't an issue, unless somebody deliberately >> tries to access the inexistent host by adding a dt node for it. >>

Re: [Freedreno] [PATCH 05/10] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 18:00, Dmitry Baryshkov wrote: > On 11/02/2023 14:26, Konrad Dybcio wrote: >> These blocks are of variable length on different SoCs. Set the >> correct values where I was able to retrieve it from downstream >> DTs and leave the old defaults (0x1c8 for sspp and 0x280 for >> intf) ot

Re: [Freedreno] [PATCH v2 06/50] drm/msm/dpu: correct sm8550 scaler

2023-02-13 Thread Neil Armstrong
On 12/02/2023 00:12, Dmitry Baryshkov wrote: QSEED4 is a newer variant of QSEED3LITE, which should be used on sm8550. Fix the DPU caps structure and used feature masks. I found nowhere SM8550 uses Qseed4, on downstream DT, it's written: qcom,sde-qseed-sw-lib-rev = "qseedv3lite";

Re: [Freedreno] [PATCH v2 14/50] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Konrad Dybcio
On 12.02.2023 00:12, Dmitry Baryshkov wrote: > From: Konrad Dybcio > > These blocks are of variable length on different SoCs. Set the > correct values where I was able to retrieve it from downstream > DTs and leave the old defaults (0x1c8 for sspp and 0x280 for > intf) otherwise. > > Signed-o

[Freedreno] [PATCH v4 0/4] Reserve DSPPs based on user request

2023-02-13 Thread Kalyan Thota
This series will enable color features on sc7280 target which has primary panel as eDP The series removes DSPP allocation based on encoder type and allows the DSPP reservation based on user request via CTM. The series will release/reserve the dpu resources whenever there is a CTM enable/disabl

[Freedreno] [PATCH v4 3/4] drm/msm/dpu: avoid unnecessary check in DPU reservations

2023-02-13 Thread Kalyan Thota
Return immediately on failure, this will make dpu reservations part look cleaner. Signed-off-by: Kalyan Thota Reviewed-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 23 ++- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/d

[Freedreno] [PATCH v4 1/4] drm/msm/dpu: clear DSPP reservations in rm release

2023-02-13 Thread Kalyan Thota
Clear DSPP reservations from the global state during rm release Fixes: e47616df008b ("drm/msm/dpu: add support for color processing blocks in dpu driver") Signed-off-by: Kalyan Thota Reviewed-by: Dmitry Baryshkov Reviewed-by: Marijn Suijten --- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 2 ++ 1

[Freedreno] [PATCH v4 2/4] drm/msm/dpu: add DSPPs into reservation upon a CTM request

2023-02-13 Thread Kalyan Thota
Add DSPP blocks into the topology for reservation, if there is a CTM request for that composition. Signed-off-by: Kalyan Thota Reviewed-by: Dmitry Baryshkov --- Changes in v1: - Minor nits (Dmitry) Changes in v2: - Populate DSPPs into the reservation only if CTM is requested (Dmitry) --- drive

[Freedreno] [PATCH v4 4/4] drm/msm/dpu: manage DPU resources if CTM is requested

2023-02-13 Thread Kalyan Thota
Allow modeset to be triggered during CTM enable/disable. In the modeset callbacks, DPU resources required for the CTM feature are managed appropriately. Signed-off-by: Kalyan Thota --- drivers/gpu/drm/msm/msm_atomic.c | 18 ++ drivers/gpu/drm/msm/msm_drv.c| 2 +- drivers/gpu

Re: [Freedreno] [PATCH 05/10] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Marijn Suijten
On 2023-02-11 13:26:51, Konrad Dybcio wrote: > These blocks are of variable length on different SoCs. Set the > correct values where I was able to retrieve it from downstream > DTs and leave the old defaults (0x1c8 for sspp and 0x280 for > intf) otherwise. > > Signed-off-by: Konrad Dybcio > --- >

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 17:32, Dmitry Baryshkov wrote: > On 11/02/2023 14:26, Konrad Dybcio wrote: >> Add SM6350 support to the DPU1 driver to enable display output. >> >> Signed-off-by: Konrad Dybcio >> Signed-off-by: Konrad Dybcio >> --- >>   .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    | 187 +++

Re: [Freedreno] [PATCH v2 06/50] drm/msm/dpu: correct sm8550 scaler

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 12:41, Neil Armstrong wrote: On 12/02/2023 00:12, Dmitry Baryshkov wrote: QSEED4 is a newer variant of QSEED3LITE, which should be used on sm8550. Fix the DPU caps structure and used feature masks. I found nowhere SM8550 uses Qseed4, on downstream DT, it's written:     qcom,

Re: [Freedreno] [PATCH 07/10] drm/msm/dpu: Add SM6375 support

2023-02-13 Thread Konrad Dybcio
On 11.02.2023 17:47, Dmitry Baryshkov wrote: > On 11/02/2023 14:26, Konrad Dybcio wrote: >> Add basic SM6375 support to the DPU1 driver to enable display output. >> >> Signed-off-by: Konrad Dybcio >> --- In short, ack to all, thanks for prompt review. Konrad >>   .../gpu/drm/msm/disp/dpu1/dpu_

Re: [Freedreno] [PATCH v2 14/50] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 13:01, Konrad Dybcio wrote: On 12.02.2023 00:12, Dmitry Baryshkov wrote: From: Konrad Dybcio These blocks are of variable length on different SoCs. Set the correct values where I was able to retrieve it from downstream DTs and leave the old defaults (0x1c8 for sspp and 0x280 fo

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Marijn Suijten
On 2023-02-13 12:15:19, Konrad Dybcio wrote: [...] > >> @@ -1674,6 +1765,15 @@ static struct dpu_pingpong_cfg sc8280xp_pp[] = { > >>     DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31), -1), > >>   }; > >>   +static struct dpu_pingpong_cfg sm6350_pp[] = { > >> +    PP_BLK("pingpong_0", PINGPONG_0, 0x7

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 13:30, Marijn Suijten wrote: On 2023-02-13 12:15:19, Konrad Dybcio wrote: [...] @@ -1674,6 +1765,15 @@ static struct dpu_pingpong_cfg sc8280xp_pp[] = {     DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31), -1),   };   +static struct dpu_pingpong_cfg sm6350_pp[] = { +    PP_BLK("ping

Re: [Freedreno] [PATCH 05/10] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 13:12, Marijn Suijten wrote: On 2023-02-11 13:26:51, Konrad Dybcio wrote: These blocks are of variable length on different SoCs. Set the correct values where I was able to retrieve it from downstream DTs and leave the old defaults (0x1c8 for sspp and 0x280 for intf) otherwise. Sig

Re: [Freedreno] [PATCH 03/10] drm/msm/dsi: Zero-terminate msm_dsi_config::io_start

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 11:18, Konrad Dybcio wrote: On 11.02.2023 14:19, Dmitry Baryshkov wrote: On 11/02/2023 13:51, Konrad Dybcio wrote: In preparation for supporting multiple sets of possible base registers, Zero-terminate the array that contains them to remove the need of specifying num_dsi for eac

[Freedreno] [PATCH v2 1/9] dt-bindings: display/msm: dsi-controller-main: Fix deprecated QCM2290 compatible

2023-02-13 Thread Konrad Dybcio
The qcom, prefix was missed previously. Fix it. Fixes: 0c0f65c6dd44 ("dt-bindings: msm: dsi-controller-main: Add compatible strings for every current SoC") Signed-off-by: Konrad Dybcio --- .../devicetree/bindings/display/msm/dsi-controller-main.yaml| 2 +- 1 file changed, 1 insertion(+), 1

[Freedreno] [PATCH v2 2/9] drm/msm/dsi: Get rid of msm_dsi_config::num_dsi

2023-02-13 Thread Konrad Dybcio
In preparation for supporting multiple sets of possible base registers, remove the num_dsi variable. We're comparing the io_start array contents with the reg value from the DTS, so it will either match one of the expected values or don't match against a zero (which we get from partial array initial

[Freedreno] [PATCH v2 3/9] drm/msm/dsi: Fix DSI index detection when version clash occurs

2023-02-13 Thread Konrad Dybcio
Currently, we allow for MAX_DSI entries in io_start to facilitate for MAX_DSI number of DSI hosts at different addresses. The configuration is matched against the DSI CTRL hardware revision read back from the component. We need a way to resolve situations where multiple SoCs with different register

[Freedreno] [PATCH v2 4/9] drm/msm/dsi: dsi_cfg: Deduplicate identical structs

2023-02-13 Thread Konrad Dybcio
Some structs were defined multiple times for no apparent reason. Deduplicate them. Reviewed-by: Dmitry Baryshkov Signed-off-by: Konrad Dybcio --- drivers/gpu/drm/msm/dsi/dsi_cfg.c | 77 +++ 1 file changed, 26 insertions(+), 51 deletions(-) diff --git a/drivers/gpu/d

[Freedreno] [PATCH v2 5/9] drm/msm/dsi: dsi_cfg: Merge SC7180 config into SDM845

2023-02-13 Thread Konrad Dybcio
The configs are identical, other than the number of *maximum* DSI hosts allowed. This isn't an issue, unless somebody deliberately tries to access the inexistent host by adding a dt node for it. Remove the SC7180 struct and point the hw revision match to the SDM845's one. On a note, this could hav

[Freedreno] [PATCH v2 6/9] drm/msm/dsi: Switch the QCM2290-specific compatible to index autodetection

2023-02-13 Thread Konrad Dybcio
Now that the logic can handle multiple sets of registers, move the QCM2290 to the common logic and mark it deprecated. This allows us to remove a couple of structs, saving some memory. Signed-off-by: Konrad Dybcio --- drivers/gpu/drm/msm/dsi/dsi.c | 4 +++- drivers/gpu/drm/msm/dsi/dsi_cfg.c

[Freedreno] [PATCH v2 8/9] dt-bindings: display/msm: dsi-controller-main: Add SM6115

2023-02-13 Thread Konrad Dybcio
Add a compatible for the DSI on SM6115. Signed-off-by: Konrad Dybcio --- .../devicetree/bindings/display/msm/dsi-controller-main.yaml| 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml b/Documentation/devicetree/bindi

[Freedreno] [PATCH v2 7/9] drm/msm/dsi: Remove custom DSI config handling

2023-02-13 Thread Konrad Dybcio
Now that the only user is handled by common code, remove the option to specify custom handlers through match data. This is effectively a revert of commit: 5ae15e76271 ("drm/msm/dsi: Allow to specify dsi config as pdata") Reviewed-by: Dmitry Baryshkov Signed-off-by: Konrad Dybcio --- drivers/gp

[Freedreno] [PATCH v2 9/9] arm64: dts: qcom: sm6115: Use the correct DSI compatible

2023-02-13 Thread Konrad Dybcio
Use the non-deprecated, SoC-specific DSI compatible. Signed-off-by: Konrad Dybcio --- arch/arm64/boot/dts/qcom/sm6115.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/qcom/sm6115.dtsi b/arch/arm64/boot/dts/qcom/sm6115.dtsi index bff067ed2e94..15811be8

[Freedreno] [PATCH v2 0/9] Fix DSI host idx detection on HW revision clash

2023-02-13 Thread Konrad Dybcio
v1 -> v2: - squash the 2d-array-ification and fixing up the logic into one patch - drop num_variants, loop over VARIANTS_MAX*DSI_MAX unconditionally - drop inadequate Fixes: tags - pick up rbs v1: https://lore.kernel.org/linux-arm-msm/2023025110.1462920-1-konrad.dyb...@linaro.org/ Some DSI

Re: [Freedreno] [PATCH v3 5/5] arm64: dts: qcom: sm8450: add dp controller

2023-02-13 Thread neil . armstrong
On 10/02/2023 16:54, Dmitry Baryshkov wrote: On 10/02/2023 17:28, Neil Armstrong wrote: On 10/02/2023 16:24, Dmitry Baryshkov wrote: On 10/02/2023 16:44, Neil Armstrong wrote: Add the Display Port controller subnode to the MDSS node. Signed-off-by: Neil Armstrong ---   arch/arm64/boot/dts/qc

Re: [Freedreno] [PATCH v2 2/9] drm/msm/dsi: Get rid of msm_dsi_config::num_dsi

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 14:10, Konrad Dybcio wrote: In preparation for supporting multiple sets of possible base registers, remove the num_dsi variable. We're comparing the io_start array contents with the reg value from the DTS, so it will either match one of the expected values or don't match against a z

Re: [Freedreno] [PATCH v2 3/9] drm/msm/dsi: Fix DSI index detection when version clash occurs

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 14:10, Konrad Dybcio wrote: Currently, we allow for MAX_DSI entries in io_start to facilitate for MAX_DSI number of DSI hosts at different addresses. The configuration is matched against the DSI CTRL hardware revision read back from the component. We need a way to resolve situations

Re: [Freedreno] [PATCH v2 6/9] drm/msm/dsi: Switch the QCM2290-specific compatible to index autodetection

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 14:10, Konrad Dybcio wrote: Now that the logic can handle multiple sets of registers, move the QCM2290 to the common logic and mark it deprecated. This allows us to remove a couple of structs, saving some memory. Signed-off-by: Konrad Dybcio --- drivers/gpu/drm/msm/dsi/dsi.c

Re: [Freedreno] [PATCH v3 5/5] arm64: dts: qcom: sm8450: add dp controller

2023-02-13 Thread Neil Armstrong
On 13/02/2023 13:32, neil.armstr...@linaro.org wrote: On 10/02/2023 16:54, Dmitry Baryshkov wrote: On 10/02/2023 17:28, Neil Armstrong wrote: On 10/02/2023 16:24, Dmitry Baryshkov wrote: On 10/02/2023 16:44, Neil Armstrong wrote: Add the Display Port controller subnode to the MDSS node. Sign

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Marijn Suijten
On 2023-02-13 13:35:01, Dmitry Baryshkov wrote: > On 13/02/2023 13:30, Marijn Suijten wrote: > > On 2023-02-13 12:15:19, Konrad Dybcio wrote: > > [...] > @@ -1674,6 +1765,15 @@ static struct dpu_pingpong_cfg sc8280xp_pp[] = { >     DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31), -1), > >>>

Re: [Freedreno] [PATCH 05/10] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Marijn Suijten
On 2023-02-13 13:38:33, Dmitry Baryshkov wrote: > On 13/02/2023 13:12, Marijn Suijten wrote: > > On 2023-02-11 13:26:51, Konrad Dybcio wrote: > >> These blocks are of variable length on different SoCs. Set the > >> correct values where I was able to retrieve it from downstream > >> DTs and leave th

Re: [Freedreno] [PATCH 05/10] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 16:31, Marijn Suijten wrote: On 2023-02-13 13:38:33, Dmitry Baryshkov wrote: On 13/02/2023 13:12, Marijn Suijten wrote: On 2023-02-11 13:26:51, Konrad Dybcio wrote: These blocks are of variable length on different SoCs. Set the correct values where I was able to retrieve it from

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 16:28, Marijn Suijten wrote: On 2023-02-13 13:35:01, Dmitry Baryshkov wrote: On 13/02/2023 13:30, Marijn Suijten wrote: On 2023-02-13 12:15:19, Konrad Dybcio wrote: [...] @@ -1674,6 +1765,15 @@ static struct dpu_pingpong_cfg sc8280xp_pp[] = {     DPU_IRQ_IDX(MDP_SSPP_TO

Re: [Freedreno] [PATCH 05/10] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Marijn Suijten
On 2023-02-13 16:40:56, Dmitry Baryshkov wrote: > On 13/02/2023 16:31, Marijn Suijten wrote: > > On 2023-02-13 13:38:33, Dmitry Baryshkov wrote: > >> On 13/02/2023 13:12, Marijn Suijten wrote: > >>> On 2023-02-11 13:26:51, Konrad Dybcio wrote: > These blocks are of variable length on different

Re: [Freedreno] [PATCH 05/10] drm/msm/dpu: Allow variable SSPP/INTF_BLK size

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 17:02, Marijn Suijten wrote: On 2023-02-13 16:40:56, Dmitry Baryshkov wrote: On 13/02/2023 16:31, Marijn Suijten wrote: On 2023-02-13 13:38:33, Dmitry Baryshkov wrote: On 13/02/2023 13:12, Marijn Suijten wrote: On 2023-02-11 13:26:51, Konrad Dybcio wrote: These blocks are of va

Re: [Freedreno] [PATCH 03/10] dt-bindings: display/msm: Add SM6350 DPU & MDSS

2023-02-13 Thread Rob Herring
On Sat, 11 Feb 2023 13:26:49 +0100, Konrad Dybcio wrote: > Document 6350 DPU and MDSS. > > Signed-off-by: Konrad Dybcio > --- > .../bindings/display/msm/qcom,sm6350-dpu.yaml | 94 > .../display/msm/qcom,sm6350-mdss.yaml | 213 ++ > 2 files changed, 307 inserti

Re: [Freedreno] [PATCH 04/10] dt-bindings: display/msm: Add SM6375 DPU & MDSS

2023-02-13 Thread Rob Herring
On Sat, 11 Feb 2023 13:26:50 +0100, Konrad Dybcio wrote: > Document SM6375 DPU and MDSS. > > Signed-off-by: Konrad Dybcio > --- > .../bindings/display/msm/qcom,sm6375-dpu.yaml | 106 + > .../display/msm/qcom,sm6375-mdss.yaml | 216 ++ > 2 files changed, 322 inse

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 16:58, Dmitry Baryshkov wrote: On 13/02/2023 16:28, Marijn Suijten wrote: Feel free to propose a merge order listing all the aforementioned SoCs, your rework, my INTF TE patches and whatever else is in the pipeline. As I've been away for a while, and only have limited hobby time (_

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Marijn Suijten
On 2023-02-13 16:58:00, Dmitry Baryshkov wrote: > On 13/02/2023 16:28, Marijn Suijten wrote: > > On 2023-02-13 13:35:01, Dmitry Baryshkov wrote: > >> On 13/02/2023 13:30, Marijn Suijten wrote: > >>> On 2023-02-13 12:15:19, Konrad Dybcio wrote: > >>> [...] > >> @@ -1674,6 +1765,15 @@ static stru

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 17:14, Marijn Suijten wrote: On 2023-02-13 16:58:00, Dmitry Baryshkov wrote: So, *possible* the merge order is the following: - fixes from https://patchwork.freedesktop.org/series/113910/ go to msm-fixes - fixes from your intf-te go to msm-fixes - https://patchwork.freedesktop.org/

Re: [Freedreno] [PATCH v2 06/50] drm/msm/dpu: correct sm8550 scaler

2023-02-13 Thread neil . armstrong
On 13/02/2023 12:16, Dmitry Baryshkov wrote: On 13/02/2023 12:41, Neil Armstrong wrote: On 12/02/2023 00:12, Dmitry Baryshkov wrote: QSEED4 is a newer variant of QSEED3LITE, which should be used on sm8550. Fix the DPU caps structure and used feature masks. I found nowhere SM8550 uses Qseed4,

Re: [Freedreno] [PATCH v2 03/50] drm/msm/dpu: fix typo in in sm8550's dma_sblk_5

2023-02-13 Thread Neil Armstrong
On 12/02/2023 00:12, Dmitry Baryshkov wrote: Fix typo if the name of the sblk structure for the sm8550's dma_sblk_5. Fixes: efcd0107727c ("drm/msm/dpu: add support for SM8550") Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 4 ++-- 1 file changed, 2 inse

Re: [Freedreno] [v12] drm/msm/disp/dpu1: add support for dspp sub block flush in sc7280

2023-02-13 Thread Doug Anderson
Hi, On Fri, Jan 27, 2023 at 2:15 AM Kalyan Thota wrote: > > Flush mechanism for DSPP blocks has changed in sc7280 family, it > allows individual sub blocks to be flushed in coordination with > master flush control. > > Representation: master_flush && (PCC_flush | IGC_flush .. etc ) > > This chang

Re: [Freedreno] [PATCH v4 0/4] Reserve DSPPs based on user request

2023-02-13 Thread Doug Anderson
Hi, On Mon, Feb 13, 2023 at 3:11 AM Kalyan Thota wrote: > > This series will enable color features on sc7280 target which has > primary panel as eDP > > The series removes DSPP allocation based on encoder type and allows > the DSPP reservation based on user request via CTM. > > The series will re

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Abhinav Kumar
On 2/13/2023 8:25 AM, Dmitry Baryshkov wrote: On 13/02/2023 17:14, Marijn Suijten wrote: On 2023-02-13 16:58:00, Dmitry Baryshkov wrote: So, *possible* the merge order is the following: - fixes from https://patchwork.freedesktop.org/series/113910/ go to msm-fixes - fixes from your intf-te go

Re: [Freedreno] [RFC PATCH 5/7] drm/msm/dpu: Document and enable TEAR interrupts on DSI interfaces

2023-02-13 Thread Jessica Zhang
On 12/31/2022 1:50 PM, Marijn Suijten wrote: All SoCs since DPU 5.0.0 (and seemingly up until and including 6.0.0, but excluding 7.x.x) have the tear interrupt and control registers moved out of the PINGPONG block and into the INTF block. Wire up the necessary interrupts and IRQ masks on all

[Freedreno] [RFC PATCH v3 0/4] Move TE setup to prepare_for_kickoff()

2023-02-13 Thread Jessica Zhang
Move TE setup to prepare_for_kickoff() and remove empty prepare_commit() functions in both MDP4 and DPU drivers. Changes in V2: - Added changes to remove empty prepare_commit() functions Changes in V3: - Reordered "drm/msm/dpu: Move TE setup to prepare_for_kickoff()" for clarity - Fixed spelli

[Freedreno] [RFC PATCH v3 1/4] drm/msm/dpu: Move TE setup to prepare_for_kickoff()

2023-02-13 Thread Jessica Zhang
Currently, DPU will enable TE during prepare_commit(). However, this will cause issues when trying to read/write to register in get_autorefresh_config(), because the core clock rates aren't set at that time. This used to work because phys_enc->hw_pp is only initialized in mode set [1], so the firs

[Freedreno] [RFC PATCH v3 2/4] drm/msm: Check for NULL before calling prepare_commit()

2023-02-13 Thread Jessica Zhang
Add a NULL check before calling prepare_commit() in msm_atomic_commit_tail() Signed-off-by: Jessica Zhang Reviewed-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/msm_atomic.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/msm_atomic.c b/drivers/gpu/drm/m

[Freedreno] [RFC PATCH v3 3/4] drm/msm/dpu: Remove empty prepare_commit() function

2023-02-13 Thread Jessica Zhang
Now that the TE setup has been moved to prepare_for_kickoff(), and dpu_encoder_prepare_commit() is not empty, remove prepare_commit() from DPU driver. Changes in V3: - Reworded commit message to be more clear - Corrected spelling mistake in commit message Signed-off-by: Jessica Zhang --- driver

Re: [Freedreno] [PATCH 06/10] drm/msm/dpu: Add SM6350 support

2023-02-13 Thread Dmitry Baryshkov
On Mon, 13 Feb 2023 at 21:14, Abhinav Kumar wrote: > On 2/13/2023 8:25 AM, Dmitry Baryshkov wrote: > > On 13/02/2023 17:14, Marijn Suijten wrote: > >> On 2023-02-13 16:58:00, Dmitry Baryshkov wrote: > >>> So, *possible* the merge order is the following: > >>> - fixes from https://patchwork.freedes

Re: [Freedreno] [PATCH v4 0/4] Reserve DSPPs based on user request

2023-02-13 Thread Dmitry Baryshkov
On Mon, 13 Feb 2023 at 20:12, Doug Anderson wrote: > > Hi, > > On Mon, Feb 13, 2023 at 3:11 AM Kalyan Thota wrote: > > > > This series will enable color features on sc7280 target which has > > primary panel as eDP > > > > The series removes DSPP allocation based on encoder type and allows > > the

Re: [Freedreno] [RFC PATCH 5/7] drm/msm/dpu: Document and enable TEAR interrupts on DSI interfaces

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 21:37, Jessica Zhang wrote: On 12/31/2022 1:50 PM, Marijn Suijten wrote: All SoCs since DPU 5.0.0 (and seemingly up until and including 6.0.0, but excluding 7.x.x) have the tear interrupt and control registers moved out of the PINGPONG block and into the INTF block.  Wire up the

Re: [Freedreno] [RFC PATCH v3 0/4] Move TE setup to prepare_for_kickoff()

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 21:48, Jessica Zhang wrote: Move TE setup to prepare_for_kickoff() and remove empty prepare_commit() functions in both MDP4 and DPU drivers. Changes in V2: - Added changes to remove empty prepare_commit() functions Changes in V3: - Reordered "drm/msm/dpu: Move TE setup to prepare_

Re: [Freedreno] [RFC PATCH v3 1/4] drm/msm/dpu: Move TE setup to prepare_for_kickoff()

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 21:48, Jessica Zhang wrote: Currently, DPU will enable TE during prepare_commit(). However, this will cause issues when trying to read/write to register in Nit: what issues? SError? reboot to the sahara? board reset? get_autorefresh_config(), because the core clock rates aren't

Re: [Freedreno] [RFC PATCH v3 3/4] drm/msm/dpu: Remove empty prepare_commit() function

2023-02-13 Thread Dmitry Baryshkov
On 13/02/2023 21:48, Jessica Zhang wrote: Now that the TE setup has been moved to prepare_for_kickoff(), and dpu_encoder_prepare_commit() is not empty, remove prepare_commit() from DPU driver. Well. dpu_encoder_prepare_commit() is not empty. I'd say instead: "... to prepare_for_kickoff(), we h

Re: [Freedreno] [PATCH v3 0/6] arm64: dts: qcom: sm8350: enable GPU on the HDK board

2023-02-13 Thread Bjorn Andersson
On Thu, 9 Feb 2023 15:38:33 +0200, Dmitry Baryshkov wrote: > Add A660 device to the Qualcomm SM8350 platform and enable it for the > sm8350-hdk board. Unfortunately while adding the GPU & related devices I > noticed that DT nodes on SM8350 are greatly out of the adress sorting > order, so patches 2

[Freedreno] [RFC PATCH v3 4/4] drm/msm/mdp4: Remove empty prepare_commit() function

2023-02-13 Thread Jessica Zhang
Remove empty prepare_commit() function from MDP4 driver. Signed-off-by: Jessica Zhang Reviewed-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 5 - 1 file changed, 5 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4

Re: [Freedreno] [RFC PATCH v3 0/4] Move TE setup to prepare_for_kickoff()

2023-02-13 Thread Abhinav Kumar
On 2/13/2023 1:51 PM, Dmitry Baryshkov wrote: On 13/02/2023 21:48, Jessica Zhang wrote: Move TE setup to prepare_for_kickoff() and remove empty prepare_commit() functions in both MDP4 and DPU drivers. Changes in V2: - Added changes to remove empty prepare_commit() functions Changes in V3: -

Re: [Freedreno] [RFC PATCH v3 0/4] Move TE setup to prepare_for_kickoff()

2023-02-13 Thread Dmitry Baryshkov
On 14/02/2023 02:01, Abhinav Kumar wrote: On 2/13/2023 1:51 PM, Dmitry Baryshkov wrote: On 13/02/2023 21:48, Jessica Zhang wrote: Move TE setup to prepare_for_kickoff() and remove empty prepare_commit() functions in both MDP4 and DPU drivers. Changes in V2: - Added changes to remove empty pr

Re: [Freedreno] [RFT PATCH v2 3/3] drm/msm/dsi: More properly handle errors in regards to dsi_mgr_bridge_power_on()

2023-02-13 Thread Abhinav Kumar
Hi Doug Sorry for the delayed response. On 2/2/2023 2:46 PM, Doug Anderson wrote: Hi, On Thu, Feb 2, 2023 at 2:37 PM Abhinav Kumar wrote: Hi Doug On 1/31/2023 2:18 PM, Douglas Anderson wrote: In commit 7d8e9a90509f ("drm/msm/dsi: move DSI host powerup to modeset time") the error handling

[Freedreno] [PATCH 0/4] drm/msm/a5xx: make it work with the latest Mesa

2023-02-13 Thread Dmitry Baryshkov
Mesa 22.3.x changed the priorities used for the GPU contexts, making kernel switch between different ring buffers. This uncovered several issues in the A5xx preemption code, which are now being resolved by this patchset. Dmitry Baryshkov (4): drm/msm/a5xx: fix setting of the CP_PREEMPT_ENABLE_LO

[Freedreno] [PATCH 1/4] drm/msm/a5xx: fix setting of the CP_PREEMPT_ENABLE_LOCAL register

2023-02-13 Thread Dmitry Baryshkov
Rather than writing CP_PREEMPT_ENABLE_GLOBAL twice, follow the vendor kernel and set CP_PREEMPT_ENABLE_LOCAL register instead. a5xx_submit() will override it during submission, but let's get the sequence correct. Fixes: b1fc2839d2f9 ("drm/msm: Implement preemption for A5XX targets") Signed-off-by:

[Freedreno] [PATCH 2/4] drm/msm/a5xx: fix highest bank bit for a530

2023-02-13 Thread Dmitry Baryshkov
A530 has highest bank bit equal to 15 (like A540). Fix values written to REG_A5XX_RB_MODE_CNTL and REG_A5XX_TPL1_MODE_CNTL registers. Fixes: 1d832ab30ce6 ("drm/msm/a5xx: Add support for Adreno 508, 509, 512 GPUs") Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 2 +-

[Freedreno] [PATCH 3/4] drm/msm/a5xx: fix the emptyness check in the preempt code

2023-02-13 Thread Dmitry Baryshkov
Quoting Yassine: ring->memptrs->rptr is never updated and stays 0, so the comparison always evaluates to false and get_next_ring always returns ring 0 thinking it isn't empty. Fix this by calling get_rptr() instead of reading rptr directly. Reported-by: Yassine Oudjana Fixes: b1fc2839d2f9 ("drm/

[Freedreno] [PATCH 4/4] drm/msm/a5xx: fix context faults during ring switch

2023-02-13 Thread Dmitry Baryshkov
The rptr_addr is set in the preempt_init_ring(), which is called from a5xx_gpu_init(). It uses shadowptr() to set the address, however the shadow_iova is not yet initialized at that time. Move the rptr_addr setting to the a5xx_preempt_hw_init() which is called after setting the shadow_iova, getting

Re: [Freedreno] [RFC PATCH 5/7] drm/msm/dpu: Document and enable TEAR interrupts on DSI interfaces

2023-02-13 Thread Abhinav Kumar
On 2/13/2023 1:46 PM, Dmitry Baryshkov wrote: On 13/02/2023 21:37, Jessica Zhang wrote: On 12/31/2022 1:50 PM, Marijn Suijten wrote: All SoCs since DPU 5.0.0 (and seemingly up until and including 6.0.0, but excluding 7.x.x) have the tear interrupt and control registers moved out of the PIN

Re: [Freedreno] [PATCH 0/4] drm/msm/a5xx: make it work with the latest Mesa

2023-02-13 Thread Yassine Oudjana
On Tuesday, February 14th, 2023 at 6:09 AM, Dmitry Baryshkov wrote: > Mesa 22.3.x changed the priorities used for the GPU contexts, making > kernel switch between different ring buffers. This uncovered several > issues in the A5xx preemption code, which are now being resolved by this > patchset.