drm/mediatek: add dpi driver for mt2701 and mt7623
This patch adds dpi dirver suppot for both mt2701 and mt7623. And also support other (existing or future) chips that use the same binding and driver. Signed-off-by: chunhui dai <chunhui.dai@mediatek.com> Signed-off-by: CK Hu <ck.hu@mediatek.com>
This commit is contained in:
parent
bcc97daee6
commit
d08b5ab972
@ -659,11 +659,29 @@ static unsigned int mt8173_calculate_factor(int clock)
|
||||
return 3 << 1;
|
||||
}
|
||||
|
||||
static unsigned int mt2701_calculate_factor(int clock)
|
||||
{
|
||||
if (clock <= 64000)
|
||||
return 16;
|
||||
else if (clock <= 128000)
|
||||
return 8;
|
||||
else if (clock <= 256000)
|
||||
return 4;
|
||||
else
|
||||
return 2;
|
||||
}
|
||||
|
||||
static const struct mtk_dpi_conf mt8173_conf = {
|
||||
.cal_factor = mt8173_calculate_factor,
|
||||
.reg_h_fre_con = 0xe0,
|
||||
};
|
||||
|
||||
static const struct mtk_dpi_conf mt2701_conf = {
|
||||
.cal_factor = mt2701_calculate_factor,
|
||||
.reg_h_fre_con = 0xb0,
|
||||
.edge_sel_en = true,
|
||||
};
|
||||
|
||||
static int mtk_dpi_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@ -753,6 +771,9 @@ static int mtk_dpi_remove(struct platform_device *pdev)
|
||||
}
|
||||
|
||||
static const struct of_device_id mtk_dpi_of_ids[] = {
|
||||
{ .compatible = "mediatek,mt2701-dpi",
|
||||
.data = &mt2701_conf,
|
||||
},
|
||||
{ .compatible = "mediatek,mt8173-dpi",
|
||||
.data = &mt8173_conf,
|
||||
},
|
||||
|
@ -424,6 +424,8 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
|
||||
.data = (void *)MTK_DSI },
|
||||
{ .compatible = "mediatek,mt8173-dsi",
|
||||
.data = (void *)MTK_DSI },
|
||||
{ .compatible = "mediatek,mt2701-dpi",
|
||||
.data = (void *)MTK_DPI },
|
||||
{ .compatible = "mediatek,mt8173-dpi",
|
||||
.data = (void *)MTK_DPI },
|
||||
{ .compatible = "mediatek,mt2701-disp-mutex",
|
||||
|
Loading…
x
Reference in New Issue
Block a user