diff mbox series

[v1,07/17] drm/mediatek: add OVL support for MT8195

Message ID 20210707041249.29816-8-jason-jh.lin@mediatek.com (mailing list archive)
State New, archived
Headers show
Series Add MediaTek SoC DRM (vdosys0) support for mt8195 | expand

Commit Message

Jason-JH Lin (林睿祥) July 7, 2021, 4:12 a.m. UTC
Add OVL support for MT8195.

Signed-off-by: jason-jh.lin <jason-jh.lin@mediatek.com>
---
 drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 9 +++++++++
 drivers/gpu/drm/mediatek/mtk_drm_drv.c  | 2 ++
 2 files changed, 11 insertions(+)

Comments

CK Hu (胡俊光) July 7, 2021, 5:03 a.m. UTC | #1
Hi, Jason:

On Wed, 2021-07-07 at 12:12 +0800, jason-jh.lin wrote:
> Add OVL support for MT8195.
> 
> Signed-off-by: jason-jh.lin <jason-jh.lin@mediatek.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 9 +++++++++
>  drivers/gpu/drm/mediatek/mtk_drm_drv.c  | 2 ++
>  2 files changed, 11 insertions(+)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> index 961f87f8d4d1..99c39487026d 100644
> --- a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> +++ b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> @@ -455,6 +455,13 @@ static const struct mtk_disp_ovl_data mt8183_ovl_2l_driver_data = {
>  	.fmt_rgb565_is_0 = true,
>  };
>  
> +static const struct mtk_disp_ovl_data mt8195_ovl_driver_data = {
> +	.addr = DISP_REG_OVL_ADDR_MT8173,
> +	.gmc_bits = 10,
> +	.layer_nr = 4,
> +	.fmt_rgb565_is_0 = true,
> +};

mt8195_ovl_driver_data is identical to mt8183_ovl_driver_data, so remove
mt8195_ovl_driver_data and use mt8183_ovl_driver_data.

