]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
drm/panel: simple: add support for NLT NL12880 12.1" WXGA LVDS panel
authorLothar Waßmann <LW@KARO-electronics.de>
Thu, 14 Sep 2017 09:55:31 +0000 (11:55 +0200)
committerLothar Waßmann <LW@KARO-electronics.de>
Thu, 14 Sep 2017 09:55:31 +0000 (11:55 +0200)
Documentation/devicetree/bindings/display/panel/nlt,nl12880bc20.txt [new file with mode: 0644]
drivers/gpu/drm/panel/panel-simple.c

diff --git a/Documentation/devicetree/bindings/display/panel/nlt,nl12880bc20.txt b/Documentation/devicetree/bindings/display/panel/nlt,nl12880bc20.txt
new file mode 100644 (file)
index 0000000..071b065
--- /dev/null
@@ -0,0 +1,14 @@
+NLT Technologies Ltd. NL12880BC20 12.1" WXGA LVDS panel
+
+Note: The output format of the display can be configured via two
+      control pins (FRC, MSL). Depending on the strapping of those
+      pins the appropriate 'compatible' string has to be used.
+
+Required properties:
+- compatible: should be one of:
+   - "nlt,nl12880bc20-spwg-18" for SPWG (18bpp) FRC: Low or open, MSL: Low or open
+   - "nlt,nl12880bc20-spwg-24" for SPWG (24bpp) FRC: High, MSL: High
+   - "nlt,nl12880bc20-jeida" for JEIDA          FRC: High, MSL: High
+
+This binding is compatible with the simple-panel binding, which is specified
+in simple-panel.txt in this directory.
index 0b8fd55300107a1433b8b6d90c365f36f147c862..52e0cb6ae874c104bd34f2c1cd657ee45e6fef78 100644 (file)
@@ -1234,6 +1234,42 @@ static const struct panel_desc nlt_nl192108ac18_02d = {
        .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
 };
 
+static const struct drm_display_mode nlt_nl12880bc20_mode =
+       SP_DISPLAY_MODE(71000, 1280, 50, 60, 50, 800, 5, 13, 5, 0, 0);
+
+static const struct panel_desc nlt_nl12880bc20_jeida = {
+       .modes = &nlt_nl12880bc20_mode,
+       .num_modes = 1,
+       .bpc = 8,
+       .size = {
+               .width = 261,
+               .height = 163,
+       },
+       .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA,
+};
+
+static const struct panel_desc nlt_nl12880bc20_spwg_18 = {
+       .modes = &nlt_nl12880bc20_mode,
+       .num_modes = 1,
+       .bpc = 6,
+       .size = {
+               .width = 261,
+               .height = 163,
+       },
+       .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
+};
+
+static const struct panel_desc nlt_nl12880bc20_spwg_24 = {
+       .modes = &nlt_nl12880bc20_mode,
+       .num_modes = 1,
+       .bpc = 8,
+       .size = {
+               .width = 261,
+               .height = 163,
+       },
+       .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
+};
+
 static const struct drm_display_mode nvd_9128_mode =
        SP_DISPLAY_MODE(29500, 800, 130, 98, 0, 480, 10, 50, 0, 0, 0);
 
@@ -1706,6 +1742,15 @@ static const struct of_device_id platform_of_match[] = {
        }, {
                .compatible = "nlt,nl192108ac18-02d",
                .data = &nlt_nl192108ac18_02d,
+       }, {
+               .compatible = "nlt,nl12880bc20-jeida",
+               .data = &nlt_nl12880bc20_jeida,
+       }, {
+               .compatible = "nlt,nl12880bc20-spwg-18",
+               .data = &nlt_nl12880bc20_spwg_18,
+       }, {
+               .compatible = "nlt,nl12880bc20-spwg-24",
+               .data = &nlt_nl12880bc20_spwg_24,
        }, {
                .compatible = "nvd,9128",
                .data = &nvd_9128,