|
@@ -128,6 +128,19 @@ static const struct drm_mode_config_funcs mtk_drm_mode_config_funcs = {
|
|
|
.atomic_commit = mtk_atomic_commit,
|
|
|
};
|
|
|
|
|
|
+static const enum mtk_ddp_comp_id mt2701_mtk_ddp_main[] = {
|
|
|
+ DDP_COMPONENT_OVL0,
|
|
|
+ DDP_COMPONENT_RDMA0,
|
|
|
+ DDP_COMPONENT_COLOR0,
|
|
|
+ DDP_COMPONENT_BLS,
|
|
|
+ DDP_COMPONENT_DSI0,
|
|
|
+};
|
|
|
+
|
|
|
+static const enum mtk_ddp_comp_id mt2701_mtk_ddp_ext[] = {
|
|
|
+ DDP_COMPONENT_RDMA1,
|
|
|
+ DDP_COMPONENT_DPI0,
|
|
|
+};
|
|
|
+
|
|
|
static const enum mtk_ddp_comp_id mt8173_mtk_ddp_main[] = {
|
|
|
DDP_COMPONENT_OVL0,
|
|
|
DDP_COMPONENT_COLOR0,
|
|
@@ -147,6 +160,14 @@ static const enum mtk_ddp_comp_id mt8173_mtk_ddp_ext[] = {
|
|
|
DDP_COMPONENT_DPI0,
|
|
|
};
|
|
|
|
|
|
+static const struct mtk_mmsys_driver_data mt2701_mmsys_driver_data = {
|
|
|
+ .main_path = mt2701_mtk_ddp_main,
|
|
|
+ .main_len = ARRAY_SIZE(mt2701_mtk_ddp_main),
|
|
|
+ .ext_path = mt2701_mtk_ddp_ext,
|
|
|
+ .ext_len = ARRAY_SIZE(mt2701_mtk_ddp_ext),
|
|
|
+ .shadow_register = true,
|
|
|
+};
|
|
|
+
|
|
|
static const struct mtk_mmsys_driver_data mt8173_mmsys_driver_data = {
|
|
|
.main_path = mt8173_mtk_ddp_main,
|
|
|
.main_len = ARRAY_SIZE(mt8173_mtk_ddp_main),
|
|
@@ -337,16 +358,22 @@ static const struct component_master_ops mtk_drm_ops = {
|
|
|
};
|
|
|
|
|
|
static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
|
|
|
+ { .compatible = "mediatek,mt2701-disp-ovl", .data = (void *)MTK_DISP_OVL },
|
|
|
{ .compatible = "mediatek,mt8173-disp-ovl", .data = (void *)MTK_DISP_OVL },
|
|
|
+ { .compatible = "mediatek,mt2701-disp-rdma", .data = (void *)MTK_DISP_RDMA },
|
|
|
{ .compatible = "mediatek,mt8173-disp-rdma", .data = (void *)MTK_DISP_RDMA },
|
|
|
{ .compatible = "mediatek,mt8173-disp-wdma", .data = (void *)MTK_DISP_WDMA },
|
|
|
+ { .compatible = "mediatek,mt2701-disp-color", .data = (void *)MTK_DISP_COLOR },
|
|
|
{ .compatible = "mediatek,mt8173-disp-color", .data = (void *)MTK_DISP_COLOR },
|
|
|
{ .compatible = "mediatek,mt8173-disp-aal", .data = (void *)MTK_DISP_AAL},
|
|
|
{ .compatible = "mediatek,mt8173-disp-gamma", .data = (void *)MTK_DISP_GAMMA, },
|
|
|
{ .compatible = "mediatek,mt8173-disp-ufoe", .data = (void *)MTK_DISP_UFOE },
|
|
|
+ { .compatible = "mediatek,mt2701-dsi", .data = (void *)MTK_DSI },
|
|
|
{ .compatible = "mediatek,mt8173-dsi", .data = (void *)MTK_DSI },
|
|
|
{ .compatible = "mediatek,mt8173-dpi", .data = (void *)MTK_DPI },
|
|
|
+ { .compatible = "mediatek,mt2701-disp-mutex", .data = (void *)MTK_DISP_MUTEX },
|
|
|
{ .compatible = "mediatek,mt8173-disp-mutex", .data = (void *)MTK_DISP_MUTEX },
|
|
|
+ { .compatible = "mediatek,mt2701-disp-pwm", .data = (void *)MTK_DISP_BLS },
|
|
|
{ .compatible = "mediatek,mt8173-disp-pwm", .data = (void *)MTK_DISP_PWM },
|
|
|
{ .compatible = "mediatek,mt8173-disp-od", .data = (void *)MTK_DISP_OD },
|
|
|
{ }
|
|
@@ -520,6 +547,8 @@ static SIMPLE_DEV_PM_OPS(mtk_drm_pm_ops, mtk_drm_sys_suspend,
|
|
|
mtk_drm_sys_resume);
|
|
|
|
|
|
static const struct of_device_id mtk_drm_of_ids[] = {
|
|
|
+ { .compatible = "mediatek,mt2701-mmsys",
|
|
|
+ .data = &mt2701_mmsys_driver_data},
|
|
|
{ .compatible = "mediatek,mt8173-mmsys",
|
|
|
.data = &mt8173_mmsys_driver_data},
|
|
|
{ }
|