Skip to content

Commit 9a20f33

Browse files
committed
drm/msm/dpu: provide DSPP and correct LM config for SDM670
On SDM670 the DPU has two DSPP blocks compared to 4 DSPP blocks on SDM845. Currently SDM670 just reuses LMs and DSPPs from SDM845. Define platform-specific configuration for those blocks. Fixes: e140b7e ("drm/msm/dpu: Add hw revision 4.1 (SDM670)") Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Patchwork: https://patchwork.freedesktop.org/patch/629951/ Link: https://lore.kernel.org/r/20241220-dpu-fix-catalog-v2-1-38fa961ea992@linaro.org
1 parent c9261bc commit 9a20f33

1 file changed

Lines changed: 52 additions & 2 deletions

File tree

drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_4_1_sdm670.h

Lines changed: 52 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,54 @@ static const struct dpu_sspp_cfg sdm670_sspp[] = {
6565
},
6666
};
6767

68+
static const struct dpu_lm_cfg sdm670_lm[] = {
69+
{
70+
.name = "lm_0", .id = LM_0,
71+
.base = 0x44000, .len = 0x320,
72+
.features = MIXER_SDM845_MASK,
73+
.sblk = &sdm845_lm_sblk,
74+
.lm_pair = LM_1,
75+
.pingpong = PINGPONG_0,
76+
.dspp = DSPP_0,
77+
}, {
78+
.name = "lm_1", .id = LM_1,
79+
.base = 0x45000, .len = 0x320,
80+
.features = MIXER_SDM845_MASK,
81+
.sblk = &sdm845_lm_sblk,
82+
.lm_pair = LM_0,
83+
.pingpong = PINGPONG_1,
84+
.dspp = DSPP_1,
85+
}, {
86+
.name = "lm_2", .id = LM_2,
87+
.base = 0x46000, .len = 0x320,
88+
.features = MIXER_SDM845_MASK,
89+
.sblk = &sdm845_lm_sblk,
90+
.lm_pair = LM_5,
91+
.pingpong = PINGPONG_2,
92+
}, {
93+
.name = "lm_5", .id = LM_5,
94+
.base = 0x49000, .len = 0x320,
95+
.features = MIXER_SDM845_MASK,
96+
.sblk = &sdm845_lm_sblk,
97+
.lm_pair = LM_2,
98+
.pingpong = PINGPONG_3,
99+
},
100+
};
101+
102+
static const struct dpu_dspp_cfg sdm670_dspp[] = {
103+
{
104+
.name = "dspp_0", .id = DSPP_0,
105+
.base = 0x54000, .len = 0x1800,
106+
.features = DSPP_SC7180_MASK,
107+
.sblk = &sdm845_dspp_sblk,
108+
}, {
109+
.name = "dspp_1", .id = DSPP_1,
110+
.base = 0x56000, .len = 0x1800,
111+
.features = DSPP_SC7180_MASK,
112+
.sblk = &sdm845_dspp_sblk,
113+
},
114+
};
115+
68116
static const struct dpu_dsc_cfg sdm670_dsc[] = {
69117
{
70118
.name = "dsc_0", .id = DSC_0,
@@ -88,8 +136,10 @@ const struct dpu_mdss_cfg dpu_sdm670_cfg = {
88136
.ctl = sdm845_ctl,
89137
.sspp_count = ARRAY_SIZE(sdm670_sspp),
90138
.sspp = sdm670_sspp,
91-
.mixer_count = ARRAY_SIZE(sdm845_lm),
92-
.mixer = sdm845_lm,
139+
.mixer_count = ARRAY_SIZE(sdm670_lm),
140+
.mixer = sdm670_lm,
141+
.dspp_count = ARRAY_SIZE(sdm670_dspp),
142+
.dspp = sdm670_dspp,
93143
.pingpong_count = ARRAY_SIZE(sdm845_pp),
94144
.pingpong = sdm845_pp,
95145
.dsc_count = ARRAY_SIZE(sdm670_dsc),

0 commit comments

Comments
 (0)