drm/panel: simple: Add display timing for HannStar HSD100PXN1
authorEric Nelson <eric.nelson@boundarydevices.com>
Mon, 13 Apr 2015 22:09:26 +0000 (15:09 -0700)
committerThierry Reding <treding@nvidia.com>
Fri, 12 Jun 2015 14:40:35 +0000 (16:40 +0200)
Add support for the Hannstar HSD100PXN1 to the DRM simple panel driver.

The HSD100PXN1 is an XGA (1024x768) panel with an 18-bit LVDS interface.
It supports pixel clocks in the range of 55-75 MHz.

This panel is offered for sale by Freescale as a companion part to its'
i.MX5x Quick Start board and i.MX6 SABRE platforms with under the name
MCIMX-LVDS1.

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Documentation/devicetree/bindings/panel/hannstar,hsd100pxn1.txt [new file with mode: 0644]
drivers/gpu/drm/panel/panel-simple.c

diff --git a/Documentation/devicetree/bindings/panel/hannstar,hsd100pxn1.txt b/Documentation/devicetree/bindings/panel/hannstar,hsd100pxn1.txt
new file mode 100644 (file)
index 0000000..8270319
--- /dev/null
@@ -0,0 +1,7 @@
+HannStar Display Corp. HSD100PXN1 10.1" XGA LVDS panel
+
+Required properties:
+- compatible: should be "hannstar,hsd100pxn1"
+
+This binding is compatible with the simple-panel binding, which is specified
+in simple-panel.txt in this directory.
index a06d9d353bec8024763cf2bce4a888aec3409b01..97b66b86ad8e1f3c8a720ae96ee257e6f5b327d2 100644 (file)
@@ -731,6 +731,29 @@ static const struct panel_desc hannstar_hsd070pww1 = {
        },
 };
 
+static const struct display_timing hannstar_hsd100pxn1_timing = {
+       .pixelclock = { 55000000, 65000000, 75000000 },
+       .hactive = { 1024, 1024, 1024 },
+       .hfront_porch = { 40, 40, 40 },
+       .hback_porch = { 220, 220, 220 },
+       .hsync_len = { 20, 60, 100 },
+       .vactive = { 768, 768, 768 },
+       .vfront_porch = { 7, 7, 7 },
+       .vback_porch = { 21, 21, 21 },
+       .vsync_len = { 10, 10, 10 },
+       .flags = DISPLAY_FLAGS_DE_HIGH,
+};
+
+static const struct panel_desc hannstar_hsd100pxn1 = {
+       .timings = &hannstar_hsd100pxn1_timing,
+       .num_timings = 1,
+       .bpc = 6,
+       .size = {
+               .width = 203,
+               .height = 152,
+       },
+};
+
 static const struct drm_display_mode hitachi_tx23d38vm0caa_mode = {
        .clock = 33333,
        .hdisplay = 800,
@@ -1061,6 +1084,9 @@ static const struct of_device_id platform_of_match[] = {
        }, {
                .compatible = "hannstar,hsd070pww1",
                .data = &hannstar_hsd070pww1,
+       }, {
+               .compatible = "hannstar,hsd100pxn1",
+               .data = &hannstar_hsd100pxn1,
        }, {
                .compatible = "hit,tx23d38vm0caa",
                .data = &hitachi_tx23d38vm0caa