diff mbox series

[v2,3/5] drm: rcar-du: Add r8a77470 support

Message ID 1539709139-20342-1-git-send-email-fabrizio.castro@bp.renesas.com (mailing list archive)
State Not Applicable
Delegated to: Geert Uytterhoeven
Headers show
Series None | expand

Commit Message

Fabrizio Castro Oct. 16, 2018, 4:58 p.m. UTC
Add RZ/G1C (a.k.a. r8a77470) support to the R-Car DU driver.

Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

---
v1->v2:
* Added flags RCAR_DU_FEATURE_INTERLACED and RCAR_DU_FEATURE_TVM_SYNC
* Reworked comment

 drivers/gpu/drm/rcar-du/rcar_du_drv.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

Comments

Laurent Pinchart Oct. 17, 2018, 6:51 a.m. UTC | #1
Hi Fabrizio,

Thank you for the patch.

On Tuesday, 16 October 2018 19:58:59 EEST Fabrizio Castro wrote:
> Add RZ/G1C (a.k.a. r8a77470) support to the R-Car DU driver.
> 
> Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> 
> ---
> v1->v2:
> * Added flags RCAR_DU_FEATURE_INTERLACED and RCAR_DU_FEATURE_TVM_SYNC
> * Reworked comment

This looks all good, applied to my tree.

