mbox series

[0/3] Add mt8188 compatiable for DSI cmd packet control

Message ID 1681366162-4949-1-git-send-email-xinlei.lee@mediatek.com
Headers show
Series Add mt8188 compatiable for DSI cmd packet control | expand

Message

xinlei.lee@mediatek.com April 13, 2023, 6:09 a.m. UTC
From: Xinlei Lee <xinlei.lee@mediatek.com>

Add dt-binding documentation of DSI for MediaTek MT8188 SoC.
Because of the difference between SOC and DSI cmd packet control, for
MT8188, it is necessary to increase the DSI_CMDQ_SIZE control when
sending long packets to initialize the panel. Of course, this will not
affect the sending of short packets.

Base on the branch of linus/master v6.3.

Xinlei Lee (3):
  dt-bindings: display: mediatek: dsi: Add compatible for MediaTek
    MT8188
  drm/mediatek: Add mt8188 dsi compatible to mtk_dsi.c
  drm/mediatek: dsi: Add dsi cmdq_ctl to send panel initial code

 .../display/mediatek/mediatek,dsi.yaml        |  1 +
 drivers/gpu/drm/mediatek/mtk_drm_drv.c        |  2 ++
 drivers/gpu/drm/mediatek/mtk_dsi.c            | 20 +++++++++++++++++++
 3 files changed, 23 insertions(+)

Comments

Matthias Brugger April 13, 2023, 9:02 a.m. UTC | #1
On 13/04/2023 08:09, xinlei.lee@mediatek.com wrote:
> From: Xinlei Lee <xinlei.lee@mediatek.com>
> 
> Add the compatible because there are different definitions for cmdq
> register bit control in mt8188.
> 
> Signed-off-by: Xinlei Lee <xinlei.lee@mediatek.com>
> Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>

Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com>

> ---
>   drivers/gpu/drm/mediatek/mtk_drm_drv.c | 2 ++
>   drivers/gpu/drm/mediatek/mtk_dsi.c     | 8 ++++++++
>   2 files changed, 10 insertions(+)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index a13b36ac03a1..9ba05961479d 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -654,6 +654,8 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
>   	  .data = (void *)MTK_DSI },
>   	{ .compatible = "mediatek,mt8186-dsi",
>   	  .data = (void *)MTK_DSI },
> +	{ .compatible = "mediatek,mt8188-dsi",
> +	  .data = (void *)MTK_DSI },
>   	{ }
>   };
>   
> diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
> index 7d5250351193..500a3054282d 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dsi.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
> @@ -1208,6 +1208,12 @@ static const struct mtk_dsi_driver_data mt8186_dsi_driver_data = {
>   	.has_size_ctl = true,
>   };
>   
> +static const struct mtk_dsi_driver_data mt8188_dsi_driver_data = {
> +	.reg_cmdq_off = 0xd00,
> +	.has_shadow_ctl = true,
> +	.has_size_ctl = true,
> +};
> +
>   static const struct of_device_id mtk_dsi_of_match[] = {
>   	{ .compatible = "mediatek,mt2701-dsi",
>   	  .data = &mt2701_dsi_driver_data },
> @@ -1217,6 +1223,8 @@ static const struct of_device_id mtk_dsi_of_match[] = {
>   	  .data = &mt8183_dsi_driver_data },
>   	{ .compatible = "mediatek,mt8186-dsi",
>   	  .data = &mt8186_dsi_driver_data },
> +	{ .compatible = "mediatek,mt8188-dsi",
> +	  .data = &mt8188_dsi_driver_data },
>   	{ },
>   };
>   MODULE_DEVICE_TABLE(of, mtk_dsi_of_match);