> +
>  static const struct of_device_id mtk_disp_ovl_driver_dt_match[] = {
>  	{ .compatible = "mediatek,mt2701-disp-ovl",
>  	  .data = &mt2701_ovl_driver_data},
> @@ -464,6 +471,8 @@ static const struct of_device_id mtk_disp_ovl_driver_dt_match[] = {
>  	  .data = &mt8183_ovl_driver_data},
>  	{ .compatible = "mediatek,mt8183-disp-ovl-2l",
>  	  .data = &mt8183_ovl_2l_driver_data},
> +	{ .compatible = "mediatek,mt8195-disp-ovl",
> +	  .data = &mt8195_ovl_driver_data},

One question, is mediatek,mt8195-disp-ovl identical to
mediatek,mt8183-disp-ovl in hardware function? If so, use the compatible
as

compatible = "mediatek,mt8195-disp-ovl", "mediatek,mt8183-disp-ovl";

And driver just keep "mediatek,mt8183-disp-ovl" and remove
"mediatek,mt8195-disp-ovl".

If the hardware function has some different, just forget this.

Regards,
CK

>  	{},
>  };
>  MODULE_DEVICE_TABLE(of, mtk_disp_ovl_driver_dt_match);
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index 5b7ead493487..65038d5b19cb 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -424,6 +424,8 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
>  	  .data = (void *)MTK_DISP_OVL },
>  	{ .compatible = "mediatek,mt8183-disp-ovl",
>  	  .data = (void *)MTK_DISP_OVL },
> +	{ .compatible = "mediatek,mt8195-disp-ovl",
> +	  .data = (void *)MTK_DISP_OVL },
>  	{ .compatible = "mediatek,mt8183-disp-ovl-2l",
>  	  .data = (void *)MTK_DISP_OVL_2L },
>  	{ .compatible = "mediatek,mt2701-disp-rdma",
Jason-JH Lin (林睿祥) July 10, 2021, 7:05 a.m. UTC | #2
On Wed, 2021-07-07 at 13:03 +0800, CK Hu wrote:
> Hi, Jason:
> 
> On Wed, 2021-07-07 at 12:12 +0800, jason-jh.lin wrote:
> > Add OVL support for MT8195.
> > 
> > Signed-off-by: jason-jh.lin <jason-jh.lin@mediatek.com>
> > ---
> >  drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 9 +++++++++
> >  drivers/gpu/drm/mediatek/mtk_drm_drv.c  | 2 ++
> >  2 files changed, 11 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> > b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> > index 961f87f8d4d1..99c39487026d 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> > @@ -455,6 +455,13 @@ static const struct mtk_disp_ovl_data
> > mt8183_ovl_2l_driver_data = {
> >  	.fmt_rgb565_is_0 = true,
> >  };
> >  
> > +static const struct mtk_disp_ovl_data mt8195_ovl_driver_data = {
> > +	.addr = DISP_REG_OVL_ADDR_MT8173,
> > +	.gmc_bits = 10,
> > +	.layer_nr = 4,
> > +	.fmt_rgb565_is_0 = true,
> > +};
> 
> mt8195_ovl_driver_data is identical to mt8183_ovl_driver_data, so
> remove
> mt8195_ovl_driver_data and use mt8183_ovl_driver_data.
> 
> > +
> >  static const struct of_device_id mtk_disp_ovl_driver_dt_match[] =
> > {
> >  	{ .compatible = "mediatek,mt2701-disp-ovl",
> >  	  .data = &mt2701_ovl_driver_data},
> > @@ -464,6 +471,8 @@ static const struct of_device_id
> > mtk_disp_ovl_driver_dt_match[] = {
> >  	  .data = &mt8183_ovl_driver_data},
> >  	{ .compatible = "mediatek,mt8183-disp-ovl-2l",
> >  	  .data = &mt8183_ovl_2l_driver_data},
> > +	{ .compatible = "mediatek,mt8195-disp-ovl",
> > +	  .data = &mt8195_ovl_driver_data},
> 
> One question, is mediatek,mt8195-disp-ovl identical to
> mediatek,mt8183-disp-ovl in hardware function? If so, use the
> compatible
> as
> 
> compatible = "mediatek,mt8195-disp-ovl", "mediatek,mt8183-disp-ovl";
> 
> And driver just keep "mediatek,mt8183-disp-ovl" and remove
> "mediatek,mt8195-disp-ovl".
> 
> If the hardware function has some different, just forget this.
> 
> Regards,
> CK
> 
Hi CK,

OK, I'll remove this patch at the next version.

Regard,
Jason-JH.Lin
> >  	{},
> >  };
> >  MODULE_DEVICE_TABLE(of, mtk_disp_ovl_driver_dt_match);
> > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > index 5b7ead493487..65038d5b19cb 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > @@ -424,6 +424,8 @@ static const struct of_device_id
> > mtk_ddp_comp_dt_ids[] = {
> >  	  .data = (void *)MTK_DISP_OVL },
> >  	{ .compatible = "mediatek,mt8183-disp-ovl",
> >  	  .data = (void *)MTK_DISP_OVL },
> > +	{ .compatible = "mediatek,mt8195-disp-ovl",
> > +	  .data = (void *)MTK_DISP_OVL },
> >  	{ .compatible = "mediatek,mt8183-disp-ovl-2l",
> >  	  .data = (void *)MTK_DISP_OVL_2L },
> >  	{ .compatible = "mediatek,mt2701-disp-rdma",
> 
>
diff mbox series

Patch

diff --git a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
index 961f87f8d4d1..99c39487026d 100644
--- a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
+++ b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
@@ -455,6 +455,13 @@  static const struct mtk_disp_ovl_data mt8183_ovl_2l_driver_data = {
 	.fmt_rgb565_is_0 = true,
 };
 
+static const struct mtk_disp_ovl_data mt8195_ovl_driver_data = {
+	.addr = DISP_REG_OVL_ADDR_MT8173,
+	.gmc_bits = 10,
+	.layer_nr = 4,
+	.fmt_rgb565_is_0 = true,
+};
+
 static const struct of_device_id mtk_disp_ovl_driver_dt_match[] = {
 	{ .compatible = "mediatek,mt2701-disp-ovl",
 	  .data = &mt2701_ovl_driver_data},
@@ -464,6 +471,8 @@  static const struct of_device_id mtk_disp_ovl_driver_dt_match[] = {
 	  .data = &mt8183_ovl_driver_data},
 	{ .compatible = "mediatek,mt8183-disp-ovl-2l",
 	  .data = &mt8183_ovl_2l_driver_data},
+	{ .compatible = "mediatek,mt8195-disp-ovl",
+	  .data = &mt8195_ovl_driver_data},
 	{},
 };
 MODULE_DEVICE_TABLE(of, mtk_disp_ovl_driver_dt_match);
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index 5b7ead493487..65038d5b19cb 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -424,6 +424,8 @@  static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
 	  .data = (void *)MTK_DISP_OVL },
 	{ .compatible = "mediatek,mt8183-disp-ovl",
 	  .data = (void *)MTK_DISP_OVL },
+	{ .compatible = "mediatek,mt8195-disp-ovl",
+	  .data = (void *)MTK_DISP_OVL },
 	{ .compatible = "mediatek,mt8183-disp-ovl-2l",
 	  .data = (void *)MTK_DISP_OVL_2L },
 	{ .compatible = "mediatek,mt2701-disp-rdma",