linux-renesas-soc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] iwg22d-sodimm: enable RGB LCD panel
@ 2020-01-29 18:40 Marian-Cristian Rotariu
  2020-01-29 18:40 ` [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable " Marian-Cristian Rotariu
  2020-01-29 18:40 ` [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension board Marian-Cristian Rotariu
  0 siblings, 2 replies; 7+ messages in thread
From: Marian-Cristian Rotariu @ 2020-01-29 18:40 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Chris Paterson, prabhakar.mahadev-lad.rj, Marian-Cristian Rotariu

This particular BSP, iWave-G22D, can be shipped in two variants, one with
a small RGB LCD integrated, called Generic SODIMM Development Platform and
another one that uses an RZ/G1E HDMI Add On Module. Both of the variants
are using the same RGB LCD connector.

The two variants can be viewed at the following links:
https://www.iwavesystems.com/rz-g1e-sodimm-development-kit.html
https://mp.renesas.com/en-us/contents/iW-RainboW-G22D-RZG1E_SODIMMDevelopmentPlatform-QuickStartGuide-REL1.0.pdf

The variant with the RZ/G1E HDMI Add On Module has already been supported 
in upstream. This patch-set adds support for the other variant, with the
small RGB LCD.

The RGB LCD driver was submitted upstream via dri-devel list and is
currently under review:
https://patchwork.kernel.org/project/dri-devel/list/?series=234621

Marian-Cristian Rotariu (2):
  ARM: dts: iwg22d-sodimm: enable LCD panel
  ARM: dts: iwg22d-sodimm: disable lcd for extension board

 .../arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts | 13 +++++
 arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts        | 60 ++++++++++++++++++++++
 2 files changed, 73 insertions(+)

-- 
2.7.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable LCD panel
  2020-01-29 18:40 [PATCH 0/2] iwg22d-sodimm: enable RGB LCD panel Marian-Cristian Rotariu
@ 2020-01-29 18:40 ` Marian-Cristian Rotariu
  2020-03-02 13:39   ` Geert Uytterhoeven
  2020-01-29 18:40 ` [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension board Marian-Cristian Rotariu
  1 sibling, 1 reply; 7+ messages in thread
From: Marian-Cristian Rotariu @ 2020-01-29 18:40 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Chris Paterson, prabhakar.mahadev-lad.rj, Marian-Cristian Rotariu

On the Generic SODIMM Development Platform there is an RGB LCD panel
directly connected to the DU output. It uses the TPU0 as backlight, one
GPIO pull-up configuration for power enable, R[2:7], G[2:7], B[2:7],
VSYNC, HSYNC, DU0_DISP and, DU0_CLK as inputs.

There is no encoder between the DU and the panel, therefore the default
connector driver is used.

Signed-off-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
---
 arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts | 60 +++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
index ce6603b..878113a 100644
--- a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
+++ b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
@@ -79,6 +79,52 @@
 		states = <3300000 1
 			  1800000 0>;
 	};
+
+	vccq_panel: regulator-vccq-panel {
+		compatible = "regulator-fixed";
+		regulator-name = "Panel VccQ";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		gpio = <&gpio1 13 GPIO_ACTIVE_LOW>;
+		enable-active-high;
+	};
+
+	backlight {
+		compatible = "pwm-backlight";
+		pwms = <&tpu 3 5000000 GPIO_ACTIVE_LOW>;
+		brightness-levels = <0 4 8 16 32 64 128 255>;
+		default-brightness-level = <7>;
+		pinctrl-0 = <&backlight_pins>;
+		pinctrl-names = "default";
+	};
+
+	lcd {
+		compatible = "edt,etm043080dh6gp", "simple-panel";
+		power-supply = <&vccq_panel>;
+
+		ports {
+			port@0 {
+				lcd_in: endpoint {
+					remote-endpoint = <&du_out_rgb0>;
+				};
+			};
+		};
+	};
+};
+
+&du {
+	pinctrl-0 = <&du0_pins>;
+	pinctrl-names = "default";
+
+	status = "okay";
+
+	ports {
+		port@0 {
+			endpoint {
+				remote-endpoint = <&lcd_in>;
+			};
+		};
+	};
 };
 
 &avb {
@@ -150,11 +196,21 @@
 		function = "avb";
 	};
 
+	backlight_pins: backlight {
+		renesas,groups = "tpu_to3";
+		renesas,function = "tpu";
+	};
+
 	can0_pins: can0 {
 		groups = "can0_data";
 		function = "can0";
 	};
 
+	du0_pins: du0 {
+		renesas,groups = "du0_rgb666", "du0_sync", "du0_disp", "du0_clk0_out";
+		renesas,function = "du0";
+	};
+
 	hscif1_pins: hscif1 {
 		groups = "hscif1_data", "hscif1_ctrl";
 		function = "hscif1";
@@ -230,6 +286,10 @@
 	shared-pin;
 };
 
+&tpu {
+	status = "okay";
+};
+
 &usbphy {
 	status = "okay";
 };
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension board
  2020-01-29 18:40 [PATCH 0/2] iwg22d-sodimm: enable RGB LCD panel Marian-Cristian Rotariu
  2020-01-29 18:40 ` [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable " Marian-Cristian Rotariu
@ 2020-01-29 18:40 ` Marian-Cristian Rotariu
  2020-03-02 13:49   ` Geert Uytterhoeven
  1 sibling, 1 reply; 7+ messages in thread
From: Marian-Cristian Rotariu @ 2020-01-29 18:40 UTC (permalink / raw)
  To: linux-renesas-soc
  Cc: Chris Paterson, prabhakar.mahadev-lad.rj, Marian-Cristian Rotariu

The two variants of the iW-G22D should be mutually exclusive, therefore
this patch disables the RGB LCD display when the HDMI extension board is
used.

Signed-off-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com>
---
 arch/arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts | 13 +++++++++++++
 arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts         |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts
index 2aeebfc..cb76469 100644
--- a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts
+++ b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts
@@ -108,6 +108,19 @@
 	};
 };
 
