Skip to content

Commit 4272358

Browse files
author
Mahadevan P
committed
FROMLIST: drm/msm/disp/dpu: add merge3d support for sc7280
Add support for the merge3d block on sc7280 which will allow merge of streams coming from two layer mixers routed to single non DSC interface. This change helps to support larger buffer width which exceeds max_linewidth of 2400. Link:https://lore.kernel.org/all/[email protected]/ Fixes: 591e34a ("drm/msm/disp/dpu1: add support for display for SC7280 target") Signed-off-by: Mahadevan P <[email protected]>
1 parent cc53e4e commit 4272358

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

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

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ static const struct dpu_caps sc7280_dpu_caps = {
1313
.has_dim_layer = true,
1414
.has_idle_pc = true,
1515
.max_linewidth = 2400,
16+
.has_3d_merge = true,
1617
.pixel_ram_size = DEFAULT_PIXEL_RAM_SIZE,
1718
};
1819

@@ -134,17 +135,24 @@ static const struct dpu_pingpong_cfg sc7280_pp[] = {
134135
.name = "pingpong_2", .id = PINGPONG_2,
135136
.base = 0x6b000, .len = 0,
136137
.sblk = &sc7280_pp_sblk,
137-
.merge_3d = 0,
138+
.merge_3d = MERGE_3D_1,
138139
.intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 10),
139140
}, {
140141
.name = "pingpong_3", .id = PINGPONG_3,
141142
.base = 0x6c000, .len = 0,
142143
.sblk = &sc7280_pp_sblk,
143-
.merge_3d = 0,
144+
.merge_3d = MERGE_3D_1,
144145
.intr_done = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR, 11),
145146
},
146147
};
147148

149+
static const struct dpu_merge_3d_cfg sc7280_merge_3d[] = {
150+
{
151+
.name = "merge_3d_1", .id = MERGE_3D_1,
152+
.base = 0x4f000, .len = 0x8,
153+
},
154+
};
155+
148156
/* NOTE: sc7280 only has one DSC hard slice encoder */
149157
static const struct dpu_dsc_cfg sc7280_dsc[] = {
150158
{
@@ -247,6 +255,8 @@ const struct dpu_mdss_cfg dpu_sc7280_cfg = {
247255
.mixer = sc7280_lm,
248256
.pingpong_count = ARRAY_SIZE(sc7280_pp),
249257
.pingpong = sc7280_pp,
258+
.merge_3d_count = ARRAY_SIZE(sc7280_merge_3d),
259+
.merge_3d = sc7280_merge_3d,
250260
.dsc_count = ARRAY_SIZE(sc7280_dsc),
251261
.dsc = sc7280_dsc,
252262
.wb_count = ARRAY_SIZE(sc7280_wb),

0 commit comments

Comments
 (0)