[v3,RESEND] display: panel: Add AUO g070vvn01 display support (800x480)

Message ID 20180514190849.18723-1-lukma@denx.de
State Not Applicable
Headers show
Series
  • [v3,RESEND] display: panel: Add AUO g070vvn01 display support (800x480)
Related show

Commit Message

Lukasz Majewski May 14, 2018, 7:08 p.m.
This commit adds support for AUO's 7.0" display.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Rob Herring <robh@kernel.org>

---
Changes for v3:
- Remove not used 'bus-format-override = "rgb565";' property

Changes for v2:
- Add *.txt suffix to the auo,g070wn01 file
---
 .../bindings/display/panel/auo,g070vvn01.txt       | 29 ++++++++++++++++++++
 drivers/gpu/drm/panel/panel-simple.c               | 31 ++++++++++++++++++++++
 2 files changed, 60 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt

Comments

Lukasz Majewski May 19, 2018, 11:06 a.m. | #1
Hi Thierry,

> This commit adds support for AUO's 7.0" display.
> 

Thierry, shall I perform some more work on this code, or is it
eligible for applying to your tree?

Best regards,
Łukasz

> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> Reviewed-by: Rob Herring <robh@kernel.org>
> 
> ---
> Changes for v3:
> - Remove not used 'bus-format-override = "rgb565";' property
> 
> Changes for v2:
> - Add *.txt suffix to the auo,g070wn01 file
> ---
>  .../bindings/display/panel/auo,g070vvn01.txt       | 29
> ++++++++++++++++++++
> drivers/gpu/drm/panel/panel-simple.c               | 31
> ++++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode
> 100644
> Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> 
> diff --git
> a/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> new file mode 100644 index 000000000000..49e4105378f6 --- /dev/null
> +++
> b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> @@ -0,0 +1,29 @@ +AU Optronics Corporation 7.0" FHD (800 x 480) TFT
> LCD panel +
> +Required properties:
> +- compatible: should be "auo,g070vvn01"
> +- backlight: phandle of the backlight device attached to the panel
> +- power-supply: single regulator to provide the supply voltage
> +
> +Required nodes:
> +- port: Parallel port mapping to connect this display
> +
> +This panel needs single power supply voltage. Its backlight is
> conntrolled +via PWM signal.
> +
> +Example:
> +--------
> +
> +Example device-tree definition when connected to iMX6Q based board
> +
> +	lcd_panel: lcd-panel {
> +		compatible = "auo,g070vvn01";
> +		backlight = <&backlight_lcd>;
> +		power-supply = <&reg_display>;
> +
> +		port {
> +			lcd_panel_in: endpoint {
> +				remote-endpoint = <&lcd_display_out>;
> +			};
> +		};
> +	};
> diff --git a/drivers/gpu/drm/panel/panel-simple.c
> b/drivers/gpu/drm/panel/panel-simple.c index
> cbf1ab404ee7..d9984bdb5bb5 100644 ---
> a/drivers/gpu/drm/panel/panel-simple.c +++
> b/drivers/gpu/drm/panel/panel-simple.c @@ -581,6 +581,34 @@ static
> const struct panel_desc auo_b133htn01 = { },
>  };
>  
> +static const struct display_timing auo_g070vvn01_timings = {
> +	.pixelclock = { 33300000, 34209000, 45000000 },
> +	.hactive = { 800, 800, 800 },
> +	.hfront_porch = { 20, 40, 200 },
> +	.hback_porch = { 87, 40, 1 },
> +	.hsync_len = { 1, 48, 87 },
> +	.vactive = { 480, 480, 480 },
> +	.vfront_porch = { 5, 13, 200 },
> +	.vback_porch = { 31, 31, 29 },
> +	.vsync_len = { 1, 1, 3 },
> +};
> +
> +static const struct panel_desc auo_g070vvn01 = {
> +	.timings = &auo_g070vvn01_timings,
> +	.num_timings = 1,
> +	.bpc = 8,
> +	.size = {
> +		.width = 152,
> +		.height = 91,
> +	},
> +	.delay = {
> +		.prepare = 200,
> +		.enable = 50,
> +		.disable = 50,
> +		.unprepare = 1000,
> +	},
> +};
> +
>  static const struct drm_display_mode auo_g104sn02_mode = {
>  	.clock = 40000,
>  	.hdisplay = 800,
> @@ -2095,6 +2123,9 @@ static const struct of_device_id
> platform_of_match[] = { .compatible = "auo,b133xtn01",
>  		.data = &auo_b133xtn01,
>  	}, {
> +		.compatible = "auo,g070vvn01",
> +		.data = &auo_g070vvn01,
> +	}, {
>  		.compatible = "auo,g104sn02",
>  		.data = &auo_g104sn02,
>  	}, {




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
Lukasz Majewski May 28, 2018, 7:54 a.m. | #2
Hi,

> Hi Thierry,
> 
> > This commit adds support for AUO's 7.0" display.
> >   
> 
> Thierry, shall I perform some more work on this code, or is it
> eligible for applying to your tree?

Gentle ping. If Thierry is overworked - maybe there is a co-maintainer
so he/she could apply this patch?

> 
> Best regards,
> Łukasz
> 
> > Signed-off-by: Lukasz Majewski <lukma@denx.de>
> > Reviewed-by: Rob Herring <robh@kernel.org>
> > 
> > ---
> > Changes for v3:
> > - Remove not used 'bus-format-override = "rgb565";' property
> > 
> > Changes for v2:
> > - Add *.txt suffix to the auo,g070wn01 file
> > ---
> >  .../bindings/display/panel/auo,g070vvn01.txt       | 29
> > ++++++++++++++++++++
> > drivers/gpu/drm/panel/panel-simple.c               | 31
> > ++++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode
> > 100644
> > Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > 
> > diff --git
> > a/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > new file mode 100644 index 000000000000..49e4105378f6 --- /dev/null
> > +++
> > b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > @@ -0,0 +1,29 @@ +AU Optronics Corporation 7.0" FHD (800 x 480) TFT
> > LCD panel +
> > +Required properties:
> > +- compatible: should be "auo,g070vvn01"
> > +- backlight: phandle of the backlight device attached to the panel
> > +- power-supply: single regulator to provide the supply voltage
> > +
> > +Required nodes:
> > +- port: Parallel port mapping to connect this display
> > +
> > +This panel needs single power supply voltage. Its backlight is
> > conntrolled +via PWM signal.
> > +
> > +Example:
> > +--------
> > +
> > +Example device-tree definition when connected to iMX6Q based board
> > +
> > +	lcd_panel: lcd-panel {
> > +		compatible = "auo,g070vvn01";
> > +		backlight = <&backlight_lcd>;
> > +		power-supply = <&reg_display>;
> > +
> > +		port {
> > +			lcd_panel_in: endpoint {
> > +				remote-endpoint =
> > <&lcd_display_out>;
> > +			};
> > +		};
> > +	};
> > diff --git a/drivers/gpu/drm/panel/panel-simple.c
> > b/drivers/gpu/drm/panel/panel-simple.c index
> > cbf1ab404ee7..d9984bdb5bb5 100644 ---
> > a/drivers/gpu/drm/panel/panel-simple.c +++
> > b/drivers/gpu/drm/panel/panel-simple.c @@ -581,6 +581,34 @@ static
> > const struct panel_desc auo_b133htn01 = { },
> >  };
> >  
> > +static const struct display_timing auo_g070vvn01_timings = {
> > +	.pixelclock = { 33300000, 34209000, 45000000 },
> > +	.hactive = { 800, 800, 800 },
> > +	.hfront_porch = { 20, 40, 200 },
> > +	.hback_porch = { 87, 40, 1 },
> > +	.hsync_len = { 1, 48, 87 },
> > +	.vactive = { 480, 480, 480 },
> > +	.vfront_porch = { 5, 13, 200 },
> > +	.vback_porch = { 31, 31, 29 },
> > +	.vsync_len = { 1, 1, 3 },
> > +};
> > +
> > +static const struct panel_desc auo_g070vvn01 = {
> > +	.timings = &auo_g070vvn01_timings,
> > +	.num_timings = 1,
> > +	.bpc = 8,
> > +	.size = {
> > +		.width = 152,
> > +		.height = 91,
> > +	},
> > +	.delay = {
> > +		.prepare = 200,
> > +		.enable = 50,
> > +		.disable = 50,
> > +		.unprepare = 1000,
> > +	},
> > +};
> > +
> >  static const struct drm_display_mode auo_g104sn02_mode = {
> >  	.clock = 40000,
> >  	.hdisplay = 800,
> > @@ -2095,6 +2123,9 @@ static const struct of_device_id
> > platform_of_match[] = { .compatible = "auo,b133xtn01",
> >  		.data = &auo_b133xtn01,
> >  	}, {
> > +		.compatible = "auo,g070vvn01",
> > +		.data = &auo_g070vvn01,
> > +	}, {
> >  		.compatible = "auo,g104sn02",
> >  		.data = &auo_g104sn02,
> >  	}, {  
> 
> 
> 
> 
> Best regards,
> 
> Lukasz Majewski
> 
> --
> 
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
Lukasz Majewski May 29, 2018, 2:08 p.m. | #3
Hi,

> Hi Thierry,
> 
> > This commit adds support for AUO's 7.0" display.
> >   
> 
> Thierry, shall I perform some more work on this code, or is it
> eligible for applying to your tree?

If I may put a gentle remaining on this patch.....

> 
> Best regards,
> Łukasz
> 
> > Signed-off-by: Lukasz Majewski <lukma@denx.de>
> > Reviewed-by: Rob Herring <robh@kernel.org>
> > 
> > ---
> > Changes for v3:
> > - Remove not used 'bus-format-override = "rgb565";' property
> > 
> > Changes for v2:
> > - Add *.txt suffix to the auo,g070wn01 file
> > ---
> >  .../bindings/display/panel/auo,g070vvn01.txt       | 29
> > ++++++++++++++++++++
> > drivers/gpu/drm/panel/panel-simple.c               | 31
> > ++++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode
> > 100644
> > Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > 
> > diff --git
> > a/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > new file mode 100644 index 000000000000..49e4105378f6 --- /dev/null
> > +++
> > b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
> > @@ -0,0 +1,29 @@ +AU Optronics Corporation 7.0" FHD (800 x 480) TFT
> > LCD panel +
> > +Required properties:
> > +- compatible: should be "auo,g070vvn01"
> > +- backlight: phandle of the backlight device attached to the panel
> > +- power-supply: single regulator to provide the supply voltage
> > +
> > +Required nodes:
> > +- port: Parallel port mapping to connect this display
> > +
> > +This panel needs single power supply voltage. Its backlight is
> > conntrolled +via PWM signal.
> > +
> > +Example:
> > +--------
> > +
> > +Example device-tree definition when connected to iMX6Q based board
> > +
> > +	lcd_panel: lcd-panel {
> > +		compatible = "auo,g070vvn01";
> > +		backlight = <&backlight_lcd>;
> > +		power-supply = <&reg_display>;
> > +
> > +		port {
> > +			lcd_panel_in: endpoint {
> > +				remote-endpoint =
> > <&lcd_display_out>;
> > +			};
> > +		};
> > +	};
> > diff --git a/drivers/gpu/drm/panel/panel-simple.c
> > b/drivers/gpu/drm/panel/panel-simple.c index
> > cbf1ab404ee7..d9984bdb5bb5 100644 ---
> > a/drivers/gpu/drm/panel/panel-simple.c +++
> > b/drivers/gpu/drm/panel/panel-simple.c @@ -581,6 +581,34 @@ static
> > const struct panel_desc auo_b133htn01 = { },
> >  };
> >  
> > +static const struct display_timing auo_g070vvn01_timings = {
> > +	.pixelclock = { 33300000, 34209000, 45000000 },
> > +	.hactive = { 800, 800, 800 },
> > +	.hfront_porch = { 20, 40, 200 },
> > +	.hback_porch = { 87, 40, 1 },
> > +	.hsync_len = { 1, 48, 87 },
> > +	.vactive = { 480, 480, 480 },
> > +	.vfront_porch = { 5, 13, 200 },
> > +	.vback_porch = { 31, 31, 29 },
> > +	.vsync_len = { 1, 1, 3 },
> > +};
> > +
> > +static const struct panel_desc auo_g070vvn01 = {
> > +	.timings = &auo_g070vvn01_timings,
> > +	.num_timings = 1,
> > +	.bpc = 8,
> > +	.size = {
> > +		.width = 152,
> > +		.height = 91,
> > +	},
> > +	.delay = {
> > +		.prepare = 200,
> > +		.enable = 50,
> > +		.disable = 50,
> > +		.unprepare = 1000,
> > +	},
> > +};
> > +
> >  static const struct drm_display_mode auo_g104sn02_mode = {
> >  	.clock = 40000,
> >  	.hdisplay = 800,
> > @@ -2095,6 +2123,9 @@ static const struct of_device_id
> > platform_of_match[] = { .compatible = "auo,b133xtn01",
> >  		.data = &auo_b133xtn01,
> >  	}, {
> > +		.compatible = "auo,g070vvn01",
> > +		.data = &auo_g070vvn01,
> > +	}, {
> >  		.compatible = "auo,g104sn02",
> >  		.data = &auo_g104sn02,
> >  	}, {  
> 
> 
> 
> 
> Best regards,
> 
> Lukasz Majewski
> 
> --
> 
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de


Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
Thierry Reding May 29, 2018, 2:26 p.m. | #4
On Mon, May 14, 2018 at 09:08:49PM +0200, Lukasz Majewski wrote:
> This commit adds support for AUO's 7.0" display.
> 
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> Reviewed-by: Rob Herring <robh@kernel.org>
> 
> ---
> Changes for v3:
> - Remove not used 'bus-format-override = "rgb565";' property
> 
> Changes for v2:
> - Add *.txt suffix to the auo,g070wn01 file
> ---
>  .../bindings/display/panel/auo,g070vvn01.txt       | 29 ++++++++++++++++++++
>  drivers/gpu/drm/panel/panel-simple.c               | 31 ++++++++++++++++++++++
>  2 files changed, 60 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt

Next time, please use the standard "drm/panel: " prefix, which increases
the chances of me seeing the patch.

Also, it's usually a good idea to split patches up into one that has the
device tree bindings and another one that has the driver changes.

Applied, thanks.

Thierry

Patch

diff --git a/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
new file mode 100644
index 000000000000..49e4105378f6
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/auo,g070vvn01.txt
@@ -0,0 +1,29 @@ 
+AU Optronics Corporation 7.0" FHD (800 x 480) TFT LCD panel
+
+Required properties:
+- compatible: should be "auo,g070vvn01"
+- backlight: phandle of the backlight device attached to the panel
+- power-supply: single regulator to provide the supply voltage
+
+Required nodes:
+- port: Parallel port mapping to connect this display
+
+This panel needs single power supply voltage. Its backlight is conntrolled
+via PWM signal.
+
+Example:
+--------
+
+Example device-tree definition when connected to iMX6Q based board
+
+	lcd_panel: lcd-panel {
+		compatible = "auo,g070vvn01";
+		backlight = <&backlight_lcd>;
+		power-supply = <&reg_display>;
+
+		port {
+			lcd_panel_in: endpoint {
+				remote-endpoint = <&lcd_display_out>;
+			};
+		};
+	};
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index cbf1ab404ee7..d9984bdb5bb5 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -581,6 +581,34 @@  static const struct panel_desc auo_b133htn01 = {
 	},
 };
 
+static const struct display_timing auo_g070vvn01_timings = {
+	.pixelclock = { 33300000, 34209000, 45000000 },
+	.hactive = { 800, 800, 800 },
+	.hfront_porch = { 20, 40, 200 },
+	.hback_porch = { 87, 40, 1 },
+	.hsync_len = { 1, 48, 87 },
+	.vactive = { 480, 480, 480 },
+	.vfront_porch = { 5, 13, 200 },
+	.vback_porch = { 31, 31, 29 },
+	.vsync_len = { 1, 1, 3 },
+};
+
+static const struct panel_desc auo_g070vvn01 = {
+	.timings = &auo_g070vvn01_timings,
+	.num_timings = 1,
+	.bpc = 8,
+	.size = {
+		.width = 152,
+		.height = 91,
+	},
+	.delay = {
+		.prepare = 200,
+		.enable = 50,
+		.disable = 50,
+		.unprepare = 1000,
+	},
+};
+
 static const struct drm_display_mode auo_g104sn02_mode = {
 	.clock = 40000,
 	.hdisplay = 800,
@@ -2095,6 +2123,9 @@  static const struct of_device_id platform_of_match[] = {
 		.compatible = "auo,b133xtn01",
 		.data = &auo_b133xtn01,
 	}, {
+		.compatible = "auo,g070vvn01",
+		.data = &auo_g070vvn01,
+	}, {
 		.compatible = "auo,g104sn02",
 		.data = &auo_g104sn02,
 	}, {