[PATCH v2 11/15] drm/mediatek: add callback function to return OVL layer number

Stu Hsieh stu.hsieh at mediatek.com
Mon Aug 6 11:54:32 UTC 2018


Hi, CK:
On Fri, 2018-08-03 at 13:11 +0800, CK Hu wrote:
> Hi, Stu:
> 
> On Fri, 2018-08-03 at 11:11 +0800, Stu Hsieh wrote:
> > This patch add callback function to return OVL layer number
> > 
> > Signed-off-by: Stu Hsieh <stu.hsieh at mediatek.com>
> > ---
> >  drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 10 ++++++++++
> >  1 file changed, 10 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> > index 978782a77629..a42cfa057f42 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> > @@ -58,6 +58,7 @@
> >  struct mtk_disp_ovl_data {
> >  	unsigned int addr;
> >  	bool fmt_rgb565_is_0;
> > +	unsigned int layer_nr;
> >  };
> >  
> >  /**
> > @@ -132,6 +133,13 @@ static void mtk_ovl_config(struct mtk_ddp_comp *comp, unsigned int w,
> >  	writel(0x0, comp->regs + DISP_REG_OVL_RST);
> >  }
> >  
> > +static unsigned int mtk_ovl_layer_nr(struct mtk_ddp_comp *comp)
> > +{
> > +	struct mtk_disp_ovl *ovl = comp_to_ovl(comp);
> > +
> > +	return ovl->data->layer_nr;
> 
> For now, MT8173, MT2712, MT2701 OVL all has 4 layer, so you could return
> 4 here. Once a SoC OVL has another layer number, then modified the code
> to this statement.
> 
> Regards,
> CK
> 
OK

Regards,
Stu

> > +}
> > +
> >  static void mtk_ovl_layer_on(struct mtk_ddp_comp *comp, unsigned int idx)
> >  {
> >  	unsigned int reg;
> > @@ -221,6 +229,7 @@ static const struct mtk_ddp_comp_funcs mtk_disp_ovl_funcs = {
> >  	.stop = mtk_ovl_stop,
> >  	.enable_vblank = mtk_ovl_enable_vblank,
> >  	.disable_vblank = mtk_ovl_disable_vblank,
> > +	.layer_nr = mtk_ovl_layer_nr,
> >  	.layer_on = mtk_ovl_layer_on,
> >  	.layer_off = mtk_ovl_layer_off,
> >  	.layer_config = mtk_ovl_layer_config,
> > @@ -319,6 +328,7 @@ static const struct mtk_disp_ovl_data mt2701_ovl_driver_data = {
> >  static const struct mtk_disp_ovl_data mt8173_ovl_driver_data = {
> >  	.addr = DISP_REG_OVL_ADDR_MT8173,
> >  	.fmt_rgb565_is_0 = true,
> > +	.layer_nr = 4,
> >  };
> >  
> >  static const struct of_device_id mtk_disp_ovl_driver_dt_match[] = {
> 
> 




More information about the dri-devel mailing list