+&lcd_panel {
+	status = "disabled";
+
+	/* null reference to get rid of the dtc warning */
+	ports {
+		port@0 {
+			endpoint {
+				remote-endpoint = <0>;
+			};
+		};
+	};
+};
+
 &pfc {
 	can1_pins: can1 {
 		groups = "can1_data_b";
diff --git a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
index 878113a..444adc6 100644
--- a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
+++ b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
@@ -98,7 +98,7 @@
 		pinctrl-names = "default";
 	};
 
-	lcd {
+	lcd_panel: lcd {
 		compatible = "edt,etm043080dh6gp", "simple-panel";
 		power-supply = <&vccq_panel>;
 
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable LCD panel
  2020-01-29 18:40 ` [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable " Marian-Cristian Rotariu
@ 2020-03-02 13:39   ` Geert Uytterhoeven
  2020-03-03 10:08     ` Marian-Cristian Rotariu
  0 siblings, 1 reply; 7+ messages in thread
From: Geert Uytterhoeven @ 2020-03-02 13:39 UTC (permalink / raw)
  To: Marian-Cristian Rotariu; +Cc: Linux-Renesas, Chris Paterson, Lad, Prabhakar

Hi Marian-Cristian,

On Wed, Jan 29, 2020 at 7:58 PM Marian-Cristian Rotariu
<marian-cristian.rotariu.rb@bp.renesas.com> wrote:
> On the Generic SODIMM Development Platform there is an RGB LCD panel
> directly connected to the DU output. It uses the TPU0 as backlight, one
> GPIO pull-up configuration for power enable, R[2:7], G[2:7], B[2:7],
> VSYNC, HSYNC, DU0_DISP and, DU0_CLK as inputs.
>
> There is no encoder between the DU and the panel, therefore the default
> connector driver is used.
>
> Signed-off-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com>
> Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>

Thanks for your patch!

> --- a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
> +++ b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
> @@ -79,6 +79,52 @@
>                 states = <3300000 1
>                           1800000 0>;
>         };
> +
> +       vccq_panel: regulator-vccq-panel {
> +               compatible = "regulator-fixed";
> +               regulator-name = "Panel VccQ";
> +               regulator-min-microvolt = <3300000>;
> +               regulator-max-microvolt = <3300000>;
> +               gpio = <&gpio1 13 GPIO_ACTIVE_LOW>;
> +               enable-active-high;
> +       };
> +
> +       backlight {
> +               compatible = "pwm-backlight";
> +               pwms = <&tpu 3 5000000 GPIO_ACTIVE_LOW>;
> +               brightness-levels = <0 4 8 16 32 64 128 255>;
> +               default-brightness-level = <7>;
> +               pinctrl-0 = <&backlight_pins>;
> +               pinctrl-names = "default";
> +       };
> +
> +       lcd {
> +               compatible = "edt,etm043080dh6gp", "simple-panel";

According to the latest panel-simple.yaml, the "simple-panel" should be
dropped...

> +               power-supply = <&vccq_panel>;
> +
> +               ports {
> +                       port@0 {
> +                               lcd_in: endpoint {
> +                                       remote-endpoint = <&du_out_rgb0>;
> +                               };
> +                       };
> +               };

... and there should only be a single "port".

> +       };
> +};
> +
> +&du {
> +       pinctrl-0 = <&du0_pins>;
> +       pinctrl-names = "default";
> +
> +       status = "okay";
> +
> +       ports {
> +               port@0 {
> +                       endpoint {
> +                               remote-endpoint = <&lcd_in>;
> +                       };
> +               };
> +       };
>  };
>
>  &avb {
> @@ -150,11 +196,21 @@
>                 function = "avb";
>         };
>
> +       backlight_pins: backlight {
> +               renesas,groups = "tpu_to3";

According to my schematics, DISP_BL_GPIO is connected to TPUTO3_C(GP0_21),
so this should be "tpu_to3_c".

> +               renesas,function = "tpu";
> +       };
> +
>         can0_pins: can0 {
>                 groups = "can0_data";
>                 function = "can0";
>         };
>
> +       du0_pins: du0 {
> +               renesas,groups = "du0_rgb666", "du0_sync", "du0_disp", "du0_clk0_out";
> +               renesas,function = "du0";
> +       };
> +
>         hscif1_pins: hscif1 {
>                 groups = "hscif1_data", "hscif1_ctrl";
>                 function = "hscif1";

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension board
  2020-01-29 18:40 ` [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension board Marian-Cristian Rotariu
@ 2020-03-02 13:49   ` Geert Uytterhoeven
  2020-03-03 10:09     ` Marian-Cristian Rotariu
  0 siblings, 1 reply; 7+ messages in thread
From: Geert Uytterhoeven @ 2020-03-02 13:49 UTC (permalink / raw)
  To: Marian-Cristian Rotariu; +Cc: Linux-Renesas, Chris Paterson, Lad, Prabhakar

Hi Marian-Cristian,

On Wed, Jan 29, 2020 at 7:58 PM Marian-Cristian Rotariu
<marian-cristian.rotariu.rb@bp.renesas.com> wrote:
> The two variants of the iW-G22D should be mutually exclusive, therefore
> this patch disables the RGB LCD display when the HDMI extension board is
> used.
>
> Signed-off-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com>

Shouldn't this be merged with the previous patch, to avoid bisection
failures?

> --- a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts
> +++ b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm-dbhd-ca.dts
> @@ -108,6 +108,19 @@
>         };
>  };
>
> +&lcd_panel {
> +       status = "disabled";
> +
> +       /* null reference to get rid of the dtc warning */
> +       ports {
> +               port@0 {
> +                       endpoint {
> +                               remote-endpoint = <0>;
> +                       };
> +               };
> +       };
> +};
> +
>  &pfc {
>         can1_pins: can1 {
>                 groups = "can1_data_b";
> diff --git a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
> index 878113a..444adc6 100644
> --- a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
> +++ b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
> @@ -98,7 +98,7 @@
>                 pinctrl-names = "default";
>         };
>
> -       lcd {
> +       lcd_panel: lcd {
>                 compatible = "edt,etm043080dh6gp", "simple-panel";
>                 power-supply = <&vccq_panel>;

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable LCD panel
  2020-03-02 13:39   ` Geert Uytterhoeven
@ 2020-03-03 10:08     ` Marian-Cristian Rotariu
  0 siblings, 0 replies; 7+ messages in thread
From: Marian-Cristian Rotariu @ 2020-03-03 10:08 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Linux-Renesas, Chris Paterson, Prabhakar Mahadev Lad

Hi Geert,

Thank you for your review!

> -----Original Message-----
> From: Geert Uytterhoeven <geert@linux-m68k.org>
> Sent: 02 March 2020 13:40
> To: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com>
> Cc: Linux-Renesas <linux-renesas-soc@vger.kernel.org>; Chris Paterson
> <Chris.Paterson2@renesas.com>; Prabhakar Mahadev Lad
> <prabhakar.mahadev-lad.rj@bp.renesas.com>
> Subject: Re: [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable LCD panel
> 
> Hi Marian-Cristian,
> 
> On Wed, Jan 29, 2020 at 7:58 PM Marian-Cristian Rotariu <marian-
> cristian.rotariu.rb@bp.renesas.com> wrote:
> > On the Generic SODIMM Development Platform there is an RGB LCD panel
> > directly connected to the DU output. It uses the TPU0 as backlight,
> > one GPIO pull-up configuration for power enable, R[2:7], G[2:7],
> > B[2:7], VSYNC, HSYNC, DU0_DISP and, DU0_CLK as inputs.
> >
> > There is no encoder between the DU and the panel, therefore the
> > default connector driver is used.
> >
> > Signed-off-by: Marian-Cristian Rotariu
> > <marian-cristian.rotariu.rb@bp.renesas.com>
> > Reviewed-by: Lad Prabhakar <prabhakar.mahadev-
> lad.rj@bp.renesas.com>
> 
> Thanks for your patch!
> 
> > --- a/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
> > +++ b/arch/arm/boot/dts/r8a7745-iwg22d-sodimm.dts
> > @@ -79,6 +79,52 @@
> >                 states = <3300000 1
> >                           1800000 0>;
> >         };
> > +
> > +       vccq_panel: regulator-vccq-panel {
> > +               compatible = "regulator-fixed";
> > +               regulator-name = "Panel VccQ";
> > +               regulator-min-microvolt = <3300000>;
> > +               regulator-max-microvolt = <3300000>;
> > +               gpio = <&gpio1 13 GPIO_ACTIVE_LOW>;
> > +               enable-active-high;
> > +       };
> > +
> > +       backlight {
> > +               compatible = "pwm-backlight";
> > +               pwms = <&tpu 3 5000000 GPIO_ACTIVE_LOW>;
> > +               brightness-levels = <0 4 8 16 32 64 128 255>;
> > +               default-brightness-level = <7>;
> > +               pinctrl-0 = <&backlight_pins>;
> > +               pinctrl-names = "default";
> > +       };
> > +
> > +       lcd {
> > +               compatible = "edt,etm043080dh6gp", "simple-panel";
> 
> According to the latest panel-simple.yaml, the "simple-panel" should be
> dropped...
I will drop "simple-panel" in v2.

> 
> > +               power-supply = <&vccq_panel>;
> > +
> > +               ports {
> > +                       port@0 {
> > +                               lcd_in: endpoint {
> > +                                       remote-endpoint = <&du_out_rgb0>;
> > +                               };
> > +                       };
> > +               };
> 
> ... and there should only be a single "port".
Indeed, I will fix it.

> 
> > +       };
> > +};
> > +
> > +&du {
> > +       pinctrl-0 = <&du0_pins>;
> > +       pinctrl-names = "default";
> > +
> > +       status = "okay";
> > +
> > +       ports {
> > +               port@0 {
> > +                       endpoint {
> > +                               remote-endpoint = <&lcd_in>;
> > +                       };
> > +               };
> > +       };
> >  };
> >
> >  &avb {
> > @@ -150,11 +196,21 @@
> >                 function = "avb";
> >         };
> >
> > +       backlight_pins: backlight {
> > +               renesas,groups = "tpu_to3";
> 
> According to my schematics, DISP_BL_GPIO is connected to
> TPUTO3_C(GP0_21), so this should be "tpu_to3_c".

This is a rather big mistake as I did not test the brightness of the panel.
I have now retested the v2 patch and the various level of brightness
work fine. I will send the v2 in a bit.

Best regards,
Marian

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension board
  2020-03-02 13:49   ` Geert Uytterhoeven
@ 2020-03-03 10:09     ` Marian-Cristian Rotariu
  0 siblings, 0 replies; 7+ messages in thread
From: Marian-Cristian Rotariu @ 2020-03-03 10:09 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Linux-Renesas, Chris Paterson, Prabhakar Mahadev Lad

Hi Geert,

> -----Original Message-----
> From: linux-renesas-soc-owner@vger.kernel.org <linux-renesas-soc-
> owner@vger.kernel.org> On Behalf Of Geert Uytterhoeven
> Sent: 02 March 2020 13:50
> To: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com>
> Cc: Linux-Renesas <linux-renesas-soc@vger.kernel.org>; Chris Paterson
> <Chris.Paterson2@renesas.com>; Prabhakar Mahadev Lad
> <prabhakar.mahadev-lad.rj@bp.renesas.com>
> Subject: Re: [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension
> board
> 
> Hi Marian-Cristian,
> 
> On Wed, Jan 29, 2020 at 7:58 PM Marian-Cristian Rotariu <marian-
> cristian.rotariu.rb@bp.renesas.com> wrote:
> > The two variants of the iW-G22D should be mutually exclusive,
> > therefore this patch disables the RGB LCD display when the HDMI
> > extension board is used.
> >
> > Signed-off-by: Marian-Cristian Rotariu
> > <marian-cristian.rotariu.rb@bp.renesas.com>
> 
> Shouldn't this be merged with the previous patch, to avoid bisection failures?

Ok, I will do that. 

Best regards,
Marian

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-03-03 10:09 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-29 18:40 [PATCH 0/2] iwg22d-sodimm: enable RGB LCD panel Marian-Cristian Rotariu
2020-01-29 18:40 ` [PATCH 1/2] ARM: dts: iwg22d-sodimm: enable " Marian-Cristian Rotariu
2020-03-02 13:39   ` Geert Uytterhoeven
2020-03-03 10:08     ` Marian-Cristian Rotariu
2020-01-29 18:40 ` [PATCH 2/2] ARM: dts: iwg22d-sodimm: disable lcd for extension board Marian-Cristian Rotariu
2020-03-02 13:49   ` Geert Uytterhoeven
2020-03-03 10:09     ` Marian-Cristian Rotariu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).