>  drivers/gpu/drm/rcar-du/rcar_du_drv.c | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
> 
> diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> b/drivers/gpu/drm/rcar-du/rcar_du_drv.c index 084f58d..d8a02c4 100644
> --- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> +++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> @@ -77,6 +77,33 @@ static const struct rcar_du_device_info
> rzg1_du_r8a7745_info = { },
>  };
> 
> +static const struct rcar_du_device_info rzg1_du_r8a77470_info = {
> +	.gen = 2,
> +	.features = RCAR_DU_FEATURE_CRTC_IRQ_CLOCK
> +		  | RCAR_DU_FEATURE_EXT_CTRL_REGS
> +		  | RCAR_DU_FEATURE_INTERLACED
> +		  | RCAR_DU_FEATURE_TVM_SYNC,
> +	.channels_mask = BIT(1) | BIT(0),
> +	.routes = {
> +		/*
> +		 * R8A77470 has two RGB outputs, one LVDS output, and
> +		 * one (currently unsupported) analog video output
> +		 */
> +		[RCAR_DU_OUTPUT_DPAD0] = {
> +			.possible_crtcs = BIT(0),
> +			.port = 0,
> +		},
> +		[RCAR_DU_OUTPUT_DPAD1] = {
> +			.possible_crtcs = BIT(1),
> +			.port = 1,
> +		},
> +		[RCAR_DU_OUTPUT_LVDS0] = {
> +			.possible_crtcs = BIT(0) | BIT(1),
> +			.port = 2,
> +		},
> +	},
> +};
> +
>  static const struct rcar_du_device_info rcar_du_r8a7779_info = {
>  	.gen = 2,
>  	.features = RCAR_DU_FEATURE_INTERLACED
> @@ -342,6 +369,7 @@ static const struct rcar_du_device_info
> rcar_du_r8a7799x_info = { static const struct of_device_id
> rcar_du_of_table[] = {
>  	{ .compatible = "renesas,du-r8a7743", .data = &rzg1_du_r8a7743_info },
>  	{ .compatible = "renesas,du-r8a7745", .data = &rzg1_du_r8a7745_info },
> +	{ .compatible = "renesas,du-r8a77470", .data = &rzg1_du_r8a77470_info },
>  	{ .compatible = "renesas,du-r8a7779", .data = &rcar_du_r8a7779_info },
>  	{ .compatible = "renesas,du-r8a7790", .data = &rcar_du_r8a7790_info },
>  	{ .compatible = "renesas,du-r8a7791", .data = &rcar_du_r8a7791_info },
Fabrizio Castro Nov. 22, 2018, 4:03 p.m. UTC | #2
Hello Laurent,

> From: linux-renesas-soc-owner@vger.kernel.org <linux-renesas-soc-owner@vger.kernel.org> On Behalf Of Laurent Pinchart
> Sent: 17 October 2018 07:52
> Subject: Re: [PATCH v2 3/5] drm: rcar-du: Add r8a77470 support
>
> Hi Fabrizio,
>
> Thank you for the patch.
>
> On Tuesday, 16 October 2018 19:58:59 EEST Fabrizio Castro wrote:
> > Add RZ/G1C (a.k.a. r8a77470) support to the R-Car DU driver.
> >
> > Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> >
> > ---
> > v1->v2:
> > * Added flags RCAR_DU_FEATURE_INTERLACED and RCAR_DU_FEATURE_TVM_SYNC
> > * Reworked comment
>
> This looks all good, applied to my tree.

It looks like I can't find the patch, which tree is it?

Thanks,
Fab

>
> >  drivers/gpu/drm/rcar-du/rcar_du_drv.c | 28 ++++++++++++++++++++++++++++
> >  1 file changed, 28 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> > b/drivers/gpu/drm/rcar-du/rcar_du_drv.c index 084f58d..d8a02c4 100644
> > --- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> > +++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> > @@ -77,6 +77,33 @@ static const struct rcar_du_device_info
> > rzg1_du_r8a7745_info = { },
> >  };
> >
> > +static const struct rcar_du_device_info rzg1_du_r8a77470_info = {
> > +.gen = 2,
> > +.features = RCAR_DU_FEATURE_CRTC_IRQ_CLOCK
> > +  | RCAR_DU_FEATURE_EXT_CTRL_REGS
> > +  | RCAR_DU_FEATURE_INTERLACED
> > +  | RCAR_DU_FEATURE_TVM_SYNC,
> > +.channels_mask = BIT(1) | BIT(0),
> > +.routes = {
> > +/*
> > + * R8A77470 has two RGB outputs, one LVDS output, and
> > + * one (currently unsupported) analog video output
> > + */
> > +[RCAR_DU_OUTPUT_DPAD0] = {
> > +.possible_crtcs = BIT(0),
> > +.port = 0,
> > +},
> > +[RCAR_DU_OUTPUT_DPAD1] = {
> > +.possible_crtcs = BIT(1),
> > +.port = 1,
> > +},
> > +[RCAR_DU_OUTPUT_LVDS0] = {
> > +.possible_crtcs = BIT(0) | BIT(1),
> > +.port = 2,
> > +},
> > +},
> > +};
> > +
> >  static const struct rcar_du_device_info rcar_du_r8a7779_info = {
> >  .gen = 2,
> >  .features = RCAR_DU_FEATURE_INTERLACED
> > @@ -342,6 +369,7 @@ static const struct rcar_du_device_info
> > rcar_du_r8a7799x_info = { static const struct of_device_id
> > rcar_du_of_table[] = {
> >  { .compatible = "renesas,du-r8a7743", .data = &rzg1_du_r8a7743_info },
> >  { .compatible = "renesas,du-r8a7745", .data = &rzg1_du_r8a7745_info },
> > +{ .compatible = "renesas,du-r8a77470", .data = &rzg1_du_r8a77470_info },
> >  { .compatible = "renesas,du-r8a7779", .data = &rcar_du_r8a7779_info },
> >  { .compatible = "renesas,du-r8a7790", .data = &rcar_du_r8a7790_info },
> >  { .compatible = "renesas,du-r8a7791", .data = &rcar_du_r8a7791_info },
>
>
> --
> Regards,
>
> Laurent Pinchart
>
>




Renesas Electronics Europe Ltd, Dukes Meadow, Millboard Road, Bourne End, Buckinghamshire, SL8 5FH, UK. Registered in England & Wales under Registered No. 04586709.
Laurent Pinchart Nov. 23, 2018, 12:07 p.m. UTC | #3
Hi Fabrizio,

On Thursday, 22 November 2018 18:03:44 EET Fabrizio Castro wrote:
> On 17 October 2018 07:52 Laurent Pinchart wrote:
> > On Tuesday, 16 October 2018 19:58:59 EEST Fabrizio Castro wrote:
> > > Add RZ/G1C (a.k.a. r8a77470) support to the R-Car DU driver.
> >> 
> >> Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
> >> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> >> 
> >> ---
> >> v1->v2:
> >> * Added flags RCAR_DU_FEATURE_INTERLACED and RCAR_DU_FEATURE_TVM_SYNC
> >> * Reworked comment
> > 
> > This looks all good, applied to my tree.
> 
> It looks like I can't find the patch, which tree is it?

The patch can be found in git://linuxtv.org/pinchartl/media.git drm/du/next.

> >>  drivers/gpu/drm/rcar-du/rcar_du_drv.c | 28 ++++++++++++++++++++++++++++
> >>  1 file changed, 28 insertions(+)
> >> 
> >> diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> >> b/drivers/gpu/drm/rcar-du/rcar_du_drv.c index 084f58d..d8a02c4 100644
> >> --- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> >> +++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> >> @@ -77,6 +77,33 @@ static const struct rcar_du_device_info
> >> rzg1_du_r8a7745_info = { },
> >>  };
> >> 
> >> +static const struct rcar_du_device_info rzg1_du_r8a77470_info = {
> >> +.gen = 2,
> >> +.features = RCAR_DU_FEATURE_CRTC_IRQ_CLOCK
> >> +  | RCAR_DU_FEATURE_EXT_CTRL_REGS
> >> +  | RCAR_DU_FEATURE_INTERLACED
> >> +  | RCAR_DU_FEATURE_TVM_SYNC,
> >> +.channels_mask = BIT(1) | BIT(0),
> >> +.routes = {
> >> +/*
> >> + * R8A77470 has two RGB outputs, one LVDS output, and
> >> + * one (currently unsupported) analog video output
> >> + */
> >> +[RCAR_DU_OUTPUT_DPAD0] = {
> >> +.possible_crtcs = BIT(0),
> >> +.port = 0,
> >> +},
> >> +[RCAR_DU_OUTPUT_DPAD1] = {
> >> +.possible_crtcs = BIT(1),
> >> +.port = 1,
> >> +},
> >> +[RCAR_DU_OUTPUT_LVDS0] = {
> >> +.possible_crtcs = BIT(0) | BIT(1),
> >> +.port = 2,
> >> +},
> >> +},
> >> +};
> >> +
> >>  static const struct rcar_du_device_info rcar_du_r8a7779_info = {
> >>  .gen = 2,
> >>  .features = RCAR_DU_FEATURE_INTERLACED
> >> @@ -342,6 +369,7 @@ static const struct rcar_du_device_info
> >> rcar_du_r8a7799x_info = { static const struct of_device_id
> >> rcar_du_of_table[] = {
> >>  { .compatible = "renesas,du-r8a7743", .data = &rzg1_du_r8a7743_info },
> >>  { .compatible = "renesas,du-r8a7745", .data = &rzg1_du_r8a7745_info },
> >> +{ .compatible = "renesas,du-r8a77470", .data = &rzg1_du_r8a77470_info
> >> },
> >>  { .compatible = "renesas,du-r8a7779", .data = &rcar_du_r8a7779_info },
> >>  { .compatible = "renesas,du-r8a7790", .data = &rcar_du_r8a7790_info },
> >>  { .compatible = "renesas,du-r8a7791", .data = &rcar_du_r8a7791_info },
Fabrizio Castro Nov. 23, 2018, 12:32 p.m. UTC | #4
Thank you Laurent.

Cheers,
Fab

> From: linux-renesas-soc-owner@vger.kernel.org <linux-renesas-soc-owner@vger.kernel.org> On Behalf Of Laurent Pinchart
> Sent: 23 November 2018 12:07
> Subject: Re: [PATCH v2 3/5] drm: rcar-du: Add r8a77470 support
>
> Hi Fabrizio,
>
> On Thursday, 22 November 2018 18:03:44 EET Fabrizio Castro wrote:
> > On 17 October 2018 07:52 Laurent Pinchart wrote:
> > > On Tuesday, 16 October 2018 19:58:59 EEST Fabrizio Castro wrote:
> > > > Add RZ/G1C (a.k.a. r8a77470) support to the R-Car DU driver.
> > >>
> > >> Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
> > >> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > >>
> > >> ---
> > >> v1->v2:
> > >> * Added flags RCAR_DU_FEATURE_INTERLACED and RCAR_DU_FEATURE_TVM_SYNC
> > >> * Reworked comment
> > >
> > > This looks all good, applied to my tree.
> >
> > It looks like I can't find the patch, which tree is it?
>
> The patch can be found in git://linuxtv.org/pinchartl/media.git drm/du/next.
>
> > >>  drivers/gpu/drm/rcar-du/rcar_du_drv.c | 28 ++++++++++++++++++++++++++++
> > >>  1 file changed, 28 insertions(+)
> > >>
> > >> diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> > >> b/drivers/gpu/drm/rcar-du/rcar_du_drv.c index 084f58d..d8a02c4 100644
> > >> --- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> > >> +++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> > >> @@ -77,6 +77,33 @@ static const struct rcar_du_device_info
> > >> rzg1_du_r8a7745_info = { },
> > >>  };
> > >>
> > >> +static const struct rcar_du_device_info rzg1_du_r8a77470_info = {
> > >> +.gen = 2,
> > >> +.features = RCAR_DU_FEATURE_CRTC_IRQ_CLOCK
> > >> +  | RCAR_DU_FEATURE_EXT_CTRL_REGS
> > >> +  | RCAR_DU_FEATURE_INTERLACED
> > >> +  | RCAR_DU_FEATURE_TVM_SYNC,
> > >> +.channels_mask = BIT(1) | BIT(0),
> > >> +.routes = {
> > >> +/*
> > >> + * R8A77470 has two RGB outputs, one LVDS output, and
> > >> + * one (currently unsupported) analog video output
> > >> + */
> > >> +[RCAR_DU_OUTPUT_DPAD0] = {
> > >> +.possible_crtcs = BIT(0),
> > >> +.port = 0,
> > >> +},
> > >> +[RCAR_DU_OUTPUT_DPAD1] = {
> > >> +.possible_crtcs = BIT(1),
> > >> +.port = 1,
> > >> +},
> > >> +[RCAR_DU_OUTPUT_LVDS0] = {
> > >> +.possible_crtcs = BIT(0) | BIT(1),
> > >> +.port = 2,
> > >> +},
> > >> +},
> > >> +};
> > >> +
> > >>  static const struct rcar_du_device_info rcar_du_r8a7779_info = {
> > >>  .gen = 2,
> > >>  .features = RCAR_DU_FEATURE_INTERLACED
> > >> @@ -342,6 +369,7 @@ static const struct rcar_du_device_info
> > >> rcar_du_r8a7799x_info = { static const struct of_device_id
> > >> rcar_du_of_table[] = {
> > >>  { .compatible = "renesas,du-r8a7743", .data = &rzg1_du_r8a7743_info },
> > >>  { .compatible = "renesas,du-r8a7745", .data = &rzg1_du_r8a7745_info },
> > >> +{ .compatible = "renesas,du-r8a77470", .data = &rzg1_du_r8a77470_info
> > >> },
> > >>  { .compatible = "renesas,du-r8a7779", .data = &rcar_du_r8a7779_info },
> > >>  { .compatible = "renesas,du-r8a7790", .data = &rcar_du_r8a7790_info },
> > >>  { .compatible = "renesas,du-r8a7791", .data = &rcar_du_r8a7791_info },
>
> --
> Regards,
>
> Laurent Pinchart
>
>




Renesas Electronics Europe Ltd, Dukes Meadow, Millboard Road, Bourne End, Buckinghamshire, SL8 5FH, UK. Registered in England & Wales under Registered No. 04586709.
diff mbox series

Patch

diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
index 084f58d..d8a02c4 100644
--- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
+++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
@@ -77,6 +77,33 @@  static const struct rcar_du_device_info rzg1_du_r8a7745_info = {
 	},
 };
 
+static const struct rcar_du_device_info rzg1_du_r8a77470_info = {
+	.gen = 2,
+	.features = RCAR_DU_FEATURE_CRTC_IRQ_CLOCK
+		  | RCAR_DU_FEATURE_EXT_CTRL_REGS
+		  | RCAR_DU_FEATURE_INTERLACED
+		  | RCAR_DU_FEATURE_TVM_SYNC,
+	.channels_mask = BIT(1) | BIT(0),
+	.routes = {
+		/*
+		 * R8A77470 has two RGB outputs, one LVDS output, and
+		 * one (currently unsupported) analog video output
+		 */
+		[RCAR_DU_OUTPUT_DPAD0] = {
+			.possible_crtcs = BIT(0),
+			.port = 0,
+		},
+		[RCAR_DU_OUTPUT_DPAD1] = {
+			.possible_crtcs = BIT(1),
+			.port = 1,
+		},
+		[RCAR_DU_OUTPUT_LVDS0] = {
+			.possible_crtcs = BIT(0) | BIT(1),
+			.port = 2,
+		},
+	},
+};
+
 static const struct rcar_du_device_info rcar_du_r8a7779_info = {
 	.gen = 2,
 	.features = RCAR_DU_FEATURE_INTERLACED
@@ -342,6 +369,7 @@  static const struct rcar_du_device_info rcar_du_r8a7799x_info = {
 static const struct of_device_id rcar_du_of_table[] = {
 	{ .compatible = "renesas,du-r8a7743", .data = &rzg1_du_r8a7743_info },
 	{ .compatible = "renesas,du-r8a7745", .data = &rzg1_du_r8a7745_info },
+	{ .compatible = "renesas,du-r8a77470", .data = &rzg1_du_r8a77470_info },
 	{ .compatible = "renesas,du-r8a7779", .data = &rcar_du_r8a7779_info },
 	{ .compatible = "renesas,du-r8a7790", .data = &rcar_du_r8a7790_info },
 	{ .compatible = "renesas,du-r8a7791", .data = &rcar_du_r8a7791_info },