diff mbox series

[v2] drm: panel: simple: add Toshiba LT089AC19000

Message ID 20171018172240.8772-1-l.stach@pengutronix.de
State Not Applicable, archived
Headers show
Series [v2] drm: panel: simple: add Toshiba LT089AC19000 | expand

Commit Message

Lucas Stach Oct. 18, 2017, 5:22 p.m. UTC
Only exposes a single mode and not a complete display timing, as
the datasheet is rather vague about the minimum/maximum values.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Acked-by: Rob Herring <robh@kernel.org>
---
v2:
- fix display size in documentation
- add bus flags
---
 .../display/panel/toshiba,lt089ac29000.txt         |  8 +++++++
 drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
 2 files changed, 35 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt

Comments

Thierry Reding Oct. 19, 2017, 8:17 a.m. UTC | #1
On Wed, Oct 18, 2017 at 07:22:40PM +0200, Lucas Stach wrote:
> Only exposes a single mode and not a complete display timing, as
> the datasheet is rather vague about the minimum/maximum values.
> 
> Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
> Acked-by: Rob Herring <robh@kernel.org>
> ---
> v2:
> - fix display size in documentation
> - add bus flags
> ---
>  .../display/panel/toshiba,lt089ac29000.txt         |  8 +++++++
>  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
>  2 files changed, 35 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt

Separate patches are preferred for bindings and driver. Also, please try
to stick to the "drm/panel: " prefix for panel patches (and "drm/panel:
simple: " for panel-simple), which makes it easier for me to spot these
patches in patchwork.

Both of the above aren't blockers, so applied to drm-misc-next.

Thanks,
Thierry
Lucas Stach Oct. 19, 2017, 8:27 a.m. UTC | #2
Am Donnerstag, den 19.10.2017, 10:17 +0200 schrieb Thierry Reding:
> On Wed, Oct 18, 2017 at 07:22:40PM +0200, Lucas Stach wrote:
> > Only exposes a single mode and not a complete display timing, as
> > the datasheet is rather vague about the minimum/maximum values.
> > 
> > > > Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
> > > > Acked-by: Rob Herring <robh@kernel.org>
> > ---
> > v2:
> > - fix display size in documentation
> > - add bus flags
> > ---
> >  .../display/panel/toshiba,lt089ac29000.txt         |  8 +++++++
> >  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
> >  2 files changed, 35 insertions(+)
> >  create mode 100644 Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
> 
> Separate patches are preferred for bindings and driver.

This is news to me. At least in simple-panel land, I've always only
split out additions of new vendor prefixes and kept the bindings
together with the driver.

I'll change that in the future if you prefer otherwise.

>  Also, please try
> to stick to the "drm/panel: " prefix for panel patches (and "drm/panel:
> simple: " for panel-simple), which makes it easier for me to spot these
> patches in patchwork.

Yeah, sorry about that.

> Both of the above aren't blockers, so applied to drm-misc-next.

Thanks,
Lucas
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Thierry Reding Oct. 19, 2017, 8:32 a.m. UTC | #3
On Thu, Oct 19, 2017 at 10:27:19AM +0200, Lucas Stach wrote:
> Am Donnerstag, den 19.10.2017, 10:17 +0200 schrieb Thierry Reding:
> > On Wed, Oct 18, 2017 at 07:22:40PM +0200, Lucas Stach wrote:
> > > Only exposes a single mode and not a complete display timing, as
> > > the datasheet is rather vague about the minimum/maximum values.
> > > 
> > > > > Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
> > > > > Acked-by: Rob Herring <robh@kernel.org>
> > > ---
> > > v2:
> > > - fix display size in documentation
> > > - add bus flags
> > > ---
> > >  .../display/panel/toshiba,lt089ac29000.txt         |  8 +++++++
> > >  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
> > >  2 files changed, 35 insertions(+)
> > >  create mode 100644 Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
> > 
> > Separate patches are preferred for bindings and driver.
> 
> This is news to me. At least in simple-panel land, I've always only
> split out additions of new vendor prefixes and kept the bindings
> together with the driver.
> 
> I'll change that in the future if you prefer otherwise.

I don't mind too much either way, but I've seen Rob say he prefers
separate patches. I guess ultimately that makes it easier to move the DT
bindings outside of the kernel tree, but maybe there are other reasons,
too.

Rob, care to educate us?

Thierry
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt b/Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
new file mode 100644
index 000000000000..4c0caaf246c9
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
@@ -0,0 +1,8 @@ 
+Toshiba 8.9" WXGA (1280x768) TFT LCD panel
+
+Required properties:
+- compatible: should be "toshiba,lt089ac29000.txt"
+- power-supply: as specified in the base binding
+
+This binding is compatible with the simple-panel binding, which is specified
+in simple-panel.txt in this directory.
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 474fa759e06e..a622aa468d2c 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1831,6 +1831,30 @@  static const struct panel_desc tianma_tm070jdhg30 = {
 	.bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
 };
 
+static const struct drm_display_mode toshiba_lt089ac29000_mode = {
+	.clock = 79500,
+	.hdisplay = 1280,
+	.hsync_start = 1280 + 192,
+	.hsync_end = 1280 + 192 + 128,
+	.htotal = 1280 + 192 + 128 + 64,
+	.vdisplay = 768,
+	.vsync_start = 768 + 20,
+	.vsync_end = 768 + 20 + 7,
+	.vtotal = 768 + 20 + 7 + 3,
+	.vrefresh = 60,
+};
+
+static const struct panel_desc toshiba_lt089ac29000 = {
+	.modes = &toshiba_lt089ac29000_mode,
+	.num_modes = 1,
+	.size = {
+		.width = 194,
+		.height = 116,
+	},
+	.bus_format = MEDIA_BUS_FMT_RGB888_1X24,
+	.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_POSEDGE,
+};
+
 static const struct drm_display_mode tpk_f07a_0102_mode = {
 	.clock = 33260,
 	.hdisplay = 800,
@@ -2113,6 +2137,9 @@  static const struct of_device_id platform_of_match[] = {
 		.compatible = "tianma,tm070jdhg30",
 		.data = &tianma_tm070jdhg30,
 	}, {
+		.compatible = "toshiba,lt089ac29000",
+		.data = &toshiba_lt089ac29000,
+	}, {
 		.compatible = "tpk,f07a-0102",
 		.data = &tpk_f07a_0102,
 	}, {