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

Matthias Brugger matthias.bgg at gmail.com
Tue Aug 10 08:35:18 UTC 2021



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 at kernel.org> wrote:
>>
>> Hi, Fabien:
>>
>> Fabien Parent <fparent at baylibre.com> 於 2020年10月23日 週五 下午9:31寫道:
>>>
>>> Add the main (DSI) drm display path for MT8167.
>>>
>>> Signed-off-by: Fabien Parent <fparent at baylibre.com>
>>> ---
>>>
>>> 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@baylibre.com/
> 

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
>>>


More information about the dri-devel mailing list