Re: [PATCH v2 5/5] drm/mediatek: Add support for main DDP path on MT8167

From: Matthias Brugger
Date: Tue Aug 10 2021 - 04:35:26 EST




On 27/10/2020 17:08, Fabien Parent wrote:
> Hi Chun-Kuang,
>
> On Fri, Oct 23, 2020 at 5:52 PM Chun-Kuang Hu <chunkuang.hu@xxxxxxxxxx> wrote:
>>
>> Hi, Fabien:
>>
>> Fabien Parent <fparent@xxxxxxxxxxxx> 於 2020年10月23日 週五 下午9:31寫道:
>>>
>>> Add the main (DSI) drm display path for MT8167.
>>>
>>> Signed-off-by: Fabien Parent <fparent@xxxxxxxxxxxx>
>>> ---
>>>
>>> Changelog:
>>>
>>> V2: No change
>>>
>>> drivers/gpu/drm/mediatek/mtk_drm_drv.c | 38 ++++++++++++++++++++++++++
>>> 1 file changed, 38 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> index 59c85c63b7cc..3952435093fe 100644
>>> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> @@ -112,6 +112,17 @@ static const enum mtk_ddp_comp_id mt2712_mtk_ddp_third[] = {
>>> DDP_COMPONENT_PWM2,
>>> };
>>>
>>> +static enum mtk_ddp_comp_id mt8167_mtk_ddp_main[] = {
>>> + DDP_COMPONENT_OVL0,
>>> + DDP_COMPONENT_COLOR0,
>>> + DDP_COMPONENT_CCORR,
>>> + DDP_COMPONENT_AAL0,
>>> + DDP_COMPONENT_GAMMA,
>>> + DDP_COMPONENT_DITHER,
>>> + DDP_COMPONENT_RDMA0,
>>> + DDP_COMPONENT_DSI0,
>>> +};
>>> +
>>> static const enum mtk_ddp_comp_id mt8173_mtk_ddp_main[] = {
>>> DDP_COMPONENT_OVL0,
>>> DDP_COMPONENT_COLOR0,
>>> @@ -163,6 +174,11 @@ static const struct mtk_mmsys_driver_data mt8173_mmsys_driver_data = {
>>> .ext_len = ARRAY_SIZE(mt8173_mtk_ddp_ext),
>>> };
>>>
>>> +static const struct mtk_mmsys_driver_data mt8167_mmsys_driver_data = {
>>> + .main_path = mt8167_mtk_ddp_main,
>>> + .main_len = ARRAY_SIZE(mt8167_mtk_ddp_main),
>>> +};
>>> +
>>> static int mtk_drm_kms_init(struct drm_device *drm)
>>> {
>>> struct mtk_drm_private *private = drm->dev_private;
>>> @@ -401,26 +417,42 @@ 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,mt8167-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,mt8167-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,mt8167-disp-ccorr",
>>> + .data = (void *)MTK_DISP_CCORR },
>>> { .compatible = "mediatek,mt2701-disp-color",
>>> .data = (void *)MTK_DISP_COLOR },
>>> + { .compatible = "mediatek,mt8167-disp-color",
>>> + .data = (void *)MTK_DISP_COLOR },
>>> { .compatible = "mediatek,mt8173-disp-color",
>>> .data = (void *)MTK_DISP_COLOR },
>>> + { .compatible = "mediatek,mt8167-disp-aal",
>>> + .data = (void *)MTK_DISP_AAL},
>>> { .compatible = "mediatek,mt8173-disp-aal",
>>> .data = (void *)MTK_DISP_AAL},
>>> + { .compatible = "mediatek,mt8167-disp-gamma",
>>> + .data = (void *)MTK_DISP_GAMMA, },
>>> { .compatible = "mediatek,mt8173-disp-gamma",
>>> .data = (void *)MTK_DISP_GAMMA, },
>>> + { .compatible = "mediatek,mt8167-disp-dither",
>>> + .data = (void *)MTK_DISP_DITHER },
>>> { .compatible = "mediatek,mt8173-disp-ufoe",
>>> .data = (void *)MTK_DISP_UFOE },
>>> { .compatible = "mediatek,mt2701-dsi",
>>> .data = (void *)MTK_DSI },
>>> + { .compatible = "mediatek,mt8167-dsi",
>>> + .data = (void *)MTK_DSI },
>>> { .compatible = "mediatek,mt8173-dsi",
>>> .data = (void *)MTK_DSI },
>>> { .compatible = "mediatek,mt2701-dpi",
>>> @@ -431,10 +463,14 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
>>> .data = (void *)MTK_DISP_MUTEX },
>>> { .compatible = "mediatek,mt2712-disp-mutex",
>>> .data = (void *)MTK_DISP_MUTEX },
>>> + { .compatible = "mediatek,mt8167-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,mt8167-disp-pwm",
>>> + .data = (void *)MTK_DISP_PWM },
>>> { .compatible = "mediatek,mt8173-disp-pwm",
>>> .data = (void *)MTK_DISP_PWM },
>>> { .compatible = "mediatek,mt8173-disp-od",
>>> @@ -449,6 +485,8 @@ static const struct of_device_id mtk_drm_of_ids[] = {
>>> .data = &mt7623_mmsys_driver_data},
>>> { .compatible = "mediatek,mt2712-mmsys",
>>> .data = &mt2712_mmsys_driver_data},
>>> + { .compatible = "mediatek,mt8167-mmsys",
>>
>> This patch looks good to me, but it depend on another patch which
>> define the compatible "mediatek,mt8167-mmsys". Where is that patch?
>
> You can find the patch there:
> https://patchwork.kernel.org/project/linux-mediatek/patch/20201027160631.608503-2-fparent@xxxxxxxxxxxx/
>

Driver is upstream since v5.13 with:
e7be7853ab1b ("dt-bindings: mediatek: mmsys: add mt8167 binding")

060f7875bd23 ("soc: mediatek: mmsys: Add support for MT8167 SoC")


Regards,
Matthias

>>
>> Regards,
>> Chun-Kuang.
>>
>>> + .data = &mt8167_mmsys_driver_data},
>>> { .compatible = "mediatek,mt8173-mmsys",
>>> .data = &mt8173_mmsys_driver_data},
>>> { }
>>> --
>>> 2.28.0
>>>