drm/msm/dpu: inline various PP_BLK_* macros
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tue, 4 Jul 2023 02:21:32 +0000 (05:21 +0300)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tue, 11 Jul 2023 16:26:45 +0000 (19:26 +0300)
To simplify making changes to the hardware block definitions, expand
corresponding macros. This way making all the changes are more obvious
and visible in the source files.

Tested-by: Marijn Suijten <marijn.suijten@somainline.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/545371/
Link: https://lore.kernel.org/r/20230704022136.130522-16-dmitry.baryshkov@linaro.org
16 files changed:
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_3_0_msm8998.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_4_0_sdm845.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_2_sc7180.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_3_sm6115.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_4_sm6350.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_5_qcm2290.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_9_sm6375.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h
drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

index d5111f3..9181d3e 100644 (file)
@@ -185,18 +185,35 @@ static const struct dpu_lm_cfg msm8998_lm[] = {
 };
 
 static const struct dpu_pingpong_cfg msm8998_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SDM845_TE2_MASK, 0, sdm845_pp_sblk_te,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 12)),
-       PP_BLK("pingpong_1", PINGPONG_1, 0x70800, PINGPONG_SDM845_TE2_MASK, 0, sdm845_pp_sblk_te,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 13)),
-       PP_BLK("pingpong_2", PINGPONG_2, 0x71000, PINGPONG_SDM845_MASK, 0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 14)),
-       PP_BLK("pingpong_3", PINGPONG_3, 0x71800, PINGPONG_SDM845_MASK, 0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 15)),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SDM845_TE2_MASK,
+               .sblk = &sdm845_pp_sblk_te,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 12),
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x70800, .len = 0xd4,
+               .features = PINGPONG_SDM845_TE2_MASK,
+               .sblk = &sdm845_pp_sblk_te,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 13),
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x71000, .len = 0xd4,
+               .features = PINGPONG_SDM845_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 14),
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x71800, .len = 0xd4,
+               .features = PINGPONG_SDM845_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 15),
+       },
 };
 
 static const struct dpu_dsc_cfg msm8998_dsc[] = {
index ca3a2b3..cbde4e3 100644 (file)
@@ -209,18 +209,35 @@ static const struct dpu_dspp_cfg sdm845_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sdm845_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SDM845_TE2_MASK, 0, sdm845_pp_sblk_te,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 12)),
-       PP_BLK("pingpong_1", PINGPONG_1, 0x70800, PINGPONG_SDM845_TE2_MASK, 0, sdm845_pp_sblk_te,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 13)),
-       PP_BLK("pingpong_2", PINGPONG_2, 0x71000, PINGPONG_SDM845_MASK, 0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 14)),
-       PP_BLK("pingpong_3", PINGPONG_3, 0x71800, PINGPONG_SDM845_MASK, 0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 15)),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SDM845_TE2_MASK,
+               .sblk = &sdm845_pp_sblk_te,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 12),
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x70800, .len = 0xd4,
+               .features = PINGPONG_SDM845_TE2_MASK,
+               .sblk = &sdm845_pp_sblk_te,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 13),
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x71000, .len = 0xd4,
+               .features = PINGPONG_SDM845_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 14),
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x71800, .len = 0xd4,
+               .features = PINGPONG_SDM845_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 15),
+       },
 };
 
 static const struct dpu_dsc_cfg sdm845_dsc[] = {
index 0665cfb..1ec85d5 100644 (file)
@@ -218,24 +218,55 @@ static const struct dpu_dspp_cfg sm8150_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sm8150_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, MERGE_3D_0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK("pingpong_1", PINGPONG_1, 0x70800, PINGPONG_SM8150_MASK, MERGE_3D_0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
-       PP_BLK("pingpong_2", PINGPONG_2, 0x71000, PINGPONG_SM8150_MASK, MERGE_3D_1, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       -1),
-       PP_BLK("pingpong_3", PINGPONG_3, 0x71800, PINGPONG_SM8150_MASK, MERGE_3D_1, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       -1),
-       PP_BLK("pingpong_4", PINGPONG_4, 0x72000, PINGPONG_SM8150_MASK, MERGE_3D_2, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
-                       -1),
-       PP_BLK("pingpong_5", PINGPONG_5, 0x72800, PINGPONG_SM8150_MASK, MERGE_3D_2, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x70800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x71000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x71800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_4", .id = PINGPONG_4,
+               .base = 0x72000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_5", .id = PINGPONG_5,
+               .base = 0x72800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_merge_3d_cfg sm8150_merge_3d[] = {
index 4babe9b..38bef69 100644 (file)
@@ -217,24 +217,55 @@ static const struct dpu_dspp_cfg sc8180x_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sc8180x_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, MERGE_3D_0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK("pingpong_1", PINGPONG_1, 0x70800, PINGPONG_SM8150_MASK, MERGE_3D_0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
-       PP_BLK("pingpong_2", PINGPONG_2, 0x71000, PINGPONG_SM8150_MASK, MERGE_3D_1, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       -1),
-       PP_BLK("pingpong_3", PINGPONG_3, 0x71800, PINGPONG_SM8150_MASK, MERGE_3D_1, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       -1),
-       PP_BLK("pingpong_4", PINGPONG_4, 0x72000, PINGPONG_SM8150_MASK, MERGE_3D_2, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
-                       -1),
-       PP_BLK("pingpong_5", PINGPONG_5, 0x72800, PINGPONG_SM8150_MASK, MERGE_3D_2, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x70800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x71000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x71800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_4", .id = PINGPONG_4,
+               .base = 0x72000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_5", .id = PINGPONG_5,
+               .base = 0x72800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_merge_3d_cfg sc8180x_merge_3d[] = {
index 77586b4..b9ea275 100644 (file)
@@ -218,24 +218,55 @@ static const struct dpu_dspp_cfg sm8250_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sm8250_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, MERGE_3D_0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK("pingpong_1", PINGPONG_1, 0x70800, PINGPONG_SM8150_MASK, MERGE_3D_0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
-       PP_BLK("pingpong_2", PINGPONG_2, 0x71000, PINGPONG_SM8150_MASK, MERGE_3D_1, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       -1),
-       PP_BLK("pingpong_3", PINGPONG_3, 0x71800, PINGPONG_SM8150_MASK, MERGE_3D_1, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       -1),
-       PP_BLK("pingpong_4", PINGPONG_4, 0x72000, PINGPONG_SM8150_MASK, MERGE_3D_2, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
-                       -1),
-       PP_BLK("pingpong_5", PINGPONG_5, 0x72800, PINGPONG_SM8150_MASK, MERGE_3D_2, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x70800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x71000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x71800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_4", .id = PINGPONG_4,
+               .base = 0x72000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_5", .id = PINGPONG_5,
+               .base = 0x72800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_merge_3d_cfg sm8250_merge_3d[] = {
index 4a1741e..652cf2f 100644 (file)
@@ -118,12 +118,23 @@ static const struct dpu_dspp_cfg sc7180_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sc7180_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, 0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK("pingpong_1", PINGPONG_1, 0x70800, PINGPONG_SM8150_MASK, 0, sdm845_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x70800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_intf_cfg sc7180_intf[] = {
index ccfb357..a43a159 100644 (file)
@@ -82,9 +82,15 @@ static const struct dpu_dspp_cfg sm6115_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sm6115_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, 0, sdm845_pp_sblk,
-               DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-               -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_intf_cfg sm6115_intf[] = {
index 6b41adf..eb01ade 100644 (file)
@@ -127,12 +127,23 @@ static const struct dpu_dspp_cfg sm6350_dspp[] = {
 };
 
 static struct dpu_pingpong_cfg sm6350_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, 0, sdm845_pp_sblk,
-               DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-               -1),
-       PP_BLK("pingpong_1", PINGPONG_1, 0x70800, PINGPONG_SM8150_MASK, 0, sdm845_pp_sblk,
-               DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-               -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x70800, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_dsc_cfg sm6350_dsc[] = {
index 75389f7..f858514 100644 (file)
@@ -79,9 +79,15 @@ static const struct dpu_dspp_cfg qcm2290_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg qcm2290_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, 0, sdm845_pp_sblk,
-               DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-               -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_intf_cfg qcm2290_intf[] = {
index f988ab0..989fefa 100644 (file)
@@ -84,9 +84,15 @@ static const struct dpu_dspp_cfg sm6375_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sm6375_pp[] = {
-       PP_BLK("pingpong_0", PINGPONG_0, 0x70000, PINGPONG_SM8150_MASK, 0, sdm845_pp_sblk,
-               DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-               -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x70000, .len = 0xd4,
+               .features = PINGPONG_SM8150_MASK,
+               .sblk = &sdm845_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_dsc_cfg sm6375_dsc[] = {
index 696aa70..f5b0fd6 100644 (file)
@@ -216,24 +216,55 @@ static const struct dpu_dspp_cfg sm8350_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sm8350_pp[] = {
-       PP_BLK_DITHER("pingpong_0", PINGPONG_0, 0x69000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK_DITHER("pingpong_1", PINGPONG_1, 0x6a000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
-       PP_BLK_DITHER("pingpong_2", PINGPONG_2, 0x6b000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       -1),
-       PP_BLK_DITHER("pingpong_3", PINGPONG_3, 0x6c000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       -1),
-       PP_BLK_DITHER("pingpong_4", PINGPONG_4, 0x6d000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
-                       -1),
-       PP_BLK_DITHER("pingpong_5", PINGPONG_5, 0x6e000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x69000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x6a000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x6b000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x6c000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_4", .id = PINGPONG_4,
+               .base = 0x6d000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_5", .id = PINGPONG_5,
+               .base = 0x6e000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_merge_3d_cfg sm8350_merge_3d[] = {
index 4494f3b..8129a32 100644 (file)
@@ -130,18 +130,39 @@ static const struct dpu_dspp_cfg sc7280_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sc7280_pp[] = {
-       PP_BLK_DITHER("pingpong_0", PINGPONG_0, 0x69000, 0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK_DITHER("pingpong_1", PINGPONG_1, 0x6a000, 0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
-       PP_BLK_DITHER("pingpong_2", PINGPONG_2, 0x6b000, 0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       -1),
-       PP_BLK_DITHER("pingpong_3", PINGPONG_3, 0x6c000, 0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x69000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x6a000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x6b000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x6c000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = 0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       },
 };
 
 /* NOTE: sc7280 only has one DSC hard slice encoder */
index ae43dad..7a5ebc4 100644 (file)
@@ -220,18 +220,55 @@ static const struct dpu_dspp_cfg sc8280xp_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sc8280xp_pp[] = {
-       PP_BLK_DITHER("pingpong_0", PINGPONG_0, 0x69000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8), -1),
-       PP_BLK_DITHER("pingpong_1", PINGPONG_1, 0x6a000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9), -1),
-       PP_BLK_DITHER("pingpong_2", PINGPONG_2, 0x6b000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10), -1),
-       PP_BLK_DITHER("pingpong_3", PINGPONG_3, 0x6c000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11), -1),
-       PP_BLK_DITHER("pingpong_4", PINGPONG_4, 0x6d000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30), -1),
-       PP_BLK_DITHER("pingpong_5", PINGPONG_5, 0x6e000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31), -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x69000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x6a000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x6b000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x6c000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_4", .id = PINGPONG_4,
+               .base = 0x6d000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_5", .id = PINGPONG_5,
+               .base = 0x6e000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_merge_3d_cfg sc8280xp_merge_3d[] = {
index 21a9fa7..e75939e 100644 (file)
@@ -220,30 +220,71 @@ static const struct dpu_dspp_cfg sm8450_dspp[] = {
 };
 
 static const struct dpu_pingpong_cfg sm8450_pp[] = {
-       PP_BLK_DITHER("pingpong_0", PINGPONG_0, 0x69000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK_DITHER("pingpong_1", PINGPONG_1, 0x6a000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
-       PP_BLK_DITHER("pingpong_2", PINGPONG_2, 0x6b000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       -1),
-       PP_BLK_DITHER("pingpong_3", PINGPONG_3, 0x6c000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       -1),
-       PP_BLK_DITHER("pingpong_4", PINGPONG_4, 0x6d000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
-                       -1),
-       PP_BLK_DITHER("pingpong_5", PINGPONG_5, 0x6e000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
-                       -1),
-       PP_BLK_DITHER("pingpong_6", PINGPONG_6, 0x65800, MERGE_3D_3, sc7280_pp_sblk,
-                       -1,
-                       -1),
-       PP_BLK_DITHER("pingpong_7", PINGPONG_7, 0x65c00, MERGE_3D_3, sc7280_pp_sblk,
-                       -1,
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x69000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x6a000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x6b000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x6c000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_4", .id = PINGPONG_4,
+               .base = 0x6d000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_5", .id = PINGPONG_5,
+               .base = 0x6e000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_6", .id = PINGPONG_6,
+               .base = 0x65800, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_3,
+               .intr_done = -1,
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_7", .id = PINGPONG_7,
+               .base = 0x65c00, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_3,
+               .intr_done = -1,
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_merge_3d_cfg sm8450_merge_3d[] = {
index eea51a1..3cc951e 100644 (file)
@@ -234,30 +234,71 @@ static const struct dpu_dspp_cfg sm8550_dspp[] = {
        },
 };
 static const struct dpu_pingpong_cfg sm8550_pp[] = {
-       PP_BLK_DITHER("pingpong_0", PINGPONG_0, 0x69000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
-                       -1),
-       PP_BLK_DITHER("pingpong_1", PINGPONG_1, 0x6a000, MERGE_3D_0, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
-                       -1),
-       PP_BLK_DITHER("pingpong_2", PINGPONG_2, 0x6b000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
-                       -1),
-       PP_BLK_DITHER("pingpong_3", PINGPONG_3, 0x6c000, MERGE_3D_1, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
-                       -1),
-       PP_BLK_DITHER("pingpong_4", PINGPONG_4, 0x6d000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
-                       -1),
-       PP_BLK_DITHER("pingpong_5", PINGPONG_5, 0x6e000, MERGE_3D_2, sc7280_pp_sblk,
-                       DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
-                       -1),
-       PP_BLK_DITHER("pingpong_6", PINGPONG_6, 0x66000, MERGE_3D_3, sc7280_pp_sblk,
-                       -1,
-                       -1),
-       PP_BLK_DITHER("pingpong_7", PINGPONG_7, 0x66400, MERGE_3D_3, sc7280_pp_sblk,
-                       -1,
-                       -1),
+       {
+               .name = "pingpong_0", .id = PINGPONG_0,
+               .base = 0x69000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 8),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_1", .id = PINGPONG_1,
+               .base = 0x6a000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_0,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 9),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_2", .id = PINGPONG_2,
+               .base = 0x6b000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_3", .id = PINGPONG_3,
+               .base = 0x6c000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_1,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_4", .id = PINGPONG_4,
+               .base = 0x6d000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 30),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_5", .id = PINGPONG_5,
+               .base = 0x6e000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_2,
+               .intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 31),
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_6", .id = PINGPONG_6,
+               .base = 0x66000, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_3,
+               .intr_done = -1,
+               .intr_rdptr = -1,
+       }, {
+               .name = "pingpong_7", .id = PINGPONG_7,
+               .base = 0x66400, .len = 0,
+               .features = BIT(DPU_PINGPONG_DITHER),
+               .sblk = &sc7280_pp_sblk,
+               .merge_3d = MERGE_3D_3,
+               .intr_done = -1,
+               .intr_rdptr = -1,
+       },
 };
 
 static const struct dpu_merge_3d_cfg sm8550_merge_3d[] = {
index b1c96cd..5f56d87 100644 (file)
@@ -450,27 +450,6 @@ static const struct dpu_pingpong_sub_blks sc7280_pp_sblk = {
        .len = 0x20, .version = 0x20000},
 };
 
-#define PP_BLK_DITHER(_name, _id, _base, _merge_3d, _sblk, _done, _rdptr) \
-       {\
-       .name = _name, .id = _id, \
-       .base = _base, .len = 0, \
-       .features = BIT(DPU_PINGPONG_DITHER), \
-       .merge_3d = _merge_3d, \
-       .sblk = &_sblk, \
-       .intr_done = _done, \
-       .intr_rdptr = _rdptr, \
-       }
-#define PP_BLK(_name, _id, _base, _features, _merge_3d, _sblk, _done, _rdptr) \
-       {\
-       .name = _name, .id = _id, \
-       .base = _base, .len = 0xd4, \
-       .features = _features, \
-       .merge_3d = _merge_3d, \
-       .sblk = &_sblk, \
-       .intr_done = _done, \
-       .intr_rdptr = _rdptr, \
-       }
-
 /*************************************************************
  * DSC sub blocks config
  *************************************************************/