Skip to content

Commit 2d50377

Browse files
shuijingliChun-Kuang Hu
authored andcommitted
drm/mediatek: dp: Add the audio packet flag to mtk_dp_data struct
The audio packet arrangement function is to only arrange audio packets into the Hblanking area. In order to align with the HW default setting of mt8195, this function needs to be turned off. Signed-off-by: Shuijing Li <shuijing.li@mediatek.com> Reviewed-by: CK Hu <ck.hu@mediatek.com> Link: https://patchwork.kernel.org/project/dri-devel/patch/20230822024155.26670-3-shuijing.li@mediatek.com/ Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
1 parent 5799324 commit 2d50377

2 files changed

Lines changed: 19 additions & 0 deletions

File tree

drivers/gpu/drm/mediatek/mtk_dp.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@ struct mtk_dp_data {
141141
unsigned int smc_cmd;
142142
const struct mtk_dp_efuse_fmt *efuse_fmt;
143143
bool audio_supported;
144+
bool audio_pkt_in_hblank_area;
144145
};
145146

146147
static const struct mtk_dp_efuse_fmt mt8195_edp_efuse_fmt[MTK_DP_CAL_MAX] = {
@@ -1394,6 +1395,18 @@ static void mtk_dp_sdp_set_down_cnt_init_in_hblank(struct mtk_dp *mtk_dp)
13941395
SDP_DOWN_CNT_INIT_IN_HBLANK_DP_ENC1_P0_MASK);
13951396
}
13961397

1398+
static void mtk_dp_audio_sample_arrange_disable(struct mtk_dp *mtk_dp)
1399+
{
1400+
/* arrange audio packets into the Hblanking and Vblanking area */
1401+
if (!mtk_dp->data->audio_pkt_in_hblank_area)
1402+
return;
1403+
1404+
mtk_dp_update_bits(mtk_dp, MTK_DP_ENC1_P0_3374, 0,
1405+
SDP_ASP_INSERT_IN_HBLANK_DP_ENC1_P0_MASK);
1406+
mtk_dp_update_bits(mtk_dp, MTK_DP_ENC1_P0_3374, 0,
1407+
SDP_DOWN_ASP_CNT_INIT_DP_ENC1_P0_MASK);
1408+
}
1409+
13971410
static void mtk_dp_setup_tu(struct mtk_dp *mtk_dp)
13981411
{
13991412
u32 sram_read_start = min_t(u32, MTK_DP_TBC_BUF_READ_START_ADDR,
@@ -1403,6 +1416,7 @@ static void mtk_dp_setup_tu(struct mtk_dp *mtk_dp)
14031416
MTK_DP_PIX_PER_ADDR);
14041417
mtk_dp_set_sram_read_start(mtk_dp, sram_read_start);
14051418
mtk_dp_setup_encoder(mtk_dp);
1419+
mtk_dp_audio_sample_arrange_disable(mtk_dp);
14061420
mtk_dp_sdp_set_down_cnt_init_in_hblank(mtk_dp);
14071421
mtk_dp_sdp_set_down_cnt_init(mtk_dp, sram_read_start);
14081422
}

drivers/gpu/drm/mediatek/mtk_dp_reg.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,11 @@
228228
VIDEO_STABLE_CNT_THRD_DP_ENC1_P0 | \
229229
SDP_DP13_EN_DP_ENC1_P0 | \
230230
BS2BS_MODE_DP_ENC1_P0)
231+
232+
#define MTK_DP_ENC1_P0_3374 0x3374
233+
#define SDP_ASP_INSERT_IN_HBLANK_DP_ENC1_P0_MASK BIT(12)
234+
#define SDP_DOWN_ASP_CNT_INIT_DP_ENC1_P0_MASK GENMASK(11, 0)
235+
231236
#define MTK_DP_ENC1_P0_33F4 0x33f4
232237
#define DP_ENC_DUMMY_RW_1_AUDIO_RST_EN BIT(0)
233238
#define DP_ENC_DUMMY_RW_1 BIT(9)

0 commit comments

Comments
 (0)